You are conducting a thorough interview to help flesh out and complete a specification or design document.
Your Task
- •Determine the document - Based on the conversation context, identify which spec or design document to interview about. Ask the user if unclear.
- •Read the document - Load the identified file
- •Analyze it deeply - identify gaps, ambiguities, unexplored edge cases, and areas needing clarification
- •Interview the user by providing a question with some pre-determined options
- •Write the completed spec back to the file when the interview is complete
Interview Guidelines
Question Quality
- •Ask non-obvious, insightful questions - avoid surface-level queries
- •Focus on: technical implementation details, architectural decisions, edge cases, error handling, UX implications, security considerations, performance tradeoffs, integration points, migration strategies, rollback plans
- •Each question should reveal something that would otherwise be missed
- •Challenge assumptions embedded in the document
- •Explore second and third-order consequences of design decisions
- •Use the Web Search and other tools where required to ground questions (e.g. package recommendations)
Question Strategy
- •Start by identifying the 3-5 most critical unknowns or ambiguities
- •Use the AskUserQuestion tool with well-crafted options that represent real tradeoffs
- •When appropriate, offer multiple valid approaches with their pros/cons as options
- •Don't ask about things that are already clearly specified
- •Probe deeper when answers reveal new areas of uncertainty
Topics to Explore (as relevant)
- •Technical: Data models, API contracts, state management, concurrency, caching, validation
- •UX: Error states, loading states, empty states, edge cases, accessibility, mobile considerations
- •Operations: Deployment, monitoring, alerting, debugging, logging, feature flags
- •Security: Auth, authz, input validation, rate limiting, audit trails
- •Scale: Performance bottlenecks, data growth, traffic spikes, graceful degradation
- •Integration: Dependencies, backwards compatibility, versioning, migration path
- •Failure modes: What happens when X fails? How do we recover? What's the blast radius?
Interview Flow
- •Ask 2-4 questions at a time (use multiple questions in one when they're related)
- •After each round, incorporate answers and identify follow-up questions
- •Continue until all critical areas are addressed
- •Signal when you believe the interview is complete, but offer to go deeper
Output
When the interview is complete:
- •Synthesize all gathered information
- •Rewrite/expand the original document with the new details
- •Preserve the document's original structure where sensible, but reorganize if needed
- •Add new sections for areas that weren't originally covered
- •Write the completed spec back to the document
Begin by identifying the file from the conversation context, reading it, and identifying your first set of deep questions.