Integrate name resolution into commands
Merged
JE
9mo ago+61+61+01234567890123456789-139-139-012345678901234567890123456789
Summary
- Refactors todos.sh and todolists.sh commands to use the centralized name resolution from lib/names.sh (introduced in #12)
- Enables users to specify projects and todolists by name instead of numeric IDs
- Removes ~78 lines of duplicated resolution boilerplate
Example Usage
# Use project name instead of ID
bcq todos --in "My Project"
# Use both project and todolist names
bcq todo "New task" --list "Sprint 42" --in "Acme Corp"
# Works for todolist groups too
bcq todolistgroups --list "Backlog" --in "Engineering"
Files Changed
lib/commands/todos.sh- All functions now userequire_project_id()lib/commands/todolists.sh- Usesrequire_project_id()andrequire_todolist_id()lib/commands/people.sh-resolve_assignee()delegates toresolve_person_id()
Test plan
- All 374 existing tests pass
- Manual testing with name-based project resolution
- Manual testing with name-based todolist resolution