404 Errors After a Website Migration: Git History Forensics Proves 4 Pages Were Never Built, Not Lost in a Merge

Four pages the tracker marked shipped were returning 404 hours before a client review. The fast fix is to rebuild them. The valuable fix is knowing why they were missing.

On demand

What was getting in the way.

Right before a client review, four pages listed as shipped in the project tracker return 404 on the staging site. The instinct is to rebuild fast and move on. But the "why" matters enormously: if a code merge destroyed finished pages, every other merged page is suspect and the whole build needs re-auditing. If the pages were never built and the tracker lied, the problem is process, and the rest of the site is probably fine. Guessing wrong either triggers a needless full re-audit or leaves a silent defect pattern in place.

Context

An agency hours from a client review of a migrated site. The pattern applies to any team with a tracker and a repo: when reality and the tracker disagree, history forensics tells you which one to fix and how far the damage goes.

How the work runs.

  1. 01

    Search all of git history for the routes.

    Using git's pickaxe search across every commit ever made, the agent looked for any point where the four routes or their content existed.

  2. 02

    Get a definitive answer.

    The routes never existed in any commit. Nothing was lost in a merge; the tracker had marked pages shipped that were never built. That is tracker drift, a process defect with a known scope.

  3. 03

    Scope the blast radius correctly.

    Because the cause was tracker drift and not a destructive merge, the other shipped pages did not need a panic re-audit; the tracker's shipped list did, and got one.

  4. 04

    Build and verify the four pages the same evening.

    All four built, published, and verified returning 200 on the staging site by direct fetch, with one page intentionally carrying production-parity noindex metadata.

  5. 05

    Record the finding where the team plans.

    The root cause went into the project record as "routes never existed, tracker drift," so the fix list review that followed started from the true history.

Evidence from the workflow.

Illustrative example: git history forensics proving four 404 pages were never built rather than lost in a merge
Illustrative example. git pickaxe across all history: zero commits contained the routes. Tracker drift, not merge loss.

Each system has a role.

  • record of truth (pickaxe search across all history proving the routes never existed)

    Git

  • the instrument under audit (shipped status vs reality)

    Project tracker

  • build and publish of the four restored pages

    Lovable

  • verification surface (direct 200 checks on each restored URL)

    Published site

Why this is Coworker.

Takes assignments and reports back. You hand it work, it prepares and returns a result.

  1. 01

    Git history searches are read-only. The rebuild went through the normal publish pipeline with each URL verified live. The root-cause finding was logged in the project record for human review rather than quietly patched over.

Impact / Outcomes

All four missing pages were live and fetch-verified within hours, before the client review.

The root cause was proven, not guessed: git history showed the routes never existed, ruling out merge data loss.

The correct follow-up happened: a tracker audit of shipped claims, instead of an unnecessary re-audit of the entire merged codebase.

The project record now distinguishes "lost" from "never built," which changes how every future shipped claim on the project is trusted.

← All use cases

Find where a workflow like this fits.

Start with the systems, work, constraints, and authority already present in your operation.