kaiserkiwi/nova-queue-management
A Laravel Nova tool for managing queues directly from your admin panel. Browse pending, running, and failed jobs, retry or delete failed entries, and keep an eye on queue health without leaving Nova. Requires Laravel Nova and a supported queue driver.
NovaServiceProvider::tools() registration. For teams already licensed on Nova, the marginal cost is near zero, and the alternative — an engineering sprint to build and perpetually maintain bespoke queue UI — is easy to decline. This is a cheap, discrete, reversible decision.laravel/nova constraint to admit Nova 5, converting this dependency from an upgrade blocker into an enabler. The PM decision is whether the broader Nova upgrade program may proceed with this package in the dependency set, and whether 1.4.0 is the version to standardize on. Critically, the release note proves permission, not verified compatibility — plan a staging bake, not a leap.artisan queue:failed by ID. This supports a roadmap theme around reducing mean-time-to-recovery and consolidating operator workflows into the admin panel instead of scattering them across CLI access.NOASSERTION — GitHub could not classify it. Before it becomes a dependency of a commercial Nova installation, legal/compliance must resolve terms. The PM owns the timing of that gate and should clear it before engineering time is spent.jobs and failed_jobs tables and gives operators retry/delete/flush; this is where its marginal value is highest, because Horizon does not cover those drivers.failed_jobs volume is large. Bulk retry and flush are synchronous requests against failed_jobs; the UI degrades at high row counts — precisely the incident condition where it is most needed. Adopt alongside retention/pruning or a dedicated monitoring product.^4.0|^5.0), not a hard replacement — read composer.json, do not infer from release notes; (b) PHP/Laravel floors align with the target platform; (c) the Nova 5 path was actually exercised, not merely permitted (there is no CI evidence).Executives. "This gives us a ready-made queue management screen inside the Laravel Nova admin we already pay for — viewing pending and failed jobs, retrying failures, and clearing queues, without custom code. The decision is simple: it converts a backlog item ('build an ops queue console') into a dependency we can add or remove in an afternoon, with no database migrations. Release 1.4.0 adds Nova 5 support, so it aligns with our platform upgrade path rather than blocking it. The trade-off to accept is that it is a small, single-maintainer open-source package behind a privileged, production-adjacent surface, with an unclear license that legal must clear. We mitigate that with an authorization gate, a named owning engineer, and a documented runbook."
Engineering. "It's a Nova tool over the jobs and failed_jobs tables — read paths for queue and failed-job state, plus retry, delete, and flush actions. Release 1.4.0 is a pure constraint widening to permit laravel/nova 5; no API, config, or schema changes. Three things matter before we commit: (1) read composer.json directly to confirm it supports Nova 4 and 5, not just 5 — that single fact decides whether this is a bridge or a forced cutover; (2) confirm the Nova 5 path was actually exercised, since there is no CI evidence; (3) resolve the NOASSERTION license with legal. It is orthogonal to Horizon and only fills a gap for non-Redis drivers or for teams who want operator actions inside Nova. The real engineering cost isn't installation — that's a half-day — it's the authorization gate and blast radius. This UI can delete production jobs, so it must sit behind a policy restricted to a small operator group, and the destructive actions deserve a written runbook and a load test at representative failed-job volume."
Operations and on-call. "The day-to-day value is incident response: a failed job pages you, you open Nova → Queue Management → Failed Jobs, read the exception and payload, and retry — no SSH, no artisan recall by ID. The caveat is that the failed-jobs view and bulk retry are only as fast as the failed_jobs table; during a real incident with thousands of accumulated failures they can be slow. So we pair this with failure-retention/pruning and a runbook covering who may retry or delete, when bulk operations are permitted, and what to check before flushing a queue. Roll it out to a pilot operator group behind a feature flag, with the previous version pinned as the rollback target."
How can I help you explore Laravel packages today?