stdiod logout-login conserves client installation id. windows build fix - #82
Conversation
|
ⓘ Qodo reviews are paused because the subscription is no longer active. Ask your workspace admin to reactivate the subscription to resume reviews. Manage billing |
There was a problem hiding this comment.
All reported issues were addressed across 4 files
Reply with feedback, questions, or to request a fix.
Re-trigger cubic
There was a problem hiding this comment.
1 issue found across 3 files (changes from recent commits).
Prompt for AI agents (unresolved issues)
Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.
<file name="crates/stdiod/crates/sealgate-stdiod/src/config.rs">
<violation number="1" location="crates/stdiod/crates/sealgate-stdiod/src/config.rs:351">
P3: The new doc comment says the function is true when the config "still holds something the saved backend issued," but the function still counts `device_id` and `sealgate_secret_key`, both of which can be user-supplied rather than backend-issued (`device_id`'s own field doc says "or a legacy override"; `sealgate_secret_key` is a per-user secret the caller passes via `--sealgate-secret-key`). The claim is only accurate once those are cleared, as the logout flow happens to do. This is a readability/consistency nitpick with no functional impact in the logout scenario, but the wording overstates which values are excluded.</violation>
</file>
Reply with feedback, questions, or to request a fix.
Re-trigger cubic
| } | ||
|
|
||
| impl PersistedConfig { | ||
| /// True when the config still holds something the saved backend issued. |
There was a problem hiding this comment.
P3: The new doc comment says the function is true when the config "still holds something the saved backend issued," but the function still counts device_id and sealgate_secret_key, both of which can be user-supplied rather than backend-issued (device_id's own field doc says "or a legacy override"; sealgate_secret_key is a per-user secret the caller passes via --sealgate-secret-key). The claim is only accurate once those are cleared, as the logout flow happens to do. This is a readability/consistency nitpick with no functional impact in the logout scenario, but the wording overstates which values are excluded.
Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At crates/stdiod/crates/sealgate-stdiod/src/config.rs, line 351:
<comment>The new doc comment says the function is true when the config "still holds something the saved backend issued," but the function still counts `device_id` and `sealgate_secret_key`, both of which can be user-supplied rather than backend-issued (`device_id`'s own field doc says "or a legacy override"; `sealgate_secret_key` is a per-user secret the caller passes via `--sealgate-secret-key`). The claim is only accurate once those are cleared, as the logout flow happens to do. This is a readability/consistency nitpick with no functional impact in the logout scenario, but the wording overstates which values are excluded.</comment>
<file context>
@@ -348,9 +348,13 @@ impl Resolved {
}
impl PersistedConfig {
+ /// True when the config still holds something the saved backend issued.
+ ///
+ /// Not client_installation_id: logout keeps that, so counting it would make
</file context>
Summary by cubic
Logout now keeps the client installation id, so logging out and back in re-binds to the machine's existing device record instead of silently creating a new one that orphans the servers bound to the old device. Also fixes a Windows build warning.
Changes
--new-deviceonsealgate-stdiod loginrequests a fresh device record for machine hand-offs or wedged records; it's rejected with--api-key, where no device record exists to replace.install-beeper.shgains--new-device, which implies--relogin, and passes it through to the dry-run preview.--backend <other>still overrides a logged-out config.proc_tests.rsso the crate builds on Windows.Written for commit 7cc73ab. Summary will update on new commits.