Repository navigation
docs: describe the current eval API - #30
TheGreatAxios wants to merge 2 commits into
Conversation
State format 2 experiments, expectedOutput JSONL rows, and ranSteps([]) on an empty step list.
|
Triage: Pass No changes needed from you. A maintainer will review this pull request. Stacked on #29: only this pull request's own changes were checked. Waiting on a maintainer to approve: approve, request review. |
TheGreatAxios
left a comment
There was a problem hiding this comment.
Review · Request changes
Documents the current eval API. One new sentence tells readers to run the prebuilt rubrics through judgeModel, and that call throws.
Findings
README.md:204— “Pair them with judgeModel when you want those rubrics run.”judgeModel({ model: faithfulness({ provider: "ollama", model: "pinned" }).definition, invokeStep })throwsjudgeModel: step must not set input.judgeWorkflowalways setsinput: { from: "trigger.payload" }(src/prebuilt.ts:86) andassertJudgeSteprejects that (src/workflow.ts:107). Passing thePrebuiltobject as a scorer throwscheck "faith" is not a scorer. Those factories return a one-step definition pluspayload/failure, and rubric JSON is read withparsePrebuilt.judgeModelexpects{ decisions }or{ fallback }and is not a runner for these rubrics.
The other new claims match this branch: runEvaluation({ name, data, task, scorers }), JSONL expect / expected rejected, jev as an alias of systemOne, stored format 2, ranSteps([]) on an empty step list, CLI exits 0/1/2, and the four prebuilt ids.
Review · Follow-upThe prebuilt section no longer tells readers to run those rubrics through It now says each factory returns Pushed as |
|
Superseded by the 0.2.0 release: #32 |
Summary
runEvaluation({ name, data, task, scorers }),expectedOutput,systemOne, andjudgeModel().ranSteps([])fails on an empty step list.Verification
bun run checkexited 0 (2 unit tests, 72 e2e tests).Stacked on #29.
Fixes CL-11514