Documentation

How It Works

How It Works

A narrative walkthrough of the Gumroad QA Kit. The visual is in ../diagrams/workflow-diagram.svg; the per-node detail is in WORKFLOW-EVENTS.md.

The four-lane architecture

┌─────────────────┐  ┌──────────────┐  ┌──────────────┐  ┌──────────────┐
│ 1 · Spec phase  │→ │ 2 · Live data│→ │ 3 · Validate │→ │ 4 · Report   │
│ Read GumRoad.md │  │ Gumroad API +│  │ Run every    │  │ Slack pass / │
│ + sanity-check  │  │ HEAD probes  │  │ check, tag   │  │ fail · Notion│
│ the spec itself │  │ on deployed  │  │ each w/ spec │  │ audit log    │
│                 │  │ site         │  │ section      │  │              │
└─────────────────┘  └──────────────┘  └──────────────┘  └──────────────┘

Spec-driven design. Every check the runner performs maps to a section of spec/GumRoad.md. If the spec drifts (sections renamed/removed), the runner fails the spec-validation step loudly so you know to update either the spec or the runner. Both halves of the system stay in sync.

What the runner checks (mapped to GumRoad.md sections)

Section Checks
spec GumRoad.md is reachable, has every required section, references every entry-point file the runner expects
Phase 3 setup Product published; file uploaded; cover image; price > 0; price matches expected; description ≥ 200 chars
Gotcha: Custom Receipt URL URL is set; URL points at the right thank-you page
Phase 3 buy buttons Site landing page reachable; no Stripe REPLACE_WITH_LIVE_LINK placeholder; Buy button references Gumroad host; Buy button uses correct permalink
Buyer entry-point checklist Every required root file (index.html, launchers, START-HERE.html, logo) returns HTTP 200; every required subfolder has its own index.html

Why two runners

Python (runner/run-qa.py) — for one-off pre-launch checks, CI, or quick audits. No infrastructure required.

n8n (workflows/gumroad-qa-workflow.json) — for scheduled monitoring + Slack notifications + Notion audit log. Run it on a cron daily and you get an early warning when something drifts post-launch (link rot, expired license keys, broken cover images).

Both runners read the same spec/GumRoad.md and run the same checks. Use whichever fits your workflow.

Latency

Cost: $0 for both. Gumroad's API is free; HEAD probes are free.


"Meerkat LLC" and the Professor Meerkat mascot are marks of Meerkat LLC.

© 2026 Meerkat LLC · meerkat-llc.com · support@meerkat-llc.com · built with care in Anna, Texas