Open
Conversation
Introduce full Codeup platform support. - New CLI subcommands `codeup check` and `codeup setup` for interactive configuration and verification. - Added `CodeupStage` to the workflow pipeline, including form handling, configuration display, and verification integration. - Implemented display formatter to render Codeup configuration and verification results as tables and messages. - Extended domain layer with `CodeupConfigInfo`, `CodeupVerificationResult`, and related enums. - Updated `VerificationService` to verify Codeup settings via the repository. - Adjusted stage manager ordering to include Codeup and updated logger mapping. - Exported new modules through `app::commands::codeup` and `domain::config::global`. These changes enable users to manage Codeup credentials, validate them, and see clear feedback directly from the CLI workflow.
Add interactive confirmation steps when configuring platforms. - Extend `platform/config.rs` to import `confirm` and ask the user whether to configure a detected platform after adding the account. - Refactor `platforms/codeup.rs` to separate the logic for new vs. existing Codeup configurations, prompting the user to configure when none exists and to keep current values when one is already present. - Improves user experience by preventing accidental overwrites and giving explicit control over configuration actions. Closes #0
Improve the interactive SSH workflow by detecting SSH keys that exist on disk but are not loaded into the agent and by introducing a typed action enum for clearer option handling. - Implement `has_unloaded_keys()` in `util/ssh/add.rs` to scan for keys not yet loaded. - Refactor `platforms/ssh.rs` to use a new `SshAction` enum, simplifying the selection logic and making the flow more explicit. - Update the interactive menu to present actions based on actual key state (add, generate, remove, continue/done). - Clean up duplicate imports and re‑exports in `util/mod.rs` and `util/ssh/mod.rs`. - Add documentation comments for SSH result formatting. - Minor clean‑up in `stage.rs` and `codeup.rs` to remove redundant warning lines. The changes provide a more robust user experience during `workflow ssh` commands, ensuring users are prompted only with relevant actions and that unloaded keys are surfaced automatically.
### Why
The SSH interactive stage showed the **RemoveKey** action even when the workflow was not in command mode, leading to a confusing UI. Additionally, the selection prompt did not provide a sensible default, forcing users to manually confirm the last option.
### What
- Refactored the conditional logic so the **RemoveKey** option is only added when `has_keys` is true **and** the workflow mode is `Command`.
- Introduced a `default_idx` variable and applied `.default(default_idx)` to the selection prompt, making the last option the default choice.
### How
- Merged the nested `if has_keys { if has_keys && ... }` into a single condition `if has_keys && context.mode() == WorkflowMode::Command`.
- Re‑used the existing options vector length to compute the default index and passed it to the `select!` macro via the `.default()` builder method.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
PR Ready
Types of changes
Summary
在系统中新增对 Codeup 平台的完整支持,包括配置、HTTP 客户端、业务服务以及仓储层的实现,实现跨 crate 的依赖注入。
Key Changes
Changes
Features
Refactors
Configuration
Impact Analysis
Affected Modules
Risk Assessment
Overall risk: medium
Risk factors:
Mitigation:
Testing Suggestions
Statistics
Review Info