@qazuor/claude-code-config 0.1.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.
- package/LICENSE +21 -0
- package/README.md +1248 -0
- package/dist/bin.cjs +11886 -0
- package/dist/bin.cjs.map +1 -0
- package/dist/bin.d.cts +1 -0
- package/dist/bin.d.ts +1 -0
- package/dist/bin.js +11869 -0
- package/dist/bin.js.map +1 -0
- package/dist/index.cjs +3887 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +1325 -0
- package/dist/index.d.ts +1325 -0
- package/dist/index.js +3835 -0
- package/dist/index.js.map +1 -0
- package/package.json +86 -0
- package/templates/.log/notifications.log +1775 -0
- package/templates/agents/README.md +164 -0
- package/templates/agents/_registry.json +443 -0
- package/templates/agents/design/content-writer.md +353 -0
- package/templates/agents/design/ux-ui-designer.md +382 -0
- package/templates/agents/engineering/astro-engineer.md +293 -0
- package/templates/agents/engineering/db-drizzle-engineer.md +360 -0
- package/templates/agents/engineering/express-engineer.md +316 -0
- package/templates/agents/engineering/fastify-engineer.md +399 -0
- package/templates/agents/engineering/hono-engineer.md +263 -0
- package/templates/agents/engineering/mongoose-engineer.md +473 -0
- package/templates/agents/engineering/nestjs-engineer.md +429 -0
- package/templates/agents/engineering/nextjs-engineer.md +451 -0
- package/templates/agents/engineering/node-typescript-engineer.md +347 -0
- package/templates/agents/engineering/prisma-engineer.md +432 -0
- package/templates/agents/engineering/react-senior-dev.md +394 -0
- package/templates/agents/engineering/tanstack-start-engineer.md +447 -0
- package/templates/agents/engineering/tech-lead.md +269 -0
- package/templates/agents/product/product-functional.md +329 -0
- package/templates/agents/product/product-technical.md +578 -0
- package/templates/agents/quality/debugger.md +514 -0
- package/templates/agents/quality/qa-engineer.md +390 -0
- package/templates/agents/specialized/enrichment-agent.md +277 -0
- package/templates/agents/specialized/i18n-specialist.md +322 -0
- package/templates/agents/specialized/seo-ai-specialist.md +387 -0
- package/templates/agents/specialized/tech-writer.md +300 -0
- package/templates/code-style/.editorconfig +27 -0
- package/templates/code-style/.prettierignore +25 -0
- package/templates/code-style/.prettierrc +12 -0
- package/templates/code-style/biome.json +78 -0
- package/templates/code-style/commitlint.config.js +44 -0
- package/templates/commands/README.md +175 -0
- package/templates/commands/_registry.json +420 -0
- package/templates/commands/add-new-entity.md +211 -0
- package/templates/commands/audit/accessibility-audit.md +360 -0
- package/templates/commands/audit/performance-audit.md +290 -0
- package/templates/commands/audit/security-audit.md +231 -0
- package/templates/commands/code-check.md +127 -0
- package/templates/commands/five-why.md +225 -0
- package/templates/commands/formatting/format-markdown.md +197 -0
- package/templates/commands/git/commit.md +247 -0
- package/templates/commands/meta/create-agent.md +257 -0
- package/templates/commands/meta/create-command.md +312 -0
- package/templates/commands/meta/create-skill.md +321 -0
- package/templates/commands/meta/help.md +318 -0
- package/templates/commands/planning/check-completed-tasks.md +224 -0
- package/templates/commands/planning/cleanup-issues.md +248 -0
- package/templates/commands/planning/planning-cleanup.md +251 -0
- package/templates/commands/planning/sync-planning-github.md +133 -0
- package/templates/commands/planning/sync-todos-github.md +203 -0
- package/templates/commands/quality-check.md +211 -0
- package/templates/commands/run-tests.md +159 -0
- package/templates/commands/start-feature-plan.md +232 -0
- package/templates/commands/start-refactor-plan.md +244 -0
- package/templates/commands/sync-planning.md +176 -0
- package/templates/commands/update-docs.md +242 -0
- package/templates/docs/CHECKPOINT-SYSTEM.md +504 -0
- package/templates/docs/INDEX.md +677 -0
- package/templates/docs/RECOMMENDED-HOOKS.md +415 -0
- package/templates/docs/_registry.json +329 -0
- package/templates/docs/diagrams/README.md +220 -0
- package/templates/docs/diagrams/agent-hierarchy.mmd +55 -0
- package/templates/docs/diagrams/documentation-map.mmd +61 -0
- package/templates/docs/diagrams/tools-relationship.mmd +55 -0
- package/templates/docs/diagrams/workflow-decision-tree.mmd +38 -0
- package/templates/docs/doc-sync.md +533 -0
- package/templates/docs/examples/end-to-end-workflow.md +1505 -0
- package/templates/docs/glossary.md +495 -0
- package/templates/docs/guides/mockup-prompt-engineering.md +644 -0
- package/templates/docs/guides/mockup-setup.md +737 -0
- package/templates/docs/learnings/README.md +250 -0
- package/templates/docs/learnings/common-architectural-patterns.md +123 -0
- package/templates/docs/learnings/common-mistakes-to-avoid.md +149 -0
- package/templates/docs/learnings/markdown-formatting-standards.md +104 -0
- package/templates/docs/learnings/monorepo-command-execution.md +64 -0
- package/templates/docs/learnings/optimization-tips.md +146 -0
- package/templates/docs/learnings/planning-linear-sync-workflow.md +70 -0
- package/templates/docs/learnings/shell-compatibility-fish.md +46 -0
- package/templates/docs/learnings/test-organization-structure.md +68 -0
- package/templates/docs/mcp-installation.md +613 -0
- package/templates/docs/mcp-servers.md +989 -0
- package/templates/docs/notification-installation.md +570 -0
- package/templates/docs/quick-start.md +354 -0
- package/templates/docs/standards/architecture-patterns.md +1064 -0
- package/templates/docs/standards/atomic-commits.md +513 -0
- package/templates/docs/standards/code-standards.md +993 -0
- package/templates/docs/standards/design-standards.md +656 -0
- package/templates/docs/standards/documentation-standards.md +1160 -0
- package/templates/docs/standards/testing-standards.md +969 -0
- package/templates/docs/system-maintenance.md +604 -0
- package/templates/docs/templates/PDR-template.md +561 -0
- package/templates/docs/templates/TODOs-template.md +534 -0
- package/templates/docs/templates/tech-analysis-template.md +800 -0
- package/templates/docs/workflows/README.md +519 -0
- package/templates/docs/workflows/atomic-task-protocol.md +955 -0
- package/templates/docs/workflows/decision-tree.md +482 -0
- package/templates/docs/workflows/edge-cases.md +856 -0
- package/templates/docs/workflows/phase-1-planning.md +957 -0
- package/templates/docs/workflows/phase-2-implementation.md +896 -0
- package/templates/docs/workflows/phase-3-validation.md +792 -0
- package/templates/docs/workflows/phase-4-finalization.md +927 -0
- package/templates/docs/workflows/quick-fix-protocol.md +505 -0
- package/templates/docs/workflows/task-atomization.md +537 -0
- package/templates/docs/workflows/task-completion-protocol.md +448 -0
- package/templates/hooks/on-notification.sh +28 -0
- package/templates/schemas/checkpoint.schema.json +97 -0
- package/templates/schemas/code-registry.schema.json +84 -0
- package/templates/schemas/pdr.schema.json +314 -0
- package/templates/schemas/problems.schema.json +55 -0
- package/templates/schemas/tech-analysis.schema.json +404 -0
- package/templates/schemas/telemetry.schema.json +298 -0
- package/templates/schemas/todos.schema.json +234 -0
- package/templates/schemas/workflows.schema.json +69 -0
- package/templates/scripts/add-changelogs.sh +105 -0
- package/templates/scripts/generate-code-registry.ts +270 -0
- package/templates/scripts/health-check.sh +343 -0
- package/templates/scripts/sync-registry.sh +40 -0
- package/templates/scripts/telemetry-report.ts +36 -0
- package/templates/scripts/validate-docs.sh +224 -0
- package/templates/scripts/validate-registry.sh +225 -0
- package/templates/scripts/validate-schemas.ts +283 -0
- package/templates/scripts/validate-structure.sh +165 -0
- package/templates/scripts/worktree-cleanup.sh +81 -0
- package/templates/scripts/worktree-create.sh +63 -0
- package/templates/sessions/planning/.gitkeep +0 -0
- package/templates/sessions/planning/archived/.gitkeep +0 -0
- package/templates/settings.json +202 -0
- package/templates/settings.local.json +138 -0
- package/templates/skills/README.md +197 -0
- package/templates/skills/_registry.json +473 -0
- package/templates/skills/audit/accessibility-audit.md +309 -0
- package/templates/skills/audit/performance-audit.md +257 -0
- package/templates/skills/audit/security-audit.md +217 -0
- package/templates/skills/auth/nextauth-patterns.md +308 -0
- package/templates/skills/brand-guidelines.md +240 -0
- package/templates/skills/documentation/markdown-formatter.md +302 -0
- package/templates/skills/git/git-commit-helper.md +321 -0
- package/templates/skills/i18n/i18n-patterns.md +251 -0
- package/templates/skills/patterns/error-handling-patterns.md +242 -0
- package/templates/skills/patterns/tdd-methodology.md +342 -0
- package/templates/skills/qa/qa-criteria-validator.md +383 -0
- package/templates/skills/qa/web-app-testing.md +398 -0
- package/templates/skills/react/react-hook-form-patterns.md +359 -0
- package/templates/skills/state/redux-toolkit-patterns.md +272 -0
- package/templates/skills/state/tanstack-query-patterns.md +299 -0
- package/templates/skills/state/zustand-patterns.md +301 -0
- package/templates/skills/tech/mermaid-diagram-specialist.md +195 -0
- package/templates/skills/tech/shadcn-specialist.md +252 -0
- package/templates/skills/tech/vercel-specialist.md +297 -0
- package/templates/skills/testing/api-app-testing.md +254 -0
- package/templates/skills/testing/performance-testing.md +275 -0
- package/templates/skills/testing/security-testing.md +348 -0
- package/templates/skills/utils/add-memory.md +295 -0
- package/templates/skills/utils/json-data-auditor.md +283 -0
- package/templates/skills/utils/pdf-creator-editor.md +342 -0
- package/templates/tools/format-markdown.sh +185 -0
|
@@ -0,0 +1,504 @@
|
|
|
1
|
+
# Checkpoint System Documentation
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
|
|
5
|
+
The Checkpoint System enables resuming workflow execution across sessions and devices by tracking the current state of any active planning session. This allows for seamless collaboration and continuity when switching between workstations or resuming work after interruptions.
|
|
6
|
+
|
|
7
|
+
## Purpose
|
|
8
|
+
|
|
9
|
+
**Why Checkpoints?**
|
|
10
|
+
|
|
11
|
+
- **Resume Work**: Continue exactly where you left off after breaks or context switches
|
|
12
|
+
- **Cross-Device Workflow**: Start work on one device, continue on another
|
|
13
|
+
- **Progress Tracking**: Monitor completion status and estimate remaining work
|
|
14
|
+
- **Collaboration**: Multiple team members can see current workflow state
|
|
15
|
+
- **Git History**: Checkpoints in git provide audit trail of workflow progression
|
|
16
|
+
|
|
17
|
+
## File Location
|
|
18
|
+
|
|
19
|
+
Checkpoints are stored as `.checkpoint.json` files in planning session directories:
|
|
20
|
+
|
|
21
|
+
```
|
|
22
|
+
.claude/sessions/planning/{planning-code}/.checkpoint.json
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
**Examples:**
|
|
26
|
+
|
|
27
|
+
```
|
|
28
|
+
.claude/sessions/planning/P-004-workflow-optimization/.checkpoint.json
|
|
29
|
+
.claude/sessions/planning/P-001-business-model-system/.checkpoint.json
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
## Checkpoint Structure
|
|
33
|
+
|
|
34
|
+
### Minimal Valid Checkpoint
|
|
35
|
+
|
|
36
|
+
```json
|
|
37
|
+
{
|
|
38
|
+
"workflow": "feature",
|
|
39
|
+
"planningCode": "P-004",
|
|
40
|
+
"currentPhase": 2,
|
|
41
|
+
"currentStep": 15,
|
|
42
|
+
"totalSteps": 37,
|
|
43
|
+
"currentTask": "PF004-15"
|
|
44
|
+
}
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
### Complete Checkpoint with All Fields
|
|
48
|
+
|
|
49
|
+
```json
|
|
50
|
+
{
|
|
51
|
+
"workflow": "feature",
|
|
52
|
+
"planningCode": "P-004",
|
|
53
|
+
"currentPhase": 2,
|
|
54
|
+
"currentStep": 15,
|
|
55
|
+
"totalSteps": 37,
|
|
56
|
+
"currentTask": "PF004-15",
|
|
57
|
+
"taskName": "Create 11 new specialized skills",
|
|
58
|
+
"previousTaskCompleted": "PF004-14",
|
|
59
|
+
"phaseStarted": "2025-10-30T12:00:00.000Z",
|
|
60
|
+
"lastUpdated": "2025-10-30T14:30:00.000Z",
|
|
61
|
+
"tasksCompleted": 15,
|
|
62
|
+
"hoursSpent": 12.5,
|
|
63
|
+
"blockers": [
|
|
64
|
+
{
|
|
65
|
+
"task": "PF004-12",
|
|
66
|
+
"reason": "Waiting for user approval on approach",
|
|
67
|
+
"since": "2025-10-30T11:00:00.000Z"
|
|
68
|
+
}
|
|
69
|
+
],
|
|
70
|
+
"notes": [
|
|
71
|
+
{
|
|
72
|
+
"timestamp": "2025-10-30T13:00:00.000Z",
|
|
73
|
+
"note": "Refactored skills to use new pattern"
|
|
74
|
+
}
|
|
75
|
+
]
|
|
76
|
+
}
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
## Field Definitions
|
|
80
|
+
|
|
81
|
+
### Required Fields
|
|
82
|
+
|
|
83
|
+
| Field | Type | Description | Example |
|
|
84
|
+
|-------|------|-------------|---------|
|
|
85
|
+
| `workflow` | string (enum) | Type of workflow | `"feature"`, `"refactor"`, `"bugfix-small"`, `"quick-fix"` |
|
|
86
|
+
| `planningCode` | string | Planning session identifier | `"P-004"`, `"PF-004"` |
|
|
87
|
+
| `currentPhase` | integer (1-4) | Current phase | `2` (Implementation) |
|
|
88
|
+
| `currentStep` | integer | Current step number | `15` |
|
|
89
|
+
| `totalSteps` | integer | Total steps in workflow | `37` |
|
|
90
|
+
| `currentTask` | string | Current task code | `"PF004-15"` |
|
|
91
|
+
|
|
92
|
+
### Optional Fields
|
|
93
|
+
|
|
94
|
+
| Field | Type | Description | Example |
|
|
95
|
+
|-------|------|-------------|---------|
|
|
96
|
+
| `taskName` | string | Human-readable task name | `"Create new skills"` |
|
|
97
|
+
| `previousTaskCompleted` | string | Last completed task | `"PF004-14"` |
|
|
98
|
+
| `phaseStarted` | ISO 8601 | When phase started | `"2025-10-30T12:00:00.000Z"` |
|
|
99
|
+
| `lastUpdated` | ISO 8601 | Last update time | `"2025-10-30T14:30:00.000Z"` |
|
|
100
|
+
| `tasksCompleted` | integer | Number of completed tasks | `15` |
|
|
101
|
+
| `hoursSpent` | number | Total hours invested | `12.5` |
|
|
102
|
+
| `blockers` | array | Current blockers | See structure below |
|
|
103
|
+
| `notes` | array | Session notes | See structure below |
|
|
104
|
+
|
|
105
|
+
### Workflow Types
|
|
106
|
+
|
|
107
|
+
- **`feature`**: New feature implementation (Level 3, 4-phase workflow)
|
|
108
|
+
- **`refactor`**: Code refactoring (Level 3, 4-phase workflow)
|
|
109
|
+
- **`bugfix-small`**: Small bug fix (Level 2, simplified workflow)
|
|
110
|
+
- **`quick-fix`**: Quick fix (Level 1, minimal workflow)
|
|
111
|
+
|
|
112
|
+
### Workflow Phases
|
|
113
|
+
|
|
114
|
+
1. **Planning** - Requirements gathering, design
|
|
115
|
+
2. **Implementation** - Code development, TDD
|
|
116
|
+
3. **Validation** - Testing, code review
|
|
117
|
+
4. **Finalization** - Documentation, commits
|
|
118
|
+
|
|
119
|
+
## Usage Patterns
|
|
120
|
+
|
|
121
|
+
### Creating a Checkpoint
|
|
122
|
+
|
|
123
|
+
When starting a new task:
|
|
124
|
+
|
|
125
|
+
```bash
|
|
126
|
+
# Create checkpoint manually
|
|
127
|
+
cat > .claude/sessions/planning/P-004/.checkpoint.json << 'EOF'
|
|
128
|
+
{
|
|
129
|
+
"workflow": "feature",
|
|
130
|
+
"planningCode": "P-004",
|
|
131
|
+
"currentPhase": 1,
|
|
132
|
+
"currentStep": 1,
|
|
133
|
+
"totalSteps": 37,
|
|
134
|
+
"currentTask": "PF004-1",
|
|
135
|
+
"taskName": "Create directory structure",
|
|
136
|
+
"phaseStarted": "2025-10-30T10:00:00.000Z",
|
|
137
|
+
"lastUpdated": "2025-10-30T10:00:00.000Z",
|
|
138
|
+
"tasksCompleted": 0
|
|
139
|
+
}
|
|
140
|
+
EOF
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
### Updating a Checkpoint
|
|
144
|
+
|
|
145
|
+
After completing a task:
|
|
146
|
+
|
|
147
|
+
```json
|
|
148
|
+
{
|
|
149
|
+
"workflow": "feature",
|
|
150
|
+
"planningCode": "P-004",
|
|
151
|
+
"currentPhase": 2,
|
|
152
|
+
"currentStep": 16,
|
|
153
|
+
"totalSteps": 37,
|
|
154
|
+
"currentTask": "PF004-16",
|
|
155
|
+
"taskName": "Update skills README",
|
|
156
|
+
"previousTaskCompleted": "PF004-15",
|
|
157
|
+
"phaseStarted": "2025-10-30T12:00:00.000Z",
|
|
158
|
+
"lastUpdated": "2025-10-30T15:00:00.000Z",
|
|
159
|
+
"tasksCompleted": 16
|
|
160
|
+
}
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
**Key changes**:
|
|
164
|
+
|
|
165
|
+
- `currentStep` incremented (15 → 16)
|
|
166
|
+
- `currentTask` updated (PF004-15 → PF004-16)
|
|
167
|
+
- `previousTaskCompleted` set to previous task
|
|
168
|
+
- `lastUpdated` timestamp updated
|
|
169
|
+
- `tasksCompleted` incremented (15 → 16)
|
|
170
|
+
|
|
171
|
+
### Reading a Checkpoint
|
|
172
|
+
|
|
173
|
+
To resume work, read the checkpoint:
|
|
174
|
+
|
|
175
|
+
```bash
|
|
176
|
+
# Display checkpoint
|
|
177
|
+
jq . .claude/sessions/planning/P-004/.checkpoint.json
|
|
178
|
+
|
|
179
|
+
# Extract specific field
|
|
180
|
+
CURRENT_TASK=$(jq -r '.currentTask' .checkpoint.json)
|
|
181
|
+
PHASE=$(jq -r '.currentPhase' .checkpoint.json)
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
### Calculating Progress
|
|
185
|
+
|
|
186
|
+
```bash
|
|
187
|
+
# Get completion percentage
|
|
188
|
+
COMPLETED=$(jq -r '.tasksCompleted' .checkpoint.json)
|
|
189
|
+
TOTAL=$(jq -r '.totalSteps' .checkpoint.json)
|
|
190
|
+
PROGRESS=$(( (COMPLETED * 100) / TOTAL ))
|
|
191
|
+
echo "Progress: $PROGRESS%"
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
## Blockers and Notes
|
|
195
|
+
|
|
196
|
+
### Adding a Blocker
|
|
197
|
+
|
|
198
|
+
When a task is blocked:
|
|
199
|
+
|
|
200
|
+
```json
|
|
201
|
+
{
|
|
202
|
+
"blockers": [
|
|
203
|
+
{
|
|
204
|
+
"task": "PF004-12",
|
|
205
|
+
"reason": "Waiting for user approval on approach",
|
|
206
|
+
"since": "2025-10-30T11:00:00.000Z"
|
|
207
|
+
},
|
|
208
|
+
{
|
|
209
|
+
"task": "PF004-15",
|
|
210
|
+
"reason": "External API documentation unavailable",
|
|
211
|
+
"since": "2025-10-30T14:00:00.000Z"
|
|
212
|
+
}
|
|
213
|
+
]
|
|
214
|
+
}
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
### Adding Notes
|
|
218
|
+
|
|
219
|
+
Document important decisions or observations:
|
|
220
|
+
|
|
221
|
+
```json
|
|
222
|
+
{
|
|
223
|
+
"notes": [
|
|
224
|
+
{
|
|
225
|
+
"timestamp": "2025-10-30T13:00:00.000Z",
|
|
226
|
+
"note": "Refactored skills to use new pattern - broke into smaller files"
|
|
227
|
+
},
|
|
228
|
+
{
|
|
229
|
+
"timestamp": "2025-10-30T14:30:00.000Z",
|
|
230
|
+
"note": "User requested pivot to different UI framework"
|
|
231
|
+
}
|
|
232
|
+
]
|
|
233
|
+
}
|
|
234
|
+
```
|
|
235
|
+
|
|
236
|
+
## Git Integration
|
|
237
|
+
|
|
238
|
+
### Version Control
|
|
239
|
+
|
|
240
|
+
**Always commit checkpoints:**
|
|
241
|
+
|
|
242
|
+
```bash
|
|
243
|
+
# Stage checkpoint
|
|
244
|
+
git add .claude/sessions/planning/P-004/.checkpoint.json
|
|
245
|
+
|
|
246
|
+
# Commit with task reference
|
|
247
|
+
git commit -m "chore(planning): update checkpoint to PF004-16"
|
|
248
|
+
```
|
|
249
|
+
|
|
250
|
+
**Do NOT gitignore checkpoints:**
|
|
251
|
+
|
|
252
|
+
```gitignore
|
|
253
|
+
# ❌ DON'T DO THIS
|
|
254
|
+
.checkpoint.json
|
|
255
|
+
|
|
256
|
+
# ✅ Checkpoints should be tracked
|
|
257
|
+
```
|
|
258
|
+
|
|
259
|
+
### Cross-Device Workflow
|
|
260
|
+
|
|
261
|
+
1. **Device A** - Start work:
|
|
262
|
+
|
|
263
|
+
```bash
|
|
264
|
+
# Make changes
|
|
265
|
+
git add .
|
|
266
|
+
git commit -m "feat: implement feature X"
|
|
267
|
+
|
|
268
|
+
# Update checkpoint
|
|
269
|
+
# ... update .checkpoint.json ...
|
|
270
|
+
git add .checkpoint.json
|
|
271
|
+
git commit -m "chore: update checkpoint to PF004-16"
|
|
272
|
+
|
|
273
|
+
# Push to remote
|
|
274
|
+
git push origin main
|
|
275
|
+
```
|
|
276
|
+
|
|
277
|
+
2. **Device B** - Continue work:
|
|
278
|
+
|
|
279
|
+
```bash
|
|
280
|
+
# Pull latest changes
|
|
281
|
+
git pull origin main
|
|
282
|
+
|
|
283
|
+
# Read checkpoint
|
|
284
|
+
jq . .claude/sessions/planning/P-004/.checkpoint.json
|
|
285
|
+
|
|
286
|
+
# Resume from PF004-16
|
|
287
|
+
# ... continue work ...
|
|
288
|
+
```
|
|
289
|
+
|
|
290
|
+
## Integration with Health Check
|
|
291
|
+
|
|
292
|
+
The health check system reads checkpoints:
|
|
293
|
+
|
|
294
|
+
```bash
|
|
295
|
+
# Run health check
|
|
296
|
+
pnpm health-check
|
|
297
|
+
|
|
298
|
+
# Output includes:
|
|
299
|
+
# 📋 Found 2 active planning sessions:
|
|
300
|
+
# 📋 P-004-workflow-optimization: PF004-16 (16/37 - 43%)
|
|
301
|
+
# 📋 P-001-business-model: PF001-25 (25/30 - 83%)
|
|
302
|
+
```
|
|
303
|
+
|
|
304
|
+
## Best Practices
|
|
305
|
+
|
|
306
|
+
### DO ✅
|
|
307
|
+
|
|
308
|
+
- **Update after every task**: Keep checkpoint current
|
|
309
|
+
- **Commit checkpoints**: Include in version control
|
|
310
|
+
- **Use ISO 8601 timestamps**: Ensures consistency across timezones
|
|
311
|
+
- **Document blockers**: Record why work is paused
|
|
312
|
+
- **Add meaningful notes**: Future you will thank you
|
|
313
|
+
- **Validate JSON**: Use `jq` to ensure valid format before committing
|
|
314
|
+
|
|
315
|
+
### DON'T ❌
|
|
316
|
+
|
|
317
|
+
- **Skip updates**: Don't let checkpoint get stale
|
|
318
|
+
- **Gitignore checkpoints**: Defeats cross-device purpose
|
|
319
|
+
- **Use relative times**: "2 hours ago" vs ISO timestamp
|
|
320
|
+
- **Leave incomplete data**: Fill in all required fields
|
|
321
|
+
- **Forget to push**: Checkpoint on local only doesn't help
|
|
322
|
+
- **Manually edit without validation**: Use `jq` to prevent syntax errors
|
|
323
|
+
|
|
324
|
+
## Schema Validation
|
|
325
|
+
|
|
326
|
+
The checkpoint schema is defined in `.claude/schemas/checkpoint.schema.json`.
|
|
327
|
+
|
|
328
|
+
### Validate with jq
|
|
329
|
+
|
|
330
|
+
```bash
|
|
331
|
+
# Check if valid JSON
|
|
332
|
+
jq empty .checkpoint.json
|
|
333
|
+
|
|
334
|
+
# Extract and validate required fields
|
|
335
|
+
jq 'has("workflow") and has("planningCode") and has("currentPhase")' .checkpoint.json
|
|
336
|
+
```
|
|
337
|
+
|
|
338
|
+
### Validate with schema validators
|
|
339
|
+
|
|
340
|
+
```bash
|
|
341
|
+
# Using ajv-cli (if installed)
|
|
342
|
+
ajv validate -s .claude/schemas/checkpoint.schema.json -d .checkpoint.json
|
|
343
|
+
```
|
|
344
|
+
|
|
345
|
+
## Examples
|
|
346
|
+
|
|
347
|
+
### Example 1: Starting New Feature
|
|
348
|
+
|
|
349
|
+
```json
|
|
350
|
+
{
|
|
351
|
+
"workflow": "feature",
|
|
352
|
+
"planningCode": "P-005",
|
|
353
|
+
"currentPhase": 1,
|
|
354
|
+
"currentStep": 1,
|
|
355
|
+
"totalSteps": 42,
|
|
356
|
+
"currentTask": "PF005-1",
|
|
357
|
+
"taskName": "Analyze requirements",
|
|
358
|
+
"phaseStarted": "2025-11-01T09:00:00.000Z",
|
|
359
|
+
"lastUpdated": "2025-11-01T09:00:00.000Z",
|
|
360
|
+
"tasksCompleted": 0
|
|
361
|
+
}
|
|
362
|
+
```
|
|
363
|
+
|
|
364
|
+
### Example 2: Mid-Implementation
|
|
365
|
+
|
|
366
|
+
```json
|
|
367
|
+
{
|
|
368
|
+
"workflow": "feature",
|
|
369
|
+
"planningCode": "P-005",
|
|
370
|
+
"currentPhase": 2,
|
|
371
|
+
"currentStep": 18,
|
|
372
|
+
"totalSteps": 42,
|
|
373
|
+
"currentTask": "PF005-18",
|
|
374
|
+
"taskName": "Implement user service",
|
|
375
|
+
"previousTaskCompleted": "PF005-17",
|
|
376
|
+
"phaseStarted": "2025-11-01T10:00:00.000Z",
|
|
377
|
+
"lastUpdated": "2025-11-02T14:30:00.000Z",
|
|
378
|
+
"tasksCompleted": 18,
|
|
379
|
+
"hoursSpent": 8.5,
|
|
380
|
+
"notes": [
|
|
381
|
+
{
|
|
382
|
+
"timestamp": "2025-11-02T11:00:00.000Z",
|
|
383
|
+
"note": "Switched from REST to GraphQL after user feedback"
|
|
384
|
+
}
|
|
385
|
+
]
|
|
386
|
+
}
|
|
387
|
+
```
|
|
388
|
+
|
|
389
|
+
### Example 3: Blocked Task
|
|
390
|
+
|
|
391
|
+
```json
|
|
392
|
+
{
|
|
393
|
+
"workflow": "feature",
|
|
394
|
+
"planningCode": "P-005",
|
|
395
|
+
"currentPhase": 2,
|
|
396
|
+
"currentStep": 22,
|
|
397
|
+
"totalSteps": 42,
|
|
398
|
+
"currentTask": "PF005-22",
|
|
399
|
+
"taskName": "Integrate payment gateway",
|
|
400
|
+
"previousTaskCompleted": "PF005-21",
|
|
401
|
+
"phaseStarted": "2025-11-01T10:00:00.000Z",
|
|
402
|
+
"lastUpdated": "2025-11-03T09:00:00.000Z",
|
|
403
|
+
"tasksCompleted": 22,
|
|
404
|
+
"hoursSpent": 12.0,
|
|
405
|
+
"blockers": [
|
|
406
|
+
{
|
|
407
|
+
"task": "PF005-22",
|
|
408
|
+
"reason": "Waiting for Mercado Pago API credentials from client",
|
|
409
|
+
"since": "2025-11-03T09:00:00.000Z"
|
|
410
|
+
}
|
|
411
|
+
]
|
|
412
|
+
}
|
|
413
|
+
```
|
|
414
|
+
|
|
415
|
+
### Example 4: Quick Fix (Level 1)
|
|
416
|
+
|
|
417
|
+
```json
|
|
418
|
+
{
|
|
419
|
+
"workflow": "quick-fix",
|
|
420
|
+
"planningCode": "QF-042",
|
|
421
|
+
"currentPhase": 1,
|
|
422
|
+
"currentStep": 1,
|
|
423
|
+
"totalSteps": 1,
|
|
424
|
+
"currentTask": "QF042-1",
|
|
425
|
+
"taskName": "Fix typo in README",
|
|
426
|
+
"lastUpdated": "2025-11-04T15:30:00.000Z",
|
|
427
|
+
"tasksCompleted": 0
|
|
428
|
+
}
|
|
429
|
+
```
|
|
430
|
+
|
|
431
|
+
## Troubleshooting
|
|
432
|
+
|
|
433
|
+
### Invalid JSON
|
|
434
|
+
|
|
435
|
+
**Problem**: Checkpoint won't parse
|
|
436
|
+
|
|
437
|
+
**Solution**:
|
|
438
|
+
|
|
439
|
+
```bash
|
|
440
|
+
# Validate JSON syntax
|
|
441
|
+
jq empty .checkpoint.json
|
|
442
|
+
|
|
443
|
+
# If error, use jq to fix
|
|
444
|
+
jq '.' .checkpoint.json > .checkpoint.json.fixed
|
|
445
|
+
mv .checkpoint.json.fixed .checkpoint.json
|
|
446
|
+
```
|
|
447
|
+
|
|
448
|
+
### Missing Required Fields
|
|
449
|
+
|
|
450
|
+
**Problem**: Schema validation fails
|
|
451
|
+
|
|
452
|
+
**Solution**:
|
|
453
|
+
|
|
454
|
+
```bash
|
|
455
|
+
# Check which required fields are missing
|
|
456
|
+
jq 'keys' .checkpoint.json
|
|
457
|
+
|
|
458
|
+
# Add missing fields
|
|
459
|
+
jq '. + {"workflow": "feature"}' .checkpoint.json > temp.json
|
|
460
|
+
mv temp.json .checkpoint.json
|
|
461
|
+
```
|
|
462
|
+
|
|
463
|
+
### Checkpoint Out of Sync
|
|
464
|
+
|
|
465
|
+
**Problem**: Checkpoint shows wrong task after pull
|
|
466
|
+
|
|
467
|
+
**Solution**:
|
|
468
|
+
|
|
469
|
+
```bash
|
|
470
|
+
# Check git log for checkpoint changes
|
|
471
|
+
git log -p -- .checkpoint.json
|
|
472
|
+
|
|
473
|
+
# Reset to correct state
|
|
474
|
+
git checkout HEAD~1 -- .checkpoint.json
|
|
475
|
+
|
|
476
|
+
# Or update manually to current state
|
|
477
|
+
# ... edit .checkpoint.json ...
|
|
478
|
+
git add .checkpoint.json
|
|
479
|
+
git commit -m "fix: sync checkpoint with actual progress"
|
|
480
|
+
```
|
|
481
|
+
|
|
482
|
+
## Related Documentation
|
|
483
|
+
|
|
484
|
+
- **Schemas**: `.claude/schemas/checkpoint.schema.json`
|
|
485
|
+
- **Health Check**: `.claude/docs/RECOMMENDED-HOOKS.md`
|
|
486
|
+
- **Workflows**: `.claude/docs/workflows/`
|
|
487
|
+
- **Planning**: `.claude/sessions/planning/`
|
|
488
|
+
|
|
489
|
+
## Summary
|
|
490
|
+
|
|
491
|
+
The Checkpoint System is a critical component for managing workflow state across sessions and devices. By maintaining accurate checkpoints in version control, teams can:
|
|
492
|
+
|
|
493
|
+
- Resume work seamlessly
|
|
494
|
+
- Track progress transparently
|
|
495
|
+
- Collaborate effectively
|
|
496
|
+
- Maintain workflow continuity
|
|
497
|
+
|
|
498
|
+
**Remember**: Always update and commit checkpoints after completing tasks!
|
|
499
|
+
|
|
500
|
+
---
|
|
501
|
+
|
|
502
|
+
**Last updated**: 2025-10-31
|
|
503
|
+
**Version**: 1.0.0
|
|
504
|
+
**Maintained by**: DevOps team
|