feat(overton): add category domain decomposition with interactive charts and TDD tests

Populated the right_wing_motions.category column (previously 100% NULL across
3,030 motions) via parallel subagent classification — 80 agents derived a
10-category taxonomy and classified all motions in minutes.

Adds to the Overton QMD report:
- Plotly dropdown filter on Chart 1 to toggle between policy categories
- Chart 7: category delta bar chart (pre/post centrist support per domain)
- Chart 8: quarterly domain trajectories for the 5 largest categories
- Domain Decomposition narrative section

Also fixes a Streamlit tab crash (m.text -> m.body_text) and adds TDD tests.
This commit is contained in:
2026-06-15 21:49:37 +02:00
parent a5624f65bc
commit 19e8d5b8ba
24 changed files with 1296 additions and 140 deletions
+1 -1
View File
@@ -182,7 +182,7 @@ def _render_motion_browser(con: duckdb.DuckDBPyConnection) -> None:
st.subheader("Right-Wing Motions Browser")
df = con.execute("""
SELECT r.year, r.title, m.text, r.centrist_support_strict, r.category
SELECT r.year, r.title, m.body_text, r.centrist_support_strict, r.category
FROM right_wing_motions r
LEFT JOIN motions m ON r.motion_id = m.id
WHERE r.classified = TRUE