Skip to content

GitHub: link and "Reconnect for GitHub Issues" scope handoff #76

Description

@Adron

Product behaviour

GitHub can be linked for sign-in only or with the Issues scope. GitHub-backed lists need Issues. The web surfaces a "Reconnect for GitHub Issues" action in Connected Accounts to grant the extra scope.

Endpoints

GET /api/auth/github/authorize · GET /api/auth/github/callback · GET /api/auth/github/status (reports whether the server has GitHub OAuth configured and its public client id) · POST /api/auth/{provider}/link.

Per CLAUDE.md, /api/auth/{provider}/status is a red herring for per-user link state — the real state is GET /api/user/identities, which ConnectedAccountsViewModel already uses. Keep that distinction.

OAuth stays external

No WebView2 in this app: linking opens the OS default browser and the user returns and refreshes — the pattern already used in Views/ConnectedAccountsView.xaml.

Acceptance criteria

  • A "Reconnect for GitHub Issues" action in Connected Accounts, opening the authorize URL in the OS browser.
  • Link state is read from GET /api/user/identities, not from /api/auth/github/status.
  • After returning, a refresh reflects the new scope and unlocks the GitHub-backed list flow.
  • If the scope cannot be detected from /api/user/identities, say so plainly rather than guessing.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions