Skip to content

v0.4.0 — Application-First / Laravel-Native

Choose a tag to compare

@para1992 para1992 released this 16 Aug 23:11
· 3 commits to main since this release

Application-First / Laravel-Native

This release turns Rick from an execution engine into a Laravel workflow package application developers prefer to write, read, test, and operate — while keeping the same durability guarantees.

What's new

  • First-class Workflow classes — extend Rick\Laravel\Workflow, declare name() / version() / build(), start with Workflow::start([...]).
  • Plain PHP application steps->step(LoadClaim::class, as: 'load-claim') runs an ordinary invokable against a WorkflowState. No codec, strategy, or StepBase required by the consumer.
  • Laravel AI agent steps->agent(FlagRisk::class, as: 'risk') adapts a Laravel\Ai\Contracts\Agent into exactly one audited provider call (tools, approvals, and multi-turn conversation are rejected loudly).
  • WorkflowState — dot-notation get/put/has/forget layered over the existing artifact model.
  • Run handleid, snapshot, metrics, timeline, delivery, progress, pendingInteraction, resume, retry.
  • ->output() — replaces outputGlue() on the happy path; resolve() / context() / outputGlue() are no longer mandatory.
  • Stable step aliases (as:) + labels (label:) + progress() — a safe {status, step_id, label, current, total} projection.
  • Rick::fake() — high-level assertions (assertStepRan, assertAwaitingHuman, assertProviderAttempts, assertRunRecoveredFrom).
  • make:rick-workflow generator.

Compatibility

  • All existing Rick methods and builder methods remain; outputGlue() is a backward-compatible alias.
  • Persisted run/step payloads remain schema version 1; application / agent are additive step types.
  • Supports Laravel AI ^0.9.1 || ^0.10.0 (agent capability matrix documented in the changelog).

Full details: CHANGELOG.md