2026-04-03 - 2026-10-03

Overview

172 Active Pull Requests
3 Active Issues
Excluding merges, 2 authors have pushed 121 commits to main and 529 commits to all branches. On main, 104 files have changed and there have been 13044 additions and 4234 deletions.

172 Pull requests merged by 1 user

Merged #179 fix(school): send the school page its admissions policy, and read it exactly 2026-10-02 22:56:36 +00:00

Merged #178 fix(search): stop replaying a failed LA-averages request forever 2026-10-02 22:44:57 +00:00

Merged #177 feat(school): facts and flags in the school header, shared with search rows 2026-10-02 22:32:47 +00:00

Merged #176 fix(search): tag only what the register records, and count the whole school 2026-10-02 22:05:56 +00:00

Merged #175 fix(school): show Nursery only for nursery classes, and say Girls' school 2026-10-02 22:04:29 +00:00

Merged #174 feat(search): phases in the order a child meets them 2026-10-02 18:07:08 +00:00

Merged #173 fix(search): desktop Clear all keeps the search 2026-10-02 15:50:22 +00:00

Merged #172 fix(modal): give the close button a 44px touch target 2026-10-02 15:50:15 +00:00

Merged #171 feat(search): one state school group, not academy and council-run 2026-10-02 15:33:14 +00:00

Merged #170 feat(search): school type groups and a faith filter 2026-10-02 14:05:43 +00:00

Merged #169 fix(search): offer every filter option, not only those in the results 2026-10-02 09:34:02 +00:00

Merged #168 feat(search): filter on phones through one sheet 2026-10-02 08:51:17 +00:00

Merged #167 test(e2e): scroll a long list, and wait out the popup crossfade 2026-10-01 21:22:34 +00:00

Merged #166 fix(map): draw the map card's View button like the list's 2026-10-01 20:17:28 +00:00

Merged #165 fix(search): default to half a mile, and offer a quarter mile 2026-10-01 17:49:12 +00:00

Merged #164 fix(search): set the toolbar's line count by width, not by results 2026-10-01 15:06:31 +00:00

Merged #163 fix(api): filter by every GIAS phase, not just the grouped ones 2026-10-01 14:07:57 +00:00

Merged #162 fix(search): offer every phase while a phase filter is applied 2026-10-01 11:03:20 +00:00

Merged #161 fix(search): keep the map list's count and sort on one line 2026-10-01 09:25:17 +00:00

Merged #160 feat(search): show the list view's rows beside the map 2026-10-01 09:04:31 +00:00

Merged #159 fix(search): keep the phone results toolbar inside the screen 2026-09-30 22:21:17 +00:00

Merged #158 feat(search): align the map view with the mockup and open postcode searches on it 2026-09-30 20:58:40 +00:00

Merged #157 feat(search): pin the results toolbar and float the map button on phones 2026-09-30 19:53:28 +00:00

Merged #156 feat(compare): five per phase, not five overall 2026-09-30 11:23:08 +00:00

Merged #155 copy(web): replace em dashes in public copy 2026-09-24 21:11:15 +00:00

Merged #154 fix(web): lift the mobile jump sheet above the bottom tab bar 2026-09-22 19:55:00 +00:00

Merged #153 test(e2e): wait for the carousel's smooth scroll to settle before measuring it 2026-09-22 14:55:16 +00:00

Merged #152 test(e2e): fix the nearby-schools journey clicking a card it scrolled past 2026-09-22 13:50:26 +00:00

Merged #151 fix: order nearby schools by distance, not by how alike they are 2026-09-22 13:09:38 +00:00

Merged #150 feat: similar schools nearby on the detail page 2026-09-22 05:53:07 +00:00

Merged #149 fix(ci): make a failed release check say what it actually saw 2026-09-15 15:09:47 +00:00

Merged #148 feat: verify what we actually deployed, and publish data all-or-nothing 2026-09-15 11:13:08 +00:00

Merged #147 docs: describe the system that exists, and remove the importer's remains 2026-09-15 08:58:54 +00:00

Merged #146 fix(seo): declare the share card, which the route group stopped inheriting 2026-09-14 21:03:14 +00:00

Merged #145 feat(seo): link school pages into the location layer 2026-09-14 20:29:48 +00:00

Merged #144 feat(flags): put /about and /blog behind flags, dark by default 2026-09-08 16:47:18 +00:00

Merged #143 fix(cms): regenerate the import map so the Content field renders 2026-09-02 20:12:18 +00:00

Merged #141 fix(cms): ship the initial Payload migration (recovers two commits stranded after #140 merged) 2026-09-02 17:52:17 +00:00

Merged #140 feat: a named author, an About page and a Payload blog 2026-09-02 16:04:59 +00:00

Merged #139 fix(destinations): the DAG died on a null in a primary key 2026-08-31 20:43:27 +00:00

Merged #138 fix(airflow): a fixed admin password from the environment, and a tap that missed #137 2026-08-31 19:50:00 +00:00

Merged #137 feat(destinations): say what happened to a school's leavers, without republishing what DfE withheld 2026-08-30 20:49:15 +00:00

Merged #136 fix(map): the popup never took the dark theme 2026-08-27 21:57:53 +00:00

Merged #135 fix(admissions): flag-off pages must not speak for the council 2026-08-27 20:30:25 +00:00

Merged #134 fix(analytics): the funnel source read a referrer that never changes 2026-08-27 08:26:46 +00:00

Merged #133 feat(places): say what each school is, not only how it scored 2026-08-27 07:59:11 +00:00

Merged #132 feat(analytics): measure the location layer, and stop calling it direct 2026-08-27 07:29:48 +00:00

Merged #131 fix(suggest): the dropdown reopened on top of the search results 2026-08-26 21:07:55 +00:00

Merged #130 fix(search): the mobile hero search was indented by a card's padding 2026-08-26 20:51:21 +00:00

Merged #129 fix(map): the hero map's fade to the header was hardcoded white 2026-08-26 20:32:45 +00:00

Merged #128 fix(suggest): let the dropdown out of the hero panel 2026-08-26 20:23:33 +00:00

Merged #127 feat(suggest): school autosuggest, and the rate-limit fix it needed first 2026-08-26 19:58:58 +00:00

Merged #126 docs(flags): Unleash does not create flags by itself 2026-08-26 19:48:58 +00:00

Merged #125 feat(flags): ship-dark feature flags, with last-distance-offered behind the first one 2026-08-23 11:34:56 +00:00

Merged #124 fix(places): phase links must stay in their own namespace 2026-08-22 17:33:13 +00:00

Merged #123 feat(places): list schools alphabetically on place pages 2026-08-21 23:22:49 +00:00

Merged #122 fix(e2e): three assertions that were wrong about correct behaviour 2026-08-21 23:07:58 +00:00

Merged #121 feat(places): name every authority a place sits in 2026-08-21 21:56:51 +00:00

Merged #120 fix(places): align the measure column's heading with its values 2026-08-21 21:21:04 +00:00

Merged #119 fix(places): phase-grouped tables, plain-English measures, styled links 2026-08-21 20:57:14 +00:00

Merged #118 fix(places): phase-grouped tables, plain-English measures, styled links 2026-08-21 20:53:21 +00:00

Merged #117 fix(places): stop the place titles doubling the brand 2026-08-21 20:53:14 +00:00

Merged #116 fix(places): submit and link the phase variants 2026-08-21 19:46:55 +00:00

Merged #115 fix(places): a locality collision must not break the sitemap 2026-08-21 19:26:02 +00:00

Merged #114 feat(seo): the location layer — town, locality, authority and outcode pages (W2) 2026-08-21 17:56:06 +00:00

Merged #113 feat(seo): rewrite the C1 snippets to earn the click (W8) 2026-08-20 23:26:12 +00:00

Merged #112 fix(seo): a school is publishable on any year's results, not the latest 2026-08-20 23:15:19 +00:00

Merged #111 fix(seo): keep staging out of the search index 2026-08-20 22:39:38 +00:00

Merged #110 fix(seo): crawl hygiene and a per-family sitemap index (W1) 2026-08-20 22:23:10 +00:00

Merged #108 fix(seo): crawl hygiene and a per-family sitemap index (W1) 2026-08-20 22:12:05 +00:00

Merged #109 fix(data): drop the Welsh school GIAS does not type as Welsh 2026-08-20 21:59:39 +00:00

Merged #107 feat(data): publish England only, dropping Welsh and overseas establishments 2026-08-20 21:20:13 +00:00

Merged #106 fix(e2e): scope the Distance-tab assertion, and separate the tile figures 2026-08-20 21:18:28 +00:00

Merged #105 fix(admissions): state distance in miles throughout, never mixed 2026-08-20 19:39:19 +00:00

Merged #104 feat(admissions): publish the latest cut-off only, holding history back 2026-08-20 17:51:18 +00:00

Merged #103 fix(admissions): move the cut-off detail into its own section 2026-08-20 14:03:02 +00:00

Merged #102 feat(admissions): add the cut-off history, map and postcode check 2026-08-17 07:51:14 +00:00

Merged #101 feat(admissions): show the last distance offered where councils publish it 2026-08-16 12:21:24 +00:00

Merged #100 chore: drop the hero byline, and refresh a figure in the UX audit notes 2026-08-15 09:26:00 +00:00

Merged #99 fix(charts): make the national-average marker visible on both templates 2026-08-15 08:56:41 +00:00

Merged #98 feat(home): swap in the higher-fidelity hero artwork 2026-08-15 08:56:33 +00:00

Merged #97 feat(home): add a first-person byline under the hero search 2026-08-15 08:00:47 +00:00

Merged #96 fix(home): stop implying we are official, and fix the mobile hero and search 2026-08-14 22:28:33 +00:00

Merged #95 fix(e2e): assert the brand lockup and touch icon as they are actually built 2026-08-14 22:28:10 +00:00

Merged #94 fix(home): art-direct the hero's fallback path, and declare sharp 2026-08-14 21:28:14 +00:00

Merged #93 feat(home): use the supplied hero artwork instead of a drawn one 2026-08-14 20:41:46 +00:00

Merged #92 fix(home): correct what the landing page claims, and give it one rhythm 2026-08-14 18:18:53 +00:00

Merged #91 fix(home): correct what the landing page claims, and give it one rhythm 2026-08-14 16:16:25 +00:00

Merged #90 feat(brand): use the supplied logo artwork instead of a reconstruction 2026-08-08 21:41:47 +00:00

Merged #89 feat(brand): adopt the schoolcompare identity across the site 2026-08-07 17:58:56 +00:00

Merged #88 fix(design): correct the font assertion (serif$ matched sans-serif) and make the Leaflet overrides win 2026-08-06 14:47:06 +00:00

Merged #87 fix(design): resolve the font tokens — staging was rendering entirely in Times 2026-08-06 12:52:35 +00:00

Merged #86 feat(design): adopt the Cohort identity — palette, type, mark and dark theme 2026-08-06 11:36:02 +00:00

Merged #85 fix(detail): restore the shell's mobile header/nav CSS 2026-08-06 09:33:34 +00:00

Merged #84 perf(detail): render school detail sections on the server 2026-08-02 21:03:33 +00:00

Merged #83 feat(detail): move religious character into header details + mobile reveal 2026-07-24 12:15:14 +00:00

Merged #82 feat(detail): surface GIAS identity/contact details, drop unwired sections 2026-07-24 10:56:34 +00:00

Merged #81 feat(ui): viewport-aware InfoPopover replaces broken metric tooltips 2026-07-22 14:48:13 +00:00

Merged #80 fix(compare): a no-results school no longer blanks the trend chart 2026-07-22 14:23:25 +00:00

Merged #79 feat(security): allow analytics subdomain to iframe the site 2026-07-21 21:52:35 +00:00

Merged #78 fix(detail): give Results Over Time chart more height on desktop 2026-07-21 21:08:34 +00:00

Merged #77 feat(analytics): load Umami heatmap recorder 2026-07-21 15:06:04 +00:00

Merged #76 fix(detail): compare each SATs bar to its own national benchmark 2026-07-21 13:56:55 +00:00

Merged #75 feat(admissions): surface easy-to-miss deadlines as callout boxes 2026-07-21 11:27:20 +00:00

Merged #74 fix(rankings,admissions): correct education-accuracy audit findings 2026-07-21 11:16:15 +00:00

Merged #73 fix(home): correct education/Ofsted claims on the landing page 2026-07-21 09:04:57 +00:00

Merged #72 fix(detail): let the special-school note span the full container width 2026-07-20 21:53:28 +00:00

Merged #71 fix(detail): align Ofsted Report Card grade chips 2026-07-20 21:32:45 +00:00

Merged #70 fix: don’t portray special schools as failing the mainstream benchmark 2026-07-20 21:14:57 +00:00

Merged #69 fix(detail): label the phase of all-through admissions figures (Batch F review fix) 2026-07-20 16:18:44 +00:00

Merged #68 fix(detail): render both phases for all-through schools (Batch E) 2026-07-20 12:02:08 +00:00

Merged #67 fix(detail): gap-honest year axis on the detail-page trend charts (Batch D) 2026-07-20 11:42:48 +00:00

Merged #66 fix(detail): banded admissions + plain-English Progress 8 (Batch C) 2026-07-20 11:11:39 +00:00

Merged #65 fix(detail): 'England average' provenance labelling (Batch B) 2026-07-20 07:52:55 +00:00

Merged #64 fix(detail): Ofsted sentinel codes, sixth form, carried-forward labels (Batch A) 2026-07-20 06:21:07 +00:00

Merged #63 fix(list/map): report-card schools badged as Report Card, not their old grade 2026-07-18 20:28:20 +00:00

Merged #62 fix(detail): render & correctly date Ofsted report cards 2026-07-18 18:13:26 +00:00

Merged #61 fix(ci): promotion E2E-gate check uses Actions token, not REGISTRY_TOKEN (403) 2026-07-18 15:25:28 +00:00

Merged #60 style(compare): shorten Ofsted link text to 'Ofsted page' 2026-07-18 14:20:09 +00:00

Merged #59 style(compare): enlarge per-school name label in mobile section cards 2026-07-18 14:09:03 +00:00

Merged #58 fix(compare): anchor grade-5 & EBacc rows; restore secondary-button outline 2026-07-18 07:29:51 +00:00

Merged #57 fix(compare): keep add-school sheet above the mobile keyboard (VisualViewport) 2026-07-18 07:09:03 +00:00

Merged #56 fix(compare): repair mobile add-school modal + re-apply stranded chart-height fix 2026-07-17 22:11:46 +00:00

Merged #55 fix(compare): expert should-fixes S1-S4, S6 (S5/S7 closed by verification) 2026-07-17 17:53:16 +00:00

Merged #54 fix(pipeline): annual DAG never builds the official KS4 national mart 2026-07-17 13:28:08 +00:00

Merged #53 fix(compare): expert sign-off must-fixes M1-M3 2026-07-17 12:02:56 +00:00

Merged #52 fix(compare): stale-basket fetch blanking comparisons; rail caption 2026-07-17 06:28:28 +00:00

Merged #51 fix(compare): align sticky school chips with their data columns on desktop 2026-07-16 20:10:45 +00:00

Merged #50 fix(compare): five must-fix findings from the final expert review 2026-07-16 19:16:54 +00:00

Merged #49 fix: preserve literal 'NULL' strings for primary key columns 2026-07-16 07:54:41 +00:00

Merged #48 fix: convert NaN/NULL to None and restore record properties structure in tap.py 2026-07-16 07:40:28 +00:00

Merged #47 feat: ingest independent schools in Ofsted tap and dbt staging 2026-07-15 22:26:39 +00:00

Merged #46 Pass phase state to compare sub-components to prevent phase metrics override by multi-phase schools 2026-07-15 16:38:49 +00:00

Merged #45 Fix Ofsted transitional inspections, phase tab exclusions, and FSM benchmark comparison 2026-07-15 16:30:00 +00:00

Merged #44 fix(compare): sticky school bar hidden behind the site header 2026-07-15 12:02:30 +00:00

Merged #43 School name cutoff fix 2026-07-15 08:01:48 +00:00

Merged #42 fix(compare): match mockups — remove trends table + mobile measure-first cards 2026-07-15 07:17:08 +00:00

Merged #41 fix(compare): trends chart was squashed to ~150px — give it a real height 2026-07-14 22:51:04 +00:00

Merged #40 test(e2e): fix flaky compare journey — select two same-phase schools 2026-07-14 22:30:18 +00:00

Merged #38 perf(api): batch supplementary queries — /api/compare stops scaling per school 2026-07-14 21:57:27 +00:00

Merged #39 ci: speed up Frontend Typecheck + Tests (cache node_modules; cancel superseded runs) 2026-07-14 21:57:09 +00:00

Merged #37 fix(compare): blank page on refresh + remove dead per-page comparison fetch 2026-07-14 21:39:47 +00:00

Merged #36 perf(compare): import-time KS4 national averages mart; no refetch on metric change 2026-07-14 20:04:46 +00:00

Merged #35 feat(compare): parent-first compare screen — sections, England anchors, report cards, mobile-first 2026-07-14 07:26:21 +00:00

Merged #34 feat(api): compare endpoint enrichment — supplementary blocks, national averages, benchmarks, report-card labels 2026-07-13 21:58:51 +00:00

Merged #32 feat(pipeline): compare-screen data foundation — raw→marts promotions, national averages, Ofsted report cards 2026-07-13 12:52:11 +00:00

Merged #33 ci: two-stage deploy — staging automatic, production behind a manual approval 2026-07-13 12:30:19 +00:00

Merged #27 fix(api): blank-name GIAS sentinel codes map to empty string, not Unknown(n) 2026-07-09 21:21:08 +00:00

Merged #26 fix(pipeline): add the missing backend cache-invalidation step to the data DAGs 2026-07-09 20:41:42 +00:00

Merged #25 fix(api): legacy name-column fallback when marts predate the GIAS code migration 2026-07-09 19:13:55 +00:00

Merged #24 feat: GIAS classification fields stored as codes, translated in code 2026-07-09 13:32:44 +00:00

Merged #23 fix(ui): shorten proposed-to-close notice copy 2026-07-08 21:52:56 +00:00

Merged #22 feat: include and mark 'Open, but proposed to close' schools 2026-07-08 21:23:24 +00:00

Merged #21 feat: drive sixth-form separation from GIAS OfficialSixthForm flag 2026-07-07 13:48:12 +00:00

Merged #20 fix(api): school detail 500s for schools with no performance rows 2026-07-07 08:56:23 +00:00

Merged #19 feat(home): move "use my location" beside the hero search box 2026-07-06 17:56:58 +00:00

Merged #18 fix(map): results map fullscreen falls back to an overlay on iOS 2026-07-06 13:33:16 +00:00

Merged #17 fix(search): stop the mobile sort dropdown overflowing the viewport 2026-07-06 12:46:48 +00:00

Merged #16 feat(compare): lay mobile chart chips two per row 2026-07-06 12:16:27 +00:00

Merged #15 fix(e2e): compare-chips test must compare schools in one phase 2026-07-06 11:01:22 +00:00

Merged #14 fix(frontend): proxy /api and /sitemap.xml at runtime, not via baked rewrites 2026-07-06 10:11:39 +00:00

Merged #13 chore: remove the Ofsted Parent View feature end to end 2026-07-06 08:31:00 +00:00

Merged #12 fix(compare): keep chart data when a client refetch fails 2026-07-06 07:27:04 +00:00

Merged #11 feat(compare): readable comparison chart on mobile 2026-07-05 21:26:01 +00:00

Merged #10 fix(school): make hero map fullscreen work on iOS Safari 2026-07-05 20:52:32 +00:00

Merged #8 fix(e2e): pick the latest explicit year in the rankings year test 2026-07-05 13:54:55 +00:00

Merged #7 fix(api): accept academic-year codes in rankings year filter 2026-07-05 10:46:04 +00:00

Merged #5 fix(e2e): scroll detail-page chart into view before asserting 2026-07-03 13:56:00 +00:00

Merged #4 fix(analytics): restrict Umami to production hostnames 2026-07-03 13:17:53 +00:00

Merged #3 fix(ci): AI review via Claude Code CLI; reuse REGISTRY_TOKEN 2026-07-03 08:50:27 +00:00

Merged #2 feat(sdlc): staging environment + automated staging→prod pipeline 2026-07-03 06:17:40 +00:00

Merged #1 feat(admissions): surface multi-year admissions trend on school detail 2026-06-19 17:42:20 +00:00

1 Issue closed from 1 user

3 Issues created by 1 user