Extract formatting and lint checks into a new lint stage using the
prebuilt golangci/golangci-lint:v2.1.6 image. This eliminates the
need to compile golangci-lint from source on every build, providing
faster feedback on lint failures.
- Add lint stage (AS lint) using prebuilt golangci-lint image
- Move fmt-check and lint targets to the lint stage
- Keep test + build in the builder stage
- Add COPY --from=lint dependency so BuildKit runs lint before build
- Remove go install of golangci-lint from builder stage
closes #27