Skip to content

Releases

v1.1.2

Choose a tag to compare

@JustSteveKing JustSteveKing released this 22 Sep 12:21
2c38939

What's Changed

Full Changelog: v1.1.1...v1.1.2

v1.1.1

Choose a tag to compare

@JustSteveKing JustSteveKing released this 22 Sep 12:03
37b9838

What's Changed

  • Let a step compute its timeout from the instance's context by @JustSteveKing in #7
  • Signal targeting, cancellation, recovery, and unsealing the host boundary by @JustSteveKing in #8

Full Changelog: v1.1.0...v1.1.1

v1.1.0

Choose a tag to compare

@JustSteveKing JustSteveKing released this 22 Sep 11:45
8ff10ab

What's Changed

Full Changelog: v1.0.0...v1.1.0

v1.0.0

Choose a tag to compare

@JustSteveKing JustSteveKing released this 11 Aug 19:09
b41b7e5

What's Changed

New Contributors

Full Changelog: v0.2.0...v1.0.0

v0.2.0

Choose a tag to compare

@JustSteveKing JustSteveKing released this 24 Jul 10:22

Component-level dependencies.

The package now depends on the individual illuminate/* components (bus, console, contracts, database, queue, support) instead of the whole laravel/framework.

Internally, jobs dispatch through Illuminate\Contracts\Bus\Dispatcher and configuration is read through Illuminate\Contracts\Config\Repository, removing all Illuminate\Foundation\* usage. No behavioural change — same public API, same 96-test suite.

Requires PHP 8.5 and Laravel 13.

composer require juststeveking/workflow-engine

v0.1.0

Choose a tag to compare

@JustSteveKing JustSteveKing released this 24 Jul 09:58

The first release of the workflow engine. Model long-running, multi-step Laravel processes as an ordered list of steps that complete, await a named signal, sleep, branch via goto, or fail. Instances are persisted as rows, driven forward by queued jobs, and resumed by signals from the outside world.

Install

composer require juststeveking/workflow-engine

Requires PHP 8.5 and Laravel 13.

What's included

  • Step outcomes: complete, await, goto (branching), sleep (delays), fail
  • Per-step timeouts tagged to the guarded step, and bounded retries with configurable exponential backoff (HasRetryBackoff)
  • Saga compensation via CompensatingStep (run outside the lock, with a StepCompensationFailed event), early-signal buffering, and definition versioning
  • Status lifecycle enforced through juststeveking/state-machine — illegal transitions throw
  • Domain events for every transition
  • Row locking and after-commit dispatch for at-least-once queue safety
  • Swappable persistence behind WorkflowRepositoryContract
  • Nine artisan commands: list, show, instances, start, signal, advance, retry, tick, prune
  • Full Unit + Feature suite, PHPStan level 10, Pint, CI, and four worked examples

See the README and the examples.