thermograph/data
Emi Griffith 789dcb03d4 Score every metric equally in the overall total (#218)
The overall climate-shift score was a weighted roll-up (feels-like and humidity
2x, wind and gusts 0.5x, and so on). Make it an equal average instead: every
metric — and, through each metric's own mean over the 10/25/50/75/90 percentiles,
every percentile — counts the same.

- scoring._overall: plain mean of the present metrics' divergences, mapped to
  0-100, replacing the weighted sum. Missing metrics still drop out cleanly.
- Drop the now-unused per-metric weights from the METRICS table and the scored
  entries (nothing rendered them; only the roll-up read them).
- views.SCORE_VER s4 -> s5 so cached weighted scores are recomputed.
- score.js: the hero note now reads "Every metric counts equally" instead of
  "Temperature, feels-like and humidity are weighted most".

Verified against Seattle: overall mad equals the equal mean of the eight metric
mads (7.9), and the entries no longer carry a weight.

Claude-Session: https://claude.ai/code/session_013dRZmX9D3JEntfMKWMTWZ8
2026-07-20 05:45:57 +00:00
..
__init__.py Split the backend into domain packages (#217) 2026-07-20 05:31:03 +00:00
cities.py Split the backend into domain packages (#217) 2026-07-20 05:31:03 +00:00
city_events.py Split the backend into domain packages (#217) 2026-07-20 05:31:03 +00:00
climate.py Split the backend into domain packages (#217) 2026-07-20 05:31:03 +00:00
grading.py Split the backend into domain packages (#217) 2026-07-20 05:31:03 +00:00
grid.py Split the backend into domain packages (#217) 2026-07-20 05:31:03 +00:00
places.py Split the backend into domain packages (#217) 2026-07-20 05:31:03 +00:00
scoring.py Score every metric equally in the overall total (#218) 2026-07-20 05:45:57 +00:00
store.py Split the backend into domain packages (#217) 2026-07-20 05:31:03 +00:00