Skip to content

Fix import refresh and add GitHub PR review - #9

Merged
Jonovono merged 4 commits into
masterfrom
codex/import-refresh-unified
Oct 17, 2026
Merged

Jonovono merged 4 commits into
masterfrom
codex/import-refresh-unified

Conversation

@Jonovono

@Jonovono Jonovono commented Oct 17, 2026 •

Copy link
Copy Markdown
Contributor

Fix the crash when refreshing project imports and provide one deduplicated list ordered by recent tool activity. Discovery runs explicitly when opening or refreshing Import, preserves user selection, and ignores stale or cancelled scans. Repositories in system temporary directories are excluded across all discovery sources, including cached results and symlink aliases; manual opening and already-added projects remain available.

Add a fixed project header with a Worktrees / Pull requests toggle. The GitHub view uses Octocrab 0.54.5 with the existing GitHub CLI login, lists open PRs and drafts by latest update, and offers shortened tabs, searchable overflow, pagination, and remote selection. PR patches use the existing diff viewer in read-only mode; local checkout selections and reading positions survive switching modes.

GitHub requests run off the UI thread on a shared Tokio runtime. Generation checks discard stale responses; preview keys include repository, PR, and commit IDs. Previews share the bounded cache, keep the selected file available after cache eviction, and reject oversized patches. Errors support retry and opening the PR in GitHub. GitHub.com only; review comments, approvals, merge, and checkout are outside this change.

Validation:

  • Full cargo test --locked --features ui-tests suite passed, including import refresh/cancellation, worktree restoration, staging, native rendering, and watcher checks.
  • Extended GitHub native UI test passed for search, pagination, refresh, remote switching, empty repositories, cache eviction, stale responses, retry, and index preservation across staging entry points.
  • cargo clippy --locked --all-targets --features ui-tests -- -D warnings, formatting, and whitespace checks passed.
  • Live read-only Octocrab checks passed against public and private repositories, including PR listing and diff parsing.
  • Native screenshots inspected for the PR header, diff viewer, and overflow menu.

Temporary-repository follow-up: all 17 discovery tests and the native import UI test passed, including cached scans, component-aware path matching, symlinks, and manual opening of a temporary checkout. Clippy, formatting, and whitespace checks passed.

PR loading feedback: compact accessible status labels and spinners cover initial listing, refresh, individual diffs, and pagination. Refresh retains the current tabs and diff, Load more shows its own busy state, and errors/cancellation clear the indicators. Native GitHub UI tests, Clippy, formatting, and the local build passed. Large-list rendering and pagination behavior are unchanged.

@Jonovono
Jonovono merged commit 1d69494 into master Oct 17, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant