Platform (Studio)
- API reference for listing dataset examples now documents
include=metadata, so you can page through example ids, names, and file refs without loading every payload. - Local Studio development no longer keeps a growing on-disk compiler cache that can exhaust memory during long
bun devsessions. - Studio’s sidebar theme picker now supports keyboard navigation across system, light, and dark.
- Studio dashboard sessions continue to authenticate
/api/v1calls. Token-based/api/v1and/v1requests still work without a browser login, and the dedicated API hostname keeps its public routing and CORS behavior. - Studio save-as-release still publishes a tagged version as the live workflow. Publishing from an existing snapshot creates a new tagged release instead of rewriting the original tag, so earlier releases stay intact. Connect API docs version pickers follow the public version list, so after restore the current untagged version shows as latest while tagged releases stay selectable.
Public API
- List dataset examples without pulling every payload.
GET /api/v1/automations/:id/examplesnow acceptsinclude=metadata, which returns ids, names, annotations, and expected file refs while leaving input and expected JSON unloaded. Keep the defaultinclude=fullwhen you still need the complete example bodies. - You can now create, promote, and restore workflow versions through the public API. Create a tagged candidate with
activate: falseto test it without changing live traffic, then promote that exact version after it qualifies. You can also publish from YAML, copy an existing version into a new release without changing its original tag, or restore an earlier snapshot. Name-conflict errors includeconflictingWorkflowIdso you can see which workflow already owns the name.
CLI
eigenpal workflow versionscan now create, promote, and restore YAML workflow versions through the public API. Tag a candidate from a YAML file or an existing snapshot with an explicit semver, keep it off live traffic with--no-activate, then promote that exact version when it qualifies. Restoring still rolls a workflow back by copying a snapshot into a new current version — lists now show that untagged HEAD clearly instead of hiding it.workflow versions list --limitand--offsetpage that full public list locally.--jsonprints the sliced\{ data, total, limit, offset }envelope (totalis the unsliced count), not the raw server payload.
SDK
- TypeScript and Python SDKs can list dataset examples with
include: "metadata". That returns ids, names, annotations, and expected file refs without loading each example’s input and expected JSON. The default remains a full payload, so existing list calls stay unchanged. - The TypeScript and Python SDKs can create, promote, and restore workflow versions. Create a tagged candidate with
activate: false, evaluate it without moving the live version, then callpromoteVersion/promote_versionwhen it is ready. Existing restore helpers still roll a workflow back to an earlier snapshot. Name-conflict errors exposeconflictingWorkflowIdon the typed error envelope.