Add typed InstallFailureCategory classifier for remote server install errors#10506
Draft
alokedesai wants to merge 1 commit intomasterfrom
Draft
Add typed InstallFailureCategory classifier for remote server install errors#10506alokedesai wants to merge 1 commit intomasterfrom
alokedesai wants to merge 1 commit intomasterfrom
Conversation
… errors Introduces a stable classifier API that maps raw setup/install error strings into 27 typed categories covering all CSV failure families: timeout, missing curl/wget/tar/bash, unsupported arch/OS, DNS/connect/ TLS/HTTP errors, partial download, write failures, permission denied, no space/quota, read-only filesystem, tar extraction/permission errors, expired password, startup file permission, SSH disconnect, and generic script/unknown fallbacks. Key changes: - New InstallFailureCategory enum with title(), description(), as_str() - classify_install_failure() pattern matcher on stderr + exit code - ClassifiedInstallFailure bundle with from_raw() and from_error_string() - RemoteServerSetupState::Failed gains optional failure_category field - Manager classifies failures at all three construction sites - Banner uses typed category title/description when available - 69 unit tests covering every category with representative messages Co-Authored-By: Oz <oz-agent@warp.dev>
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.
Problem
When remote-server installation failed, the app mostly had raw stderr and generic setup failure state. That made the UI and telemetry hard to interpret: users saw broad install failures even when the underlying problem was a known category such as DNS, missing tools, unsupported architecture, no space, permission denied, TLS, or SSH disconnect.
Solution
Proof / validation
No screenshots are applicable because this PR changes failure classification/copy rather than a visual layout. Proof is unit-test and integration output:
cargo test -p remote_serverpassed with 136 tests.Co-Authored-By: Oz oz-agent@warp.dev