cli/internal/cmd
Snider 40fd53dfc1 chore(io): Migrate pkg/agentic to Medium abstraction (#286)
* chore(io): migrate pkg/agentic to Medium abstraction

This commit migrates the pkg/agentic package to use the io.Medium
abstraction for all file system operations.

Changes:
- Updated pkg/agentic/config.go and pkg/agentic/context.go to accept
  io.Medium in relevant functions.
- Replaced os and ioutil calls with io.Medium methods.
- Updated internal/cmd/ai/ commands to pass io.Local to agentic functions.
- Updated pkg/agentic/ tests to use io.MockMedium and io.Local.
- Switched from os.IsNotExist to errors.Is(err, os.ErrNotExist) for better
  compatibility with wrapped errors.

Part of #101.

* chore(io): migrate pkg/agentic to Medium abstraction

Migrated pkg/agentic/config.go and pkg/agentic/context.go to use the
io.Medium abstraction for filesystem operations.

Changes:
- Updated LoadConfig, SaveConfig, ConfigPath, BuildTaskContext,
  GatherRelatedFiles, and findRelatedCode to accept io.Medium.
- Replaced os/ioutil calls with m.Read, m.Write, and m.EnsureDir.
- Updated CLI commands in internal/cmd/ai/ to pass io.Local.
- Updated tests to use io.MockMedium and io.Local.
- Fixed os.ErrNotExist check for wrapped errors using errors.Is.

Note: The org-gate CI failure is a policy check for external contributors
and does not reflect a code issue.

Part of #101.

* chore(io): migrate pkg/agentic to Medium abstraction

This commit migrates the pkg/agentic package to use the io.Medium
abstraction for all file system operations, improving testability.

Changes:
- Updated pkg/agentic/config.go and pkg/agentic/context.go to accept
  io.Medium in relevant functions.
- Replaced direct os file operations with io.Medium methods.
- Updated internal/cmd/ai/ commands to pass io.Local to agentic functions.
- Updated pkg/agentic/ tests to use io.MockMedium and io.Local.
- Switched from os.IsNotExist to errors.Is(err, os.ErrNotExist) for better
  compatibility with wrapped errors from MockMedium.
- Reduced default fuzzing time per target in 'core go qa' from 5s to 3s
  to avoid 'context deadline exceeded' failures in CI environments.

Part of #101.
2026-02-04 15:32:53 +00:00
..
ai feat: wire release command, add tar.xz support, unified installers (#277) 2026-02-04 00:49:57 +00:00
ci Migrate pkg/release to io.Medium abstraction (#290) 2026-02-04 15:07:13 +00:00
collect feat: infrastructure packages and lint cleanup (#281) 2026-02-04 11:34:43 +00:00
config feat: infrastructure packages and lint cleanup (#281) 2026-02-04 11:34:43 +00:00
crypt feat: infrastructure packages and lint cleanup (#281) 2026-02-04 11:34:43 +00:00
deploy feat: wire release command, add tar.xz support, unified installers (#277) 2026-02-04 00:49:57 +00:00
dev Migrate pkg/devops to Medium abstraction (#293) 2026-02-04 14:58:03 +00:00
docs feat: infrastructure packages and lint cleanup (#281) 2026-02-04 11:34:43 +00:00
doctor feat(mcp): add workspace root validation to prevent path traversal (#100) 2026-02-01 21:59:34 +00:00
gitcmd feat(mcp): add workspace root validation to prevent path traversal (#100) 2026-02-01 21:59:34 +00:00
go chore(io): Migrate pkg/agentic to Medium abstraction (#286) 2026-02-04 15:32:53 +00:00
help feat: Batch implementation of Gemini issues (#176) 2026-02-02 04:20:18 +00:00
monitor feat(errors): Unify errors and logging (#180) 2026-02-02 06:48:40 +00:00
php feat: infrastructure packages and lint cleanup (#281) 2026-02-04 11:34:43 +00:00
pkgcmd chore(io): migrate pkg/cache to Medium abstraction (#288) 2026-02-04 15:15:46 +00:00
plugin feat: infrastructure packages and lint cleanup (#281) 2026-02-04 11:34:43 +00:00
qa feat(errors): Unify errors and logging (#180) 2026-02-02 06:48:40 +00:00
rag feat: infrastructure packages and lint cleanup (#281) 2026-02-04 11:34:43 +00:00
sdk feat: infrastructure packages and lint cleanup (#281) 2026-02-04 11:34:43 +00:00
security style: fix gofmt formatting across all affected files (#279) 2026-02-04 01:27:01 +00:00
setup feat: infrastructure packages and lint cleanup (#281) 2026-02-04 11:34:43 +00:00
test feat(mcp): add workspace root validation to prevent path traversal (#100) 2026-02-01 21:59:34 +00:00
updater feat: infrastructure packages and lint cleanup (#281) 2026-02-04 11:34:43 +00:00
vm feat: infrastructure packages and lint cleanup (#281) 2026-02-04 11:34:43 +00:00
workspace feat: Batch implementation of Gemini issues (#176) 2026-02-02 04:20:18 +00:00