omgkit 2.1.1 → 2.3.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.
Files changed (56) hide show
  1. package/package.json +1 -1
  2. package/plugin/skills/databases/mongodb/SKILL.md +81 -28
  3. package/plugin/skills/databases/prisma/SKILL.md +87 -32
  4. package/plugin/skills/databases/redis/SKILL.md +80 -27
  5. package/plugin/skills/devops/aws/SKILL.md +80 -26
  6. package/plugin/skills/devops/github-actions/SKILL.md +84 -32
  7. package/plugin/skills/devops/kubernetes/SKILL.md +94 -32
  8. package/plugin/skills/devops/performance-profiling/SKILL.md +59 -863
  9. package/plugin/skills/frameworks/django/SKILL.md +158 -24
  10. package/plugin/skills/frameworks/express/SKILL.md +153 -33
  11. package/plugin/skills/frameworks/fastapi/SKILL.md +153 -34
  12. package/plugin/skills/frameworks/laravel/SKILL.md +146 -33
  13. package/plugin/skills/frameworks/nestjs/SKILL.md +137 -25
  14. package/plugin/skills/frameworks/rails/SKILL.md +594 -28
  15. package/plugin/skills/frameworks/react/SKILL.md +94 -962
  16. package/plugin/skills/frameworks/spring/SKILL.md +528 -35
  17. package/plugin/skills/frameworks/vue/SKILL.md +147 -25
  18. package/plugin/skills/frontend/accessibility/SKILL.md +145 -36
  19. package/plugin/skills/frontend/frontend-design/SKILL.md +114 -29
  20. package/plugin/skills/frontend/responsive/SKILL.md +131 -28
  21. package/plugin/skills/frontend/shadcn-ui/SKILL.md +133 -43
  22. package/plugin/skills/frontend/tailwindcss/SKILL.md +105 -37
  23. package/plugin/skills/frontend/threejs/SKILL.md +110 -35
  24. package/plugin/skills/languages/javascript/SKILL.md +195 -34
  25. package/plugin/skills/methodology/brainstorming/SKILL.md +98 -30
  26. package/plugin/skills/methodology/defense-in-depth/SKILL.md +83 -37
  27. package/plugin/skills/methodology/dispatching-parallel-agents/SKILL.md +92 -31
  28. package/plugin/skills/methodology/executing-plans/SKILL.md +117 -28
  29. package/plugin/skills/methodology/finishing-development-branch/SKILL.md +111 -32
  30. package/plugin/skills/methodology/problem-solving/SKILL.md +65 -311
  31. package/plugin/skills/methodology/receiving-code-review/SKILL.md +76 -27
  32. package/plugin/skills/methodology/requesting-code-review/SKILL.md +93 -22
  33. package/plugin/skills/methodology/root-cause-tracing/SKILL.md +75 -40
  34. package/plugin/skills/methodology/sequential-thinking/SKILL.md +75 -224
  35. package/plugin/skills/methodology/systematic-debugging/SKILL.md +81 -35
  36. package/plugin/skills/methodology/test-driven-development/SKILL.md +120 -26
  37. package/plugin/skills/methodology/testing-anti-patterns/SKILL.md +88 -35
  38. package/plugin/skills/methodology/token-optimization/SKILL.md +73 -34
  39. package/plugin/skills/methodology/verification-before-completion/SKILL.md +128 -28
  40. package/plugin/skills/methodology/writing-plans/SKILL.md +105 -20
  41. package/plugin/skills/omega/omega-architecture/SKILL.md +178 -40
  42. package/plugin/skills/omega/omega-coding/SKILL.md +247 -41
  43. package/plugin/skills/omega/omega-sprint/SKILL.md +208 -46
  44. package/plugin/skills/omega/omega-testing/SKILL.md +253 -42
  45. package/plugin/skills/omega/omega-thinking/SKILL.md +263 -51
  46. package/plugin/skills/security/better-auth/SKILL.md +83 -34
  47. package/plugin/skills/security/oauth/SKILL.md +118 -35
  48. package/plugin/skills/security/owasp/SKILL.md +112 -35
  49. package/plugin/skills/testing/playwright/SKILL.md +141 -38
  50. package/plugin/skills/testing/pytest/SKILL.md +137 -38
  51. package/plugin/skills/testing/vitest/SKILL.md +124 -39
  52. package/plugin/skills/tools/document-processing/SKILL.md +111 -838
  53. package/plugin/skills/tools/image-processing/SKILL.md +126 -659
  54. package/plugin/skills/tools/mcp-development/SKILL.md +85 -758
  55. package/plugin/skills/tools/media-processing/SKILL.md +118 -735
  56. package/plugin/stdrules/SKILL_STANDARDS.md +490 -0
@@ -1,39 +1,133 @@
1
1
  ---
2
- name: test-driven-development
3
- description: TDD workflow. Use when implementing features with test-first approach.
2
+ name: developing-test-driven
3
+ description: AI agent practices test-first development with the Red-Green-Refactor cycle for confident, well-designed code. Use when implementing features, fixing bugs, or establishing testing practices.
4
4
  ---
5
5
 
6
- # Test-Driven Development Skill
6
+ # Developing Test-Driven
7
7
 
8
- ## TDD Cycle
9
- 1. 🔴 **RED** - Write failing test
10
- 2. 🟢 **GREEN** - Make it pass (minimal code)
11
- 3. ♻️ **REFACTOR** - Improve code
8
+ ## Quick Start
12
9
 
13
- ## Rules
14
- - No production code without failing test
15
- - Only enough code to pass test
16
- - Refactor only when green
17
- - One assertion per test
10
+ 1. **Red** - Write a failing test that defines desired behavior
11
+ 2. **Green** - Write minimal code to make the test pass
12
+ 3. **Refactor** - Improve code while keeping tests green
13
+ 4. **Repeat** - Continue with next behavior (1-5 minute cycles)
14
+
15
+ ## Features
16
+
17
+ | Feature | Description | Guide |
18
+ |---------|-------------|-------|
19
+ | Red-Green-Refactor | Core TDD cycle | Fail -> Pass -> Improve -> Repeat |
20
+ | Test Patterns | Effective test structures | Arrange-Act-Assert, Given-When-Then |
21
+ | Test Fixtures | Reusable test setup | beforeEach, factories, builders |
22
+ | Mocking Strategies | Isolate dependencies | Inject deps, mock boundaries only |
23
+ | Parameterized Tests | Test multiple inputs | `it.each` for input variations |
24
+ | Coverage Analysis | Verify thoroughness | Statements, branches, functions |
25
+
26
+ ## Common Patterns
18
27
 
19
- ## Example
20
28
  ```typescript
21
- // 1. RED - Write test first
22
- describe('calculateTax', () => {
23
- it('calculates 10% tax', () => {
24
- expect(calculateTax(100, 0.1)).toBe(10);
25
- });
29
+ // RED-GREEN-REFACTOR CYCLE
30
+
31
+ // RED: Write failing test
32
+ it('rejects passwords shorter than 8 characters', () => {
33
+ const result = validatePassword('short');
34
+ expect(result.valid).toBe(false);
35
+ expect(result.errors).toContain('Password must be at least 8 characters');
26
36
  });
27
37
 
28
- // 2. GREEN - Minimal implementation
29
- function calculateTax(amount: number, rate: number) {
30
- return amount * rate;
38
+ // GREEN: Minimal implementation
39
+ function validatePassword(password: string) {
40
+ const errors = [];
41
+ if (password.length < 8) {
42
+ errors.push('Password must be at least 8 characters');
43
+ }
44
+ return { valid: errors.length === 0, errors };
31
45
  }
32
46
 
33
- // 3. REFACTOR if needed
47
+ // REFACTOR: Extract rules (tests stay green)
48
+ const rules = [
49
+ { test: (p) => p.length >= 8, message: 'Must be 8+ chars' },
50
+ { test: (p) => /[A-Z]/.test(p), message: 'Must have uppercase' },
51
+ ];
52
+ function validatePassword(password: string) {
53
+ const errors = rules.filter(r => !r.test(password)).map(r => r.message);
54
+ return { valid: errors.length === 0, errors };
55
+ }
34
56
  ```
35
57
 
36
- ## Benefits
37
- - Design emerges from tests
38
- - 100% coverage by default
39
- - Confidence in refactoring
58
+ ```typescript
59
+ // ARRANGE-ACT-ASSERT Pattern
60
+ it('increases total when item added', () => {
61
+ // ARRANGE
62
+ const cart = new ShoppingCart();
63
+ const item = { id: '1', price: 10.00 };
64
+
65
+ // ACT
66
+ cart.addItem(item);
67
+
68
+ // ASSERT
69
+ expect(cart.total).toBe(10.00);
70
+ });
71
+
72
+ // PARAMETERIZED TESTS
73
+ it.each([
74
+ ['simple@example.com', true],
75
+ ['user.name@domain.org', true],
76
+ ['invalid', false],
77
+ ['@nodomain.com', false],
78
+ ])('validates %s as %s', (email, expected) => {
79
+ expect(isValidEmail(email)).toBe(expected);
80
+ });
81
+
82
+ // BUILDER PATTERN for test data
83
+ const user = new UserBuilder().admin().inactive().build();
84
+ ```
85
+
86
+ ```
87
+ # Mocking Guidelines
88
+ MOCK (external boundaries):
89
+ - External APIs (payment, email)
90
+ - Third-party services
91
+ - System clock, random
92
+ - Network requests
93
+
94
+ DON'T MOCK (your code):
95
+ - Pure functions
96
+ - Data transformations
97
+ - Business logic
98
+ - Internal services
99
+ ```
100
+
101
+ ```
102
+ # Coverage Analysis
103
+ | Type | Target | Notes |
104
+ |------|--------|-------|
105
+ | Statements | 80%+ | Code executed |
106
+ | Branches | 70%+ | If/else paths |
107
+ | Functions | 90%+ | All functions called |
108
+
109
+ REMEMBER: 100% coverage != well-tested
110
+ - Test edge cases
111
+ - Test error paths
112
+ - Test boundary conditions
113
+ ```
114
+
115
+ ## Best Practices
116
+
117
+ | Do | Avoid |
118
+ |----|-------|
119
+ | Write test BEFORE implementation | Writing implementation first |
120
+ | Keep tests focused on ONE behavior | Testing multiple things in one test |
121
+ | Use descriptive test names | Generic names like "test1" |
122
+ | Run tests frequently (every few minutes) | Long gaps between test runs |
123
+ | Refactor only when tests green | Refactoring with failing tests |
124
+ | Test behavior, not implementation | Testing private methods directly |
125
+ | Keep cycles short (1-5 minutes) | 30+ minute cycles |
126
+ | Mock only external dependencies | Over-mocking your own code |
127
+
128
+ ## Related Skills
129
+
130
+ - `avoiding-testing-anti-patterns` - Avoid common test mistakes
131
+ - `testing-with-vitest` - Vitest testing framework
132
+ - `testing-with-playwright` - E2E testing with Playwright
133
+ - `verifying-before-completion` - Ensure test quality
@@ -1,50 +1,103 @@
1
1
  ---
2
- name: testing-anti-patterns
3
- description: Testing anti-patterns to avoid. Use when writing or reviewing tests.
2
+ name: avoiding-testing-anti-patterns
3
+ description: AI agent identifies and fixes common testing anti-patterns that lead to flaky, slow, or unmaintainable test suites. Use when reviewing tests, debugging test failures, or improving test quality.
4
4
  ---
5
5
 
6
- # Testing Anti-Patterns Skill
6
+ # Avoiding Testing Anti-Patterns
7
7
 
8
- ## Anti-Patterns
8
+ ## Quick Start
9
9
 
10
- ### 1. Testing Implementation
11
- ```typescript
12
- // Bad - tests internal implementation
13
- expect(component.state.count).toBe(1);
10
+ 1. **Identify** - Recognize anti-pattern category (flaky, implementation, over-mocking)
11
+ 2. **Assess Severity** - Critical (fix now), High (fix soon), Medium (plan to fix)
12
+ 3. **Apply Fix** - Use proper async handling, test behavior not implementation
13
+ 4. **Verify** - Run tests in random order, ensure independence
14
+ 5. **Prevent** - Add test smell detection to CI
14
15
 
15
- // Good - tests behavior
16
- expect(screen.getByText('1')).toBeInTheDocument();
17
- ```
16
+ ## Features
18
17
 
19
- ### 2. Flaky Tests
20
- ```typescript
21
- // Bad - timing dependent
22
- await sleep(1000);
23
- expect(result).toBe(true);
18
+ | Feature | Description | Guide |
19
+ |---------|-------------|-------|
20
+ | Flaky Tests | Random failures destroying trust | Use waitFor, not sleep; deterministic data |
21
+ | Implementation Testing | Breaks on every refactor | Test behavior through public interface |
22
+ | Over-Mocking | Tests pass but bugs slip through | Mock boundaries only, not your own code |
23
+ | Slow Tests | Hurt development velocity | Right test layer, shared setup, mock network |
24
+ | Test Interdependence | Can't run tests in isolation | Fresh state in beforeEach, no shared mutation |
25
+ | Poor Design | Hard to understand/maintain | Descriptive names, focused tests, clear values |
24
26
 
25
- // Good - wait for condition
26
- await waitFor(() => expect(result).toBe(true));
27
- ```
27
+ ## Common Patterns
28
28
 
29
- ### 3. Test Interdependence
30
29
  ```typescript
31
- // Bad - tests share state
32
- let user;
33
- it('creates user', () => { user = create(); });
34
- it('uses user', () => { expect(user).toBe(...); });
30
+ // FLAKY: Timing-dependent
31
+ await sleep(100); // May not be enough
32
+ expect(result).toBe('processed');
33
+
34
+ // FIXED: Wait for condition
35
+ await waitFor(() => {
36
+ expect(result).toBe('processed');
37
+ }, { timeout: 5000 });
38
+
39
+ // FLAKY: Shared state between tests
40
+ let sharedState = [];
41
+ it('test1', () => { sharedState.push('a'); });
42
+ it('test2', () => { expect(sharedState).toHaveLength(1); }); // Order-dependent!
43
+
44
+ // FIXED: Fresh state each test
45
+ beforeEach(() => { sharedState = []; });
46
+
47
+ // IMPLEMENTATION: Testing private state
48
+ expect(counter._count).toBe(1);
49
+
50
+ // BEHAVIOR: Testing public interface
51
+ expect(counter.getValue()).toBe(1);
35
52
 
36
- // Good - independent tests
37
- beforeEach(() => { user = create(); });
53
+ // OVER-MOCKING: Everything mocked
54
+ const mockDb = { save: jest.fn() };
55
+ const mockPayment = { charge: jest.fn() };
56
+ // Only testing that mocks were called
57
+
58
+ // FIXED: Mock boundaries only
59
+ const testDb = await createTestDatabase(); // Real
60
+ const mockPayment = createMockPaymentProvider(); // External only
38
61
  ```
39
62
 
40
- ### 4. Overmocking
41
- ```typescript
42
- // Bad - mock everything
43
- // Good - use real implementations when practical
44
63
  ```
64
+ # Anti-Pattern Severity Guide
65
+ CRITICAL (fix immediately):
66
+ - Flaky tests - Random failures destroy trust
67
+ - Testing implementation - Breaks on every refactor
68
+ - Hidden dependencies - Tests fail mysteriously
69
+
70
+ HIGH (fix soon):
71
+ - Slow tests - Hurt development velocity
72
+ - Test interdependence - Can't run in isolation
73
+ - Over-mocking - Tests pass but bugs slip through
74
+
75
+ MEDIUM (plan to fix):
76
+ - Poor naming - Tests don't document behavior
77
+ - Magic values - Unclear expected values
78
+ - Giant tests - Hard to understand
79
+
80
+ LOW (fix when touching):
81
+ - Commented tests - Remove or fix
82
+ - Duplicate tests - Consolidate
83
+ ```
84
+
85
+ ## Best Practices
86
+
87
+ | Do | Avoid |
88
+ |----|-------|
89
+ | Test behavior, not implementation | Accessing private properties |
90
+ | Use factories for test data | Random/inconsistent test data |
91
+ | Write descriptive test names | Generic names like "test1", "should work" |
92
+ | Keep tests independent | Shared mutable state between tests |
93
+ | Mock only external boundaries | Mocking your own code extensively |
94
+ | Use waitFor, not sleep | setTimeout/sleep in tests |
95
+ | Make assertions specific | toBeDefined() for everything |
96
+ | Run tests in random order | Assuming test execution order |
97
+
98
+ ## Related Skills
45
99
 
46
- ## Guidelines
47
- - Test behavior, not implementation
48
- - Keep tests independent
49
- - Mock only external dependencies
50
- - Use realistic test data
100
+ - `developing-test-driven` - TDD with proper patterns
101
+ - `testing-with-vitest` - Vitest testing framework
102
+ - `testing-with-playwright` - E2E testing patterns
103
+ - `debugging-systematically` - Debug flaky test failures
@@ -1,51 +1,90 @@
1
1
  ---
2
- name: token-optimization
3
- description: Token/cost optimization. Use for efficient AI interactions.
2
+ name: optimizing-tokens
3
+ description: AI agent maximizes efficiency and minimizes costs through strategic token usage while maintaining output quality. Use when managing AI interactions, designing prompts, or reducing costs.
4
4
  ---
5
5
 
6
- # Token Optimization Skill
6
+ # Optimizing Tokens
7
7
 
8
- ## Strategies
8
+ ## Quick Start
9
9
 
10
- ### 1. Concise Prompts
11
- ```
12
- # Bad
13
- Can you please help me understand what this function does
14
- and explain it in detail with examples?
10
+ 1. **Analyze** - Identify input vs output token distribution
11
+ 2. **Minimize Context** - Read only relevant file sections, not entire files
12
+ 3. **Optimize Prompts** - Use direct commands, remove filler words
13
+ 4. **Structure Outputs** - Request concise formats (JSON over prose)
14
+ 5. **Batch Operations** - Combine related requests, avoid duplicate context
15
+ 6. **Select Model** - Match model tier to task complexity
15
16
 
16
- # Good
17
- Explain this function briefly.
18
- ```
17
+ ## Features
19
18
 
20
- ### 2. Targeted Reading
21
- ```
22
- # Bad
23
- Read("entire-large-file.ts")
19
+ | Feature | Description | Guide |
20
+ |---------|-------------|-------|
21
+ | Context Targeting | Read only needed code sections | Line ranges, pattern search, summaries |
22
+ | Prompt Efficiency | Direct commands vs verbose requests | 79% reduction possible |
23
+ | Output Formatting | Structured concise responses | JSON/YAML over verbose explanations |
24
+ | Model Selection | Right model for task complexity | Haiku: simple, Sonnet: standard, Opus: complex |
25
+ | Batching | Combine related operations | Single request with multiple outputs |
26
+ | Caching | Avoid redundant computation | Cache by content hash + timestamp |
24
27
 
25
- # Good
26
- Read("file.ts", { offset: 50, limit: 30 })
27
- ```
28
+ ## Common Patterns
28
29
 
29
- ### 3. Efficient Searches
30
30
  ```
31
- # Bad
32
- Grep(".*") in all files
31
+ # Prompt Optimization (79% reduction)
32
+ INEFFICIENT (120 tokens):
33
+ "I would really appreciate it if you could help me
34
+ with this task. What I need you to do is to please
35
+ analyze this code and look for any bugs..."
36
+
37
+ EFFICIENT (25 tokens):
38
+ "Analyze for bugs, error handling issues, security.
39
+ For each: location, problem, fix."
40
+
41
+ # Context Optimization
42
+ INEFFICIENT: Read entire 1000-line file
43
+ EFFICIENT: Read lines 45-60 around target function
33
44
 
34
- # Good
35
- Grep("specificPattern", { path: "src/", glob: "*.ts" })
45
+ # Output Format
46
+ INEFFICIENT: "Please explain in detail..."
47
+ EFFICIENT: "Output: JSON {name, severity, fix}"
48
+
49
+ # Batching
50
+ INEFFICIENT:
51
+ Request 1: "Given code [100 lines], find bugs"
52
+ Request 2: "Given code [same 100 lines], add types"
53
+
54
+ EFFICIENT:
55
+ Single request: "Given code [100 lines]:
56
+ 1. Find bugs
57
+ 2. Add types"
36
58
  ```
37
59
 
38
- ### 4. Batch Operations
39
60
  ```
40
- # Bad
41
- Multiple separate tool calls
61
+ # Model Selection Guide
62
+ | Task Type | Model | Examples |
63
+ |-----------|-------|----------|
64
+ | Simple | Haiku | Formatting, syntax check, lookups |
65
+ | Standard | Sonnet | Features, bugs, reviews, tests |
66
+ | Complex | Opus | Architecture, security, critical code |
42
67
 
43
- # Good
44
- Combined operations in one call
68
+ # Search Efficiency
69
+ INEFFICIENT: grep ".*" / (matches everything)
70
+ EFFICIENT: grep "handleAuth" src/ --type ts
45
71
  ```
46
72
 
47
- ## Savings
48
- - 30-70% reduction possible
49
- - Focus on high-value output
50
- - Minimize unnecessary context
51
- - Use token-efficient mode
73
+ ## Best Practices
74
+
75
+ | Do | Avoid |
76
+ |----|-------|
77
+ | Read only what's needed - use line ranges | Reading entire files for one function |
78
+ | Use direct language - commands over requests | Verbose, polite phrasing in prompts |
79
+ | Structure outputs - JSON/YAML over prose | Requesting detailed explanations for simple tasks |
80
+ | Batch operations - combine related requests | Repeating context across multiple requests |
81
+ | Choose right model - Haiku for simple tasks | Using most powerful model for everything |
82
+ | Limit search results - use head_limit | Unbounded searches returning thousands of results |
83
+ | Cache results - avoid redundant computation | Re-analyzing unchanged files |
84
+ | Progressive loading - start minimal, expand | Loading full context when partial suffices |
85
+
86
+ ## Related Skills
87
+
88
+ - `dispatching-parallel-agents` - Efficient multi-agent patterns
89
+ - `writing-plans` - Structured planning reduces iteration
90
+ - `thinking-sequentially` - Organized reasoning saves tokens
@@ -1,32 +1,132 @@
1
1
  ---
2
- name: verification-before-completion
3
- description: Evidence-based verification. Use before marking tasks complete.
2
+ name: verifying-before-completion
3
+ description: AI agent validates work through evidence-based verification with comprehensive checklists, automated validation, and proof-of-work documentation. Use when completing tasks, preparing for review, or ensuring quality.
4
4
  ---
5
5
 
6
- # Verification Before Completion Skill
7
-
8
- ## Checklist
9
- Before marking complete:
10
-
11
- - [ ] **Tests pass** - All tests green
12
- - [ ] **Manual test** - Verified manually
13
- - [ ] **Edge cases** - Considered and handled
14
- - [ ] **Errors** - Error handling works
15
- - [ ] **Types** - No type errors
16
- - [ ] **Lint** - No lint errors
17
-
18
- ## Verification Steps
19
- 1. Run full test suite
20
- 2. Test happy path manually
21
- 3. Test error cases
22
- 4. Check type safety
23
- 5. Verify in production-like env
24
-
25
- ## Evidence
26
- Document verification:
27
- ```markdown
28
- ## Verification
29
- - Tests: ✅ 45 passed
30
- - Manual: ✅ Tested [scenario]
31
- - Edge cases: ✅ Handled [case]
6
+ # Verifying Before Completion
7
+
8
+ ## Quick Start
9
+
10
+ 1. **Functional** - All acceptance criteria met, happy path works, edge cases handled
11
+ 2. **Technical** - Tests pass, coverage met, lint clean, build succeeds
12
+ 3. **Security** - No secrets exposed, input sanitized, auth verified
13
+ 4. **Performance** - Response time acceptable, no N+1, no memory leaks
14
+ 5. **Documentation** - Code comments, API docs, README updated
15
+ 6. **Evidence** - Collect screenshots, test output, metrics for proof
16
+
17
+ ## Features
18
+
19
+ | Feature | Description | Guide |
20
+ |---------|-------------|-------|
21
+ | Universal Checklist | Comprehensive validation | Functional, technical, security, perf, docs |
22
+ | Evidence Collection | Proof of verification | Test output, screenshots, metrics |
23
+ | Automated Pipeline | CI/CD validation | Type check, lint, test, build, audit |
24
+ | Type-Specific Checks | Context-aware validation | UI, API, migration, bug fix, optimization |
25
+ | Pre-Commit Hooks | Catch issues early | lint-staged, related tests |
26
+ | Sign-Off Template | Formal completion record | Verified by, date, evidence links |
27
+
28
+ ## Common Patterns
29
+
30
+ ```
31
+ # Universal Verification Checklist
32
+ FUNCTIONAL:
33
+ [ ] All acceptance criteria met
34
+ [ ] Happy path works correctly
35
+ [ ] Edge cases handled
36
+ [ ] Error handling works
37
+ [ ] Input validation works
38
+
39
+ TECHNICAL:
40
+ [ ] Tests pass (unit, integration, E2E)
41
+ [ ] Coverage meets threshold (80%+)
42
+ [ ] No TypeScript/lint errors
43
+ [ ] Build succeeds
44
+ [ ] No security vulnerabilities
45
+
46
+ DOCUMENTATION:
47
+ [ ] Complex logic commented
48
+ [ ] API documentation updated
49
+ [ ] README updated if needed
50
+ ```
51
+
52
+ ```bash
53
+ # Automated Verification Script
54
+ npm run lint # Lint check
55
+ npm run typecheck # Type check
56
+ npm test # Unit tests
57
+ npm run build # Build verification
58
+ npm audit # Security audit
59
+
60
+ # Full verification
61
+ npm run verify # Runs all checks
62
+ ```
63
+
32
64
  ```
65
+ # Evidence Documentation Template
66
+ ## Test Evidence
67
+ $ npm test
68
+ Test Suites: 15 passed
69
+ Tests: 87 passed
70
+ Coverage: 85.2%
71
+
72
+ ## Manual Verification
73
+ | Step | Expected | Actual | Status |
74
+ |------|----------|--------|--------|
75
+ | Login | Form appears | Works | Pass |
76
+ | Submit | Success msg | Shows | Pass |
77
+
78
+ ## Performance Metrics
79
+ | Metric | Baseline | Current | Status |
80
+ |--------|----------|---------|--------|
81
+ | Bundle | 245 KB | 248 KB | Pass |
82
+ | API | 150ms | 145ms | Pass |
83
+
84
+ ## Sign-Off
85
+ [x] All tests pass
86
+ [x] Manual testing complete
87
+ [x] Ready for review
88
+ Verified by: [Name] on [Date]
89
+ ```
90
+
91
+ ```
92
+ # Type-Specific Checklists
93
+ UI COMPONENT:
94
+ [ ] Renders in all browsers
95
+ [ ] Responsive mobile/tablet/desktop
96
+ [ ] Loading/error/empty states
97
+ [ ] Keyboard accessible
98
+ [ ] Matches design specs
99
+
100
+ API ENDPOINT:
101
+ [ ] Correct status codes
102
+ [ ] Response matches schema
103
+ [ ] Auth/authz enforced
104
+ [ ] Input validated
105
+ [ ] Documented in OpenAPI
106
+
107
+ BUG FIX:
108
+ [ ] Root cause identified
109
+ [ ] Fix addresses root cause
110
+ [ ] Regression test added
111
+ [ ] No new bugs introduced
112
+ ```
113
+
114
+ ## Best Practices
115
+
116
+ | Do | Avoid |
117
+ |----|-------|
118
+ | Run all tests before marking complete | Skipping verification steps |
119
+ | Document evidence of verification | Marking complete without evidence |
120
+ | Test both happy and unhappy paths | Assuming tests are enough |
121
+ | Verify on multiple browsers/devices | Ignoring edge cases |
122
+ | Check performance impact | Skipping security checks |
123
+ | Use automated verification | Merging without green CI |
124
+ | Include screenshots for UI | Forgetting mobile testing |
125
+ | Self-review before requesting | Rushing verification |
126
+
127
+ ## Related Skills
128
+
129
+ - `finishing-development-branches` - Complete branch preparation
130
+ - `executing-plans` - Quality gates during execution
131
+ - `debugging-systematically` - Verify fixes work
132
+ - `developing-test-driven` - Build verification into process