spotube/.github/workflows
Kingkor Roy Tirtho 45a7758eb0 feat(jam): harden the room server, add device bans and friendly names
Security:
- Participants connect with a per-room key derived from a random per-install
  secret; others only see an id derived from it, so nobody can reconnect as
  someone else (including the host).
- "create" only works on a fresh code or for the room's own host, so empty
  rooms can't be taken over.
- Per-socket message and queue budgets disconnect clients that flood; the
  host throttles itself well under them.
- Bans also cover the device: a hashed digest of device traits combined with
  the network, stored only as an opaque per-room value. Earlier members are
  never caught by someone else's ban.
- Peer queue items and suggestions are sanitized (streaming tracks only, no
  URLs, https covers); suggestions are credited to the server-attested sender;
  local file paths go out as opaque ids. Names are cleaned server-side.
- Room codes and keys use a secure random source; the deploy workflow is
  read-only.

Names:
- Participants get a stable generated name ("Mellow Otter") per install, and
  can pick their own on the Jam screen or in Jam settings. The participant
  list marks "(you)".

Also translate the Jam strings into all locales and add tests for the above.
2026-10-31 18:14:45 +06:00
..
jam-server-deploy.yml feat(jam): harden the room server, add device bans and friendly names 2026-10-31 18:14:45 +06:00
maven-publish.yml chore: update GitHub Actions to use latest versions of checkout, setup-java, setup-gradle, and upload-artifact 2026-10-17 19:21:42 +06:00
spotube-publish-binary.yml feat(packaging): Flathub, AUR, WinGet and Chocolatey publishing 2026-10-23 10:08:29 +06:00
spotube-release-binary.yml cd(build): add support for building WebView native libraries on Linux and Windows 2026-10-29 16:03:55 +06:00