-
bb5f2961d1
docs: fix two spec ambiguities in axis classification design
sgeboers
2026-03-29 00:52:11 +01:00
-
bed911b92c
docs: add axis classification design spec
sgeboers
2026-03-29 00:51:34 +01:00
-
50f8a06c6d
fix: connection leak, Rice index excludes absences, per-party motion count guard
sgeboers
2026-03-28 23:50:09 +01:00
-
bcf9407957
feat: add voting discipline section below political compass
sgeboers
2026-03-28 23:45:38 +01:00
-
ab99b7de18
fix: replace sideways Y-axis arrows with proper top/bottom annotations
sgeboers
2026-03-28 23:41:01 +01:00
-
aac8a89118
fix: add missing party justifications in SVD_THEMES axes 3 and 5 explanations
sgeboers
2026-03-28 23:39:24 +01:00
-
b6c2a9bacf
fix: update SVD_THEMES axes 3-5 descriptions to reflect stable multi-year patterns
sgeboers
2026-03-28 23:37:10 +01:00
-
6914b2284a
Add implementation plan for compass UI improvements
sgeboers
2026-03-28 23:33:03 +01:00
-
c5b39ced5f
Add design doc for compass UI improvements (axes 3-5, Y-axis arrows, discipline section)
sgeboers
2026-03-28 23:30:32 +01:00
-
064cd059d4
fix: per-window Y-axis correction for political compass
sgeboers
2026-03-28 22:45:40 +01:00
-
6329d6a256
UI improvements + add axis orientation test
sgeboers
2026-03-28 22:27:39 +01:00
-
72fbe0008e
fix(ansible): add headless and CORS flags for reverse proxy
sgeboers
2026-03-28 22:01:04 +01:00
-
b50ee650de
fix(ansible): create data directory on server before rsync
sgeboers
2026-03-28 21:39:33 +01:00
-
cbab8f080d
fix(ansible): use rsync with checksum for motions.db sync
sgeboers
2026-03-28 21:09:17 +01:00
-
0bd1c08cb2
fix(ansible): ignore pkill errors, add motions.db sync task
sgeboers
2026-03-28 21:04:49 +01:00
-
22067fd162
fix(ansible): use full path for uv binary in shell tasks
sgeboers
2026-03-28 21:02:01 +01:00
-
de6ed29bf7
fix(ansible): use port 222 for Gitea SSH, write SSH config on server
sgeboers
2026-03-28 20:46:57 +01:00
-
13cb746d06
fix(ansible): correct deploy key path to /home/webapps/.ssh/ed25519
sgeboers
2026-03-28 20:39:45 +01:00
-
a4481af8e2
fix(ansible): use webapps deploy key for git clone instead of agent forwarding
sgeboers
2026-03-28 20:33:09 +01:00
-
8579da68bd
fix(ansible): add git.sgeboers.nl to known_hosts before git clone
sgeboers
2026-03-28 20:29:06 +01:00
-
57083e496d
chore(ansible): add ansible.cfg with SSH agent forwarding for private repo access
sgeboers
2026-03-28 20:25:36 +01:00
-
c0d1c59bd7
chore(deploy): rewrite ansible for motief on motief.sgeboers.nl, remove drone
sgeboers
2026-03-28 20:12:36 +01:00
-
35f4667982
chore(secrets): stop tracking .env and add to .gitignore
sgeboers
2026-03-28 20:02:54 +01:00
-
445f0bfb24
feat(ansible-example): add @ansible/example package, tests, CI, publish & deploy workflows, docs and changelog
sgeboers
2026-03-28 20:00:31 +01:00
-
b5c14d0c65
deploy to server
sgeboers
2026-03-26 22:52:11 +01:00
-
c3f74433b2
chore(data): regenerate top SVD motions JSON with party-expanded SVD vectors
sgeboers
2026-03-25 23:49:35 +01:00
-
6cb89126a7
fix(svd): expand party votes to individual MPs before SVD computation
sgeboers
2026-03-25 23:48:55 +01:00
-
a7517bb6ae
fix(svd): use averaged individual MP vectors for party axis scores, fix scree to %, re-add component 4
sgeboers
2026-03-25 23:06:35 +01:00
-
0a2238f2ba
fix(svd): remove component 4 from SVD_THEMES (dim 3 has zero party signal)
sgeboers
2026-03-25 22:56:47 +01:00
-
26acd8b964
fix: scree plot uses party vectors instead of individual MPs
sgeboers
2026-03-25 22:44:57 +01:00
-
559e1adb82
fix(compass): fix annual window detection in get_uniform_dim_windows
sgeboers
2026-03-25 22:41:35 +01:00
-
c386073430
feat(compass): switch to annual SVD windows by default
sgeboers
2026-03-25 22:37:01 +01:00
-
96ea4c5522
feat(compass): fix duplicates, axes, controls, add party/MP toggle
sgeboers
2026-03-25 22:24:05 +01:00
-
cf22ffc093
fix(explorer): fix scree plot data and add bar+line combo chart
sgeboers
2026-03-25 22:11:09 +01:00
-
c5cbc89c1f
feat(explorer): add scree plot and clean up SVD axis chart
sgeboers
2026-03-25 22:03:01 +01:00
-
a20bd834fc
chore(repo): remove stale scripts, caches, and old workflow
sgeboers
2026-03-25 21:37:57 +01:00
-
867fcd1989
feat: recompute SVD for full current parliament (2023-11-22 to 2026-03-17)
sgeboers
2026-03-25 01:16:33 +01:00
-
9daa899885
fix: remove motion title truncation, add SVD JSON generation script
sgeboers
2026-03-25 01:15:42 +01:00
-
49a1f2f67d
fix: correct axis 4 and 5 pole labels and flip orientation in SVD_THEMES
sgeboers
2026-03-25 00:43:18 +01:00
-
361cf9fd35
feat(explorer): SVD tab redesign — pole-split motions, party axis chart, inline expanders with voting
sgeboers
2026-03-25 00:11:37 +01:00
-
9caaa8baca
feat(explorer): finalise SVD tab helper robustness and constants
sgeboers
2026-03-25 00:04:54 +01:00
-
32fe3aed18
feat(explorer): harden _render_party_axis_chart axis bounds and range
sgeboers
2026-03-25 00:01:18 +01:00
-
5e061b0e40
feat(explorer): include CU alias in CURRENT_PARLIAMENT_PARTIES
sgeboers
2026-03-25 00:01:15 +01:00
-
9f3ae15a16
feat(explorer): harden load_party_axis_scores (close DB, deterministic params)
sgeboers
2026-03-25 00:01:12 +01:00
-
fc1884ecd8
feat(explorer): harden SVD tab batch-fetch motion details
sgeboers
2026-03-25 00:00:51 +01:00
-
6b8ec93fe0
feat(explorer): restructure SVD tab — pole-split motions, party axis chart, inline expanders with voting
sgeboers
2026-03-24 23:58:38 +01:00
-
1515661929
feat(explorer): add _render_party_axis_chart helper
sgeboers
2026-03-24 23:57:38 +01:00
-
35dbc8118a
feat(explorer): add load_party_axis_scores helper
sgeboers
2026-03-24 23:56:37 +01:00
-
9f538a8784
feat(explorer): add ChristenUnie colour alias and CURRENT_PARLIAMENT_PARTIES constant
sgeboers
2026-03-24 23:55:48 +01:00
-
-
521385c832
docs: add SVD tab redesign implementation plan
sgeboers
2026-03-24 23:52:54 +01:00
-
8c79aaf917
docs: add SVD tab redesign spec
sgeboers
2026-03-24 23:50:40 +01:00
-
c96c681641
feat(explorer): apply rigorous subagent-produced SVD axis themes
sgeboers
2026-03-24 23:38:50 +01:00
-
b85a9cebd7
fix(data): remove 18 duplicate motions and redo SVD top-motions analysis
sgeboers
2026-03-24 23:29:18 +01:00
-
8b73ab8bce
feat(explorer): add SVD axis themes and unique-motion deduplication
sgeboers
2026-03-24 23:11:51 +01:00
-
e29d8a8055
ci(mindmodel): add scheduled validation workflow
sgeboers
2026-03-24 22:41:43 +01:00
-
2755dc373a
chore(format): add pre-commit and formatter configs
sgeboers
2026-03-24 22:41:40 +01:00
-
c24ab48704
chore(deps): move pytest to dev-dependencies
sgeboers
2026-03-24 22:41:36 +01:00
-
540099f2b7
ci(mindmodel): add report-only mindmodel validation workflow
sgeboers
2026-03-24 22:41:33 +01:00
-
d1faf2b3e4
feat(mindmodel): add CLI wrapper, edge-case tests, and manifest schema tests
sgeboers
2026-03-24 22:41:28 +01:00
-
ed289ff582
chore(mindmodel): add sanitized read-only manifest and reviewer README
sgeboers
2026-03-24 22:41:24 +01:00
-
f091846dc8
feat(mindmodel): add report-only validator skeleton, types, and tests
sgeboers
2026-03-24 22:41:15 +01:00
-
dbd8cc801a
docs(mindmodel): add README and tooling note; chore(tooling): add minimal pre-commit
sgeboers
2026-03-24 21:31:53 +01:00
-
5caebe1331
chore(ci): add mindmodel validator workflow
sgeboers
2026-03-24 21:30:45 +01:00
-
f77875ed54
feat(mindmodel): add CLI wrapper and tests
sgeboers
2026-03-24 21:29:10 +01:00
-
a74e6006f5
feat(mindmodel): add validator and tests
sgeboers
2026-03-24 21:28:17 +01:00
-
7bd7d0d18c
feat(mindmodel): add checks utilities and tests
sgeboers
2026-03-24 21:26:38 +01:00
-
2efd7ba3a0
feat(mindmodel): add manifest loader and tests
sgeboers
2026-03-24 21:24:58 +01:00
-
9c82962d47
chore: add .mindmodel/ project constraints and conventions
sgeboers
2026-03-24 20:51:53 +01:00
-
504400faf2
fix: quiz seed from motions with actual individual MP votes
sgeboers
2026-03-24 20:29:05 +01:00
-
238d9e9ec2
test: add full quiz tab test suite and fix Geen stem normalization
sgeboers
2026-03-24 20:18:20 +01:00
-
eb73275f32
feat(mp-quiz): add MP quiz tab and DB helpers; add design and plan docs
sgeboers
2026-03-24 19:59:25 +01:00
-
b09e580f65
feat: motion content enrichment pipeline hardening
sgeboers
2026-03-23 21:31:39 +01:00
-
aef7c45074
Refactor tests: replace sys.modules hacks with real DI + in-memory DB
sgeboers
2026-03-23 21:21:10 +01:00
-
b7350d8f87
test: rewrite test_database_audit using mem_db fixture, no disk writes required
sgeboers
2026-03-23 21:01:09 +01:00
-
e4f2c7ff59
fix: update integration test to unpack 5-tuple from ensure_text_embeddings
sgeboers
2026-03-23 20:30:35 +01:00
-
ebb663aa8f
docs: add test refactor implementation plan
sgeboers
2026-03-23 20:20:34 +01:00
-
07a89a207c
docs: add test refactor design - replace monkeypatching with DI + in-memory DuckDB
sgeboers
2026-03-23 20:15:29 +01:00
-
ce27dc6ac5
chore(ledgers): record fusion+similarity run summary and JSON details
sgeboers
2026-03-23 17:48:39 +01:00
-
22f53840b8
fix(explorer): normalise party name 'Nieuw Sociaal Contract' -> 'NSC'
sgeboers
2026-03-22 23:13:45 +01:00
-
cbbdc6e738
fix(explorer): cleaner trajectories, NSC support, controversy filter, voting display, URL links
sgeboers
2026-03-22 23:12:43 +01:00
-
cd7bb3b1e0
fix(explorer): filter to uniform-dim windows before PCA to prevent np.vstack shape mismatch
sgeboers
2026-03-22 22:54:54 +01:00
-
2891e9ee70
feat: add StemAtlas Streamlit app, explorer, Docker deployment, blog charts
sgeboers
2026-03-22 22:38:17 +01:00
-
daa22c5e2b
feat: complete parliamentary embedding pipeline with full historical coverage
sgeboers
2026-03-22 16:08:06 +01:00
-
a78bee9b0a
feat(similarity): add precomputed similarity cache, fix fusion N+1, add 429 retry
sgeboers
2026-03-22 03:02:25 +01:00
-
a248807e03
Add design: embedding-based motion similarity cache
sgeboers
2026-03-22 02:39:20 +01:00
-
bf68e48460
fix(analysis): improve PCA handling when PC1 dominates, add pca_residual option and plot autoscaling/variance annotation
sgeboers
2026-03-22 00:13:56 +01:00
-
23a1234314
feat(analysis): add 2D political compass (PCA/anchor) and 2D trajectories + visualizations
sgeboers
2026-03-21 23:58:38 +01:00
-
3551a82f83
feat(analysis): add 2D political compass and 2D trajectories
sgeboers
2026-03-21 23:53:55 +01:00
-
f7d806dc3a
fix(analysis): add Procrustes alignment and normalize vectors for drift computation
sgeboers
2026-03-21 23:37:20 +01:00
-
aa2f66ac9f
feat(analysis): fetch real MP metadata, fix anchor axis for party-level actors
sgeboers
2026-03-21 23:33:47 +01:00
-
5ad83ef1be
fix(tests): update test_extract_mp_votes for party-level actor inclusion
sgeboers
2026-03-21 23:25:27 +01:00
-
847b783877
fix(pipeline): fix API pagination, add skip_details fast path, bulk mp_votes insert
sgeboers
2026-03-21 23:24:06 +01:00
-
f2a831dfcf
feat(pipeline): add orchestrator CLI, analysis modules, and ActorFractie ingestion
sgeboers
2026-03-21 22:40:28 +01:00
-
a36e6cba4e
feat(pipeline): implement parliamentary embedding pipeline MVP
sgeboers
2026-03-21 22:31:22 +01:00
-
c498c3467e
update plan: replace spike with confirmed FractieZetelPersoon fetch task
sgeboers
2026-03-21 22:05:56 +01:00
-
0bbda408fb
plan: parliamentary embedding pipeline MVP implementation plan
sgeboers
2026-03-21 21:57:39 +01:00
-
fd73da3752
design: parliamentary embedding pipeline (late fusion SVD + text)
sgeboers
2026-03-21 21:54:32 +01:00