Docker layer caching on the runner was reusing old layers even when source code changed, resulting in images with outdated code.
Builds and pushes docker images on every push to dev branch. Tags based on latest main release: e.g. v1.2.3.dev0, v1.2.3.dev5. No tests — fast feedback loop for testing.