start-vibing 1.1.3 → 1.1.4

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.
@@ -1,72 +1,284 @@
1
1
  ---
2
2
  name: final-check
3
- description: Final validation before commits. HAS VETO POWER. Activates when user says 'commit', 'ready to commit', 'finalize', 'done', or when workflow is near completion. Blocks if any validation fails.
3
+ description: Final validation before task completion. Verifies all skills were consulted, documentation updated, tests pass. HAS VETO POWER - blocks incomplete tasks.
4
4
  allowed-tools: Read, Grep, Glob, Bash
5
5
  ---
6
6
 
7
- # Final Check
7
+ # Final Check - Final Validation System
8
8
 
9
9
  ## VETO POWER
10
10
 
11
- This skill CAN and MUST block incomplete tasks.
11
+ > **WARNING:** This skill HAS VETO POWER.
12
+ > If rule violated, MUST:
13
+ >
14
+ > 1. STOP and list violations
15
+ > 2. REQUIRE fix before approving
16
+ > 3. Re-validate after fixes
12
17
 
13
- ## When to Use
18
+ ---
19
+
20
+ ## Purpose
21
+
22
+ This skill is the LAST check before task completion:
23
+
24
+ - **Validates** all CLAUDE.md rules
25
+ - **Verifies** all skills were consulted
26
+ - **Confirms** documentation was updated
27
+ - **Ensures** nothing was forgotten
28
+ - **Blocks** incomplete tasks
29
+
30
+ ---
14
31
 
15
- - Before any commit
16
- - When user says task is "done"
17
- - After all other agents completed
32
+ ## Mega Validation Checklist
18
33
 
19
- ## Mega Checklist
34
+ ### 1. CODEBASE-KNOWLEDGE
20
35
 
21
- ### 1. Codebase Knowledge
22
- - [ ] Domain consulted before implementing?
23
- - [ ] Domain updated after implementing?
36
+ - [ ] Affected domain consulted BEFORE implementing?
37
+ - [ ] Domain file UPDATED after implementing?
24
38
  - [ ] Commit hash added?
39
+ - [ ] Connections verified?
25
40
 
26
- ### 2. Docs Tracker
27
- - [ ] Documentation updated?
28
- - [ ] Changelog entry added?
41
+ ### 2. DOCS-TRACKER
29
42
 
30
- ### 3. Test Coverage
31
- - [ ] New files have tests?
32
- - [ ] All tests pass?
43
+ - [ ] Changes detected via git diff?
44
+ - [ ] New documentation created (if needed)?
45
+ - [ ] Existing documentation updated?
46
+ - [ ] Changelog updated?
47
+
48
+ ### 3. TEST-COVERAGE
49
+
50
+ - [ ] New files have test or exemption?
51
+ - [ ] New tRPC routes have unit test?
52
+ - [ ] New pages have E2E spec?
53
+ - [ ] E2E uses `auth.helper.ts` correctly?
33
54
  - [ ] No `.skip()` added?
55
+ - [ ] All tests pass?
56
+
57
+ ### 4. UI-UX-AUDIT
34
58
 
35
- ### 4. Security Scan
36
- - [ ] User ID from session?
37
- - [ ] No sensitive data to frontend?
38
- - [ ] Zod validation on routes?
59
+ - [ ] Competitors researched (if UI)?
60
+ - [ ] Accessibility validated?
61
+ - [ ] Responsiveness tested?
62
+ - [ ] Skeleton created (if new component)?
63
+ - [ ] Zero horizontal overflow?
64
+
65
+ ### 5. SECURITY-SCAN
66
+
67
+ - [ ] User ID always from session?
68
+ - [ ] Sensitive data not sent to frontend?
69
+ - [ ] Zod validation on all routes?
70
+ - [ ] OWASP Top 10 verified?
71
+ - [ ] No pending VETO?
72
+
73
+ ### 6. QUALITY-GATE
39
74
 
40
- ### 5. Quality Gate
41
75
  - [ ] `bun run typecheck` passes?
42
76
  - [ ] `bun run lint` passes?
43
77
  - [ ] `bun run test` passes?
78
+ - [ ] `bun run test:e2e` passes?
44
79
  - [ ] `bun run build` passes?
45
80
 
46
- ### 6. UI/UX (if applicable)
47
- - [ ] Competitors researched?
48
- - [ ] Accessibility validated?
49
- - [ ] All viewports tested?
81
+ ---
50
82
 
51
- ## Quick Validation
83
+ ## Checklist by Task Type
52
84
 
53
- ```bash
54
- bun run typecheck && bun run lint && bun run test && bun run build
85
+ ### New Feature
86
+
87
+ ```markdown
88
+ ### Before Implementation
89
+
90
+ - [ ] Consulted codebase-knowledge domain?
91
+ - [ ] Researched competitors (if UI)?
92
+
93
+ ### During Implementation
94
+
95
+ - [ ] Followed code patterns?
96
+ - [ ] Created skeleton for components?
97
+ - [ ] Validated inputs with Zod?
98
+ - [ ] User ID always from session?
99
+
100
+ ### After Implementation
101
+
102
+ - [ ] Created unit tests?
103
+ - [ ] Created E2E tests?
104
+ - [ ] Updated codebase-knowledge?
105
+ - [ ] Updated docs/flows (if applicable)?
106
+ - [ ] Ran full quality-gate?
107
+ - [ ] Security-scan approved?
108
+ ```
109
+
110
+ ### Bug Fix
111
+
112
+ ```markdown
113
+ ### Before
114
+
115
+ - [ ] Consulted affected domain?
116
+ - [ ] Identified root cause?
117
+
118
+ ### During
119
+
120
+ - [ ] Fix is minimal and focused?
121
+ - [ ] Doesn't introduce regression?
122
+
123
+ ### After
124
+
125
+ - [ ] Test covering the bug?
126
+ - [ ] Updated domain with commit?
127
+ - [ ] Quality-gate passes?
128
+ ```
129
+
130
+ ### Refactor
131
+
132
+ ```markdown
133
+ ### Before
134
+
135
+ - [ ] Consulted affected domains?
136
+ - [ ] Mapped all dependencies?
137
+
138
+ ### During
139
+
140
+ - [ ] Maintained existing behavior?
141
+ - [ ] Didn't break tests?
142
+
143
+ ### After
144
+
145
+ - [ ] All tests pass?
146
+ - [ ] Updated affected domains?
147
+ - [ ] Quality-gate passes?
148
+ ```
149
+
150
+ ---
151
+
152
+ ## Validation Flow
153
+
154
+ ```
155
+ TASK COMPLETE? (developer thinks done)
156
+
157
+ 1. VERIFY CODEBASE-KNOWLEDGE → Consulted? Updated?
158
+
159
+ 2. VERIFY DOCS-TRACKER → Docs updated? Changelog?
160
+
161
+ 3. VERIFY TEST-COVERAGE → All files have tests? Pass?
162
+
163
+ 4. VERIFY UI-UX-AUDIT (if UI) → Research? Accessibility?
164
+
165
+ 5. VERIFY SECURITY-SCAN → No VETO? OWASP OK?
166
+
167
+ 6. VERIFY QUALITY-GATE → All checks pass?
168
+
169
+ ┌─────────┴─────────┐
170
+ ↓ ↓
171
+ VIOLATION ALL OK
172
+ → VETO → APPROVED
173
+ → LIST ISSUES → CAN COMMIT
55
174
  ```
56
175
 
57
- ## Output
176
+ ---
177
+
178
+ ## Output Format
179
+
180
+ ### Approved
181
+
182
+ ```markdown
183
+ ## FINAL CHECK - APPROVED
184
+
185
+ ### Task Summary
186
+
187
+ - **Type:** Feature
188
+ - **Domain:** [domain]
189
+ - **Files:** X modified
190
+
191
+ ### Verifications
192
+
193
+ - [x] Codebase-Knowledge: Consulted and updated
194
+ - [x] Docs-Tracker: Changelog updated
195
+ - [x] Test-Coverage: Unit 3/3, E2E 2/2 pass
196
+ - [x] UI-UX-Audit: Competitors researched, accessible
197
+ - [x] Security-Scan: No vulnerabilities
198
+ - [x] Quality-Gate: All checks pass
199
+
200
+ **STATUS: APPROVED** - Ready to commit
201
+ ```
58
202
 
59
- **APPROVED:** All checks pass → ready to commit
60
- **VETOED:** Violations found → fix before commit
203
+ ### Vetoed
204
+
205
+ ```markdown
206
+ ## FINAL CHECK - VETOED
207
+
208
+ ### Task Summary
209
+
210
+ - **Type:** Feature
211
+ - **Domain:** [domain]
212
+
213
+ ### Violations Found
214
+
215
+ #### ❌ Codebase-Knowledge
216
+
217
+ - **Violation:** Domain NOT updated after implementation
218
+ - **Action:** Update domain file with commit hash
219
+
220
+ #### ❌ Test-Coverage
221
+
222
+ - **Violation:** New file without test
223
+ - **File:** `components/NewComponent.tsx`
224
+ - **Action:** Create E2E spec
225
+
226
+ **STATUS: VETOED** - 2 violations. Fix before commit.
227
+
228
+ ### Next Steps
229
+
230
+ 1. Update domain file
231
+ 2. Create test for new component
232
+ 3. Re-run final-check
233
+ ```
234
+
235
+ ---
61
236
 
62
237
  ## VETO Rules
63
238
 
64
- ### Immediate VETO
65
- - Security vulnerability found
66
- - Tests failing
67
- - Build failing
68
- - Domain not updated
239
+ ### IMMEDIATE VETO
240
+
241
+ 1. Security-scan found critical vulnerability
242
+ 2. Quality-gate doesn't pass
243
+ 3. Tests failing
244
+ 4. Codebase-knowledge not updated
245
+
246
+ ### VETO BEFORE MERGE
247
+
248
+ 1. Docs not updated
249
+ 2. Skeleton missing (if new component)
250
+ 3. Changelog not updated
251
+
252
+ ### WARNING (No veto)
253
+
254
+ 1. Coverage below ideal (but critical tests exist)
255
+ 2. Optional docs missing
256
+
257
+ ---
258
+
259
+ ## Quick Command
260
+
261
+ ```bash
262
+ # Run full validation
263
+ bun run typecheck && bun run lint && bun run test && bun run test:e2e && bun run build
264
+
265
+ # If all pass, manually verify:
266
+ # - codebase-knowledge updated?
267
+ # - docs updated?
268
+ # - skeleton created?
269
+ ```
270
+
271
+ ---
272
+
273
+ ## Critical Rules
274
+
275
+ 1. **HAS VETO POWER** - Last barrier before commit
276
+ 2. **VERIFIES EVERYTHING** - All skills, all rules
277
+ 3. **NO EXCUSES** - Rule is rule
278
+ 4. **DOCUMENTS VIOLATIONS** - For learning
279
+
280
+ ---
281
+
282
+ ## Version
69
283
 
70
- ### VETO Before Merge
71
- - Docs not updated
72
- - Changelog missing
284
+ - **v2.0.0** - Generic template
@@ -1,71 +1,278 @@
1
1
  ---
2
2
  name: quality-gate
3
- description: Runs code quality checks (typecheck, lint, tests, build). Activates when user says 'check quality', 'run tests', 'typecheck', 'lint', 'build', or before any commit to validate code passes all gates.
3
+ description: Automates quality checks (typecheck, lint, tests, build) and blocks commits that don't pass. Use before any commit to validate code quality.
4
4
  allowed-tools: Bash, Read, Grep
5
5
  ---
6
6
 
7
- # Quality Gate
7
+ # Quality Gate - Quality Verification System
8
8
 
9
- ## When to Use
9
+ ## Purpose
10
10
 
11
- - Before committing changes
12
- - After implementation
13
- - When user asks to "check", "validate", or "run tests"
11
+ This skill automates quality checks:
14
12
 
15
- ## Commands (Run in Order)
13
+ - **Typecheck** - TypeScript errors
14
+ - **Lint** - Code patterns (ESLint)
15
+ - **Build** - Build verification
16
+ - **Tests** - Unit and E2E tests
17
+ - **Blocks** commits that don't pass
18
+
19
+ ---
20
+
21
+ ## Commands
22
+
23
+ ### 1. TypeScript Check
16
24
 
17
25
  ```bash
18
- # 1. TypeScript
19
26
  bun run typecheck
27
+ # or
28
+ bunx tsc --noEmit
29
+ ```
30
+
31
+ ### 2. ESLint Check
20
32
 
21
- # 2. ESLint
33
+ ```bash
22
34
  bun run lint
35
+ # or
36
+ bunx eslint . --ext .ts,.tsx
37
+ ```
38
+
39
+ ### 3. Build Check
40
+
41
+ ```bash
42
+ bun run build
43
+ ```
23
44
 
24
- # 3. Unit Tests
45
+ ### 4. Unit Tests
46
+
47
+ ```bash
25
48
  bun run test
49
+ # or
50
+ bunx vitest run
51
+ ```
26
52
 
27
- # 4. E2E Tests
28
- bun run test:e2e
53
+ ### 5. E2E Tests
29
54
 
30
- # 5. Build
31
- bun run build
55
+ ```bash
56
+ bun run test:e2e
57
+ # or
58
+ bunx playwright test
32
59
  ```
33
60
 
34
- ### All at Once
61
+ ### 6. All Checks (RECOMMENDED)
35
62
 
36
63
  ```bash
37
64
  bun run typecheck && bun run lint && bun run test && bun run test:e2e && bun run build
38
65
  ```
39
66
 
67
+ ---
68
+
40
69
  ## Execution Flow
41
70
 
42
71
  ```
43
- TYPECHECK → LINT TESTS E2E → BUILD
44
- fail ↓ fail ↓ fail ↓ fail ↓ fail
45
- STOP STOP STOP STOP STOP
72
+ 1. TYPECHECK → If fail: STOP and list errors
73
+
74
+ 2. LINT → If fail: STOP and list errors
75
+
76
+ 3. UNIT TESTS → If fail: STOP and list failures
77
+
78
+ 4. E2E TESTS → If fail: STOP and list failures
79
+
80
+ 5. BUILD → If fail: STOP and list errors
81
+
82
+ RESULT: ✅ APPROVED or ❌ REJECTED
83
+ ```
84
+
85
+ ---
86
+
87
+ ## Common TypeScript Errors
88
+
89
+ ### Type 'X' is not assignable to type 'Y'
90
+
91
+ ```typescript
92
+ // ERROR
93
+ const value: string = 123;
94
+
95
+ // FIX
96
+ const value: number = 123;
97
+ ```
98
+
99
+ ### Object is possibly 'undefined'
100
+
101
+ ```typescript
102
+ // ERROR
103
+ const name = user.name.toUpperCase();
104
+
105
+ // FIX
106
+ const name = user?.name?.toUpperCase() ?? '';
46
107
  ```
47
108
 
48
- ## Common Fixes
109
+ ### Property 'X' does not exist on type 'Y'
49
110
 
50
- ### TypeScript: Object possibly undefined
51
111
  ```typescript
52
- // Fix: use optional chaining
53
- const name = user?.name ?? '';
112
+ // ERROR
113
+ const age = user.age; // age doesn't exist
114
+
115
+ // FIX
116
+ interface User {
117
+ name: string;
118
+ age?: number;
119
+ }
54
120
  ```
55
121
 
56
- ### ESLint: no-explicit-any
122
+ ---
123
+
124
+ ## Common ESLint Errors
125
+
126
+ ### @typescript-eslint/no-explicit-any
127
+
57
128
  ```typescript
58
- // Fix: use unknown
129
+ // ERROR
130
+ function parse(data: any) {}
131
+
132
+ // FIX
59
133
  function parse(data: unknown) {}
60
134
  ```
61
135
 
62
- ## Output
136
+ ### @typescript-eslint/no-unused-vars
137
+
138
+ ```typescript
139
+ // ERROR
140
+ const unused = 'value';
141
+
142
+ // FIX - remove or prefix with _
143
+ const _unused = 'value';
144
+ ```
145
+
146
+ ### react-hooks/exhaustive-deps
147
+
148
+ ```typescript
149
+ // ERROR
150
+ useEffect(() => {
151
+ fetchData(userId);
152
+ }, []); // missing userId
153
+
154
+ // FIX
155
+ useEffect(() => {
156
+ fetchData(userId);
157
+ }, [userId]);
158
+ ```
159
+
160
+ ---
161
+
162
+ ## Output Format
163
+
164
+ ### Approved
165
+
166
+ ```markdown
167
+ ## QUALITY GATE - APPROVED
168
+
169
+ ### Checks Executed
170
+
171
+ | Check | Status | Time |
172
+ | ---------- | ------------- | ----- |
173
+ | TypeScript | ✅ Pass | 3.2s |
174
+ | ESLint | ✅ Pass | 5.1s |
175
+ | Unit Tests | ✅ 42/42 Pass | 8.3s |
176
+ | E2E Tests | ✅ 15/15 Pass | 45.2s |
177
+ | Build | ✅ Pass | 32.1s |
178
+
179
+ **STATUS: APPROVED** - Ready to commit
180
+ ```
181
+
182
+ ### Rejected
183
+
184
+ ```markdown
185
+ ## QUALITY GATE - REJECTED
186
+
187
+ ### Checks Executed
188
+
189
+ | Check | Status |
190
+ | ---------- | ----------- |
191
+ | TypeScript | ❌ 3 errors |
192
+
193
+ ### TypeScript Errors
194
+
195
+ #### Error 1: server/routers/example.ts:45
196
+ ```
197
+
198
+ Type 'string | undefined' is not assignable to type 'string'.
199
+
200
+ ````
201
+
202
+ **Suggested fix:**
203
+ ```typescript
204
+ const name: string = input.name ?? "";
205
+ ````
206
+
207
+ **STATUS: REJECTED** - Fix 3 errors before commit
208
+
209
+ ````
210
+
211
+ ---
212
+
213
+ ## Quick Checks
214
+
215
+ ### Fast Check (typecheck + lint only)
216
+ ```bash
217
+ bun run typecheck && bun run lint
218
+ ````
219
+
220
+ ### Full Check (everything)
221
+
222
+ ```bash
223
+ bun run typecheck && bun run lint && bun run test && bun run test:e2e && bun run build
224
+ ```
225
+
226
+ ### Modified Files Only
227
+
228
+ ```bash
229
+ git diff --name-only | grep -E "\.(ts|tsx)$" | xargs bunx eslint
230
+ ```
231
+
232
+ ---
63
233
 
64
- **APPROVED:** All checks pass → ready to commit
65
- **REJECTED:** Fix errors before proceeding
234
+ ## Pre-Commit Checklist
235
+
236
+ - [ ] `bun run typecheck` passes?
237
+ - [ ] `bun run lint` passes?
238
+ - [ ] `bun run test` passes?
239
+ - [ ] `bun run test:e2e` passes?
240
+ - [ ] `bun run build` passes?
241
+ - [ ] No `any` in code?
242
+ - [ ] No unused variables?
243
+ - [ ] No debug console.log?
244
+
245
+ ---
246
+
247
+ ## Scripts (package.json)
248
+
249
+ ```json
250
+ {
251
+ "scripts": {
252
+ "typecheck": "tsc --noEmit",
253
+ "lint": "eslint . --ext .ts,.tsx",
254
+ "lint:fix": "eslint . --ext .ts,.tsx --fix",
255
+ "test": "vitest run",
256
+ "test:watch": "vitest",
257
+ "test:e2e": "playwright test",
258
+ "test:e2e:ui": "playwright test --ui",
259
+ "test:all": "bun run typecheck && bun run lint && bun run test && bun run test:e2e",
260
+ "build": "next build"
261
+ }
262
+ }
263
+ ```
264
+
265
+ ---
266
+
267
+ ## Critical Rules
268
+
269
+ 1. **NEVER commit with errors** - All checks must pass
270
+ 2. **RUN IN ORDER** - typecheck → lint → test → e2e → build
271
+ 3. **FIX IMMEDIATELY** - Errors cannot accumulate
272
+ 4. **DON'T USE --force** - Solve problems, don't ignore
273
+
274
+ ---
66
275
 
67
- ## Rules
276
+ ## Version
68
277
 
69
- 1. **Never commit with errors**
70
- 2. **Run in order** - stop at first failure
71
- 3. **Don't use --force** - solve problems properly
278
+ - **v2.0.0** - Generic template