summaryrefslogtreecommitdiff
path: root/internal/hexaiaction/run.go
AgeCommit message (Collapse)Author
2026-03-19Improve actionable error guidancePaul Buetow
2026-03-19Inject runner dependencies across CLI, action, and LSPPaul Buetow
2026-03-17Fix bugs, remove duplication, and clean up code quality issuesPaul Buetow
- Log swallowed JSON unmarshal errors in stats and LSP handlers - Fix debug log file handle leak in tmuxedit (return closer from initDebugLog) - Check f.Close() errors on write paths in promptstore and tmuxedit - Fix cacheGet TOCTOU race by using single write lock - Fix readInput to use passed stdin reader instead of os.Stdin.Stat() - Remove 45 'moved to' comment tombstones from lsp/handlers.go - Deduplicate canonicalProvider wrappers (use llmutils.CanonicalProvider directly) - Remove SetWindow side effect from stats.TakeSnapshot (pure read now) - Move duplicated splitLines to textutil.SplitLinesBytes - Collapse StatusSink.SetGlobal 10 params into GlobalStatus struct - Simplify LRU touchLocked to in-place delete-and-append Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-16Rename timeout helpers to match actual durations (timeout20s, timeout18s)Paul Buetow
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-16Fix mixed pointer/value receivers on appconfig.AppPaul Buetow
Change all value receivers on App to pointer receivers for consistency. Update callers that pass App values to pass pointers where needed for the actionConfig interface. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02hexaiaction: replace global action state with Runner struct (task 406)Paul Buetow
2026-03-02hexaiaction: use sectioned config interface instead of full App (task 409)Paul Buetow
2026-03-02codeaction: add Build/Resolve handler registries (task 410)Paul Buetow
2025-11-02some linter fixesPaul Buetow
2025-09-28Add --config flag support across CLI, LSP, and tmux toolsPaul Buetow
2025-09-26Refactor surface config to support multi-provider arraysPaul Buetow
2025-09-26Add per-surface provider overrides and wiringPaul Buetow
2025-09-19fixPaul Buetow
2025-09-17feat(stats,tmux): global Σ@window stats across processes with flocked ↵Paul Buetow
cache; width mitigation (narrow/maxlen); configurable [stats] window_minutes; robust coverage parsing; docs update\n\n- Add internal/stats with windowed event cache + flock + atomic writes\n- Wire stats into LSP/CLI/Tmux Action; tmux shows Σ@window with per-model tail\n- HEXAI_TMUX_STATUS_NARROW and HEXAI_TMUX_STATUS_MAXLEN for width control\n- Add [stats] window_minutes to config and apply on startup\n- Improve Magefile coverage handling; add tests to lift coverage >85%\n- Update docs/tmux.md and config example
2025-09-15release: v0.10.1v0.10.1Paul Buetow
- Fix TUI 'p' hotkey: open editor for Custom prompt - Introduce ActionCustomPrompt to disambiguate from Custom actions submenu - Bump version to 0.10.1
2025-09-14release: v0.10.0v0.10.0Paul Buetow
2025-09-08tmux: colored LLM status with provider + stats; add start heartbeat for ↵Paul Buetow
LSP/CLI/TUI; theme support via HEXAI_TMUX_STATUS_THEME and HEXAI_TMUX_STATUS_FG/BG; docs: update tmux options and add Helix+tmux quickstart
2025-09-07feat(tmux): add status line updates via @hexai_status; wire into CLI, LSP ↵Paul Buetow
stats, and tmux-action
2025-09-07editor: remove prefilled text in temp files for custom prompts (TUI and CLI)Paul Buetow
2025-09-07feat: add Custom prompt action (p) with editor integration; shared editor ↵Paul Buetow
helper in internal/editor; hexai CLI opens editor when no args
2025-09-07feat: add 'Simplify and improve' action; configurable prompts in config; ↵Paul Buetow
wire into LSP and TUI
2025-09-07feat: rename hexai-action -> hexai-tmux-action; remove --tmux/--no-tmux; ↵Paul Buetow
tmux-only flow; update docs and Magefile
2025-09-07test: add seams for RunTUI and client; expand hexaiaction tests; cover lsp ↵Paul Buetow
initialized and testutil fixtures
2025-09-06more testsPaul Buetow