Add docker/scheduler.Dockerfile (distroless, static Rust binary, linux/amd64 + linux/arm64) and a publish workflow alongside the existing per-SDK ones.
The binary carries no language runtime, so one image serves Python, Node and Java apps. glibc and musl variants are unnecessary for a static build.
Version must come from the root Cargo.toml [workspace.package] and be covered by scripts/version.mjs so --check gates it in CI, matching the single-version rule.
Done when the image builds in CI for both architectures and --version matches version.mjs. Plan: tasks/executor-attach.md.
Add
docker/scheduler.Dockerfile(distroless, static Rust binary, linux/amd64 + linux/arm64) and a publish workflow alongside the existing per-SDK ones.The binary carries no language runtime, so one image serves Python, Node and Java apps. glibc and musl variants are unnecessary for a static build.
Version must come from the root
Cargo.toml[workspace.package]and be covered byscripts/version.mjsso--checkgates it in CI, matching the single-version rule.Done when the image builds in CI for both architectures and
--versionmatchesversion.mjs. Plan:tasks/executor-attach.md.