Juniors with exactly 1 session get expected='?' (manual-review marker from attendance.py). The fill-first allocation block summed and cast expected values numerically without guarding against this, causing a TypeError: unsupported operand type(s) for +: 'int' and 'str' on the /juniors route whenever any matched payment landed on such a month. Add _expected_amount() helper that coerces non-numeric markers to 0 (same convention the final-balance calculation at line 512 already used) and apply it in the two failing spots plus the existing isinstance check. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
FUJ Management Documentation
Welcome to the documentation for the FUJ Management application.
This project automates financial and operational management for the FUJ (Frisbee Ultimate Jablonec) club.
Navigation
Use the sidebar to explore the documentation:
- Project Notes: Main brainstorming and domain model.
- Scripts: Details about available CLI tools.
- Fee Specification: Rules for fee calculation.
For more technical details, check out the guides by Claude and Gemini in the sidebar.