188 Commits

Author SHA1 Message Date
331507ee40 fix: migrate with the owner role and a private health file
The app's database role cannot create tables in public, so migrations
failed with "permission denied for schema public". They now also load
/etc/esports/{prod,staging}-migrations.env, whose DATABASE_URL overrides
the app's. The health pre-check wrote a fixed /tmp file that another user
already owned, which silently skipped the live-match check; it uses mktemp.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 22:47:58 +00:00
6ff5fe53c5 fix: deploy with only sudo tee and docker
Some checks failed
Test and deploy staging / staging (push) Failing after 16s
The deploy user has passwordless sudo for tee and docker only, so the
script stopped at its first sudo install. release.env is rewritten with
tee, and the backup container creates the backup directory and sets the
file modes itself. HOST_PORT comes from the target, not release.env.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 22:37:50 +00:00
d5448d9a94 feat!: upgrade to SvelteKit 3 and adapter-bun
Some checks failed
Test and deploy staging / staging (push) Failing after 14s
- run sv migrate sveltekit-3: config moves into vite.config.ts, $lib becomes
  #lib, $env/dynamic becomes $app/env/private via src/env.ts, $app/environment
  becomes $app/env, hook types move to @sveltejs/kit/hooks
- env vars stay optional (the migrator defaulted them to ''), and BANCHO_MODE,
  which it missed, is declared and passed to simulatorEnabled
- handleError only logs and masks unknown errors; Kit 3 now routes 404s and
  error(...) through it too
- json()/text() become Response.json()/new Response(); goto keepFocus/noScroll
  becomes reset: false; invalidateAll becomes refreshAll; page.url is copied
  before mutating
- replace adapter-node with @sveltejs/adapter-bun; prod-server.ts wraps
  Bun.serve to add native WebSockets (bunSockets) for /ws paths, since the
  generated server has no websocket option
- drop the Kit readdir patch: Kit 3 sorts route entries itself
- match view and broadcast pages use the live score modules

BREAKING CHANGE: requires SvelteKit 3, TypeScript 6 and Bun 1.4; the build
output is build/index.js from adapter-bun, started through prod-server.ts.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 22:02:53 +00:00
54444a77f0 feat: add native Windows broadcaster and live score modules
- streamer/windows: vash-broadcast.exe (setup/login/start/stop/status/doctor)
  with per-instance OBS, tosu and FFmpeg, a supervised worker, OCR room
  selection and OBS scene reconciliation; built and tested on Linux only
- streamer/relay.ts shared with Vash TV; Cloudflare Access proxy for dev/staging
- worker status validation and live score helpers for the site
- STREAMING_HANDOFF.md and streamer/ALPHA_TEST.md record what is unverified

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 22:02:25 +00:00
9d5a046b40 fix: resume saved lobbies when host capacity is full 2026-09-29 02:58:48 +00:00
9b9aafefc1 feat: redesign match play and add broadcast tooling 2026-09-29 02:52:56 +00:00
f417a831f7 update git link
Some checks failed
CI / Lint, Check, Build & Test (push) Failing after 40s
2026-09-14 04:04:48 +00:00
ac890b8e55 chore: add nvim.log to gitignore
Some checks failed
CI / Lint, Check, Build & Test (push) Failing after 1m2s
2026-04-02 19:52:14 +02:00
baff05a37b feat: update .env.example with additional configuration options and documentation per env var 2026-04-02 19:51:51 +02:00
3a5c8570ee fix: safely get IP 2026-03-27 19:33:47 +01:00
1ea168807f fix: forward IP address 2026-03-27 19:24:50 +01:00
8d71480e9a feat: add search and data tables 2026-03-27 19:16:53 +01:00
ae4a77f5dd fix: svelte check 2026-03-26 15:50:50 +01:00
25d2d1af4a feat: add tournaments and validation and security 2026-03-26 15:36:22 +01:00
d76e8922cc fix: idor checks on all exposed endpoints 2026-03-26 02:13:01 +01:00
cd050f9974 chore: downgrade typescript for svelte-check compatibility 2026-03-26 01:38:03 +01:00
fec1e7c2f9 chore: update all dependencies 2026-03-26 01:33:57 +01:00
bb6111e64f feat: add EZ and RX as available mods 2026-03-15 23:04:34 +01:00
07f988de58 fix: add github link to sidebar 2026-03-15 18:19:28 +01:00
8880383dda fix: add auth to dozzle 2026-03-15 18:12:41 +01:00
459f2d7da0 fix: add dozzle to gitignore 2026-03-15 17:49:14 +01:00
e8e8217bf5 fix: silence loud paths + add dozzle for logs 2026-03-15 17:29:01 +01:00
d1b736fa3b fix: update sentry collection rate 2026-03-15 16:47:32 +01:00
7d82cf2e9f fix: docker compose umami health check 2026-03-15 16:46:47 +01:00
cb8ffb346d fix(runtime): bundle all deps to avoid bun CJS loader crash 2026-03-14 22:13:37 +01:00
7cafa0ed2f fix(build): stub import-in-the-middle for bun compatibility 2026-03-14 21:36:55 +01:00
dc2707fd59 fix(build): externalize sentry from vite bundle for bun compat 2026-03-14 21:20:21 +01:00
081e65044e fix(build): externalize pino from vite server bundle 2026-03-13 22:52:25 +01:00
9fa365ba9e feat: monitoring + logging with sentry and pino 2026-03-13 22:34:14 +01:00
nick
77b2fd9e92 center
Added badges for CI, Deploy, and Discord to README.
2026-03-13 16:47:47 -04:00
15bcb25df3 docs: replace boilerplate README with project documentation 2026-03-13 21:15:37 +01:00
0de20ab137 fix: move hardcoded DB password to env variable 2026-03-13 20:00:26 +01:00
783550473c fix: skip prepare script in Docker production install 2026-03-13 19:36:51 +01:00
nicksales72
851fd87bdb claude thinks it works 2026-03-13 14:30:06 -04:00
a9b076a5ec chore: add husky git hooks and commitlint 2026-03-13 19:26:17 +01:00
2bc03a037b Use bunx to run drizzle-kit in deploy containers 2026-03-13 19:09:30 +01:00
622418c6b0 Fix drizzle-kit push in deploy by installing it in runtime image 2026-03-13 19:07:11 +01:00
348e1ff832 add drizzle config so container can migrate db 2026-03-13 19:01:18 +01:00
107074942f use bunx drizzle kit push directly 2026-03-13 18:59:08 +01:00
f8eb2b4771 add better auth secret placeholder 2026-03-13 18:46:02 +01:00
e100d6b700 fix formatting and linting error 2026-03-13 18:33:34 +01:00
Stan
97b723510d Merge branch 'staging' into dev 2026-03-13 18:28:54 +01:00
240b9305eb update bun lockfile 2026-03-13 18:23:22 +01:00
4bf64d5de3 add postgres as dev dependency for cicd 2026-03-13 18:22:24 +01:00
3d889d9c91 fix formatting 2026-03-13 18:18:51 +01:00
09b6b8dde4 use migration command directly 2026-03-13 18:17:39 +01:00
ff5c235663 add database for e2e tests in ci 2026-03-13 18:13:00 +01:00
12dc31ee72 make tests passing in cicd 2026-03-13 18:09:10 +01:00
f3edcb6995 remove dynamic import 2026-03-13 17:44:35 +01:00
470b92d0bd move tests to src/ 2026-03-13 17:42:34 +01:00