Verify and close stories after frontend/backend tasks are completed. Check ALL related task files, update story acceptance criteria checkboxes. UNIQUE VALUE: Ensures BOTH frontend AND backend tasks are verified before closing story. Prevents premature story closure. Use this skill when: - Frontend or backend notifies "task completed, please verify" - User asks to "verify story", "accept story", "close story", "mark story done" - Need to check if a story can be marked as complete - User asks "is story X done?", "can we close story X?" CRITICAL: Must check BOTH frontend tasks (docs/reference/frontend/tasks/) AND backend tasks (docs/reference/backend/tasks/) before closing. Output: Update story file checkboxes from `- [ ]` to `- [x]`
Install
npx skillscat add yellinzero/aico/aico-pm-story-acceptance Install via the SkillsCat registry.
Story Acceptance
Language Configuration
Before generating any content, check aico.json in project root for language field to determine the output language. If not set, default to English.
Process
- Identify the story: Get story ID (e.g., S-001) from notification or user
- Read the story: Load
docs/reference/pm/stories/{story-id}.md - Find related tasks (use Strategy 1 if available, fallback to Strategy 2):
- Strategy 1 (Preferred): Read "Related Tasks" section from story file
- Story file should contain task list created by task-breakdown
- Directly read the listed task files
- Strategy 2 (Fallback): Search task directories
- Search
docs/reference/frontend/tasks/for files related to the story - Search
docs/reference/backend/tasks/for files related to the story
- Search
- Strategy 1 (Preferred): Read "Related Tasks" section from story file
- Verify all tasks completed:
- Read each task file's
> **Status**:field - All task statuses should be
completed - No
pendingorin_progresstasks remaining
- Read each task file's
- Update story:
- If ALL tasks completed → Update acceptance criteria
- [ ]to- [x] - If partial → Report progress, list incomplete tasks
- If ALL tasks completed → Update acceptance criteria
Verification Checklist
## Story: S-XXX
### Frontend Tasks
- [x] docs/reference/frontend/tasks/s-xxx.md - All completed
### Backend Tasks
- [x] docs/reference/backend/tasks/s-xxx.md - All completed
### Result: ✅ Ready to close / ⏳ Waiting for tasksTask Status Mapping
| Task Status | Meaning |
|---|---|
✅ completed |
Task done |
🔄 in_progress |
Currently working |
⏳ pending |
Not started |
Story Update Format
When all tasks are complete, update the story file:
## Acceptance Criteria
- [x] Criterion 1 (was `- [ ]`)
- [x] Criterion 2 (was `- [ ]`)
- [x] Criterion 3 (was `- [ ]`)Decision Logic
Has frontend tasks? ──Yes──> Check frontend/tasks/{story}.md
│ │
No All completed?
│ │ │
▼ Yes No
Has backend tasks? ──Yes──> Check backend/tasks/{story}.md
│ │
No All completed?
│ │ │
▼ Yes No
All checks passed? ─────────────┘ │
│ │
Yes No
│ │
▼ ▼
Update story checkboxes Report incomplete tasksKey Rules
- MUST check BOTH frontend and backend tasks before closing
- ONLY update story when ALL related tasks are completed
- ALWAYS report which tasks are still pending if not ready to close
- Use exact checkbox format:
- [x]for completed,- [ ]for pending
Output Examples
All Complete
## Story S-001 Acceptance Result
✅ **Ready to Close**
### Task Check
- Frontend: 3/3 completed
- Backend: 2/2 completed
Story acceptance criteria updated.Partial Complete
## Story S-001 Acceptance Result
⏳ **Waiting for Tasks**
### Task Check
- Frontend: 3/3 completed ✅
- Backend: 1/2 completed ⏳
### Incomplete Tasks
- [ ] Backend Task 2: Implement API endpointCommon Mistakes
- ❌ Close story with pending tasks → ✅ Check ALL related tasks first
- ❌ Only check frontend OR backend → ✅ Check BOTH if story has both
- ❌ Forget to update checkboxes → ✅ Always update
- [ ]to- [x]