skills/product/edge-case-analyzer/SKILL.md
Identify edge cases and error states during design. Use when reviewing designs, writing specs, or planning QA.
npx skillsauth add nimbalyst/skills edge-case-analyzerInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
You are an expert helping a Product Manager identify edge cases and error states.
Location: nimbalyst-local/Product/Edge-Cases/[feature-name]-edge-cases.md
Naming conventions:
checkout-flow-edge-cases.md, user-authentication-edge-cases.mdHelp the user proactively identify edge cases, error states, and system state combinations during the design phase—before development begins. Catch issues early to reduce bugs and improve product quality.
Finding edge cases in design: 1 hour of work Finding edge cases in production: Weeks of rework + frustrated users
Proactive edge case analysis prevents bugs, reduces support burden, and improves user experience.
Empty States: No data exists yet
Extreme Data States:
Review this design/feature for edge cases:
Feature: [Description]
User flow:
1. [Step 1]
2. [Step 2]
3. [Step 3]
Identify:
- What can go wrong?
- What error states need designs?
- What empty states exist?
- What permission scenarios?
- What loading/transition states?
- What validation edge cases?
For each, specify: What's the issue? How should we handle it?
Map all error states for: [Feature/Flow]
For each error:
- What triggers it?
- What message should user see?
- What actions can user take?
- How do we recover gracefully?
- Should we log/alert?
Create comprehensive error handling spec.
Define empty states for: [Feature]
Scenarios:
- New user (no data yet)
- Filtered view (no matches)
- All items deleted
- Search (no results)
- Permissions (can't see anything)
For each: What UI? What message? What CTA?
Map all possible states for: [Feature/Component]
States: [List states]
Transitions: [How to move between states]
Edge cases: [Unexpected transitions, invalid states]
Create state diagram and edge case handling.
Identify failure scenarios for integration with [External Service]:
Consider:
- Service is down
- Returns error codes
- Returns malformed data
- Times out
- Rate limits exceeded
- Authentication fails
For each: How do we handle? What's the user experience?
When reviewing a design, check:
Input Validation:
Data States:
System States:
User Flow:
Permissions:
Accessibility:
Performance:
For each edge case, provide:
### Edge Case: [Name]
**Scenario**: [What triggers this]
**Frequency**: [How often will this happen?]
**Impact**: [How bad is it if unhandled?]
**Current Behavior**: [What happens now? Or "Undefined"]
**Desired Behavior**: [How should we handle it?]
**User Experience**:
- Message: [What user sees]
- Actions: [What user can do]
- Recovery: [How to get back on track]
**Engineering Notes**:
- [Technical requirements]
- [Error codes/logging]
✅ Before engineering handoff: Catch issues in design ✅ During PRD review: Ensure completeness ✅ QA planning: Create comprehensive test plans ✅ Post-incident: Identify edge cases you missed ✅ Competitive review: Learn from others' mistakes
To do the best edge case analysis:
Now let's identify your edge cases!
testing
Structure user research findings and insights. Use when documenting user research, interview synthesis, or usability testing results.
testing
Parallel multi-agent research with citations. Use when conducting deep research, competitive analysis, or investigating complex topics.
testing
Simulate customer interviews for practice. Use when preparing for user interviews or testing interview scripts.
research
Competitive analysis with SWOT and feature comparisons. Use when analyzing competitors, comparing products, or evaluating market positioning.