RepoJournal
Laravel

@laravel

PHP's most popular framework - Forge, Vapor, and a massive paying audience

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.

Pick a date

Topics: PHP Full archive →

The Wire · Showcase

LARAVEL AI FIXES FAILOVER MODEL SILENCING BUG, MCP GETS CLIENT FOUNDATION

By RepoJournal · Filed · About Laravel

Laravel AI's failover provider system was ignoring explicitly configured models across backup providers, now fixed to apply consistently.

The AI package shipped a critical fix where model attributes and explicit model parameters were silently dropped when using provider failover lists [1]. This affected both the prompt API and class-level attributes, meaning your carefully configured gpt-4-mini fallback to Gemini was actually falling through without the model directive. In the same push, the team also cut non-ASCII token bloat by 70% in structured output by adding JSON_UNESCAPED_UNICODE flag to schema instructions, solving a problem where non-English field descriptions were inflating token counts to 17k when they should have been 6k [2]. The MCP package landed its first client foundation with a stdio transport builder and ping support [3], meaning you can now spawn local MCP servers and test them from Laravel code, not just run them as servers. Over in framework, the team replaced all instances of `compact()` with explicit arrays across 13.x in preparation for AOT PHP compiler support, since AOT compilers can't resolve variable names from strings at runtime [4]. Two more framework fixes ship this cycle: async HTTP retries now correctly handle array-based backoff values [5], and `Str::studly()` gained an optional `normalize` parameter to handle all-caps strings like 'CBOR' that were previously left unchanged [6]. Pulse also patched an ingest failure for MySQL/MariaDB users with `use_upsert_alias` enabled, which was causing ambiguous column errors [7].

One email a day. Unsubscribe in one click.

Action items

References

  1. [1] Apply model attribute and explicit model to all providers in a failover list ↗ laravel/ai
  2. [2] Add JSON_UNESCAPED_UNICODE to schema instruction encoding ↗ laravel/ai
  3. [3] Add MCP client foundation with stdio transport and ping ↗ laravel/mcp
  4. [4] [13.x] Replace compact with explicit arrays ↗ laravel/framework
  5. [5] [13.x] Fix async HTTP retries when using array backoff values ↗ laravel/framework
  6. [6] [13.x] Add `normalize` parameter to `Str::studly()` and `Str::pascal()` ↗ laravel/framework
  7. [7] Support `use_upsert_alias` to prevent ingest failure ↗ laravel/pulse

Quick answers

What shipped in Laravel on May 23, 2026?
Laravel AI's failover provider system was ignoring explicitly configured models across backup providers, now fixed to apply consistently. In total, 14 commits and 13 pull requests landed.
Who contributed to Laravel on May 23, 2026?
6 developers shipped this update, including sumaiazaman, pushpak1300, parkourben99, LucasCavalheri, hotmeteor, and JonPurvis.
What were the notable Laravel updates?
Apply model attribute and explicit model to all providers in a failover list, Add JSON_UNESCAPED_UNICODE to schema instruction encoding, and Add MCP client foundation with stdio transport and ping.

More from @laravel

Daily updates, in your inbox

Follow Laravel

Keep up with Laravel in about 3 minutes a day: what actually shipped — the commits, pull requests, releases, and security advisories that matter.

or

One email a day. Unsubscribe in one click. Read a past issue →

Elsewhere on the wire

Want every project, not just this one?