Retry prompt hangs unattended runs even when -y / assume_yes is used
## Checklist
* [x] I have searched the issue tracker for relevant or duplicate issues.
## Erroneous Behavior
When running Topgrade with the `-y` (assume yes) flag, the expectation is that the run will be completely non-interactive and unattended. However, if a step hard-fails (e.g., Docker daemon not running, or a Windows UAC prompt times out), Topgrade halts the entire process to ask `Retry? (y)es/(N)o/(s)hell/(q)uit`.
This causes unattended/scheduled scripts to hang indefinitely waiting for user input.
## Expected Behavior
If `-y` is passed via the CLI (or `assume_yes = true` is in the config), Topgrade should assume it is running in a completely non-interactive environment. If a step fails, it should log the failure, suppress the retry prompt, and proceed to the next step to prevent halting automated workflows. Effectively, `-y` should imply `ask_retry = false`.
## Steps to reproduce
1. Run `topgrade -y` in an environment where a step will fail and cannot be automatically resolved (e.g., Docker daemon is stopped, triggering a container step failure).
2. Wait for the step to fail.
3. Observe that Topgrade halts and displays the interactive `Retry?` prompt, hanging the terminal indefinitely instead of skipping it.
## Possible Cause (Optional)
The `-y` flag currently only passes confirmation flags to underlying package managers, but does not suppress Topgrade's own internal retry prompt upon step failure. `-y` or `assume_yes` should ideally imply `--auto-retry 0` (or `ask_retry = false`) to ensure true non-interactive execution.
## Problem persists without calling from topgrade
* [ ] Yes
* [x] No
## Ran through `Remote Execution`
* [ ] Yes
* [x] No
If yes, does the issue still occur when you run topgrade directly in your
remote host?
* [ ] Yes
* [ ] No
## Configuration file (Optional)
```toml
[misc]
assume_yes = true
```
## Additional Details
* Operation System/Version
Windows
* Installation
* Topgrade version (`topgrade -V`)
## Verbose Output (`topgrade -v`)
<details>
<pre>
</pre>
</details>
关闭于 2026-05-17 4 条评论