# FWH MCP Server 非写操作接口测试报告 生成时间: 2026-08-26 00:34:41 > SKIP / FAIL 的逐条根因分析、代码定位与修复建议见 **ANALYSIS.md**。 ## 工具覆盖率(按工具去重,主口径) 被测工具 **102** 个 | ✅ 已覆盖(PASS) **79** | ❌ FAIL **0** | ⏭️ 未覆盖(SKIP) **23** 覆盖率: **77.5%**(79/102 工具至少有一次成功调用) > 说明:一个工具可能在多个阶段被调用(自动冒烟因缺参 SKIP、样本/级联阶段 PASS)。 > 上表按工具去重,只要该工具有任一次 PASS 即计为“已覆盖”,避免同一工具重复计数。 > 下方“执行记录”为全部调用流水(含重复),供追溯过程。 ## 执行记录统计(流水口径,含重复) 总执行 173 次 | PASS 101 | FAIL 0 | SKIP 72 ## 分层汇总(执行流水) | 层级 | PASS | FAIL | SKIP | |------|------|------|------| | L0 | 5 | 0 | 0 | | L1 | 14 | 0 | 0 | | L2 | 34 | 0 | 67 | | L2S | 21 | 0 | 0 | | L2C | 12 | 0 | 5 | | L2X | 7 | 0 | 0 | | L3RW | 4 | 0 | 0 | | L4 | 4 | 0 | 0 | ## 执行明细 | 编号 | 层级 | 工具 | 结果 | 耗时 | 备注 | |------|------|------|------|------|------| | L0-1 | L0 | - | PASS | 191ms | name=fwh-tools version=2.0.0 proto=2025-11-25 | | L0-2 | L0 | - | PASS | 3ms | 共 119 个工具 | | L0-3 | L0 | - | PASS | 0ms | 全部前缀合法 | | L0-4 | L0 | - | PASS | 0ms | schema 完整 | | L0-5 | L0 | __no_such_tool__ | PASS | 0ms | 正确拒绝未知工具 | | L1-1 | L1 | util_parse_sn | PASS | 0ms | SN 解析字段正确 | | L1-3 | L1 | util_parse_sn | PASS | 0ms | 正确返回参数校验错误 | | L1-4 | L1 | util_parse_sn | PASS | 0ms | 正确返回参数校验错误 | | L1-5 | L1 | service_site_query_info | PASS | 0ms | 正确返回参数校验错误 | | L1-6 | L1 | service_site_power_flow | PASS | 0ms | 正确返回参数校验错误 | | L1-7 | L1 | service_sim_monthly_data | PASS | 0ms | 正确返回参数校验错误 | | L1-8 | L1 | data_mongo_find | PASS | 0ms | 正确返回参数校验错误 | | L1-9 | L1 | data_mongo_find | PASS | 0ms | 正确返回参数校验错误 | | L1-10 | L1 | data_redis_exists | PASS | 0ms | 正确返回参数校验错误 | | L1-11 | L1 | data_redis_get | PASS | 0ms | 正确返回参数校验错误 | | L1-12 | L1 | storage_minio_list_objects | PASS | 0ms | 正确返回参数校验错误 | | L1-13 | L1 | data_emspara_vid_info | PASS | 0ms | 正确返回参数校验错误 | | L1-14 | L1 | data_pgsql_query_snapshot_data | PASS | 0ms | 正确返回参数校验错误 | | L1-16 | L1 | service_feedback_create | PASS | 0ms | 正确返回参数校验错误 | | L2-R1 | L2 | data_redis_exists | PASS | 0ms | 返回合法结果 (39B) | | L2-R2 | L2 | data_redis_get | PASS | 0ms | 返回合法结果 (67B) | | L2-M1 | L2 | data_mongo_count | PASS | 18ms | 返回合法结果 (58B) | | L2-M2 | L2 | data_mongo_find | PASS | 0ms | 返回合法结果 (2278B) | | L2-M3 | L2 | data_mongo_count | PASS | 0ms | 返回合法结果 (51B) | | L2-S1 | L2 | storage_minio_list_objects | PASS | 54ms | 返回合法结果 (1133B) | | L2-S3 | L2 | storage_file_list | PASS | 0ms | 返回合法结果 (27B) | | L2-PL1 | L2 | plane_list_workspaces | PASS | 27ms | 返回合法结果 (1730B) | | L2-PL2 | L2 | plane_list_projects | SKIP | 0ms | 返回错误: 参数 workspace_slug 必填 | | L2-PL4 | L2 | plane_list_labels | SKIP | 0ms | 返回错误: 参数 workspace_slug 必填 | | L2-PL5 | L2 | plane_list_states | SKIP | 0ms | 返回错误: 参数 workspace_slug 必填 | | L2-PL6 | L2 | service_feedback_history | PASS | 32ms | 返回合法结果 (506B) | | L2-B1 | L2 | service_site_search | PASS | 20ms | 返回合法结果 (7270B) | | L2-B2 | L2 | service_sim_search | PASS | 171ms | 返回合法结果 (1193B) | | L2-B3 | L2 | service_monitor_alarm_stats | SKIP | 0ms | 依赖不可用/凭据: 查询告警统计失败: mongo: no documents in result | | L2-B4 | L2 | service_monitor_shutdown_stats | PASS | 0ms | 返回合法结果 (700B) | | L2-B5 | L2 | service_dashboard_shutdown_date | PASS | 0ms | 返回合法结果 (10B) | | L2-B6 | L2 | service_dashboard_shutdown_detail | PASS | 11ms | 返回合法结果 (2541B) | | L2-B7 | L2 | service_dashboard_alarm_detail | SKIP | 0ms | 依赖不可用/凭据: 查询告警详情失败: mongo: no documents in result | | L2-B8 | L2 | service_tou_template_list | PASS | 2061ms | 返回合法结果 (1352B) | | L2-B9 | L2 | service_background_task_list | SKIP | 0ms | 依赖不可用/凭据: 查询后台任务列表失败: inspector not initialized | | L2-B10 | L2 | service_site_monitor_config_list | PASS | 8ms | 返回合法结果 (2500B) | | L2-B11 | L2 | service_site_monitor_name_list | PASS | 0ms | 返回合法结果 (280B) | | L2-B12 | L2 | service_site_info_update_status | PASS | 0ms | 返回合法结果 (165B) | | L2-B13 | L2 | service_site_info_tags_list | PASS | 1ms | 返回合法结果 (63B) | | L2-B14 | L2 | service_auto_update_get_options | PASS | 0ms | 返回合法结果 (260B) | | L2-B15 | L2 | service_auto_update_get_apower_version | PASS | 0ms | 返回合法结果 (70B) | | L2-B16 | L2 | service_auto_update_file_list | PASS | 0ms | 返回合法结果 (746B) | | L2-B17 | L2 | service_batch_download_list | PASS | 1ms | 返回合法结果 (1676B) | | L2-B18 | L2 | service_site_analysis_list | PASS | 4ms | 返回合法结果 (1024B) | | L2-F8a | L2 | data_emspara_vid_info | PASS | 0ms | 返回合法结果 (37B) | | L2-F8b | L2 | data_emspara_pid_info | PASS | 0ms | 返回合法结果 (37B) | | L2-auto | L2 | data_fwh_query_ahub_update_log | SKIP | 0ms | 需必填参数,缺测试样本: sn | | L2-auto | L2 | data_fwh_query_alarm_snapshot | SKIP | 0ms | 需必填参数,缺测试样本: sn,date | | L2-auto1 | L2 | data_fwh_query_alarm_statistics | PASS | 3027ms | 返回合法结果 (2537B) | | L2-auto | L2 | data_fwh_query_alarm_statistics_from_code | SKIP | 0ms | 需必填参数,缺测试样本: alarm_code | | L2-auto | L2 | data_fwh_query_ems_log_record | SKIP | 0ms | 需必填参数,缺测试样本: sn | | L2-auto | L2 | data_fwh_query_event_alarm_list | SKIP | 0ms | 需必填参数,缺测试样本: sn,start_time,end_time | | L2-auto2 | L2 | data_fwh_query_fault_record_call_record_list | PASS | 305ms | 返回合法结果 (18469B) | | L2-auto | L2 | data_fwh_query_fault_record_callable_list | SKIP | 0ms | 需必填参数,缺测试样本: sn | | L2-auto | L2 | data_fwh_query_fault_record_list | SKIP | 0ms | 需必填参数,缺测试样本: sn,start_time,end_time | | L2-auto | L2 | data_fwh_query_fault_record_sub_list | SKIP | 0ms | 需必填参数,缺测试样本: fault_id | | L2-auto | L2 | data_fwh_query_mqtt_log_list | SKIP | 0ms | 需必填参数,缺测试样本: sn,cmd_type,start_time,end_time | | L2-auto | L2 | data_fwh_query_shutdown_list | SKIP | 0ms | 需必填参数,缺测试样本: date | | L2-auto | L2 | data_fwh_query_site_alarm_list | SKIP | 0ms | 需必填参数,缺测试样本: sn | | L2-auto3 | L2 | data_fwh_query_site_base_info_list | PASS | 636ms | 返回合法结果 (8422B) | | L2-auto4 | L2 | data_fwh_query_site_list | PASS | 1786ms | 返回合法结果 (2620B) | | L2-auto | L2 | data_fwh_query_site_mode_info | SKIP | 0ms | 需必填参数,缺测试样本: sn | | L2-auto | L2 | data_fwh_query_site_power_flow | SKIP | 0ms | 需必填参数,缺测试样本: sn,date | | L2-auto | L2 | data_fwh_query_system_update_log | SKIP | 0ms | 需必填参数,缺测试样本: sn | | L2-auto | L2 | data_fwh_query_system_update_log_detail | SKIP | 0ms | 需必填参数,缺测试样本: order_id | | L2-auto | L2 | data_fwh_query_tou_template_detail | SKIP | 0ms | 需必填参数,缺测试样本: id | | L2-auto5 | L2 | data_fwh_query_tou_template_list | PASS | 567ms | 返回合法结果 (8596B) | | L2-auto | L2 | data_pgsql_query_snapshot_data | SKIP | 0ms | 需必填参数,缺测试样本: sn,date | | L2-auto | L2 | data_pgsql_query_snapshot_file_record | SKIP | 0ms | 需必填参数,缺测试样本: file_name | | L2-auto | L2 | data_sim_acceleronix_batch_data_info | SKIP | 0ms | 需必填参数,缺测试样本: iccid_list,month | | L2-auto | L2 | data_sim_acceleronix_card_info | SKIP | 0ms | 需必填参数,缺测试样本: iccid | | L2-auto6 | L2 | data_sim_acceleronix_card_list | PASS | 341ms | 返回合法结果 (10611B) | | L2-auto7 | L2 | data_sim_acceleronix_data_pool_list | PASS | 414ms | 返回合法结果 (2839B) | | L2-auto | L2 | data_sim_acceleronix_data_pool_sim_info | SKIP | 0ms | 需必填参数,缺测试样本: data_pool_id | | L2-auto8 | L2 | data_sim_smarthub_batch_info | PASS | 1479ms | 返回合法结果 (13264B) | | L2-auto | L2 | data_sim_smarthub_card_info | SKIP | 0ms | 需必填参数,缺测试样本: giccid | | L2-auto | L2 | plane_get_cycle | SKIP | 0ms | 需必填参数,缺测试样本: workspace_slug,project_id,cycle_id | | L2-auto | L2 | plane_get_intake_issue | SKIP | 0ms | 需必填参数,缺测试样本: workspace_slug,project_id,issue_id | | L2-auto | L2 | plane_get_issue | SKIP | 0ms | 需必填参数,缺测试样本: workspace_slug,project_id,issue_id | | L2-auto | L2 | plane_get_issue_activity | SKIP | 0ms | 需必填参数,缺测试样本: workspace_slug,project_id,issue_id | | L2-auto | L2 | plane_get_module | SKIP | 0ms | 需必填参数,缺测试样本: workspace_slug,project_id,module_id | | L2-auto | L2 | plane_get_page | SKIP | 0ms | 需必填参数,缺测试样本: workspace_slug,project_id,page_id | | L2-auto | L2 | plane_get_page_description | SKIP | 0ms | 需必填参数,缺测试样本: workspace_slug,project_id,page_id | | L2-auto | L2 | plane_get_project | SKIP | 0ms | 需必填参数,缺测试样本: workspace_slug,project_id | | L2-auto | L2 | plane_get_sub_issues | SKIP | 0ms | 需必填参数,缺测试样本: workspace_slug,project_id,issue_id | | L2-auto | L2 | plane_get_workspace | SKIP | 0ms | 需必填参数,缺测试样本: workspace_slug | | L2-auto | L2 | plane_list_cycles | SKIP | 0ms | 需必填参数,缺测试样本: workspace_slug,project_id | | L2-auto | L2 | plane_list_intake_issues | SKIP | 0ms | 需必填参数,缺测试样本: workspace_slug,project_id | | L2-auto | L2 | plane_list_issues | SKIP | 0ms | 需必填参数,缺测试样本: workspace_slug,project_id | | L2-auto | L2 | plane_list_modules | SKIP | 0ms | 需必填参数,缺测试样本: workspace_slug,project_id | | L2-auto | L2 | plane_list_pages | SKIP | 0ms | 需必填参数,缺测试样本: workspace_slug,project_id | | L2-auto | L2 | plane_list_project_members | SKIP | 0ms | 需必填参数,缺测试样本: workspace_slug,project_id | | L2-auto | L2 | plane_list_stickies | SKIP | 0ms | 需必填参数,缺测试样本: workspace_slug | | L2-auto | L2 | plane_list_workspace_members | SKIP | 0ms | 需必填参数,缺测试样本: workspace_slug | | L2-auto | L2 | service_auto_update_get_config | SKIP | 0ms | 需必填参数,缺测试样本: agate_version | | L2-auto | L2 | service_auto_update_get_package | SKIP | 0ms | 需必填参数,缺测试样本: file_name | | L2-auto | L2 | service_batch_download_file_tree | SKIP | 0ms | 需必填参数,缺测试样本: file_path | | L2-auto | L2 | service_batch_download_path | SKIP | 0ms | 需必填参数,缺测试样本: id | | L2-auto | L2 | service_sim_monthly_data | SKIP | 0ms | 需必填参数,缺测试样本: giccid,month | | L2-auto | L2 | service_sim_query | SKIP | 0ms | 需必填参数,缺测试样本: giccid | | L2-auto | L2 | service_site_analysis_data | SKIP | 0ms | 需必填参数,缺测试样本: id | | L2-auto | L2 | service_site_analysis_get_config | SKIP | 0ms | 需必填参数,缺测试样本: id | | L2-auto | L2 | service_site_monitor_alarm_list | SKIP | 0ms | 需必填参数,缺测试样本: sn | | L2-auto | L2 | service_site_monitor_base_info | SKIP | 0ms | 需必填参数,缺测试样本: site_list | | L2-auto | L2 | service_site_monitor_config_get | SKIP | 0ms | 需必填参数,缺测试样本: name | | L2-auto | L2 | service_site_monitor_mode_info | SKIP | 0ms | 需必填参数,缺测试样本: sn | | L2-auto | L2 | service_site_power_flow | SKIP | 0ms | 需必填参数,缺测试样本: sn,date | | L2-auto | L2 | service_site_query_info | SKIP | 0ms | 需必填参数,缺测试样本: sn | | L2-auto | L2 | service_tou_template_detail | SKIP | 0ms | 需必填参数,缺测试样本: id | | L2-auto | L2 | storage_file_read | SKIP | 0ms | 需必填参数,缺测试样本: path | | L2-auto | L2 | storage_file_read_to_local | SKIP | 0ms | 需必填参数,缺测试样本: path | | L2-auto | L2 | storage_file_upload | SKIP | 0ms | 需必填参数,缺测试样本: localPath | | L2-auto | L2 | storage_file_write | SKIP | 0ms | 需必填参数,缺测试样本: path,content | | L2-auto | L2 | storage_minio_read_object | SKIP | 0ms | 需必填参数,缺测试样本: bucket,key | | L2-auto | L2 | util_parse_sn | SKIP | 0ms | 需必填参数,缺测试样本: sn | | L4-2 | L4 | service_site_search | PASS | 22ms | 无明文 PII; 保留字段命中: sn | | L4-4 | L4 | service_sim_search | PASS | 268ms | 无明文 PII; 保留字段命中: giccid | | L4-5 | L4 | data_mongo_find | PASS | 1ms | 无明文 PII; 保留字段命中: _id | | L4-6 | L4 | data_mongo_find | PASS | 0ms | 无明文 PII; 保留字段命中: _id | | L2S-1 | L2S | service_site_query_info | PASS | 5411ms | 无明文 PII; 保留:sn | | L2S-2 | L2S | service_site_power_flow | PASS | 393ms | 返回合法结果 (2508B) | | L2S-3 | L2S | data_fwh_query_site_mode_info | PASS | 638ms | 返回合法结果 (961B) | | L2S-4 | L2S | data_fwh_query_site_alarm_list | PASS | 560ms | 返回合法结果 (97B) | | L2S-5 | L2S | data_fwh_query_system_update_log | PASS | 1788ms | 返回合法结果 (766B) | | L2S-6 | L2S | service_site_monitor_mode_info | PASS | 611ms | 返回合法结果 (961B) | | L2S-7 | L2S | service_site_monitor_alarm_list | PASS | 220ms | 返回合法结果 (97B) | | L2S-8 | L2S | service_site_monitor_base_info | PASS | 565ms | 返回合法结果 (520B) | | L2S-10 | L2S | service_sim_query | PASS | 1ms | 无明文 PII; 保留:giccid | | L2S-11 | L2S | service_sim_monthly_data | PASS | 1ms | 返回合法结果 (3150B) | | L2S-12 | L2S | data_sim_smarthub_card_info | PASS | 91ms | 无明文 PII; 保留: | | L2S-20 | L2S | plane_list_projects | PASS | 35ms | 返回合法结果 (834B) | | L2S-21 | L2S | plane_get_project | PASS | 62ms | 返回合法结果 (1530B) | | L2S-22 | L2S | plane_list_issues | PASS | 55ms | 返回合法结果 (285B) | | L2S-23 | L2S | plane_list_labels | PASS | 27ms | 返回合法结果 (809B) | | L2S-24 | L2S | plane_list_states | PASS | 27ms | 返回合法结果 (1682B) | | L2S-25 | L2S | plane_list_cycles | PASS | 31ms | 返回合法结果 (2B) | | L2S-26 | L2S | plane_list_modules | PASS | 52ms | 返回合法结果 (2B) | | L2S-27 | L2S | plane_list_intake_issues | PASS | 32ms | 返回合法结果 (1785B) | | L2S-28 | L2S | plane_list_project_members | PASS | 25ms | 返回合法结果 (516B) | | L2S-29 | L2S | plane_list_workspace_members | PASS | 26ms | 返回合法结果 (5465B) | | L3RW-1 | L3RW | storage_file_write | PASS | 5ms | 写入成功 path=/uploads/mcp_test_1787675676.txt | | L3RW-2 | L3RW | storage_file_list | PASS | 0ms | 列表返回 | | L3RW-3 | L3RW | storage_file_read | PASS | 1ms | 读回内容一致 | | L3RW-4 | L3RW | storage_minio_list_objects | PASS | 55ms | MinIO 可列出对象 | | L2C-1 | L2C | service_auto_update_get_package | PASS | 0ms | 级联 file_name=IBG_SYS.bz2 → 93B | | L2C-2 | L2C | service_auto_update_get_config | PASS | 0ms | 级联 agate_version=aGate1.0 → 677B | | L2C-3 | L2C | service_tou_template_detail | PASS | 574ms | 级联 id=4576 → 13072B | | L2C-4 | L2C | data_fwh_query_tou_template_detail | PASS | 223ms | 级联 id=4576 → 13072B | | L2C-5 | L2C | service_site_analysis_get_config | PASS | 65ms | 级联 id=6a83d29d26ac21635e31dbd0 → 2587B | | L2C-6 | L2C | service_site_analysis_data | PASS | 58ms | 级联 id=6a83d29d26ac21635e31dbd0 → 2576B | | L2C-7 | L2C | service_batch_download_path | PASS | 0ms | 级联 id=6a8d660f11ccf5833ac797ac → 1140B | | L2C-8 | L2C | service_site_monitor_config_get | PASS | 3ms | 级联 name=SUNRUN → 32330B | | L2C-9 | L2C | data_sim_acceleronix_card_info | PASS | 114ms | 级联 iccid=89330125107800459910 → 869B | | L2C-10 | L2C | data_sim_acceleronix_data_pool_sim_info | PASS | 87ms | 级联 data_pool_id=DP0100M0O905802 → 8181B | | L2C-11 | L2C | data_fwh_query_system_update_log_detail | SKIP | 201ms | order_id=72395 依赖/空: 查询升级详情失败: [QuerySystemUpdateLogDetail] [HttpPost] Response faile… | | L2C-12 | L2C | storage_minio_read_object | PASS | 0ms | 校验行为正常(拒绝大/非文本文件): 参数 key 格式错误: 文件过大 (2429176 bytes),仅… | | L2C-13 | L2C | plane_get_issue | SKIP | 0ms | 源 plane_list_issues 无可用数据(路径 results[0].id 为空) | | L2C-14 | L2C | plane_get_cycle | SKIP | 0ms | 源 plane_list_cycles 无可用数据(路径 [0].id 为空) | | L2C-15 | L2C | plane_get_module | SKIP | 0ms | 源 plane_list_modules 无可用数据(路径 [0].id 为空) | | L2C-16 | L2C | plane_get_page | SKIP | 0ms | 源 plane_list_pages 无可用数据(路径 [0].id 为空) | | L2C-17 | L2C | plane_get_intake_issue | PASS | 33ms | 级联 issue_id=6e7fa7b4-39c5-414a-a2fd-… → 1728B | | L2X-1 | L2X | data_fwh_query_site_power_flow | PASS | 741ms | 返回合法结果 (2508B) | | L2X-2 | L2X | plane_get_workspace | PASS | 24ms | 返回合法结果 (494B) | | L2X-3 | L2X | plane_list_pages | PASS | 34ms | 返回合法结果 (2B) | | L2X-4 | L2X | plane_list_stickies | PASS | 25ms | 返回合法结果 (281B) | | L2X-5 | L2X | service_batch_download_file_tree | PASS | 12ms | 级联 file_path=BatchDownloadData/10060001A04F24160088/E… → 196B | | L2X-6 | L2X | storage_file_read_to_local | PASS | 0ms | 写入后下载到本地成功 | | L2X-7 | L2X | storage_file_upload | PASS | 2ms | 本地文件上传成功 | ## FAIL 用例(需关注) 无 ## SKIP 逐条分析(每个工具缺什么 / 如何补) 以下为**排除已在其它阶段 PASS 后**、仍未覆盖的 23 个工具。已在别处 PASS 的工具(如 service_site_query_info、plane_list_* 等)不再列出。 分组:A=可级联/自造补测(无需外部样本)|B=需“确有数据”的样本|C=需环境或代码改动|D=环境数据为空。 ### B 组 · 需“确有数据”的样本(要你提供) | 工具 | 缺什么 / 如何补 | |------|------| | `data_fwh_query_ahub_update_log` | 缺“有 aHub 升级记录”的 sn。 | | `data_fwh_query_alarm_snapshot` | 缺“确实有告警快照”的 sn+date 组合(普通 SN 当天不一定有快照)。 | | `data_fwh_query_alarm_statistics_from_code` | 缺一个真实的 alarm_code(告警码)。 | | `data_fwh_query_ems_log_record` | 缺“有 EMS 日志”的 sn(现有样本 SN 试过为空)。 | | `data_fwh_query_event_alarm_list` | 缺“该时段确有事件/告警”的 sn+start_time+end_time。 | | `data_fwh_query_fault_record_callable_list` | 缺“有可召唤故障录波”的 sn。 | | `data_fwh_query_fault_record_list` | 缺“确有故障录波”的 sn+时间范围(现有 SN 上游返回 Response failed=无记录)。 | | `data_fwh_query_fault_record_sub_list` | 缺 fault_id(需先有 fault_record_list 返回数据才能级联)。 | | `data_fwh_query_mqtt_log_list` | 缺有效的 cmd_type 取值 + 有 MQTT 日志的 sn 与时间范围。 | | `data_fwh_query_shutdown_list` | 缺“该日期确有停机记录”的 date。 | | `data_fwh_query_system_update_log_detail` | order_id 已能级联获取,但上游对该 order 无详情(Response failed)。需一个确有升级详情的 order。 | | `data_pgsql_query_snapshot_file_record` | 缺一个已知存在的快照 file_name(PgSQL 记录,列表接口无法级联获取)。 | | `data_sim_acceleronix_batch_data_info` | iccid 可级联,但需配一个“确有用量数据”的 month。 | ### C 组 · 需环境或代码改动 | 工具 | 缺什么 / 如何补 | |------|------| | `service_background_task_list` | 缺 asynq 任务队列 inspector 初始化。需在 cmd/mcp/main.go 初始化队列 inspector(代码改动),或该能力在 MCP 场景不启用。 | ### D 组 · 环境数据为空(非缺陷,需造/等数据) | 工具 | 缺什么 / 如何补 | |------|------| | `service_monitor_alarm_stats` | 缺当日告警统计数据(StatisticsAlarm 集合无文档)。需等有数据的日期或造数据;工具逻辑正常(同族 shutdown 已 PASS)。 | | `service_dashboard_alarm_detail` | 同上,缺 StatisticsAlarm 当日文档。 | | `plane_get_cycle` | 缺 cycle:plane_list_cycles 返回空。需项目里有周期。 | | `plane_get_issue` | 缺可用 issue:plane_list_issues 当前返回空(该 project 无工作项)。需项目里有 issue。 | | `plane_get_issue_activity` | 同上,需存在 issue。 | | `plane_get_module` | 缺 module:plane_list_modules 返回空。需项目里有模块。 | | `plane_get_page` | 缺 page:plane_list_pages 返回空。需项目里有页面。 | | `plane_get_page_description` | 同上,需存在 page。 | | `plane_get_sub_issues` | 同上,需存在带子项的 issue。 |