# Evidence ## Relevant History - `executor-v2-output-contract`: Executor emits `executor_evidence_v2` and no longer emits final-expression fields. - `executor-gatekeeper-hook`: Gatekeeper validates schema and invocation references before Verifier and persists `gatekeeper_result`. - `chat-verifier-agent`: Existing Verifier used `facts_checked`, low-confidence rendering, retry context, and verifier audit. ## Code Evidence - `src/main/resources/prompts/chat-verifier-prompt.md`: Verifier prompt now makes `executor_structured_output.claims` primary and treats `executor_final_answer` as debug/fallback only. - `src/main/java/com/superbiz/agent/service/ChatService.java`: parses `claim_checks`, maps them to compatibility `facts_checked`, persists both, and applies effective verdict guardrails. - `src/main/java/com/superbiz/agent/hook/AgentLoggingHook.java`: verifier thought summaries now include `claim_checks`. - `src/test/java/com/superbiz/agent/service/ChatServiceSequentialAgentTest.java`: covers claim-check mapping, Gatekeeper downgrade, malformed output downgrade, and V2 PASS paths. ## Evidence-Driven Conclusions - `facts_checked` cannot be removed yet because existing low-confidence templates, retry context, trace tooling, and eval paths still consume it. - Prompt-only prevention is insufficient for Gatekeeper failures; `ChatService` must enforce effective verdict downgrades in code. - No database schema migration is needed because `claim_checks` is persisted inside existing `diagnosis_session.self_evaluation`. - Composer remains stage four and must not be mixed into this stage. ## Verification Evidence Script verification passed: ```powershell mvn "-Dtest=ExecutorGatekeeperServiceTest,VerifierInputHookTest,ChatServiceSequentialAgentTest" test cmd /c openspec validate executor-verifier-claim-checks ``` Known existing warnings: - Maven reports duplicate `spring-boot-starter-test` dependency in `pom.xml`. - Existing Lombok `@Builder` default warnings remain.