Skip to content

fix: reconnect anonymizations to recreated source repositories - #852

Merged
tdurieux merged 1 commit into
mainfrom
fix/reconnect-recreated-repository
Sep 30, 2026
Merged

tdurieux merged 1 commit into
mainfrom
fix/reconnect-recreated-repository

Conversation

@tdurieux

Copy link
Copy Markdown
Owner

Deleting and recreating a GitHub repository under the same name leaves existing anonymizations bound to the deleted repository ID. The editor then cannot load branches, even when the replacement repository has read access.

Add an owner-only Reconnect source repository action that loads fresh metadata and branches without changing the published anonymization. Saving validates the previewed repository identity and selected branch/commit, updates the access binding and internal source reference together, and rebuilds the snapshot under the existing anonymous URL. The old commit does not need to exist in the replacement. Ordinary access retains the saved identity check, and a different repository ID at save time is rejected.

Validation: UI build and lint pass; full suite has 719 passing and 49 pending tests. New backend and browser tests cover explicit reconnection, non-owner rejection, missing old commits, denied access, busy repositories, and identity/connection changes during the operation. tsc --noEmit reports the same five diagnostics as unmodified main with the same dependencies, in anonymize-utils.ts, GitHubDownload.ts, and webview.ts.

@tdurieux
tdurieux merged commit 2fb4b8f into main Sep 30, 2026
2 checks passed
@tdurieux
tdurieux deleted the fix/reconnect-recreated-repository branch September 30, 2026 05:02
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