-
325b897f38
Merge branch 'worktree-landing-backup'
Deeman
2026-02-23 15:01:32 +01:00
-
-
ccf03db9a3
feat: SEO/GEO admin hub — migration, sync module, routes, templates
Deeman
2026-02-23 15:00:36 +01:00
-
76814dade7
feat: landing zone backup to R2 via rclone + Litestream
Deeman
2026-02-23 14:06:16 +01:00
-
-
-
a1faddbed6
feat: Python supervisor + feature flags
Deeman
2026-02-23 13:53:45 +01:00
-
f77ec421e1
chore: add missing gitignore entries for worktrees, duckdb, logs, sqlmesh cache
Deeman
2026-02-23 13:21:14 +01:00
-
49cadf6995
Merge branch 'worktree-sitemap-improvement'
Deeman
2026-02-23 13:15:21 +01:00
-
-
-
-
488e47b4b4
docs: rewrite CMS.md for SSG architecture
Deeman
2026-02-23 13:03:30 +01:00
-
454b362c88
feat: admin email hub — sent log, inbox, compose, audiences, delivery tracking
Deeman
2026-02-23 12:15:34 +01:00
-
1a6eae20d5
feat: pSEO CMS — SSG architecture with git templates + DuckDB
Deeman
2026-02-23 12:51:30 +01:00
-
-
-
-
afd46398af
test: add E2E and unit tests for pSEO CMS flows
Deeman
2026-02-23 12:48:26 +01:00
-
f1181342ad
feat: SSG-inspired pSEO CMS — git templates + DuckDB direct reads
Deeman
2026-02-23 12:25:44 +01:00
-
-
-
cb1f00baf0
test: add live Resend integration tests (delivered@resend.dev)
Deeman
2026-02-23 11:19:26 +01:00
-
aafb3cfc94
test: add e2e tests for all 9 email handlers (54 tests)
Deeman
2026-02-23 11:08:58 +01:00
-
894fd0c719
feat: email design & copy upgrade for all 9 transactional emails
Deeman
2026-02-23 11:00:49 +01:00
-
-
-
7737b79230
fix: DuckDB compat issues in Playtomic pipeline + export_serving
Deeman
2026-02-23 01:27:51 +01:00
-
a055660cd2
fix: replace broken bbox pagination with global page-based extraction
Deeman
2026-02-23 01:16:35 +01:00
-
4e8d94de47
feat: email i18n + Resend audience restructuring
Deeman
2026-02-23 01:06:03 +01:00
-
13c86ebf84
Merge branch 'worktree-extraction-overhaul'
Deeman
2026-02-23 01:01:26 +01:00
-
-
343808a276
fix: move Markets to demand side of nav + translate mobile sections
Deeman
2026-02-23 00:57:51 +01:00
-
79f7fc6fad
feat: Playtomic pricing/occupancy pipeline + email i18n + audience restructure
Deeman
2026-02-23 00:54:53 +01:00
-
9aa8a796e5
Merge branch 'worktree-sitemap-improvement'
Deeman
2026-02-23 00:39:38 +01:00
-
-
-
-
5b6c4182f7
fix: sort imports in remaining test files (ruff I001)
Deeman
2026-02-22 23:22:51 +01:00
-
6f81ffbc45
fix: sort imports in test files (ruff I001)
Deeman
2026-02-22 23:19:19 +01:00
-
e270d54f62
feat: sitemap hreflang alternates, caching, and lastmod cleanup
Deeman
2026-02-22 23:13:32 +01:00
-
0521e89d7c
fix: CI test failure — skip WeasyPrint tests when native libs unavailable
Deeman
2026-02-22 23:07:04 +01:00
-
-
76695f3902
feat: admin scenario PDF download + business plan export tests
Deeman
2026-02-22 21:27:32 +01:00
-
cac3b3b324
docs: reorganize research docs + add project tracker and marketing strategy
Deeman
2026-02-22 21:27:23 +01:00
-
5a1bb21624
fix: eurostat JSON-stat parsing + staging model corrections
Deeman
2026-02-22 20:52:25 +01:00
-
-
c25e20f83a
fix: playtomic pagination stale-page exit + calculator test assertions
Deeman
2026-02-22 20:06:48 +01:00
-
2db66efe77
feat: migrate transform to 3-layer architecture with per-layer schemas
Deeman
2026-02-22 19:04:40 +01:00
-
53e9bbd66b
feat: restructure extraction to one file per source
Deeman
2026-02-22 18:56:41 +01:00
-
ea86940b78
feat: copier update v0.9.0 → v0.10.0
Deeman
2026-02-22 17:50:36 +01:00
-
59306d5a90
Merge branch 'worktree-planner-mobile-redesign'
Deeman
2026-02-22 17:08:10 +01:00
-
-
a36aef7116
fix(planner): mobile polish — z-index fixes, sidebar alignment, table layout, German i18n
Deeman
2026-02-22 17:07:31 +01:00
-
3b08a845e2
Merge branch 'worktree-opaque-tokens'
Deeman
2026-02-22 17:06:32 +01:00
-
-
815fb7d98a
feat: replace sequential IDs with opaque tokens in public URLs
Deeman
2026-02-22 17:03:13 +01:00
-
18ee24818b
feat: copier update v0.9.0 — extraction docs, state tracking, architecture guides
Deeman
2026-02-22 15:44:48 +01:00
-
37caf3db66
feat(planner): mobile-first redesign with bottom nav, collapsible sections, CTA bar
Deeman
2026-02-22 15:26:55 +01:00
-
-
b76e87a0b6
fix: add missing copier toggle flags to answers file
Deeman
2026-02-22 15:04:33 +01:00
-
-
35fe934fec
fix: dashboard quote link points to quote wizard instead of suppliers page
Deeman
2026-02-22 14:41:51 +01:00
-
156cd43a14
fix(deploy): restore router config to current slot before health check
Deeman
2026-02-22 14:22:22 +01:00
-
e88c514376
fix(deploy): add --profile to blue-app log dump
Deeman
2026-02-22 14:12:34 +01:00
-
13c264ca75
fix(deploy): split log dump by service, revert litestream to latest
Deeman
2026-02-22 14:01:32 +01:00
-
ad5e2516c4
fix(infra): pin litestream to v0.5.8 for R2 compatibility
Deeman
2026-02-22 13:49:02 +01:00
-
044dfd836b
fix(deps): add duckdb to padelnomics production dependencies
Deeman
2026-02-22 13:43:34 +01:00
-
5f7e8f1200
fix(deploy): move router config write to after health check passes
Deeman
2026-02-22 13:22:50 +01:00
-
e39eaefb43
fix(deploy): dump app container logs on health check failure
Deeman
2026-02-22 13:12:26 +01:00
-
95888dedb9
fix(leads): fix undefined lang variable in quote validation error path
Deeman
2026-02-22 13:04:36 +01:00
-
6e1e6b0484
fix(tests): fix all 10 e2e test failures
Deeman
2026-02-22 11:42:54 +01:00
-
2521ba61b6
fix(test): correct article slug in test_article_url_and_title
Deeman
2026-02-22 10:48:43 +01:00
-
ff31d35782
fix(ci): update paths after repo flatten
Deeman
2026-02-22 10:42:10 +01:00
-
625c089284
fix: post-flatten dev scripts, lead form validation, copy improvements
Deeman
2026-02-22 10:29:59 +01:00
-
22ad855c70
fix(deploy): update docker-compose.prod.yml paths after repo flatten
Deeman
2026-02-22 01:17:47 +01:00
-
80b2148108
refactor: flatten padelnomics/padelnomics/ → repo root
Deeman
2026-02-22 00:49:37 +01:00
-
-
4ae00b35d1
refactor: flatten padelnomics/padelnomics/ → repo root
Deeman
2026-02-22 00:44:40 +01:00
-
-
5e471567b9
feat(seo): expand city coverage to 40 cities + DuckDB refresh script
Deeman
2026-02-22 00:02:13 +01:00
-
-
f958f1e816
feat(seo): expand city coverage to 40 cities + DuckDB refresh script
Deeman
2026-02-22 00:01:37 +01:00
-
-
3710665f45
feat(planner): wire DuckDB analytics + market-data endpoint
Deeman
2026-02-21 23:42:51 +01:00
-
-
a2de1a0206
feat(planner): wire DuckDB analytics + market-data endpoint
Deeman
2026-02-21 23:26:06 +01:00
-
-
47db8c2418
feat(sqlmesh): merge 4-layer DuckDB pipeline
Deeman
2026-02-21 22:08:50 +01:00
-
-
9f8ca82505
feat(sqlmesh): add transform workspace member with 4-layer DuckDB pipeline
Deeman
2026-02-21 22:03:59 +01:00
-
-
b8471c7f31
feat(daas): merge extraction pipelines (Overpass, Eurostat, Playtomic)
Deeman
2026-02-21 21:48:26 +01:00
-
-
af09597930
feat(daas): add extract workspace member with Overpass, Eurostat, Playtomic extractors
Deeman
2026-02-21 21:38:55 +01:00
-
-
f18e788fc7
Merge feat/flatten-padelnomics: UV workspace monorepo structure
Deeman
2026-02-21 17:51:47 +01:00
-
-
8221174683
feat(structure): flatten padelnomics to UV workspace monorepo layout
Deeman
2026-02-21 17:51:14 +01:00
-
-
7325fc905f
docs: market research enhancement + data sources inventory
Deeman
2026-02-21 15:51:42 +01:00
-
9b23ab712c
Merge branch 'currency-by-country'
Deeman
2026-02-21 01:53:28 +01:00
-
-
5662a7dce3
feat(planner): currency formatting by country (UK=£, US=$, EU=€)
Deeman
2026-02-21 01:51:46 +01:00
-
-
0b4f2f2180
fix(merge): resolve conflict in bake_scenario_cards — pass lang + t(lang)
Deeman
2026-02-21 01:41:39 +01:00
-
-
ceee85caba
feat(content): programmatic SEO seed script + lang bug fixes
Deeman
2026-02-21 01:38:33 +01:00
-
9a71396524
fix(copy): honest data privacy claim, simplify quote CTA buttons
Deeman
2026-02-21 01:33:03 +01:00
-
2b0798c768
merge(i18n): i18n-foundation — complete i18n for all pages (Iterations 4–5)
Deeman
2026-02-21 01:29:12 +01:00
-
-
-
-
420a2f063b
feat(i18n): translate all auth-gated pages (Iteration 5)
Deeman
2026-02-21 01:24:22 +01:00
-
7485bdffad
feat(seo): add Google site verification meta tag
Deeman
2026-02-21 01:18:13 +01:00
-
8174b7f0c0
refactor(i18n): Phase 4 — eliminate ad-hoc features_de and is_en patterns
Deeman
2026-02-21 00:34:00 +01:00
-
7c440a209a
refactor(i18n): Batch 6 — eliminate {% if lang %} blocks in public templates
Deeman
2026-02-21 00:29:08 +01:00
-
798ade2bc3
refactor(i18n): Batch 5 — eliminate {% if lang %} blocks in planner templates
Deeman
2026-02-21 00:13:32 +01:00
-
43905b343b
refactor(i18n): Batch 4 — eliminate {% if lang %} blocks in suppliers templates
Deeman
2026-02-21 00:08:25 +01:00
-
dd6f73a7a2
refactor(i18n): Batch 3 — eliminate {% if lang %} blocks in directory templates
Deeman
2026-02-20 23:50:06 +01:00
-
5c99b1bf44
refactor(i18n): Batch 2 — eliminate {% if lang %} blocks in leads templates
Deeman
2026-02-20 23:41:52 +01:00
-
84df11aee7
refactor(i18n): Batch 1 — eliminate {% if lang %} blocks in content templates
Deeman
2026-02-20 23:29:30 +01:00
-
8732f5a5e0
feat(i18n): add tformat Jinja2 filter for parameterized translations
Deeman
2026-02-20 23:22:49 +01:00
-
9957b27a77
refactor(i18n): extract translations to JSON locale files
Deeman
2026-02-20 23:21:59 +01:00
-
-
7b1914839f
feat(i18n): translate suppliers page, fix nav labels, Businessplan copy
Deeman
2026-02-20 21:53:41 +01:00
-
24f528a157
feat(feedback): pill button, umami ID capture, contact field, migration
Deeman
2026-02-20 21:10:02 +01:00
-
23bed0d5f9
feat(iteration-2): i18n, UX & quote flow improvements
Deeman
2026-02-20 20:56:14 +01:00
-
696581d57b
fix(planner): charts, wizard footer layout, tooltip translations & summary label
Deeman
2026-02-20 19:11:24 +01:00
-
7c710ada6b
refactor(planner): HTMX server-render refactor — eliminate JS SPA
Deeman
2026-02-20 17:12:28 +01:00
-
e6f4c0a540
copy(de): Sie→Du overhaul, terminology & directory SEO copy
Deeman
2026-02-20 16:15:07 +01:00
-
9d1d42f6db
feat: complete German translation of all public-facing content
Deeman
2026-02-20 14:45:03 +01:00
-
-
e66a55a8db
fix: nav mobile layout + container width alignment
Deeman
2026-02-20 14:44:53 +01:00
-
ddbdc00a3d
feat: complete German translation of all public-facing content
Deeman
2026-02-20 14:42:31 +01:00
-
3c903bad97
fix: planner quote button — use lang-prefixed URL to prevent 404
Deeman
2026-02-20 14:13:44 +01:00
-
48587d6436
feat: responsive nav — hamburger menu + wider container (900px breakpoint)
Deeman
2026-02-20 14:04:56 +01:00
-
-
32f29c53ec
fix: improve German nav labels
Deeman
2026-02-20 13:39:57 +01:00
-
0b0fc7ef50
fix: ADMIN_EMAIL -> ADMIN_EMAILS in CI .env heredoc
Deeman
2026-02-20 13:32:25 +01:00
-
86c4ebf25d
fix: add missing env vars to CI .env heredoc
Deeman
2026-02-20 13:10:48 +01:00
-
358bc5c02f
fix: use kill -0 1 for litestream healthcheck
Deeman
2026-02-20 13:08:00 +01:00
-
76fc19c183
fix: litestream healthcheck gate + 1yr retention
Deeman
2026-02-20 13:00:29 +01:00
-
b0f36192a6
fix: litestream single replica + disable healthcheck gate
Deeman
2026-02-20 12:54:19 +01:00