docs: fix two spec ambiguities in axis classification design

- Clarify CSV path derivation from db_path (same data/ directory)
- Handle current_parliament window exclusion from modal label voting
main
Sven Geboers 1 month ago
parent bed911b92c
commit bb5f2961d1
  1. 8
      docs/superpowers/specs/2026-03-29-axis-classification-design.md

@ -160,6 +160,10 @@ Single public function: `classify_axes(positions_by_window, axes, db_path)`.
The function is pure except for reading two CSV files (cached module-level after first load). The function is pure except for reading two CSV files (cached module-level after first load).
CSV paths are derived from `db_path`: `Path(db_path).parent / "party_ideologies.csv"` and
`Path(db_path).parent / "coalition_membership.csv"`. Both files live in the same `data/` directory
as the database.
**Algorithm per window:** **Algorithm per window:**
1. Collect parties that appear in both `positions_by_window[window_id]` and `party_ideologies.csv`. 1. Collect parties that appear in both `positions_by_window[window_id]` and `party_ideologies.csv`.
@ -184,7 +188,9 @@ The function is pure except for reading two CSV files (cached module-level after
6. Repeat steps 3–5 for Y-axis using `party_y`. 6. Repeat steps 3–5 for Y-axis using `party_y`.
7. After processing all windows, pick global X label = modal label across annual windows only 7. After processing all windows, pick global X label = modal label across annual windows only
(quarterly windows participate in quality tracking but not in the modal vote, to avoid (quarterly windows participate in quality tracking but not in the modal vote, to avoid
over-weighting). over-weighting). The `current_parliament` window is excluded from modal voting entirely and
from the coalition dimension (no year to look up); it still gets x_quality and x_interpretation
based on the left_right and progressive correlations.
**Interpretation strings (Dutch):** **Interpretation strings (Dutch):**

Loading…
Cancel
Save