The four records that must agree
- Source inventory
- Normalized original URLs from links, dependencies, sitemaps, feeds, and archive indexes.
- Final disposition
- Recovered, redirected, duplicate, excluded, unsafe, missing, or awaiting owner input.
- Delivered output
- Final route or file, checksum, content type, and the source record or new-work label.
- Verification
- Representative template, responsive, link, metadata, and archive-independence results.
Define complete before the crawl begins
A recovery is complete only against an agreed boundary. Record the authorized hostnames, path prefixes, languages, date policy, public file types, and deliberate exclusions before discovery begins. Also name the business-critical routes and the uncommon templates that must be represented. This prevents a large raw capture count from being mistaken for a finished website. Build the candidate source inventory with the complete Wayback Machine website download guide, then reconcile archive-index records with links and dependencies found in recovered pages.
Write separate acceptance rules for pages, assets, redirects, documents, and interactive features. A page can count as recovered only when its required public files load, its internal route works, and its source capture is recorded. A captured form interface can be preserved as evidence, but it cannot count as working behavior until its current processing rules have been implemented and tested. Use the CDX API recovery guide to interpret timestamps, status records, MIME types, redirects, and duplicate digests without treating index rows as verified files.
Reconcile independent discovery sources
Build one candidate list from recovered navigation, sitemaps, feeds, body links, stylesheets, scripts, media attributes, and downloadable files. Build a second list from the archive index. Comparing the two reveals captured orphan pages, links whose targets were never stored, duplicate replay variants, and asset hosts that were easy to overlook. After the inventory reconciles, follow the static website deployment runbook to test the same release artifact on staging and the public host.
Do not publish every indexed URL automatically. Classify candidates by original URL, MIME type, response history, template family, canonical purpose, and current value. Tracking queries, calendar loops, print views, and session variants may collapse into one canonical route. A real page found only in the index still needs editorial and authorization review before it enters the public rebuild. Start the paid recovery from an exact authorized source in the Wayback Machine downloader so the delivered package can be checked against the same scoped inventory.
Make every final status explainable
Give each in-scope record one final disposition: recovered, redirected, duplicate, excluded, unsafe, missing, or awaiting owner input. A recovered record links the original URL and capture timestamp to a delivered path and checksum. A missing record states which referring page required it and what capture attempts were made. An exclusion records the rule or approval that removed it.
The totals should reconcile. The number of final dispositions must equal the normalized in-scope inventory, and every delivered route or public asset must point back to a source record or a clearly labeled new implementation. Unexplained output files and unclassified source URLs are completeness failures even when the homepage looks correct.
Test representative templates, not only URL totals
Group the normalized routes by layout and behavior, then choose a representative from each family. Include the homepage, listing pages, detail pages, articles, image-heavy pages, documents, error pages, and every uncommon campaign or application screen. Check content, navigation, metadata, media, and responsive behavior against the source evidence. Ten tested articles do not compensate for one untested checkout or directory template.
Repeat the template sample with archive and historical-origin requests blocked. A page that looks correct only because its stylesheet, font, image, script, or API still loads from an old host is not complete. Record desktop and narrow-screen results separately because responsive images, menu code, and conditional bundles can reveal dependencies that never appear in the first desktop load.
Separate archive gaps from implementation defects
An archive gap means the approved source has no usable response for a required page or file. An implementation defect means usable evidence exists but the delivered route, file, content type, rewrite, or component is wrong. Keep these categories separate. The owner can then decide whether an archive gap should remain missing, use a documented nearby capture, accept an owner-supplied original, or receive a clearly labeled new replacement.
Retest implementation defects against the same manifest row and acceptance step that exposed them. When fixed, update the delivered checksum and test result without rewriting the historical source record. This preserves a reliable audit trail and prevents a corrected build from appearing to have come directly from an archive response that never existed.
Sign off the report with limits still visible
The final report should state the approved boundary, candidate count, normalization rules, final disposition totals, capture substitution policy, template sample, unresolved gaps, and archive-independence result. Link each summary total to the underlying rows. A reviewer should be able to select any route and see its source, local output, checks, and remaining limitations without reverse engineering the crawl logs.
Completion does not mean that private databases, server code, accounts, search indexes, or form processing were recovered. List newly implemented features separately with their requirements and acceptance tests. The sign-off confirms that the agreed public recovery scope is accounted for, not that an archive acted as a full server backup.
Recovery completeness acceptance record
Approve completeness only when the normalized source inventory, delivered files, unresolved gaps, and template-level tests reconcile against the written scope.
Evidence ledger
- Two independent discovery inventories from recovered links and archive indexes, normalized with reviewable URL rules.
- One final disposition for every in-scope route and dependency, connected to source evidence and delivered output where available.
- Representative template tests with archive and historical-origin hosts blocked on desktop and narrow screens.
Acceptance report
A signed completeness report containing the scope, inventory reconciliation, disposition totals, source-to-output ledger, unresolved gaps, and acceptance results.
Unresolved mismatch
Stop when raw capture counts are presented as completeness, delivered files have no source record, inventory rows remain unclassified, or the result still depends on archive replay services.
Start with a bounded website inventory
Use one exact capture and written host, path, date, and file rules before measuring completeness.
Configure the recovery boundary
