| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2026-04-13 | Release v0.33.0: ask dependency UX and start gatingv0.33.0 | Paul Buetow | |
| Show only task alias IDs on ask info Depends lines. Block ask start until every dependency is completed. Bump version to 0.33.0. Made-with: Cursor | |||
| 2026-04-13 | ask: serialize concurrent CLI with repo lock and stale PID recovery | Paul Buetow | |
| Add advisory lock under .git/hexai-ask.lock around Taskwarrior execution, with metadata (PID and process basename) and Linux /proc comm checks to remove orphan lock files when the recorded holder is gone or not ask. Extract internal/filelock for shared flock helpers; stats uses it too. Made-with: Cursor | |||
| 2026-04-11 | Rename task CLI binary from do back to ask | Paul Buetow | |
| - Move cmd/do to cmd/ask; mage builds and installs ask; Fish completions to ask.fish - Update askcli help text, errors, executor default label, and Fish script (__ask_*) - Task alias cache subdirectory under XDG cache: hexai/ask/ - Rename integration test files and helpers; refresh README and docs - Rename plan-do-uuid-wrapper.md to plan-ask-uuid-wrapper.md Made-with: Cursor | |||
| 2026-04-10 | task 30: add proj prefix override for do | Paul Buetow | |
| 2026-04-10 | task 20: hide do info UUID unless HEXAI_DEBUG is set | Paul Buetow | |
| 2026-04-08 | fish: complete task selectors with short aliases only | Paul Buetow | |
| Add complete-aliases subcommand that emits tab-separated alias lines without UUID duplicates. Wire embedded Fish script (__do_task_selectors) to call complete-aliases; keep complete-uuids unchanged for scripts and tests. Made-with: Cursor | |||
| 2026-04-08 | Rename task CLI from ask to do | Paul Buetow | |
| - Move cmd/ask to cmd/do; mage BuildDo builds binary named do - Update askcli help text, errors, Fish completion (complete -c do, __do_*) - Task alias cache path: XDG cache hexai/do/task-aliases-v2.json - Refresh README and docs; go install path cmd/do@latest - Remove accidentally tracked cmd/ask build artifact; ignore cmd/do/do and cmd/do/ask Made-with: Cursor | |||
| 2026-04-07 | fix: recover gracefully from corrupted alias cache instead of hard-failingv0.29.1 | Paul Buetow | |
| When the task alias cache file contains invalid JSON (e.g. from a concurrent write race producing two concatenated JSON objects), the previous code returned a hard error that blocked all `ask` subcommands. Now loadTaskAliasCache discards the corrupt file and starts fresh, assigning new alias IDs on the next run. Validation errors (e.g. next_id reuse) still surface as errors since those indicate a logic bug. Also fix stale v1 reference in integration test aliasCachePath. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> | |||
| 2026-04-07 | feat: show task summary in fish shell autocompletion for alias IDsv0.29.0 | Paul Buetow | |
| The complete-uuids command now emits tab-separated "selector\tdescription" lines so fish shell displays the first 60 chars of the task description alongside each alias/UUID in the autocompletion menu. The __ask_add_dependency_modifiers fish function is updated to strip the description field before matching and building depends: completions. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> | |||
| 2026-04-07 | feat: reverse alias IDs for better shell tab-completionv0.28.2 | Paul Buetow | |
| Alias IDs are now stored in reversed form (e.g. id=37 → "10" instead of "01") so that the first character varies quickly across consecutive IDs, making shell auto-completion more effective. The counter logic is unchanged; only the string representation is reversed via a new reverseString helper in encodeTaskAliasID/decodeTaskAliasID. The cache file is bumped to task-aliases-v2.json so existing mappings are abandoned and all aliases are regenerated with the new format. Also fix TestDispatcher_CompleteUUIDsSubcommand to use an isolated temp dir for the alias cache, preventing flakiness from cross-test pollution. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> | |||
| 2026-03-29 | feat: implicit add for na/no-agent scope prefixv0.28.0 | Paul Buetow | |
| Amp-Thread-ID: https://ampcode.com/threads/T-019d37f6-6549-7119-979a-88bc1225c594 Co-authored-by: Amp <amp@ampcode.com> | |||
| 2026-03-28 | perf: replace linear scan with O(1) map lookup in task alias cache | Paul Buetow | |
| Add in-memory byUUID and byAlias maps to taskAliasCache so that ensureAlias, lookupUUIDByAlias, and lookupAliasByUUID all run in O(1) instead of scanning the full entries slice. Maps are rebuilt after every mutation (load, prune, append) to avoid stale pointers. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> | |||
| 2026-03-28 | Rename "Pro" column header to "Pri" for Priority in ask command output | Paul Buetow | |
| Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> | |||
| 2026-03-27 | release: v0.27.2v0.27.2 | Paul Buetow | |
| 2026-03-27 | release: v0.27.1v0.27.1 | Paul Buetow | |
| 2026-03-27 | Rename ask table headers | Paul Buetow | |
| 2026-03-27 | Implement command registry for askcli commands | Paul Buetow | |
| 2026-03-27 | docs: document askcli exports | Paul Buetow | |
| 2026-03-27 | Explicitly ignore askcli write errors | Paul Buetow | |
| 2026-03-27 | Switch task alias cache save to pointer | Paul Buetow | |
| 2026-03-27 | Move selector helpers into task selector | Paul Buetow | |
| 2026-03-27 | Extract parseGlobalFlags helper | Paul Buetow | |
| 2026-03-27 | refactor: share alias cache lookup | Paul Buetow | |
| 2026-03-27 | Split askcli info and add commands | Paul Buetow | |
| 2026-03-27 | Use Go 1.21 max builtin in formatter | Paul Buetow | |
| 2026-03-27 | 664b9fe4: extract renderTaskList helper | Paul Buetow | |
| 2026-03-27 | Remove dead UUID completion items (61568dc2-6915-4444-8027-2ad4eacf2408) | Paul Buetow | |
| 2026-03-27 | Fix dispatcher routing test for 38d5bd83-29e7-4a3c-ad44-21dddfbdfe22 | Paul Buetow | |
| 2026-03-27 | refactor: extract runSingleTaskCommand helper ↵ | Paul Buetow | |
| (715cc01f-1630-4d11-b6fd-18d64a8c2035) | |||
| 2026-03-27 | task 3a4c0f14-16ad-487f-af7c-bd99ee6464e6: use pointer Dispatcher receivers | Paul Buetow | |
| 2026-03-27 | askcli: support add depends selectors | Paul Buetow | |
| 2026-03-27 | fix ask description width 84f1af4e-be84-4265-9df2-8f6932059913 | Paul Buetow | |
| 2026-03-27 | fix ask alias output wording 7f53c2ff-4eb0-4c7e-bf90-f44587364f4a | Paul Buetow | |
| 2026-03-27 | fix askcli header width for 0685342b-606c-4c8f-aab5-cd363d926e77 | Paul Buetow | |
| 2026-03-27 | fix ask add alias output for 1a1731dc-1f11-42bd-be12-4c1af7f7e673 | Paul Buetow | |
| 2026-03-27 | test: cover ask info dependencies 052ad39a-6967-4628-a65c-db2a163de09b | Paul Buetow | |
| 2026-03-27 | Verify fish selector completion coverage for ↵ | Paul Buetow | |
| 6c1f2f60-d55c-4a0c-ba5d-e897c738ecb4 | |||
| 2026-03-27 | Add alias coverage for task b777fcc2-8f64-4250-b0ac-6038a8aa26b4 | Paul Buetow | |
| 2026-03-27 | task 73fabcf6-d4a1-4bf3-aae1-a390a734e517: extend ask selector completion | Paul Buetow | |
| 2026-03-27 | askcli: show task aliases in output (cd322ed1-882d-40e9-ab98-689acd5f161e) | Paul Buetow | |
| 2026-03-26 | askcli: resolve aliases for selector task 0b9480fe-ec1b-4c0e-a8b0-88f1f08b56d3 | Paul Buetow | |
| 2026-03-26 | Implement ask alias cache foundation for d5a99b1b-13f3-4b73-8222-71f012c60bc9 | Paul Buetow | |
| 2026-03-26 | Implement ask started-task info 4c3640dc-3730-40c9-bfa6-db90564e3171 | Paul Buetow | |
| 2026-03-26 | release: v0.26.1v0.26.1 | Paul Buetow | |
| 2026-03-26 | ask: speed up fish UUID completion | Paul Buetow | |
| 2026-03-26 | ask: filter fish UUID completion | Paul Buetow | |
| 2026-03-26 | ask: add fish UUID completions | Paul Buetow | |
| 2026-03-26 | ask: align list header columns for task da6d3d36 | Paul Buetow | |
| 2026-03-26 | ask: silence rc.confirmation override banner | Paul Buetow | |
| 2026-03-26 | ask: add fish completions for task CLI | Paul Buetow | |
