Specify game points #9

Merged
BothimTV merged 3 commits from specify-game-points into main 2026-02-04 16:08:28 +00:00
BothimTV commented 2026-02-04 16:06:11 +00:00 (Migrated from github.com)

Summary by CodeRabbit

  • New Features

    • Multiplier buttons now enable/disable dynamically per selected game.
    • Games support configurable multiplier factors and update point calculations.
    • Point display updated to show total and added points for a single selected student.
  • Tests / Chores

    • Test-mode student fixture now includes a mail count field.
    • CI workflow renamed for clarity.
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Multiplier buttons now enable/disable dynamically per selected game. * Games support configurable multiplier factors and update point calculations. * Point display updated to show total and added points for a single selected student. * **Tests / Chores** * Test-mode student fixture now includes a mail count field. * CI workflow renamed for clarity. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
coderabbitai[bot] commented 2026-02-04 16:06:29 +00:00 (Migrated from github.com)
📝 Walkthrough

Walkthrough

Backend: in test mode the injected dummy student now includes a mailcount: 0 field. Frontend: the game page replaces static multiplier buttons with per-game factor-driven dynamic buttons, expands the games data model, and updates point calculation/display. CI workflow name changed.

Changes

Cohort / File(s) Summary
Backend Test Data
backend/src/routes/mail/POST.ts
When injecting the test student (TEST-DUMMY-001) add mailcount: 0 to the test student object; no other control flow changed.
Frontend Game Multiplier Refactor
frontend/src/pages/spiel.vue
Replace static multiplier buttons with dynamic disabled states based on per-game factors; expand games model to include title, defaultPoints, and factors mapping; update point calculation/display for single-student selection; minor import reorder.
CI Workflow Rename
.github/workflows/build.yml
Rename workflow from "Deploy to Server" to "Build containers" without altering triggers or steps.
Manifest
package.json
Included in manifest listing for this diff (no code edits inferred).

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Poem

🐰 I hopped into code both bright and neat,
Buttons now dance with factors on their feet,
A test student counts zero mail with cheer,
Builds renamed, the rabbits clap — hip-hip, hooray! 🎉


Note

🎁 Summarized by CodeRabbit Free

Your organization is on the Free plan. CodeRabbit will generate a high-level summary and a walkthrough for each pull request. For a comprehensive line-by-line review, please upgrade your subscription to CodeRabbit Pro by visiting https://app.coderabbit.ai/login.

Comment @coderabbitai help to get the list of available commands and usage tips.

<!-- This is an auto-generated comment: summarize by coderabbit.ai --> <!-- walkthrough_start --> <details> <summary>📝 Walkthrough</summary> ## Walkthrough Backend: in test mode the injected dummy student now includes a `mailcount: 0` field. Frontend: the game page replaces static multiplier buttons with per-game factor-driven dynamic buttons, expands the games data model, and updates point calculation/display. CI workflow name changed. ## Changes |Cohort / File(s)|Summary| |---|---| |**Backend Test Data** <br> `backend/src/routes/mail/POST.ts`|When injecting the test student (`TEST-DUMMY-001`) add `mailcount: 0` to the test student object; no other control flow changed.| |**Frontend Game Multiplier Refactor** <br> `frontend/src/pages/spiel.vue`|Replace static multiplier buttons with dynamic disabled states based on per-game `factors`; expand `games` model to include `title`, `defaultPoints`, and `factors` mapping; update point calculation/display for single-student selection; minor import reorder.| |**CI Workflow Rename** <br> `.github/workflows/build.yml`|Rename workflow from "Deploy to Server" to "Build containers" without altering triggers or steps.| |**Manifest** <br> `package.json`|Included in manifest listing for this diff (no code edits inferred).| ## Estimated code review effort 🎯 3 (Moderate) | ⏱️ ~20 minutes ## Poem > 🐰 I hopped into code both bright and neat, > Buttons now dance with factors on their feet, > A test student counts zero mail with cheer, > Builds renamed, the rabbits clap — hip-hip, hooray! 🎉 </details> <!-- walkthrough_end --> <!-- tips_start --> --- > [!NOTE] > <details> > <summary>🎁 Summarized by CodeRabbit Free</summary> > > Your organization is on the Free plan. CodeRabbit will generate a high-level summary and a walkthrough for each pull request. For a comprehensive line-by-line review, please upgrade your subscription to CodeRabbit Pro by visiting <https://app.coderabbit.ai/login>. > > </details> <sub>Comment `@coderabbitai help` to get the list of available commands and usage tips.</sub> <!-- tips_end --> <!-- internal state start --> <!-- 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 --> <!-- internal state end -->
Commenting is not possible because the repository is archived.
No description provided.