diff options
| author | Danilo M. <danix@danix.xyz> | 2026-06-24 10:28:04 +0200 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-06-24 10:28:04 +0200 |
| commit | 9c301a8eac944083556b3dce297764b4fca7d49a (patch) | |
| tree | 5637367f51e28a240da82a27549c2aef5fb2b126 /TODO.md | |
| parent | 02a5ae2adc2df39fc78fd7e29904ff473e9266a0 (diff) | |
| download | gitctl-9c301a8eac944083556b3dce297764b4fca7d49a.tar.gz gitctl-9c301a8eac944083556b3dce297764b4fca7d49a.zip | |
docs: bring CLAUDE.md, README, TODO current after the three features
- CLAUDE.md: new hard rule that removal functions are exact inverses of
their add counterparts (round-trip self-tests); TRASH_DIR added to the
server constants; verified-live list extended with list-repos and a
full delete cycle.
- README: TRASH_DIR in the server-install constants and its dir note.
- TODO: items 1-3 already marked done; cross-cutting work folded in;
remaining leftovers listed (repo-name completion, the cosmetic
No changes. echo, and the YAGNI gc-trash prune verb).
- Removed all pre-existing em dashes from CLAUDE.md and README.
Docs only, no code change.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Diffstat (limited to 'TODO.md')
| -rw-r--r-- | TODO.md | 30 |
1 files changed, 23 insertions, 7 deletions
@@ -65,10 +65,26 @@ leading `-y` when resolving group/action. ## Cross-cutting -- Bash completion: once `repo list` exists, complete repo names for `desc`, - `delete`, `add-remote` (like `--section` is completed today). One ssh call, - only when completing a repo-name argument. -- Skill: update both SKILL.md files (repo skills/gitctl + ~/.claude) to mention - delete (and its destructive, confirm-always nature) and `-y`'s real limit. -- Tests: each new helper verb gets self-test coverage (cgit block removal is the - risky one - mirror the insert tests: first/middle/last/missing). +Done as part of items 1-3: both SKILL.md files updated (delete + `-y` limit), +self-test coverage for every new helper verb, completion actions for `list` and +`delete`, README and CLAUDE.md brought current. + +## Remaining (not started) + +These are the leftovers after the three features shipped. None block anything. + +1. Repo-name bash completion. Now that `repo list` exists, complete repo NAMES + for `desc`, `delete`, and `add-remote` (the way `--section` is completed from + the server today). One ssh call (`gitctl repo list`, cut field 1), only when + completing the repo-name argument, so a stray Tab does not hit the network. + +2. Quiet the stray `No changes.` line. In `repo create` and `repo delete` the + `list-sections` / `add-section` helper passthrough prints a `No changes.` + line out of order, before the cgit-block message. Cosmetic only. Fix by + calling those helper steps with `quiet=True` (the flag already exists) and + printing a clean status, or by suppressing that specific echo. + +3. FUTURE / YAGNI: `gc-trash --older-than <days>` helper verb to prune + `TRASH_DIR` entries past a retention window, runnable from cron. The + timestamped trash layout already supports it; do not build until there is an + actual need to reclaim space. |
