docs(todo): add initial feature checklist for patchman

- Outline planned features and functionality for the patchman tool
- Serve as a basis for future development and iteration
This commit is contained in:
2025-07-23 12:31:27 +02:00
parent 2fda134686
commit 312f09a2d7
2 changed files with 22 additions and 22 deletions

22
TODO.md
View File

@@ -0,0 +1,22 @@
<!-- This checklist outlines the rough plan for the "patchman" tool. It focuses on core functionality and will evolve over time. -->
# Patchman Feature Checklist (Initial Planning)
- [ ] Apply patches in order (like `quilt push`)
- [ ] Revert applied patches (like `quilt pop`)
- [ ] Track current patch level
- [ ] Edit the currently active patch
- [ ] Generate a new patch from:
- [ ] specific files
- [ ] all staged changes
- [ ] all unstaged changes
- [ ] Configure upstream source (branch or remote)
- [ ] Fetch and reset to upstream (optionally via config)
- [ ] Use a project-local config file (e.g. `patchman.yaml`)
- [ ] Derive patch series order from numbered filenames (no `series` file required)
- [ ] Optional reverse-apply (`git revert` or patch reverse)
- [ ] Integrate with Git (using CLI directly, not a lib)
- [ ] Provide CLI via `typer` with autocompletion
- [ ] Build a Textual-based TUI frontend (after CLI is stable)
- [ ] Handle malformed or outdated patch files gracefully
- [ ] Support dry-run mode (for testing without modification)

View File

@@ -1,22 +0,0 @@
<!-- This checklist outlines the rough plan for the "patchman" tool. It focuses on core functionality and will evolve over time. -->
# Patchman Feature Checklist (Initial Planning)
- [ ] Apply patches in order (like `quilt push`)
- [ ] Revert applied patches (like `quilt pop`)
- [ ] Track current patch level
- [ ] Edit the currently active patch
- [ ] Generate a new patch from:
- [ ] specific files
- [ ] all staged changes
- [ ] all unstaged changes
- [ ] Configure upstream source (branch or remote)
- [ ] Fetch and reset to upstream (optionally via config)
- [ ] Use a project-local config file (e.g. `patchman.yaml`)
- [ ] Derive patch series order from numbered filenames (no `series` file required)
- [ ] Optional reverse-apply (`git revert` or patch reverse)
- [ ] Integrate with Git (using CLI directly, not a lib)
- [ ] Provide CLI via `typer` with autocompletion
- [ ] Build a Textual-based TUI frontend (after CLI is stable)
- [ ] Handle malformed or outdated patch files gracefully
- [ ] Support dry-run mode (for testing without modification)