mirror of
https://github.com/jhd3197/ServerKit.git
synced 2026-10-28 15:47:50 +09:00
test_buildpacks.py asserts on Dockerfile TEXT, which cannot see a bug that only fails at build or boot time -- the `--omit=dev` dead fallback shipped `vite: not found` to a user's deploy. New @docker_builds leg (gated on SERVERKIT_DOCKER_BUILDS=1, sibling of @real_binaries) runs the full path per stack: detect() -> generate_dockerfile() -> `docker build` -> `docker run` -> HTTP 200. Fixtures: vite (the regression), express with no build step (prod-only install must still boot), flask, static. Wired as a backend-ci job beside real-binaries. Writing the flask fixture surfaced the same dead-at-boot class one layer up: detection invents `gunicorn app:app` / `uvicorn main:app` as the start command but never installed the server, so a repo that doesn't declare gunicorn built green and died at boot. The build command now installs the invented server (a no-op when the repo already pins it); Procfile-authored start commands remain the author's contract. All four stacks verified locally: build + boot + HTTP 200 in 53s. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>