Skip to content

Treat archive.today timemap 404 as empty, like Common Crawl no-capture #74

Description

@aeitwoen

The archive.today provider surfaces a never-captured URL as a provider failure. GET https://archive.is/timemap/ answers 404 exactly when the URL has zero snapshots ever, and fetchMementos (src/providers/archive-today.ts) lets that 404 throw, so the listing result carries error=[GET] ".../timemap/...": 404 Not Found next to 0 snapshot(s).

Repro: provider=archiveToday listing for a URL archive.today has never captured (e.g. an onetimesecret secret URL) returns the error envelope; control: the same call for https://github.com/ returns 200 with memento links.

On archive.today a 404 timemap is the authoritative zero-captures answer, not an outage signal. Returning it in the error channel makes the result ambiguous with real failures (network, rate limit, auth) and forces a control probe before every empty can be trusted.

This is the same shape issue #38 fixed for Common Crawl (PR #41): recognize the specific no-capture response and return an empty success, keep every other 404 as an error. commoncrawl.ts already has isNoCapturesError for that pattern; archive-today.ts needs the same mapping, with tests extending test/providers/archive-today.test.ts.

Observed 2026-09-04 on 0.5.4: three never-captured URLs each required a github.com control probe before the empty result could be classified.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions