Skip to content

Commit f19cd9a

Browse files
committed
planning: add issues for config wizard improvements
- 2.1-add-config-options-completion-review-severity: expose completionWorkflow, reviewThreshold, and minSeverity in /cat:config CURRENT_SETTINGS and wizard - 2.1-remove-auto-remove-worktrees-config: remove autoRemoveWorktrees option and hard-code auto-remove as default behavior
1 parent caf6b7b commit f19cd9a

4 files changed

Lines changed: 142 additions & 0 deletions

File tree

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
# Plan: add-config-options-completion-review-severity
2+
3+
## Goal
4+
5+
Add `completionWorkflow`, `reviewThreshold`, and `minSeverity` to the `/cat:config` CURRENT_SETTINGS display and
6+
ensure all three are fully configurable via the wizard. Currently `GetConfigOutput.java` omits all three from the
7+
settings box, and the skill has no wizard step for `minSeverity`.
8+
9+
## Satisfies
10+
11+
- None
12+
13+
## Risk Assessment
14+
15+
- **Risk Level:** LOW
16+
- **Concerns:** The config skill already has steps for `completionWorkflow` and `reviewThreshold`; care needed to
17+
avoid duplicating them.
18+
- **Mitigation:** Read existing steps before adding `minSeverity` step.
19+
20+
## Files to Modify
21+
22+
- `client/src/main/java/io/github/cowwoc/cat/hooks/skills/GetConfigOutput.java` - add three settings to box
23+
- `plugin/skills/config/first-use.md` - add `minSeverity` menu entry and wizard step; add `minSeverity` to menu
24+
25+
## Pre-conditions
26+
27+
- [ ] All dependent issues are closed
28+
29+
## Execution Steps
30+
31+
1. **Read existing files** to understand current rendering and step structure:
32+
- `GetConfigOutput.java` (full render logic)
33+
- `plugin/skills/config/first-use.md` (existing steps for completionWorkflow, reviewThreshold)
34+
- `Config.java` (getters for completionWorkflow, reviewThreshold, minSeverity)
35+
36+
2. **Update `GetConfigOutput.java`** to include all three settings in the CURRENT_SETTINGS box:
37+
- Read `completionWorkflow` (default: `"merge"`) from config
38+
- Read `reviewThreshold` (default: `"low"`) from config
39+
- Read `minSeverity` (default: `"low"`) from config
40+
- Add lines to the rendered box, e.g.: `" 🔀 Completion: " + completionWorkflow`
41+
- Run `mvn -f client/pom.xml verify` to confirm tests pass
42+
43+
3. **Update `plugin/skills/config/first-use.md`**:
44+
- Add `minSeverity` entry to the main menu (after `reviewThreshold` entry)
45+
- Add a `<step name="min-severity">` wizard step with options: low, medium, high, critical
46+
- Verify completionWorkflow and reviewThreshold menu entries already exist (they do)
47+
48+
4. **Rebuild jlink** and verify the CURRENT_SETTINGS box shows all three settings:
49+
```bash
50+
cd client && bash build-jlink.sh
51+
```
52+
53+
5. **Commit** with message:
54+
`feature: add completionWorkflow, reviewThreshold, and minSeverity to /cat:config`
55+
56+
## Post-conditions
57+
58+
- [ ] `/cat:config` CURRENT_SETTINGS box displays `completionWorkflow`, `reviewThreshold`, and `minSeverity`
59+
- [ ] All three are configurable via the wizard
60+
- [ ] `minSeverity` has a dedicated wizard step with values: low, medium, high, critical
61+
- [ ] `mvn -f client/pom.xml verify` passes
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
# State
2+
3+
- **Status:** open
4+
- **Progress:** 0%
5+
- **Dependencies:** []
6+
- **Blocks:** []
7+
- **Last Updated:** 2026-02-27
Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
# Plan: remove-auto-remove-worktrees-config
2+
3+
## Goal
4+
5+
Remove the `autoRemoveWorktrees` configuration option entirely. Hard-code the auto-remove behavior as the default
6+
(always remove worktrees after issue completion). Remove the option from `cat-config.json`, `Config.java`,
7+
`GetConfigOutput.java`, and the `/cat:config` wizard.
8+
9+
## Satisfies
10+
11+
- None
12+
13+
## Risk Assessment
14+
15+
- **Risk Level:** LOW
16+
- **Concerns:** Code that reads `autoRemoveWorktrees` must be updated to use the hard-coded default.
17+
- **Mitigation:** Search for all usages before removing.
18+
19+
## Files to Modify
20+
21+
- `client/src/main/java/io/github/cowwoc/cat/hooks/Config.java` - remove `autoRemoveWorktrees` field and getter
22+
- `client/src/main/java/io/github/cowwoc/cat/hooks/skills/GetConfigOutput.java` - remove Cleanup line from box
23+
- `plugin/skills/config/first-use.md` - remove "Cleanup" menu entry and cleanup wizard step
24+
- `.claude/cat/cat-config.json` - remove `autoRemoveWorktrees` key
25+
- Any other callers of `getAutoRemoveWorktrees()` - replace with `true` (hard-coded)
26+
27+
## Pre-conditions
28+
29+
- [ ] All dependent issues are closed
30+
31+
## Execution Steps
32+
33+
1. **Find all usages** of `autoRemoveWorktrees` and `getAutoRemoveWorktrees`:
34+
```bash
35+
grep -r "autoRemoveWorktrees\|getAutoRemoveWorktrees" /workspace/client /workspace/plugin --include="*.java" --include="*.md" --include="*.json" -l
36+
```
37+
38+
2. **Update `Config.java`**:
39+
- Remove `autoRemoveWorktrees` from the `defaults` map
40+
- Remove `getAutoRemoveWorktrees()` method
41+
42+
3. **Update all callers** of `getAutoRemoveWorktrees()` — replace with `true` (hard-coded auto-remove).
43+
44+
4. **Update `GetConfigOutput.java`** — remove the Cleanup line from the CURRENT_SETTINGS box.
45+
46+
5. **Update `plugin/skills/config/first-use.md`**:
47+
- Remove "🧹 Cleanup" entry from main menu
48+
- Remove the `<step name="cleanup">` wizard step
49+
50+
6. **Update `.claude/cat/cat-config.json`** — remove the `autoRemoveWorktrees` key.
51+
52+
7. **Run `mvn -f client/pom.xml verify`** to confirm tests pass.
53+
54+
8. **Rebuild jlink**:
55+
```bash
56+
cd client && bash build-jlink.sh
57+
```
58+
59+
9. **Commit** with message:
60+
`refactor: remove autoRemoveWorktrees config option and hard-code auto-remove behavior`
61+
62+
## Post-conditions
63+
64+
- [ ] `autoRemoveWorktrees` does not appear in `cat-config.json`, `Config.java`, skill files, or `GetConfigOutput.java`
65+
- [ ] Worktree auto-remove behavior is unchanged (always auto-remove)
66+
- [ ] `/cat:config` CURRENT_SETTINGS box no longer shows Cleanup
67+
- [ ] `mvn -f client/pom.xml verify` passes
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
# State
2+
3+
- **Status:** open
4+
- **Progress:** 0%
5+
- **Dependencies:** []
6+
- **Blocks:** []
7+
- **Last Updated:** 2026-02-27

0 commit comments

Comments
 (0)