5.2 KiB
5.2 KiB
Changelog
All notable changes to Lobster will be documented in this file.
Unreleased
- Improve workflow resume compatibility for
stateKeynaming by accepting bothworkflow_resume_andworkflow-resume_prefixes, including cleanup against the resolved on-disk key. Thanks to @brownetw-ai (PR #4). - Add per-step workflow
retrypolicies (max,backoff,delay_ms,max_delay_ms,jitter) with retry-aware stderr logs and dry-run visibility. Thanks to @scottgl9 (PR #84). - Add optional approval identity constraints for workflow gates (
approval.initiated_by,approval.required_approver,approval.require_different_approver) with resume-time enforcement viaLOBSTER_APPROVAL_APPROVED_BYand envelope metadata for integrations. Thanks to @coolmanns (Issue #44). - Clarify
pipeline:vsrun:usage forllm.invoke/llm_task.invokein workflow files, and add regression coverage to ensurestdin: $step.stdoutis forwarded as LLM artifacts forllm_task.invokepipeline steps. Thanks to @RatkoJ (Issue #41). - Add
lobster graphworkflow visualization withmermaid(default),dot, andasciioutputs, including step-type nodes,stdindata-flow edges, conditional dependency labels (when/condition), approval-gate diamond shapes, and--args-jsonlabel resolution support. Thanks to @vignesh07 (Issue #53). - Add workflow composition via
workflow:+workflow_args, including recursive sub-workflow execution, cycle detection, and dry-run visibility for workflow steps. Sub-workflow approval/input halts are rejected with resume-state cleanup. Thanks to @scottgl9 (PR #73). - Add per-step
on_errorworkflow policies (stop|continue|skip_rest) for partial-failure recovery, with structured step error fields (error,errorMessage) for condition-based branching. Thanks to @scottgl9 (PR #72). - Add per-step workflow
timeout_mshandling, including timeout-triggered aborts,SIGKILLfor timed shell steps, and dry-run annotations. Thanks to @scottgl9 (PR #74). - Add workflow condition comparison operators
<,<=,>, and>=with strict numeric semantics (booleans/null do not coerce), including mixed boolean-expression support with&&/||. Thanks to @scottgl9 (PR #71). - Add workflow-level LLM cost tracking with
_meta.costsummaries, per-step usage attribution, and optionalcost_limitcontrols withwarn/stopactions (plus custom pricing viaLOBSTER_LLM_PRICING_JSON). Thanks to @scottgl9 (PR #70). - Add
parallelworkflow steps with branch fan-out,wait: all|any, block-level timeout support, and branch result references in downstream steps. Thanks to @scottgl9 (PR #69). - Add
for_eachworkflow steps for per-item sub-step execution over arrays, including loop-scoped vars (item_var/index_var), optionalbatch_size+pause_ms, and collected iteration outputs for downstream steps. Thanks to @scottgl9 (PR #68). - Add pipe-based template filters (for example
upper,length,join,default,date) for thetemplatecommand with quote-aware filter parsing and chain evaluation. Thanks to @scottgl9 (PR #67).
2026.4.6
- Add workflow file support for
.lobster, YAML, and JSON, including workflow args/env, native pipeline steps, and shell-safeLOBSTER_ARG_*inputs. - Add structured input pauses with
ask, workflowinput,needs_input, andlobster resume --response-json '{...}'for resumable human-in-the-loop flows. - Add richer workflow condition expressions with
!,==,!=,&&,||, and parentheses. - Export the embeddable runtime via
@clawdbot/lobster/coreso Lobster can run in-process inside OpenClaw and other hosts. - Add generic
llm.invokeadapters,openclaw.invoke --each, and keepclawd.invokeas a supported alias. - Add compact state-backed workflow/pipeline resume tokens, safer resume validation, and hardened approval ID handling.
- Improve dry-run and shell interoperability with
exec --stdin raw|json|jsonl,approve --preview-from-stdin --limit N, and better template/shell-variable preservation. - Improve Windows CLI/build compatibility and fix quoted-argument parser edge cases.
2026.1.21-1
- Published release (pre-changelog).
2026.1.21
- Initial published release (pre-changelog).