Skip to content

Commit 8a316ef

Browse files
chore: archive plan 14 (CLI/TUI parity + README update) with execution summary
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 81ed9c7 commit 8a316ef

3 files changed

Lines changed: 104 additions & 0 deletions

File tree

.ai/task-manager/plans/14--cli-tui-parity-readme-update/plan-14--cli-tui-parity-readme-update.md renamed to .ai/task-manager/archive/14--cli-tui-parity-readme-update/plan-14--cli-tui-parity-readme-update.md

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -160,8 +160,48 @@ Complete keybinding list for the README:
160160
### Technical Infrastructure
161161
- Python 3.13+, uv, ruff, mypy, pytest (all already configured in the project)
162162

163+
## Execution Blueprint
164+
165+
**Validation Gates:**
166+
- Reference: `/config/hooks/POST_PHASE.md`
167+
168+
### Phase 1: CLI Implementation and Tests
169+
**Parallel Tasks:**
170+
- ✔️ Task 001: Add heat-status CLI command and tests (status: completed)
171+
172+
### Phase 2: Documentation Update
173+
**Parallel Tasks:**
174+
- ✔️ Task 002: Update README CLI and TUI documentation (depends on: 001) (status: completed)
175+
176+
### Post-phase Actions
177+
178+
### Execution Summary
179+
- Total Phases: 2
180+
- Total Tasks: 2
181+
- Maximum Parallelism: 1 task (in Phase 1)
182+
- Critical Path Length: 2 phases
183+
163184
## Notes
164185

165186
### Change Log
166187
- 2026-02-25: Initial plan created
167188
- 2026-02-25: Refinement — added stale `light-status` argparse cleanup, corrected TUI keybinding count from "18" to 22 (21 user-facing), documented `overhead_light` vs `light_status` field distinction, specified test pattern (aioresponses-based), specified README format (code blocks with comments)
189+
190+
## Execution Summary
191+
192+
**Status**: Completed Successfully
193+
**Completed Date**: 2026-02-26
194+
195+
### Results
196+
- Added `_set_heat_status()` CLI command with on/off support (ParameterId 323), following existing `_set_*` pattern
197+
- Updated `_SET_PARAM_NAMES` and argparse help text to include `heat-status` (stale `light-status` was already removed in Plan 13)
198+
- Added 4 tests: on, off, invalid value, and cmd_set dispatch integration (65 total CLI set tests)
199+
- Expanded README CLI "Set parameters" from 6 to all 17 parameters, grouped by category
200+
- Expanded README TUI keybindings table from 3 to all 21 user-facing keys
201+
- All 1048 tests pass, ruff and mypy clean
202+
203+
### Noteworthy Events
204+
No significant issues encountered.
205+
206+
### Recommendations
207+
None.
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
---
2+
id: 1
3+
group: "cli-parity"
4+
dependencies: []
5+
status: "completed"
6+
created: 2026-02-25
7+
skills:
8+
- python
9+
- pytest
10+
---
11+
# Add heat-status CLI Command and Tests
12+
13+
## Objective
14+
Add a `heat-status` set parameter to the CLI for parity with the TUI's heat on/off toggle, update `_SET_PARAM_NAMES` and argparse help text, and add tests.
15+
16+
## Acceptance Criteria
17+
- [ ] `_set_heat_status()` function added to `cli.py` following existing `_set_*` pattern
18+
- [ ] `cmd_set()` dispatches `heat-status` to `_set_heat_status()`
19+
- [ ] `_SET_PARAM_NAMES` includes `heat-status`
20+
- [ ] Argparse help text includes `heat-status` and excludes stale `light-status`
21+
- [ ] Tests in `test_cli_set.py` cover on/off and invalid values
22+
- [ ] `ruff check`, `mypy`, and `pytest` pass
23+
24+
## Technical Requirements
25+
- Pattern: fetch overview, find HeatParam, `dataclasses.replace(heat_status=...)`, write back
26+
- HeatStatus enum: ON=1, OFF=0 (ParameterId 323)
27+
- Import `HeatStatus` from models (already imported in cli.py)
28+
29+
## Input Dependencies
30+
None
31+
32+
## Output Artifacts
33+
- Modified `src/flameconnect/cli.py`
34+
- Modified `tests/test_cli_set.py`
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
---
2+
id: 2
3+
group: "documentation"
4+
dependencies: [1]
5+
status: "completed"
6+
created: 2026-02-25
7+
skills:
8+
- documentation
9+
- markdown
10+
---
11+
# Update README CLI and TUI Documentation
12+
13+
## Objective
14+
Rewrite the README's CLI "Set parameters" section to document all 17 `set` parameters, and expand the TUI keybindings table to show all 21 user-facing keys.
15+
16+
## Acceptance Criteria
17+
- [ ] README lists all 17 `set` parameters with correct syntax and values
18+
- [ ] README TUI keybindings table includes all 21 keys
19+
- [ ] No incorrect values remain (brightness 200, fan-only, etc.)
20+
- [ ] Parameters grouped logically by category
21+
22+
## Technical Requirements
23+
- CLI set parameters: mode, flame-speed, brightness, pulsating, flame-color, flame-effect, media-theme, media-light, media-color, overhead-light, overhead-color, ambient-sensor, heat-status, heat-mode, heat-temp, timer, temp-unit
24+
- TUI keybindings: 19 from BINDINGS + r (refresh) + q (quit) = 21 (excluding ctrl+p)
25+
26+
## Input Dependencies
27+
- Task 1 must be complete so heat-status is included
28+
29+
## Output Artifacts
30+
- Modified `README.md`

0 commit comments

Comments
 (0)