viepilot 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (84) hide show
  1. package/CHANGELOG.md +230 -0
  2. package/LICENSE +23 -0
  3. package/README.md +550 -0
  4. package/bin/viepilot.cjs +222 -0
  5. package/bin/vp-tools.cjs +912 -0
  6. package/dev-install.sh +109 -0
  7. package/docs/README.md +125 -0
  8. package/docs/advanced-usage.md +366 -0
  9. package/docs/api/README.md +12 -0
  10. package/docs/api/graphql-schema.md +5 -0
  11. package/docs/api/kafka-events.md +5 -0
  12. package/docs/api/rest-api.md +19 -0
  13. package/docs/api/websocket-api.md +5 -0
  14. package/docs/dev/architecture.md +226 -0
  15. package/docs/dev/cli-reference.md +324 -0
  16. package/docs/dev/contributing.md +195 -0
  17. package/docs/dev/deployment.md +204 -0
  18. package/docs/dev/getting-started.md +16 -0
  19. package/docs/dev/testing.md +171 -0
  20. package/docs/dev/ui-components-library.md +36 -0
  21. package/docs/getting-started.md +163 -0
  22. package/docs/skills-reference.md +399 -0
  23. package/docs/troubleshooting.md +297 -0
  24. package/docs/user/faq.md +117 -0
  25. package/docs/user/features/autonomous-mode.md +111 -0
  26. package/docs/user/features/checkpoint-recovery.md +76 -0
  27. package/docs/user/features/debug-mode.md +77 -0
  28. package/docs/user/features/ui-direction.md +29 -0
  29. package/docs/user/quick-start.md +157 -0
  30. package/docs/videos/01-installation.md +113 -0
  31. package/docs/videos/02-first-project.md +132 -0
  32. package/docs/videos/03-autonomous-mode.md +147 -0
  33. package/install.sh +144 -0
  34. package/lib/cli-shared.cjs +108 -0
  35. package/package.json +78 -0
  36. package/skills/vp-audit/SKILL.md +140 -0
  37. package/skills/vp-auto/SKILL.md +204 -0
  38. package/skills/vp-brainstorm/SKILL.md +75 -0
  39. package/skills/vp-crystallize/SKILL.md +175 -0
  40. package/skills/vp-debug/SKILL.md +96 -0
  41. package/skills/vp-docs/SKILL.md +258 -0
  42. package/skills/vp-evolve/SKILL.md +165 -0
  43. package/skills/vp-pause/SKILL.md +150 -0
  44. package/skills/vp-request/SKILL.md +250 -0
  45. package/skills/vp-resume/SKILL.md +141 -0
  46. package/skills/vp-rollback/SKILL.md +116 -0
  47. package/skills/vp-status/SKILL.md +137 -0
  48. package/skills/vp-task/SKILL.md +139 -0
  49. package/skills/vp-ui-components/SKILL.md +64 -0
  50. package/templates/phase/PHASE-STATE.md +35 -0
  51. package/templates/phase/SPEC.md +40 -0
  52. package/templates/phase/SUMMARY.md +67 -0
  53. package/templates/phase/TASK.md +101 -0
  54. package/templates/phase/VERIFICATION.md +49 -0
  55. package/templates/project/AI-GUIDE.md +114 -0
  56. package/templates/project/ARCHITECTURE.md +70 -0
  57. package/templates/project/CHANGELOG.md +36 -0
  58. package/templates/project/CONTRIBUTING.md +154 -0
  59. package/templates/project/CONTRIBUTORS.md +41 -0
  60. package/templates/project/PROJECT-CONTEXT.md +74 -0
  61. package/templates/project/PROJECT-META.md +133 -0
  62. package/templates/project/README.md +197 -0
  63. package/templates/project/ROADMAP.md +56 -0
  64. package/templates/project/SYSTEM-RULES.md +368 -0
  65. package/templates/project/TRACKER.md +50 -0
  66. package/ui-components/INDEX.md +9 -0
  67. package/ui-components/base/button/README.md +8 -0
  68. package/ui-components/base/button/metadata.json +8 -0
  69. package/ui-components/base/card/README.md +8 -0
  70. package/ui-components/base/card/metadata.json +8 -0
  71. package/ui-components/base/input/README.md +8 -0
  72. package/ui-components/base/input/metadata.json +8 -0
  73. package/workflows/audit.md +549 -0
  74. package/workflows/autonomous.md +425 -0
  75. package/workflows/brainstorm.md +257 -0
  76. package/workflows/crystallize.md +418 -0
  77. package/workflows/debug.md +241 -0
  78. package/workflows/documentation.md +587 -0
  79. package/workflows/evolve.md +258 -0
  80. package/workflows/pause-work.md +255 -0
  81. package/workflows/request.md +534 -0
  82. package/workflows/resume-work.md +226 -0
  83. package/workflows/rollback.md +202 -0
  84. package/workflows/ui-components.md +109 -0
@@ -0,0 +1,137 @@
1
+ ---
2
+ name: vp-status
3
+ description: "Hiển thị progress dashboard và actionable insights"
4
+ version: 0.1.0
5
+ ---
6
+
7
+ <cursor_skill_adapter>
8
+ ## A. Skill Invocation
9
+ - Skill được gọi khi user mention `vp-status`, `/vp-status`, "status", "tiến độ", "đang ở đâu"
10
+ - Treat all user text after the skill mention as `{{VP_ARGS}}`
11
+
12
+ ## B. Tool Usage
13
+ Use Cursor tools: `Shell`, `ReadFile`, `Glob`, `rg`, `ApplyPatch`, `WebSearch`, `WebFetch`, `Subagent`
14
+ </cursor_skill_adapter>
15
+
16
+ <objective>
17
+ Hiển thị visual progress dashboard với actionable insights.
18
+
19
+ **Reads:**
20
+ - `.viepilot/TRACKER.md`
21
+ - `.viepilot/ROADMAP.md`
22
+ - `.viepilot/phases/*/PHASE-STATE.md`
23
+ - `CHANGELOG.md`
24
+
25
+ **Output:** Dashboard display với next action suggestions.
26
+ </objective>
27
+
28
+ <process>
29
+
30
+ ### Step 1: Load State
31
+ ```bash
32
+ cat .viepilot/TRACKER.md
33
+ cat .viepilot/ROADMAP.md
34
+ ```
35
+
36
+ ### Step 2: Calculate Progress
37
+ For each phase:
38
+ - Count total tasks
39
+ - Count completed tasks
40
+ - Calculate percentage
41
+
42
+ Overall:
43
+ - Total phases
44
+ - Completed phases
45
+ - Overall percentage
46
+
47
+ ### Step 3: Display Dashboard
48
+ ```
49
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
50
+ VIEPILOT ► STATUS
51
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
52
+
53
+ Project: {project_name}
54
+ Version: {current_version}
55
+ Milestone: {milestone_name}
56
+
57
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
58
+ PHASE PROGRESS
59
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
60
+
61
+ Phase 1: Project Setup [██████████] 100% ✅
62
+ Phase 2: Database Foundation [████████░░] 80% 🔄
63
+ Phase 3: TAP Service Core [░░░░░░░░░░] 0% ⏳
64
+ Phase 4: Location Service [░░░░░░░░░░] 0% ⏳
65
+ Phase 5: API Gateway [░░░░░░░░░░] 0% ⏳
66
+
67
+ ─────────────────────────────────────────────────────────────────
68
+ Overall Progress: [████░░░░░░] 36%
69
+
70
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
71
+ CURRENT STATE
72
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
73
+
74
+ Current Phase: 02 - Database Foundation
75
+ Current Task: 4/5 - Create TimescaleDB hypertables
76
+ Task Status: In Progress
77
+
78
+ Last Activity: 2 hours ago
79
+ Last Commit: feat(db): create vehicle/device tables
80
+
81
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
82
+ QUALITY METRICS
83
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
84
+
85
+ Tests: 45 pass, 2 fail ⚠️
86
+ Coverage: 72%
87
+ Lint: 0 errors, 3 warnings
88
+
89
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
90
+ DECISIONS & BLOCKERS
91
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
92
+
93
+ Decisions Made: 24 total, 21 locked, 3 pending
94
+ Blockers: 0 active
95
+
96
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
97
+ NEXT ACTIONS
98
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
99
+
100
+ Recommended: Fix 2 failing tests, then continue task 4
101
+
102
+ Quick Actions:
103
+ 1. Continue current task → /vp-auto --from 2
104
+ 2. View failing tests → (show test output)
105
+ 3. View current task → (show task file)
106
+ 4. Pause work → /vp-pause
107
+
108
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
109
+ ```
110
+
111
+ ### Step 4: Offer Quick Actions
112
+ Based on state, offer relevant actions:
113
+
114
+ If tests failing:
115
+ - "Fix failing tests"
116
+ - "View test output"
117
+
118
+ If task in progress:
119
+ - "Continue task"
120
+ - "View task details"
121
+
122
+ If phase complete:
123
+ - "Start next phase"
124
+ - "Review phase summary"
125
+
126
+ If blockers:
127
+ - "View blockers"
128
+ - "Skip blocked task"
129
+ </process>
130
+
131
+ <success_criteria>
132
+ - [ ] All progress calculated correctly
133
+ - [ ] Visual dashboard displayed
134
+ - [ ] Current state clearly shown
135
+ - [ ] Quality metrics included
136
+ - [ ] Actionable next steps suggested
137
+ </success_criteria>
@@ -0,0 +1,139 @@
1
+ ---
2
+ name: vp-task
3
+ description: "Manual control over individual tasks"
4
+ version: 0.1.0
5
+ ---
6
+
7
+ <cursor_skill_adapter>
8
+ ## A. Skill Invocation
9
+ - Skill được gọi khi user mention `vp-task`, `/vp-task`
10
+ - Treat all user text after the skill mention as `{{VP_ARGS}}`
11
+
12
+ ## B. Tool Usage
13
+ Use Cursor tools: `Shell`, `ReadFile`, `Glob`, `rg`, `ApplyPatch`, `WebSearch`, `WebFetch`, `Subagent`
14
+ </cursor_skill_adapter>
15
+
16
+ <objective>
17
+ Manual control over tasks khi cần fine-grained management.
18
+
19
+ **Commands:**
20
+ - `list` - List tasks in current phase
21
+ - `show N` - Show task N details
22
+ - `start N` - Manually start task N
23
+ - `done N` - Mark task N as done
24
+ - `skip N` - Skip task N with reason
25
+ - `retry N` - Retry failed task N
26
+ - `rollback N` - Rollback task N
27
+ </objective>
28
+
29
+ <process>
30
+
31
+ ### Parse Command
32
+ ```
33
+ /vp-task {command} {args}
34
+
35
+ Commands:
36
+ - /vp-task list
37
+ - /vp-task show 3
38
+ - /vp-task start 3
39
+ - /vp-task done 3
40
+ - /vp-task skip 3 --reason "Not needed for MVP"
41
+ - /vp-task retry 3
42
+ - /vp-task rollback 3
43
+ ```
44
+
45
+ ### Command: list
46
+ ```bash
47
+ # Read current phase
48
+ cat .viepilot/TRACKER.md → current_phase
49
+ cat .viepilot/phases/{phase}/PHASE-STATE.md
50
+ ```
51
+
52
+ Display:
53
+ ```
54
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
55
+ Phase {N}: {Name} - Tasks
56
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
57
+
58
+ # │ Task │ Status │ Tag
59
+ ───┼───────────────────────────┼─────────────┼─────────────
60
+ 1 │ Create parent pom.xml │ ✅ done │ vp-p1-t1-done
61
+ 2 │ Create common module │ ✅ done │ vp-p1-t2-done
62
+ 3 │ Create tap-service │ 🔄 progress │ vp-p1-t3
63
+ 4 │ Create location-service │ ⏳ pending │ -
64
+ 5 │ Docker Compose setup │ ⏳ pending │ -
65
+
66
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
67
+ ```
68
+
69
+ ### Command: show N
70
+ ```bash
71
+ cat .viepilot/phases/{phase}/tasks/{N}-*.md
72
+ ```
73
+
74
+ Display task file content with syntax highlighting.
75
+
76
+ ### Command: start N
77
+ ```yaml
78
+ actions:
79
+ 1. Check task not already started
80
+ 2. Check dependencies met
81
+ 3. Create git tag: vp-p{phase}-t{N}
82
+ 4. Update PHASE-STATE.md: status → in_progress
83
+ 5. Update TRACKER.md
84
+ 6. Display task objective and acceptance criteria
85
+ ```
86
+
87
+ ### Command: done N
88
+ ```yaml
89
+ actions:
90
+ 1. Verify task exists and is in_progress
91
+ 2. Ask: "Skip verification? (not recommended)"
92
+ 3. If no skip:
93
+ - Run automated checks
94
+ - Check acceptance criteria
95
+ 4. Create git tag: vp-p{phase}-t{N}-done
96
+ 5. Update PHASE-STATE.md
97
+ 6. Update TRACKER.md
98
+ 7. Update CHANGELOG.md if feature/fix
99
+ ```
100
+
101
+ ### Command: skip N
102
+ ```yaml
103
+ actions:
104
+ 1. Ask for skip reason (required)
105
+ 2. Update task status → skipped
106
+ 3. Log skip reason in PHASE-STATE.md
107
+ 4. Update TRACKER.md
108
+ 5. Move to next task or phase
109
+ ```
110
+
111
+ ### Command: retry N
112
+ ```yaml
113
+ actions:
114
+ 1. Check task is failed or blocked
115
+ 2. Reset task status → in_progress
116
+ 3. Clear previous error state
117
+ 4. Display: "Task {N} reset. Continue with /vp-auto or manual work."
118
+ ```
119
+
120
+ ### Command: rollback N
121
+ ```yaml
122
+ actions:
123
+ 1. Check task has been started (has tag)
124
+ 2. Confirm with user: "This will undo all changes from task {N}. Continue?"
125
+ 3. Git revert to task start tag:
126
+ git revert --no-commit $(git rev-list vp-p{phase}-t{N}..HEAD)
127
+ 4. Reset task status → not_started
128
+ 5. Update PHASE-STATE.md
129
+ 6. Display rollback summary
130
+ ```
131
+ </process>
132
+
133
+ <success_criteria>
134
+ - [ ] Command parsed correctly
135
+ - [ ] Appropriate action taken
136
+ - [ ] State files updated
137
+ - [ ] Git tags managed
138
+ - [ ] User feedback provided
139
+ </success_criteria>
@@ -0,0 +1,64 @@
1
+ ---
2
+ name: vp-ui-components
3
+ description: "Quản lý workflow sưu tầm và tái sử dụng UI components"
4
+ version: 0.1.0
5
+ ---
6
+
7
+ <cursor_skill_adapter>
8
+ ## A. Skill Invocation
9
+ - Skill được gọi khi user mention `vp-ui-components`, `/vp-ui-components`, "ui components", "component library", "21st.dev component"
10
+ - Treat all user text after the skill mention as `{{VP_ARGS}}`
11
+
12
+ ## B. User Prompting
13
+ Prompt user conversationally với numbered list options.
14
+
15
+ ## C. Tool Usage
16
+ Use Cursor tools: `Shell`, `ReadFile`, `Glob`, `rg`, `ApplyPatch`, `WebSearch`, `WebFetch`, `Subagent`
17
+ </cursor_skill_adapter>
18
+
19
+ <objective>
20
+ Thu thập, phân loại, và lưu trữ UI components để tái sử dụng:
21
+ - Global library: `~/.viepilot/ui-components/`
22
+ - Project library: `.viepilot/ui-components/`
23
+
24
+ Nguồn có thể đến từ prompt/link/snippet (đặc biệt 21st.dev), sau đó chuẩn hóa thành artifacts có metadata.
25
+
26
+ **Creates/Updates:**
27
+ - `~/.viepilot/ui-components/{category}/{component-id}/...`
28
+ - `.viepilot/ui-components/{category}/{component-id}/...`
29
+ - `INDEX.md` cho global + local store
30
+
31
+ **After:** Component có thể dùng lại cho `/vp-brainstorm --ui` và `/vp-crystallize`.
32
+ </objective>
33
+
34
+ <execution_context>
35
+ @$HOME/.cursor/viepilot/workflows/ui-components.md
36
+ </execution_context>
37
+
38
+ <context>
39
+ Optional flags:
40
+ - `--add` : Add/capture component mới
41
+ - `--list` : Liệt kê component theo category
42
+ - `--sync` : Đồng bộ global ↔ local index
43
+ - `--from-21st` : Ưu tiên flow ingest từ 21st.dev references
44
+ - `--approve` : Mark component status thành approved
45
+ </context>
46
+
47
+ <process>
48
+ Execute workflow from `@$HOME/.cursor/viepilot/workflows/ui-components.md`
49
+
50
+ Key steps:
51
+ 1. Prepare global + local component stores
52
+ 2. Collect source input (prompt/link/snippet + intent)
53
+ 3. Classify component taxonomy
54
+ 4. Write standardized artifacts (README, SOURCE, html/css, metadata)
55
+ 5. Update indexes
56
+ 6. Connect selected IDs to brainstorm/crystallize context
57
+ </process>
58
+
59
+ <success_criteria>
60
+ - [ ] Component stored with taxonomy + metadata
61
+ - [ ] Global and local indexes updated
62
+ - [ ] Source provenance documented
63
+ - [ ] Reuse-ready for next brainstorm and crystallize runs
64
+ </success_criteria>
@@ -0,0 +1,35 @@
1
+ # Phase {{PHASE_NUMBER}}: {{PHASE_NAME}} - State
2
+
3
+ ## Overview
4
+ - **Started**: {{START_DATE}}
5
+ - **Status**: not_started | in_progress | complete
6
+ - **Progress**: 0/{{TASK_COUNT}} tasks (0%)
7
+ - **Current Task**: -
8
+
9
+ ## Task Status
10
+
11
+ | # | Task | Status | Started | Completed | Git Tag |
12
+ |---|------|--------|---------|-----------|---------|
13
+ {{TASK_TABLE}}
14
+
15
+ ## Blockers
16
+ _None currently_
17
+
18
+ ## Decisions Made (This Phase)
19
+ | Decision | Rationale | Task |
20
+ |----------|-----------|------|
21
+
22
+ ## Files Changed
23
+
24
+ List **every file individually** — run `git diff vp-p{N}-t{M}..HEAD --name-status` to get actual list. Do NOT use glob patterns.
25
+
26
+ | File | Action | Task |
27
+ |------|--------|------|
28
+
29
+ ## Quality Metrics
30
+ - Tests written: 0
31
+ - Tests passing: 0
32
+ - Code coverage: N/A
33
+ - Linting errors: 0
34
+
35
+ ## Notes
@@ -0,0 +1,40 @@
1
+ # Phase {{PHASE_NUMBER}}: {{PHASE_NAME}} - Specification
2
+
3
+ ## Overview
4
+ - **Goal**: {{PHASE_GOAL}}
5
+ - **Dependencies**: {{DEPENDENCIES}}
6
+ - **Estimated Tasks**: {{TASK_COUNT}}
7
+
8
+ ## Objective
9
+
10
+ {{PHASE_OBJECTIVE}}
11
+
12
+ ## Scope
13
+
14
+ ### In Scope
15
+ {{IN_SCOPE}}
16
+
17
+ ### Out of Scope
18
+ {{OUT_OF_SCOPE}}
19
+
20
+ ## Requirements
21
+
22
+ ### Functional
23
+ {{FUNCTIONAL_REQUIREMENTS}}
24
+
25
+ ### Non-Functional
26
+ {{NON_FUNCTIONAL_REQUIREMENTS}}
27
+
28
+ ## Acceptance Criteria
29
+
30
+ {{ACCEPTANCE_CRITERIA}}
31
+
32
+ ## Technical Notes
33
+
34
+ {{TECHNICAL_NOTES}}
35
+
36
+ ## References
37
+
38
+ - Architecture: `.viepilot/ARCHITECTURE.md`
39
+ - Context: `.viepilot/PROJECT-CONTEXT.md`
40
+ - Rules: `.viepilot/SYSTEM-RULES.md`
@@ -0,0 +1,67 @@
1
+ # Phase {{PHASE_NUMBER}}: {{PHASE_NAME}} - Summary
2
+
3
+ ## Overview
4
+ - **Started**: {{START_DATE}}
5
+ - **Completed**: {{END_DATE}}
6
+ - **Duration**: {{DURATION}}
7
+ - **Status**: Complete ✅
8
+
9
+ ## Completed Tasks
10
+
11
+ | # | Task | Commits | Notes |
12
+ |---|------|---------|-------|
13
+ {{COMPLETED_TASKS}}
14
+
15
+ ## Skipped Tasks
16
+
17
+ | # | Task | Reason |
18
+ |---|------|--------|
19
+ {{SKIPPED_TASKS}}
20
+
21
+ ## Key Decisions
22
+
23
+ | Decision | Rationale |
24
+ |----------|-----------|
25
+ {{DECISIONS}}
26
+
27
+ ## Files Changed
28
+
29
+ > Populate by running: `git diff vp-p{{PHASE_NUMBER}}-t1..HEAD --name-status | sort`
30
+ > List every file individually. Do NOT use glob patterns or summarize groups.
31
+
32
+ ### Created
33
+ | File | Task |
34
+ |------|------|
35
+ {{CREATED_FILES}}
36
+
37
+ ### Modified
38
+ | File | Task |
39
+ |------|------|
40
+ {{MODIFIED_FILES}}
41
+
42
+ ### Deleted
43
+ | File | Task |
44
+ |------|------|
45
+ {{DELETED_FILES}}
46
+
47
+ ## Metrics
48
+
49
+ | Metric | Value |
50
+ |--------|-------|
51
+ | Tasks completed | {{COMPLETED_COUNT}} |
52
+ | Tasks skipped | {{SKIPPED_COUNT}} |
53
+ | Commits | {{COMMIT_COUNT}} |
54
+ | Lines added | {{LINES_ADDED}} |
55
+ | Lines removed | {{LINES_REMOVED}} |
56
+ | Test coverage | {{COVERAGE}} |
57
+
58
+ ## Lessons Learned
59
+
60
+ {{LESSONS}}
61
+
62
+ ## Notes
63
+
64
+ {{NOTES}}
65
+
66
+ ---
67
+ Git Tag: `vp-p{{PHASE_NUMBER}}-complete`
@@ -0,0 +1,101 @@
1
+ # Task {{TASK_NUMBER}}: {{TASK_NAME}}
2
+
3
+ ## Meta
4
+ - **Phase**: {{PHASE_NUMBER}}-{{PHASE_SLUG}}
5
+ - **Status**: not_started | in_progress | blocked | done | skipped
6
+ - **Complexity**: {{COMPLEXITY}}
7
+ - **Dependencies**: {{DEPENDENCIES}}
8
+ - **Git Tag**: vp-p{{PHASE_NUMBER}}-t{{TASK_NUMBER}}
9
+
10
+ ## Objective
11
+
12
+ {{TASK_OBJECTIVE}}
13
+
14
+ ## Pre-execution documentation gate (doc-first; BUG-001)
15
+
16
+ **Complete before any implementation commits** (see `workflows/autonomous.md`). Read-only research and editing *this task file* to fill the plan are allowed.
17
+
18
+ - [ ] Task contract fields below are filled with **real** paths and intent (no literal `{{PLACEHOLDER}}` rows left in Paths / File-Level Plan).
19
+ - [ ] `## Paths` lists every file/dir to create or modify for this task.
20
+ - [ ] `## File-Level Plan` **or** `## Implementation Notes` explains *what* and *why* per path.
21
+ - [ ] `.viepilot/phases/{{PHASE_NUMBER}}-{{PHASE_SLUG}}/PHASE-STATE.md` marks this task `in_progress` before the first implementation commit.
22
+
23
+ If any box is unchecked when coding starts → **blocked**; finish the plan first.
24
+
25
+ ## Paths
26
+ ```yaml
27
+ files_to_create:
28
+ - {{NEW_FILE_PATH_1}}
29
+ files_to_modify:
30
+ - {{MODIFIED_FILE_PATH_1}}
31
+ ```
32
+
33
+ ## File-Level Plan
34
+ - `{{FILE_PATH}}`: {{WHAT_TO_CHANGE_AND_WHY}}
35
+ - `{{FILE_PATH_2}}`: {{WHAT_TO_CHANGE_AND_WHY}}
36
+
37
+ ## Context Required
38
+ ```yaml
39
+ files_to_read:
40
+ - .viepilot/ARCHITECTURE.md#{{RELEVANT_SECTION}}
41
+ - .viepilot/SYSTEM-RULES.md#coding_rules
42
+ {{ADDITIONAL_CONTEXT}}
43
+ ```
44
+
45
+ ## Acceptance Criteria
46
+ - [ ] {{CRITERIA_1}}
47
+ - [ ] {{CRITERIA_2}}
48
+ - [ ] {{CRITERIA_3}}
49
+
50
+ ## Best Practices to Apply
51
+ - [ ] {{STACK_SPECIFIC_PRACTICE_1}}
52
+ - [ ] {{CODE_QUALITY_PRACTICE_1}}
53
+ - [ ] {{TESTING_OR_VERIFICATION_PRACTICE}}
54
+
55
+ ## Do / Don't
56
+ ### Do
57
+ - {{DO_ITEM_1}}
58
+ - {{DO_ITEM_2}}
59
+
60
+ ### Don't
61
+ - {{DONT_ITEM_1}}
62
+ - {{DONT_ITEM_2}}
63
+
64
+ ## Implementation Notes
65
+ ```
66
+ (AI ghi lại notes trong quá trình implement)
67
+ - Decisions made:
68
+ - Issues encountered:
69
+ - Deviations from plan:
70
+ ```
71
+
72
+ ## Verification
73
+ ```yaml
74
+ automated:
75
+ - command: "{{VERIFY_COMMAND}}"
76
+ expected: "{{EXPECTED_OUTPUT}}"
77
+ - command: "{{VERIFY_COMMAND_2}}"
78
+ expected: "{{EXPECTED_OUTPUT_2}}"
79
+ {{ADDITIONAL_CHECKS}}
80
+
81
+ manual:
82
+ - description: "{{MANUAL_CHECK}}"
83
+ required: {{REQUIRED}}
84
+ ```
85
+
86
+ ## State Update Checklist
87
+ - [ ] Update `.viepilot/phases/{{PHASE_NUMBER}}-{{PHASE_SLUG}}/PHASE-STATE.md` after each PASS sub-task
88
+ - [ ] Update `.viepilot/TRACKER.md` with current task/progress
89
+ - [ ] Update `.viepilot/HANDOFF.json` to exact resume point
90
+ - [ ] Update `.viepilot/ROADMAP.md` if phase progress/status changed
91
+
92
+ ## Files Changed
93
+ ```
94
+ (Auto-populated after completion)
95
+ ```
96
+
97
+ ## Rollback
98
+ ```bash
99
+ # If need to undo this task:
100
+ git revert --no-commit $(git rev-list vp-p{{PHASE_NUMBER}}-t{{TASK_NUMBER}}..vp-p{{PHASE_NUMBER}}-t{{TASK_NUMBER}}-done)
101
+ ```
@@ -0,0 +1,49 @@
1
+ # Phase {{PHASE_NUMBER}}: {{PHASE_NAME}} - Verification
2
+
3
+ ## Overview
4
+ - **Verified At**: {{TIMESTAMP}}
5
+ - **Status**: passed | partial | failed
6
+
7
+ ## Task Verification
8
+
9
+ {{#TASKS}}
10
+ ### Task {{TASK_NUMBER}}: {{TASK_NAME}}
11
+ **Status**: {{STATUS}}
12
+
13
+ #### Automated Checks
14
+ | Check | Result | Output |
15
+ |-------|--------|--------|
16
+ {{AUTOMATED_CHECKS}}
17
+
18
+ #### Manual Checks
19
+ | Check | Result | Verified By |
20
+ |-------|--------|-------------|
21
+ {{MANUAL_CHECKS}}
22
+
23
+ {{/TASKS}}
24
+
25
+ ## Quality Gate
26
+
27
+ | Criteria | Required | Result |
28
+ |----------|----------|--------|
29
+ | All acceptance criteria met | ✅ | {{RESULT}} |
30
+ | Automated tests pass | ✅ | {{RESULT}} |
31
+ | No lint errors | ✅ | {{RESULT}} |
32
+ | Code review (if required) | ⚪ | {{RESULT}} |
33
+
34
+ ## Summary
35
+
36
+ | Metric | Count |
37
+ |--------|-------|
38
+ | Total checks | {{TOTAL}} |
39
+ | Passed | {{PASSED}} |
40
+ | Failed | {{FAILED}} |
41
+ | Skipped | {{SKIPPED}} |
42
+
43
+ ## Issues Found
44
+
45
+ {{ISSUES}}
46
+
47
+ ## Next Action
48
+
49
+ {{NEXT_ACTION}}