jettypod 3.0.1

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 (122) hide show
  1. package/.claude/PROTECT_SKILLS.md +28 -0
  2. package/.claude/settings.json +24 -0
  3. package/.claude/settings.local.json +16 -0
  4. package/.claude/skills/epic-discover/SKILL.md +262 -0
  5. package/.claude/skills/feature-discover/SKILL.md +393 -0
  6. package/.claude/skills/speed-mode/SKILL.md +364 -0
  7. package/.claude/skills/stable-mode/SKILL.md +591 -0
  8. package/.github/workflows/test-safety.yml +85 -0
  9. package/README.md +25 -0
  10. package/SPEED-STABLE-AUDIT.md +853 -0
  11. package/SYSTEM-BEHAVIOR.md +1241 -0
  12. package/TEST_SAFETY_AUDIT.md +314 -0
  13. package/TEST_SAFETY_IMPLEMENTATION.md +97 -0
  14. package/cucumber.js +8 -0
  15. package/docs/COMMAND_REFERENCE.md +903 -0
  16. package/docs/DECISIONS.md +68 -0
  17. package/docs/README.md +48 -0
  18. package/docs/STANDARDS-SYSTEM-DOCUMENTATION.md +374 -0
  19. package/docs/TEST-REWRITE-PLAN.md +261 -0
  20. package/docs/ai-test-writing-requirements.md +219 -0
  21. package/docs/claude-code-skills.md +607 -0
  22. package/docs/core-jettypod-methodology/comprehensive-jettypod-methodology.md +582 -0
  23. package/docs/core-jettypod-methodology/deprecated/jettypod-comprehensive-standards.md +1222 -0
  24. package/docs/core-jettypod-methodology/deprecated/jettypod-operating-guide.md +3399 -0
  25. package/docs/core-jettypod-methodology/deprecated/jettypod-technical-checklist.md +1325 -0
  26. package/docs/core-jettypod-methodology/deprecated/jettypod-vibe-coding-framework.md +1544 -0
  27. package/docs/core-jettypod-methodology/deprecated/prompt-engineering-guide.md +320 -0
  28. package/docs/core-jettypod-methodology/deprecated/vibe-coding-cheatsheet (1).md +516 -0
  29. package/docs/core-jettypod-methodology/deprecated/vibe-coding-framework.md +1544 -0
  30. package/docs/features/jettypod-standards-explained.md +543 -0
  31. package/docs/features/standards-inventory.md +257 -0
  32. package/docs/gap-analysis-current-vs-comprehensive-methodology.md +939 -0
  33. package/docs/jettypod-system-overview.md +409 -0
  34. package/features/auto-generate-production-chores.feature +14 -0
  35. package/features/claude-md-protection/steps.js +487 -0
  36. package/features/decisions/index.js +490 -0
  37. package/features/decisions/index.test.js +208 -0
  38. package/features/git-hooks/git-hooks.feature +30 -0
  39. package/features/git-hooks/index.js +93 -0
  40. package/features/git-hooks/index.test.js +137 -0
  41. package/features/git-hooks/post-commit +56 -0
  42. package/features/git-hooks/post-merge +47 -0
  43. package/features/git-hooks/pre-commit +28 -0
  44. package/features/git-hooks/simple-steps.js +53 -0
  45. package/features/git-hooks/simple-test.feature +10 -0
  46. package/features/git-hooks/steps.js +196 -0
  47. package/features/jettypod-update-command.feature +46 -0
  48. package/features/mode-prompts/index.js +95 -0
  49. package/features/mode-prompts/simple-steps.js +44 -0
  50. package/features/mode-prompts/simple-test.feature +9 -0
  51. package/features/mode-prompts/validation.test.js +120 -0
  52. package/features/refactor-mode/steps.js +217 -0
  53. package/features/refactor-mode.feature +49 -0
  54. package/features/skills-update/index.test.js +216 -0
  55. package/features/step_definitions/auto-generate-production-chores.steps.js +162 -0
  56. package/features/step_definitions/terminal-logo.steps.js +145 -0
  57. package/features/step_definitions/update-command.steps.js +183 -0
  58. package/features/terminal-logo/index.js +39 -0
  59. package/features/terminal-logo/terminal-logo.feature +30 -0
  60. package/features/update-command/index.js +181 -0
  61. package/features/update-command/index.test.js +225 -0
  62. package/features/work-commands/bug-workflow-display.feature +22 -0
  63. package/features/work-commands/index.js +311 -0
  64. package/features/work-commands/simple-steps.js +69 -0
  65. package/features/work-commands/stable-tests.feature +57 -0
  66. package/features/work-commands/steps.js +1120 -0
  67. package/features/work-commands/validation.test.js +88 -0
  68. package/features/work-commands/work-commands.feature +13 -0
  69. package/features/work-tracking/discovery-validation.test.js +228 -0
  70. package/features/work-tracking/index.js +1511 -0
  71. package/features/work-tracking/mode-required.feature +112 -0
  72. package/features/work-tracking/phase-tracking.test.js +482 -0
  73. package/features/work-tracking/prototype-tracking.test.js +485 -0
  74. package/features/work-tracking/tree-view.test.js +310 -0
  75. package/features/work-tracking/work-set-mode.feature +71 -0
  76. package/features/work-tracking/work-start-mode.feature +88 -0
  77. package/full-test.txt +0 -0
  78. package/install.sh +89 -0
  79. package/jettypod.js +1640 -0
  80. package/lib/bug-workflow.js +94 -0
  81. package/lib/bug-workflow.test.js +177 -0
  82. package/lib/claudemd.js +130 -0
  83. package/lib/claudemd.test.js +195 -0
  84. package/lib/comprehensive-standards-full.json +1778 -0
  85. package/lib/config.js +181 -0
  86. package/lib/config.test.js +511 -0
  87. package/lib/constants.js +107 -0
  88. package/lib/constants.test.js +164 -0
  89. package/lib/current-work.js +130 -0
  90. package/lib/current-work.test.js +146 -0
  91. package/lib/database-project-config.test.js +107 -0
  92. package/lib/database.js +256 -0
  93. package/lib/database.test.js +106 -0
  94. package/lib/decisions-generator.js +102 -0
  95. package/lib/decisions-generator.test.js +457 -0
  96. package/lib/decisions-helpers.js +119 -0
  97. package/lib/decisions-helpers.test.js +310 -0
  98. package/lib/discovery-checkpoint.js +83 -0
  99. package/lib/docs-generator.js +280 -0
  100. package/lib/external-checklist.js +177 -0
  101. package/lib/git.js +142 -0
  102. package/lib/git.test.js +145 -0
  103. package/lib/logo.js +3 -0
  104. package/lib/migrations/001-epic-to-parent.js +24 -0
  105. package/lib/migrations/002-default-work-item-modes.js +37 -0
  106. package/lib/migrations/002-default-work-item-modes.test.js +351 -0
  107. package/lib/migrations/003-epic-discovery-fields.js +52 -0
  108. package/lib/migrations/004-discovery-decisions-table.js +32 -0
  109. package/lib/migrations/005-migrate-decision-data.js +62 -0
  110. package/lib/migrations/006-feature-phase-field.js +61 -0
  111. package/lib/migrations/007-prototype-tracking.js +38 -0
  112. package/lib/migrations/008-scenario-file-field.js +24 -0
  113. package/lib/migrations/index.js +74 -0
  114. package/lib/production-helpers.js +69 -0
  115. package/lib/project-state.test.js +92 -0
  116. package/lib/test-helpers.js +184 -0
  117. package/lib/test-helpers.test.js +255 -0
  118. package/package.json +36 -0
  119. package/prototypes/test/index.html +1 -0
  120. package/setup-dist-repo.sh +68 -0
  121. package/test-safety-check.sh +80 -0
  122. package/work-item-tracking-plan.md +199 -0
@@ -0,0 +1,257 @@
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*