40 lines
1.3 KiB
Markdown
40 lines
1.3 KiB
Markdown
# Feature detail: Local search + CLI Redmine client
|
|
|
|
**Parent roadmap:** [[../features-for-redmine_tickets-sync]]
|
|
**Status:** MVP+ (2026-07-14 … 2026-07-15) — ops-usable
|
|
**Cookbook:** `docs/cli_power_user_client.md`
|
|
|
|
## Modules
|
|
|
|
| Module | Role |
|
|
|--------|------|
|
|
| `redmine_ticket_query.py` | Property AST (`--where`) |
|
|
| `redmine_ticket_view.py` | Markdown + pager |
|
|
| `redmine_ticket_browse.py` | fzf → pager → action menu loop |
|
|
| `redmine_ticket_filters.py` | Saved filters + symlink queues |
|
|
| `redmine_ticket_drafts.py` | Draft queue + host safety |
|
|
| `redmine_ticket_meta.py` | Name→id for set-fields |
|
|
| `redmine_ticket_ocr.py` | Attachment text extract + subject suggest |
|
|
|
|
## Done
|
|
|
|
- [x] Local search / `@saved` filters / queues
|
|
- [x] view / walk (`--open-only` on search/browse/walk)
|
|
- [x] note vs customer-email vs set-fields (draft/apply)
|
|
- [x] `--body-file` + `--to-textile` (pandoc)
|
|
- [x] browse **loop** with action menu (queue-only mutations + NMI `m`)
|
|
- [x] configs: `bin/rtl`, `bin/rtd`, `--config`
|
|
- [x] `ocr-rename` + `@scanned-document`
|
|
- [x] `categories list`
|
|
|
|
## Open
|
|
|
|
- [ ] Nested config defaults
|
|
- [ ] Full curses TUI (optional later)
|
|
- [ ] categories create/update
|
|
|
|
## Non-goals
|
|
|
|
- Replacing Redmine web UI for everything
|
|
- Silent customer email from browse
|