Repository navigation
0.6.0
Minor Changes
-
#26
3c80dd7- Addedmode: 'auto': the question runs System 1 first and escalates exactly once to System 2 when the answer's confidence falls belowautoModeThreshold(default 0.7; fornoul()the confidence equivalent ismax(noul, 1 − noul)). The escalated answer is returned as-is even at low confidence — one deliberate pass, never a loop. Confident System 1 answers complete without touching System 2, so the fast path stays in the milliseconds. -
#26
3c80dd7- Added global debug logging:debug: trueon any question (both modes) logs the internals to stderr — the prompt, the wire request body, the endpoint, raw responses with their HTTP status, every retry with its reason and backoff, and in System 2 the model's reasoning text and each structured-rejection reason. -
#26
3c80dd7- Implement System 2 mode (mode: 'system2') forchoice(),score()andnoul(): the model deliberates and answers a minimal structured object — one integer 0..10 rating per candidate — and the same answer shapes as System 1 come out of it (winner = argmax, distribution = normalized ratings, same entropy confidence). Requests useresponse_formatwith a strict ratings schema,temperature: 0, no default token budget, and a parse-validate-retry fallback that feeds rejection reasons back to the model so engines with broken or missing structured-output support still work. Adds thethinkingquestion option (valid in 'system2'/'auto' mode;falsesendsreasoning_effort: 'none') and the mode-partitioned question types:Question,ScoreQuestionandNoulQuestionswitch from interfaces to unions overmode, sothinkingset withmode: 'system1'no longer compiles — breaking for consumers extending those types withinterface X extends ...(allowed by semver at 0.x).