Implement Skill
Executes the task list autonomously with quality gates.
Input
- •
.dapp-sdd/tasks.md- Task list with checkboxes - •
.dapp-sdd/plan.md- Implementation plan (for context) - •
.dapp-sdd/spec.md- Specification (for requirements) - •
.dapp-sdd/pr-context.json- PR metadata
Process
For Each Task
- •Read task from
.dapp-sdd/tasks.md - •Execute task using appropriate skills:
- •Contract work →
compact-core:*skills - •TypeScript work → standard development
- •Documentation →
readme-and-co:documentation-standards
- •Contract work →
- •Run quality checks:
bash
npm run lint npm run format:check tsc --noEmit compact compile contracts/*.compact
- •Fix any issues (zero tolerance policy)
- •Commit and push:
- •Use
git-lovely:useful-commitsfor message - •
git add . - •
git commit -m "{message}" - •
git push
- •Use
- •Mark task complete in
.dapp-sdd/tasks.md - •Update state in
.dapp-sdd/pr-context.json
For Review Tasks
When encountering a [REVIEW] task:
- •
Run Compact review (if contracts exist):
codeUse compact-reviewer:compact-reviewer agent Context: "You are reviewing an example dApp for the Midnight Network. This project is intended to demonstrate concepts to developers learning Midnight. Be pragmatic with suggestions: - Focus on correctness and clarity over production concerns - Flag anything that would confuse learners - Flag bad practices that learners might copy - Accept reasonable shortcuts that keep the example focused - Ensure educational comments are accurate"
- •
Run TypeScript review:
codeUse devs:code-reviewer agent Context: "You are reviewing an example dApp for the Midnight Network. This project is intended to demonstrate concepts to developers learning Midnight. Be pragmatic with suggestions: - Focus on correctness and clarity over production concerns - Flag anything that would confuse learners - Flag bad practices that learners might copy - Accept reasonable shortcuts that keep the example focused - Ensure educational comments are accurate"
- •
Address all issues raised by either reviewer
- •
Commit fixes with appropriate message
- •
Mark review complete in tasks.md
For Completion Task
When encountering the [COMPLETE] task:
- •
Generate summary:
- •Count completed user stories
- •Count completed tasks
- •List key files created/modified
- •
Post to PR:
bashgh pr comment {prNumber} --body "## Implementation Complete ### Summary - User Stories: {X} completed - Tasks: {Y} completed - Phases: {Z} reviewed ### Key Files - `contracts/{name}.compact` - Smart contract - `src/deploy.ts` - Deployment script - `src/cli.ts` - CLI interface ### Quality - All linting checks pass - All formatting checks pass - All TypeScript checks pass - All Compact compilation passes - All tests pass Ready for final review!" - •
Mark PR ready:
bashgh pr ready {prNumber}
State Tracking
Update .dapp-sdd/pr-context.json after each task:
json
{
"owner": "...",
"repo": "...",
"branch": "...",
"prNumber": 42,
"currentPhase": 2,
"completedTasks": ["T001", "T002", "T003"],
"status": "implementing"
}
Error Handling
If a task fails:
- •Log the error
- •Attempt to fix automatically
- •If cannot fix, stop implementation
- •Post error summary to PR as comment
- •Update status to "blocked" in pr-context.json