My laptop was the scheduler: moving scheduled jobs to GitHub Actions, from design to the first runs

How I moved monthly data refreshes, audits and a daily AI review off a laptop that was often closed, onto GitHub Actions: measuring access first, secrets that never pass through the assistant, one lock and a tested calendar, state kept in git, and the risk review that should have come before the merge.

Continue Reading →

CKEditor 5 migration from v26 to v47.3: lessons learned from the field

Between January and September 2026, I led the upgrade of an editorial application’s rich-text editor from CKEditor 5 v26 to v47.3: about 55 in-house plugins, 53 sub-PRs and 683 files. Here is what we learned, from the bare-editor strategy to the bugs only real typing revealed, the AI tooling that made it repeatable, and the two CKEditor issues it led to.

Continue Reading →