What's new in EduSupervise
Recent product changes, in plain English. Plumbing and test commits stay in the engineering log at the bottom.
October 2026
- Office notices: post an announcement, see who has read it, and nudge anyone who has not acknowledged it.
- Events and rooms: staff meetings and PD days show on Today and in your calendar feed, and the gym, library or a laptop cart can be booked without double-booking.
- Leave requests: ask for time away, get an answer, and see your balance. Approved leave puts your duties out for cover.
- Field trips: plan who is going and what needs doing; their duties go out for cover automatically.
- Cover is easier to arrange: the office can assign cover from a list of people who are free, you can ask a named colleague to take a duty, and substitutes get a private link for their day.
- Reports now include absences, and there is an optional weekly duty limit.
September 2026
- Duty reminders use your school timezone, so they fire on the right local morning.
- Teachers whose schedule is not published yet get a clear “not ready” state instead of a blank week.
August 2026
- You can delete your own account at /account/delete, with a 30-day grace period.
- School admins get a readiness check before a schedule is treated as live.
- Duplicate duty reminders are suppressed.
Engineering log
Raw commit history, with conventional-commit prefixes stripped. Newest first.
2026-10-11
One close button in the phone menu; drop an unused import (#102)
2bfb4f7
2026-10-05
Group the sidebar and phone menu under headings (#101)
463d75a
2026-10-04
Teacher acknowledges an announcement; teacher room request needs approval (#99)
0cdf14b
Run the Docker runtime check on PRs only when packaging changes; cache Gradle (#98)
7192c5b
Skip re-running Build/e2e on main pushes and skip docs-only PR work (#95)
6fadede
2026-10-02
Security: scripts need a per-page nonce (no unsafe-inline for scripts) (#94)
e4231ad
Clear every known audit finding (#93)
4238810
Make the demo and browser tests trustworthy, and run the browser tests in CI (#92)
8d5b2ab
2026-10-01
Allow the Coolify development URL to be configured (#91)
be20b20
Prepare checked-image releases and Coolify adoption for EduSupervise (#70)
9dab1ab
Phone-width browser checks for the platform modules, and the bugs they found (#90)
da60abb
Mark the school-platform modules as merged (#89)
453a764
Absence report and one-day coverage view (#73), plus roadmap status (#88)
78a814f
Private day links for substitutes (#79) (#87)
2ebf29a
Field trips with attending staff, cover and a checklist (#78) (#86)
5e68856
Leave requests, approvals and balances (#77) (#85)
eec6180
Weekly duty limit, over-limit report, named hand-overs (#76) (#84)
71525ea
Staff events and room/equipment booking (#74) (#83)
e060a6d
Office notices with read and acknowledge tracking (#75) (#82)
a25c578
Admins can assign cover to an open duty by hand (#81)
3ffd45f
2026-09-30
School platform roadmap (absences, events, announcements, fairness, leave, trips) (#80)
a270ab3
Patch vulnerable transitive deps, add owner TODO, park SSH auto-deploy (#69)
4f35b64
Deploy: print the deploy key as one base64 line and validate it in the workflow (#68)
c890872
Deploy: one-command server setup for auto-deploy; make skipped deploys visible (#67)
f2902ba
Reconcile the finish-the-app plan with what shipped (#66)
50c021e
2026-09-29
Real app icon: a duty clipboard with a check (#65)
74048d8
Browser tests for school workflows; admin setup card; role-boundary tests; CSV, calendar and demo banner fixes (#62)
9459d71
2026-09-26
Merge pull request #64 from camster91/fix/ios-pbxproj-parse
765ffba
2026-09-25
Repair project.pbxproj broken by aps-environment edit
afe90ac
Merge pull request #63 from camster91/feat/gap-remedy-ux
5796814
Type the CSRF mock and tx param in admin tests
629abf6
Close public, nav, and admin-setup gaps
c182c5a
Merge pull request #61 from camster91/fix/update-sh-strip-single-quotes
f57e3df
Strip single-quoted secrets in update.sh
88a0ae2
Calendar weeks, recorded duty completion, fair assignee suggestions (#60)
a4c8dae
Free beta, working coverage & reminders, admin tools, phone apps, auto-deploy (#59)
94eed35
Merge pull request #48 from camster91/codex/redact-malformed-apns-key-example
d0b15f3
Call the db:migrate script in step 6
313d723
Bind cached parse jobs to the uploader's school
c55300c
Build fresh databases from migrations only
f8ef281
Mirror same-school user keys into the bootstrap schema
0dedb47
2026-09-24
Merge pull request #58 from camster91/claude/peaceful-lovelace-7x9rwj
144f01a
Merge pull request #56 from camster91/claude/peaceful-lovelace-7x9rwj
ec7d95d
Enforce same-school user links with composite foreign keys
4bf3d1a
Merge pull request #55 from camster91/claude/peaceful-lovelace-7x9rwj
65636d1
Reject user ids from another school in admin mutations
aaa8005
Detect and clean up synthetic QA data
84ef0c7
Restore onboarding recovery journeys and cover review save
2e9b55d
Restore accessible schedule review and add recovery
8db1847
Merge pull request #54 from camster91/claude/peaceful-lovelace-7x9rwj
36d7ae5