CedarCopilot wants to merge 3 commits into staging from worktree-agent-a9ebefe25728061a4
Libra ran this behavior against the change and confirmed the check detects when it breaks.
Changed code: field-query.ts.
Live on prod, watching, 2 days left
Libra has verdicts on 0 of 12 tracked behaviors on prod; 12 are still being checked. Libra checks hourly for 3 days after each deploy.
field-query skill (apps/server/.claude/skills/field-query/SKILL.md): mandatory discover-before-query order for crm_conversation_field_values (list-fields/taxonomy-fields before run-sql or conversation-read), a vocabulary-check step, and a standing rule to always state the search space used in the final answer. States plainly that extraction is a primitive capture layer with no notion of confidence or canonicalization , that judgment belongs to the querying agent, applied fresh every time.(org, field) pairs found with real casing/punctuation drift against their declared select/list options, using the exact coerceToCanonicalOptionValue algorithm from #2883 ported to Python (this worktree has no node_modules). 61 of 74 had real drift; applied with per-row verification, 16,382 rows healed across 16 orgs. Originals preserved in metadata.healedFrom; a post-hoc sweep confirms zero healed row differs from its original by anything beyond case/whitespace/underscore.playbook-instruction-eval, reimplemented in Python, exercising the real chat agent against real DB reads (read-only run-sql/config-read):
field_query_corpus_eval.py , full agentic completions against real historical failure prompts.field_query_fire_rate_eval.py , cheap targeted fire-rate measurement across the full 9-prompt real-customer corpus, isolating two specific behaviors instead of requiring full completions: discovery-before-query (22% baseline ā 73% with skill) and search-space disclosure in the final answer (13% ā 33%). Includes an explicit negative control that correctly stays at 0/5 in both conditions.run-sql call as a miss. Flagged, not resolved.DATABASE_URL (and ANTHROPIC_API_KEY for the evals) in the environment , no secrets committed.š¤ Generated with Claude Code
The PR is not safe to merge until live customer CRM data is removed and the outstanding SQL tenant-scope and healing-verification defects are addressed.
Libra has not measured any production surfaces for this change yet.