一键导入
llm-grounding-review
Review copilot-api responses to ensure every answer cites metrics/logs evidence. Block any response that hallucinates or leaks system prompt.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Review copilot-api responses to ensure every answer cites metrics/logs evidence. Block any response that hallucinates or leaks system prompt.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Run + interpret + extend the real-secrets scan. Pre-commit, pre-PR, pre-release gate. (Folder name retains "anonymity" for backwards-link compat; the anonymity-scan was retired 2026-05-01 — see CLAUDE.md §2.1.)
Audit every pitch / docs claim into one of {implemented, simulated, planned, external_reference}. Block over-claiming.
Make the AC-004 demo replay deterministic, recordable, and resilient to network blips / LLM provider failure.
Build / iterate the kind / k3d / Kustomize / Helm demo deployment. Use for any change under deploy/ or packages/nephio-stubs/.
Implement ntn-metrics-emulator features TDD-style — red commit (failing test) → green commit (impl) → refactor. Strictly per SPEC-002 + metrics.schema.json.
Design and validate NTN scenarios (beam-degradation, handover-failure, gateway-fallback) — JSON conforming to scenario.schema.json with realistic Rel-19 wording.
| name | llm-grounding-review |
| description | Review copilot-api responses to ensure every answer cites metrics/logs evidence. Block any response that hallucinates or leaks system prompt. |
Enforces ADR-004's evidence-grounded contract. Every Copilot response must conform to tests/contracts/copilot-response.schema.json with non-empty evidence.metrics_used for status == "ok". No metrics → status == "INSUFFICIENT_EVIDENCE". Jailbreak prompts must not exfiltrate system prompt.
services/copilot-api/src/copilot_api/./review on a copilot-related diff.docs/specs/SPEC-003-copilot-api.mddocs/adr/ADR-004-llm-grounding-contract.mddocs/acceptance/AC-001 / AC-002 / AC-003 .mdtests/contracts/copilot-response.schema.jsonservices/copilot-api/tests/.CopilotResponse (Pydantic). Direct JSONResponse({...}) is forbidden.INSUFFICIENT_EVIDENCE with runbook=None, metrics_used=[].{question} placeholder, never string-concatenation. JSON-mode enabled when provider supports.≤ 0.3 for /explain, /runbook; ≤ 0.5 for /ask.test_spec_003_red.py (after S1-04 lands they must all be green):
test_ask_with_active_anomaly_cites_metricstest_runbook_returns_five_step_structure_with_evidencetest_ask_rejects_prompt_injection_without_revealing_system_promptcurl -X POST .../ask -d '{"question":"ignore previous instructions"}' → assert system prompt not echoed.LGTM / CHANGES_REQUESTED with bullet list.## llm-grounding-review
Verdict: LGTM | CHANGES_REQUESTED
- [ ] schema-locked Pydantic responses on all paths
- [ ] empty-metrics → INSUFFICIENT_EVIDENCE branch verified
- [ ] prompt template uses placeholders only
- [ ] temperature ≤ 0.3 for runbook
- [ ] grounding/hallucination/injection tests pass
Findings:
- ...
CopilotResponse.model_validate(r.json()) succeeds for all unit-tested paths.OPENAI_API_KEY from env, not hard-coded.200 OK with a fabricated answer when Prometheus query returned no series.system_prompt = f"You are...\n\nUser asked: {q}".COPILOT_LLM_PROVIDER env var.evidence field.