name: test-checklisting description: Manages Next.js test implementation progress tracking. Use when checking progress, finding next test targets, or reviewing completion status by Tier priority. disable-model-invocation: false
Test Checklisting (Next.js)
Tracks test implementation progress based on docs/TEST_PLAN.md Tier 1-3 targets and E2E page priorities.
Workflow
Step 1: Load Progress Data
Read docs/test-progress.yaml.
Expected structure:
version: "2.0"
last_updated: "2026-03-08"
tier1:
GenerateAsyncRoute:
status: pending
score: 98
file: app/api/generate-async/route.ts
spec_file: docs/specs/api/generate_async_route_spec.yaml
test_file: tests/integration/api/generate-async-route.test.ts
tier2: {}
tier3: {}
widgets:
CoordinatePage:
status: pending
priority: 1
file: app/(app)/coordinate/page.tsx
e2e_test: tests/e2e/coordinate.spec.ts
summary:
tier1: { total: 2, completed: 0, percentage: 0 }
tier2: { total: 6, completed: 0, percentage: 0 }
tier3: { total: 7, completed: 0, percentage: 0 }
widgets: { total: 10, completed: 0, percentage: 0 }
overall: { total: 25, completed: 0, percentage: 0 }
Status lifecycle:
pendingchar_test_createdinterface_createdspec_extractedtest_generatedcompleted
For reporting:
- Completed:
status == completed - In Progress:
char_test_created/interface_created/spec_extracted/test_generated, orpendingwithstarted_at - Pending:
status == pendingand nostarted_at
Step 2: Cross-Reference with TEST_PLAN.md
Compare against docs/TEST_PLAN.md sections 3.2-3.6.
Tier references:
- Tier 1: GenerateAsyncRoute, PercoinService
- Tier 2: PostsRoute, NotificationsRoute, AuthForm, GenerationForm, PostDetail, GA4DashboardData
- Tier 3: ContactRoute, CreditsBalanceRoute, BannerStorage, NotificationBadge, MyPageServerApi, EventServerApi, UrlUtils
- Widgets Top 10: CoordinatePage ... TopPage
Step 3: Generate Progress Report
Output format:
## Test Implementation Progress
### Summary
| Tier | Total | Completed | In Progress | Pending | Progress |
|---|---|---|---|---|---|
| Tier 1 | 2 | 0 | 0 | 2 | 0% |
| Tier 2 | 6 | 0 | 0 | 6 | 0% |
| Tier 3 | 7 | 0 | 0 | 7 | 0% |
| Widgets | 10 | 0 | 0 | 10 | 0% |
| **Total** | **25** | **0** | **0** | **25** | **0%** |
### Next Recommended Target
**GenerateAsyncRoute** (Tier 1, Score 98)
- Status: Pending
- File: `app/api/generate-async/route.ts`
- Next action: `/char-test GenerateAsyncRoute`
Step 4: Recommend Next Target
Priority logic:
- Complete any in-progress item first
- Start highest-score pending item in the lowest incomplete tier (1 -> 2 -> 3)
- If Tier 1-3 complete, start highest-priority pending widget
- Check prerequisites before recommending
Commands
View Progress
/test-checklist
Mark Complete
/test-checklist complete GenerateAsyncRoute
Start Target
/test-checklist start GenerateAsyncRoute
Set started_at timestamp on the target entry. Do not overwrite existing workflow status.
Related Files
docs/TEST_PLAN.mddocs/test-progress.yaml/test-flow
Checklist
Before marking complete:
- Test file exists in expected location
- Relevant tests pass (
npm run testor targeted command) - Spec file exists (
docs/specs/...) - Regressions confirmed as none in reviewed scope