Shopify API maintenance, delivered as PRs

Every 90 days, Shopify breaks something.
Your app shouldn't notice.

PatchDrift watches every API version, finds the exact call sites in your codebase that break, and delivers verified fix PRs — reviewed by a human, ahead of the deadline.

28 breaking changes in version 2026-10 alone · read-only scan · report in days, not weeks

28breaking changes in version 2026-10 alone
157"Action Required" notices live in the changelog right now
4 / 6open-source apps we scanned were pinned to retired API versions
90 daysbetween versions. Each supported ~12 months, then silently gone

Measured from Shopify's own changelog and schema archives, July 2026. Shopify stopped publishing consolidated release notes after 2025-01 — assembling the impact is now your job. Or ours.

How it works

From version diff to merged fix.

STEP 01

Watch

Every API version schema-diffed against the last, every changelog entry parsed. We archive schemas Shopify retires — history you can't fetch anymore.

STEP 02

Locate

AST-level scan of your repo maps each change to file and line. No matches, no noise — most versions won't touch you at all.

STEP 03

Fix

Deterministic rules for the mechanical bulk; schema-grounded generation for the rest. Model memory is never trusted over the 2026-07 schema.

STEP 04

Verify

Build, types, your tests, and contract replay in a sandbox. Behavioral changes — same shape, different runtime — get flagged, never auto-fixed.

STEP 05

Deliver

A draft PR with per-line explanations, each citing the changelog entry it answers. A human reviews every PR. Merging is your verb.

Trust

A diff you can read beats a promise you can't audit.

Anyone can demo an agent that edits code. The hard part is one you'd let near the codebase your revenue runs on. Every limit below is architecture, not policy.

100%of PRs human-reviewed
0source files retained after a run
0test files ever edited by the agent
control ledgerenforced in architecture
C-01

Ephemeral clones, zero retention

Your repo is cloned for the run and destroyed after it. Nothing is stored, nothing trains a model.

C-02

Minimal scopes, your rules

Per-repo installation only. Branch protection and rulesets apply to us like any other actor; fork-based PRs if you prefer.

C-03

Code-never-leaves-CI option

Run the scanner inside your own CI. We see findings, not source.

C-04

Tests are read-only

The agent cannot touch test files — passing by weakening the test is structurally impossible, not just discouraged.

C-05

Confidence is declared, not implied

Each PR states what was verified: build, types, tests, replay. Low-confidence changes arrive as annotated issues, not diffs.

C-06

Behavioral changes wait for you

A quarter of Shopify's breaking changes alter runtime behavior without changing shape. Those get flagged with evidence — never silently patched.

Receipts

Caught before it shipped.

Not testimonials — artifacts from our own pipeline runs on real, unmodified open-source apps.

caught · would have shipped broken

The rename the model "remembered" wrong

Migrating a webhook registration, generation-from-memory produced callbackUrl — correct for years, wrong since the field became uri. The schema gate caught it before the diff existed.

- callbackUrl: action + '/webhooks/uninstall' + uri: action + '/webhooks/uninstall' ✓ WebhookSubscriptionInput @ 2026-07 verified
measured · july 2026

The fleet is quietly falling forward

Of six real open-source Shopify apps we scanned, four were pinned to API versions Shopify retired — one from 2020. Retired pins don't error. They silently "fall forward" onto changed contracts.

laravel-shopify pin 2022-01 retired core-web-vitals pin 2020-07 retired store-duplicator pin 2023-10 retired nextjs-app pin 2025-04 retired
archive · grows every quarter

We keep what Shopify deletes

Retired version schemas vanish from official endpoints. We archive every version — so when you finally migrate a 2023-era app, the contract it was written against still exists somewhere.

✓ 2025-10 … 2026-10 archived 5 versions · 4 diffs · 62 breaking changes next capture: version 2027-01
Get started

Start with the scan. It's free, and it's read-only.

FREE · READ-ONLY

Impact scan

  • File-and-line report of everything the next two API versions break in your repo
  • Mechanical / semantic / behavioral triage for each finding
  • Your version-pin risk, stated plainly
Request a scan no write access requested · report in days
5 SLOTS · DISCOUNTED

Design partner

  • Full migration to the current API version, delivered as reviewed PRs
  • 90 days of coverage for that version's fallout
  • Partner pricing in exchange for structured feedback on every PR
Talk to us for teams shipping on Shopify · agencies welcome
Questions you should ask

Fair questions, straight answers.

What access do you actually need?

For the free scan: read-only, or run it inside your CI so code never leaves. For fix PRs: a per-repo GitHub App install — opening a PR requires branch-push permission, which is exactly why C-02 through C-04 exist. Your branch protection applies to us like anyone else.

Our app has no tests. Doesn't that break your "verified" claim?

Most Shopify apps don't. Verification degrades honestly: build and type gates always run, contract replay substitutes for missing tests, and every PR states exactly which gates it passed. What we never do is claim confidence we didn't earn.

Shopify has an API health report and an AI assistant. Why you?

Shopify tells you what's deprecated — per call, with deadlines. It doesn't find the call sites in your code, write the fix, verify it, or open the PR. The .dev Assistant converts snippets; nobody ships you a reviewed diff. That last mile is the entire product.

Can't we just do this with Copilot or Claude?

For one migration, sure — many teams do, and the good ones budget days for review. What you can't get from a chat window: version schemas Shopify no longer serves, a watch on every future version, replay verification, and a fix pattern library refined across many apps. We sell the standing infrastructure, not the one-off prompt.

What does it cost?

The scan is free. Migrations are fixed-price per app after the scan — you'll know the number before any work starts. Ongoing coverage is a monthly subscription that only exists after we've earned a first merge.