helix eval¶
Validate a flow against a JSONL evaluation dataset. Each dataset row is
parsed, the routes are reified, and the count of validated cases is
reported. This subcommand is a stub today: it confirms that the dataset
parses, the flow loads, and every workflow reifies — actual live
execution is still done via helix run (the eval-harness
implementation lives in pkg/testing and is exercised by helix test).
Usage¶
Flags¶
| Flag | Default | Description |
|---|---|---|
--dataset PATH |
unset, required | JSONL file. Each line is a JSON object with input, optional expected, and optional agent_id. |
The flow file argument is required and is the first non-flag positional.
Behavior notes¶
- Requires
$HELIX_LICENSE. Verified at process start. - Reads the dataset, splits on newlines, ignores empty lines, and
unmarshals each line as
{"input": "...", "expected": "...", "agent_id": "..."}. Invalid JSONL fails on the first line with a clear line number. - Loads the flow file via the standard loader and reifies every workflow with the default component set — failure to reify any workflow fails the eval.
- Prints one line per case with
(validated). Does NOT actually execute the workflow against each input today. - Closes with a message telling you to use
helix run <file>to drive inputs end-to-end. The eval harness for full live execution + scoring lives behindhelix testwith--eval-log/--baseline/--min-metricflags.
Examples¶
Validate a dataset against a flow:
$ helix eval app.yaml --dataset eval/cases.jsonl
Evaluation: app.yaml
Dataset: eval/cases.jsonl (12 cases)
Routes: 4
---
[1] input="What is 2+2?" expected="4" agent=chat-agent (validated)
[2] input="Summarise the doc" expected="..." agent=rag-agent (validated)
...
---
Validated 12 eval case(s). Flow has 4 route(s), all reify OK.
A typical dataset line:
Source¶
cmd/helix/main.go lines 2665-2766 (cmdEval).
See also¶
helix test— full declarative testing with metric gates, baselines, calibration. The eval features you want for CI live here.- The eval harness audit memo: see project_eval_harness_audit.md for what's wired and what's stubbed.