| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2026-03-16 | Add bounds checks to extractRangeText and split into helper functions | Paul Buetow | |
| Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> | |||
| 2026-03-16 | Use read lock for cache misses in completionState.cacheGet | Paul Buetow | |
| Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> | |||
| 2026-03-16 | Rename timeout helpers to match actual durations (timeout20s, timeout18s) | Paul Buetow | |
| Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> | |||
| 2026-03-16 | Replace interface{} with any in LSP types | Paul Buetow | |
| Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> | |||
| 2026-03-16 | Use filepath.Join instead of fmt.Sprintf for path construction | Paul Buetow | |
| Replace string-based path building with filepath.Join in LSP and MCP server log path helpers for platform-correct path separators. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> | |||
| 2026-03-16 | Add doc comments to exported types and functions | Paul Buetow | |
| Document ~30 exported types in lsp/types.go and exported functions in llm/provider.go, lsp/server.go, and hexailsp/run.go. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> | |||
| 2026-03-16 | Split mcp/server.go (962L) into server, handlers_prompt, handlers_tool | Paul Buetow | |
| server.go (223L): core lifecycle and routing handlers_prompt.go (420L): prompt CRUD handlers handlers_tool.go (335L): tool handlers and schema builders Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> | |||
| 2026-03-16 | Split config_load.go into config_load.go and config_env.go | Paul Buetow | |
| Move environment variable handling functions into config_env.go (269L), keeping config_load.go at 697L. Both well under the 1000-line limit. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> | |||
| 2026-03-16 | Merge runOnce and runOnceWithOpts in hexaiaction/prompts.go | Paul Buetow | |
| Consolidate near-identical functions into a single runOnce that accepts requestArgs (callers pass zero-value when no options needed). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> | |||
| 2026-03-16 | Add gofumpt formatting target to Magefile | Paul Buetow | |
| Add 'mage fmt' target that runs gofumpt -w on the project. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> | |||
| 2026-03-16 | Fix mixed pointer/value receivers on appconfig.App | Paul 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-16 | Replace custom stringsTrim with strings.TrimSpace | Paul Buetow | |
| Remove duplicate stringsTrim implementations in stats and tmux packages, replacing all call sites with the standard library strings.TrimSpace. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> | |||
| 2026-03-16 | Use %w for error wrapping in appconfig config_load.go | Paul Buetow | |
| Replace %v with %w in three fmt.Errorf calls that wrap actual error values, enabling errors.Is/errors.As chains for callers. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> | |||
| 2026-03-16 | Decompose App God struct into embedded section structs | Paul Buetow | |
| Replace 60+ flat fields in App with 4 embedded section structs: CoreConfig, ProviderConfig, PromptConfig, FeatureConfig. Go field promotion preserves all existing field access patterns. Updated flattenAppConfig to recurse into embedded structs for runtimeconfig. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> | |||
| 2026-03-16 | Refactor oversized functions and split large test files | Paul Buetow | |
| Split DefaultPrompts (201L), loadFromFile (83L), and Update (74L) into focused helper functions under 50 lines each. Split handlers_test.go (1650L) and config_test.go (1419L) into logical sub-files under 1000L. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> | |||
| 2026-03-16 | Remove os.Setenv from MCP server production code | Paul Buetow | |
| Replace environment variable communication between cmd and internal packages with explicit MCPOverrides struct. CLI flag values are now passed via typed struct fields through Run/RunWithFactory/RunBackfill. Env var support preserved through appconfig's applyMCPEnv pipeline. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> | |||
| 2026-03-16 | Replace panic with graceful error returns in tmuxedit and mcp-server | Paul Buetow | |
| Change initDebugLog() and defaultLogPath() to return errors instead of panicking. Callers now handle errors gracefully with proper messages. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> | |||
| 2026-03-16 | Fix time.After timer leak in stats.acquireFileLock | Paul Buetow | |
| Replace per-iteration time.After with a single time.NewTimer that is reused via Reset() and cleaned up with defer Stop(). Prevents leaking a timer and channel on every retry iteration. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> | |||
| 2026-03-16 | Fix data races in logging package using atomic operations | Paul Buetow | |
| Replace bare package-level vars with atomic.Pointer[log.Logger] for std and atomic.Int32 for logPreviewLimit to prevent concurrent access races. Add comprehensive tests including concurrency, edge cases, and nil logger. Coverage: 100%. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> | |||
| 2026-03-16 | Release v0.24.0v0.24.0 | Paul Buetow | |
| Bring unit test coverage from ~75% to 85.1% project-wide. All internal packages now exceed 80% coverage. Refactored cmd entrypoints to extract testable run() functions with injectable seams. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> | |||
| 2026-03-16 | Release v0.23.1v0.23.1 | Paul Buetow | |
| 2026-03-15 | Release v0.23.0v0.23.0 | Paul Buetow | |
| 2026-03-14 | Release v0.22.3v0.22.3 | Paul Buetow | |
| 2026-03-14 | Release v0.22.2v0.22.2 | Paul Buetow | |
| 2026-03-14 | Release v0.22.1v0.22.1 | Paul Buetow | |
| 2026-03-13 | release: v0.22.0v0.22.0 | Paul Buetow | |
| 2026-03-10 | Bump version to 0.20.2v0.20.2 | Paul Buetow | |
| 2026-03-10 | task 80330fc4: deduplicate default config path helper | Paul Buetow | |
| 2026-03-10 | task dac9b1e5: avoid LSP startup panic on StateDir failure | Paul Buetow | |
| 2026-03-10 | task bf088a70: extract LSP client and completion state | Paul Buetow | |
| 2026-03-02 | release: v0.20.1v0.20.1 | Paul Buetow | |
| 2026-03-02 | hexaiaction: replace global action state with Runner struct (task 406) | Paul Buetow | |
| 2026-03-02 | hexaicli: move column printer into internal/termprint package (task 406) | Paul Buetow | |
| 2026-03-02 | lsp: inject StatusSink to decouple core from tmux package (task 407) | Paul Buetow | |
| 2026-03-02 | appconfig: return toml raw-unmarshal errors instead of ignoring (task 409) | Paul Buetow | |
| 2026-03-02 | io: use errors.Is for EOF checks in lsp and mcp servers (task 409) | Paul Buetow | |
| 2026-03-02 | llm: extract shared doJSON and logStart helpers (task 409) | Paul Buetow | |
| 2026-03-02 | gotest: extract Go codegen heuristics from lsp handlers (task 406) | Paul Buetow | |
| 2026-03-02 | hexailsp: add ConfigurableServerRunner for runtime ApplyOptions (task 408) | Paul Buetow | |
| 2026-03-02 | lsp: use appconfig.CustomAction directly for custom actions (task 411) | Paul Buetow | |
| 2026-03-02 | hexaiaction: use sectioned config interface instead of full App (task 409) | Paul Buetow | |
| 2026-03-02 | mcp: depend on SlashCommandSyncer interface instead of concrete type (task 410) | Paul Buetow | |
| 2026-03-02 | lsp: decompose tryLLMCompletion orchestration helpers (task 415) | Paul Buetow | |
| 2026-03-02 | lsp: decompose resolveGoTest workflow into helpers (task 416) | Paul Buetow | |
| 2026-03-02 | hexaicli: decompose runCLIJobs and runChat helpers (task 417) | Paul Buetow | |
| 2026-03-02 | lsp: decompose detectAndHandleChat into focused helpers (task 418) | Paul Buetow | |
| 2026-03-02 | llmutils: remove remaining default-model wrappers in callers (task 413) | Paul Buetow | |
| 2026-03-02 | lsp: cancel handler contexts on shutdown via server context (task 423) | Paul Buetow | |
| 2026-03-02 | lsp: use context-mode registry for additional context dispatch (task 408) | Paul Buetow | |
| 2026-03-02 | remove plan | Paul Buetow | |
