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.
- package/.claude/PROTECT_SKILLS.md +28 -0
- package/.claude/settings.json +24 -0
- package/.claude/settings.local.json +16 -0
- package/.claude/skills/epic-discover/SKILL.md +262 -0
- package/.claude/skills/feature-discover/SKILL.md +393 -0
- package/.claude/skills/speed-mode/SKILL.md +364 -0
- package/.claude/skills/stable-mode/SKILL.md +591 -0
- package/.github/workflows/test-safety.yml +85 -0
- package/README.md +25 -0
- package/SPEED-STABLE-AUDIT.md +853 -0
- package/SYSTEM-BEHAVIOR.md +1241 -0
- package/TEST_SAFETY_AUDIT.md +314 -0
- package/TEST_SAFETY_IMPLEMENTATION.md +97 -0
- package/cucumber.js +8 -0
- package/docs/COMMAND_REFERENCE.md +903 -0
- package/docs/DECISIONS.md +68 -0
- package/docs/README.md +48 -0
- package/docs/STANDARDS-SYSTEM-DOCUMENTATION.md +374 -0
- package/docs/TEST-REWRITE-PLAN.md +261 -0
- package/docs/ai-test-writing-requirements.md +219 -0
- package/docs/claude-code-skills.md +607 -0
- package/docs/core-jettypod-methodology/comprehensive-jettypod-methodology.md +582 -0
- package/docs/core-jettypod-methodology/deprecated/jettypod-comprehensive-standards.md +1222 -0
- package/docs/core-jettypod-methodology/deprecated/jettypod-operating-guide.md +3399 -0
- package/docs/core-jettypod-methodology/deprecated/jettypod-technical-checklist.md +1325 -0
- package/docs/core-jettypod-methodology/deprecated/jettypod-vibe-coding-framework.md +1544 -0
- package/docs/core-jettypod-methodology/deprecated/prompt-engineering-guide.md +320 -0
- package/docs/core-jettypod-methodology/deprecated/vibe-coding-cheatsheet (1).md +516 -0
- package/docs/core-jettypod-methodology/deprecated/vibe-coding-framework.md +1544 -0
- package/docs/features/jettypod-standards-explained.md +543 -0
- package/docs/features/standards-inventory.md +257 -0
- package/docs/gap-analysis-current-vs-comprehensive-methodology.md +939 -0
- package/docs/jettypod-system-overview.md +409 -0
- package/features/auto-generate-production-chores.feature +14 -0
- package/features/claude-md-protection/steps.js +487 -0
- package/features/decisions/index.js +490 -0
- package/features/decisions/index.test.js +208 -0
- package/features/git-hooks/git-hooks.feature +30 -0
- package/features/git-hooks/index.js +93 -0
- package/features/git-hooks/index.test.js +137 -0
- package/features/git-hooks/post-commit +56 -0
- package/features/git-hooks/post-merge +47 -0
- package/features/git-hooks/pre-commit +28 -0
- package/features/git-hooks/simple-steps.js +53 -0
- package/features/git-hooks/simple-test.feature +10 -0
- package/features/git-hooks/steps.js +196 -0
- package/features/jettypod-update-command.feature +46 -0
- package/features/mode-prompts/index.js +95 -0
- package/features/mode-prompts/simple-steps.js +44 -0
- package/features/mode-prompts/simple-test.feature +9 -0
- package/features/mode-prompts/validation.test.js +120 -0
- package/features/refactor-mode/steps.js +217 -0
- package/features/refactor-mode.feature +49 -0
- package/features/skills-update/index.test.js +216 -0
- package/features/step_definitions/auto-generate-production-chores.steps.js +162 -0
- package/features/step_definitions/terminal-logo.steps.js +145 -0
- package/features/step_definitions/update-command.steps.js +183 -0
- package/features/terminal-logo/index.js +39 -0
- package/features/terminal-logo/terminal-logo.feature +30 -0
- package/features/update-command/index.js +181 -0
- package/features/update-command/index.test.js +225 -0
- package/features/work-commands/bug-workflow-display.feature +22 -0
- package/features/work-commands/index.js +311 -0
- package/features/work-commands/simple-steps.js +69 -0
- package/features/work-commands/stable-tests.feature +57 -0
- package/features/work-commands/steps.js +1120 -0
- package/features/work-commands/validation.test.js +88 -0
- package/features/work-commands/work-commands.feature +13 -0
- package/features/work-tracking/discovery-validation.test.js +228 -0
- package/features/work-tracking/index.js +1511 -0
- package/features/work-tracking/mode-required.feature +112 -0
- package/features/work-tracking/phase-tracking.test.js +482 -0
- package/features/work-tracking/prototype-tracking.test.js +485 -0
- package/features/work-tracking/tree-view.test.js +310 -0
- package/features/work-tracking/work-set-mode.feature +71 -0
- package/features/work-tracking/work-start-mode.feature +88 -0
- package/full-test.txt +0 -0
- package/install.sh +89 -0
- package/jettypod.js +1640 -0
- package/lib/bug-workflow.js +94 -0
- package/lib/bug-workflow.test.js +177 -0
- package/lib/claudemd.js +130 -0
- package/lib/claudemd.test.js +195 -0
- package/lib/comprehensive-standards-full.json +1778 -0
- package/lib/config.js +181 -0
- package/lib/config.test.js +511 -0
- package/lib/constants.js +107 -0
- package/lib/constants.test.js +164 -0
- package/lib/current-work.js +130 -0
- package/lib/current-work.test.js +146 -0
- package/lib/database-project-config.test.js +107 -0
- package/lib/database.js +256 -0
- package/lib/database.test.js +106 -0
- package/lib/decisions-generator.js +102 -0
- package/lib/decisions-generator.test.js +457 -0
- package/lib/decisions-helpers.js +119 -0
- package/lib/decisions-helpers.test.js +310 -0
- package/lib/discovery-checkpoint.js +83 -0
- package/lib/docs-generator.js +280 -0
- package/lib/external-checklist.js +177 -0
- package/lib/git.js +142 -0
- package/lib/git.test.js +145 -0
- package/lib/logo.js +3 -0
- package/lib/migrations/001-epic-to-parent.js +24 -0
- package/lib/migrations/002-default-work-item-modes.js +37 -0
- package/lib/migrations/002-default-work-item-modes.test.js +351 -0
- package/lib/migrations/003-epic-discovery-fields.js +52 -0
- package/lib/migrations/004-discovery-decisions-table.js +32 -0
- package/lib/migrations/005-migrate-decision-data.js +62 -0
- package/lib/migrations/006-feature-phase-field.js +61 -0
- package/lib/migrations/007-prototype-tracking.js +38 -0
- package/lib/migrations/008-scenario-file-field.js +24 -0
- package/lib/migrations/index.js +74 -0
- package/lib/production-helpers.js +69 -0
- package/lib/project-state.test.js +92 -0
- package/lib/test-helpers.js +184 -0
- package/lib/test-helpers.test.js +255 -0
- package/package.json +36 -0
- package/prototypes/test/index.html +1 -0
- package/setup-dist-repo.sh +68 -0
- package/test-safety-check.sh +80 -0
- package/work-item-tracking-plan.md +199 -0
|
@@ -0,0 +1,409 @@
|
|
|
1
|
+
# JettyPod System Overview
|
|
2
|
+
*A Product Manager's Guide to Understanding JettyPod*
|
|
3
|
+
|
|
4
|
+
## What is JettyPod?
|
|
5
|
+
|
|
6
|
+
JettyPod is an intelligent development assistant that adapts its behavior based on what you're trying to accomplish and the current state of your project. Think of it as a smart copilot that understands context and adjusts its approach accordingly.
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## Core Concept: Context-Aware Development
|
|
11
|
+
|
|
12
|
+
The system continuously analyzes three key factors:
|
|
13
|
+
1. **What you're trying to do** (your intent)
|
|
14
|
+
2. **Where your project is** (maturity stage)
|
|
15
|
+
3. **What situation you're in** (environmental signals)
|
|
16
|
+
|
|
17
|
+
Based on these factors, JettyPod automatically switches between different working modes to give you the most appropriate assistance.
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## The Four Working Modes
|
|
22
|
+
|
|
23
|
+
### 🚀 Speed Mode
|
|
24
|
+
**When:** Early projects, tight deadlines, prototyping
|
|
25
|
+
**Behavior:** Focuses on getting things working quickly
|
|
26
|
+
- Provides ready-to-use code patterns
|
|
27
|
+
- Skips extensive documentation
|
|
28
|
+
- Optimizes for rapid iteration
|
|
29
|
+
- Auto-completes common patterns (forms, APIs, dashboards)
|
|
30
|
+
|
|
31
|
+
### 🔍 Discovery Mode
|
|
32
|
+
**When:** Exploring options, uncertain requirements, evaluating approaches
|
|
33
|
+
**Behavior:** Presents multiple options with trade-offs
|
|
34
|
+
- Always shows 3 different approaches (Simple/Balanced/Advanced)
|
|
35
|
+
- Lists pros and cons for each option
|
|
36
|
+
- Provides time estimates
|
|
37
|
+
- Creates working prototypes you can test
|
|
38
|
+
- Helps you make informed decisions
|
|
39
|
+
|
|
40
|
+
### 🏭 Production Mode
|
|
41
|
+
**When:** Mature projects, has CI/CD, public-facing code
|
|
42
|
+
**Behavior:** Emphasizes quality and safety
|
|
43
|
+
- Enforces coding standards strictly
|
|
44
|
+
- Requires comprehensive testing
|
|
45
|
+
- Includes security considerations
|
|
46
|
+
- Documents everything thoroughly
|
|
47
|
+
- Follows best practices meticulously
|
|
48
|
+
|
|
49
|
+
### 🚨 Recovery Mode
|
|
50
|
+
**When:** Production issues, emergency fixes, critical bugs
|
|
51
|
+
**Behavior:** Emergency response protocol
|
|
52
|
+
- Focuses on immediate fixes
|
|
53
|
+
- Provides rollback strategies
|
|
54
|
+
- Minimizes risk
|
|
55
|
+
- Creates temporary patches when needed
|
|
56
|
+
- Documents what broke and why
|
|
57
|
+
|
|
58
|
+
---
|
|
59
|
+
|
|
60
|
+
## How JettyPod Detects Context
|
|
61
|
+
|
|
62
|
+
### 1. Use Cases - What You're Trying to Do
|
|
63
|
+
JettyPod recognizes six primary use cases that drive everything else:
|
|
64
|
+
|
|
65
|
+
#### **Starting** 🌱
|
|
66
|
+
- Triggered by: "new project", "initialize", "set up"
|
|
67
|
+
- What it means: Beginning from scratch
|
|
68
|
+
- Typical mode: Speed (unless uncertain → Discovery)
|
|
69
|
+
|
|
70
|
+
#### **Building** 🔨
|
|
71
|
+
- Triggered by: "let's build", "add feature", "implement", "create"
|
|
72
|
+
- What it means: Adding new functionality
|
|
73
|
+
- Typical mode: Speed (early stage) or Production (mature stage)
|
|
74
|
+
|
|
75
|
+
#### **Refactoring** 🔧
|
|
76
|
+
- Triggered by: "refactor", "clean up", "reorganize", "improve"
|
|
77
|
+
- What it means: Improving existing code without changing behavior
|
|
78
|
+
- Typical mode: Discovery (mature projects) or Speed (small projects)
|
|
79
|
+
|
|
80
|
+
#### **Testing** 🧪
|
|
81
|
+
- Triggered by: "write tests", "add tests", "test coverage"
|
|
82
|
+
- What it means: Adding test coverage
|
|
83
|
+
- Typical mode: Production (mature) or Speed (early)
|
|
84
|
+
|
|
85
|
+
#### **Debugging** 🐛
|
|
86
|
+
- Triggered by: "fix bug", "debug", "error", "not working", "broken"
|
|
87
|
+
- What it means: Something is wrong and needs fixing
|
|
88
|
+
- Typical mode: Recovery (production) or Speed (development)
|
|
89
|
+
|
|
90
|
+
#### **Deployment** 🚀
|
|
91
|
+
- Triggered by: "deploy", "ship", "release", "go live"
|
|
92
|
+
- What it means: Preparing for production release
|
|
93
|
+
- Typical mode: Production (always careful with deployments)
|
|
94
|
+
|
|
95
|
+
#### **Exploring** 🔍
|
|
96
|
+
- Triggered by: "show me options", "what are my choices", "not sure", "help me decide"
|
|
97
|
+
- What it means: Need to explore alternatives
|
|
98
|
+
- Typical mode: Discovery (always shows options)
|
|
99
|
+
|
|
100
|
+
### 2. Project Maturity Stages
|
|
101
|
+
JettyPod analyzes your codebase to determine its stage:
|
|
102
|
+
|
|
103
|
+
1. **Empty** → No code yet
|
|
104
|
+
2. **Starting** → < 10 files, just beginning
|
|
105
|
+
3. **Growing** → 10-50 files, taking shape
|
|
106
|
+
4. **Mature** → 50-200 files, established patterns
|
|
107
|
+
5. **Production** → Has tests, CI/CD, monitoring
|
|
108
|
+
|
|
109
|
+
### 3. Environmental Signals
|
|
110
|
+
The system looks for contextual clues:
|
|
111
|
+
|
|
112
|
+
- **Git branch names:**
|
|
113
|
+
- `hotfix/*` → Something's broken (Recovery mode)
|
|
114
|
+
- `feature/*` → Building new features (Speed/Discovery)
|
|
115
|
+
- `main/master` → Production code (Production mode)
|
|
116
|
+
|
|
117
|
+
- **Time patterns:**
|
|
118
|
+
- Late night debugging (11 PM - 3 AM) → Likely urgent
|
|
119
|
+
- Weekend work → Either hobby or emergency
|
|
120
|
+
|
|
121
|
+
- **Recent activity:**
|
|
122
|
+
- Many error fixes in commits → Need careful approach
|
|
123
|
+
- "WIP" commits → Still exploring
|
|
124
|
+
- Rapid commits → Under pressure
|
|
125
|
+
|
|
126
|
+
- **Keywords in requests:**
|
|
127
|
+
- "urgent", "ASAP", "deadline" → Time pressure
|
|
128
|
+
- "production down", "emergency" → Crisis mode
|
|
129
|
+
- "not sure", "help me decide" → Need guidance
|
|
130
|
+
|
|
131
|
+
---
|
|
132
|
+
|
|
133
|
+
## The Use Case → Mode Mapping
|
|
134
|
+
|
|
135
|
+
The system uses a sophisticated mapping between use cases and modes:
|
|
136
|
+
|
|
137
|
+
### Primary Mapping Logic:
|
|
138
|
+
```
|
|
139
|
+
Use Case + Context = Mode Selection
|
|
140
|
+
|
|
141
|
+
Starting + Uncertainty → Discovery Mode
|
|
142
|
+
Starting + Clear vision → Speed Mode
|
|
143
|
+
|
|
144
|
+
Building + Early stage → Speed Mode
|
|
145
|
+
Building + Mature project → Production Mode
|
|
146
|
+
Building + Deadline → Speed Mode
|
|
147
|
+
|
|
148
|
+
Refactoring + Small project → Speed Mode
|
|
149
|
+
Refactoring + Large project → Discovery Mode
|
|
150
|
+
|
|
151
|
+
Testing + Production stage → Production Mode
|
|
152
|
+
Testing + Early stage → Speed Mode
|
|
153
|
+
|
|
154
|
+
Debugging + Production → Recovery Mode
|
|
155
|
+
Debugging + Development → Speed Mode
|
|
156
|
+
Debugging + Late night → Recovery Mode
|
|
157
|
+
|
|
158
|
+
Deployment + Any stage → Production Mode
|
|
159
|
+
|
|
160
|
+
Exploring + Any context → Discovery Mode
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
### The Decision Flow:
|
|
164
|
+
|
|
165
|
+
```
|
|
166
|
+
1. Detect the use case from user input
|
|
167
|
+
→ "Let's build a dashboard" → Building use case
|
|
168
|
+
|
|
169
|
+
2. Check for emergency overrides
|
|
170
|
+
→ "Production is down!" → Force Recovery Mode
|
|
171
|
+
|
|
172
|
+
3. Check for contextual modifiers
|
|
173
|
+
→ Deadline pressure + Building → Speed Mode
|
|
174
|
+
→ Hotfix branch + Debugging → Recovery Mode
|
|
175
|
+
→ Late night + Debugging → Recovery Mode
|
|
176
|
+
|
|
177
|
+
4. Consider project maturity
|
|
178
|
+
→ Building + Mature project → Production Mode
|
|
179
|
+
→ Building + New project → Speed Mode
|
|
180
|
+
|
|
181
|
+
5. Apply environmental signals
|
|
182
|
+
→ High error frequency → Upgrade to Production/Recovery
|
|
183
|
+
→ WIP commits → Consider Discovery
|
|
184
|
+
→ Main branch → Lean toward Production
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
---
|
|
188
|
+
|
|
189
|
+
## Coding Standards System
|
|
190
|
+
|
|
191
|
+
### What are Standards?
|
|
192
|
+
Standards are rules and patterns your team follows. JettyPod tracks and enforces these automatically.
|
|
193
|
+
|
|
194
|
+
### How Standards Work:
|
|
195
|
+
1. **Definition:** You define what patterns to follow (naming, structure, style)
|
|
196
|
+
2. **Bundling:** Standards are grouped into bundles by topic (UI, API, Testing)
|
|
197
|
+
3. **Filtering:** Only relevant standards appear based on project stage
|
|
198
|
+
4. **Enforcement:** JettyPod checks code against standards in real-time
|
|
199
|
+
5. **Learning:** The system learns your patterns over time
|
|
200
|
+
|
|
201
|
+
### Stage-Based Filtering:
|
|
202
|
+
- **Starting projects** → Only see essential standards
|
|
203
|
+
- **Growing projects** → Add structure and organization standards
|
|
204
|
+
- **Mature projects** → Full standards including optimization
|
|
205
|
+
- **Production** → All standards plus security and monitoring
|
|
206
|
+
|
|
207
|
+
---
|
|
208
|
+
|
|
209
|
+
## The CLAUDE.md File
|
|
210
|
+
|
|
211
|
+
This is JettyPod's "instruction manual" - a dynamic document that updates based on context.
|
|
212
|
+
|
|
213
|
+
### What it contains:
|
|
214
|
+
1. **Current mode and why** it was selected
|
|
215
|
+
2. **Active standards** for the project
|
|
216
|
+
3. **Mode-specific behaviors** and patterns
|
|
217
|
+
4. **Project context** and stage
|
|
218
|
+
5. **Use case detection rules**
|
|
219
|
+
|
|
220
|
+
### How it updates:
|
|
221
|
+
- When you switch modes → Instructions change
|
|
222
|
+
- When project grows → Standards evolve
|
|
223
|
+
- When you change context → Behaviors adapt
|
|
224
|
+
|
|
225
|
+
---
|
|
226
|
+
|
|
227
|
+
## Practical Examples
|
|
228
|
+
|
|
229
|
+
### Example 1: Use Case Detection → Mode Selection
|
|
230
|
+
```
|
|
231
|
+
You say: "Let's build a user dashboard"
|
|
232
|
+
JettyPod detects:
|
|
233
|
+
- Use case: Building (from "let's build")
|
|
234
|
+
- Project stage: Early (10 files)
|
|
235
|
+
- Context: No deadline mentioned
|
|
236
|
+
Result: Speed Mode activated
|
|
237
|
+
Behavior: Provides ready-made dashboard template, skips extensive docs
|
|
238
|
+
```
|
|
239
|
+
|
|
240
|
+
### Example 2: Context Overrides Use Case
|
|
241
|
+
```
|
|
242
|
+
You say: "Fix this bug"
|
|
243
|
+
JettyPod detects:
|
|
244
|
+
- Use case: Debugging (from "fix bug")
|
|
245
|
+
- Project stage: Production (has CI/CD)
|
|
246
|
+
- Context: On main branch
|
|
247
|
+
- Keywords: "critical" detected
|
|
248
|
+
Result: Recovery Mode (not Speed Mode)
|
|
249
|
+
Behavior: Emergency response, immediate fix prioritized
|
|
250
|
+
```
|
|
251
|
+
|
|
252
|
+
### Example 3: Exploring Use Case
|
|
253
|
+
```
|
|
254
|
+
You say: "Show me options for authentication"
|
|
255
|
+
JettyPod detects:
|
|
256
|
+
- Use case: Exploring (from "show me options")
|
|
257
|
+
- Project stage: Growing (50 files)
|
|
258
|
+
- Context: Uncertainty expressed
|
|
259
|
+
Result: Discovery Mode activated
|
|
260
|
+
Behavior: Shows 3 approaches (Simple OAuth, Full JWT, Enterprise SSO)
|
|
261
|
+
```
|
|
262
|
+
|
|
263
|
+
### Example 4: Multiple Signals Combine
|
|
264
|
+
```
|
|
265
|
+
Scenario: "Debug this issue" at 2 AM on hotfix branch
|
|
266
|
+
JettyPod detects:
|
|
267
|
+
- Use case: Debugging
|
|
268
|
+
- Git branch: hotfix/* (emergency signal)
|
|
269
|
+
- Time: 2 AM (urgency signal)
|
|
270
|
+
- Recent commits: Multiple "fix:" messages
|
|
271
|
+
Result: Recovery Mode with 95% confidence
|
|
272
|
+
Behavior: Emergency protocols, quick fixes, rollback ready
|
|
273
|
+
```
|
|
274
|
+
|
|
275
|
+
### Example 5: Use Case Evolution
|
|
276
|
+
```
|
|
277
|
+
Journey of a feature:
|
|
278
|
+
1. "I want to add search" → Exploring use case → Discovery Mode
|
|
279
|
+
(Shows 3 options: basic filter, full-text, elasticsearch)
|
|
280
|
+
|
|
281
|
+
2. "Let's build the full-text option" → Building use case → Speed Mode
|
|
282
|
+
(Rapid implementation of chosen approach)
|
|
283
|
+
|
|
284
|
+
3. "Add tests for search" → Testing use case → Production Mode
|
|
285
|
+
(Comprehensive test coverage required)
|
|
286
|
+
|
|
287
|
+
4. "Deploy search feature" → Deployment use case → Production Mode
|
|
288
|
+
(Careful deployment with monitoring)
|
|
289
|
+
```
|
|
290
|
+
|
|
291
|
+
---
|
|
292
|
+
|
|
293
|
+
## Key Benefits
|
|
294
|
+
|
|
295
|
+
### For Product Development:
|
|
296
|
+
1. **Adaptive assistance** - Gets the right help at the right time
|
|
297
|
+
2. **Reduced decision fatigue** - Mode selection is automatic
|
|
298
|
+
3. **Quality when needed** - Production mode for critical code
|
|
299
|
+
4. **Speed when possible** - Rapid prototyping in early stages
|
|
300
|
+
|
|
301
|
+
### For Team Consistency:
|
|
302
|
+
1. **Enforced standards** - Automatic code quality checks
|
|
303
|
+
2. **Progressive enhancement** - Standards grow with project
|
|
304
|
+
3. **Context preservation** - Team knowledge captured in system
|
|
305
|
+
4. **Smart defaults** - Best practices built-in
|
|
306
|
+
|
|
307
|
+
### For Risk Management:
|
|
308
|
+
1. **Emergency handling** - Recovery mode for crises
|
|
309
|
+
2. **Quality gates** - Production mode for releases
|
|
310
|
+
3. **Exploration safety** - Discovery mode for unknowns
|
|
311
|
+
4. **Automatic detection** - Catches issues from context
|
|
312
|
+
|
|
313
|
+
---
|
|
314
|
+
|
|
315
|
+
## How to Influence Mode Selection
|
|
316
|
+
|
|
317
|
+
While JettyPod is automatic, you can guide it:
|
|
318
|
+
|
|
319
|
+
### Direct Commands:
|
|
320
|
+
- `jettypod speed` - Force Speed Mode
|
|
321
|
+
- `jettypod discovery` - Force Discovery Mode
|
|
322
|
+
- `jettypod production` - Force Production Mode
|
|
323
|
+
- `jettypod recovery` - Force Recovery Mode
|
|
324
|
+
|
|
325
|
+
### Indirect Signals:
|
|
326
|
+
- Use branch naming conventions (feature/*, hotfix/*)
|
|
327
|
+
- Include keywords in requests ("urgent", "explore", "production")
|
|
328
|
+
- Maintain project structure (tests, CI/CD indicate maturity)
|
|
329
|
+
- Time your work appropriately (late night signals urgency)
|
|
330
|
+
|
|
331
|
+
### Auto Commands:
|
|
332
|
+
- `jettypod auto "let's build a payment system"` - Analyzes intent and switches mode
|
|
333
|
+
- `jettypod auto "show me options for search"` - Triggers Discovery Mode
|
|
334
|
+
- `jettypod auto "emergency fix needed"` - Triggers Recovery Mode
|
|
335
|
+
|
|
336
|
+
---
|
|
337
|
+
|
|
338
|
+
## Success Metrics
|
|
339
|
+
|
|
340
|
+
JettyPod optimizes different metrics based on mode:
|
|
341
|
+
|
|
342
|
+
| Mode | Primary Metric | Secondary Metrics |
|
|
343
|
+
|------|---------------|-------------------|
|
|
344
|
+
| Speed | Time to working code | Lines written, features completed |
|
|
345
|
+
| Discovery | Decision quality | Options evaluated, trade-offs understood |
|
|
346
|
+
| Production | Code reliability | Test coverage, standards compliance |
|
|
347
|
+
| Recovery | Time to resolution | Stability restored, root cause found |
|
|
348
|
+
|
|
349
|
+
---
|
|
350
|
+
|
|
351
|
+
## Common Patterns
|
|
352
|
+
|
|
353
|
+
### The Prototype → Production Journey
|
|
354
|
+
1. Start in Speed Mode (rapid prototype)
|
|
355
|
+
2. Switch to Discovery Mode (explore scaling options)
|
|
356
|
+
3. Move to Production Mode (implement properly)
|
|
357
|
+
4. Use Recovery Mode only when issues arise
|
|
358
|
+
|
|
359
|
+
### The Exploration → Decision Flow
|
|
360
|
+
1. Trigger Discovery Mode ("show me options")
|
|
361
|
+
2. Review three approaches with trade-offs
|
|
362
|
+
3. Select approach based on constraints
|
|
363
|
+
4. Switch to appropriate mode for implementation
|
|
364
|
+
|
|
365
|
+
### The Emergency Response
|
|
366
|
+
1. System detects crisis (or you declare emergency)
|
|
367
|
+
2. Recovery Mode activates automatically
|
|
368
|
+
3. Quick fix applied with documentation
|
|
369
|
+
4. Post-mortem triggers Discovery Mode for proper fix
|
|
370
|
+
|
|
371
|
+
---
|
|
372
|
+
|
|
373
|
+
## FAQ for Product Managers
|
|
374
|
+
|
|
375
|
+
**Q: How does this differ from GitHub Copilot?**
|
|
376
|
+
A: Copilot suggests code. JettyPod understands project context and adapts its entire behavior - from how it writes code to what standards it enforces.
|
|
377
|
+
|
|
378
|
+
**Q: Can it work with existing codebases?**
|
|
379
|
+
A: Yes. JettyPod analyzes your existing code to determine project stage and detects patterns to follow.
|
|
380
|
+
|
|
381
|
+
**Q: How does it know what standards to enforce?**
|
|
382
|
+
A: It comes with sensible defaults but learns from your codebase. You can also explicitly define standards.
|
|
383
|
+
|
|
384
|
+
**Q: What if it picks the wrong mode?**
|
|
385
|
+
A: You can always override with manual mode selection. The system also learns from corrections.
|
|
386
|
+
|
|
387
|
+
**Q: How does it handle technical debt?**
|
|
388
|
+
A: In Speed Mode, it allows quick solutions but tracks them. In Production Mode, it enforces proper implementation.
|
|
389
|
+
|
|
390
|
+
**Q: Can multiple developers use it?**
|
|
391
|
+
A: Yes. Standards and modes are stored in the project, ensuring consistency across the team.
|
|
392
|
+
|
|
393
|
+
---
|
|
394
|
+
|
|
395
|
+
## Summary
|
|
396
|
+
|
|
397
|
+
JettyPod is like having an experienced developer who:
|
|
398
|
+
- Knows when to move fast vs. when to be careful
|
|
399
|
+
- Understands your project's maturity and needs
|
|
400
|
+
- Adapts to emergency situations automatically
|
|
401
|
+
- Helps explore options when you're uncertain
|
|
402
|
+
- Enforces quality standards appropriately
|
|
403
|
+
- Learns from your project patterns
|
|
404
|
+
|
|
405
|
+
The key innovation is **context-aware adaptation** - the system changes its entire approach based on what you're doing, where your project is, and what situation you're in.
|
|
406
|
+
|
|
407
|
+
---
|
|
408
|
+
|
|
409
|
+
*For technical implementation details, see the engineering documentation.*
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
Feature: Auto-generate production chores on external transition
|
|
2
|
+
When transitioning to external, automatically create production chores for all stable features
|
|
3
|
+
|
|
4
|
+
Approach: Silent Auto-Generation
|
|
5
|
+
|
|
6
|
+
Scenario: User transitions project to external with stable features
|
|
7
|
+
Given I have a project with 3 features in stable mode
|
|
8
|
+
And the project state is "internal"
|
|
9
|
+
When I transition the project to external
|
|
10
|
+
Then the project state is set to "external"
|
|
11
|
+
And a "Feature Production Readiness" epic is created
|
|
12
|
+
And 3 production chores are created for each stable feature
|
|
13
|
+
And the chores are grouped under the epic
|
|
14
|
+
And I see a summary of created chores
|