[SPA][P8] #180 Next-round + final leaderboard flow i Angular SPA #185

Merged
integrator-bot merged 2 commits from dev/issue-180-spa-next-round-final-leaderboard-v2 into main 2026-03-01 16:26:27 +01:00
Owner

Summary

  • add host SPA actions for next-round (/rounds/next) and finish-game (/finish) without legacy page hops
  • keep flow local by hydrating session after each host action to avoid host/player state desync
  • render final leaderboard in SPA shells (host payload + player finished-session leaderboard)
  • add retry feedback paths for scoreboard, next-round, and finish/final-leaderboard failures
  • add issue evidence doc with flow-log + test evidence

Acceptance mapping (#180)

  • Host can start next round from scoreboard without page reload: startNextRound() + hydrate
  • Final leaderboard shown in SPA flow: finishGame() + player finished leaderboard rendering
  • Error path with user feedback for next-round/final leaderboard: retry errors/buttons + tests
  • PR evidence included: docs/ISSUE-180-SPA-NEXT-ROUND-FINAL-LEADERBOARD-EVIDENCE.md

Tests

  • cd frontend/angular && npm test
  • cd frontend && npm test
## Summary - add host SPA actions for next-round (`/rounds/next`) and finish-game (`/finish`) without legacy page hops - keep flow local by hydrating session after each host action to avoid host/player state desync - render final leaderboard in SPA shells (host payload + player finished-session leaderboard) - add retry feedback paths for scoreboard, next-round, and finish/final-leaderboard failures - add issue evidence doc with flow-log + test evidence ## Acceptance mapping (#180) - Host can start next round from scoreboard without page reload: ✅ `startNextRound()` + hydrate - Final leaderboard shown in SPA flow: ✅ `finishGame()` + player finished leaderboard rendering - Error path with user feedback for next-round/final leaderboard: ✅ retry errors/buttons + tests - PR evidence included: ✅ `docs/ISSUE-180-SPA-NEXT-ROUND-FINAL-LEADERBOARD-EVIDENCE.md` ## Tests - `cd frontend/angular && npm test` - `cd frontend && npm test`
dev-bot added 2 commits 2026-03-01 16:23:08 +01:00
fix(spa): remove duplicated player shell controller fields
All checks were successful
CI / test-and-quality (push) Successful in 2m6s
CI / test-and-quality (pull_request) Successful in 2m5s
55e646651e
Author
Owner

Scheduler status: dev-lane-1 completed and PR is now queued for review (PR-FIRST step 3).

Artifacts:

  • head SHA: 55e646651e4dd62e313aa3c70dd349c07d4aec1f
  • commit SHA: 55e646651e4dd62e313aa3c70dd349c07d4aec1f
  • scope: issue #180 (SPA next-round + finish/final leaderboard flow)

Next gate: review-runner.

Scheduler status: dev-lane-1 completed and PR is now queued for review (PR-FIRST step 3). Artifacts: - head SHA: `55e646651e4dd62e313aa3c70dd349c07d4aec1f` - commit SHA: `55e646651e4dd62e313aa3c70dd349c07d4aec1f` - scope: issue #180 (SPA next-round + finish/final leaderboard flow) Next gate: review-runner.
reviewer-bot approved these changes 2026-03-01 16:25:03 +01:00
reviewer-bot left a comment
Owner

Review summary (head 55e646651e4dd62e313aa3c70dd349c07d4aec1f):

Validated areas:

  • Regression risk: checked host/player SPA flow changes for next-round and finished leaderboard handling.
  • Tests: ran npm --prefix frontend/angular test -- --run src/app/features/host/host-shell.component.spec.ts src/app/features/player/player-shell.component.spec.ts (2 files, 9 tests, all passing).
  • Security: no credential/session handling regressions introduced; requests stay on existing same-origin API paths.
  • Repo hygiene: focused diff, evidence doc included.

Findings:

  • blocker: none
  • should-fix: none
  • nice-to-have:
    1. Consider disabling Start next round / Finish game buttons when session status does not allow the action, to reduce avoidable 4xx noise and improve UX clarity.
      • Suggested patch direction: gate button [disabled] on session?.session.status (e.g. enable next-round primarily from reveal, finish primarily from terminal reveal/end-state), alongside existing loading guard.

No blocking issues found. Approving.

Review summary (head `55e646651e4dd62e313aa3c70dd349c07d4aec1f`): Validated areas: - Regression risk: checked host/player SPA flow changes for next-round and finished leaderboard handling. - Tests: ran `npm --prefix frontend/angular test -- --run src/app/features/host/host-shell.component.spec.ts src/app/features/player/player-shell.component.spec.ts` (2 files, 9 tests, all passing). - Security: no credential/session handling regressions introduced; requests stay on existing same-origin API paths. - Repo hygiene: focused diff, evidence doc included. Findings: - blocker: none - should-fix: none - nice-to-have: 1) Consider disabling `Start next round` / `Finish game` buttons when session status does not allow the action, to reduce avoidable 4xx noise and improve UX clarity. - Suggested patch direction: gate button `[disabled]` on `session?.session.status` (e.g. enable next-round primarily from `reveal`, finish primarily from terminal reveal/end-state), alongside existing `loading` guard. No blocking issues found. Approving.
Author
Owner

Scheduler handoff: PR er review-godkendt og sendes nu til integrator for merge-gate (ingen merge udført af scheduler).

Scheduler handoff: PR er review-godkendt og sendes nu til integrator for merge-gate (ingen merge udført af scheduler).
integrator-bot merged commit 7cc1e4c17f into main 2026-03-01 16:26:27 +01:00
integrator-bot deleted branch dev/issue-180-spa-next-round-final-leaderboard-v2 2026-03-01 16:26:27 +01:00
Sign in to join this conversation.