Skip to content

refactor: move output package to cli/output#2

Merged
mpyw merged 1 commit intomainfrom
refactor/move-output-to-cli
Jan 2, 2026
Merged

refactor: move output package to cli/output#2
mpyw merged 1 commit intomainfrom
refactor/move-output-to-cli

Conversation

@mpyw
Copy link
Owner

@mpyw mpyw commented Jan 2, 2026

Summary

  • Move internal/output to internal/cli/output
  • Update all import paths (19 files)
  • Part of clean architecture refactoring to separate CLI concerns from core business logic

This is Step 1 of the usecase layer architecture refactoring plan.

Test plan

  • All tests pass
  • Lint passes

🤖 Generated with Claude Code

Move internal/output to internal/cli/output to better organize
CLI-specific packages. This is part of the clean architecture
refactoring to separate CLI concerns from core business logic.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@codecov
Copy link

codecov bot commented Jan 2, 2026

Welcome to Codecov 🎉

Once you merge this PR into your default branch, you're all set! Codecov will compare coverage reports and display results in all future pull requests.

Thanks for integrating Codecov - We've got you covered ☂️

@mpyw mpyw merged commit 4da01a2 into main Jan 2, 2026
8 checks passed
@mpyw mpyw deleted the refactor/move-output-to-cli branch January 2, 2026 15:53
@mpyw mpyw added the cli CLI functionality label Jan 15, 2026
mpyw added a commit that referenced this pull request Jan 20, 2026
- Change ShowClient interface to use provider.ParameterReader and
  provider.ParameterTagger instead of paramapi types
- Move version resolution logic (shift handling) to usecase layer
- Update ShowOutput to use string types for Version and Type
  (provider-agnostic, no longer tied to AWS-specific enums)
- Update CLI show command to use awsparam.NewAdapter
- Update GUI ParamShow to use awsparam.NewAdapter with parseInt64 helper
- Update all tests to use model.Parameter and model.AWSParameterMeta

Part of multi-cloud refactoring: PR #2 (Read UseCase Migration)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
mpyw added a commit that referenced this pull request Jan 20, 2026
* refactor(usecase): migrate param/show to provider interfaces

- Change ShowClient interface to use provider.ParameterReader and
  provider.ParameterTagger instead of paramapi types
- Move version resolution logic (shift handling) to usecase layer
- Update ShowOutput to use string types for Version and Type
  (provider-agnostic, no longer tied to AWS-specific enums)
- Update CLI show command to use awsparam.NewAdapter
- Update GUI ParamShow to use awsparam.NewAdapter with parseInt64 helper
- Update all tests to use model.Parameter and model.AWSParameterMeta

Part of multi-cloud refactoring: PR #2 (Read UseCase Migration)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* refactor(model): unify field names for multi-cloud compatibility

- Rename Secret.VersionID to Version (consistent with Parameter)
- Rename Parameter.LastModified to UpdatedAt
- Rename Secret.CreatedDate to CreatedAt
- Add UpdatedAt field to Secret for providers that track both dates
- Update all layers: model, provider, usecase, cli, gui

This makes the model layer truly provider-agnostic, supporting
AWS, Azure, and GCP field semantics uniformly.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* refactor(usecase): simplify param/diff and param/show using paramversion helper

- Move version resolution logic from usecase to paramversion.GetParameterWithVersion()
- Update paramversion to use provider.ParameterReader interface
- Add ParamReader field to staging diff runner for version resolution
- Use hybrid approach in staging: Client for apply ops, Reader for version resolution
- Update all test files with correct mocks for new interfaces

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cli CLI functionality

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant