last read 14 Aug 2026, 16:31 UTC · took 24.7s · 22 dates across 1 school years
Nobody types these dates in. A program finds whatever the school publishes its term dates on and reads it. This page is the working out: the files we downloaded, the sentences we found in them, and which sentence produced which date. If a date below is wrong, the sentence that caused it is here too.
Find the page
saved for next time
We start at the school's website and follow it to whatever it publishes term dates on, in this case a file on stjohns.excalibur.org.uk. That address is saved, so every later check goes straight there.
Download it
sha-256
3 files came back. We fingerprint the contents (4c0da1406a…6a1aa6e8c2). If the fingerprint matches last time's, the school hasn't changed anything and we stop here.
Read it
24.7s
A language model pulled out 40 sentences that state a date. It quotes; it never paraphrases, so we can always show you what it saw. 2 other files were read and produced nothing useful.
Work out the dates
plain code
Ordinary code takes it from here, pairing those sentences into terms and filling in the holidays between them. It also checks the year adds up: if the dates leave too few school days, we throw the whole read away rather than publish it.
Save it
one copy
The dates get written down once. The school's page, your calendar feed and this trace all read that same copy, so they can't disagree with each other.
tap, hover or tab anything to see what it’s joined to
2026/2739 sentences → 22 dates
What the school wrote
What went in your calendar
Terms come straight from two sentences: one saying the school opens, one saying it closes. The holidays between them are marked derived because no sentence states them. We take the day after one term ends to the day before the next begins. Anything marked from Wiltshire council is a year the school has not published yet, filled in from the council until it does.
What we saved
the single copy the school page and your calendar both read
This run
fingerprint
eb51375159…1dda83d16d
saved at
25 Aug 2026, 20:43 UTC
run signature
3c7c47bf23…19f614fb7e
dates published
36
last confirmed
14 August 2026
Why your calendar doesn't fill up with duplicates
Each event gets an ID built from who said it, what kind of day it is, and when it starts. Read the school again tomorrow and the same day comes out with the same ID, so your calendar updates the entry it already has rather than adding a second one.
# same inputs, same ID, every time
sha256(owner | kind | start)[:24]
→ a4384bdd…f1763a2c@termsync.co.uk