"""Keep a saved geometry discoverable even when its inline response is shortened.""" from uuid import NAMESPACE_URL, uuid5 from app.mcp.models import QueryResult def saved_presentation_preview(result: QueryResult) -> dict | None: if result.source != "generate_node_coverage" or not result.evidence_id: return None analysis = result.data.get("result") if isinstance(result.data, dict) else None if not isinstance(analysis, dict): return None payload = analysis.get("map_payload") if not isinstance(payload, dict) or not payload.get("features"): return None coverage = analysis.get("coverage", {}) return { "command": { "action": "set_overlay", "mode": "geometry", "evidence_id": result.evidence_id, "overlay_id": f"node-coverage-{uuid5(NAMESPACE_URL, result.evidence_id)}", "title": "节点空间覆盖示意", }, "display_only": True, "coverage_status": coverage.get("status"), "groups": {role: { "node_count": len(group.get("node_ids", [])), "mapped_node_count": group.get("mapped_node_count", 0), "missing_node_count": len(group.get("missing_node_ids", [])), } for role, group in coverage.get("groups", {}).items()}, }