Skip to main content

Milestones

How the platform was built, in shipped increments. Full detail lives in docs/milestones.md in the repository.

M1 — Foundation

The core loop: upload → resolve → build → deploy. Config engine with five-layer template merging, Application/Release CRDs, the operator, the REST API, S3 platform configuration, PostgreSQL history/audit, the BuildKit builder, Helm chart, and tests.

M1.5 — Developer experience

Validate-before-deploy (/v1/validate), published JSON Schema, did you mean suggestions, build logs on failed releases, ?wait=true streaming, content-addressed build reuse, per-app BuildKit registry cache, config diffs on upload, preview environments with TTL garbage collection, auto-rollback, deploy notifications, reusable CI steps, and YAML shorthands.

M2 — Secrets, traffic, supply chain

External Secrets Operator integration with rotation, ingress-enforced OIDC/JWT/oauth2-proxy authentication from platform middleware definitions, Gateway API (HTTPRoute) support, and cosign-verified artifact uploads with per-tenant signing policies.

M3 — Scale and insight

Shared BuildKit pool with persistent layer cache, cluster-wide build queueing, cosign image signing plus SLSA provenance at push, release garbage collection with retention, KEDA autoscaling triggers, OpenTelemetry tracing across API → operator → build pod, and the web console.

M4 — Progressive delivery

Canary releases (staged edge-weighted traffic, promote/abort) and blue/green (color tracks with instant Service-selector cutover and instant rollback), built directly on the immutable-Release pointer model.

M5 — Metric-gated canaries

Prometheus analysis gates from the platform's S3 library judge every canary step on real error-rate/latency metrics; failing gates hold, exhausted budgets abort and revert with the failing gate named.

M6 — Python and Go runtimes

runtime: python and runtime: go join Node under the same explicit rules — mandatory start command and port, no manifest inspection. Runtime-specific Dockerfile generation, distroless Go images shipping only the compiled binary, and fastapi / go-api templates.

Backlog

Multi-cluster deployment targets · additional metrics backends.