feat: national average reference line now tracks per year on history chart
Build and Push Docker Images / Build Backend (FastAPI) (push) Successful in 24s
Build and Push Docker Images / Build Frontend (Next.js) (push) Successful in 51s
Build and Push Docker Images / Build Pipeline (Meltano + dbt + Airflow) (push) Successful in 1m52s
Build and Push Docker Images / Trigger Portainer Update (push) Successful in 1s

Previously the dashed reference line was a flat horizontal at the latest
year's national average across all historical data, implying the national
figure was constant. Now the backend returns per-year averages in `by_year`
and the chart maps each data year to its own national average, so the
reference line correctly reflects how the national picture changed over time
(including COVID recovery dip/recovery).

- backend: /api/national-averages now includes `by_year` list alongside
  existing `year`/`primary`/`secondary` latest-year snapshot
- types: NationalAverages extended with `by_year: NationalAveragesYear[]`
- PerformanceChart: accepts `nationalByYear` prop; builds per-year series
  aligned to school data years, falling back to scalar prop if absent
- SchoolDetailView + SecondarySchoolDetailView: pass `nationalAvg.by_year`

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Tudor Sitaru
2026-04-09 13:55:14 +01:00
parent 23f881b797
commit a3cfffa4d0
5 changed files with 57 additions and 10 deletions
+6 -1
View File
@@ -351,12 +351,17 @@ export interface Filters {
admissions_policies: string[];
}
export interface NationalAverages {
export interface NationalAveragesYear {
year: number;
primary: Record<string, number>;
secondary: Record<string, number>;
}
export interface NationalAverages extends NationalAveragesYear {
/** Per-year averages for every year in the dataset, used for chart reference lines. */
by_year: NationalAveragesYear[];
}
export interface LAaveragesResponse {
year: number;
secondary: {