@outputai/evals— dataset files use a new multi-case format; the old single-case format is no longer supported.output-api— several workflow run routes are deprecated in favour of pinned-run equivalents. Old routes keep working until 2026-07-16 but emitDeprecationresponse headers.
@outputai/evals — dataset file format
Old dataset files carried a top-level name: field and held a single case:
tests/datasets/stripe_blog.yml
tests/datasets/stripe_blog.yml
Migration steps
For every.yml file under tests/datasets/:
- Remove the top-level
name:field. - Use the value of
nameas a new top-level YAML key. - Indent everything else by two spaces so it nests under that key.
tests/datasets/ — duplicates now throw instead of silently overwriting.
output-api — deprecated workflow run endpoints
Three mutation endpoints are deprecated. They still respond, but should be migrated to pinned-run equivalents by 2026-07-16:
| Deprecated | Replacement |
|---|---|
PATCH /workflow/:id/stop | PATCH /workflow/:id/runs/:rid/stop |
POST /workflow/:id/terminate | POST /workflow/:id/runs/:rid/terminate |
POST /workflow/:id/reset | POST /workflow/:id/runs/:rid/reset |
runId from POST /workflow/run or POST /workflow/start — both responses now include it.
Migration steps
Replace each deprecated call with its pinned-run equivalent, passing therunId you captured when the workflow started:
Deprecation, Sunset, and Link response headers you can alert on.
Additive changes (no action required)
These are backwards-compatible response-shape additions — mentioned here so they don’t surprise you when you regenerate clients:POST /workflow/runresponse now includesrunId.POST /workflow/startresponse now includesrunId.PATCH /workflow/:id/stopresponse is now{ workflowId, runId }(previously had no body).POST /workflow/:id/terminateresponse now includesrunId.- All status, result, and trace-log responses now include
runId.
Verify
After applying both migrations:- Bump the framework packages in your
package.jsonto0.2.0. - Run
pnpm install(or the equivalent for your package manager). - Run your type checker. The dataset format change surfaces at runtime rather than compile time, so also run whatever test suite exercises your evals.
- Start your workers and hit a sample workflow; confirm responses include
runId.