3.5 KiB
Step 2: Analyze Scope
CONTEXT
Dialog folder is created. Now we analyze the specification to determine exactly what needs to be implemented.
READ SPECIFICATION
**Read the specification file(s)** referenced in the dialog file.Extract:
- All features/sections to implement
- Object IDs and their specifications
- States and transitions
- Translations required
- Any open questions in the spec
IDENTIFY SCOPE
What should be IN SCOPE for this implementation?
Based on the specification, list the features/sections to implement.
In scope:
Store in_scope items
What should be OUT OF SCOPE?
Explicitly list what we're NOT implementing (yet).
Out of scope:
Store out_of_scope items
Are there any dependencies?
What must exist before we can implement this? (Other features, data, APIs, etc.)
Dependencies:
Store dependencies
CHECK FOR ISSUES
**Review the specification for:**- Missing information — Anything unclear or undefined?
- Open questions — Any unresolved decisions?
- Inconsistencies — Anything that doesn't match?
Document any issues found.
**Issues found in specification:**{{#each issue in issues}}
- {{issue}} {{/each}}
How should we proceed?
[A] Continue anyway — address issues as we go [B] Pause — clarify issues before proceeding [C] Document issues — continue but note them
Choice:
UPDATE DIALOG FILE
**Update the Scope section in the dialog file:**In Scope
{{#each item in in_scope}}
- {{item}} {{/each}}
Out of Scope
{{#each item in out_of_scope}}
- {{item}} {{/each}}
Dependencies
{{#each item in dependencies}}
- {{item}} {{/each}}
DETERMINE STEP BREAKDOWN
**Analyze the scope to identify discrete steps.**Guidelines:
- Each step should accomplish ONE clear thing
- Steps should be ~15-45 minutes of work
- Order by dependencies (what must come first)
- Group related changes together
- Consider testability (each step should be verifiable)
Common patterns:
For UI features:
- Shell/container component
- Static content sections
- Dynamic data integration
- Interactive elements
- State transitions
- Edge cases / error states
For refactoring:
- Create new structure
- Migrate piece 1
- Migrate piece 2
- Remove old structure
- Update imports/references
For bug fixes:
- Reproduce issue
- Implement fix
- Add tests
- Verify fix
What steps do we need?
Based on the scope, list the implementation steps in order.
Example:
- Drawer shell component
- Header section
- Date display section
- Dog info section
- Action buttons
- State transitions
Steps:
Store steps list
COMPLETION
✅ **Scope analyzed!**In Scope: {{in_scope.length}} items Out of Scope: {{out_of_scope.length}} items Dependencies: {{dependencies.length}} items
Proposed Steps: {{#each step in steps}} {{@index + 1}}. {{step}} {{/each}}
Next: Create step files for each implementation step.
[A] Continue to Step 3: Create Step Files [B] Adjust the step breakdown [C] Review scope again
Choice:
ROUTING
Based on user choice: - [A] → Load and execute step-03-create-steps.md - [B] → Allow user to modify steps list - [C] → Return to scope reviewAgent Dialog Workflow — Step 2: Analyze Scope