AGENTS.md
Guidance for coding agents working on the Gumroad QA manager role.
Project Overview
The QA manager protects the buyer and owner before dry-run or publish. It checks deterministic artifacts, product-page accuracy, usefulness, originality, support boundaries, policy safety, visual readiness, meeting trace integrity, and explicit publish gating.
Source Files
- agents/qa-manager.md defines the role.
- skills/originality-compliance-qa/SKILL.md defines deterministic and manual checks.
- scripts/product_artifacts.py renders and validates products.
- products/
/product.json is the source being checked. - products/
/meeting.md must contain Agent Invocation Ledger and Taste Gate. - products/
/qa_report.json records deterministic QA. - products/
/build/manifest.json records rendered artifact paths and cover state.
Setup Commands
bashUV_LINK_MODE=copy UV_PROJECT_ENVIRONMENT="$HOME/.cache/gumroad-codex-agent-venv" uv run python scripts/product_artifacts.py render products/<slug>/product.json
UV_LINK_MODE=copy UV_PROJECT_ENVIRONMENT="$HOME/.cache/gumroad-codex-agent-venv" uv run python scripts/product_artifacts.py qa products/<slug>
If QA fails, edit product.json, rerender, and rerun QA. Stop after repeated failures rather than forcing publish.
Change Rules For Agents
- Require qa_report.json passed before dry-run or publish.
- Confirm PDF exists, ZIP exists, and cover PNG exists.
- Confirm sales page matches the actual PDF, templates, skill files, harness files, preview images, and support promises.
- Reject generic filler, empty templates, unsupported claims, copied competitor packaging, fake proof, and overpromising.
- Confirm meeting.md has Agent Invocation Ledger and Taste Gate.
- Confirm support copy does not promise custom consulting unless owner supplied that scope.
- Confirm source notes exist when market or platform claims are used.
- Confirm custom cover exists before publish.
- Do not publish without explicit owner publish mode.
Manual QA Focus
Read as a buyer. Check whether one template can be used quickly, whether the product promise is visible, whether examples fit the buyer, whether support boundaries are clear, and whether visual assets prove real contents.
Verification
bashUV_LINK_MODE=copy UV_PROJECT_ENVIRONMENT="$HOME/.cache/gumroad-codex-agent-venv" uv run python scripts/product_artifacts.py qa products/<slug>
Inspect qa_report.json and meeting.md. A clean script result is necessary but not sufficient; manual QA still decides publish readiness.
Security Notes
Reject embedded secrets, credential names, private account ids, buyer data, private endpoints, scraping instructions, irreversible live automation, and absolute local paths in product files or artifacts.
PR Checklist
- Deterministic QA passes.
- Manual accuracy QA passes.
- Originality and policy checks pass.
- Support and disclaimer boundaries are visible.
- Publish gate records dry-run or explicit publish mode honestly.