- add make target test-integration and run it in reusable CI workflow
- add integration unittest covering _page_warnings stderr output + deduplication
- surface Matomo installer warnings during Playwright flow (stderr only)
https://chatgpt.com/share/694c1371-365c-800f-bdf8-ede2e850e648
- Publish images on semantic version tags (vX.Y.Z) as :vX.Y.Z and :latest
- Publish :stable image via workflow_run after successful Stable Tag workflow
- Build stable image from exact commit marked as stable
- Remove duplicate build steps and unify tag computation
https://chatgpt.com/share/694b9758-58fc-800f-a586-8f3a341ece9d
- Run ruff in a dedicated lint job (faster feedback)
- Keep e2e separate and install dependencies only there
- Force Playwright Chromium install to avoid cache-related missing binaries
- Trigger CI on PRs and pushes to main
https://chatgpt.com/share/694ae842-1588-800f-9418-31e7d02ac45e
- Introduce reusable-test workflow for Ruff + E2E tests
- Refactor CI to call reusable workflow (no duplicated steps)
- Add stable-tag workflow to promote version tags to stable after successful tests
https://chatgpt.com/share/694a7f81-d96c-800f-88cb-7b25b4cdfe1a