Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Generate comprehensive edge cases and test scenarios by decomposing features across 12 dimensions. Use before implementation or testing to catch issues early.
.claude/skills/withkynam-vc-scenario/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 39% | 0% |
| case-02 | ✗→✓ | ▲ Improved | 0% | 0% |
| case-03 | ✗→✓ | ▲ Improved | 18% | 0% |
| case-07 | ✗→✓ | ▲ Improved | -2% | 0% |
| case-11 | ✗→✓ | ▲ Improved | 40% | 0% |
> Output style: Follow process/development-protocols/communication-standards.md — answer-first, plain language, no unexplained jargon, TL;DR on long responses.
Decompose any feature or code path across 12 dimensions to surface edge cases, risks, and test targets before implementation begins.
Choose a mode before generating scenarios. Default is Simple unless a trigger condition applies.
Generates edge cases from the plan description, checklist item, or approach text provided in the prompt. No subagent spawned.
Use when:
Spawns a research subagent to read the actual source before generating scenarios. Scenarios reference real variable names, real function signatures, and real failure modes visible in the code rather than hypothetical ones.
Trigger conditions (any one):
HIGH_RISKDeep mode subagent steps:
The orchestrator then generates scenarios using the research output.
| Mode | Example scenario | |------|-----------------| | Simple | "What if the input is null?" | | Deep | "What if creditBalance.available is 0 but creditBalance.pending is positive — does deductCredits(amount) check available-only or available + pending?" |
Simple mode surfaces generic edge cases quickly. Deep mode surfaces scenarios that are only discoverable by reading the actual implementation.
Not all 12 apply to every feature. Identify relevant dimensions first, then generate scenarios only for those.
| # | Dimension | What to Look For | |---|-----------|------------------| | 1 | User Types | admin, guest, banned, new user, power user, bot/scraper | | 2 | Input Extremes | empty, null, max length, unicode, special chars, SQL/script injection | | 3 | Timing | concurrent access, race conditions, timeout, slow network, retry storms | | 4 | Scale | 0 items, 1 item, 1M items, pagination boundary, cursor wrap | | 5 | State Transitions | first use, mid-flow abort, resume after crash, partial completion | | 6 | Environment | mobile/low-end CPU, no JS, screen reader, proxy/VPN, different timezone/locale | | 7 | Error Cascades | DB down, API timeout, disk full, OOM, network partition, partial write | | 8 | Authorization | expired token, wrong role, shared/public link, CORS, CSRF, privilege escalation | | 9 | Data Integrity | duplicate entries, orphan references, encoding mismatch, concurrent schema migration | | 10 | Integration | webhook replay, API version mismatch, third-party outage, contract drift | | 11 | Compliance | GDPR deletion request, audit logging gap, data retention, accidental PII exposure | | 12 | Business Logic | edge pricing (zero/negative), coupon stacking, refund after partial delivery, free tier limits |
Step 0 — Select mode using the Mode Selection rules above.
Simple mode:
Deep mode:
| Level | Meaning | |-------|---------| | Critical | Data loss, security breach, auth bypass, silent corruption | | High | Feature broken for a subset of users, data inconsistency | | Medium | Degraded UX, recoverable error not surfaced to user | | Low | Minor visual glitch, non-blocking warning |
## Scenario Report: [target]
Dimensions analyzed: [list]
Dimensions skipped: [list + reason]
| # | Dimension | Scenario | Severity | Expected Behavior |
|---|-----------|----------|----------|-------------------|
| 1 | Input Extremes | Empty string for required name field | High | Return 400 with field error |
| 2 | Authorization | Expired JWT accessing protected route | Critical | Redirect to login, invalidate session |
| 3 | Timing | Two users submit same form simultaneously | High | Idempotency key or conflict error |
### Summary
- Critical: N
- High: N
- Medium: N
- Low: N
- Total: N scenarios across X dimensions| Next Step | Skill | How | |-----------|-------|-----| | Generate test cases from scenarios | vc-test | Pass scenario table as input context | | Inform implementation plan risks | generate-plan / plan-agent | Paste Critical/High rows into risk assessment | | Deep persona debate on top risks | vc-predict | Feed Critical scenarios as the change proposal |
# Simple mode (default — self-contained, narrow blast radius)
/vc-scenario src/api/payment.ts
/vc-scenario "User registration with OAuth providers"
/vc-scenario src/middleware/auth.ts
# Deep mode (auto-triggered: billing surface, 3+ files)
/vc-scenario "Deduct credits on model usage — touches CreditBalance, CreditTransaction, usage-sync.ts"
# Deep mode (explicit request)
/vc-scenario --deep "Add multi-tenancy to the database layer"Other measured skills in the registry, with their headline benchmark lift.