File size: 2,009 Bytes
9e64e71 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 | # Discovery
This directory contains discovery artifacts that validate *what* to build and capture *taste*.
## What is Discovery?
Discovery validates product ideas and captures user taste before detailed planning. It answers:
- What opportunity are we pursuing? (Opportunity Solution Tree)
- What problem are we solving? (PR/FAQ)
- What would DELIGHT users? (Taste capture)
- What would FRUSTRATE users? (Anti-patterns)
- What FEELING should users have? (North star)
- How does this compare to alternatives? (RICE/ICE prioritization)
## File Format
Each feature has two files:
- `{feature}.md` β Human-readable discovery doc with OST, PR/FAQ, taste
- `{feature}.json` β Machine-readable taste data for downstream skills
## Discovery Index
| Feature | Status | Date |
|---------|--------|------|
| *None yet* | | |
## Relationship to Other Docs
```
discovery/ β Validate + Taste (OST, PR/FAQ)
β
delivery-specs/ β Engineering handoff (functional requirements)
β
design-docs/ β Technical approach (ADR-style)
β
FEATURES.json β Links docs to implementation
β
specs/ β Implementation specs (autocode)
β
learnings/ β Knowledge extracted after completion
```
## Creating Discovery Docs
Use the `discovery` skill for structured discovery:
```
skill({ name: "discovery" })
```
The skill guides you through:
1. **Opportunity Solution Tree** β Outcome, opportunities, solutions
2. **PR/FAQ** β Headline, problem, solution, customer quote
3. **Taste interview** β Delights, frustrations, feeling, maturity
4. **Prioritization** β RICE/ICE scoring
## Integration with Autocode
The `autocode-implementation-planner` skill automatically reads the JSON file:
- `taste.delights` β Success criteria in implementation spec
- `taste.frustrations` β Anti-patterns to explicitly avoid
- `taste.feeling` β North star for implementation decisions
- `scope.out_of_scope` β Boundaries the implementation must respect
|