| Which version was in force in March | The file was replaced in August. The March file is gone, or it is on somebody’s desktop with a name ending in final-v3-use-this. The question cannot be answered from the system. | Every version is its own immutable row, keyed uniquely on the handbook and the version number, carrying the instant it was published. The record is kept rather than overwritten. Note the honest limit: that history is stored, but the read surface returns the current version, and a point-in-time lookup is not built yet. |
| Whether a section is blank | A heading with nothing under it publishes exactly as happily as a complete policy, and nobody notices until somebody needs that policy. | The publish gate refuses the whole handbook and lists the incomplete sections by reference. There is no override. |
| Where a policy came from | Somebody pasted it from a model policy years ago and edited it later. Which model, which edition, and what was changed are not recorded anywhere. | The adoption stores the model edition it came from, and a divergence between the school’s text and the model text marks the policy customised. Adopting something not on the shelf is refused rather than given an invented lineage. |
| Adopted or just uploaded | A PDF on a website has no state. There is nothing in the file that distinguishes board-adopted policy from a draft an administrator posted on a Tuesday. | Adoption is a lifecycle state with a closed transition table, a motion, a quorum check, and a named roll call. The public lane returns adopted records only. |
| Who acknowledged which version | A signature page, printed, returned by some families, filed in a drawer, and counted by hand. Reissue the handbook and the count silently means nothing. | The acknowledgement is bound to a version number and is fail-closed against the current one. Publishing a new version makes every prior acknowledgement stale by construction, and the outstanding list rebuilds itself. |
| Whether the record can be edited | It is a file on a server. Anyone with access can replace it, and nothing in the artefact would show that it happened. | The acknowledgement record lands in an append-only ledger whose triggers raise on UPDATE and on DELETE for every role, behind forced row-level security. A permission cannot be granted around a trigger. |
| Four handbooks, four audiences | Four PDFs, four link locations, four effective dates nobody tracks, and one of them is a year out of date. Usually the volunteer one. | Each handbook is its own versioned document with its own sections, its own publish state, and its own acknowledgement roster. The audience-scoping policy that decides who receives which one is written and tested but has no caller yet, and this page says so on its card. |
| Translation | One language, or a translated PDF from three versions ago that a family cannot tell is out of date. | A language is offered only when every required section is translated, and the missing sections are listed. Also unwired today, and marked as such. No machine translation and no model. |
| What it costs | Nothing, which is exactly why it is the incumbent, and why a comparison that ignores it is dishonest. | The core is free to the school as well. Not free-for-a-year: no per-seat licence and no per-student fee, and there is no checkout on this page. |