jettypod 4.1.2 → 4.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.
Files changed (179) hide show
  1. package/.nvmrc +1 -0
  2. package/docs/COMPLETE-TESTING-STRATEGY.md +970 -0
  3. package/docs/DECISIONS.md +10 -12
  4. package/docs/NODE_VERSION.md +83 -0
  5. package/docs/TDD-INFRASTRUCTURE-STRATEGY.md +1374 -0
  6. package/docs/TESTING-FOR-NON-ENGINEERS.md +1588 -0
  7. package/docs/TESTING-STRATEGY-AUDIT.md +698 -0
  8. package/hooks/post-checkout +17 -0
  9. package/hooks/post-merge +17 -0
  10. package/hooks/pre-commit +30 -0
  11. package/jettypod.js +259 -120
  12. package/lib/coverage-tracker.js +218 -0
  13. package/lib/database.js +2 -0
  14. package/lib/db-export.js +192 -0
  15. package/lib/db-import.js +193 -0
  16. package/lib/external-transition-handler.js +32 -0
  17. package/lib/git-hook-helpers.js +174 -0
  18. package/lib/git-root.js +90 -0
  19. package/lib/infrastructure-chore-generator.js +45 -0
  20. package/lib/install-hooks.js +52 -0
  21. package/lib/jettypod-backup.js +238 -0
  22. package/lib/merge-lock.js +193 -0
  23. package/lib/migrations/012-add-worktree-path.js +38 -0
  24. package/lib/migrations/013-worktrees-table.js +86 -0
  25. package/lib/migrations/014-migrate-worktree-data.js +161 -0
  26. package/lib/migrations/015-merge-locks-table.js +67 -0
  27. package/lib/pattern-finder.js +152 -0
  28. package/lib/process-manager.js +140 -0
  29. package/lib/production-standards-reader.js +13 -2
  30. package/lib/production-standards-writer.js +85 -0
  31. package/lib/skills/feature-planning/dry-run-validator.js +135 -0
  32. package/lib/skills/feature-planning/validation-formatter.js +160 -0
  33. package/lib/smart-conflict-detection.js +168 -0
  34. package/lib/smart-fetch-rebase.js +614 -0
  35. package/lib/step-definition-parser.js +76 -0
  36. package/lib/unit-test-generator.js +232 -0
  37. package/lib/verification-command-generator.js +66 -0
  38. package/lib/worktree-diagnostics.js +413 -0
  39. package/lib/worktree-facade.js +174 -0
  40. package/lib/worktree-manager.js +636 -0
  41. package/lib/worktree-reconciler.js +429 -0
  42. package/package.json +30 -3
  43. package/skills-templates/external-transition/SKILL.md +34 -3
  44. package/skills-templates/feature-planning/SKILL.md +190 -24
  45. package/skills-templates/production-mode/SKILL.md +127 -9
  46. package/skills-templates/speed-mode/SKILL.md +454 -51
  47. package/skills-templates/stable-mode/SKILL.md +285 -76
  48. package/.claude/PROTECT_SKILLS.md +0 -28
  49. package/.claude/settings.json +0 -24
  50. package/.claude/settings.local.json +0 -16
  51. package/.claude/skills/epic-planning/SKILL.md +0 -297
  52. package/.claude/skills/external-transition/SKILL.md +0 -384
  53. package/.claude/skills/feature-planning/SKILL.md +0 -464
  54. package/.claude/skills/production-mode/SKILL.md +0 -369
  55. package/.claude/skills/speed-mode/SKILL.md +0 -481
  56. package/.claude/skills/stable-mode/SKILL.md +0 -713
  57. package/.claude/skills.backup-2025-11-10T23-33-09-368Z/epic-planning/SKILL.md +0 -297
  58. package/.claude/skills.backup-2025-11-10T23-33-09-368Z/feature-planning/SKILL.md +0 -464
  59. package/.claude/skills.backup-2025-11-10T23-33-09-368Z/speed-mode/SKILL.md +0 -467
  60. package/.claude/skills.backup-2025-11-10T23-33-09-368Z/stable-mode/SKILL.md +0 -673
  61. package/.claude/skills.backup-2025-11-11T16-15-10-070Z/epic-discover/SKILL.md +0 -297
  62. package/.claude/skills.backup-2025-11-11T16-42-43-212Z/epic-planning/SKILL.md +0 -297
  63. package/.claude/skills.backup-2025-11-11T16-42-43-212Z/feature-planning/SKILL.md +0 -464
  64. package/.claude/skills.backup-2025-11-11T16-42-43-212Z/speed-mode/SKILL.md +0 -467
  65. package/.claude/skills.backup-2025-11-11T16-42-43-212Z/stable-mode/SKILL.md +0 -673
  66. package/.claude/skills.backup-2025-11-11T17-06-09-783Z/epic-planning/SKILL.md +0 -297
  67. package/.claude/skills.backup-2025-11-11T17-06-09-783Z/feature-planning/SKILL.md +0 -464
  68. package/.claude/skills.backup-2025-11-11T17-06-09-783Z/speed-mode/SKILL.md +0 -467
  69. package/.claude/skills.backup-2025-11-11T17-06-09-783Z/stable-mode/SKILL.md +0 -673
  70. package/.devpod/current-work.json +0 -10
  71. package/.devpod/work.db +0 -0
  72. package/.github/workflows/test-safety.yml +0 -85
  73. package/.jettypod/config.json +0 -5
  74. package/.jettypod/current-work.json +0 -10
  75. package/.jettypod/hooks/README.md +0 -77
  76. package/.jettypod/hooks/protect-claude-md.js +0 -338
  77. package/.jettypod/test-work.db +0 -0
  78. package/.jettypod/work.db +0 -0
  79. package/CLAUDE.md +0 -49
  80. package/SPEED-STABLE-AUDIT.md +0 -853
  81. package/SYSTEM-BEHAVIOR.md +0 -2199
  82. package/TEST_SAFETY_AUDIT.md +0 -314
  83. package/TEST_SAFETY_IMPLEMENTATION.md +0 -97
  84. package/cucumber-report.html +0 -45
  85. package/dist/devpod-linux +0 -0
  86. package/dist/devpod-macos +0 -0
  87. package/dist/devpod-win.exe +0 -0
  88. package/docs/features/jettypod-standards-explained.md +0 -543
  89. package/docs/features/standards-inventory.md +0 -257
  90. package/features/auto-generate-production-chores.feature +0 -13
  91. package/features/backlog-command.feature +0 -26
  92. package/features/backlog-filtering-production.feature +0 -10
  93. package/features/claude-md-protection/steps.js +0 -498
  94. package/features/decisions/index.js +0 -490
  95. package/features/decisions/index.test.js +0 -208
  96. package/features/fix-text-wrapping.feature +0 -42
  97. package/features/git-hooks/git-hooks.feature +0 -30
  98. package/features/git-hooks/index.js +0 -93
  99. package/features/git-hooks/index.test.js +0 -137
  100. package/features/git-hooks/post-commit +0 -56
  101. package/features/git-hooks/post-merge +0 -47
  102. package/features/git-hooks/pre-commit +0 -28
  103. package/features/git-hooks/simple-steps.js +0 -53
  104. package/features/git-hooks/simple-test.feature +0 -10
  105. package/features/git-hooks/steps.js +0 -196
  106. package/features/jettypod-update-command.feature +0 -46
  107. package/features/mode-prompts/index.js +0 -95
  108. package/features/mode-prompts/simple-steps.js +0 -44
  109. package/features/mode-prompts/simple-test.feature +0 -9
  110. package/features/mode-prompts/validation.test.js +0 -120
  111. package/features/multiple-claude-instances.feature +0 -121
  112. package/features/production-mode-skill.feature +0 -121
  113. package/features/refactor-mode/steps.js +0 -217
  114. package/features/refactor-mode.feature +0 -49
  115. package/features/simplify-external-transition.feature +0 -166
  116. package/features/skills-update/index.test.js +0 -216
  117. package/features/step_definitions/backlog-command.steps.js +0 -37
  118. package/features/step_definitions/fix-text-wrapping.steps.js +0 -271
  119. package/features/step_definitions/multiple-claude-instances.steps.js +0 -621
  120. package/features/step_definitions/production-mode-skill.steps.js +0 -862
  121. package/features/step_definitions/simplify-external-transition.steps.js +0 -370
  122. package/features/step_definitions/terminal-logo.steps.js +0 -145
  123. package/features/step_definitions/update-command.steps.js +0 -183
  124. package/features/support/hooks.js +0 -9
  125. package/features/terminal-logo/index.js +0 -39
  126. package/features/terminal-logo/terminal-logo.feature +0 -30
  127. package/features/update-command/index.js +0 -181
  128. package/features/update-command/index.test.js +0 -225
  129. package/features/work-commands/bug-workflow-display.feature +0 -22
  130. package/features/work-commands/index.js +0 -498
  131. package/features/work-commands/simple-steps.js +0 -69
  132. package/features/work-commands/stable-tests.feature +0 -57
  133. package/features/work-commands/steps.js +0 -1174
  134. package/features/work-commands/validation.test.js +0 -88
  135. package/features/work-commands/work-commands.feature +0 -13
  136. package/features/work-tracking/discovery-validation.test.js +0 -228
  137. package/features/work-tracking/index.js +0 -1921
  138. package/features/work-tracking/mode-required.feature +0 -112
  139. package/features/work-tracking/phase-tracking.test.js +0 -482
  140. package/features/work-tracking/prototype-tracking.test.js +0 -485
  141. package/features/work-tracking/tree-view.test.js +0 -310
  142. package/features/work-tracking/work-set-mode.feature +0 -71
  143. package/features/work-tracking/work-start-mode.feature +0 -88
  144. package/full-test.txt +0 -0
  145. package/lib/bug-workflow.test.js +0 -177
  146. package/lib/claudemd.test.js +0 -195
  147. package/lib/config.test.js +0 -511
  148. package/lib/constants.test.js +0 -164
  149. package/lib/current-work.test.js +0 -146
  150. package/lib/database-project-config.test.js +0 -111
  151. package/lib/database.test.js +0 -106
  152. package/lib/decisions-generator.test.js +0 -457
  153. package/lib/decisions-helpers.test.js +0 -310
  154. package/lib/git-coordinator.js +0 -167
  155. package/lib/git.test.js +0 -145
  156. package/lib/migrations/002-default-work-item-modes.test.js +0 -351
  157. package/lib/production-chore-generator.test.js +0 -432
  158. package/lib/production-context-detector.test.js +0 -277
  159. package/lib/production-scenario-appender.test.js +0 -235
  160. package/lib/production-scenario-validator.test.js +0 -246
  161. package/lib/production-standards-reader.test.js +0 -270
  162. package/lib/project-state.test.js +0 -92
  163. package/lib/push-queue.js +0 -417
  164. package/lib/queue-processor.js +0 -74
  165. package/lib/test-helpers.js +0 -202
  166. package/lib/test-helpers.test.js +0 -255
  167. package/prototypes/2025-01-11-production-mode-autonomous.js +0 -119
  168. package/prototypes/2025-01-11-production-mode-collaborative.js +0 -166
  169. package/prototypes/2025-01-11-production-mode-guided.js +0 -217
  170. package/prototypes/2025-01-11-production-mode-smart-context.js +0 -347
  171. package/prototypes/2025-01-11-production-standards-example.md +0 -204
  172. package/prototypes/2025-11-10-backlog-filtering-tree-aware.js +0 -242
  173. package/prototypes/test/index.html +0 -1
  174. package/setup-dist-repo.sh +0 -68
  175. package/test-production-standards-engine.js +0 -130
  176. package/test-results.json +0 -2195
  177. package/test-safety-check.sh +0 -80
  178. package/work-item-tracking-plan.md +0 -199
  179. /package/{.jettypod/devpod.db → jettypod.db} +0 -0
@@ -1,257 +0,0 @@
1
- # JettyPod Standards Inventory
2
-
3
- Complete listing of all standards with their priority levels, project stage requirements, and default values.
4
-
5
- ## Understanding the Attributes
6
-
7
- ### Priority Levels
8
- - **critical**: Must-have standards that appear even in speed mode
9
- - **high**: Important standards that appear in speed and discovery modes
10
- - **medium**: Standard practices that appear in discovery and production modes
11
- - **low**: Nice-to-have standards that only appear in production mode
12
-
13
- ### Project Stages
14
- - **empty**: Brand new project, just starting
15
- - **starting**: Early development, basic structure in place
16
- - **growing**: Active development, team expanding
17
- - **mature**: Established project, stable development
18
- - **production**: Live product with real users
19
-
20
- ---
21
-
22
- ## Core Standards (12 total)
23
-
24
- | Standard ID | Title | Priority | Stage | Default Value | Description |
25
- |------------|-------|----------|-------|---------------|-------------|
26
- | project_structure | Project Structure | critical | empty | feature-based | Organize by features with /features, /shared, /core folders |
27
- | naming_files | File Naming | critical | empty | PascalCase for components (.tsx), camelCase for utils (.ts) | Component: UserProfile.tsx, Util: formatDate.ts, Hook: useAuth.ts |
28
- | naming_variables | Variable Naming | critical | empty | camelCase, is/has/should prefixes for booleans | isLoading, hasError, shouldUpdate, userData |
29
- | naming_functions | Function Naming | high | empty | Verb prefixes (get/set/handle/validate) | getUserData, handleClick, validateForm |
30
- | git_commits | Git Commit Messages | high | empty | Conventional commits (feat/fix/docs) | feat: add user authentication, fix: resolve login bug |
31
- | git_branches | Git Branch Naming | medium | starting | type/description format | feature/user-auth, bugfix/login-error, hotfix/security-patch |
32
- | data_types | Data Types | high | empty | TypeScript strict mode, interfaces over types | Use interfaces for objects, types for unions/primitives |
33
- | styling_method | Styling Method | high | empty | Tailwind CSS or CSS Modules | Tailwind for utilities, CSS Modules for complex components |
34
- | component_structure | Component Structure | high | empty | Function components with hooks | Props at top, hooks next, handlers, then JSX return |
35
- | code_formatting | Code Formatting | medium | empty | Prettier with 2 spaces, single quotes | 80 char line limit, trailing commas, no semicolons |
36
- | imports_exports | Import/Export Style | medium | starting | Named exports, absolute imports | Named exports except pages, @ alias for src |
37
- | typescript_config | TypeScript Config | low | growing | Strict mode enabled | strict: true, noImplicitAny, strictNullChecks |
38
-
39
- ---
40
-
41
- ## Data & API Standards (10 total)
42
-
43
- | Standard ID | Title | Priority | Stage | Default Value | Description |
44
- |------------|-------|----------|-------|---------------|-------------|
45
- | database_naming | Database Naming | high | starting | snake_case | Tables: plural (users), columns: snake_case (created_at) |
46
- | api_naming | API Naming | critical | starting | RESTful URLs | /api/v1/users, /api/v1/users/:id, plural nouns |
47
- | api_responses | API Response Format | critical | starting | Envelope pattern | {success: true, data: {}, error: null, meta: {}} |
48
- | api_errors | API Error Handling | high | starting | Consistent error format | {success: false, error: {code, message, details}} |
49
- | rest_conventions | REST Conventions | high | growing | Standard HTTP methods | GET (read), POST (create), PUT (update), DELETE |
50
- | graphql_schema | GraphQL Schema | medium | growing | Type-first design | Define schema before resolvers, use clear type names |
51
- | pagination | Pagination | medium | growing | Cursor-based | {data: [], pageInfo: {hasNext, cursor}} |
52
- | filtering | Filtering & Sorting | medium | growing | Query parameters | ?filter[status]=active&sort=-created_at |
53
- | caching | Caching Strategy | low | mature | Cache-Control headers | CDN for static, Redis for dynamic, 5min default |
54
- | rate_limiting | Rate Limiting | low | production | Token bucket | 100 req/min authenticated, 20 req/min anonymous |
55
-
56
- ---
57
-
58
- ## UI/UX Standards (10 total)
59
-
60
- | Standard ID | Title | Priority | Stage | Default Value | Description |
61
- |------------|-------|----------|-------|---------------|-------------|
62
- | component_library | Component Library | high | starting | shadcn/ui | Use shadcn/ui components from @/components/ui/ |
63
- | ui_consistency | UI Consistency | critical | empty | Design system approach | Consistent components, patterns, and behaviors |
64
- | color_system | Color System | high | empty | Semantic colors | primary, secondary, success, warning, error, neutral |
65
- | spacing | Spacing System | high | empty | 8px base unit | 0.5rem (4px), 1rem (8px), 2rem (16px), 4rem (32px) |
66
- | typography | Typography | high | starting | System font stack | -apple-system, BlinkMacSystemFont, Segoe UI, Roboto |
67
- | forms | Form Design | high | starting | Label above input | Required fields marked with *, inline validation |
68
- | buttons | Button Styles | medium | starting | 3 variants | Primary (filled), secondary (outline), ghost (text) |
69
- | loading_states | Loading States | high | starting | Skeleton screens | Show layout structure while loading content |
70
- | error_states | Error States | high | starting | Inline + toast | Field errors inline, system errors as toast |
71
- | accessibility | Accessibility | medium | growing | WCAG 2.1 AA | Semantic HTML, ARIA labels, keyboard navigation |
72
- | animations | Animations | low | mature | 200-300ms duration | Ease-in-out, respect prefers-reduced-motion |
73
-
74
- ---
75
-
76
- ## Security Standards (10 total)
77
-
78
- | Standard ID | Title | Priority | Stage | Default Value | Description |
79
- |------------|-------|----------|-------|---------------|-------------|
80
- | authentication | Authentication | critical | starting | JWT + refresh tokens | Access token 15min, refresh token 7 days |
81
- | authorization | Authorization | critical | starting | RBAC | Role-based access control with permissions |
82
- | password_handling | Password Handling | critical | starting | bcrypt, 10 rounds | Min 8 chars, 1 upper, 1 lower, 1 number, 1 special |
83
- | data_encryption | Data Encryption | high | growing | AES-256 | Encrypt PII at rest, TLS 1.3 in transit |
84
- | input_validation | Input Validation | critical | starting | Whitelist approach | Validate type, length, format, sanitize HTML |
85
- | xss_prevention | XSS Prevention | critical | starting | Escape output | DOMPurify for user content, CSP headers |
86
- | sql_injection | SQL Injection Prevention | critical | starting | Parameterized queries | Never concatenate SQL, use ORM or prepared statements |
87
- | cors | CORS Configuration | high | growing | Whitelist origins | Specific origins only, credentials: true if needed |
88
- | security_headers | Security Headers | medium | mature | OWASP recommendations | X-Frame-Options, X-Content-Type-Options, CSP |
89
- | audit_logging | Audit Logging | low | production | Who, what, when, where | User ID, action, timestamp, IP, user agent |
90
-
91
- ---
92
-
93
- ## Quality & Testing Standards (9 total)
94
-
95
- | Standard ID | Title | Priority | Stage | Default Value | Description |
96
- |------------|-------|----------|-------|---------------|-------------|
97
- | unit_testing | Unit Testing | high | growing | Jest + Testing Library | Test behavior not implementation, aim for 80% coverage |
98
- | integration_testing | Integration Testing | medium | growing | API + DB tests | Test endpoints with real database, use transactions |
99
- | e2e_testing | E2E Testing | low | mature | Playwright or Cypress | Critical user flows only, run in CI |
100
- | test_coverage | Test Coverage | medium | mature | 80% target | Measure but don't enforce, focus on critical paths |
101
- | error_handling | Error Handling | critical | starting | Try-catch + boundaries | Async try-catch, React error boundaries, fallback UI |
102
- | logging | Logging | high | growing | Structured JSON | Log levels: error, warn, info, debug, trace |
103
- | monitoring | Monitoring | medium | production | APM + error tracking | Sentry for errors, DataDog/NewRelic for APM |
104
- | performance | Performance Standards | medium | mature | Core Web Vitals | LCP < 2.5s, FID < 100ms, CLS < 0.1 |
105
- | documentation | Documentation | high | growing | JSDoc + README | Function comments, API docs, setup instructions |
106
-
107
- ---
108
-
109
- ## Advanced/Enterprise Standards (8 total)
110
-
111
- | Standard ID | Title | Priority | Stage | Default Value | Description |
112
- |------------|-------|----------|-------|---------------|-------------|
113
- | deployment | Deployment Process | medium | mature | Blue-green deployment | Zero-downtime deploys with rollback capability |
114
- | ci_cd | CI/CD Pipeline | medium | mature | GitHub Actions + Vercel | Test → Build → Deploy on merge to main |
115
- | environment_config | Environment Config | high | growing | .env files + validation | Never commit .env, use .env.example, validate on start |
116
- | feature_flags | Feature Flags | low | mature | LaunchDarkly or custom | Boolean flags, gradual rollout, user targeting |
117
- | i18n | Internationalization | low | mature | next-i18next | JSON translation files, locale detection, RTL support |
118
- | microservices | Microservices | low | production | API Gateway pattern | Single entry point, service discovery, circuit breakers |
119
- | scaling | Scaling Patterns | low | production | Horizontal first | Auto-scaling groups, load balancers, CDN |
120
- | disaster_recovery | Disaster Recovery | low | production | 3-2-1 backup rule | 3 copies, 2 different media, 1 offsite, RTO < 4hrs |
121
-
122
- ---
123
-
124
- ## Standards Distribution Summary
125
-
126
- ### By Priority
127
- - **Critical**: 11 standards (18%)
128
- - **High**: 20 standards (33%)
129
- - **Medium**: 17 standards (28%)
130
- - **Low**: 12 standards (20%)
131
-
132
- ### By Stage (when first introduced)
133
- - **Empty**: 12 standards
134
- - **Starting**: 19 standards
135
- - **Growing**: 14 standards
136
- - **Mature**: 9 standards
137
- - **Production**: 6 standards
138
-
139
- ### Stage Accumulation (total available)
140
- - **Empty stage**: 12 standards available
141
- - **Starting stage**: 31 standards available (empty + starting)
142
- - **Growing stage**: 45 standards available (+ growing)
143
- - **Mature stage**: 54 standards available (+ mature)
144
- - **Production stage**: 60 standards available (all)
145
-
146
- ---
147
-
148
- ## Mode Visibility Matrix
149
-
150
- ### Speed Mode (Critical + High only)
151
- - **Empty stage**: ~8 standards visible
152
- - **Starting stage**: ~20 standards visible
153
- - **Growing stage**: ~25 standards visible
154
- - **Mature stage**: ~28 standards visible
155
- - **Production stage**: ~31 standards visible
156
-
157
- ### Discovery Mode (All priorities, balanced detail)
158
- - **Empty stage**: 12 standards visible
159
- - **Starting stage**: 31 standards visible
160
- - **Growing stage**: 45 standards visible
161
- - **Mature stage**: 54 standards visible
162
- - **Production stage**: 60 standards visible
163
-
164
- ### Production Mode (All priorities, full documentation)
165
- - Same counts as Discovery mode but with:
166
- - Detailed examples for each standard
167
- - Edge case documentation
168
- - Implementation notes
169
- - Security considerations
170
- - Performance implications
171
-
172
- ---
173
-
174
- ## Bundle Composition
175
-
176
- ### Core Bundle
177
- Contains: All 12 core standards
178
-
179
- ### Auth Bundle
180
- Contains: authentication, authorization, password_handling, input_validation, xss_prevention
181
-
182
- ### API Bundle
183
- Contains: api_naming, api_responses, api_errors, rest_conventions, pagination, filtering, rate_limiting
184
-
185
- ### Database Bundle
186
- Contains: database_naming, sql_injection, data_encryption, caching
187
-
188
- ### UI Bundle
189
- Contains: ui_consistency, color_system, spacing, typography, forms, buttons, loading_states, error_states
190
-
191
- ### Forms Bundle
192
- Contains: forms, input_validation, error_states, accessibility
193
-
194
- ### Testing Bundle
195
- Contains: unit_testing, integration_testing, e2e_testing, test_coverage
196
-
197
- ### Security Bundle
198
- Contains: All 10 security standards
199
-
200
- ### Quality Bundle
201
- Contains: All 9 quality standards
202
-
203
- ### Advanced Bundle
204
- Contains: All 8 advanced standards
205
-
206
- ### shadcn Bundle (NEW)
207
- Contains: component_library (configured for shadcn/ui), styling_method (Tailwind + CSS variables), styling_spacing, forms_structure, forms_validation, accessibility, button_patterns, modal_patterns, notifications
208
-
209
- ### Stack-Specific Bundles
210
- - **nextjs**: core + ui + api + specific Next.js patterns
211
- - **vite_react**: core + ui + forms + Vite-specific patterns
212
- - **node_api**: core + api + database + Node.js patterns
213
-
214
- ---
215
-
216
- ## Default Values Quick Reference
217
-
218
- ### Naming Conventions
219
- - **Files**: PascalCase.tsx for components, camelCase.ts for utils
220
- - **Variables**: camelCase with is/has/should prefixes for booleans
221
- - **Functions**: Verb prefixes (get, set, handle, validate)
222
- - **Database**: snake_case for tables and columns
223
- - **API**: /api/v1/resource format with plural nouns
224
-
225
- ### Development Practices
226
- - **Git**: Conventional commits (feat/fix/docs)
227
- - **Branches**: type/description (feature/user-auth)
228
- - **Testing**: 80% coverage target, behavior over implementation
229
- - **Documentation**: JSDoc comments + README files
230
- - **Errors**: Try-catch blocks + React error boundaries
231
-
232
- ### Technical Choices
233
- - **Component Library**: shadcn/ui (copy-paste into @/components/ui/)
234
- - **TypeScript**: Strict mode with interfaces for objects
235
- - **Styling**: Tailwind CSS or CSS Modules (shadcn uses Tailwind + CSS variables)
236
- - **Components**: Functional with hooks
237
- - **API Responses**: {success, data, error, meta} envelope
238
- - **Authentication**: JWT with 15min access, 7 day refresh
239
-
240
- ### Security Defaults
241
- - **Passwords**: bcrypt with 10 rounds, complex requirements
242
- - **Validation**: Whitelist approach, sanitize HTML
243
- - **CORS**: Whitelist specific origins only
244
- - **Headers**: OWASP recommended security headers
245
- - **Encryption**: AES-256 at rest, TLS 1.3 in transit
246
-
247
- ### shadcn/ui Specific
248
- - **Installation**: `npx shadcn-ui@latest init`
249
- - **Add Components**: `npx shadcn-ui@latest add [component]`
250
- - **Location**: Components go in @/components/ui/
251
- - **Styling**: Use cn() utility for conditional classes
252
- - **Customization**: Via CSS variables in globals.css
253
- - **Approach**: Always check if shadcn has the component before building custom
254
-
255
- ---
256
-
257
- *Last Updated: 2025-09-02*
@@ -1,13 +0,0 @@
1
- Feature: Auto-Generate Production Chores at End of Stable Mode
2
- When stable mode completes all scenarios for a feature, the skill analyzes the
3
- implementation with hot context and generates specific, actionable production chores.
4
- Chore visibility depends on project state (external vs internal).
5
-
6
- Epic: Production Mode
7
- Approach: Preview-and-Confirm (Transparent)
8
-
9
- # NOTE: These tests have been temporarily disabled pending test isolation fixes
10
- # The step definitions were creating data in the production database instead of test database
11
- # Need to rewrite using only CLI commands with proper test directory setup
12
-
13
- # All scenarios have been disabled - see note above
@@ -1,26 +0,0 @@
1
- Feature: Backlog Command
2
- Enhanced command to view work items with built-in filters
3
-
4
- Approach: Enhanced backlog with filters (backlog, backlog all, backlog completed)
5
-
6
- Scenario: User views active backlog items
7
- Given I have work items in various statuses
8
- When I run "jettypod backlog"
9
- Then I see only active work items (backlog, todo, in_progress)
10
- And I see the items in a tree hierarchy
11
- And completed items are hidden
12
-
13
- Scenario: User views all work items including completed
14
- Given I have work items in various statuses
15
- When I run "jettypod backlog all"
16
- Then I see all work items regardless of status
17
- And I see the items in a tree hierarchy
18
-
19
- Scenario: User views only completed items
20
- Given I have work items in various statuses
21
- When I run "jettypod backlog completed"
22
- Then I see only completed work items (done, cancelled)
23
- And I see the items in a tree hierarchy
24
-
25
- # SPEED MODE: Only happy path scenarios above
26
- # STABLE MODE: Will add error handling, edge cases, validation scenarios
@@ -1,10 +0,0 @@
1
- Feature: Backlog Filtering for Production Items
2
- Hide production mode features and their chores from the BACKLOG section
3
- when project_state is 'internal'. Show them with --all flag.
4
-
5
- Epic: Production Mode
6
- Approach: Tree-aware filtering with smart pruning
7
-
8
- # NOTE: These tests have been temporarily disabled pending test isolation fixes
9
- # The step definitions were creating data in the production database instead of test database
10
- # Need to rewrite using only CLI commands with proper test directory setup