Skip to content

Release Caracal

Caracal release artifacts use CalVer product versions and package versions defined in release.config.json.

SurfaceSource
Product versionrelease.config.json product version, currently 2026.06.25-rc.1.
Runtime binaryapps/runtime/dist/caracal-*.
ContainersAPI, STS, Gateway, Audit, Coordinator, Control, Postgres, Redis, Runtime.
Helminfra/helm/caracal.
npm packagesPublic @caracalai/* packages from release.config.json.
PyPI packagesPublic caracalai-* packages from release.config.json.

Runtime release builds compile Linux x64/arm64, macOS x64/arm64, and Windows x64 binaries through Bun compile scripts.

Go-based service container builds preserve debug information by default and honor native build arguments passed to Docker: CGO_ENABLED, CC, CFLAGS, CXX, CXXFLAGS, LDFLAGS, GOFLAGS, GO_BUILDFLAGS, and GO_LDFLAGS. The Dockerfiles add -mod=readonly and -trimpath; pass linker options through GO_LDFLAGS for diagnostic or release-specific builds.

StageCommand pattern
RC preparescripts/release.sh rc prepare --base-version <YYYY.MM.DD> --suffix rc.1
RC dry runscripts/release.sh rc dry-run --base-version <YYYY.MM.DD> --suffix rc.1 --local
Stable dry runscripts/release.sh stable --dry-run
Stable publishscripts/release.sh stable

Protected GitHub workflows publish npm and PyPI packages. Local stable publishing requires explicit approval and environment override.

Only public @caracalai/* packages under packages/ are released through Changesets. Internal-only packages must stay in the Changesets ignore list.

Do not delete published tags. Roll forward with a new CalVer tag. Pinned v<calver> tags are immutable; floating monthly tags move with the new cut.