Bug Description
list_tasks in markdown format truncates task IDs to 8 characters, which makes the displayed IDs unusable for subsequent tool calls (e.g., get, update, claim).
Root Cause
In src/format.rs, both format_task_short (line 202) and format_scan_task_short (line 475) truncate the task ID:
&task.id[..8.min(task.id.len())]
Impact
Task IDs are generated as 2-word petnames (e.g., gentle-turtle, brave-falcon). These are typically 12-20 characters long. Truncating to 8 characters produces broken prefixes like gentle-t or brave-fa that:
- Cannot be used with any other tool —
get, update, claim, delete, etc. all require the full task ID
- Are ambiguous — multiple petnames could share the same 8-char prefix
- Break the agent workflow — agents calling
list_tasks to discover tasks cannot use the returned IDs without a separate get call
Reproduction
- Create a task (auto-generates petname ID, e.g.,
gentle-turtle)
- Call
list_tasks with default (markdown) format
- Observe the ID is truncated to 8 chars (e.g.,
gentle-t)
- Try to use the truncated ID with
get — it fails with "task not found"
Expected Behavior
list_tasks should display the full task ID so agents can use it directly in follow-up calls.
Affected Code
src/format.rs:202 — format_task_short()
src/format.rs:475 — format_scan_task_short()
Suggested Fix
Replace &task.id[..8.min(task.id.len())] with &task.id in both locations.
Bug Description
list_tasksin markdown format truncates task IDs to 8 characters, which makes the displayed IDs unusable for subsequent tool calls (e.g.,get,update,claim).Root Cause
In
src/format.rs, bothformat_task_short(line 202) andformat_scan_task_short(line 475) truncate the task ID:Impact
Task IDs are generated as 2-word petnames (e.g.,
gentle-turtle,brave-falcon). These are typically 12-20 characters long. Truncating to 8 characters produces broken prefixes likegentle-torbrave-fathat:get,update,claim,delete, etc. all require the full task IDlist_tasksto discover tasks cannot use the returned IDs without a separategetcallReproduction
gentle-turtle)list_taskswith default (markdown) formatgentle-t)get— it fails with "task not found"Expected Behavior
list_tasksshould display the full task ID so agents can use it directly in follow-up calls.Affected Code
src/format.rs:202—format_task_short()src/format.rs:475—format_scan_task_short()Suggested Fix
Replace
&task.id[..8.min(task.id.len())]with&task.idin both locations.