@su-record/vibe 2.6.27 → 2.6.28

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 (246) hide show
  1. package/CLAUDE.md +202 -202
  2. package/LICENSE +21 -21
  3. package/README.md +267 -267
  4. package/agents/architect-low.md +41 -41
  5. package/agents/architect-medium.md +59 -59
  6. package/agents/architect.md +80 -80
  7. package/agents/build-error-resolver.md +115 -115
  8. package/agents/compounder.md +261 -261
  9. package/agents/diagrammer.md +178 -178
  10. package/agents/docs/api-documenter.md +99 -99
  11. package/agents/docs/changelog-writer.md +93 -93
  12. package/agents/e2e-tester.md +266 -266
  13. package/agents/explorer-low.md +42 -42
  14. package/agents/explorer-medium.md +59 -59
  15. package/agents/explorer.md +48 -48
  16. package/agents/implementer-low.md +43 -43
  17. package/agents/implementer-medium.md +52 -52
  18. package/agents/implementer.md +54 -54
  19. package/agents/planning/requirements-analyst.md +84 -84
  20. package/agents/planning/ux-advisor.md +83 -83
  21. package/agents/qa/acceptance-tester.md +86 -86
  22. package/agents/qa/edge-case-finder.md +93 -93
  23. package/agents/refactor-cleaner.md +143 -143
  24. package/agents/research/best-practices-agent.md +199 -199
  25. package/agents/research/codebase-patterns-agent.md +157 -157
  26. package/agents/research/framework-docs-agent.md +188 -188
  27. package/agents/research/security-advisory-agent.md +213 -213
  28. package/agents/review/architecture-reviewer.md +107 -107
  29. package/agents/review/complexity-reviewer.md +116 -116
  30. package/agents/review/data-integrity-reviewer.md +88 -88
  31. package/agents/review/git-history-reviewer.md +103 -103
  32. package/agents/review/performance-reviewer.md +86 -86
  33. package/agents/review/python-reviewer.md +150 -150
  34. package/agents/review/rails-reviewer.md +139 -139
  35. package/agents/review/react-reviewer.md +144 -144
  36. package/agents/review/security-reviewer.md +80 -80
  37. package/agents/review/simplicity-reviewer.md +140 -140
  38. package/agents/review/test-coverage-reviewer.md +116 -116
  39. package/agents/review/typescript-reviewer.md +127 -127
  40. package/agents/searcher.md +54 -54
  41. package/agents/simplifier.md +120 -120
  42. package/agents/tester.md +49 -49
  43. package/agents/ui-previewer.md +268 -268
  44. package/commands/vibe.analyze.md +356 -356
  45. package/commands/vibe.reason.md +329 -329
  46. package/commands/vibe.review.md +423 -423
  47. package/commands/vibe.run.md +1313 -1313
  48. package/commands/vibe.spec.md +1054 -1054
  49. package/commands/vibe.spec.review.md +412 -412
  50. package/commands/vibe.trace.md +161 -161
  51. package/commands/vibe.utils.md +376 -376
  52. package/commands/vibe.verify.md +375 -375
  53. package/dist/cli/collaborator.js +52 -52
  54. package/dist/cli/detect.js +32 -32
  55. package/dist/cli/hud.js +20 -20
  56. package/dist/cli/index.js +112 -112
  57. package/dist/cli/llm.js +144 -144
  58. package/dist/cli/mcp.d.ts +49 -0
  59. package/dist/cli/mcp.d.ts.map +1 -0
  60. package/dist/cli/mcp.js +169 -0
  61. package/dist/cli/mcp.js.map +1 -0
  62. package/dist/cli/postinstall.d.ts.map +1 -1
  63. package/dist/cli/postinstall.js +886 -858
  64. package/dist/cli/postinstall.js.map +1 -1
  65. package/dist/cli/setup/GlobalInstaller.d.ts +6 -0
  66. package/dist/cli/setup/GlobalInstaller.d.ts.map +1 -1
  67. package/dist/cli/setup/GlobalInstaller.js +26 -0
  68. package/dist/cli/setup/GlobalInstaller.js.map +1 -1
  69. package/dist/lib/DeepInit.js +24 -24
  70. package/dist/lib/IterationTracker.js +11 -11
  71. package/dist/lib/PythonParser.js +108 -108
  72. package/dist/lib/ReviewRace.js +96 -96
  73. package/dist/lib/SkillFrontmatter.js +28 -28
  74. package/dist/lib/SkillQualityGate.js +9 -9
  75. package/dist/lib/SkillRepository.js +159 -159
  76. package/dist/lib/UltraQA.js +77 -77
  77. package/dist/lib/gemini-api.js +5 -5
  78. package/dist/lib/gemini-mcp.d.ts +10 -0
  79. package/dist/lib/gemini-mcp.d.ts.map +1 -0
  80. package/dist/lib/gemini-mcp.js +353 -0
  81. package/dist/lib/gemini-mcp.js.map +1 -0
  82. package/dist/lib/gpt-api.js +4 -4
  83. package/dist/lib/gpt-mcp.d.ts +10 -0
  84. package/dist/lib/gpt-mcp.d.ts.map +1 -0
  85. package/dist/lib/gpt-mcp.js +352 -0
  86. package/dist/lib/gpt-mcp.js.map +1 -0
  87. package/dist/lib/memory/KnowledgeGraph.js +4 -4
  88. package/dist/lib/memory/MemorySearch.js +43 -43
  89. package/dist/lib/memory/MemoryStorage.js +130 -130
  90. package/dist/lib/memory/ObservationStore.js +28 -28
  91. package/dist/lib/memory/SessionRAGRetriever.js +7 -7
  92. package/dist/lib/memory/SessionRAGStore.js +216 -216
  93. package/dist/lib/memory/SessionSummarizer.js +9 -9
  94. package/dist/orchestrator/AgentManager.js +12 -12
  95. package/dist/orchestrator/MultiLlmResearch.js +8 -8
  96. package/dist/orchestrator/SmartRouter.js +11 -11
  97. package/dist/orchestrator/SwarmOrchestrator.test.js +16 -16
  98. package/dist/orchestrator/parallelResearch.js +24 -24
  99. package/dist/tools/analytics/getUsageAnalytics.d.ts +10 -0
  100. package/dist/tools/analytics/getUsageAnalytics.d.ts.map +1 -0
  101. package/dist/tools/analytics/getUsageAnalytics.js +246 -0
  102. package/dist/tools/analytics/getUsageAnalytics.js.map +1 -0
  103. package/dist/tools/analytics/index.d.ts +5 -0
  104. package/dist/tools/analytics/index.d.ts.map +1 -0
  105. package/dist/tools/analytics/index.js +5 -0
  106. package/dist/tools/analytics/index.js.map +1 -0
  107. package/dist/tools/convention/analyzeComplexity.test.js +115 -115
  108. package/dist/tools/convention/getCodingGuide.d.ts +7 -0
  109. package/dist/tools/convention/getCodingGuide.d.ts.map +1 -0
  110. package/dist/tools/convention/getCodingGuide.js +69 -0
  111. package/dist/tools/convention/getCodingGuide.js.map +1 -0
  112. package/dist/tools/convention/validateCodeQuality.test.js +104 -104
  113. package/dist/tools/planning/analyzeRequirements.d.ts +9 -0
  114. package/dist/tools/planning/analyzeRequirements.d.ts.map +1 -0
  115. package/dist/tools/planning/analyzeRequirements.js +171 -0
  116. package/dist/tools/planning/analyzeRequirements.js.map +1 -0
  117. package/dist/tools/planning/createUserStories.d.ts +9 -0
  118. package/dist/tools/planning/createUserStories.d.ts.map +1 -0
  119. package/dist/tools/planning/createUserStories.js +124 -0
  120. package/dist/tools/planning/createUserStories.js.map +1 -0
  121. package/dist/tools/planning/featureRoadmap.d.ts +10 -0
  122. package/dist/tools/planning/featureRoadmap.d.ts.map +1 -0
  123. package/dist/tools/planning/featureRoadmap.js +207 -0
  124. package/dist/tools/planning/featureRoadmap.js.map +1 -0
  125. package/dist/tools/planning/generatePrd.d.ts +11 -0
  126. package/dist/tools/planning/generatePrd.d.ts.map +1 -0
  127. package/dist/tools/planning/generatePrd.js +161 -0
  128. package/dist/tools/planning/generatePrd.js.map +1 -0
  129. package/dist/tools/planning/index.d.ts +8 -0
  130. package/dist/tools/planning/index.d.ts.map +1 -0
  131. package/dist/tools/planning/index.js +8 -0
  132. package/dist/tools/planning/index.js.map +1 -0
  133. package/dist/tools/prompt/analyzePrompt.d.ts +7 -0
  134. package/dist/tools/prompt/analyzePrompt.d.ts.map +1 -0
  135. package/dist/tools/prompt/analyzePrompt.js +150 -0
  136. package/dist/tools/prompt/analyzePrompt.js.map +1 -0
  137. package/dist/tools/prompt/enhancePrompt.d.ts +8 -0
  138. package/dist/tools/prompt/enhancePrompt.d.ts.map +1 -0
  139. package/dist/tools/prompt/enhancePrompt.js +110 -0
  140. package/dist/tools/prompt/enhancePrompt.js.map +1 -0
  141. package/dist/tools/prompt/enhancePromptGemini.d.ts +8 -0
  142. package/dist/tools/prompt/enhancePromptGemini.d.ts.map +1 -0
  143. package/dist/tools/prompt/enhancePromptGemini.js +332 -0
  144. package/dist/tools/prompt/enhancePromptGemini.js.map +1 -0
  145. package/dist/tools/prompt/index.d.ts +7 -0
  146. package/dist/tools/prompt/index.d.ts.map +1 -0
  147. package/dist/tools/prompt/index.js +7 -0
  148. package/dist/tools/prompt/index.js.map +1 -0
  149. package/dist/tools/reasoning/applyReasoningFramework.d.ts +8 -0
  150. package/dist/tools/reasoning/applyReasoningFramework.d.ts.map +1 -0
  151. package/dist/tools/reasoning/applyReasoningFramework.js +266 -0
  152. package/dist/tools/reasoning/applyReasoningFramework.js.map +1 -0
  153. package/dist/tools/reasoning/index.d.ts +5 -0
  154. package/dist/tools/reasoning/index.d.ts.map +1 -0
  155. package/dist/tools/reasoning/index.js +5 -0
  156. package/dist/tools/reasoning/index.js.map +1 -0
  157. package/dist/tools/spec/prdParser.test.js +171 -171
  158. package/dist/tools/spec/specGenerator.js +169 -169
  159. package/dist/tools/spec/traceabilityMatrix.js +64 -64
  160. package/dist/tools/spec/traceabilityMatrix.test.js +28 -28
  161. package/dist/tools/thinking/analyzeProblem.d.ts +7 -0
  162. package/dist/tools/thinking/analyzeProblem.d.ts.map +1 -0
  163. package/dist/tools/thinking/analyzeProblem.js +55 -0
  164. package/dist/tools/thinking/analyzeProblem.js.map +1 -0
  165. package/dist/tools/thinking/breakDownProblem.d.ts +8 -0
  166. package/dist/tools/thinking/breakDownProblem.d.ts.map +1 -0
  167. package/dist/tools/thinking/breakDownProblem.js +145 -0
  168. package/dist/tools/thinking/breakDownProblem.js.map +1 -0
  169. package/dist/tools/thinking/createThinkingChain.d.ts +7 -0
  170. package/dist/tools/thinking/createThinkingChain.d.ts.map +1 -0
  171. package/dist/tools/thinking/createThinkingChain.js +44 -0
  172. package/dist/tools/thinking/createThinkingChain.js.map +1 -0
  173. package/dist/tools/thinking/formatAsPlan.d.ts +9 -0
  174. package/dist/tools/thinking/formatAsPlan.d.ts.map +1 -0
  175. package/dist/tools/thinking/formatAsPlan.js +78 -0
  176. package/dist/tools/thinking/formatAsPlan.js.map +1 -0
  177. package/dist/tools/thinking/index.d.ts +10 -0
  178. package/dist/tools/thinking/index.d.ts.map +1 -0
  179. package/dist/tools/thinking/index.js +10 -0
  180. package/dist/tools/thinking/index.js.map +1 -0
  181. package/dist/tools/thinking/stepByStepAnalysis.d.ts +8 -0
  182. package/dist/tools/thinking/stepByStepAnalysis.d.ts.map +1 -0
  183. package/dist/tools/thinking/stepByStepAnalysis.js +63 -0
  184. package/dist/tools/thinking/stepByStepAnalysis.js.map +1 -0
  185. package/dist/tools/thinking/thinkAloudProcess.d.ts +8 -0
  186. package/dist/tools/thinking/thinkAloudProcess.d.ts.map +1 -0
  187. package/dist/tools/thinking/thinkAloudProcess.js +80 -0
  188. package/dist/tools/thinking/thinkAloudProcess.js.map +1 -0
  189. package/hooks/hooks.json +115 -115
  190. package/hooks/scripts/code-check.js +70 -70
  191. package/hooks/scripts/code-review.js +22 -22
  192. package/hooks/scripts/complexity.js +22 -22
  193. package/hooks/scripts/compound.js +23 -23
  194. package/hooks/scripts/context-save.js +53 -53
  195. package/hooks/scripts/gemini-ui-gen.js +281 -281
  196. package/hooks/scripts/generate-brand-assets.js +474 -474
  197. package/hooks/scripts/hud-multiline.js +262 -262
  198. package/hooks/scripts/hud-status.js +291 -291
  199. package/hooks/scripts/keyword-detector.js +214 -214
  200. package/hooks/scripts/llm-orchestrate.js +171 -171
  201. package/hooks/scripts/post-edit.js +97 -97
  202. package/hooks/scripts/post-tool-verify.js +210 -210
  203. package/hooks/scripts/pre-tool-guard.js +125 -125
  204. package/hooks/scripts/prompt-dispatcher.js +161 -161
  205. package/hooks/scripts/recall.js +22 -22
  206. package/hooks/scripts/session-start.js +30 -30
  207. package/hooks/scripts/skill-injector.js +191 -191
  208. package/hooks/scripts/utils.js +97 -97
  209. package/languages/csharp-unity.md +515 -515
  210. package/languages/gdscript-godot.md +470 -470
  211. package/languages/ruby-rails.md +489 -489
  212. package/languages/typescript-angular.md +433 -433
  213. package/languages/typescript-astro.md +416 -416
  214. package/languages/typescript-electron.md +406 -406
  215. package/languages/typescript-nestjs.md +524 -524
  216. package/languages/typescript-svelte.md +407 -407
  217. package/languages/typescript-tauri.md +365 -365
  218. package/package.json +84 -84
  219. package/skills/brand-assets.md +141 -141
  220. package/skills/commerce-patterns.md +361 -361
  221. package/skills/context7-usage.md +102 -102
  222. package/skills/e2e-commerce.md +304 -304
  223. package/skills/frontend-design.md +92 -92
  224. package/skills/git-worktree.md +181 -181
  225. package/skills/parallel-research.md +77 -77
  226. package/skills/priority-todos.md +239 -239
  227. package/skills/seo-checklist.md +244 -244
  228. package/skills/tool-fallback.md +190 -190
  229. package/skills/vibe-capabilities.md +161 -161
  230. package/vibe/constitution.md +227 -227
  231. package/vibe/rules/core/communication-guide.md +98 -98
  232. package/vibe/rules/core/development-philosophy.md +52 -52
  233. package/vibe/rules/core/quick-start.md +102 -102
  234. package/vibe/rules/quality/bdd-contract-testing.md +393 -393
  235. package/vibe/rules/quality/checklist.md +276 -276
  236. package/vibe/rules/quality/testing-strategy.md +440 -440
  237. package/vibe/rules/standards/anti-patterns.md +541 -541
  238. package/vibe/rules/standards/code-structure.md +291 -291
  239. package/vibe/rules/standards/complexity-metrics.md +313 -313
  240. package/vibe/rules/standards/naming-conventions.md +198 -198
  241. package/vibe/setup.sh +31 -31
  242. package/vibe/templates/constitution-template.md +252 -252
  243. package/vibe/templates/contract-backend-template.md +526 -526
  244. package/vibe/templates/contract-frontend-template.md +599 -599
  245. package/vibe/templates/feature-template.md +96 -96
  246. package/vibe/templates/spec-template.md +221 -221
@@ -1,276 +1,276 @@
1
- # Final Verification Checklist
2
-
3
- ## 5.1 Enhanced Code Quality Check
4
-
5
- ### Top Priority
6
-
7
- ```typescript
8
- const topPriority = {
9
- obeysTheGoldenRule: true, // ✅ Only modify requested scope
10
- preservesWorkingCode: true, // ✅ Preserve existing code
11
- respectsExistingStyle: true, // ✅ Maintain existing style
12
- };
13
- ```
14
-
15
- ### Type Safety
16
-
17
- ```typescript
18
- const typeSafety = {
19
- noAnyType: true, // ✅ No any type usage
20
- strictNullCheck: true, // ✅ null/undefined check
21
- properTypeGuards: true, // ✅ Use type guards
22
- genericTypesWhenNeeded: true, // ✅ Use generic types
23
- };
24
- ```
25
-
26
- ### Code Structure & Complexity
27
-
28
- ```typescript
29
- const codeStructure = {
30
- singleResponsibility: true, // ✅ Single Responsibility Principle
31
- functionUnder30Lines: true, // ✅ Functions ≤30 lines (recommended), 50 allowed
32
- maxNesting3Levels: true, // ✅ Max nesting 3 levels
33
- cyclomaticComplexity: 10, // ✅ Cyclomatic complexity ≤ 10
34
- cognitiveComplexity: 15, // ✅ Cognitive complexity ≤ 15
35
- maxParameters: 5, // ✅ Max 5 parameters
36
- componentUnder50Lines: true, // ✅ Component JSX ≤50 lines
37
- };
38
- ```
39
-
40
- ### Halstead Metrics
41
-
42
- ```typescript
43
- const halsteadMetrics = {
44
- vocabulary: true, // ✅ Operator/operand diversity
45
- difficulty: true, // ✅ Code comprehension difficulty
46
- effort: true, // ✅ Mental effort
47
- lowComplexity: true, // ✅ Maintain low complexity
48
- };
49
- ```
50
-
51
- ### Coupling & Cohesion
52
-
53
- ```typescript
54
- const couplingCohesion = {
55
- looseCoupling: true, // ✅ Loose coupling (≤ 7 dependencies)
56
- highCohesion: true, // ✅ High cohesion (group related functions only)
57
- noCircularDeps: true, // ✅ No circular dependencies
58
- dependencyInjection: true, // ✅ Dependency injection pattern
59
- };
60
- ```
61
-
62
- ### Error Handling
63
-
64
- ```typescript
65
- const errorHandling = {
66
- hasErrorHandling: true, // ✅ try-catch/error state
67
- hasLoadingState: true, // ✅ Loading state
68
- hasFallbackUI: true, // ✅ Fallback UI
69
- properErrorMessages: true, // ✅ Clear error messages
70
- errorBoundaries: true, // ✅ Use Error Boundaries
71
- };
72
- ```
73
-
74
- ### Accessibility
75
-
76
- ```typescript
77
- const accessibility = {
78
- hasAriaLabels: true, // ✅ ARIA labels
79
- keyboardAccessible: true, // ✅ Keyboard accessibility
80
- semanticHTML: true, // ✅ Semantic HTML
81
- focusManagement: true, // ✅ Focus management
82
- screenReaderFriendly: true, // ✅ Screen reader support
83
- };
84
- ```
85
-
86
- ### Performance
87
-
88
- ```typescript
89
- const performance = {
90
- noUnnecessaryRenders: true, // ✅ Prevent unnecessary re-renders
91
- memoizedExpensive: true, // ✅ Memoize expensive operations
92
- lazyLoading: true, // ✅ Lazy loading
93
- batchOperations: true, // ✅ Batch API calls
94
- optimizedImages: true, // ✅ Optimized images
95
- codesplitting: true, // ✅ Code splitting
96
- };
97
- ```
98
-
99
- ### Maintainability
100
-
101
- ```typescript
102
- const maintainability = {
103
- hasJSDoc: true, // ✅ Document key functions
104
- noMagicNumbers: true, // ✅ No magic numbers
105
- consistentNaming: true, // ✅ Consistent naming
106
- properComments: true, // ✅ Appropriate comments
107
- testable: true, // ✅ Testable structure
108
- };
109
- ```
110
-
111
- ### Security
112
-
113
- ```typescript
114
- const security = {
115
- noHardcodedSecrets: true, // ✅ No hardcoded secrets
116
- inputValidation: true, // ✅ Input validation
117
- xssPrevention: true, // ✅ XSS prevention
118
- csrfProtection: true, // ✅ CSRF protection
119
- sqlInjectionPrevention: true, // ✅ SQL Injection prevention
120
- };
121
- ```
122
-
123
- ## 5.2 Project Check
124
-
125
- ### Dependency Management
126
-
127
- ```typescript
128
- const dependencies = {
129
- noUnusedDeps: true, // ✅ No unused packages
130
- noDuplicateDeps: true, // ✅ No duplicate functionality packages
131
- upToDateDeps: true, // ✅ Keep up to date
132
- securePackages: true, // ✅ No security vulnerabilities
133
- };
134
- ```
135
-
136
- ### File Structure
137
-
138
- ```typescript
139
- const fileStructure = {
140
- consistentStructure: true, // ✅ Consistent folder structure
141
- noCircularDeps: true, // ✅ No circular references
142
- logicalGrouping: true, // ✅ Logical grouping
143
- clearNaming: true, // ✅ Clear file names
144
- };
145
- ```
146
-
147
- ### Bundle Optimization
148
-
149
- ```typescript
150
- const bundleOptimization = {
151
- treeShaking: true, // ✅ Tree shaking
152
- codeSplitting: true, // ✅ Code splitting
153
- lazyLoading: true, // ✅ Lazy loading
154
- minification: true, // ✅ Minification
155
- compression: true, // ✅ Compression (gzip/brotli)
156
- };
157
- ```
158
-
159
- ## Checklist Usage
160
-
161
- ### Before Writing Code
162
-
163
- ```text
164
- [ ] Clearly understand requirements
165
- [ ] Identify existing code patterns
166
- [ ] Confirm impact scope
167
- [ ] Establish test plan
168
- ```
169
-
170
- ### While Writing Code
171
-
172
- ```text
173
- [ ] Follow Single Responsibility Principle
174
- [ ] Keep function length ≤30 lines (max 50)
175
- [ ] Nesting depth ≤3 levels
176
- [ ] Extract magic numbers to constants
177
- [ ] Ensure type safety
178
- ```
179
-
180
- ### After Writing Code
181
-
182
- ```text
183
- [ ] Type check passes
184
- [ ] No linter warnings
185
- [ ] Tests written and passing
186
- [ ] Documentation complete
187
- [ ] Ready for code review
188
- ```
189
-
190
- ### Before Commit
191
-
192
- ```text
193
- [ ] Remove unnecessary code
194
- [ ] Remove console logs
195
- [ ] Clean up comments
196
- [ ] Apply formatting
197
- [ ] Write meaningful commit message
198
- ```
199
-
200
- ## Automated Verification Tools
201
-
202
- ### ESLint Configuration
203
-
204
- ```javascript
205
- // .eslintrc.js
206
- module.exports = {
207
- rules: {
208
- 'complexity': ['error', 10],
209
- 'max-depth': ['error', 3],
210
- 'max-lines-per-function': ['error', 50],
211
- 'max-params': ['error', 5],
212
- 'no-magic-numbers': ['warn', { ignore: [0, 1, -1] }],
213
- '@typescript-eslint/no-explicit-any': 'error',
214
- },
215
- };
216
- ```
217
-
218
- ### TypeScript Configuration
219
-
220
- ```json
221
- // tsconfig.json
222
- {
223
- "compilerOptions": {
224
- "strict": true,
225
- "noImplicitAny": true,
226
- "strictNullChecks": true,
227
- "noUnusedLocals": true,
228
- "noUnusedParameters": true
229
- }
230
- }
231
- ```
232
-
233
- ### Git Hooks (pre-commit)
234
-
235
- ```bash
236
- #!/bin/sh
237
- # .husky/pre-commit
238
-
239
- # Type check
240
- npm run type-check
241
-
242
- # Linting
243
- npm run lint
244
-
245
- # Tests
246
- npm run test
247
-
248
- # Format check
249
- npm run format:check
250
- ```
251
-
252
- ## Grade Criteria
253
-
254
- | Grade | Score | Description |
255
- |-------|-------|-------------|
256
- | A+ | 95-100 | Perfect code quality |
257
- | A | 90-94 | Excellent quality |
258
- | B+ | 85-89 | Good quality |
259
- | B | 80-84 | Improvement recommended |
260
- | C+ | 75-79 | Improvement needed |
261
- | C | 70-74 | Immediate improvement needed |
262
- | F | < 70 | Refactoring required |
263
-
264
- ## Quick Check (1 minute)
265
-
266
- ```text
267
- ✅ Only modified requested scope?
268
- ✅ No any types?
269
- ✅ Functions ≤30 lines? (max 50)
270
- ✅ Nesting ≤3 levels?
271
- ✅ Error handling implemented?
272
- ✅ Magic numbers extracted to constants?
273
- ✅ Tests written?
274
- ```
275
-
276
- All 7 Yes → Ready to deploy ✅
1
+ # Final Verification Checklist
2
+
3
+ ## 5.1 Enhanced Code Quality Check
4
+
5
+ ### Top Priority
6
+
7
+ ```typescript
8
+ const topPriority = {
9
+ obeysTheGoldenRule: true, // ✅ Only modify requested scope
10
+ preservesWorkingCode: true, // ✅ Preserve existing code
11
+ respectsExistingStyle: true, // ✅ Maintain existing style
12
+ };
13
+ ```
14
+
15
+ ### Type Safety
16
+
17
+ ```typescript
18
+ const typeSafety = {
19
+ noAnyType: true, // ✅ No any type usage
20
+ strictNullCheck: true, // ✅ null/undefined check
21
+ properTypeGuards: true, // ✅ Use type guards
22
+ genericTypesWhenNeeded: true, // ✅ Use generic types
23
+ };
24
+ ```
25
+
26
+ ### Code Structure & Complexity
27
+
28
+ ```typescript
29
+ const codeStructure = {
30
+ singleResponsibility: true, // ✅ Single Responsibility Principle
31
+ functionUnder30Lines: true, // ✅ Functions ≤30 lines (recommended), 50 allowed
32
+ maxNesting3Levels: true, // ✅ Max nesting 3 levels
33
+ cyclomaticComplexity: 10, // ✅ Cyclomatic complexity ≤ 10
34
+ cognitiveComplexity: 15, // ✅ Cognitive complexity ≤ 15
35
+ maxParameters: 5, // ✅ Max 5 parameters
36
+ componentUnder50Lines: true, // ✅ Component JSX ≤50 lines
37
+ };
38
+ ```
39
+
40
+ ### Halstead Metrics
41
+
42
+ ```typescript
43
+ const halsteadMetrics = {
44
+ vocabulary: true, // ✅ Operator/operand diversity
45
+ difficulty: true, // ✅ Code comprehension difficulty
46
+ effort: true, // ✅ Mental effort
47
+ lowComplexity: true, // ✅ Maintain low complexity
48
+ };
49
+ ```
50
+
51
+ ### Coupling & Cohesion
52
+
53
+ ```typescript
54
+ const couplingCohesion = {
55
+ looseCoupling: true, // ✅ Loose coupling (≤ 7 dependencies)
56
+ highCohesion: true, // ✅ High cohesion (group related functions only)
57
+ noCircularDeps: true, // ✅ No circular dependencies
58
+ dependencyInjection: true, // ✅ Dependency injection pattern
59
+ };
60
+ ```
61
+
62
+ ### Error Handling
63
+
64
+ ```typescript
65
+ const errorHandling = {
66
+ hasErrorHandling: true, // ✅ try-catch/error state
67
+ hasLoadingState: true, // ✅ Loading state
68
+ hasFallbackUI: true, // ✅ Fallback UI
69
+ properErrorMessages: true, // ✅ Clear error messages
70
+ errorBoundaries: true, // ✅ Use Error Boundaries
71
+ };
72
+ ```
73
+
74
+ ### Accessibility
75
+
76
+ ```typescript
77
+ const accessibility = {
78
+ hasAriaLabels: true, // ✅ ARIA labels
79
+ keyboardAccessible: true, // ✅ Keyboard accessibility
80
+ semanticHTML: true, // ✅ Semantic HTML
81
+ focusManagement: true, // ✅ Focus management
82
+ screenReaderFriendly: true, // ✅ Screen reader support
83
+ };
84
+ ```
85
+
86
+ ### Performance
87
+
88
+ ```typescript
89
+ const performance = {
90
+ noUnnecessaryRenders: true, // ✅ Prevent unnecessary re-renders
91
+ memoizedExpensive: true, // ✅ Memoize expensive operations
92
+ lazyLoading: true, // ✅ Lazy loading
93
+ batchOperations: true, // ✅ Batch API calls
94
+ optimizedImages: true, // ✅ Optimized images
95
+ codesplitting: true, // ✅ Code splitting
96
+ };
97
+ ```
98
+
99
+ ### Maintainability
100
+
101
+ ```typescript
102
+ const maintainability = {
103
+ hasJSDoc: true, // ✅ Document key functions
104
+ noMagicNumbers: true, // ✅ No magic numbers
105
+ consistentNaming: true, // ✅ Consistent naming
106
+ properComments: true, // ✅ Appropriate comments
107
+ testable: true, // ✅ Testable structure
108
+ };
109
+ ```
110
+
111
+ ### Security
112
+
113
+ ```typescript
114
+ const security = {
115
+ noHardcodedSecrets: true, // ✅ No hardcoded secrets
116
+ inputValidation: true, // ✅ Input validation
117
+ xssPrevention: true, // ✅ XSS prevention
118
+ csrfProtection: true, // ✅ CSRF protection
119
+ sqlInjectionPrevention: true, // ✅ SQL Injection prevention
120
+ };
121
+ ```
122
+
123
+ ## 5.2 Project Check
124
+
125
+ ### Dependency Management
126
+
127
+ ```typescript
128
+ const dependencies = {
129
+ noUnusedDeps: true, // ✅ No unused packages
130
+ noDuplicateDeps: true, // ✅ No duplicate functionality packages
131
+ upToDateDeps: true, // ✅ Keep up to date
132
+ securePackages: true, // ✅ No security vulnerabilities
133
+ };
134
+ ```
135
+
136
+ ### File Structure
137
+
138
+ ```typescript
139
+ const fileStructure = {
140
+ consistentStructure: true, // ✅ Consistent folder structure
141
+ noCircularDeps: true, // ✅ No circular references
142
+ logicalGrouping: true, // ✅ Logical grouping
143
+ clearNaming: true, // ✅ Clear file names
144
+ };
145
+ ```
146
+
147
+ ### Bundle Optimization
148
+
149
+ ```typescript
150
+ const bundleOptimization = {
151
+ treeShaking: true, // ✅ Tree shaking
152
+ codeSplitting: true, // ✅ Code splitting
153
+ lazyLoading: true, // ✅ Lazy loading
154
+ minification: true, // ✅ Minification
155
+ compression: true, // ✅ Compression (gzip/brotli)
156
+ };
157
+ ```
158
+
159
+ ## Checklist Usage
160
+
161
+ ### Before Writing Code
162
+
163
+ ```text
164
+ [ ] Clearly understand requirements
165
+ [ ] Identify existing code patterns
166
+ [ ] Confirm impact scope
167
+ [ ] Establish test plan
168
+ ```
169
+
170
+ ### While Writing Code
171
+
172
+ ```text
173
+ [ ] Follow Single Responsibility Principle
174
+ [ ] Keep function length ≤30 lines (max 50)
175
+ [ ] Nesting depth ≤3 levels
176
+ [ ] Extract magic numbers to constants
177
+ [ ] Ensure type safety
178
+ ```
179
+
180
+ ### After Writing Code
181
+
182
+ ```text
183
+ [ ] Type check passes
184
+ [ ] No linter warnings
185
+ [ ] Tests written and passing
186
+ [ ] Documentation complete
187
+ [ ] Ready for code review
188
+ ```
189
+
190
+ ### Before Commit
191
+
192
+ ```text
193
+ [ ] Remove unnecessary code
194
+ [ ] Remove console logs
195
+ [ ] Clean up comments
196
+ [ ] Apply formatting
197
+ [ ] Write meaningful commit message
198
+ ```
199
+
200
+ ## Automated Verification Tools
201
+
202
+ ### ESLint Configuration
203
+
204
+ ```javascript
205
+ // .eslintrc.js
206
+ module.exports = {
207
+ rules: {
208
+ 'complexity': ['error', 10],
209
+ 'max-depth': ['error', 3],
210
+ 'max-lines-per-function': ['error', 50],
211
+ 'max-params': ['error', 5],
212
+ 'no-magic-numbers': ['warn', { ignore: [0, 1, -1] }],
213
+ '@typescript-eslint/no-explicit-any': 'error',
214
+ },
215
+ };
216
+ ```
217
+
218
+ ### TypeScript Configuration
219
+
220
+ ```json
221
+ // tsconfig.json
222
+ {
223
+ "compilerOptions": {
224
+ "strict": true,
225
+ "noImplicitAny": true,
226
+ "strictNullChecks": true,
227
+ "noUnusedLocals": true,
228
+ "noUnusedParameters": true
229
+ }
230
+ }
231
+ ```
232
+
233
+ ### Git Hooks (pre-commit)
234
+
235
+ ```bash
236
+ #!/bin/sh
237
+ # .husky/pre-commit
238
+
239
+ # Type check
240
+ npm run type-check
241
+
242
+ # Linting
243
+ npm run lint
244
+
245
+ # Tests
246
+ npm run test
247
+
248
+ # Format check
249
+ npm run format:check
250
+ ```
251
+
252
+ ## Grade Criteria
253
+
254
+ | Grade | Score | Description |
255
+ |-------|-------|-------------|
256
+ | A+ | 95-100 | Perfect code quality |
257
+ | A | 90-94 | Excellent quality |
258
+ | B+ | 85-89 | Good quality |
259
+ | B | 80-84 | Improvement recommended |
260
+ | C+ | 75-79 | Improvement needed |
261
+ | C | 70-74 | Immediate improvement needed |
262
+ | F | < 70 | Refactoring required |
263
+
264
+ ## Quick Check (1 minute)
265
+
266
+ ```text
267
+ ✅ Only modified requested scope?
268
+ ✅ No any types?
269
+ ✅ Functions ≤30 lines? (max 50)
270
+ ✅ Nesting ≤3 levels?
271
+ ✅ Error handling implemented?
272
+ ✅ Magic numbers extracted to constants?
273
+ ✅ Tests written?
274
+ ```
275
+
276
+ All 7 Yes → Ready to deploy ✅