Multi-property · Pattern story

PHP 8.1 drift on 80 sites. Fixed without a meeting.

A franchise group runs eighty regional WordPress properties. Eight years of legacy hosting decisions left fourteen of them on PHP 8.1, which hit upstream end-of-life in late 2025. Nobody knew, because nobody could reasonably check eighty sites by hand.

80Sites
14Below floor
2 hTo resolution
1Approval needed

The setup

A franchise group with eighty WordPress sites for its regional units. Sites sit across four hosting providers, picked over the years by different regional managers. Each site has its own PHP version because each host defaults differently and nobody had a reason to align them.

The central digital ops team has two engineers. Their job is not maintenance. Their job is the platform features the brand actually ships. Maintenance is something they do on weekends, badly, and only when forced.

What the agent surfaced

A standing fleet baseline policy on the WPShake tenant: WP ≥ 6.8, PHP ≥ 8.2. The agent ran the baseline check daily. On the morning the PHP 8.1 EOL date passed, every site below floor surfaced with a single row in the "Baseline drift" view:

For each of the fourteen, the agent had a per-site recommendation: the target PHP version, given the site's host (different ceilings for different providers), the plugin stack on that site (one had a legacy plugin that wouldn't run on 8.3), and the fleet majority around it.

What the team did

The lead engineer reviewed the per-site recommendations once. Approved them in bulk. The agent executed across the fourteen sites on a rolling window, with the rollback-on-checkout-fail safety on every one. Two hours later the fleet was at compliance. The diff was exported for the compliance team. The agent posted a single Slack message: "Baseline drift resolved. 14 sites bumped from PHP 8.1.x."

What would have happened without the agent

Either nobody would have noticed for months, or one engineer would have spent two weekends working through the fourteen sites manually, each one a different host login, each one a different upgrade flow. Or, more realistically, the franchise group would have stayed on EOL PHP until a security incident on one site made the compliance officer ask why.

Why this is the agent's job, not the dashboard's

A dashboard tells the lead engineer that fourteen sites are below the floor. A dashboard does not bump the PHP version on each one with a safety net underneath. The agent is the part that takes the recommendation and makes it happen.