@su-record/vibe 2.6.16 → 2.6.18

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 (249) hide show
  1. package/CLAUDE.md +681 -681
  2. package/LICENSE +21 -21
  3. package/README.md +235 -203
  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/e2e-tester.md +266 -266
  11. package/agents/explorer-low.md +42 -42
  12. package/agents/explorer-medium.md +59 -59
  13. package/agents/explorer.md +48 -48
  14. package/agents/implementer-low.md +43 -43
  15. package/agents/implementer-medium.md +52 -52
  16. package/agents/implementer.md +54 -54
  17. package/agents/refactor-cleaner.md +143 -143
  18. package/agents/research/best-practices-agent.md +199 -199
  19. package/agents/research/codebase-patterns-agent.md +157 -157
  20. package/agents/research/framework-docs-agent.md +188 -188
  21. package/agents/research/security-advisory-agent.md +213 -213
  22. package/agents/review/architecture-reviewer.md +107 -107
  23. package/agents/review/complexity-reviewer.md +116 -116
  24. package/agents/review/data-integrity-reviewer.md +88 -88
  25. package/agents/review/git-history-reviewer.md +103 -103
  26. package/agents/review/performance-reviewer.md +86 -86
  27. package/agents/review/python-reviewer.md +150 -150
  28. package/agents/review/rails-reviewer.md +139 -139
  29. package/agents/review/react-reviewer.md +144 -144
  30. package/agents/review/security-reviewer.md +80 -80
  31. package/agents/review/simplicity-reviewer.md +140 -140
  32. package/agents/review/test-coverage-reviewer.md +116 -116
  33. package/agents/review/typescript-reviewer.md +127 -127
  34. package/agents/searcher.md +54 -54
  35. package/agents/simplifier.md +120 -120
  36. package/agents/tester.md +49 -49
  37. package/agents/ui-previewer.md +268 -268
  38. package/commands/vibe.analyze.md +356 -356
  39. package/commands/vibe.reason.md +329 -329
  40. package/commands/vibe.review.md +412 -412
  41. package/commands/vibe.run.md +1266 -1266
  42. package/commands/vibe.spec.md +1054 -1054
  43. package/commands/vibe.spec.review.md +319 -319
  44. package/commands/vibe.trace.md +161 -161
  45. package/commands/vibe.utils.md +376 -376
  46. package/commands/vibe.verify.md +375 -375
  47. package/dist/cli/collaborator.js +52 -52
  48. package/dist/cli/detect.js +32 -32
  49. package/dist/cli/hud.js +20 -20
  50. package/dist/cli/index.d.ts.map +1 -1
  51. package/dist/cli/index.js +120 -118
  52. package/dist/cli/index.js.map +1 -1
  53. package/dist/cli/llm.js +144 -144
  54. package/dist/cli/postinstall.d.ts +1 -0
  55. package/dist/cli/postinstall.d.ts.map +1 -1
  56. package/dist/cli/postinstall.js +859 -859
  57. package/dist/cli/postinstall.js.map +1 -1
  58. package/dist/cli/setup/ProjectSetup.d.ts +2 -2
  59. package/dist/cli/setup/ProjectSetup.d.ts.map +1 -1
  60. package/dist/cli/setup/ProjectSetup.js +51 -17
  61. package/dist/cli/setup/ProjectSetup.js.map +1 -1
  62. package/dist/lib/DeepInit.js +24 -24
  63. package/dist/lib/IterationTracker.js +11 -11
  64. package/dist/lib/PythonParser.js +108 -108
  65. package/dist/lib/ReviewRace.js +96 -96
  66. package/dist/lib/SkillFrontmatter.js +28 -28
  67. package/dist/lib/SkillQualityGate.js +9 -9
  68. package/dist/lib/SkillRepository.js +159 -159
  69. package/dist/lib/UltraQA.js +77 -77
  70. package/dist/lib/gemini-api.js +5 -5
  71. package/dist/lib/gpt-api.js +4 -4
  72. package/dist/lib/memory/KnowledgeGraph.js +4 -4
  73. package/dist/lib/memory/MemorySearch.js +20 -20
  74. package/dist/lib/memory/MemoryStorage.js +64 -64
  75. package/dist/orchestrator/AgentManager.js +12 -12
  76. package/dist/orchestrator/MultiLlmResearch.js +8 -8
  77. package/dist/orchestrator/SmartRouter.js +11 -11
  78. package/dist/orchestrator/SwarmOrchestrator.d.ts +144 -0
  79. package/dist/orchestrator/SwarmOrchestrator.d.ts.map +1 -0
  80. package/dist/orchestrator/SwarmOrchestrator.js +361 -0
  81. package/dist/orchestrator/SwarmOrchestrator.js.map +1 -0
  82. package/dist/orchestrator/SwarmOrchestrator.test.d.ts +5 -0
  83. package/dist/orchestrator/SwarmOrchestrator.test.d.ts.map +1 -0
  84. package/dist/orchestrator/SwarmOrchestrator.test.js +95 -0
  85. package/dist/orchestrator/SwarmOrchestrator.test.js.map +1 -0
  86. package/dist/orchestrator/index.d.ts +2 -0
  87. package/dist/orchestrator/index.d.ts.map +1 -1
  88. package/dist/orchestrator/index.js +2 -0
  89. package/dist/orchestrator/index.js.map +1 -1
  90. package/dist/orchestrator/parallelResearch.js +24 -24
  91. package/dist/tools/convention/analyzeComplexity.test.js +115 -115
  92. package/dist/tools/convention/validateCodeQuality.test.js +104 -104
  93. package/dist/tools/spec/prdParser.test.js +171 -171
  94. package/dist/tools/spec/specGenerator.js +169 -169
  95. package/dist/tools/spec/traceabilityMatrix.js +64 -64
  96. package/dist/tools/spec/traceabilityMatrix.test.js +28 -28
  97. package/hooks/hooks.json +222 -222
  98. package/hooks/scripts/code-check.js +22 -22
  99. package/hooks/scripts/code-review.js +22 -22
  100. package/hooks/scripts/complexity.js +22 -22
  101. package/hooks/scripts/compound.js +23 -23
  102. package/hooks/scripts/context-save.js +33 -33
  103. package/hooks/scripts/gemini-ui-gen.js +281 -281
  104. package/hooks/scripts/generate-brand-assets.js +474 -474
  105. package/hooks/scripts/hud-multiline.js +262 -262
  106. package/hooks/scripts/hud-status.js +291 -291
  107. package/hooks/scripts/keyword-detector.js +214 -214
  108. package/hooks/scripts/llm-orchestrate.js +171 -171
  109. package/hooks/scripts/post-edit.js +97 -97
  110. package/hooks/scripts/post-tool-verify.js +210 -210
  111. package/hooks/scripts/pre-tool-guard.js +125 -125
  112. package/hooks/scripts/recall.js +22 -22
  113. package/hooks/scripts/session-start.js +30 -30
  114. package/hooks/scripts/skill-injector.js +191 -191
  115. package/hooks/scripts/utils.js +97 -97
  116. package/languages/csharp-unity.md +515 -515
  117. package/languages/gdscript-godot.md +470 -470
  118. package/languages/ruby-rails.md +489 -489
  119. package/languages/typescript-angular.md +433 -433
  120. package/languages/typescript-astro.md +416 -416
  121. package/languages/typescript-electron.md +406 -406
  122. package/languages/typescript-nestjs.md +524 -524
  123. package/languages/typescript-svelte.md +407 -407
  124. package/languages/typescript-tauri.md +365 -365
  125. package/package.json +84 -84
  126. package/skills/brand-assets.md +141 -141
  127. package/skills/commerce-patterns.md +361 -361
  128. package/skills/context7-usage.md +102 -102
  129. package/skills/e2e-commerce.md +304 -304
  130. package/skills/frontend-design.md +92 -92
  131. package/skills/git-worktree.md +181 -181
  132. package/skills/parallel-research.md +77 -77
  133. package/skills/priority-todos.md +239 -239
  134. package/skills/seo-checklist.md +244 -244
  135. package/skills/tool-fallback.md +190 -190
  136. package/skills/vibe-capabilities.md +161 -161
  137. package/vibe/constitution.md +227 -227
  138. package/vibe/rules/core/communication-guide.md +98 -98
  139. package/vibe/rules/core/development-philosophy.md +52 -52
  140. package/vibe/rules/core/quick-start.md +102 -102
  141. package/vibe/rules/quality/bdd-contract-testing.md +393 -393
  142. package/vibe/rules/quality/checklist.md +276 -276
  143. package/vibe/rules/quality/testing-strategy.md +440 -440
  144. package/vibe/rules/standards/anti-patterns.md +541 -541
  145. package/vibe/rules/standards/code-structure.md +291 -291
  146. package/vibe/rules/standards/complexity-metrics.md +313 -313
  147. package/vibe/rules/standards/naming-conventions.md +198 -198
  148. package/vibe/setup.sh +31 -31
  149. package/vibe/templates/constitution-template.md +252 -252
  150. package/vibe/templates/contract-backend-template.md +526 -526
  151. package/vibe/templates/contract-frontend-template.md +599 -599
  152. package/vibe/templates/feature-template.md +96 -96
  153. package/vibe/templates/spec-template.md +221 -221
  154. package/dist/cli/mcp.d.ts +0 -49
  155. package/dist/cli/mcp.d.ts.map +0 -1
  156. package/dist/cli/mcp.js +0 -169
  157. package/dist/cli/mcp.js.map +0 -1
  158. package/dist/lib/gemini-mcp.d.ts +0 -10
  159. package/dist/lib/gemini-mcp.d.ts.map +0 -1
  160. package/dist/lib/gemini-mcp.js +0 -353
  161. package/dist/lib/gemini-mcp.js.map +0 -1
  162. package/dist/lib/gpt-mcp.d.ts +0 -10
  163. package/dist/lib/gpt-mcp.d.ts.map +0 -1
  164. package/dist/lib/gpt-mcp.js +0 -352
  165. package/dist/lib/gpt-mcp.js.map +0 -1
  166. package/dist/tools/analytics/getUsageAnalytics.d.ts +0 -10
  167. package/dist/tools/analytics/getUsageAnalytics.d.ts.map +0 -1
  168. package/dist/tools/analytics/getUsageAnalytics.js +0 -246
  169. package/dist/tools/analytics/getUsageAnalytics.js.map +0 -1
  170. package/dist/tools/analytics/index.d.ts +0 -5
  171. package/dist/tools/analytics/index.d.ts.map +0 -1
  172. package/dist/tools/analytics/index.js +0 -5
  173. package/dist/tools/analytics/index.js.map +0 -1
  174. package/dist/tools/convention/getCodingGuide.d.ts +0 -7
  175. package/dist/tools/convention/getCodingGuide.d.ts.map +0 -1
  176. package/dist/tools/convention/getCodingGuide.js +0 -69
  177. package/dist/tools/convention/getCodingGuide.js.map +0 -1
  178. package/dist/tools/planning/analyzeRequirements.d.ts +0 -9
  179. package/dist/tools/planning/analyzeRequirements.d.ts.map +0 -1
  180. package/dist/tools/planning/analyzeRequirements.js +0 -171
  181. package/dist/tools/planning/analyzeRequirements.js.map +0 -1
  182. package/dist/tools/planning/createUserStories.d.ts +0 -9
  183. package/dist/tools/planning/createUserStories.d.ts.map +0 -1
  184. package/dist/tools/planning/createUserStories.js +0 -124
  185. package/dist/tools/planning/createUserStories.js.map +0 -1
  186. package/dist/tools/planning/featureRoadmap.d.ts +0 -10
  187. package/dist/tools/planning/featureRoadmap.d.ts.map +0 -1
  188. package/dist/tools/planning/featureRoadmap.js +0 -207
  189. package/dist/tools/planning/featureRoadmap.js.map +0 -1
  190. package/dist/tools/planning/generatePrd.d.ts +0 -11
  191. package/dist/tools/planning/generatePrd.d.ts.map +0 -1
  192. package/dist/tools/planning/generatePrd.js +0 -161
  193. package/dist/tools/planning/generatePrd.js.map +0 -1
  194. package/dist/tools/planning/index.d.ts +0 -8
  195. package/dist/tools/planning/index.d.ts.map +0 -1
  196. package/dist/tools/planning/index.js +0 -8
  197. package/dist/tools/planning/index.js.map +0 -1
  198. package/dist/tools/prompt/analyzePrompt.d.ts +0 -7
  199. package/dist/tools/prompt/analyzePrompt.d.ts.map +0 -1
  200. package/dist/tools/prompt/analyzePrompt.js +0 -150
  201. package/dist/tools/prompt/analyzePrompt.js.map +0 -1
  202. package/dist/tools/prompt/enhancePrompt.d.ts +0 -8
  203. package/dist/tools/prompt/enhancePrompt.d.ts.map +0 -1
  204. package/dist/tools/prompt/enhancePrompt.js +0 -110
  205. package/dist/tools/prompt/enhancePrompt.js.map +0 -1
  206. package/dist/tools/prompt/enhancePromptGemini.d.ts +0 -8
  207. package/dist/tools/prompt/enhancePromptGemini.d.ts.map +0 -1
  208. package/dist/tools/prompt/enhancePromptGemini.js +0 -332
  209. package/dist/tools/prompt/enhancePromptGemini.js.map +0 -1
  210. package/dist/tools/prompt/index.d.ts +0 -7
  211. package/dist/tools/prompt/index.d.ts.map +0 -1
  212. package/dist/tools/prompt/index.js +0 -7
  213. package/dist/tools/prompt/index.js.map +0 -1
  214. package/dist/tools/reasoning/applyReasoningFramework.d.ts +0 -8
  215. package/dist/tools/reasoning/applyReasoningFramework.d.ts.map +0 -1
  216. package/dist/tools/reasoning/applyReasoningFramework.js +0 -266
  217. package/dist/tools/reasoning/applyReasoningFramework.js.map +0 -1
  218. package/dist/tools/reasoning/index.d.ts +0 -5
  219. package/dist/tools/reasoning/index.d.ts.map +0 -1
  220. package/dist/tools/reasoning/index.js +0 -5
  221. package/dist/tools/reasoning/index.js.map +0 -1
  222. package/dist/tools/thinking/analyzeProblem.d.ts +0 -7
  223. package/dist/tools/thinking/analyzeProblem.d.ts.map +0 -1
  224. package/dist/tools/thinking/analyzeProblem.js +0 -55
  225. package/dist/tools/thinking/analyzeProblem.js.map +0 -1
  226. package/dist/tools/thinking/breakDownProblem.d.ts +0 -8
  227. package/dist/tools/thinking/breakDownProblem.d.ts.map +0 -1
  228. package/dist/tools/thinking/breakDownProblem.js +0 -145
  229. package/dist/tools/thinking/breakDownProblem.js.map +0 -1
  230. package/dist/tools/thinking/createThinkingChain.d.ts +0 -7
  231. package/dist/tools/thinking/createThinkingChain.d.ts.map +0 -1
  232. package/dist/tools/thinking/createThinkingChain.js +0 -44
  233. package/dist/tools/thinking/createThinkingChain.js.map +0 -1
  234. package/dist/tools/thinking/formatAsPlan.d.ts +0 -9
  235. package/dist/tools/thinking/formatAsPlan.d.ts.map +0 -1
  236. package/dist/tools/thinking/formatAsPlan.js +0 -78
  237. package/dist/tools/thinking/formatAsPlan.js.map +0 -1
  238. package/dist/tools/thinking/index.d.ts +0 -10
  239. package/dist/tools/thinking/index.d.ts.map +0 -1
  240. package/dist/tools/thinking/index.js +0 -10
  241. package/dist/tools/thinking/index.js.map +0 -1
  242. package/dist/tools/thinking/stepByStepAnalysis.d.ts +0 -8
  243. package/dist/tools/thinking/stepByStepAnalysis.d.ts.map +0 -1
  244. package/dist/tools/thinking/stepByStepAnalysis.js +0 -63
  245. package/dist/tools/thinking/stepByStepAnalysis.js.map +0 -1
  246. package/dist/tools/thinking/thinkAloudProcess.d.ts +0 -8
  247. package/dist/tools/thinking/thinkAloudProcess.d.ts.map +0 -1
  248. package/dist/tools/thinking/thinkAloudProcess.js +0 -80
  249. package/dist/tools/thinking/thinkAloudProcess.js.map +0 -1
@@ -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 ✅