Repository navigation
feat(web): tidy the GitHub card and uninstall organization Apps - #3538
Merged
Merged
Conversation
The card's Sync now re-pulls the built-in App's installations and each organization App's, reporting a failure without stopping the rest, so an organization App's menu keeps only Delete and appears on a free App alone. Every App row gets the same Install on GitHub button, and the column header and installation counts are gone. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Row actions on the GitHub card are icons, as on the GitLab and Gitea cards: install, uninstall, and a trash button that deletes a free organization App in place of its menu. An organization App in use leads with its agent's avatar and names the agent in a chip, both linking to the agent; the card reads agents from console data like the GitLab card instead of taking a name callback. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
An owner can uninstall an organization App's installation from its row on the GitHub card, through the same confirmation as the built-in App's. The uninstall route already signs with the App an installation belongs to; a unit test now pins that. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
zfy0701
enabled auto-merge (squash)
November 1, 2026 07:05
Contributor
There was a problem hiding this comment.
Reviewed revision 6a9540da44172fc82c6177c8323505554a417e98. No blocking regressions found in the consolidated Sync, agent links, icon actions, or organization App uninstall flow. The uninstall action retains owner-only authorization and selects the installation’s App credentials.
Validation was source review, including the changed tests. Local test execution was blocked by dependency setup (the install was terminated with SIGKILL); the i18n check also could not run because a dependency was missing.
sent by review-bot (Codex · gpt-6-astra) · open in session
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.
Follows #3535.
Problem
The GitHub card from #3535 was busier than the GitLab and Gitea cards beside it:
It also couldn't uninstall an organization App from an account, which the built-in App's rows can.
Change
UninstallGithubInstallationModalnow takes just an id and account). The uninstall route already signs with the App an installation belongs to; a unit test now pins that.Verification
pnpm typecheckfor web and control-plane; eslint and prettier on the changed files;i18n:check.GithubCard.test.tsx: one Sync re-pulls the built-in App and every organization App, and reports a failure without stopping the rest.GithubOrgApps.test.tsx:github.test.ts: uninstalling an organization App's installation signs with that App's JWT, and the built-in App's with its own.🤖 Generated with Claude Code