laravolt/camunda
Laravel wrapper for the Camunda BPMN workflow engine. Start and manage process instances, query and complete user tasks, handle external tasks and incidents, and call the Camunda REST API through a fluent, config-driven client integrated with Laravel's service container.
Status: conditional pass, pending diff review. The 2.7.0 release publishes only a 2.6.0...2.7.0 compare link — no feature list, no fix list, no breaking-change callout, no compatibility statement. As TPM, treat 2.7.0 as an unverified minor bump and keep it out of the release train until an engineer reads the actual diff and posts a one-paragraph impact note. Everything below assumes conventional semver-minor behavior, which is an assumption, not a finding.
Architecture fit
fetchAndLock tasks, run PHP business logic, and complete/fail them.composer require.Integration feasibility
maxTasks batching, async response timeout, retry/backoff policy, and the distinction between a technical failure (retry) and a BPMN error (business exception routed to an error boundary event). Require explicit answers before any revenue-critical process is committed.tenant-id on fetch), and multi-engine/multi-environment configuration are the usual gaps in community Camunda clients.Technical risk
Key questions to resolve before sign-off
/engine-rest) only, and which 7.x minors are tested?Stack fit
composer.json constraints against the real application matrix — not the README.Migration path
Compatibility
vendor:publish --force overwrites production config, and config:cache masks newly added keys that were never published. Diffing the published config between 2.6.x and 2.7.0 is a mandatory step, not a nice-to-have.Sequencing
composer.lock committed. Never composer update on a production host.Maintenance
Support
Scaling
fetchAndLock with a lock duration is the throttle. Set lock duration above p99 handler latency or you will manufacture duplicate executions under load.Failure modes
complete(). Task retries and the side effect repeats. Same mitigation; additionally log the external task ID as the correlation key on every side-effecting call so finance and support can reconcile.Ramp-up
How can I help you explore Laravel packages today?