Skip to content

Live-site canary: detect geocaching.com contract drift before users do #86

Description

@rfsbraz

Description

The e2e suite runs against a mocked geocache page and mocked logbook API, so CI stays green forever even when the real site changes and breaks the extension - which is exactly how the breakage in #85 shipped unnoticed. A real-page Playwright suite already exists for this, but tests/e2e/fixtures/real-pages/ is empty, so it silently skips.

The extension's contract with geocaching.com is narrow and assertable: page jQuery ($), userToken, the tmplCacheLogRow template, #cache_logs_table/#cache_logs_container, and the /seek/geocache.logbook endpoint's pageInfo.rows/data response shape.

Proposed Fix

  • Capture a real cache page into tests/e2e/fixtures/real-pages/ so the existing suite actually runs (also directly unblocks reproducing [Bug] Extension not working #85)
  • Add a scheduled (weekly + manual) CI job that fetches a live public cache page and probes the logbook endpoint, asserting each contract point above; failure = an issue-worthy alert instead of a user report
  • Refresh the fixture periodically so it tracks the live site

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions