Commit Graph

  • 8bc43b67fd test(trajectory): add tests for plot rendering with edge cases Sven Geboers 2026-04-01 01:56:04 +0200
  • 31e1dd4371 fix(trajectory): correct import for diagnose_trajectories Sven Geboers 2026-04-01 01:51:14 +0200
  • 5cd031777c fix(trajectory): improve fallback handling and diagnostics when trace_count is 0 Sven Geboers 2026-04-01 01:49:14 +0200
  • 8e67b89a1d fix(trajectory): fix division by zero and None handling in name normalization Sven Geboers 2026-04-01 01:46:13 +0200
  • 0b79709847 fix(trajectory): normalize MP names to improve party_map matching Sven Geboers 2026-04-01 01:43:39 +0200
  • 26bdb4c61c refactor(trajectory): fix code quality issues in centroid diagnostics Sven Geboers 2026-04-01 01:40:40 +0200
  • 7d93753530 fix(trajectory): add diagnostics to compute_party_centroids for NaN detection Sven Geboers 2026-04-01 01:35:57 +0200
  • 385a25853c diagnose(trajectory): add diagnostics to identify why trace_count is 0 Sven Geboers 2026-04-01 01:31:49 +0200
  • 24796f97d3 test: add trajectory pipeline integration test Sven Geboers 2026-03-31 15:08:50 +0200
  • 69208e0bf6 fix: skip second trace loop when helper succeeds to avoid duplicate traces Sven Geboers 2026-03-31 15:04:45 +0200
  • 5d1328f824 chore: add TRAJ DEBUG print checkpoints to build_trajectories_tab Sven Geboers 2026-03-31 14:55:08 +0200
  • 1a83f0f319 docs: add trajectory plots debugging plan Sven Geboers 2026-03-31 02:12:49 +0200
  • 9f98dbae60 Add debug st.info before st.plotly_chart to diagnose invisible chart Sven Geboers 2026-03-31 01:49:38 +0200
  • 72d1c20340 Show error and diagnostics when st.plotly_chart fails instead of silent pass Sven Geboers 2026-03-31 01:38:30 +0200
  • baee50f3a5 feat(explorer): extend diagnostic inspector to surface mp samples/counts Sven Geboers 2026-03-31 00:28:14 +0200
  • 0f2db0a9be chore(explorer): add get_debug_trajectories_enabled helper Sven Geboers 2026-03-31 00:22:26 +0200
  • 525cd157c0 docs: add diagnose-no-plot-trajectories design (2026-03-30) Sven Geboers 2026-03-30 23:57:18 +0200
  • ce1fc86bcb docs(design): add fix-missing-trajectories design Sven Geboers 2026-03-30 22:24:05 +0200
  • c059d5d955 Fix compass orientation and simplify CI display Sven Geboers 2026-03-30 18:31:39 +0200
  • b7129b3755 Extract _load_mp_vectors_by_party helper and fix cache key Sven Geboers 2026-03-29 23:41:15 +0200
  • 3938eecc53 Add bootstrap CIs to party axis chart with error bars and diamond markers Sven Geboers 2026-03-29 23:35:53 +0200
  • 88110b0aaa Fix update_existing_motions: single write connection and module-level duckdb import Sven Geboers 2026-03-29 23:28:40 +0200
  • be8887f6f8 Add --skip-details, --update-existing flags to download_past_year.py with tests Sven Geboers 2026-03-29 23:25:04 +0200
  • 72a8dd2721 Fix RNG re-seeding per party and vectorize bootstrap loop Sven Geboers 2026-03-29 23:17:33 +0200
  • cd8aeec997 Add compute_party_bootstrap_cis() to political_axis.py with tests Sven Geboers 2026-03-29 23:13:30 +0200
  • ef96edf478 Remove stale ad-hoc JSON analysis files Sven Geboers 2026-03-29 23:09:37 +0200
  • 10c9b78d16 Add .worktrees/ to .gitignore Sven Geboers 2026-03-29 23:08:34 +0200
  • ff4ce0f9b2 Add design spec for bootstrap CIs and data enrichment Sven Geboers 2026-03-29 22:57:36 +0200
  • db9a61094b Fix SVD_THEMES after self-review: PC2 label, indicatief markers, accuracy Sven Geboers 2026-03-29 21:55:36 +0200
  • a92315701f docs: improve SVD axis analysis with corrected methodology, party sizes, and review fixes Sven Geboers 2026-03-29 21:48:35 +0200
  • fd63585fe5 docs: detailed SVD axis analysis with method, findings, doubts and conclusions Sven Geboers 2026-03-29 21:30:21 +0200
  • f96e804b67 update: refresh SVD axis labels based on current parliament motions (2025-2026) Sven Geboers 2026-03-29 21:24:14 +0200
  • fc16664c5e fix: open DuckDB read_only in trajectory helpers to avoid lock conflict with Streamlit Sven Geboers 2026-03-29 21:10:33 +0200
  • 98b2583efd fix: scree plot now shows true EVR from Procrustes-aligned multi-window SVD Sven Geboers 2026-03-29 21:06:51 +0200
  • e0f17e8b83 Revert "fix: use annual-only windows for SVD to restore EVR (~20% PC1)" Sven Geboers 2026-03-29 20:58:49 +0200
  • ffd8b191ef fix: use annual-only windows for SVD to restore EVR (~20% PC1) Sven Geboers 2026-03-29 20:12:24 +0200
  • 2cca1000ca refactor: move _render_axis_motions to module level Sven Geboers 2026-03-29 19:43:13 +0200
  • ab9b91e4a8 fix: close duckdb connections safely, swap x/y_axis vectors, fix EVR caption after axis swap Sven Geboers 2026-03-29 19:42:22 +0200
  • ea3c68ece9 refactor: extract _render_axis_motions helper, use literal emoji in expander Sven Geboers 2026-03-29 19:37:26 +0200
  • 37300f2c4e feat: add motion expander to compass tab — shows top motions per axis Sven Geboers 2026-03-29 19:34:45 +0200
  • 9d219d63ee test: add neither-axis-LR edge case + document swap pass-through Sven Geboers 2026-03-29 19:33:09 +0200
  • 74b3f10d07 feat: add axis swap — left-right goes on horizontal axis when detected Sven Geboers 2026-03-29 19:29:32 +0200
  • 95c5ab9302 fix: generate interpretation string when motion path wins without ideology Sven Geboers 2026-03-29 19:26:43 +0200
  • 1ff280e0e3 feat: restructure classify_axes — motion projection as primary label source Sven Geboers 2026-03-29 19:20:56 +0200
  • 62daad321e fix: add outer exception handling to motion helpers in axis_classifier Sven Geboers 2026-03-29 19:18:33 +0200
  • 96224be6ee feat: add motion-loading helpers to axis_classifier Sven Geboers 2026-03-29 19:16:57 +0200
  • 1e52a8a8cc fix: deterministic tie handling and regex matching in _classify_from_titles Sven Geboers 2026-03-29 19:15:31 +0200
  • 71e4b68926 fix: correct docstring for _classify_from_titles return value Sven Geboers 2026-03-29 15:00:08 +0200
  • f8d9af7d9d feat: add _classify_from_titles keyword classifier to axis_classifier Sven Geboers 2026-03-29 14:57:19 +0200
  • 6c4dd81723 feat: expose global_mean in compute_2d_axes axes dict Sven Geboers 2026-03-29 14:50:05 +0200
  • 93a2287c04 docs: add motion-driven axis labeling implementation plan Sven Geboers 2026-03-29 14:36:28 +0200
  • 9dcf6201bb Add design spec for motion-driven axis labeling Sven Geboers 2026-03-29 14:19:54 +0200
  • 392fd3afce fix: add per-window X-axis orientation correction Sven Geboers 2026-03-29 01:15:21 +0100
  • 34c08a40fa feat: use dynamic axis labels in compass and trajectories UI Sven Geboers 2026-03-29 01:04:54 +0100
  • 5ec1f7af75 feat: add axis classifier with party ideology reference data Sven Geboers 2026-03-29 01:00:55 +0100
  • 23849c9cb6 docs: add axis classification implementation plan Sven Geboers 2026-03-29 00:58:53 +0100
  • 6b811364c5 docs: add deployment note to axis classification spec Sven Geboers 2026-03-29 00:53:54 +0100
  • bb5f2961d1 docs: fix two spec ambiguities in axis classification design Sven Geboers 2026-03-29 00:52:11 +0100
  • bed911b92c docs: add axis classification design spec Sven Geboers 2026-03-29 00:51:34 +0100
  • 50f8a06c6d fix: connection leak, Rice index excludes absences, per-party motion count guard Sven Geboers 2026-03-28 23:50:09 +0100
  • bcf9407957 feat: add voting discipline section below political compass Sven Geboers 2026-03-28 23:45:38 +0100
  • ab99b7de18 fix: replace sideways Y-axis arrows with proper top/bottom annotations Sven Geboers 2026-03-28 23:41:01 +0100
  • aac8a89118 fix: add missing party justifications in SVD_THEMES axes 3 and 5 explanations Sven Geboers 2026-03-28 23:39:24 +0100
  • b6c2a9bacf fix: update SVD_THEMES axes 3-5 descriptions to reflect stable multi-year patterns Sven Geboers 2026-03-28 23:37:10 +0100
  • 6914b2284a Add implementation plan for compass UI improvements Sven Geboers 2026-03-28 23:33:03 +0100
  • c5b39ced5f Add design doc for compass UI improvements (axes 3-5, Y-axis arrows, discipline section) Sven Geboers 2026-03-28 23:30:32 +0100
  • 064cd059d4 fix: per-window Y-axis correction for political compass Sven Geboers 2026-03-28 22:45:40 +0100
  • 6329d6a256 UI improvements + add axis orientation test Sven Geboers 2026-03-28 22:27:39 +0100
  • 72fbe0008e fix(ansible): add headless and CORS flags for reverse proxy Sven Geboers 2026-03-28 22:01:04 +0100
  • b50ee650de fix(ansible): create data directory on server before rsync Sven Geboers 2026-03-28 21:39:33 +0100
  • cbab8f080d fix(ansible): use rsync with checksum for motions.db sync Sven Geboers 2026-03-28 21:09:17 +0100
  • 0bd1c08cb2 fix(ansible): ignore pkill errors, add motions.db sync task Sven Geboers 2026-03-28 21:04:49 +0100
  • 22067fd162 fix(ansible): use full path for uv binary in shell tasks Sven Geboers 2026-03-28 21:02:01 +0100
  • de6ed29bf7 fix(ansible): use port 222 for Gitea SSH, write SSH config on server Sven Geboers 2026-03-28 20:46:57 +0100
  • 13cb746d06 fix(ansible): correct deploy key path to /home/webapps/.ssh/ed25519 Sven Geboers 2026-03-28 20:39:45 +0100
  • a4481af8e2 fix(ansible): use webapps deploy key for git clone instead of agent forwarding Sven Geboers 2026-03-28 20:33:09 +0100
  • 8579da68bd fix(ansible): add git.sgeboers.nl to known_hosts before git clone Sven Geboers 2026-03-28 20:29:06 +0100
  • 57083e496d chore(ansible): add ansible.cfg with SSH agent forwarding for private repo access Sven Geboers 2026-03-28 20:25:36 +0100
  • c0d1c59bd7 chore(deploy): rewrite ansible for motief on motief.sgeboers.nl, remove drone Sven Geboers 2026-03-28 20:12:36 +0100
  • 35f4667982 chore(secrets): stop tracking .env and add to .gitignore Sven Geboers 2026-03-28 20:02:54 +0100
  • 445f0bfb24 feat(ansible-example): add @ansible/example package, tests, CI, publish & deploy workflows, docs and changelog Sven Geboers 2026-03-28 20:00:31 +0100
  • b5c14d0c65 deploy to server Sven Geboers 2026-03-26 22:52:11 +0100
  • c3f74433b2 chore(data): regenerate top SVD motions JSON with party-expanded SVD vectors Sven Geboers 2026-03-25 23:49:35 +0100
  • 6cb89126a7 fix(svd): expand party votes to individual MPs before SVD computation Sven Geboers 2026-03-25 23:48:55 +0100
  • a7517bb6ae fix(svd): use averaged individual MP vectors for party axis scores, fix scree to %, re-add component 4 Sven Geboers 2026-03-25 23:06:35 +0100
  • 0a2238f2ba fix(svd): remove component 4 from SVD_THEMES (dim 3 has zero party signal) Sven Geboers 2026-03-25 22:56:47 +0100
  • 26acd8b964 fix: scree plot uses party vectors instead of individual MPs Sven Geboers 2026-03-25 22:44:57 +0100
  • 559e1adb82 fix(compass): fix annual window detection in get_uniform_dim_windows Sven Geboers 2026-03-25 22:41:35 +0100
  • c386073430 feat(compass): switch to annual SVD windows by default Sven Geboers 2026-03-25 22:37:01 +0100
  • 96ea4c5522 feat(compass): fix duplicates, axes, controls, add party/MP toggle Sven Geboers 2026-03-25 22:24:05 +0100
  • cf22ffc093 fix(explorer): fix scree plot data and add bar+line combo chart Sven Geboers 2026-03-25 22:11:09 +0100
  • c5cbc89c1f feat(explorer): add scree plot and clean up SVD axis chart Sven Geboers 2026-03-25 22:03:01 +0100
  • a20bd834fc chore(repo): remove stale scripts, caches, and old workflow Sven Geboers 2026-03-25 21:37:57 +0100
  • 867fcd1989 feat: recompute SVD for full current parliament (2023-11-22 to 2026-03-17) Sven Geboers 2026-03-25 01:16:33 +0100
  • 9daa899885 fix: remove motion title truncation, add SVD JSON generation script Sven Geboers 2026-03-25 01:15:42 +0100
  • 49a1f2f67d fix: correct axis 4 and 5 pole labels and flip orientation in SVD_THEMES Sven Geboers 2026-03-25 00:43:18 +0100
  • 361cf9fd35 feat(explorer): SVD tab redesign — pole-split motions, party axis chart, inline expanders with voting Sven Geboers 2026-03-25 00:11:37 +0100
  • 9caaa8baca feat(explorer): finalise SVD tab helper robustness and constants Sven Geboers 2026-03-25 00:04:54 +0100
  • 32fe3aed18 feat(explorer): harden _render_party_axis_chart axis bounds and range Sven Geboers 2026-03-25 00:01:18 +0100
  • 5e061b0e40 feat(explorer): include CU alias in CURRENT_PARLIAMENT_PARTIES Sven Geboers 2026-03-25 00:01:15 +0100