@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,792 @@
|
|
|
1
|
+
# Phase 3: Validation
|
|
2
|
+
|
|
3
|
+
This document describes the validation phase workflow.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Table of Contents
|
|
8
|
+
|
|
9
|
+
<!-- markdownlint-disable MD051 -->
|
|
10
|
+
|
|
11
|
+
1. [Overview](#overview)
|
|
12
|
+
2. [Goals](#goals)
|
|
13
|
+
3. [Validation Process](#validation-process)
|
|
14
|
+
4. [Quality Checks](#quality-checks)
|
|
15
|
+
5. [Review Process](#review-process)
|
|
16
|
+
6. [Issue Resolution](#issue-resolution)
|
|
17
|
+
|
|
18
|
+
<!-- markdownlint-enable MD051 -->
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## Overview
|
|
23
|
+
|
|
24
|
+
**Phase 3** is the validation phase where we ensure the implementation meets all quality standards before finalization.
|
|
25
|
+
|
|
26
|
+
**Duration:** 3-6 hours (depending on feature complexity)
|
|
27
|
+
|
|
28
|
+
**Key Principle:** Quality gate before finalization. Nothing proceeds with failing checks.
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
## Goals
|
|
33
|
+
|
|
34
|
+
### Primary Goals
|
|
35
|
+
|
|
36
|
+
1. **Validate Functionality**: All acceptance criteria met
|
|
37
|
+
2. **Ensure Quality**: Code, tests, security, performance
|
|
38
|
+
3. **Catch Issues**: Find and fix problems before finalization
|
|
39
|
+
4. **Get Approval**: Tech lead approval before Phase 4
|
|
40
|
+
|
|
41
|
+
### Success Metrics
|
|
42
|
+
|
|
43
|
+
- ✅ All acceptance criteria validated
|
|
44
|
+
- ✅ All quality checks passing
|
|
45
|
+
- ✅ All reviews complete
|
|
46
|
+
- ✅ All critical/high issues resolved
|
|
47
|
+
- ✅ Tech lead approved
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## Validation Process
|
|
52
|
+
|
|
53
|
+
### Step 1: QA Validation
|
|
54
|
+
|
|
55
|
+
**Duration:** 30 minutes - 1 hour
|
|
56
|
+
|
|
57
|
+
**Agent:** `qa-engineer` with `qa-criteria-validator` skill
|
|
58
|
+
|
|
59
|
+
**Process:**
|
|
60
|
+
|
|
61
|
+
1. **Read PDR.md**
|
|
62
|
+
- Review all acceptance criteria
|
|
63
|
+
- Understand expected behavior
|
|
64
|
+
- Check constraints
|
|
65
|
+
|
|
66
|
+
2. **Validate Each Criterion**
|
|
67
|
+
|
|
68
|
+
```
|
|
69
|
+
Acceptance Criterion: AC-001
|
|
70
|
+
Given: User is authenticated host
|
|
71
|
+
When: Creating entity with valid data
|
|
72
|
+
Then: Entity is created with pending status
|
|
73
|
+
|
|
74
|
+
✅ PASS: Tested manually and with automated tests
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
3. **Test All Scenarios**
|
|
78
|
+
- Happy path
|
|
79
|
+
- Edge cases
|
|
80
|
+
- Error cases
|
|
81
|
+
- Boundary conditions
|
|
82
|
+
|
|
83
|
+
4. **Check UI/UX**
|
|
84
|
+
- Matches mockups/wireframes
|
|
85
|
+
- Brand guidelines applied
|
|
86
|
+
- Responsive on all breakpoints
|
|
87
|
+
- Loading states present
|
|
88
|
+
- Error messages clear
|
|
89
|
+
- User feedback immediate
|
|
90
|
+
|
|
91
|
+
5. **Check Accessibility**
|
|
92
|
+
- Keyboard navigation works
|
|
93
|
+
- Screen reader friendly
|
|
94
|
+
- Focus states visible
|
|
95
|
+
- ARIA labels correct
|
|
96
|
+
- Color contrast sufficient
|
|
97
|
+
- Alt text for images
|
|
98
|
+
|
|
99
|
+
6. **Check Performance**
|
|
100
|
+
- Page load time acceptable
|
|
101
|
+
- API response time fast
|
|
102
|
+
- No unnecessary re-renders
|
|
103
|
+
- Images optimized
|
|
104
|
+
|
|
105
|
+
7. **Check Security**
|
|
106
|
+
- Input validation present
|
|
107
|
+
- XSS protection working
|
|
108
|
+
- Auth/authz correct
|
|
109
|
+
- No sensitive data exposed
|
|
110
|
+
|
|
111
|
+
**Deliverable:** Validation report
|
|
112
|
+
|
|
113
|
+
**Format:**
|
|
114
|
+
|
|
115
|
+
```markdown
|
|
116
|
+
|
|
117
|
+
# QA Validation Report: {Feature Name}
|
|
118
|
+
|
|
119
|
+
## Summary
|
|
120
|
+
|
|
121
|
+
- Total Criteria: 15
|
|
122
|
+
- Passed: 13
|
|
123
|
+
- Failed: 2
|
|
124
|
+
- Status: NEEDS FIXES
|
|
125
|
+
|
|
126
|
+
## Detailed Results
|
|
127
|
+
|
|
128
|
+
### AC-001: Create entity as host
|
|
129
|
+
|
|
130
|
+
✅ PASS
|
|
131
|
+
|
|
132
|
+
- Tested with valid data
|
|
133
|
+
- Entity created successfully
|
|
134
|
+
- Status set to "pending" correctly
|
|
135
|
+
|
|
136
|
+
### AC-002: Reject non-host users
|
|
137
|
+
|
|
138
|
+
❌ FAIL
|
|
139
|
+
|
|
140
|
+
- Guest user able to create entity
|
|
141
|
+
- Expected: 403 Forbidden
|
|
142
|
+
- Actual: 201 Created
|
|
143
|
+
- Severity: HIGH
|
|
144
|
+
|
|
145
|
+
### AC-003: Validate capacity limits
|
|
146
|
+
|
|
147
|
+
❌ FAIL
|
|
148
|
+
|
|
149
|
+
- Capacity 0 accepted
|
|
150
|
+
- Expected: Validation error
|
|
151
|
+
- Actual: Record created
|
|
152
|
+
- Severity: MEDIUM
|
|
153
|
+
|
|
154
|
+
## Issues Found
|
|
155
|
+
|
|
156
|
+
1. [HIGH] Non-host users can create entitys
|
|
157
|
+
2. [MEDIUM] Capacity validation not enforced
|
|
158
|
+
|
|
159
|
+
## Recommendations
|
|
160
|
+
|
|
161
|
+
- Fix authorization check in API route
|
|
162
|
+
- Add capacity validation in service layer
|
|
163
|
+
|
|
164
|
+
```text
|
|
165
|
+
|
|
166
|
+
---
|
|
167
|
+
|
|
168
|
+
### Step 2: Iteration on Feedback
|
|
169
|
+
|
|
170
|
+
**Duration:** Variable (depends on issues)
|
|
171
|
+
|
|
172
|
+
**Process:**
|
|
173
|
+
|
|
174
|
+
1. **Review Feedback**
|
|
175
|
+
- Read validation report
|
|
176
|
+
- Understand all issues
|
|
177
|
+
- Prioritize by severity
|
|
178
|
+
|
|
179
|
+
2. **Fix Issues**
|
|
180
|
+
- Start with critical/high
|
|
181
|
+
- Write tests that expose bug
|
|
182
|
+
- Fix implementation
|
|
183
|
+
- Verify tests pass
|
|
184
|
+
|
|
185
|
+
3. **Re-run Validation**
|
|
186
|
+
- QA engineer re-tests
|
|
187
|
+
- Verify all fixes work
|
|
188
|
+
- Check for regressions
|
|
189
|
+
|
|
190
|
+
4. **Repeat Until Clean**
|
|
191
|
+
- Continue until all pass
|
|
192
|
+
- No critical/high issues
|
|
193
|
+
- Medium/low documented
|
|
194
|
+
|
|
195
|
+
---
|
|
196
|
+
|
|
197
|
+
### Step 3: Quality Check Command
|
|
198
|
+
|
|
199
|
+
**Duration:** 15-30 minutes
|
|
200
|
+
|
|
201
|
+
**Command:**
|
|
202
|
+
|
|
203
|
+
```bash
|
|
204
|
+
/quality-check
|
|
205
|
+
```text
|
|
206
|
+
|
|
207
|
+
**Execution Order:**
|
|
208
|
+
|
|
209
|
+
1. **Lint** (STOP on first error)
|
|
210
|
+
|
|
211
|
+
```bash
|
|
212
|
+
pnpm lint
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
- Check code style
|
|
216
|
+
- Check formatting
|
|
217
|
+
- Stop if any errors
|
|
218
|
+
|
|
219
|
+
2. **TypeCheck** (STOP on first error)
|
|
220
|
+
|
|
221
|
+
```bash
|
|
222
|
+
pnpm typecheck
|
|
223
|
+
```
|
|
224
|
+
|
|
225
|
+
- Verify type safety
|
|
226
|
+
- Check type definitions
|
|
227
|
+
- Stop if any errors
|
|
228
|
+
|
|
229
|
+
3. **Tests** (STOP on first error)
|
|
230
|
+
|
|
231
|
+
```bash
|
|
232
|
+
pnpm test:coverage
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
- Run all tests
|
|
236
|
+
- Check coverage ≥ 90%
|
|
237
|
+
- Stop if any failures
|
|
238
|
+
|
|
239
|
+
4. **Code Review** (Report all)
|
|
240
|
+
- Backend review
|
|
241
|
+
- Frontend review
|
|
242
|
+
- Architecture validation
|
|
243
|
+
- Report all findings
|
|
244
|
+
|
|
245
|
+
5. **Security Review** (Report all)
|
|
246
|
+
- Security audit
|
|
247
|
+
- Vulnerability scan
|
|
248
|
+
- Report all findings
|
|
249
|
+
|
|
250
|
+
6. **Performance Review** (Report all)
|
|
251
|
+
- Bundle size check
|
|
252
|
+
- Query performance
|
|
253
|
+
- Core Web Vitals
|
|
254
|
+
- Report all findings
|
|
255
|
+
|
|
256
|
+
**Output:** Consolidated quality report
|
|
257
|
+
|
|
258
|
+
---
|
|
259
|
+
|
|
260
|
+
## Quality Checks
|
|
261
|
+
|
|
262
|
+
### Code Check
|
|
263
|
+
|
|
264
|
+
**What it checks:**
|
|
265
|
+
|
|
266
|
+
- Linting rules
|
|
267
|
+
- Code formatting
|
|
268
|
+
- Import organization
|
|
269
|
+
- Naming conventions
|
|
270
|
+
|
|
271
|
+
**Pass Criteria:**
|
|
272
|
+
|
|
273
|
+
- Zero lint errors
|
|
274
|
+
- Zero type errors
|
|
275
|
+
- All files formatted
|
|
276
|
+
|
|
277
|
+
---
|
|
278
|
+
|
|
279
|
+
### Test Check
|
|
280
|
+
|
|
281
|
+
**What it checks:**
|
|
282
|
+
|
|
283
|
+
- All tests passing
|
|
284
|
+
- Coverage ≥ 90%
|
|
285
|
+
- No skipped tests
|
|
286
|
+
- No flaky tests
|
|
287
|
+
|
|
288
|
+
**Pass Criteria:**
|
|
289
|
+
|
|
290
|
+
- 100% tests passing
|
|
291
|
+
- Coverage above threshold
|
|
292
|
+
- All tests stable
|
|
293
|
+
|
|
294
|
+
---
|
|
295
|
+
|
|
296
|
+
### Code Review
|
|
297
|
+
|
|
298
|
+
**Backend Review:**
|
|
299
|
+
|
|
300
|
+
**Checks:**
|
|
301
|
+
|
|
302
|
+
- Follows BaseCrudService pattern
|
|
303
|
+
- Proper error handling
|
|
304
|
+
- Business logic correct
|
|
305
|
+
- Database queries optimized
|
|
306
|
+
- Transactions used correctly
|
|
307
|
+
- Security considerations
|
|
308
|
+
|
|
309
|
+
**Agent:** `backend-reviewer`
|
|
310
|
+
|
|
311
|
+
**Output:**
|
|
312
|
+
|
|
313
|
+
```markdown
|
|
314
|
+
|
|
315
|
+
# Backend Code Review
|
|
316
|
+
|
|
317
|
+
## Summary
|
|
318
|
+
|
|
319
|
+
- Files Reviewed: 8
|
|
320
|
+
- Issues Found: 3
|
|
321
|
+
- Severity: 1 High, 2 Medium
|
|
322
|
+
|
|
323
|
+
## Issues
|
|
324
|
+
|
|
325
|
+
### [HIGH] Missing transaction in booking creation
|
|
326
|
+
|
|
327
|
+
**File:** `packages/service-core/src/services/booking/booking.service.ts`
|
|
328
|
+
**Line:** 45
|
|
329
|
+
**Issue:** Multi-step operation not wrapped in transaction
|
|
330
|
+
**Impact:** Data consistency risk
|
|
331
|
+
**Recommendation:**
|
|
332
|
+
```typescript
|
|
333
|
+
|
|
334
|
+
await this.db.transaction(async (trx) => {
|
|
335
|
+
const booking = await trx.insert(bookings).values(data);
|
|
336
|
+
await trx.insert(bookingItems).values(items);
|
|
337
|
+
return booking;
|
|
338
|
+
});
|
|
339
|
+
|
|
340
|
+
```text
|
|
341
|
+
|
|
342
|
+
### [MEDIUM] N+1 query problem
|
|
343
|
+
|
|
344
|
+
**File:** `packages/db/src/models/entity.model.ts`
|
|
345
|
+
**Line:** 67
|
|
346
|
+
**Issue:** Loading related data in loop
|
|
347
|
+
**Recommendation:** Use joins or batch loading
|
|
348
|
+
```text
|
|
349
|
+
|
|
350
|
+
**Frontend Review:**
|
|
351
|
+
|
|
352
|
+
**Checks:**
|
|
353
|
+
|
|
354
|
+
- Component reusability
|
|
355
|
+
- State management correct
|
|
356
|
+
- TanStack Query used properly
|
|
357
|
+
- Accessibility compliance
|
|
358
|
+
- Brand guidelines applied
|
|
359
|
+
- Performance optimizations
|
|
360
|
+
|
|
361
|
+
**Agent:** `frontend-reviewer`
|
|
362
|
+
|
|
363
|
+
---
|
|
364
|
+
|
|
365
|
+
### Architecture Validation
|
|
366
|
+
|
|
367
|
+
**Checks:**
|
|
368
|
+
|
|
369
|
+
- Follows layer architecture
|
|
370
|
+
- Consistent with existing patterns
|
|
371
|
+
- SOLID principles followed
|
|
372
|
+
- No architectural drift
|
|
373
|
+
- Proper separation of concerns
|
|
374
|
+
|
|
375
|
+
**Agent:** `architecture-validator`
|
|
376
|
+
|
|
377
|
+
**Output:**
|
|
378
|
+
|
|
379
|
+
```markdown
|
|
380
|
+
|
|
381
|
+
# Architecture Validation
|
|
382
|
+
|
|
383
|
+
## Summary
|
|
384
|
+
|
|
385
|
+
- Architectural Consistency: ✅ PASS
|
|
386
|
+
- Pattern Adherence: ✅ PASS
|
|
387
|
+
- SOLID Principles: ⚠️ WARNING
|
|
388
|
+
|
|
389
|
+
## Findings
|
|
390
|
+
|
|
391
|
+
### ✅ Layer Architecture
|
|
392
|
+
|
|
393
|
+
All layers properly separated:
|
|
394
|
+
|
|
395
|
+
- Database → Service → API → Frontend
|
|
396
|
+
- No layer violations detected
|
|
397
|
+
|
|
398
|
+
### ✅ Pattern Adherence
|
|
399
|
+
|
|
400
|
+
- All models extend BaseModel ✓
|
|
401
|
+
- All services extend BaseCrudService ✓
|
|
402
|
+
- Routes use factory pattern ✓
|
|
403
|
+
|
|
404
|
+
### ⚠️ Single Responsibility Principle
|
|
405
|
+
|
|
406
|
+
**File:** `BookingService`
|
|
407
|
+
**Issue:** Service handling both booking logic and email notifications
|
|
408
|
+
**Recommendation:** Extract email notifications to separate service
|
|
409
|
+
```text
|
|
410
|
+
|
|
411
|
+
---
|
|
412
|
+
|
|
413
|
+
### Security Review
|
|
414
|
+
|
|
415
|
+
**Checks:**
|
|
416
|
+
|
|
417
|
+
- Authentication implementation
|
|
418
|
+
- Authorization logic
|
|
419
|
+
- Input validation
|
|
420
|
+
- XSS prevention
|
|
421
|
+
- SQL injection prevention
|
|
422
|
+
- CSRF protection
|
|
423
|
+
- Dependency vulnerabilities
|
|
424
|
+
|
|
425
|
+
**Coordinated by:** `tech-lead` using `security-audit` skill
|
|
426
|
+
|
|
427
|
+
**Output:**
|
|
428
|
+
|
|
429
|
+
```markdown
|
|
430
|
+
|
|
431
|
+
# Security Review
|
|
432
|
+
|
|
433
|
+
## Summary
|
|
434
|
+
|
|
435
|
+
- Security Score: 8/10
|
|
436
|
+
- Critical Issues: 0
|
|
437
|
+
- High Issues: 1
|
|
438
|
+
- Medium Issues: 2
|
|
439
|
+
|
|
440
|
+
## Issues
|
|
441
|
+
|
|
442
|
+
### [HIGH] Insufficient input sanitization
|
|
443
|
+
|
|
444
|
+
**File:** `apps/api/src/routes/search.ts`
|
|
445
|
+
**Line:** 23
|
|
446
|
+
**Issue:** User input used directly in query
|
|
447
|
+
**Recommendation:** Use parameterized queries
|
|
448
|
+
**Impact:** Potential SQL injection
|
|
449
|
+
|
|
450
|
+
### [MEDIUM] Missing rate limiting
|
|
451
|
+
|
|
452
|
+
**Endpoint:** `POST /api/bookings`
|
|
453
|
+
**Issue:** No rate limit configured
|
|
454
|
+
**Recommendation:** Add rate limiting middleware
|
|
455
|
+
**Impact:** Potential abuse
|
|
456
|
+
```text
|
|
457
|
+
|
|
458
|
+
---
|
|
459
|
+
|
|
460
|
+
### Performance Review
|
|
461
|
+
|
|
462
|
+
**Checks:**
|
|
463
|
+
|
|
464
|
+
- Bundle sizes
|
|
465
|
+
- Database query performance
|
|
466
|
+
- API response times
|
|
467
|
+
- Core Web Vitals
|
|
468
|
+
- Memory usage
|
|
469
|
+
- Network requests
|
|
470
|
+
|
|
471
|
+
**Coordinated by:** `tech-lead` using `performance-audit` skill
|
|
472
|
+
|
|
473
|
+
**Output:**
|
|
474
|
+
|
|
475
|
+
```markdown
|
|
476
|
+
|
|
477
|
+
# Performance Review
|
|
478
|
+
|
|
479
|
+
## Summary
|
|
480
|
+
|
|
481
|
+
- Bundle Size: ✅ PASS (within limits)
|
|
482
|
+
- Query Performance: ⚠️ WARNING (some slow queries)
|
|
483
|
+
- Core Web Vitals: ✅ PASS
|
|
484
|
+
|
|
485
|
+
## Metrics
|
|
486
|
+
|
|
487
|
+
### Bundle Size
|
|
488
|
+
|
|
489
|
+
- JavaScript: 145 KB (target: < 200 KB) ✅
|
|
490
|
+
- CSS: 12 KB (target: < 20 KB) ✅
|
|
491
|
+
- Total: 157 KB ✅
|
|
492
|
+
|
|
493
|
+
### Database Performance
|
|
494
|
+
|
|
495
|
+
- Average query time: 45ms ✅
|
|
496
|
+
- Slowest query: 320ms ⚠️
|
|
497
|
+
- Query: `SELECT * FROM entitys WHERE ...`
|
|
498
|
+
- Recommendation: Add index on (type, capacity)
|
|
499
|
+
|
|
500
|
+
### Core Web Vitals
|
|
501
|
+
|
|
502
|
+
- LCP: 1.8s (target: < 2.5s) ✅
|
|
503
|
+
- FID: 45ms (target: < 100ms) ✅
|
|
504
|
+
- CLS: 0.05 (target: < 0.1) ✅
|
|
505
|
+
|
|
506
|
+
```text
|
|
507
|
+
|
|
508
|
+
---
|
|
509
|
+
|
|
510
|
+
### Accessibility Review
|
|
511
|
+
|
|
512
|
+
**Checks:**
|
|
513
|
+
|
|
514
|
+
- WCAG AA compliance
|
|
515
|
+
- Keyboard navigation
|
|
516
|
+
- Screen reader support
|
|
517
|
+
- Focus management
|
|
518
|
+
- Color contrast
|
|
519
|
+
- ARIA labels
|
|
520
|
+
|
|
521
|
+
**Agent:** `accessibility-engineer`
|
|
522
|
+
|
|
523
|
+
**Output:**
|
|
524
|
+
|
|
525
|
+
```markdown
|
|
526
|
+
|
|
527
|
+
# Accessibility Review
|
|
528
|
+
|
|
529
|
+
## Summary
|
|
530
|
+
|
|
531
|
+
- WCAG Level: AA
|
|
532
|
+
- Compliance: 95%
|
|
533
|
+
- Issues Found: 3
|
|
534
|
+
|
|
535
|
+
## Issues
|
|
536
|
+
|
|
537
|
+
### [MEDIUM] Missing alt text
|
|
538
|
+
|
|
539
|
+
**Component:** `EntityCard`
|
|
540
|
+
**Issue:** Image missing alt attribute
|
|
541
|
+
**Fix:** Add descriptive alt text
|
|
542
|
+
|
|
543
|
+
### [LOW] Focus not visible
|
|
544
|
+
|
|
545
|
+
**Component:** `BookingForm`
|
|
546
|
+
**Issue:** Focus ring not visible on submit button
|
|
547
|
+
**Fix:** Add focus-visible styles
|
|
548
|
+
```text
|
|
549
|
+
|
|
550
|
+
---
|
|
551
|
+
|
|
552
|
+
## Review Process
|
|
553
|
+
|
|
554
|
+
### Tech Lead Global Review
|
|
555
|
+
|
|
556
|
+
**Duration:** 30 minutes - 1 hour
|
|
557
|
+
|
|
558
|
+
**Agent:** `tech-lead`
|
|
559
|
+
|
|
560
|
+
**Purpose:** Final integration and consistency check
|
|
561
|
+
|
|
562
|
+
**What it checks:**
|
|
563
|
+
|
|
564
|
+
1. **Integration**
|
|
565
|
+
- All parts work together
|
|
566
|
+
- No integration issues
|
|
567
|
+
- Smooth data flow
|
|
568
|
+
|
|
569
|
+
2. **Consistency**
|
|
570
|
+
- Consistent patterns across code
|
|
571
|
+
- Consistent naming
|
|
572
|
+
- Consistent error handling
|
|
573
|
+
|
|
574
|
+
3. **Completeness**
|
|
575
|
+
- All acceptance criteria met
|
|
576
|
+
- All tasks completed
|
|
577
|
+
- Nothing missing
|
|
578
|
+
|
|
579
|
+
4. **Quality**
|
|
580
|
+
- Overall code quality
|
|
581
|
+
- Test quality
|
|
582
|
+
- Documentation quality
|
|
583
|
+
|
|
584
|
+
**Decision:**
|
|
585
|
+
|
|
586
|
+
- ✅ **APPROVED**: Proceed to Phase 4
|
|
587
|
+
- ⚠️ **APPROVED WITH NOTES**: Proceed, address notes in future
|
|
588
|
+
- ❌ **REJECTED**: Fix issues, re-review
|
|
589
|
+
|
|
590
|
+
---
|
|
591
|
+
|
|
592
|
+
## Issue Resolution
|
|
593
|
+
|
|
594
|
+
### Issue Prioritization
|
|
595
|
+
|
|
596
|
+
**Critical:**
|
|
597
|
+
|
|
598
|
+
- Security vulnerabilities
|
|
599
|
+
- Data loss risks
|
|
600
|
+
- System crashes
|
|
601
|
+
- **Action:** MUST FIX before proceeding
|
|
602
|
+
|
|
603
|
+
**High:**
|
|
604
|
+
|
|
605
|
+
- Core functionality broken
|
|
606
|
+
- Major UX issues
|
|
607
|
+
- Performance problems
|
|
608
|
+
- **Action:** SHOULD FIX before proceeding
|
|
609
|
+
|
|
610
|
+
**Medium:**
|
|
611
|
+
|
|
612
|
+
- Minor functionality issues
|
|
613
|
+
- Small UX improvements
|
|
614
|
+
- Code quality issues
|
|
615
|
+
- **Action:** Document, fix if time permits
|
|
616
|
+
|
|
617
|
+
**Low:**
|
|
618
|
+
|
|
619
|
+
- Nice-to-have improvements
|
|
620
|
+
- Minor refactoring
|
|
621
|
+
- **Action:** Document as technical debt
|
|
622
|
+
|
|
623
|
+
### Issue Tracking
|
|
624
|
+
|
|
625
|
+
**Format in TODOs.md:**
|
|
626
|
+
|
|
627
|
+
```markdown
|
|
628
|
+
|
|
629
|
+
## Issues Found During Validation
|
|
630
|
+
|
|
631
|
+
| ID | Severity | Description | Status | Owner |
|
|
632
|
+
|----|----------|-------------|--------|-------|
|
|
633
|
+
| V-001 | HIGH | Missing auth check | Fixed | @backend |
|
|
634
|
+
| V-002 | MEDIUM | Slow query | Fixed | @db-engineer |
|
|
635
|
+
| V-003 | LOW | Minor UI alignment | Deferred | - |
|
|
636
|
+
```text
|
|
637
|
+
|
|
638
|
+
### Resolution Process
|
|
639
|
+
|
|
640
|
+
1. **Log Issue**
|
|
641
|
+
- Add to TODOs.md
|
|
642
|
+
- Assign severity
|
|
643
|
+
- Assign owner
|
|
644
|
+
|
|
645
|
+
2. **Fix Issue**
|
|
646
|
+
- Write test that exposes issue
|
|
647
|
+
- Implement fix
|
|
648
|
+
- Verify test passes
|
|
649
|
+
- Verify no regressions
|
|
650
|
+
|
|
651
|
+
3. **Re-validate**
|
|
652
|
+
- QA re-tests
|
|
653
|
+
- Run quality checks
|
|
654
|
+
- Verify fix works
|
|
655
|
+
|
|
656
|
+
4. **Update Status**
|
|
657
|
+
- Mark as fixed
|
|
658
|
+
- Document solution
|
|
659
|
+
- Close issue
|
|
660
|
+
|
|
661
|
+
5. **🔥 Update State Files**
|
|
662
|
+
|
|
663
|
+
After fixing and validating each issue:
|
|
664
|
+
|
|
665
|
+
a. **Update TODOs.md:**
|
|
666
|
+
```markdown
|
|
667
|
+
| V-001 | HIGH | Missing auth check | ✅ Fixed | @backend |
|
|
668
|
+
```
|
|
669
|
+
|
|
670
|
+
b. **Update .checkpoint.json:**
|
|
671
|
+
|
|
672
|
+
```json
|
|
673
|
+
{
|
|
674
|
+
"currentPhase": "phase-3-validation",
|
|
675
|
+
"validationIssues": {
|
|
676
|
+
"V-001": {
|
|
677
|
+
"severity": "HIGH",
|
|
678
|
+
"status": "fixed",
|
|
679
|
+
"fixed": "2024-01-15T14:30:00Z"
|
|
680
|
+
}
|
|
681
|
+
},
|
|
682
|
+
"progress": {
|
|
683
|
+
"totalIssues": 3,
|
|
684
|
+
"fixedIssues": 2,
|
|
685
|
+
"deferredIssues": 1
|
|
686
|
+
}
|
|
687
|
+
}
|
|
688
|
+
```
|
|
689
|
+
|
|
690
|
+
c. **Commit validation updates:**
|
|
691
|
+
|
|
692
|
+
```bash
|
|
693
|
+
git add .claude/sessions/planning/{feature}/TODOs.md
|
|
694
|
+
git add .claude/sessions/planning/{feature}/.checkpoint.json
|
|
695
|
+
git commit -m "docs: validation - V-001 fixed (2/3 issues resolved)"
|
|
696
|
+
```
|
|
697
|
+
|
|
698
|
+
---
|
|
699
|
+
|
|
700
|
+
## Phase Completion
|
|
701
|
+
|
|
702
|
+
### 🔥 CRITICAL: Update State When Phase 3 Completes
|
|
703
|
+
|
|
704
|
+
When ALL validation passes and you're ready for Phase 4:
|
|
705
|
+
|
|
706
|
+
1. **Update .checkpoint.json:**
|
|
707
|
+
|
|
708
|
+
```json
|
|
709
|
+
{
|
|
710
|
+
"currentPhase": "phase-4-finalization",
|
|
711
|
+
"phases": {
|
|
712
|
+
"phase-3-validation": {
|
|
713
|
+
"status": "completed",
|
|
714
|
+
"started": "2024-01-15T12:00:00Z",
|
|
715
|
+
"completed": "2024-01-15T16:00:00Z",
|
|
716
|
+
"duration": "4h",
|
|
717
|
+
"issuesFound": 3,
|
|
718
|
+
"issuesFixed": 2,
|
|
719
|
+
"issuesDeferred": 1
|
|
720
|
+
}
|
|
721
|
+
}
|
|
722
|
+
}
|
|
723
|
+
```
|
|
724
|
+
|
|
725
|
+
2. **Update TODOs.md:**
|
|
726
|
+
|
|
727
|
+
```markdown
|
|
728
|
+
## Phase 3: Validation ✅
|
|
729
|
+
|
|
730
|
+
- Status: Completed
|
|
731
|
+
- Duration: 4 hours
|
|
732
|
+
- Issues Found: 3
|
|
733
|
+
- Issues Fixed: 2
|
|
734
|
+
- Issues Deferred: 1 (documented in tech debt)
|
|
735
|
+
- Completed: 2024-01-15 16:00:00
|
|
736
|
+
```
|
|
737
|
+
|
|
738
|
+
3. **Commit phase completion:**
|
|
739
|
+
|
|
740
|
+
```bash
|
|
741
|
+
git add .claude/sessions/planning/{feature}/.checkpoint.json
|
|
742
|
+
git add .claude/sessions/planning/{feature}/TODOs.md
|
|
743
|
+
git commit -m "docs: Phase 3 (Validation) completed - 2/3 issues fixed"
|
|
744
|
+
```
|
|
745
|
+
|
|
746
|
+
---
|
|
747
|
+
|
|
748
|
+
## Summary Checklist
|
|
749
|
+
|
|
750
|
+
Before proceeding to Phase 4:
|
|
751
|
+
|
|
752
|
+
### QA Validation
|
|
753
|
+
|
|
754
|
+
- [ ] All acceptance criteria tested
|
|
755
|
+
- [ ] All pass or documented exceptions
|
|
756
|
+
- [ ] UI/UX validated
|
|
757
|
+
- [ ] Accessibility validated
|
|
758
|
+
- [ ] Performance validated
|
|
759
|
+
- [ ] Security validated
|
|
760
|
+
|
|
761
|
+
### Quality Checks
|
|
762
|
+
|
|
763
|
+
- [ ] Lint passing (zero errors)
|
|
764
|
+
- [ ] TypeCheck passing (zero errors)
|
|
765
|
+
- [ ] Tests passing (100%)
|
|
766
|
+
- [ ] Coverage ≥ 90%
|
|
767
|
+
|
|
768
|
+
### Code Reviews
|
|
769
|
+
|
|
770
|
+
- [ ] Backend review complete
|
|
771
|
+
- [ ] Frontend review complete
|
|
772
|
+
- [ ] Architecture validation complete
|
|
773
|
+
- [ ] All critical/high issues fixed
|
|
774
|
+
- [ ] Medium/low documented
|
|
775
|
+
|
|
776
|
+
### Specialized Reviews
|
|
777
|
+
|
|
778
|
+
- [ ] Security review complete
|
|
779
|
+
- [ ] Performance review complete
|
|
780
|
+
- [ ] Accessibility review complete
|
|
781
|
+
- [ ] No critical issues
|
|
782
|
+
|
|
783
|
+
### Final Approval
|
|
784
|
+
|
|
785
|
+
- [ ] Tech lead reviewed
|
|
786
|
+
- [ ] Tech lead approved
|
|
787
|
+
- [ ] User notified of completion
|
|
788
|
+
- [ ] Ready for Phase 4
|
|
789
|
+
|
|
790
|
+
---
|
|
791
|
+
|
|
792
|
+
**Remember: Quality is non-negotiable. Fix issues before proceeding.**
|