feat(account): several Steam accounts on the account screen #57

Merged
whitlocktech merged 1 commits from feat/steam-signin into edge 2026-10-20 10:25:30 -05:00
Member

What & why

The app's half of Sign in with Steam (docs/website/STEAM_SIGNIN.md), alongside website#218.

  • Sign-in needs no change. The sign-in sheet lists providers from /auth/providers by name, so Steam appears there as soon as a site enables it. It goes through the existing M9 bridge; core tests a Steam sign-in on that bridge (website#218, steamSignin.test.js).
  • Unlink by id. A person may link several Steam accounts. The app unlinked by provider, which would have removed every Steam account at once. It now sends DELETE …/identities/:provider?id=.
  • Steam rows read Steam: <persona name>, with the SteamID64 underneath (Steam sends no email). LinkedIdentityDto gains the optional id, subject and display_name, which an older core simply omits.

How it was tested

./gradlew testDebugUnitTest assembleDebug: BUILD SUCCESSFUL, 750 tests, 0 failures. Not yet walked on a device: the live Steam walk on the web and in the app needs a real Steam account (org lead), and joins the end walk's in-game rows. CI runs only on PRs into main, so this branch gets its first CI run at the cutover.

Checklist

  • I have read CONTRIBUTING.md.
  • The change builds and existing tests/checks pass locally.
  • I have added or updated tests/docs where it makes sense.
  • My commits are reasonably scoped with clear messages.

AI-assisted contributions (required)

  • No AI tools were used to produce this contribution.
  • AI tools were used. Tool(s): Claude Code (Claude Opus 5.5). I have reviewed and understand
    every change, and take responsibility for it. AI-authored commits are
    marked with a Co-Authored-By / Assisted-By trailer.

License

  • I agree that my contribution is licensed under this project's license
    (GNU GPL v3.0 or later), and I have the right to contribute it.

🤖 Generated with Claude Code

https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY

## What & why The app's half of Sign in with Steam (`docs/website/STEAM_SIGNIN.md`), alongside website#218. - **Sign-in needs no change.** The sign-in sheet lists providers from `/auth/providers` by name, so Steam appears there as soon as a site enables it. It goes through the existing M9 bridge; core tests a Steam sign-in on that bridge (website#218, `steamSignin.test.js`). - **Unlink by id.** A person may link several Steam accounts. The app unlinked by provider, which would have removed every Steam account at once. It now sends `DELETE …/identities/:provider?id=`. - **Steam rows** read *Steam: &lt;persona name&gt;*, with the SteamID64 underneath (Steam sends no email). `LinkedIdentityDto` gains the optional `id`, `subject` and `display_name`, which an older core simply omits. ## How it was tested `./gradlew testDebugUnitTest assembleDebug`: **BUILD SUCCESSFUL, 750 tests, 0 failures**. Not yet walked on a device: the live Steam walk on the web and in the app needs a real Steam account (org lead), and joins the end walk's in-game rows. CI runs only on PRs into `main`, so this branch gets its first CI run at the cutover. ## Checklist - [x] I have read [CONTRIBUTING.md](CONTRIBUTING.md). - [x] The change builds and existing tests/checks pass locally. - [x] I have added or updated tests/docs where it makes sense. - [x] My commits are reasonably scoped with clear messages. ## AI-assisted contributions (required) - [ ] No AI tools were used to produce this contribution. - [x] AI tools were used. Tool(s): `Claude Code (Claude Opus 5.5)`. I have reviewed and understand every change, and take responsibility for it. AI-authored commits are marked with a `Co-Authored-By` / `Assisted-By` trailer. ## License - [x] I agree that my contribution is licensed under this project's license (**GNU GPL v3.0 or later**), and I have the right to contribute it. 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY
wtclaude added 1 commit 2026-10-19 20:34:54 -05:00
feat(account): several Steam accounts on the account screen
All checks were successful
PR Checks / android-build (pull_request) Successful in 13m57s
c905aee94f
Steam sign-in (docs/website/STEAM_SIGNIN.md) lets a person link more than one
Steam account. Unlink went by provider, so it would have removed all of them;
it now sends the identity's id (DELETE …/identities/:provider?id=). A Steam row
reads "Steam: <persona name>" with its SteamID64 beneath, since Steam sends no
email. The sign-in sheet already lists providers from /auth/providers, so Steam
appears there with no change.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY
whitlocktech merged commit 2c8ab390e2 into edge 2026-10-20 10:25:30 -05:00
whitlocktech deleted branch feat/steam-signin 2026-10-20 10:25:31 -05:00
Sign in to join this conversation.
No description provided.