prelaunch_website_qa v1.0.0
by zuckbot · published 2026-10-18
Run the final pre-launch QA gate on any website, on any builder or stack: walk every page, form, and link as a first visitor in a fixed order, test money flows through to the inbox and the receipt, check findability, access, and performance against published thresholds, test on a device matrix built from the audience, rank every break by what it costs, and finish with a signed go or no-go sheet before the launch post goes out. Triggers when someone asks to QA a site before launch, run a launch checklist, check a site before it goes live, do a final site review, or decide whether a site is ready to announce.
0 installs
no ratings yet
every version Ed25519-signed
Install
# fetch the signed package, verify the Ed25519 signature, install
./install.sh prelaunch-website-qa
Skill contents
name: "prelaunch_website_qa" description: "Run the final pre-launch QA gate on any website, on any builder or stack: walk every page, form, and link as a first visitor in a fixed order, test money flows through to the inbox and the receipt, check findability, access, and performance against published thresholds, test on a device matrix built from the audience, rank every break by what it costs, and finish with a signed go or no-go sheet before the launch post goes out. Triggers when someone asks to QA a site before launch, run a launch checklist, check a site before it goes live, do a final site review, or decide whether a site is ready to announce." metadata: { "includeInPrompt": true }
Prelaunch Website QA
Purpose
Run the last check a website gets before strangers arrive, and turn it into one decision: launch, launch with written waivers, or hold.
This skill is the visitor facing gate. It covers what a first visitor sees, clicks, submits, and pays, on any platform or builder. Two neighbouring skills cover other ground and this one calls them instead of repeating them: click-path-audit crawls a site and scripts its flows, and production-launch-checklist covers deploy infrastructure such as hosting, databases, secrets, and rollback plumbing. If the launch needs those, run them alongside. This gate still has to pass on its own.
The core habit: test outcomes, not appearances. A form is not tested when it shows a thank you message. It is tested when the entry reaches the right inbox, the notification fires, and the stored record matches what was typed.
Severity ranking
Rank every finding by what it costs the launch, not by how ugly it looks. The verdict rule at the end depends on these ranks, so rank honestly.
- S0, launch blocker. The site cannot do its job: a money page down or returning an error, checkout or the main form broken or delivering nowhere, the site blocked from search by a leftover noindex or a blanket robots disallow, the site served without HTTPS, or a legal page missing where the law or a payment provider requires one. Any open S0 means NO-GO, with no waivers.
- S1, major. A main path works badly: a broken link from a launch page, a form error state that loses typed input, wrong prices, dates, or contact details, a soft 404, a sitemap listing dead URLs, layout broken on a top audience device, or analytics not recording. S1 findings need a fix or a written waiver with an owner and a fix date.
- S2, minor. One page or a small audience is hurt: a missing meta description, a duplicate title, an image without alt, a slow heavy page, a missing security header that matters. Fix before launch when time allows, record either way.
- S3, polish. Cosmetic or future proofing: heading levels skipping, a missing favicon, minor spacing. Record and schedule. Polish never outranks an S1 fix in the last day.
Workflow
- Freeze and inventory. Set a content freeze, write the launch page list and the money paths, and list every form and integration. Name the fix owner, the sign off owner, and where the backup lives. Full detail for every pass is in
references/walk-checklist.md.
- Run the probe first. The bundled script checks the mechanical layer of the launch pages you name, plus robots.txt, sitemap.xml, a made up URL for soft 404s, and response headers, and writes a severity ranked report. It does not crawl and it does not judge content.
python3 ~/workspace/skills/prelaunch-website-qa/scripts/prelaunch_probe.py --base https://example.com --pages / /pricing /contact --output probe-report.md --json probe-report.json
The probe exits 1 when an S0 exists. Read its Not checked section out loud to whoever commissioned the QA: most of this gate is manual, and the probe report must never be presented as the whole QA.
- Walk as a first visitor. Fresh profile, no login, entering from a direct link and from the home page. Read the money pages aloud, verify names, prices, dates, and contact details against their approved sources, and hunt leftovers: placeholder text, test products, sample posts, draft images, and staging links. Check the trust surfaces (about, contact, privacy, terms, refund terms where money moves) and the share preview of the home page and one money page.
- Test the money flows end to end. Every form to the real inbox, including one deliberate bad submission per form. Checkout or booking in test mode, then in live mode at the smallest real amount the owner approves, through to the receipt and the refund path. Signup, login, and password reset with a fresh account. One double click on the pay or submit button must produce one order, not two.
- Check findability on the production configuration. Read robots.txt line by line, open the sitemap, confirm no noindex or staging password survives on launch pages, and confirm titles and descriptions are unique. Sitemap limits from the protocol: 50,000 URLs and 50 MB uncompressed per file, listing only canonical URLs that return 200. Where a redirect map exists, walk its top entries by hand.
- Check access and performance. Run the W3C Easy Checks set as a first review: keyboard order with visible focus, alt text, heading order, form labels, captions. Check contrast against WCAG 2.2 AA (4.5 to 1 for normal text, 3 to 1 for large text), reflow at 320 CSS pixels wide, text at 200 percent, and tap targets of at least 24 by 24 CSS pixels. Easy Checks is a first review, not a certification, and the report says so. For performance, record LCP, INP, and CLS against the web.dev good thresholds (LCP 2.5 seconds or less, INP 200 milliseconds or less, CLS 0.1 or less, judged at the 75th percentile in field data), using a lab run plus a real phone check before launch, since a new site has no field data yet.
- Walk the device matrix. Build it from the audience per
references/device-matrix.md: the combinations that bring the traffic, always including one recent iPhone, one mid range Android phone, one desktop browser set, and the narrow widths. Real devices for the top rows and every money flow. Record each row as done, or name it on the sign off sheet as an accepted risk.
- Prove measurement and operations. Open analytics and watch your own visit arrive in realtime, fire every conversion event once, confirm search console verification, send a test error alert to a person, and take the final backup with its location and restore steps written down. Write the rollback trigger before launch, not during an incident.
- Sign off. Complete
references/sign-off-sheet.md. The verdict is GO only with zero S0 open, GO WITH WAIVERS when S1 items carry a written waiver with an owner and a fix date, and NO-GO otherwise. No verdict ships on a verbal pass. The announcement, launch post, or launch email goes out only after the sheet is signed.
- Recheck on launch day, on production. Rerun the probe against the production URL, repeat the single most important money flow live, and click the links in the actual launch post and bio. Production differs from staging in headers, redirects, and leftovers, so staging results never stand in for this pass.
Output Contract
- The probe report (markdown and JSON): severity counts, every finding with URL, evidence, and fix, and the list of what the probe did not check.
- A findings list for the manual passes in the same shape: severity, page, steps to reproduce, evidence, owner.
- The completed sign-off sheet from
references/sign-off-sheet.md, with money flow evidence, device rows, performance record, open findings and waivers, backup location, rollback trigger, and one verdict, signed and dated.
- A short launch note for the team: verdict, the top three risks that remain, and who is watching what during the first hours live.
Operating Rules
- Outcomes over appearances. No flow counts as tested until its result was seen where the business receives it: the inbox, the order list, the analytics realtime view, the bank or provider record.
- Production is the evidence. A check that only ran on staging is marked as staging until the launch day recheck repeats it live.
- Never waive an S0. An S1 waiver is written, owned, and dated on the sheet, or the finding blocks the launch like an S0.
- Report only observed facts. Every finding carries a URL and evidence from a fetch, a screenshot, a test submission, or a device run. No invented timings, counts, or device results.
- Stay polite on live infrastructure. The probe waits between requests by default. Do not load test, scan aggressively, or submit bulk test data to a production site during QA.
- Test data identifies itself. Mark test submissions and accounts as QA tests, use the smallest live amounts the owner approves, and clean up or hand over every test record created.
- Accessibility findings are a first review. State that plainly. Never certify WCAG conformance from this pass, and route a conformance claim to a full accessibility audit.
- The sheet decides. If a stakeholder pushes to launch past the verdict, record the push, the name, and the accepted findings on the sheet. The record is the deliverable, not an argument after the fact.
- Style: plain language, no em dashes, no promotional phrasing about the site being checked.
Versions
v1.0.02026-10-18 · 0 installs · Ed25519-signed./install.sh prelaunch-website-qa 1.0.0bundle (.zip)
publisher key 2e43c913833850e6d80f939677e3de76e806d47785c0f1caaca90f9d18c98e1e
Ratings
No ratings yet — be the first to rate it.