Benjamin Admin
8440ddfecb
feat(ai-sdk): runnable iace-audit propose CLI + live LLM wiring (P2 slice 3)
...
Makes the offline proposer runnable end-to-end.
- BuildProposerInput (proposer_input.go): non-test engine->hazards path. The
PatternMatch->Hazard converter is lifted out of the GT test files into
production scope so both the tests and the CLI share one pipeline.
- iace-audit propose <narrative.json> [<ground-truth.json>]: detect candidates ->
GT-screen survivors (when a ground truth is given) -> judge (HeuristicJudge by
default, LLMJudge over ollama when IACE_PROPOSE_LLM=1) -> write the human-review
queue to audit-reports/proposals.{md,json}. Propose-only.
Smoke run on a dishwasher narrative: 32 fired -> 3 candidates -> queue with a
confident duplicate, a confident distinct, and one punted to the LLM judge; GT
wall recall-safe. Live qwen is opt-in via env; the heuristic default keeps the
tool runnable (and CI deterministic) without a model. Proposal types 2-4
(foreign-framing gates, vocab->tag, coverage blind spots) remain for slice 4.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-06-26 10:27:01 +02:00
..
2026-05-21 10:51:08 +02:00
2026-06-13 17:01:41 +02:00
2026-06-24 23:46:19 +02:00
2026-06-11 09:35:37 +02:00
2026-06-12 09:18:03 +02:00
2026-06-11 14:59:47 +02:00
2026-05-15 10:08:21 +02:00
2026-06-11 14:59:47 +02:00
2026-05-17 01:39:17 +02:00
2026-02-25 22:27:06 +01:00
2026-02-25 22:27:06 +01:00
2026-04-19 10:03:44 +02:00
2026-03-16 12:50:53 +01:00
2026-04-19 10:03:44 +02:00
2026-05-21 23:36:26 +02:00
2026-05-09 07:25:39 +02:00
2026-05-09 07:25:39 +02:00
2026-05-09 21:32:23 +02:00
2026-05-21 10:51:08 +02:00
2026-05-09 21:32:23 +02:00
2026-05-07 14:23:15 +02:00
2026-06-11 12:12:02 +02:00
2026-05-10 21:23:46 +02:00
2026-05-10 21:23:46 +02:00
2026-06-11 14:59:47 +02:00
2026-06-11 14:59:47 +02:00
2026-04-19 09:29:54 +02:00
2026-04-19 09:29:54 +02:00
2026-04-19 09:29:54 +02:00
2026-05-13 01:02:33 +02:00
2026-06-10 17:15:55 +02:00
2026-03-16 13:15:31 +01:00
2026-05-22 00:21:49 +02:00
2026-03-15 23:13:41 +01:00
2026-05-10 09:15:43 +02:00
2026-06-13 00:05:52 +02:00
2026-06-13 00:05:52 +02:00
2026-05-10 22:24:02 +02:00
2026-05-10 22:24:02 +02:00
2026-05-10 22:24:02 +02:00
2026-06-13 13:34:41 +02:00
2026-06-13 13:34:41 +02:00
2026-06-12 22:59:01 +02:00
2026-06-12 23:41:13 +02:00
2026-05-12 09:45:18 +02:00
2026-06-10 22:29:10 +02:00
2026-05-16 21:11:02 +02:00
2026-06-26 10:27:01 +02:00
2026-06-09 19:02:18 +02:00
2026-06-26 10:27:01 +02:00
2026-05-13 11:41:26 +02:00
2026-06-26 10:27:01 +02:00
2026-04-19 09:35:02 +02:00
2026-04-19 09:35:02 +02:00
2026-04-19 09:35:02 +02:00
2026-04-19 09:29:54 +02:00
2026-04-19 09:29:54 +02:00
2026-04-19 09:29:54 +02:00
2026-04-19 09:29:54 +02:00
2026-04-19 09:35:02 +02:00
2026-04-19 09:35:02 +02:00
2026-04-19 09:35:02 +02:00
2026-03-15 23:13:41 +01:00
2026-04-19 09:35:02 +02:00
2026-06-24 22:13:34 +02:00
2026-06-10 17:15:55 +02:00
2026-05-16 21:11:02 +02:00
2026-06-10 17:15:55 +02:00
2026-06-10 17:15:55 +02:00
2026-05-16 21:11:02 +02:00
2026-05-12 08:50:14 +02:00
2026-05-17 02:15:51 +02:00
2026-05-16 21:11:02 +02:00
2026-05-16 21:11:02 +02:00
2026-06-10 17:15:55 +02:00
2026-05-16 21:11:02 +02:00
2026-05-17 01:59:16 +02:00
2026-06-10 17:15:55 +02:00
2026-05-17 01:59:16 +02:00
2026-05-16 22:00:06 +02:00
2026-05-16 21:11:02 +02:00
2026-06-24 22:13:34 +02:00
2026-05-07 14:05:58 +02:00
2026-05-16 22:00:06 +02:00
2026-05-15 00:05:28 +02:00
2026-06-10 17:15:55 +02:00
2026-06-10 17:15:55 +02:00
2026-06-10 17:15:55 +02:00
2026-05-07 10:53:26 +02:00
2026-05-17 01:59:16 +02:00
2026-05-14 23:04:31 +02:00
2026-06-26 10:27:01 +02:00
2026-06-10 17:15:55 +02:00
2026-05-17 01:59:16 +02:00
2026-06-11 15:06:33 +02:00
2026-06-10 17:15:55 +02:00
2026-05-17 01:59:16 +02:00
2026-05-16 21:11:02 +02:00
2026-05-16 21:11:02 +02:00
2026-05-17 01:59:16 +02:00
2026-06-10 17:15:55 +02:00
2026-05-17 01:59:16 +02:00
2026-05-17 01:59:16 +02:00
2026-06-10 17:15:55 +02:00
2026-05-21 23:36:26 +02:00
2026-05-16 21:11:02 +02:00
2026-06-10 17:15:55 +02:00
2026-06-26 10:27:01 +02:00
2026-05-17 01:59:16 +02:00
2026-06-10 17:15:55 +02:00
2026-05-17 01:59:16 +02:00
2026-05-10 08:52:56 +02:00
2026-06-24 20:20:15 +02:00
2026-06-25 00:05:30 +02:00
2026-06-10 17:15:55 +02:00
2026-06-10 17:15:55 +02:00
2026-05-07 10:53:26 +02:00
2026-03-16 10:22:49 +01:00
2026-06-26 10:27:01 +02:00
2026-06-10 22:29:10 +02:00
2026-06-10 22:29:10 +02:00
2026-06-10 17:15:55 +02:00
2026-05-16 23:04:56 +02:00
2026-05-16 23:04:56 +02:00
2026-05-17 02:15:51 +02:00
2026-05-10 09:15:43 +02:00
2026-05-16 13:08:52 +02:00
2026-06-11 15:21:25 +02:00
2026-05-10 07:07:34 +02:00
2026-05-10 08:43:21 +02:00
2026-05-10 07:07:34 +02:00
2026-05-16 13:08:52 +02:00
2026-05-16 10:12:55 +02:00
2026-05-12 07:20:38 +02:00
2026-06-11 15:21:25 +02:00
2026-05-10 07:07:34 +02:00
2026-05-10 08:52:56 +02:00
2026-06-25 00:05:30 +02:00
2026-06-24 20:20:15 +02:00
2026-06-11 13:39:48 +02:00
2026-06-11 13:39:48 +02:00
2026-06-10 17:15:55 +02:00
2026-06-10 17:15:55 +02:00
2026-05-07 10:53:26 +02:00
2026-05-12 09:15:43 +02:00
2026-06-10 17:15:55 +02:00
2026-06-10 17:15:55 +02:00
2026-06-10 17:15:55 +02:00
2026-06-10 17:15:55 +02:00
2026-05-22 09:02:05 +02:00
2026-05-22 09:02:05 +02:00
2026-05-22 09:23:52 +02:00
2026-05-22 09:23:52 +02:00
2026-05-22 09:23:52 +02:00
2026-05-22 09:23:52 +02:00
2026-05-22 09:23:52 +02:00
2026-05-22 09:23:52 +02:00
2026-05-22 09:23:52 +02:00
2026-05-22 09:23:52 +02:00
2026-05-22 09:32:38 +02:00
2026-05-22 09:32:38 +02:00
2026-05-22 09:32:38 +02:00
2026-05-22 09:32:38 +02:00
2026-05-22 09:48:07 +02:00
2026-05-22 09:48:07 +02:00
2026-05-22 09:32:38 +02:00
2026-05-22 09:32:38 +02:00
2026-05-22 09:02:05 +02:00
2026-06-11 09:35:37 +02:00
2026-05-09 07:58:58 +02:00
2026-05-09 07:58:58 +02:00
2026-05-09 07:58:58 +02:00
2026-05-09 07:58:58 +02:00
2026-05-09 07:58:58 +02:00
2026-05-09 07:58:58 +02:00
2026-05-09 07:58:58 +02:00
2026-05-09 07:58:58 +02:00
2026-05-09 07:58:58 +02:00
2026-05-09 07:58:58 +02:00
2026-05-09 07:58:58 +02:00
2026-05-09 07:58:58 +02:00
2026-05-09 07:58:58 +02:00
2026-05-09 07:58:58 +02:00
2026-05-09 07:58:58 +02:00
2026-05-09 07:58:58 +02:00
2026-05-09 07:58:58 +02:00
2026-05-09 07:58:58 +02:00
2026-05-09 07:58:58 +02:00
2026-05-09 07:58:58 +02:00
2026-05-09 07:58:58 +02:00
2026-05-09 07:58:58 +02:00
2026-05-09 07:58:58 +02:00
2026-05-22 09:02:05 +02:00
2026-06-13 00:16:41 +02:00
2026-06-13 00:16:41 +02:00
2026-06-09 11:57:08 +02:00
2026-06-09 16:15:34 +02:00
2026-06-24 23:46:19 +02:00
2026-06-26 10:27:01 +02:00
2026-05-10 08:22:55 +02:00
2026-06-26 10:27:01 +02:00
2026-05-22 08:37:24 +02:00
2026-06-10 22:29:10 +02:00
2026-06-10 17:15:55 +02:00
2026-06-24 20:20:15 +02:00
2026-06-10 17:15:55 +02:00
2026-06-10 17:15:55 +02:00
2026-05-10 20:55:26 +02:00
2026-06-26 10:27:01 +02:00
2026-06-26 10:27:01 +02:00
2026-06-26 10:27:01 +02:00
2026-06-26 10:27:01 +02:00
2026-06-26 10:27:01 +02:00
2026-06-26 10:27:01 +02:00
2026-06-26 10:27:01 +02:00
2026-06-26 10:27:01 +02:00
2026-05-13 01:02:33 +02:00
2026-06-10 23:04:56 +02:00
2026-06-11 12:12:02 +02:00
2026-06-10 23:04:56 +02:00
2026-06-11 15:21:25 +02:00
2026-06-09 15:22:44 +02:00
2026-06-11 08:54:47 +02:00
2026-06-11 08:54:47 +02:00
2026-06-09 15:35:39 +02:00
2026-06-11 09:14:36 +02:00
2026-05-10 09:15:43 +02:00
2026-05-21 23:36:26 +02:00
2026-05-05 09:29:03 +02:00
2026-05-08 01:49:14 +02:00
2026-05-17 01:39:17 +02:00
2026-06-10 17:15:55 +02:00
2026-05-18 22:31:30 +02:00
2026-05-08 01:02:41 +02:00
2026-04-19 09:35:02 +02:00
2026-06-26 10:27:01 +02:00
2026-05-18 19:55:13 +02:00
2026-05-08 07:03:44 +02:00
2026-05-19 11:46:34 +02:00
2026-04-19 09:29:54 +02:00
2026-06-09 11:57:08 +02:00
2026-03-16 10:22:49 +01:00
2026-06-09 11:57:08 +02:00
2026-03-16 10:22:49 +01:00
2026-05-05 09:29:03 +02:00
2026-04-19 10:03:44 +02:00
2026-04-19 10:03:44 +02:00
2026-05-08 01:02:41 +02:00
2026-03-16 13:15:31 +01:00
2026-05-22 09:48:07 +02:00
2026-03-16 12:50:53 +01:00