Fix git_info flash, deleted-build error, and browser TUI corruption#23
Merged
bluestreak01 merged 1 commit intomasterfrom Apr 17, 2026
Merged
Fix git_info flash, deleted-build error, and browser TUI corruption#23bluestreak01 merged 1 commit intomasterfrom
bluestreak01 merged 1 commit intomasterfrom
Conversation
- Panel git info no longer flashes to None on filesystem-watcher
reload: replaced GitCache::invalidate (which removed the cache
entry) with refresh_async, which spawns the background query
while keeping the existing entry visible until poll_pending
swaps in fresh data.
- Azure DevOps timeline 404 (build deleted by retention policy or
user) now surfaces the server's "build N has been deleted"
message instead of "Failed to parse Azure timeline: missing
field records".
- open_url now redirects child stdin/stdout/stderr to /dev/null,
so Firefox/Chromium chatter ("Opening in existing browser
session.", Gtk/Wayland warnings) no longer corrupts the TUI
when pressing 'o' in the CI panel or during OAuth login.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
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.
Summary
Three small bugfixes surfaced while using the app today:
Nonewhen the filesystem watcher fires.reload_panelswas callingGitCache::invalidate, which removed the repo's cache entry — so the very nextrefresh_gitreturnedNoneand the panel blanked out for a frame until the background query finished. Replacedinvalidatewithrefresh_async, which spawns the background query but leaves the existing entry in place.poll_pendingswaps in the fresh data when it lands.BuildNotFoundExceptionJSON body. The previous code only branched on 401/403 auth errors, so 404 fell through toserde_json::from_str::<Timeline>and surfacedFailed to parse Azure timeline: missing field \records`. Now we extract the server'smessage` field (e.g. "The requested build N has been deleted.") and return it directly.open_urlwas usingCommand::spawn()without redirecting stdio, so Firefox's "Opening in existing browser session." stderr message (and any Gtk/Wayland warnings) bled onto the TUI when pressingoin the CI panel or during OAuth login. Now we redirect stdin/stdout/stderr of the spawnedxdg-open/openprocess to/dev/null.Test plan
oon a CI check while a browser instance is already running — TUI stays clean, no "Opening in existing browser session." text on screen🤖 Generated with Claude Code