deck / core
Deck kernel: queue instrumentation and the job-execution recording event seam. Storage-free and UI-free; shared by deck/deck and deck/cloud.
Requires
- php: ^8.3
- illuminate/contracts: ^11.0||^12.0||^13.0
- illuminate/queue: ^11.0||^12.0||^13.0
- illuminate/support: ^11.0||^12.0||^13.0
Requires (Dev)
- larastan/larastan: ^3.0
- laravel/pint: ^1.14
- nunomaduro/collision: ^8.8
- orchestra/testbench: ^9.0||^10.0.0||^11.0.0
- pestphp/pest: ^4.0
- pestphp/pest-plugin-arch: ^4.0
- pestphp/pest-plugin-laravel: ^4.0
- phpstan/extension-installer: ^1.4
- phpstan/phpstan-deprecation-rules: ^2.0
- phpstan/phpstan-phpunit: ^2.0
Suggests
- laravel/horizon: Enables richer worker snapshots and failed-job retry when using Redis queues.
This package is auto-updated.
Last update: 2026-08-06 21:54:14 UTC
README
The queue-instrumentation kernel behind Deck.
deck/core hooks Laravel's queue, records every job-execution lifecycle
transition into a JobExecutionRecord, and fires a single JobExecutionRecorded
event. It has no database and no dashboard — sinks subscribe to the event
from other packages:
deck/deckpersists executions to your database and renders the dashboard.deck/cloudstreams them to Deck Cloud.
You normally don't install this package directly — you install deck/deck (full
self-hosted app) or deck/cloud (slim agent), both of which require it.
What's in here
- Queue payload stamping, the Deck bus dispatcher, and the queued-job handler.
- The recorder →
JobExecutionRecordedevent seam and theJobExecutionRecordercontract. - Cache-based control primitives: cooperative cancellation, pending-job cancellation, and job-class blocking.
- The storage-free retry primitive (
JobExecutionRetry+JobExecutionRetryContext). - Shared data objects (
JobExecutionRecord,ObservabilitySnapshot, …) and Horizon read helpers.
The cross-package contract
Deck\Core\Events\JobExecutionRecorded carrying Deck\Core\Data\JobExecutionRecord
is the seam every sink builds on. Treat that DTO as a versioned public contract.
Requirements
PHP 8.3+ · Laravel 11–13 · Redis (for cancel/block flags). Horizon 5.x is optional and enables richer worker snapshots and failed-job retry.
Installation
composer require deck/core
The service provider (Deck\Core\DeckCoreServiceProvider) is auto-discovered.
Development
composer test
composer analyse
License
MIT © Tor Morten Jensen. See LICENSE.md.