The Wire · Showcase
LARAVEL FRAMEWORK FIXES QUEUE FAKE MISMATCHES AS MCP PROTOCOL HARDENS
By RepoJournal · Filed · About Laravel
Queue drivers now accept enums like their test fakes do, closing a dangerous type-hint gap that let tests pass where production fails [ref:3].
The framework shipped three critical test-suite fixes overnight. First, queue fakes and real drivers now agree on enum support [1], eliminating the mismatch where `Queue::fake()->size(Queues::Rules)` works in tests but crashes on Redis. Second, `MailFake` now respects queue resolution when you call `Mail::queue()`, `Mail::later()`, and their variants [2], fixing a gap where the `$queue` parameter was silently ignored during tests. Third, a large green-to-green Mockery refactor standardizes the test suite by converting legacy `shouldReceive->once` to `expects`, removing the deprecated `m` class alias, and untangling nested mock construction [3]. The Laravel MCP server, meanwhile, aligned with the `2026-07-28` protocol revision by removing session state entirely [4], validating mirrored HTTP headers [5], and completing every result with server metadata [6]. MCP now treats each HTTP request as stateless, dropping the `MCP-Session-Id` header. The AI package added test coverage for image and audio storage to filesystem disks [7], [8], ensuring the `Storable` trait works end-to-end in test suites.
One email a day. Unsubscribe in one click.
Keep up with Laravel in about 3 minutes a day: what actually shipped — the commits, pull requests, releases, and security advisories that matter.
One email a day. Unsubscribe in one click. Read a past issue →
Action items
- → Pull queue enum fixes into your test suite to catch production enum mismatches before deploy laravel/framework [plan]
- → If you mock Mail in tests, verify queue parameters are now preserved on MailFake laravel/framework [monitor]
- → Update MCP server implementations to drop session id handling if targeting 2026-07-28 laravel/mcp [plan]
References
- [1] [13.x] Ensure Queue drivers work for enums matching the Fake ↗ laravel/framework
- [2] [13.x] Preserve queue resolution on queued mailables in MailFake ↗ laravel/framework
- [3] [13.x] Mockery cleanup ↗ laravel/framework
- [4] Remove server session state for the stateless transports ↗ laravel/mcp
- [5] Validate the mirrored MCP request headers over HTTP ↗ laravel/mcp
- [6] Complete every result with the server info metadata ↗ laravel/mcp
- [7] Add coverage for storing a generated image on a filesystem disk ↗ laravel/ai
- [8] Add coverage for storing generated audio on a filesystem disk ↗ laravel/ai