No description
- Python 88.4%
- C# 8.7%
- Shell 2.9%
The documented API accepts an object or array wherever a string is accepted: `instructions`, every Choice option description, every Score level, and the Noul `criteria.true` / `criteria.false` entries. The client sent bare strings everywhere and never used `criteria` on a Noul at all. Add the builders for those shapes: * `ask()` structured instructions: question, focus, inspect, compare * `entry()` a description with what it covers, what it is not for, examples * `noul_criteria()` contrastive true/false criteria * `score()` the ordered-level primitive, documented but not implemented * `gate_choice()` an explicit floor per Choice call site A threshold tuned on a Noul is never reused on a Choice: the two answer different questions and are not on a comparable scale, so each gate states its own pair (`CHOICE_TOP_MIN`, `CHOICE_MARGIN_MIN`). Also add `answer_record()` and the `JEV_TRACE` writer, so a decision can carry the answers that produced it. Without a trace there are no labels for any model decision, which blocks every question about decision quality. |
||
|---|---|---|
| capture | ||
| docs | ||
| utils | ||
| vendor | ||
| .gitignore | ||
| ab_card_skip.sh | ||
| brain.py | ||
| capture.py | ||
| eval_batch.sh | ||
| facts.py | ||
| jev.py | ||
| run.py | ||
| sts2.py | ||
| test_brain.py | ||
| test_facts.py | ||