hugo
5b21dcb17d
fix: A1-9 replace native color input with 17-preset colour picker popover + custom hex
2026-05-29 09:28:57 +02:00
hugo
1f645f6e5e
fix: stabilize atom-leak test by checking specific keys instead of global atom count
2026-05-29 09:19:13 +02:00
hugo
99d36e6e2f
fix: A1-8 add Liquid/Lua validation gates before template and script publish
2026-05-29 09:16:07 +02:00
hugo
d7e30b94cb
chore: cleanup of tmp files for test
2026-05-28 22:48:48 +02:00
hugo
f1265ee326
fix: broken CSS for metadata diff
2026-05-28 22:41:57 +02:00
hugo
c5e09e7316
fix: A1-7 implement 4-level template lookup cascade (post→tag→category→default)
2026-05-28 22:38:35 +02:00
hugo
1ae6152da7
fix: A1-15 add PreviewDraftOverlay and GenerationPublishedOnly invariants to specs
2026-05-28 22:27:08 +02:00
hugo
0305d80051
fix: A1-6 preview prefers draft content over published files for on-demand rendering
2026-05-28 22:24:07 +02:00
hugo
a021fc45cd
chore: ignore tmp/ folder
2026-05-28 22:21:47 +02:00
hugo
fceb995c7c
chore: update allium spec for clearer wording towards embedding model
2026-05-28 22:21:36 +02:00
hugo
e58d68e73e
fix: A1-6 implement on-demand rendering in preview server per spec
2026-05-28 22:20:39 +02:00
hugo
0f30221907
fix: A1-5 implement post editor auto-save after 3000ms idle, on tab switch, and on unmount
2026-05-28 21:45:42 +02:00
hugo
d423b6db98
chore: claude md and gitignore for tmp
2026-05-28 21:41:37 +02:00
hugo
3adb4407a0
chore: removed tmp/
2026-05-28 21:41:21 +02:00
hugo
05923f255b
fix: A1-4 omit doNotTranslate from frontmatter when false per spec
2026-05-28 21:36:10 +02:00
hugo
ff89d78ab4
fix: A1-3 publish_post deletes old file when post path changes
2026-05-28 21:15:58 +02:00
hugo
e2c92cb90d
fix: A1-2 delete translation files from disk when parent post is deleted
2026-05-28 18:47:27 +02:00
hugo
82ce445c44
fix: A1-1 implement archived→draft/published transitions, wire archive/unarchive into post editor quick actions, complete all i18n translations
2026-05-28 18:39:52 +02:00
hugo
f99e139fa5
feat: added a gallery quick action and fleshed out builtin macros
2026-05-28 17:19:49 +02:00
hugo
1914b05f39
chore: tend to allium spec to align with code
2026-05-28 13:36:55 +02:00
hugo
b09b14cc03
fix: fixes to rendering in the AI chat
2026-05-28 11:21:03 +02:00
hugo
721b1ae626
fix: styling for a2ui surfaces was missing
2026-05-28 11:03:22 +02:00
hugo
f7a4a9512c
fix: persist a2ui surfaces in the database for chats to re-hydrate on
...
opening an old chat, unless manually dismissed
2026-05-27 20:13:33 +02:00
hugo
141c2bfc89
removed fixed codesmell document
2026-05-27 19:20:43 +02:00
hugo
a5ac74db91
fix(style): add missing @impl true to all handle_call clauses in Publishing GenServer (CSM-036)
2026-05-27 19:19:50 +02:00
hugo
beca4d992f
fix(docs): document UILocale process-dict invariant and add enforcement tests (CSM-035)
2026-05-27 19:16:42 +02:00
hugo
9e6d93a4b3
fix(safety): replace File.read! with File.read and error-tuple handling in preview_assets and templates (CSM-034)
2026-05-27 19:10:13 +02:00
hugo
e29dfb490a
fix(perf): replace Enum.each + individual inserts with preloaded keys and batch upsert in embeddings (CSM-033)
2026-05-27 19:03:21 +02:00
hugo
f2b340ba86
fix(style): replace Map.get with dot access and pattern matching where keys are guaranteed (CSM-032)
2026-05-27 18:33:42 +02:00
hugo
d18e0ef7f2
fix(rendering): replace inline try/rescue with with-chains and safe_liquex_render helpers (CSM-031)
2026-05-27 18:12:23 +02:00
hugo
2d796cee83
updated specgaps for A3-1
2026-05-27 17:56:19 +02:00
hugo
b052d59376
fix(fs): handle File.mkdir_p errors and remove bang variants in sidecars and release packaging (CSM-030)
2026-05-11 20:25:06 +02:00
hugo
4a089b0856
fix(perf): bind length/1 to variables before loop bodies in route paths and sidebar (CSM-029)
2026-05-11 20:18:56 +02:00
hugo
2632649cdc
fix(rendering): replace raising read_template_file with try_read in macro templates (CSM-028)
2026-05-11 20:09:49 +02:00
hugo
782511d523
fix(templates): replace equality check with pattern matching in rewrite_template_file (CSM-027)
2026-05-11 20:06:15 +02:00
hugo
1cb59d7a78
chore: update the spec gaps with decisionm points
2026-05-11 12:19:16 +02:00
hugo
9844f3555a
chore: analyse specs against code
2026-05-11 11:56:34 +02:00
hugo and Claude Opus 4.6
99dc1c2216
chore: remove redundant export-only tests, add test audit procedure
...
Deleted chat_editor_test.exs and import_editor_test.exs which only
checked function_exported?/Code.ensure_loaded? without exercising any
behavior — both components are already tested via LiveView rendering
in shell_live_test.exs and import_shell_live_test.exs respectively.
Added TESTAUDIT.md documenting the procedure for periodic test suite
audits to catch non-behavioral tests.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-05-11 10:35:24 +02:00
hugo
71fb99af16
chore: unit tests adaption to idea of gate test
2026-05-11 10:21:00 +02:00
hugo
0808b27057
chore: moved from delay-based tests to deterministic gated server tests
...
for chat
2026-05-11 10:20:46 +02:00
hugo
ac4f5a3580
fix: eliminate TOCTOU race in template file system by reading directly instead of checking existence (CSM-026)
2026-05-11 09:26:54 +02:00
hugo and Claude Opus 4.6
43a435f35d
fix: derive pagefind language prefixes from project settings (CSM-025)
...
Replace hardcoded ["de/", "fr/", "it/", "es/"] with prefixes computed
from plan.blog_languages, so arbitrary language codes work correctly.
Also mark CSM-024 as fixed (done in CSM-005).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-05-11 09:19:31 +02:00
hugo and Claude Opus 4.6
7b383d31ab
fix: decompose monolithic functions into focused helpers (CSM-023)
...
Break up SRP violations in Templates.do_update_template/2 and
Capabilities.for_project/2 by extracting domain-specific builder
functions and single-responsibility private helpers.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-05-11 09:15:48 +02:00
hugo
09df925e9b
chore: allow git push
2026-05-11 09:10:08 +02:00
hugo and Claude Opus 4.6
a4ecbabc21
fix: return error tuples instead of silent {:ok, ""} in execute_macro (CSM-022)
...
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-05-11 09:07:44 +02:00
hugo and Claude Opus 4.6
2be43ca06d
fix: replace cond blocks with pattern matching and case (CSM-021)
...
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-05-11 09:04:56 +02:00
hugo
d231f42363
chore: allowed git add and ecto migrate
2026-05-10 12:37:24 +02:00
hugo and Claude Opus 4.6
7c00279b9d
fix: flatten nested case blocks with with chains (CSM-020)
...
Replace deeply nested case expressions with flat with chains in
import_definitions, publishing, and templates modules. Also replaced
Repo.update!() with Repo.update() in the publishing update_job handler.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-05-10 12:36:42 +02:00
hugo and Claude Opus 4.6
b6f9cf58e1
fix: add @spec to all public functions across 24 modules (CSM-019)
...
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-05-10 11:40:42 +02:00
hugo and Claude Opus 4.6
3f77488e33
fix: add @moduledoc to all public modules (CSM-018)
...
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-05-10 11:30:08 +02:00
hugo
5c17751d55
fix: fixed CSM-017
2026-05-09 17:33:51 +02:00
hugo
e4452ca504
chore: unit tests for CSM-016
2026-05-09 17:18:43 +02:00
hugo
ce80f28e60
fix: fix CSM-016 for real (previous commit was 015)
2026-05-09 17:18:32 +02:00
hugo
f1de11a205
fix: fixed CSM-016
2026-05-09 16:57:59 +02:00
hugo
ff219fd110
chore: unit test for csm-014
2026-05-09 16:38:18 +02:00
hugo
de7ea12c9c
fix: fixed CSM-014
2026-05-09 16:38:00 +02:00
hugo
1beffe6b07
chore: unit test for csm-013
2026-05-09 15:10:24 +02:00
hugo
999632dbe7
fix: fixed CSM-013
2026-05-09 15:10:04 +02:00
hugo
44b88056e3
fix: fix CSM-012
2026-05-09 15:04:10 +02:00
hugo
35b3818d58
chore: unit test for CSM-011
2026-05-09 14:52:48 +02:00
hugo
37db52c024
fix: fixed CSM-011
2026-05-09 14:52:29 +02:00
hugo
f1445120fc
fix: fix CSM-010
2026-05-09 14:31:44 +02:00
hugo
14dfbd8829
fix: fixed CSM-009
2026-05-09 14:22:56 +02:00
hugo
24e9e9a022
fix: fixed CSM-008
2026-05-09 14:17:32 +02:00
hugo
88c689ee55
fix: fixed CSM-007
2026-05-09 10:41:28 +02:00
hugo
e5429f7265
fix: implement CSM-006
2026-05-08 20:39:50 +02:00
hugo
93a4159c31
fix: fix CSM-006
2026-05-08 20:26:08 +02:00
hugo
06d80e2924
fix: tests for CSM-005
2026-05-08 20:09:18 +02:00
hugo
291dff697c
fix: fix CSM-005
2026-05-08 20:09:02 +02:00
hugo
9944b70ab1
fix: fixed CSM-004
2026-05-08 19:52:59 +02:00
hugo
723b8c6433
fix: worked on CSM-003
2026-05-07 21:49:59 +02:00
hugo
92334256cf
fix: fix CSM-002
2026-05-07 16:52:53 +02:00
hugo
d3f45ba0dd
fix: CSM-001 done
2026-05-06 19:33:54 +02:00
hugo
3ce6010b87
updated codesmell file with new analysis
2026-05-06 18:48:00 +02:00
hugo
f704aba288
chore: added a new code smell todo
2026-05-05 20:44:58 +02:00
hugo
5282fcd241
chore: update docs
2026-05-04 13:11:23 +02:00
hugo
7756d9f83c
feat: last gaps on tailwind migration
2026-05-04 13:00:42 +02:00
hugo
4ab0bc7b4e
feat: gaps in tailwind migration closed
2026-05-04 12:27:07 +02:00
hugo
eca89e51d2
feat: phase 5 of tailwind migration
2026-05-04 12:02:13 +02:00
hugo
8e715eec8b
feat: phase 4 of tailwind migration
2026-05-04 11:39:31 +02:00
hugo
35017f9793
feat: p hase 3 of tailwind migration
2026-05-04 11:12:17 +02:00
hugo and Copilot
b17e9cc3f8
feat: rework of the full CSS machine to tailwind and modular CSS
...
Co-authored-by: Copilot <copilot@github.com >
2026-05-04 10:15:01 +02:00
hugo
6b6c985187
fix: better styling for docs
2026-05-04 07:01:43 +02:00
hugo
cb46b45cda
feat: added doc rendering
2026-05-04 06:47:28 +02:00
hugo
43a4610ce7
chore: noise in tests
2026-05-04 06:18:06 +02:00
hugo
4de8492c4f
feat: complete change to gettext from homebrew i18n solution
2026-05-03 22:28:25 +02:00
hugo
4bee8cf1db
fix: proper menu translation
2026-05-03 19:31:26 +02:00
hugo
dbb93a66f6
chore: moved a bunch of bridges out of the ShellLive module into its own
...
module
2026-05-03 19:09:24 +02:00
hugo
483c13aaa3
chore: more of the overlay and sidebar stuff
2026-05-03 18:56:10 +02:00
hugo
f3d8fbcbdc
chore: moved more code out of ShellLive into their own files
2026-05-03 18:54:32 +02:00
hugo
c16afa4c00
chore: switched MiscEditor to LiveComponent
2026-05-03 18:21:48 +02:00
hugo
0f193929da
chore: converted import editor to LiveComponent
2026-05-03 17:57:43 +02:00
hugo
fa76cdf11d
chore: converted ai chat to a live component
2026-05-03 17:20:52 +02:00
hugo
98243cbd16
feat: some more work on completing AI translation features
2026-05-03 15:32:54 +02:00
hugo
657ed58e80
fix: provide target language for AI suggestions
2026-05-03 14:50:20 +02:00
hugo
556f33711f
fix: fixed media quick actions usage for images
2026-05-03 14:24:59 +02:00
hugo
5bc2b4a338
chore: convert media to live component
2026-05-03 13:09:27 +02:00
hugo
9f17954ce3
overlay for post suggestions uses AI now
2026-05-03 12:42:03 +02:00
hugo
b9797809aa
fix: metadata and excerpt collapsible
2026-05-03 11:38:14 +02:00
hugo
4fee1a6333
chore: converted post editor to live component
2026-05-03 11:32:43 +02:00