agentleFS
theDRElabstheDRElabs/opencode-config/skills/manual-qa-plan/SKILL.md

manual-qa-plan

Skill1 starsChanged 3 months agoMITView on GitHub

Create and execute a human-owned QA plan with deterministic browser evidence for frontend workflows.

1 other project uses a version of this.

Adopted by

Most recently taken up by

The file

We split this skill into the rules it gives an agent

4 rules. About 0 are common, 3 are distinctive, and 1 is very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈3

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Use this skill after implementation review and before final human acceptance.

    line 8
  2. Very specific:

    Use Playwright only when it reduces repeatable browser work.

    line 54
  3. Distinctive:

    Create one issue per observable finding:

    line 63
  4. Distinctive:

    Do not silently convert a human finding into an automated pass.

    line 91

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Manual QA Plan

Use this skill after implementation review and before final human acceptance. The plan is a human QA record, not an automated approval. Browser checks provide repeatable behavioral and visual evidence; a human owns product judgment.

Entry Information

Require the bounded issue, acceptance criteria, target users, supported browsers, seed/reset command, startup command, test credentials or role model, and the environment URL. Return BLOCKED when a required input is missing.

Human QA Checklist

Record PASS, FAIL, BLOCKED, or NOT APPLICABLE, notes, and evidence for each:

  • Primary workflow: complete the main user journey with realistic seeded data; verify persistence, navigation, confirmation, and recovery after refresh.
  • Empty state: reset to no records and confirm the message explains what happened and offers the correct next action.
  • Loading state: exercise a delayed response and check that feedback is visible, stable, accessible, and does not permit unsafe duplicate actions.
  • Error state: exercise a failed request and verify a specific user-facing recovery path; inspect that partial data is not presented as success.
  • Boundaries and validation: blank, minimum, maximum, malformed, duplicate, rapid repeat, back/refresh, and network interruption cases relevant to the issue.
  • Authentication and authorization: signed-out, authenticated, expired-session, permitted-role, and forbidden-role behavior; verify no protected data leaks.
  • Responsive behavior: inspect desktop and mobile widths, orientation-sensitive layouts, keyboard focus, touch targets, overflow, and text wrapping.
  • Realistic data: use representative names, long values, dates, counts, and any domain-specific sensitive-looking values without production data.
  • Browser health: review console errors/warnings and failed or unexpected network requests. Attach logs rather than relying on memory.
  • Visual quality and usability: human judges hierarchy, legibility, contrast, spacing, alignment, copy, affordances, feedback, and whether the flow feels trustworthy and complete. Automated screenshots are evidence only.

Ownership Boundary

Automated evidence may establish that selectors, state transitions, viewport layouts, console capture, and request-failure detection occurred. It cannot accept visual taste, copy quality, usability, accessibility in the broad sense, security, realistic product fit, or release readiness. A human must explicitly record those decisions and acceptance boundaries.

Deterministic Browser Evidence

Use Playwright only when it reduces repeatable browser work. Prefer stable locators, explicit state/query fixtures, waitFor conditions, one worker, no arbitrary sleeps, and fixed desktop/mobile viewport projects. Capture full-page screenshots, console messages, failed requests, URL, viewport, fixture seed, and exact command. Keep the server and browser lifecycle sequential. Do not use a passing screenshot as a visual acceptance claim.

QA Finding Follow-up Issue

Create one issue per observable finding:

## QA Finding: <short observable problem>
status: blocked | ready | accepted-risk | resolved
severity: critical | high | medium | low
affected_workflow: <workflow/state>
owner_or_human_decision: <named owner or decision required>
environment: <browser, viewport, build, seed, URL>

### Observable Problem
<what the user sees or what fails>

### Reproduction Steps
1. <exact step>
2. <exact step>

### Evidence
- screenshot: <path>
- browser log: <path>
- network/trace artifact: <path or none>

### Proposed Acceptance Criteria
- [ ] <observable correction>

blocker_status: blocks human acceptance | does not block human acceptance

Do not silently convert a human finding into an automated pass. Preserve the finding and ask the human owner when severity, product behavior, or acceptance is uncertain.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.