Skip to content

refactor(architecture): deepen application boundaries#95

Merged
cameroncuster merged 2 commits into
mainfrom
cameroncuster/deepen-application-architecture
Jul 24, 2026
Merged

refactor(architecture): deepen application boundaries#95
cameroncuster merged 2 commits into
mainfrom
cameroncuster/deepen-application-architecture

Conversation

@cameroncuster

Copy link
Copy Markdown
Owner

Summary

  • centralize browser actor/session/admin state and server authorization while preserving exact access outcomes
  • move problem, contest, and leaderboard reads into focused query modules composed by route loaders
  • establish one state owner per problem and contest collection; tables are now controlled renderers
  • extract the submission workflow, persistence boundary, and Codeforces/Kattis ingestion adapters while preserving zero-write previews and provider fallbacks
  • centralize problem and contest engagement behind tested controllers and narrow Supabase gateways
  • delete obsolete auth, list, submission, and engagement service facades
  • add domain context plus architecture, unit, and desktop/mobile behavior characterization coverage

Behavior preservation

  • no visual markup, class, token, breakpoint, route, RPC, schema, or dependency changes
  • problem reactions remain optimistic; ordinary RPC failure preserves the local view
  • contest reactions and participation remain server-confirmed
  • problem solved state remains optimistic with failed-write reconciliation
  • submission preview remains read-only; only explicit confirmation writes
  • Codeforces mixed-batch ordering, aliases, and request behavior are preserved
  • Kattis provider failures still produce deterministic valid fallback rows
  • deep-link provider preselection and permission-check failure messaging are explicitly covered

Verification

  • formatting: passed
  • ESLint: passed
  • Svelte type checking: 0 errors / 0 warnings
  • unit tests: 271 passed
  • production build: passed
  • full Playwright suite: 167 passed, 5 intentional live-only skips
  • focused collection browser suite: 30 passed
  • focused submission/auth browser suite: 51 passed, 1 intentional skip
  • focused engagement/data/auth browser suite: 24 passed
  • independent final code review: no actionable regressions
  • final architecture/deletion checks: passed
  • git diff --check: passed

Notes

The change is intentionally larger because the ownership boundaries are integrated, but each area has dedicated unit and browser coverage. There are no database migrations or production data changes in this PR.


Pull Request opened by Augment Code.

@vercel

vercel Bot commented Jul 24, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
gitgud Ready Ready Preview, Comment Jul 24, 2026 3:00am

@cameroncuster
cameroncuster marked this pull request as ready for review July 24, 2026 02:57
@cameroncuster
cameroncuster merged commit d5055bd into main Jul 24, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant