mcpbeat

Verify Bug

hoangnguyen0403/verify-bug

Post-merge UAT verification workflow. Walks JIRA reproduce steps, performs comparative audits (Before/After), attaches evidence to JIRA, and transitions status on PASS.

1k tokens
context cost
the whole folder, loaded on every use
1
files
instructions only
0
copies elsewhere
how many repositories repackaged it
536
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/HoangNguyen0403/agent-skills-standard --skill verify-bug

The instruction itself

16 sections, as written by the author

Verify Bug Skill

> [!IMPORTANT]

> Post-merge UAT verification workflow. Walks JIRA reproduce steps, performs comparative audits (Before/After), attaches evidence to JIRA, and transitions status on PASS.

Optional args: slug=<feature>, ticket=<id/url>, mode=interactive|autonomous|channel, channel=<id>, auto_continue=true|false, profile=business|hybrid|technical.

Instructions

When the user asks to perform this workflow, execute the following steps:

Verify-Bug — UAT Audit

Goal: Prove a bug fix works in the UAT environment via comparative Before/After evidence, then transition ticket status.

Input

/verify-bug <jira-url-or-key> [--baseline-image <url>]

Workflow

Step 0: Pre-flight & Data Gathering

> [!TIP]

> Sub-Agent Delegation: If your platform supports sub-agents (e.g., Claude, OpenCode, Gemini, Kiro), delegate steps 1-3 below to your JIRA Analyst sub-agent (e.g., @specialist-jira-analyst). If sub-agents are NOT supported (e.g., Antigravity, Windsurf), you must execute these steps yourself.

  • Parse JIRA: Extract Market, Reproduce steps, and Expected Result.
  • Resolve Markets: If multiple markets, prompt for scope (Full/Sample/Custom).
  • Fetch Test Data: Call Confluence for Test data - <MARKET> UAT. Parse credentials and module-specific data (e.g., customer codes).
  • Credential Check: Rule out expired accounts before starting sessions.
  • Fallback: If Jira/Confluence MCPs are unavailable, request exported ticket/test-data text and continue with local evidence.

Step 1: Comparative Audit (Execution Phase)

For each market in scope:

  • Environment Setup: Run the DNS probe from <SKILLS>/common/common-web-visual-testing/references/diagnostic-decoder.md; if it indicates VPN is required, connect VPN and retry.
  • Named Session: Start playwright-cli -s={TICKET}-{MARKET} or Appium session.
  • Walk Steps: Execute reproduction steps.
  • Hover Discipline: Always hover the target element (warning, button, price) before screenshotting.
  • Stability: Disable animations and mask dynamic fields (clocks, balances).
  • Verdict Determination:
  • PASS: End-state matches Expected Result.
  • FAIL: End-state matches Actual Result or original bug screenshot.
  • NEEDS-HUMAN: Deviates from both.

Step 2: Automated Failure Diagnostic

If the verdict is NOT PASS:

  • Run Decoder: Load common-web-visual-testing; if synced references are available, consult <SKILLS>/common/common-web-visual-testing/references/diagnostic-decoder.md.
  • Categorize: Is it a VPN NOT CONNECTED error? ACCOUNT BLOCKED? Or a genuine CODE REGRESSION?
  • Label: Add the diagnostic label to the JIRA comment.

Step 3: Evidence & JIRA Sync

  • Upload: Push screenshots as attachments to the JIRA ticket.
  • Wiki Comment: Post a verdict comment using JIRA Wiki Markup (orientation-aware widths).
  • Use 🟢 PASS / 🔴 FAIL badges.
  • Embed the most diagnostic screenshot inline.
  • Status Transition:
  • If PASS: Ready for UATReady for Production.
  • If FAIL: → Reopened.
  • Walkthrough:
  • Use the Walkthrough Template below.
  • Update project-local docs/srs/srs-walkthrough.md.

Runtime Contract

  • Use for post-merge UAT verification of a bug fix against JIRA reproduce steps.
  • Required inputs: JIRA URL/key or exported ticket text with reproduce steps and expected result.
  • Return NEEDS-HUMAN only when the end-state deviates from both expected and original-bug behavior.

Handoff Payload

  • slug, operator_profile (carried, not re-inferred), verdict (PASS/FAIL/NEEDS-HUMAN), walkthrough path, diagnostic label, outcome report, next workflow.

Blocking Questions

  • Ask max 3 at a time with a recommended default and 2-3 options.

Artifact Templates

Walkthrough Template

# Walkthrough: [Name]

## Scope

## Acceptance Criteria

## Evidence

| Check   | Result              | Evidence   |
| ------- | ------------------- | ---------- |
| [check] | [PASS/FAIL/BLOCKED] | [evidence] |

## Risks

## Outcome Report
feature_status: implemented | blocked
requirement_trace: BRD-OBJ-* -> REQ-* -> AC-* -> SRS-* -> evidence
completed_evidence: []; missing_evidence: []; decision_needed: []; recommended_next_workflow: deploy-release | dev-fix

## Next Workflow
deploy-release | dev-fix

Cost Report

Call get_session_cost(workflow="verify-bug") before final handoff.

Anti-Patterns

  • No Sequential Runs: Verify all markets in parallel.
  • No Unnamed Sessions: Traceability depends on -s={TICKET}.
  • No Mystery Failures: Always include the Diagnostic Decoder result in FAIL comments.
  • No Orphan Comments: Clean up "temp media" comments after posting the final verdict.

How to use it

Copy the folder

Take hoangnguyen0403/verify-bug from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.