-
5b025b98bd
fix(dim_school): use case-insensitive comparison for phase inference
main
Tudor Sitaru
2026-04-02 15:33:04 +01:00
-
4c3c3c882d
fix(dim_school): infer phase from age range for independent schools
Tudor Sitaru
2026-04-01 16:18:52 +01:00
-
d591d8e66b
fix(utils): handle null year in formatAcademicYear
Tudor Sitaru
2026-04-01 16:07:28 +01:00
-
4db36b9099
feat(ui): add phase indicators to school list rows
Tudor Sitaru
2026-04-01 15:47:51 +01:00
-
cacbeeb068
fixing backend image
Tudor Sitaru
2026-04-01 15:05:21 +01:00
-
d5f6366c28
fix(years): format academic years as 2016/17 across all views, remove legacy frontend and data
Tudor Sitaru
2026-04-01 14:58:13 +01:00
-
2b757e556d
fix(legacy-ks2): strip % suffix from percentage values
Tudor Sitaru
2026-04-01 13:07:51 +01:00
-
fbd1de9220
fix(dag): add stg_legacy_ks2 to annual EES dbt build selector
Tudor Sitaru
2026-04-01 11:27:29 +01:00
-
fba8e74b72
refactor(legacy-ks2): use explicit year→URL mapping instead of base URL pattern
Tudor Sitaru
2026-03-31 22:44:11 +01:00
-
6d4962639c
feat(legacy-ks2): add stream for pre-COVID KS2 data (2015-2019)
Tudor Sitaru
2026-03-31 14:36:41 +01:00
-
fc011c6547
fix(tap-uk-ees): case-insensitive URN column matching for older census files
Tudor Sitaru
2026-03-30 22:36:16 +01:00
-
752abd69a5
fix(tap-uk-ees): inject time_period from release slug when absent in CSV
Tudor Sitaru
2026-03-30 21:59:24 +01:00
-
570c2b689e
fix(tap-uk-ees): handle plain list response from releases endpoint
Tudor Sitaru
2026-03-30 21:47:14 +01:00
-
17617137ea
fix(data-info): drop NaN years before converting to int
Tudor Sitaru
2026-03-30 21:41:11 +01:00
-
9a1572ea20
feat(tap-uk-ees): fetch all historical releases, not just latest
Tudor Sitaru
2026-03-30 21:37:26 +01:00
-
f48faa1803
showing schools with no KS2 results
Tudor
2026-03-30 18:14:43 +01:00
-
6e5249aa1e
refactor(phase): merge KS2+KS4 into fact_performance, fix all phase inconsistencies
Tudor
2026-03-30 14:07:30 +01:00
-
695a571c1f
fix(filters): forward gender, admissions_policy, has_sixth_form to API
Tudor
2026-03-30 10:45:09 +01:00
-
bd4e71dd30
feat(sort): persist sort order in URL as ?sort= param
Tudor
2026-03-30 10:10:28 +01:00
-
cd6a5d092c
feat(map): make desktop map view taller using viewport height
Tudor
2026-03-30 09:29:12 +01:00
-
5aed055331
feat(map): add fullscreen button using browser Fullscreen API
Tudor
2026-03-30 09:21:44 +01:00
-
d6a45b8e12
feat(map): fetch all schools for map view, add reference pin, cap radius at 5mi
Tudor
2026-03-30 09:13:14 +01:00
-
daf24e4739
fix(search): fix load-more silently failing due to missing page_size param
Tudor
2026-03-30 09:08:15 +01:00
-
0c5bef34cf
feat(ui): polish filter controls with pill styling and custom arrows
Tudor
2026-03-29 21:31:03 +01:00
-
5615458223
feat(ui): consolidate search/filter area into cleaner 2-row layout
Tudor
2026-03-29 20:46:38 +01:00
-
9c9528b51b
fix(FilterBar): close fragment opened around phase filter and advanced section
Tudor
2026-03-29 20:21:11 +01:00
-
1009d7c976
fix(chart): format year as 2022/23 instead of 202223 on performance chart
Tudor
2026-03-29 20:17:04 +01:00
-
790b12a7f3
changes to order of display and text
Tudor
2026-03-29 20:14:42 +01:00
-
8f4c052294
feat(filters): move phase filter out of advanced section to always-visible position
Tudor
2026-03-29 18:33:45 +01:00
-
b7bff7bf6b
feat(seo): static sitemap generation job via Airflow
Tudor
2026-03-29 15:15:41 +01:00
-
748891ab31
fix(detail): restore admissions cut-off note on secondary school page
Tudor
2026-03-29 15:07:52 +01:00
-
17b8873f0f
fix(detail): add missing location map section to secondary school page
Tudor
2026-03-29 15:06:27 +01:00
-
15c0055687
refactor(detail): align secondary school page with primary — scroll-to-section nav
Tudor
2026-03-29 14:48:06 +01:00
-
6315f366c8
fix(build): single-brace JSX for schoolUrl, migrate images.domains to remotePatterns
Tudor
2026-03-29 14:15:06 +01:00
-
784febc162
feat(seo): add school name to URLs, fix sticky nav, collapse compare widget
Tudor
2026-03-29 12:41:28 +01:00
-
e2c700fcfc
fix(ui): round admission percentages, fix mobile overflow on detail pages
Tudor
2026-03-29 11:22:13 +01:00
-
77a0f5b674
fix(detail): enrich secondary overview tab — show Ofsted grades, admissions, SEN
Tudor
2026-03-29 10:59:30 +01:00
-
63dfa22255
fix(detail): detect secondary schools by attainment_8_score, not just phase field
Tudor
2026-03-29 10:12:07 +01:00
-
1d22877aec
feat(ux): 8 UX improvements — simpler home, advanced filters, phase tabs, 4-line rows
Tudor
2026-03-29 08:57:06 +01:00
-
e8175561d5
updates for secondary schools
Tudor
2026-03-28 22:36:00 +00:00
-
f3a8ebdb4b
fix(dbt): deduplicate int_ks4_with_lineage predecessor rows
Tudor
2026-03-28 18:58:50 +00:00
-
f0c76a1724
fix(dbt): fix stg_ees_ks4 breakdown filter: 'Total' not 'All pupils'
Tudor
2026-03-28 18:35:00 +00:00
-
3e787b395f
chore(pipeline): add EES KS4 tap diagnostic script
Tudor
2026-03-28 18:26:15 +00:00
-
3d1c4c61c9
fix(types): add missing phases field to Filters fallback in rankings page
Tudor
2026-03-28 15:03:03 +00:00
-
250d1f7c77
fix(tap-uk-idaci): add openpyxl dependency for Excel file parsing
Tudor
2026-03-28 15:00:00 +00:00
-
5eff9af69c
feat: add secondary school support with KS4 data and metric tooltips
Tudor
2026-03-28 14:59:40 +00:00
-
b0990e30ee
fix(ui): retheme comparison toast to match site palette
Tudor
2026-03-27 22:09:59 +00:00
-
1629a8f994
feat(pipeline): add DAGs for Parent View and IDACI deprivation
Tudor
2026-03-27 22:08:12 +00:00
-
55749bdfaf
debug(backend): log safe_query exceptions and rollback on failure
Tudor
2026-03-27 22:00:27 +00:00
-
cd1c649d0f
fix(frontend): format 6-digit EES academic year codes correctly
Tudor
2026-03-27 18:30:37 +00:00
-
7724fe3503
fix(stg_ofsted_inspections): correctly filter NULL string inspection dates
Tudor
2026-03-27 18:21:30 +00:00
-
1d56eebe87
fix(stg_ofsted_inspections): filter out rows with no inspection date
Tudor
2026-03-27 17:55:11 +00:00
-
10720400fd
fix(stg_ofsted_inspections): parse DD/MM/YYYY date format from Ofsted CSV
Tudor
2026-03-27 17:34:34 +00:00
-
05cb22f1a5
fix(stg_ofsted_inspections): handle NULL strings from Ofsted CSV
Tudor
2026-03-27 17:23:46 +00:00
-
26aa3c2d70
fix(tap-uk-ofsted): fix header row detection matching 'urn' inside 'turn'
Tudor
2026-03-27 17:05:03 +00:00
-
e56a63c59c
debug(tap-uk-ofsted): log CSV column names to diagnose 0-record extraction
Tudor
2026-03-27 15:47:32 +00:00
-
221923857d
chore: remove integrator/kestra CI jobs, fix school website link protocol
Tudor
2026-03-27 15:30:08 +00:00
-
62284e7a94
chore: remove Kestra and integrator legacy services
Tudor
2026-03-27 15:03:34 +00:00
-
668e234eb2
feat(census): add demographic columns to EES census tap and staging models
Tudor
2026-03-27 14:07:48 +00:00
-
4b02ab3d8a
feat: wire Typesense search into backend, fix sync performance data bug
Tudor
2026-03-27 13:23:32 +00:00
-
5d8b319451
fix(dbt): stub rc_* columns as NULL in stg_ofsted_inspections
Tudor
2026-03-27 12:50:58 +00:00
-
77f75fb6e5
fix(dbt): deduplicate predecessor KS2 rows and downgrade orphan test to warn
Tudor
2026-03-27 12:16:36 +00:00
-
b41e6c250e
fix(dbt): filter non-numeric URNs and trim whitespace in EES staging models
Tudor
2026-03-27 12:00:30 +00:00
-
6e720feca4
perf(dbt): collapse stg_ees_ks2 to single-pass pivot
Tudor
2026-03-27 11:42:40 +00:00
-
ae9fd26eba
perf(dbt): materialize stg_ees_ks2 and stg_ees_ks4 as tables
Tudor
2026-03-27 11:20:20 +00:00
-
33b395d2bd
fix(dbt): apply safe_numeric macro to fix EES suppression code 'c' errors
Tudor
2026-03-27 10:41:27 +00:00
-
8e8d1bd8c5
fix(ees-tap): filter out rows with null URN before emitting
Tudor
2026-03-27 10:13:17 +00:00
-
c7357336e3
fix(ees-tap): fix BOM handling for admissions CSV
Tudor
2026-03-27 10:03:17 +00:00
-
b8ecc5c58b
fix(ees-tap): strip UTF-8 BOM from CSV column names
Tudor
2026-03-27 09:54:15 +00:00
-
f4f0257447
fix(ees-tap): add latin-1 encoding for census/admissions, default utf-8 for others
Tudor
2026-03-27 09:41:40 +00:00
-
ca351e9d73
feat: migrate backend to marts schema, update EES tap for verified datasets
Tudor
2026-03-27 09:29:27 +00:00
-
d82e36e7b2
feat(ees): rewrite EES tap and KS2 models for actual data structure
Tudor
2026-03-26 23:08:50 +00:00
-
719f06e480
fix(pipeline): make total_pupils non-optional for Typesense, add lat/lng to dim_location
Tudor
2026-03-26 22:45:02 +00:00
-
5e44d88d23
fix(sync): use numeric default_sorting_field, dynamic KS2/KS4 joins, populate geopoints
Tudor
2026-03-26 22:16:21 +00:00
-
cc481aa00c
fix(airflow): remove PostGIS init from airflow, rely on postgis image initdb
Tudor
2026-03-26 22:11:00 +00:00
-
613a030c95
fix(airflow): ensure PostGIS extension exists during init
Tudor
2026-03-26 22:08:12 +00:00
-
72cbbf7778
fix(dbt): simplify search_path to just public for PostGIS
Tudor
2026-03-26 21:47:01 +00:00
-
03256fed41
fix(dbt): add search_path to profile so PostGIS functions resolve in all schemas
Tudor
2026-03-26 21:45:53 +00:00
-
b7cc01f26f
fix(dbt): schema-qualify PostGIS functions in dim_location
Tudor
2026-03-26 21:45:03 +00:00
-
28ba2fd0a6
fix(dbt): cast easting/northing to double precision for ST_MakePoint
Tudor
2026-03-26 21:29:16 +00:00
-
03cd1de6af
fix(airflow): delete and reimport DAGs on init to clear stale task refs
Tudor
2026-03-26 21:28:03 +00:00
-
54df58746e
feat(pipeline): use GIAS easting/northing for all geocoding, drop postcode step
Tudor
2026-03-26 21:18:59 +00:00
-
d3e655abdb
fix(dbt): compute geom from easting/northing in dim_location
Tudor
2026-03-26 21:17:08 +00:00
-
45f3e4d9fc
fix(dbt): override generate_schema_name to use direct schema names
Tudor
2026-03-26 21:09:23 +00:00
-
d25e333826
fix(dbt): remove invalid relationship test on map_school_lineage
Tudor
2026-03-26 20:59:29 +00:00
-
7f82088d53
fix(pipeline): use to_date for DD-MM-YYYY GIAS dates, exclude EES models from daily DAG
Tudor
2026-03-26 20:51:40 +00:00
-
e7b1ab9f37
fix(pipeline): expand GIAS schema, handle empty strings, scope DAG selectors
Tudor
2026-03-26 20:43:24 +00:00
-
24cfb83144
fix(dbt): fix GIAS source column quoting and remove tests on unloaded sources
Tudor
2026-03-26 20:25:56 +00:00
-
72ef1b03b7
fix(airflow): use correct Airflow 3 env vars for multi-container JWT and Execution API
Tudor
2026-03-26 20:11:06 +00:00
-
ea160b53df
fix(airflow): point scheduler to api-server via INTERNAL_API_URL
Tudor
2026-03-26 17:09:17 +00:00
-
8a2503230f
fix(airflow): split back to separate scheduler and api-server containers
Tudor
2026-03-26 17:00:07 +00:00
-
677e80ad70
fix(airflow): generate config before starting processes, set fixed secret key
Tudor
2026-03-26 16:57:22 +00:00
-
1dbcc24434
fix(airflow): stop deleting airflow.cfg, let processes share config
Tudor
2026-03-26 16:49:18 +00:00
-
b3e4769d82
fix(airflow): set shared internal API secret key
Tudor
2026-03-26 16:42:02 +00:00
-
7a39f4cdb1
fix(ci): use correct mirror address 10.0.1.224:6000
Tudor
2026-03-26 15:06:17 +00:00
-
1a9dd49097
fix(ci): configure buildx to use local Docker Hub mirror
Tudor
2026-03-26 14:59:16 +00:00
-
0062a5eabe
fix(tap-gias): declare numeric CSV columns as StringType
Tudor
2026-03-26 14:03:26 +00:00
-
84261f6125
fix(meltano): set default_environment, remove deprecated version field
Tudor
2026-03-26 14:01:31 +00:00
-
9eae6bffae
fix(meltano): use 'database' not 'dbname' for meltanolabs target-postgres
Tudor
2026-03-26 13:53:49 +00:00
-
c576bba06a
fix(meltano): remove catalog capability and switch elt to run
Tudor
2026-03-26 13:45:23 +00:00