merge: resolve conflicts, keep ruff style fixes #29
ci.yml
on: push
docker smoke — path gate
6s
core floor (numpy-only, Python 3.9)
26s
build + install wheel
20s
Matrix: test + lint (full offline stack)
docker build + health smoke
1m 55s