Skip to content

fix: report nonexistent canteen weeks as a GraphQL error - #258

Draft
TwoDCube wants to merge 1 commit into
test/integrationfrom
fix/canteen-invalid-week
Draft

TwoDCube wants to merge 1 commit into
test/integrationfrom
fix/canteen-invalid-week

Conversation

@TwoDCube

Copy link
Copy Markdown
Member

Fixes a bug recorded by the tests in #247. Stacked on #247 (base test/integration), so this is a draft until #246 and #247 merge.

Bug

canteen(year, week) called .unwrap() on the ISO week bounds. Any week that does not exist in the requested year panicked, and the panic middleware answered with HTTP 500. That includes 0, negative numbers, 54, and 53 in a year with 52 ISO weeks.

Fix

Return the GraphQL error invalid week instead. The events resolver already reports invalid months as invalid date the same way.

Tests

  • nonexistent_canteen_week_is_a_graphql_error is no longer ignored. It now checks weeks 0, -1 and 54 of 2026, plus week 53 of 2025 (a 52-week year; 2026 has 53), and expects HTTP 200 with exactly the invalid week error.
  • No snapshots change.
  • cargo clippy --workspace --all-targets -D warnings is clean. CI=true cargo test --workspace passes against MySQL 8.4 and Redis 6.2.

🤖 Generated with Claude Code

The canteen resolver unwrapped the ISO week bounds, so a week that does not
exist in the requested year (0, negative, 54, or 53 in a 52-week year)
panicked and the request failed with HTTP 500. Return an "invalid week"
error instead.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@verseghy-prow

verseghy-prow Bot commented Sep 14, 2026

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: TwoDCube

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@verseghy-prow verseghy-prow Bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Sep 14, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. do-not-merge/work-in-progress

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant