jettypod 4.4.21 → 4.4.22
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/jettypod.js +11 -11
- package/lib/decisions/index.js +490 -0
- package/lib/git-hooks/git-hooks.feature +30 -0
- package/lib/git-hooks/index.js +94 -0
- package/lib/git-hooks/post-commit +59 -0
- package/lib/git-hooks/post-merge +71 -0
- package/lib/git-hooks/pre-commit +28 -0
- package/lib/git-hooks/simple-steps.js +53 -0
- package/lib/git-hooks/simple-test.feature +10 -0
- package/lib/git-hooks/steps.js +196 -0
- package/lib/mode-prompts/index.js +95 -0
- package/lib/mode-prompts/simple-steps.js +44 -0
- package/lib/mode-prompts/simple-test.feature +9 -0
- package/lib/update-command/index.js +181 -0
- package/lib/work-commands/bug-workflow-display.feature +22 -0
- package/lib/work-commands/index.js +1603 -0
- package/lib/work-commands/simple-steps.js +69 -0
- package/lib/work-commands/stable-tests.feature +57 -0
- package/lib/work-commands/steps.js +1233 -0
- package/lib/work-commands/work-commands.feature +13 -0
- package/lib/work-commands/worktree-management.feature +63 -0
- package/lib/work-tracking/index.js +2396 -0
- package/lib/work-tracking/mode-required.feature +111 -0
- package/lib/work-tracking/work-set-mode.feature +70 -0
- package/lib/work-tracking/work-start-mode.feature +83 -0
- package/package.json +1 -1
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
Feature: Work Item Commands
|
|
2
|
+
As a developer
|
|
3
|
+
I want to start and stop work on items
|
|
4
|
+
So that my current work is tracked automatically
|
|
5
|
+
|
|
6
|
+
Scenario: Integration - work commands with existing work tracking
|
|
7
|
+
Given I have initialized jettypod
|
|
8
|
+
And I create an epic with id 1
|
|
9
|
+
And I create a feature with id 2 under epic 1
|
|
10
|
+
When I start work on item 2
|
|
11
|
+
Then the current work file exists
|
|
12
|
+
And the current work contains item 2
|
|
13
|
+
And item 2 status is in_progress or backlog
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
@worktree
|
|
2
|
+
Feature: Worktree-based Branch Management
|
|
3
|
+
As a developer using JettyPod with multiple Claude instances
|
|
4
|
+
I want work items to use git worktrees
|
|
5
|
+
So that multiple Claude instances can work in parallel without conflicts
|
|
6
|
+
|
|
7
|
+
Background:
|
|
8
|
+
Given I am on the main branch
|
|
9
|
+
|
|
10
|
+
Scenario: Start work creates a worktree
|
|
11
|
+
Given I have a work item with ID 1
|
|
12
|
+
When I start worktree work on item 1
|
|
13
|
+
Then a worktree should be created at ".jettypod-work/1-*"
|
|
14
|
+
And the worktree should be on branch "feature/work-1-*"
|
|
15
|
+
And the main directory should remain on "main" branch
|
|
16
|
+
|
|
17
|
+
Scenario: Worktree has symlink to shared .jettypod directory
|
|
18
|
+
Given I have a work item with ID 1
|
|
19
|
+
When I start worktree work on item 1
|
|
20
|
+
Then the worktree should have a symlink ".jettypod" pointing to shared metadata
|
|
21
|
+
And the worktree should have its own CLAUDE.md with work item context
|
|
22
|
+
|
|
23
|
+
Scenario: Complete work without conflicts merges and cleans up
|
|
24
|
+
Given I have a work item with ID 1 in a worktree
|
|
25
|
+
And I have made commits in the worktree
|
|
26
|
+
And there are no conflicts with main
|
|
27
|
+
When I stop work on item 1 with status "done"
|
|
28
|
+
Then the worktree branch should be merged to main
|
|
29
|
+
And the worktree should be removed
|
|
30
|
+
And the worktree branch should be deleted
|
|
31
|
+
And I should be on the main branch
|
|
32
|
+
|
|
33
|
+
Scenario: Completing work with conflicts detects them before merge
|
|
34
|
+
Given I have a work item with ID 1 in a worktree
|
|
35
|
+
And I have modified "lib/auth.js" in the worktree
|
|
36
|
+
And someone else has modified "lib/auth.js" in main
|
|
37
|
+
When I stop work on item 1 with status "done"
|
|
38
|
+
Then I should see a conflict detection message
|
|
39
|
+
And the merge should not be attempted
|
|
40
|
+
And the worktree should be preserved for conflict resolution
|
|
41
|
+
|
|
42
|
+
Scenario: Multiple work items can be in progress simultaneously
|
|
43
|
+
Given I have work items with IDs 1, 2, and 3
|
|
44
|
+
When I start worktree work on item 1
|
|
45
|
+
And I start worktree work on item 2
|
|
46
|
+
And I start worktree work on item 3
|
|
47
|
+
Then worktree ".jettypod-work/1-*" should exist
|
|
48
|
+
And worktree ".jettypod-work/2-*" should exist
|
|
49
|
+
And worktree ".jettypod-work/3-*" should exist
|
|
50
|
+
And each worktree should be on its own feature branch
|
|
51
|
+
|
|
52
|
+
Scenario: Stop work without done status preserves worktree
|
|
53
|
+
Given I have a work item with ID 1 in a worktree
|
|
54
|
+
When I stop work on item 1 with status "blocked"
|
|
55
|
+
Then the work item should have status "blocked" in database
|
|
56
|
+
And the worktree should be preserved
|
|
57
|
+
And the worktree branch should not be deleted
|
|
58
|
+
|
|
59
|
+
Scenario: Worktree path is tracked in database
|
|
60
|
+
Given I have a work item with ID 1
|
|
61
|
+
When I start worktree work on item 1
|
|
62
|
+
Then the work item should have worktree_path in database
|
|
63
|
+
And the worktree_path should point to ".jettypod-work/1-*"
|