La interfaz está localizada; las descripciones y documentos de las Skills se traducen automáticamente con IA a su idioma. El código, los comandos, rutas y términos técnicos se mantienen en el original, y prevalece el documento del autor.
Explorar Skills
Despliegue y operaciones · SKILL.md

mushi-integration

mushi-integration

Full end-to-end Mushi Mushi integration smoke test: bug capture → AI triage → story mapping → TDD test generation → approval → execution → PDCA cycle. Use when "test mushi integration", "verify full pipeline", "mushi e2e check", "does mushi work end-to-end", "smoke test mushi", or after deploying changes.

Independent GitHub snapshot · Automated classification · Original documentation governs

Documentación de la Skill

GitHub

name: mushi-integration description: >- Full end-to-end Mushi Mushi integration smoke test: bug capture → AI triage → story mapping → TDD test generation → approval → execution → PDCA cycle. Use when "test mushi integration", "verify full pipeline", "mushi e2e check", "does mushi work end-to-end", "smoke test mushi", or after deploying changes. license: MIT disable-model-invocation: true effort: low

Mushi Integration Smoke Test

Degree of freedom: MIXED. Pass/fail judgment [HIGH freedom]; Stages 1–6 probes and DB verifies [LOW freedom — run exactly].

How to reason

  1. Observe — each stage's CLI output and DB row
  2. Interpret — stage failed vs still-pending vs expected-failure (test detected friction)
  3. Classify — capture / triage / map / gen / run / pdca
  4. Severity — classify-report down outranks optional Stage 7 dashboard drift

Worked example

Observe: mushi test → rep_…; DB still pending at 70s; mushi doctor was green. Interpret: capture wrote; classify-report did not. Classify: Stage 2 fail — check query_logs; do not start story mapping. Verify: summary marks Stage 2 ❌; later stages skipped; diagnose_setup next.

Self-critique before reporting

  • Health first — mushi doctor green before Stage 1
  • DB verify — each stage checked the row, not only CLI text
  • Expected fail ok — Stage 5 failed still counts if the test executed
  • Right owner — component down → mushi-health; targeted diagnosis → diagnose_setup

Exercises every stage of the Mushi pipeline end-to-end. Run after setup, after a deploy, or any time you need proof that the whole loop works.

Prerequisites [LOW freedom — run exactly]

  • mushi doctor passes (all green) — run mushi-health first if unsure.
  • At least one BYOK key for anthropic and firecrawl is active.
  • You have the app URL you want to map stories from.

Stage 1 — Bug capture [LOW freedom — run exactly]

Send a real test report through the SDK pipeline:

mushi test

Expected: Test report submitted — id: rep_...

Verify in DB (Supabase MCP):

SELECT id, status, severity, category, created_at
FROM reports
ORDER BY created_at DESC LIMIT 1;

Expected: a row with status = classified and a non-null severity within ~30 seconds.
If still pending after 60 s: classify-report edge function failed — check its console output with query_logs on source = 'function_logs'.


Stage 2 — AI triage [LOW freedom — run exactly]

Confirm the classifier ran:

mushi reports list --limit 1

Expected output includes severity, category, and blast_radius.

Verify via MCP:

get_report_detail(reportId)

Confirm classification.severity and classification.category are set.


Stage 3 — Story mapping [LOW freedom — run exactly]

Map user stories from a live URL:

mushi stories map --url https://your-app.com --wait

--wait polls until the crawl finishes (usually 30–90 s). Expected terminal output:

✓  Crawled 12 pages
✓  Claude drafted 8 user stories
✓  Proposal created: prop_...
Open in console → Inventory → Discovery → Past proposals

Verify in DB:

SELECT id, source, status, pages_crawled, created_at
FROM inventory_proposals
ORDER BY created_at DESC LIMIT 1;

Expected: source = 'live_crawl', status = 'pending_review'.

Accept the proposal in the Mushi console (Inventory → Discovery → Past proposals → Accept), or via CLI when the accept command is available.


Stage 4 — TDD test generation [LOW freedom — run exactly]

Pick a story id from the accepted inventory and generate a Playwright test:

# List available stories from the accepted inventory
mushi tdd pending

# Generate a test (review mode — goes to approval queue)
mushi tdd gen <story-id> --mode review

Expected output:

✓  Test generated: qa_...
✓  Draft PR opened: https://github.com/.../pull/...
   Waiting for approval — run: mushi tdd approve qa_...

Verify in DB:

SELECT id, title, approval_status, source, automation_mode, created_at
FROM qa_stories
ORDER BY created_at DESC LIMIT 1;

Expected: source = 'test_gen_from_story', approval_status = 'pending_review'.

Via MCP:

list_pending_review_stories(projectId)

Stage 5 — Approval and execution [LOW freedom — run exactly]

Approve the generated test:

mushi tdd approve <qa-story-id>

Trigger a manual run immediately:

mushi tdd run <qa-story-id>

Verify in DB:

SELECT id, status, latency_ms, provider_session_url, created_at
FROM qa_story_runs
WHERE qa_story_id = '<qa-story-id>'
ORDER BY created_at DESC LIMIT 1;

Expected: status = 'completed' (or failed — a failure here is fine; it means the test ran and detected real friction).

Via MCP:

run_qa_story(projectId, qaStoryId)

Stage 6 — PDCA improvement cycle [LOW freedom — run exactly]

If Stage 5 produced a failure, trigger the PDCA improver:

mushi tdd improve

Expected: Claude analyzes the failure, writes an improved test, and queues it for review.

Verify:

SELECT id, title, source, parent_story_id, approval_status, created_at
FROM qa_stories
WHERE source = 'pdca'
ORDER BY created_at DESC LIMIT 3;

Expected: at least one row with source = 'pdca' and a parent_story_id pointing to the original.


Stage 7 — Evolution loop (optional) [HIGH freedom]

Check the full PDCA dashboard to confirm the loop is converging:

Via MCP resource:

project://dashboard

Look for:

  • Rising judge_scores over time.
  • Falling recurrence_rate (same bugs re-appearing).
  • fix_attempts with status = 'completed' outpacing failed.

Pass/Fail Summary [LOW freedom — do not skip]

StageWhat ranStatusNotes
1. Bug capturemushi test → reports row✅ / ❌
2. AI triageclassify-report → severity/category✅ / ❌
3. Story mappingstory-mapper → inventory_proposals✅ / ❌
4. TDD generationMushi edge fn test-gen-from-story → qa_stories✅ / ❌
5. Approval + runqa-story-runner → qa_story_runs✅ / ❌
6. PDCA improvepdca-runner → qa_stories (source=pdca)✅ / ❌

All ✅ → Mushi is fully operational end-to-end.
Any ❌ → the relevant edge function failed. Run the mushi MCP diagnose_setup tool for targeted diagnosis when the Mushi MCP server is configured (the @mushi-mushi/mcp package; this pack does not bundle it). Without it, run mushi doctor and follow debug-error on the failing edge function.


Tips [HIGH freedom]

  • Fastest smoke test: Stages 1–2 only. Takes ~60 s and confirms bug capture + triage is alive.
  • Story map only: Stage 3. Useful after changing the Firecrawl key or updating the story-mapper function.
  • TDD-only check: Stages 4–6. Run this after changing the Mushi edge functions test-gen-from-story or pdca-runner.
  • Browserbase vs Firecrawl: Stage 5 uses firecrawl_actions by default. To test Browserbase: set provider = 'browserbase' on the QA story in the console first.
Skills guardadas