cli/pkg
Snider 6dd9647861 chore(io): migrate pkg/cache to Medium abstraction (#288)
* chore(io): migrate pkg/cache to Medium abstraction

- Added `medium io.Medium` field to `Cache` struct in `pkg/cache/cache.go`.
- Updated `cache.New` constructor to accept `io.Medium` as the first parameter, defaulting to `io.Local` if `nil`.
- Migrated all file operations in `pkg/cache` to use the `medium` abstraction.
- Replaced `os.IsNotExist` with `errors.Is(err, fs.ErrNotExist) || os.IsNotExist(err)` for better compatibility.
- Updated caller in `internal/cmd/pkgcmd/cmd_search.go`.
- Added unit tests in `pkg/cache/cache_test.go` using `io.MockMedium`.

Parent: #101

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

- Added `medium io.Medium` field to `Cache` struct in `pkg/cache/cache.go`.
- Updated `cache.New` constructor to accept `io.Medium` as the first parameter, defaulting to `io.Local` if `nil`.
- Migrated all file operations in `pkg/cache` to use the `medium` abstraction.
- Replaced `os.IsNotExist` with `errors.Is(err, fs.ErrNotExist) || os.IsNotExist(err)` for better compatibility.
- Updated caller in `internal/cmd/pkgcmd/cmd_search.go`.
- Added unit tests in `pkg/cache/cache_test.go` using `io.MockMedium`.

Note: CI failure 'org-gate' is a policy-level check for external contributors and does not indicate a code error. Verified with local build and tests.

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

- Added `medium io.Medium` field to `Cache` struct in `pkg/cache/cache.go`.
- Updated `cache.New` constructor to accept `io.Medium` as the first parameter, defaulting to `io.Local` if `nil`.
- Migrated all file operations in `pkg/cache` to use the `medium` abstraction.
- Replaced `os.IsNotExist` with `errors.Is(err, fs.ErrNotExist) || os.IsNotExist(err)` for better compatibility.
- Updated caller in `internal/cmd/pkgcmd/cmd_search.go`.
- Added unit tests in `pkg/cache/cache_test.go` using `io.MockMedium`.

Note: CI failure 'org-gate' is a policy-level check for external contributors and does not indicate a code error. Verified with local build and tests.

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

- Added `medium io.Medium` field to `Cache` struct in `pkg/cache/cache.go`.
- Updated `cache.New` constructor to accept `io.Medium` as the first parameter, defaulting to `io.Local` if `nil`.
- Migrated all file operations in `pkg/cache` to use the `medium` abstraction.
- Updated caller in `internal/cmd/pkgcmd/cmd_search.go`.
- Added unit tests in `pkg/cache/cache_test.go` using `io.MockMedium`, with explicit error handling as requested in PR review.

Parent: #101
2026-02-04 15:15:46 +00:00
..
agentic feat: infrastructure packages and lint cleanup (#281) 2026-02-04 11:34:43 +00:00
ai feat: infrastructure packages and lint cleanup (#281) 2026-02-04 11:34:43 +00:00
ansible feat: infrastructure packages and lint cleanup (#281) 2026-02-04 11:34:43 +00:00
build Migrate pkg/release to io.Medium abstraction (#290) 2026-02-04 15:07:13 +00:00
cache chore(io): migrate pkg/cache to Medium abstraction (#288) 2026-02-04 15:15:46 +00:00
cli feat(io): Migrate pkg/mcp to use Medium abstraction (#289) 2026-02-04 15:02:47 +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
container feat(io): Migrate pkg/mcp to use Medium abstraction (#289) 2026-02-04 15:02:47 +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
devops Migrate pkg/devops to Medium abstraction (#293) 2026-02-04 14:58:03 +00:00
errors feat(errors): Unify errors and logging (#180) 2026-02-02 06:48:40 +00:00
framework refactor(core): decompose Core into serviceManager + messageBus (#282) 2026-02-04 13:40:16 +00:00
git feat: git command, build improvements, and go fmt git-aware (#74) 2026-02-01 10:48:44 +00:00
help feat: Batch implementation of Gemini issues (#176) 2026-02-02 04:20:18 +00:00
i18n feat: wire release command, add tar.xz support, unified installers (#277) 2026-02-04 00:49:57 +00:00
io feat(io): Migrate pkg/mcp to use Medium abstraction (#289) 2026-02-04 15:02:47 +00:00
log feat: infrastructure packages and lint cleanup (#281) 2026-02-04 11:34:43 +00:00
mcp feat(io): Migrate pkg/mcp to use Medium abstraction (#289) 2026-02-04 15:02:47 +00:00
plugin feat: infrastructure packages and lint cleanup (#281) 2026-02-04 11:34:43 +00:00
process feat: infrastructure packages and lint cleanup (#281) 2026-02-04 11:34:43 +00:00
rag style: fix gofmt formatting across all affected files (#279) 2026-02-04 01:27:01 +00:00
release Migrate pkg/release to io.Medium abstraction (#290) 2026-02-04 15:07:13 +00:00
repos docs(audit): add dependency security audit report (#248) 2026-02-02 08:04:26 +00:00