phattarachai/ops-laravel
Operational tooling for Laravel apps: health checks, maintenance commands, and deployment helpers to keep production running smoothly. Lightweight and config-driven, it drops into any Laravel project with minimal setup and clear, sensible defaults.
withoutOverlapping-style semantics), and multi-instance cron safety. Any feature that relies on "only one node runs this job" is directly affected by how lock expiries are bounded.Adopt when:
Look elsewhere (or wait) when:
withoutOverlapping, onOneServer, cache lock() with explicit TTLs). In that case a third-party layer adds a dependency without clear incremental value.For executives: This is a small, focused Laravel operations package that hardens scheduled-job and cache-lock behavior — the plumbing that stops the same job running twice or getting permanently stuck when a server restarts mid-task. The latest patch (v0.1.2) fixes unbounded lock and mutex expiry, which is exactly the class of bug that causes silent production stalls. It's a low-cost, low-blast-radius dependency, but it's pre-1.0 and single-maintainer, so we'd pilot it in one service rather than standardize on it.
For engineering: v0.1.2 bounds scheduler mutex and flexible-cache lock expiries — an operational-correctness fix, no new features or breaking changes. Recommend pinning to ^0.1.2, then validating that the bounded TTLs exceed our longest scheduled job runtime and that multi-node overlap protection still holds under a killed-worker scenario. Track upstream activity; we should have a documented exit path back to Laravel's native onOneServer/withoutOverlapping primitives if maintenance stalls before 1.0.
How can I help you explore Laravel packages today?