Skip to content

Semesters

The semester calendar is fixed:

Term Window
Fall September 1 – December 31
Spring January 1 – May 31
Summer gap June 1 – August 31 (no active semester)

The bot derives the current semester automatically from today's date. You don't pick — you just set the dollar amount.

Semester IDs are deterministic strings (spring-2026, fall-2025) used everywhere internally.

/set_semester

Set the flat dues amount for the current semester.

Usage: /set_semester <amount>

Argument Required Description
amount yes Dollar amount each non-resident brother owes

Example:

/set_semester 400

Sets Spring 2026 (or whichever semester you're in) to $400 per non-resident.

Notes:

  • Idempotent — re-running updates the amount. Existing payments and deductions stay attached.
  • If you run this during the summer gap, it errors. Wait for September 1.
  • Brothers assigned to a room don't pay this — their dues = room_price × share_fraction. See How dues are calculated.

/current_semester

Show the current semester window and configured dues amount.

Usage: /current_semester

Output: ephemeral. Shows the window dates, the per-brother flat amount, and whether the semester record has been closed.


/end_semester

Archive the current semester. After this, it's treated as historical — new payments belong to the next semester (after you /set_semester for the new one).

Usage: /end_semester

Notes:

  • Doesn't delete data. Past payments / deductions / receipts stay queryable via /audit @brother.
  • Run this at the end of the term, before recording any payments for the next term.
  • Idempotent — already-closed semesters return a polite "already closed".