-
50fafeecf3
feat: add motion semantic drift analysis script
sgeboers
2026-04-05 12:24:46 +02:00
-
846e9cf67f
fix: import canonical parties from config, simplify theme consistency check
sgeboers
2026-04-05 10:05:46 +02:00
-
bad9cd758d
docs: add SVD theme divergence solution doc and validation hook
sgeboers
2026-04-05 09:58:53 +02:00
-
c71710433a
fix: correct axis 4 theme to match actual party positions (NSC/BBB vs D66/CDA/JA21)
sgeboers
2026-04-05 02:20:44 +02:00
-
bce0ed56de
fix: add semantic left_pole/right_pole labels to SVD axes
sgeboers
2026-04-05 02:11:19 +02:00
-
f775e41c96
test: add canonical party set validation for SVD flip direction
sgeboers
2026-04-05 02:04:31 +02:00
-
0a39fa0fe3
docs: add SVD axis labels design spec
sgeboers
2026-04-05 01:49:26 +02:00
-
ea6e33fa3f
chore: regenerate uv.lock (resolve pytest source ambiguity)
sgeboers
2026-04-05 01:42:50 +02:00
-
da4d73a881
ci: replace trajectory debug prints with logger.debug (safe_auto)
sgeboers
2026-04-05 01:19:49 +02:00
-
310083421b
Merge: accept main version of explorer.py to resolve svd-tab-redesign conflicts
sgeboers
2026-04-05 01:06:48 +02:00
-
-
27486726b8
docs: add learning about agent push access to gitea
sgeboers
2026-04-05 00:53:07 +02:00
-
414c16ae9e
refactor: extract data loading and trajectory logic from explorer.py
sgeboers
2026-04-05 00:51:30 +02:00
-
154762a4c8
docs: refresh 2 stale references in solutions docs
sgeboers
2026-04-05 00:46:57 +02:00
-
5afbad11ad
feat: add right-wing party axis validation
sgeboers
2026-04-05 00:36:58 +02:00
-
5ddf2cd85a
chore: confirm deletion of stale files
sgeboers
2026-04-04 18:47:27 +02:00
-
eb71328967
chore: commit remaining modified files from refactoring
sgeboers
2026-04-04 18:47:12 +02:00
-
805cc7e284
docs: add session ledger files and logic-errors docs
sgeboers
2026-04-04 18:47:05 +02:00
-
1dbf8da3a2
docs: move active plan to docs/plans/
sgeboers
2026-04-04 18:47:01 +02:00
-
f376300804
refactor: delete stale files and consolidate .mindmodel structure
sgeboers
2026-04-04 18:46:53 +02:00
-
0308d20f12
docs: add AGENTS.md with docs/solutions reference and SVD label best practice
sgeboers
2026-04-04 18:36:05 +02:00
-
92c3c0ee01
fix: update Components 2, 4, 5, 6 SVD labels based on voting pattern analysis
sgeboers
2026-04-04 18:29:48 +02:00
-
f7fc908b58
fix: update Component 1 label to coalition-opposition reality
sgeboers
2026-04-04 18:25:19 +02:00
-
bfe37c6806
fix: align report generation with JSON output for positive/negative separation
sgeboers
2026-04-04 18:19:31 +02:00
-
e77f0ec9e3
fix: update SVD_THEMES labels to match actual motion content
sgeboers
2026-04-04 18:09:46 +02:00
-
33edb334c4
feat: implement exclusive SVD motion assignment with label review report
sgeboers
2026-04-04 17:55:28 +02:00
-
ee8ffea6e2
fix: add health check wait to ansible deploy
sgeboers
2026-04-02 22:46:01 +02:00
-
d8bee43c15
feat: add voting discipline analysis paragraph under political compass
sgeboers
2026-04-02 22:03:57 +02:00
-
f5f0c8d6b1
feat: add year selector for SVD components 3-10
sgeboers
2026-04-02 21:49:12 +02:00
-
5f7126f53f
docs: add voting discipline analysis
sgeboers
2026-04-02 21:47:08 +02:00
-
abd3281044
refactor: remove Stemgedrag cohesie section and fallback axis message
sgeboers
2026-04-02 21:46:24 +02:00
-
a5e95c33d7
refactor: use scatter plot format for SVD components 3-10
sgeboers
2026-04-02 21:39:09 +02:00
-
fa019d8a9c
test: add test for auto-flip computation for all components
sgeboers
2026-04-02 21:21:58 +02:00
-
ed2b4c1fae
test: add tests for 1D party position chart
sgeboers
2026-04-02 21:19:23 +02:00
-
95183fec5b
test: update tests for unified SVD label system (Task 7)
sgeboers
2026-04-02 21:08:50 +02:00
-
ba24ad4fe6
feat: auto-compute flip directions for all SVD components (Task 6)
sgeboers
2026-04-02 21:07:46 +02:00
-
bda803089a
feat: add 1D party position charts for SVD components 3-10 (Task 5)
sgeboers
2026-04-02 21:07:11 +02:00
-
5b3cf23d36
refactor: use svd_labels for fallback labels in explorer and axis_classifier (Task 4)
sgeboers
2026-04-02 21:05:30 +02:00
-
36b58ad50d
refactor: use svd_labels module for fallback labels in axis_classifier (Task 3)
sgeboers
2026-04-02 21:02:53 +02:00
-
5b1be26050
refactor: move SVD_THEMES to module level for import (Task 2)
sgeboers
2026-04-02 21:02:03 +02:00
-
a1c3e92fab
docs: add SVD label unification implementation plan
sgeboers
2026-04-02 20:45:44 +02:00
-
bed776f295
docs: add SVD label unification design spec
sgeboers
2026-04-02 20:40:56 +02:00
-
c9c59dd166
feat(diagnostics): enhance trajectory diagnostic script with real data mode
sgeboers
2026-04-01 01:59:41 +02:00
-
7e202e15be
test(trajectory): fix test quality issues
sgeboers
2026-04-01 01:57:59 +02:00
-
8bc43b67fd
test(trajectory): add tests for plot rendering with edge cases
sgeboers
2026-04-01 01:56:04 +02:00
-
31e1dd4371
fix(trajectory): correct import for diagnose_trajectories
sgeboers
2026-04-01 01:51:14 +02:00
-
5cd031777c
fix(trajectory): improve fallback handling and diagnostics when trace_count is 0
sgeboers
2026-04-01 01:49:14 +02:00
-
8e67b89a1d
fix(trajectory): fix division by zero and None handling in name normalization
sgeboers
2026-04-01 01:46:13 +02:00
-
0b79709847
fix(trajectory): normalize MP names to improve party_map matching
sgeboers
2026-04-01 01:43:39 +02:00
-
26bdb4c61c
refactor(trajectory): fix code quality issues in centroid diagnostics
sgeboers
2026-04-01 01:40:40 +02:00
-
7d93753530
fix(trajectory): add diagnostics to compute_party_centroids for NaN detection
sgeboers
2026-04-01 01:35:57 +02:00
-
385a25853c
diagnose(trajectory): add diagnostics to identify why trace_count is 0
sgeboers
2026-04-01 01:31:49 +02:00
-
24796f97d3
test: add trajectory pipeline integration test
sgeboers
2026-03-31 15:08:50 +02:00
-
69208e0bf6
fix: skip second trace loop when helper succeeds to avoid duplicate traces
sgeboers
2026-03-31 15:04:45 +02:00
-
5d1328f824
chore: add TRAJ DEBUG print checkpoints to build_trajectories_tab
sgeboers
2026-03-31 14:55:08 +02:00
-
1a83f0f319
docs: add trajectory plots debugging plan
sgeboers
2026-03-31 02:12:49 +02:00
-
9f98dbae60
Add debug st.info before st.plotly_chart to diagnose invisible chart
sgeboers
2026-03-31 01:49:38 +02:00
-
72d1c20340
Show error and diagnostics when st.plotly_chart fails instead of silent pass
sgeboers
2026-03-31 01:38:30 +02:00
-
baee50f3a5
feat(explorer): extend diagnostic inspector to surface mp samples/counts
sgeboers
2026-03-31 00:28:14 +02:00
-
0f2db0a9be
chore(explorer): add get_debug_trajectories_enabled helper
sgeboers
2026-03-31 00:22:26 +02:00
-
525cd157c0
docs: add diagnose-no-plot-trajectories design (2026-03-30)
sgeboers
2026-03-30 23:57:18 +02:00
-
ce1fc86bcb
docs(design): add fix-missing-trajectories design
sgeboers
2026-03-30 22:24:05 +02:00
-
c059d5d955
Fix compass orientation and simplify CI display
sgeboers
2026-03-30 18:31:39 +02:00
-
b7129b3755
Extract _load_mp_vectors_by_party helper and fix cache key
sgeboers
2026-03-29 23:41:15 +02:00
-
3938eecc53
Add bootstrap CIs to party axis chart with error bars and diamond markers
sgeboers
2026-03-29 23:35:53 +02:00
-
88110b0aaa
Fix update_existing_motions: single write connection and module-level duckdb import
sgeboers
2026-03-29 23:28:40 +02:00
-
be8887f6f8
Add --skip-details, --update-existing flags to download_past_year.py with tests
sgeboers
2026-03-29 23:25:04 +02:00
-
72a8dd2721
Fix RNG re-seeding per party and vectorize bootstrap loop
sgeboers
2026-03-29 23:17:33 +02:00
-
cd8aeec997
Add compute_party_bootstrap_cis() to political_axis.py with tests
sgeboers
2026-03-29 23:13:30 +02:00
-
ef96edf478
Remove stale ad-hoc JSON analysis files
sgeboers
2026-03-29 23:09:37 +02:00
-
10c9b78d16
Add .worktrees/ to .gitignore
sgeboers
2026-03-29 23:08:34 +02:00
-
ff4ce0f9b2
Add design spec for bootstrap CIs and data enrichment
sgeboers
2026-03-29 22:57:36 +02:00
-
db9a61094b
Fix SVD_THEMES after self-review: PC2 label, indicatief markers, accuracy
sgeboers
2026-03-29 21:55:36 +02:00
-
a92315701f
docs: improve SVD axis analysis with corrected methodology, party sizes, and review fixes
sgeboers
2026-03-29 21:48:35 +02:00
-
fd63585fe5
docs: detailed SVD axis analysis with method, findings, doubts and conclusions
sgeboers
2026-03-29 21:30:21 +02:00
-
f96e804b67
update: refresh SVD axis labels based on current parliament motions (2025-2026)
sgeboers
2026-03-29 21:24:14 +02:00
-
fc16664c5e
fix: open DuckDB read_only in trajectory helpers to avoid lock conflict with Streamlit
sgeboers
2026-03-29 21:10:33 +02:00
-
98b2583efd
fix: scree plot now shows true EVR from Procrustes-aligned multi-window SVD
sgeboers
2026-03-29 21:06:51 +02:00
-
e0f17e8b83
Revert "fix: use annual-only windows for SVD to restore EVR (~20% PC1)"
sgeboers
2026-03-29 20:58:49 +02:00
-
ffd8b191ef
fix: use annual-only windows for SVD to restore EVR (~20% PC1)
sgeboers
2026-03-29 20:12:24 +02:00
-
2cca1000ca
refactor: move _render_axis_motions to module level
sgeboers
2026-03-29 19:43:13 +02:00
-
ab9b91e4a8
fix: close duckdb connections safely, swap x/y_axis vectors, fix EVR caption after axis swap
sgeboers
2026-03-29 19:42:22 +02:00
-
ea3c68ece9
refactor: extract _render_axis_motions helper, use literal emoji in expander
sgeboers
2026-03-29 19:37:26 +02:00
-
37300f2c4e
feat: add motion expander to compass tab — shows top motions per axis
sgeboers
2026-03-29 19:34:45 +02:00
-
9d219d63ee
test: add neither-axis-LR edge case + document swap pass-through
sgeboers
2026-03-29 19:33:09 +02:00
-
74b3f10d07
feat: add axis swap — left-right goes on horizontal axis when detected
sgeboers
2026-03-29 19:29:32 +02:00
-
95c5ab9302
fix: generate interpretation string when motion path wins without ideology
sgeboers
2026-03-29 19:26:43 +02:00
-
1ff280e0e3
feat: restructure classify_axes — motion projection as primary label source
sgeboers
2026-03-29 19:20:56 +02:00
-
62daad321e
fix: add outer exception handling to motion helpers in axis_classifier
sgeboers
2026-03-29 19:18:33 +02:00
-
96224be6ee
feat: add motion-loading helpers to axis_classifier
sgeboers
2026-03-29 19:16:57 +02:00
-
1e52a8a8cc
fix: deterministic tie handling and regex matching in _classify_from_titles
sgeboers
2026-03-29 19:15:31 +02:00
-
71e4b68926
fix: correct docstring for _classify_from_titles return value
sgeboers
2026-03-29 15:00:08 +02:00
-
f8d9af7d9d
feat: add _classify_from_titles keyword classifier to axis_classifier
sgeboers
2026-03-29 14:57:19 +02:00
-
6c4dd81723
feat: expose global_mean in compute_2d_axes axes dict
sgeboers
2026-03-29 14:50:05 +02:00
-
93a2287c04
docs: add motion-driven axis labeling implementation plan
sgeboers
2026-03-29 14:36:28 +02:00
-
9dcf6201bb
Add design spec for motion-driven axis labeling
sgeboers
2026-03-29 14:19:54 +02:00
-
392fd3afce
fix: add per-window X-axis orientation correction
sgeboers
2026-03-29 01:15:21 +01:00
-
34c08a40fa
feat: use dynamic axis labels in compass and trajectories UI
sgeboers
2026-03-29 01:04:54 +01:00
-
5ec1f7af75
feat: add axis classifier with party ideology reference data
sgeboers
2026-03-29 01:00:55 +01:00
-
23849c9cb6
docs: add axis classification implementation plan
sgeboers
2026-03-29 00:58:53 +01:00
-
6b811364c5
docs: add deployment note to axis classification spec
sgeboers
2026-03-29 00:53:54 +01:00