Repository navigation
1.8.5
Task-list tool as sole writer (milestone 46)
- A new stdlib-only tool,
tools/task_list.py, is now the only writer ofTASKS_TODO.mdandTASKS_DONE.mdonce a milestone exists. It has three subcommands:initializewrites the whole ordered task list for/derive-tasksand lands it whole or not at all,insertplaces one task at the required--end,--before, or--afterposition for/submit-task, andmovemoves a finished task toTASKS_DONE.mdunder its**Verified:**bar. - Every write re-renders the whole file in one canonical layout and matches task titles exactly (case- and whitespace-insensitive), refusing a partial, duplicate, or unknown title with one
Error:line and both files unchanged. A failedmoveleaves both files as they were. - Task completion no longer writes ad-hoc scripts to move a task: the
complete-taskagent and skill run the move chained with their git step in one shell call, so the completion tail is one turn shorter and a refused move stages and commits nothing. - Measured in field use over 71 task completions after the change against 411 before: moves done by an ad-hoc script fell from 78% to 1%, moves needing more than one write call from 23% to none, the median completion tail from 3 turns to 2 (with 86% of completions now ending in exactly 2), and the tool refused none of its calls. The saving is about 2.5% of a completion agent's cost, most of it in cached input.
/submit-taskstops on an anchor that names no task instead of appending at the end, and/derive-taskswrites its whole list in one call rather than one append per brief.
Full Changelog: 1.8.4...1.8.5