telkins/laravel-dag-manager
Laravel package for building and running directed acyclic graphs (DAGs). Define tasks and dependencies, persist graphs to the database, and execute nodes in dependency order using Laravel's queue system. Useful for workflows, pipelines, and job orchestration.
Package: telkins/laravel-dag-manager — a Laravel/Eloquent package for persisting and traversing directed acyclic graphs (vertices + edges) in a relational database.
Baseline note: No prior assessment existed; this evaluation is built from the v5.0.0 release notes only (two merged PRs). Detail is thin, so several findings below are explicitly marked as unverified and carry a discovery action.
Architecture fit
Integration feasibility
Vertex/Edge models or use them directly — the v5.0.0 namespace fix in the Custom DAG edge model example (PR #29) is precisely the guidance teams copy-paste, so anyone who copied the pre-fix example has a latent misconfiguration worth auditing; (b) mapping existing relational data into vertices/edges, which is a data-modelling exercise, not a library exercise.Technical risk
UPGRADE.md/CHANGELOG.md and the composer.json constraints is reviewed.Key questions
composer.json now require a higher PHP/Laravel minimum?Stack fit
Migration path (v4 → v5)
composer.json, CHANGELOG.md/UPGRADE.md, and the src/ tree between v4.0.1 and v5.0.0. Do not plan from the release notes alone.composer why-not telkins/laravel-dag-manager 5.0.0 against the target app to enumerate blockers before committing to the upgrade.Compatibility considerations
Sequencing Spike (read diff + verify constraints) → go/no-go decision → environment upgrade (PHP/Laravel) if required → package bump → regression suite → staged rollout. Recommend the spike be timeboxed to roughly a day; the information needed to decide is small and cheap to obtain.
Maintenance
GraphService facade over vertex/edge operations). This is cheap now and converts a potential future rip-and-replace into a contained swap.Support
Scaling
Failure modes
Ramp-up
Recommendation: Adopt v5.0.0 only as a consequence of a planned Laravel 13 / PHP 8.5 upgrade; otherwise stay on 4.0.1 and keep the pin. Gate the upgrade on a completed source diff of the changelog and composer.json. Confidence in this assessment is moderate-low — it rests on a two-line changelog, and the breaking-change surface is an open question, not an established fact.
How can I help you explore Laravel packages today?