Releases: burrow-cloud/burrow
Releases · burrow-cloud/burrow
Release list
v0.11.0
Changelog
- 5363218: feat(mcp): make the agent target environments explicitly and never auto-switch (#224) (@incognick)
- b4a7b8c: docs(adr): ADR-0047 agent environment safety (Accepted), and the v0.11 plan (#225) (@incognick)
- 2489398: feat(mcp): refuse an implicit mutating target when environments are ambiguous (ADR-0047) (#226) (@incognick)
- c41c7bd: docs: record the sub-agent coding workflow in CLAUDE.md (#227) (@incognick)
- 9333b61: feat(controlplane): refuse an implicit mutating target when environments are ambiguous (ADR-0047) (#228) (@incognick)
- febc9f0: feat(cli): add burrow env remove to drop a local environment handle (#229) (@incognick)
- 7f9f0e2: feat(mcp): name the other environments when a target is unreachable (ADR-0047) (#230) (@incognick)
- 7c202e6: feat(mcp): echo the environment on read-only tools and correct the routing contract (ADR-0047) (#231) (@incognick)
- a7d118d: docs: record v0.11 (agent environment safety) shipped (#232) (@incognick)
v0.10.0
Changelog
- 32de05b: docs(adr): ADR-0045 the OSS/enterprise boundary and its seams (#207) (@incognick)
- 294c0d0: refactor(cli): extract the control-plane transport into an explicit interface (ADR-0045) (#218) (@incognick)
- c8d7a7d: refactor(cli,mcp): share the control-plane transport across both binaries (ADR-0045) (#219) (@incognick)
- c8284c4: feat(client): send X-Burrow-Client-Version on every control-plane request (ADR-0039) (#220) (@incognick)
- 56d925c: feat(controlplane): burrowd reads the client-version handshake (ADR-0039) (#221) (@incognick)
- 2ecbf34: feat(controlplane): record the acting client version in the audit log (ADR-0039) (#222) (@incognick)
- 03d49c2: docs: record v0.10 (version-skew handshake and the transport seam) (#223) (@incognick)
v0.9.0
Changelog
- da2efb8: docs(adr): ADR-0046 registry onboarding (Proposed) — code-provider registry first, in-cluster subdomain for the no-cost self-hoster (#216) (@incognick)
- b8a38b3: docs: mark v0.8 and v0.9 shipped across README, PLAN, and ROADMAP (#217) (@incognick)
v0.9.0-rc.3
Changelog
- 5c7b4eb: fix(burrowd): bound each database-wait attempt so startup retries fast (#213) (@incognick)
- e7004e6: feat(cli): fold env scan into
env list --discover(#214) (@incognick) - 6f0d078: feat(cluster): bootstrap RAM preflight sets a 2GB minimum with a memory breakdown (#215) (@incognick)
v0.9.0-rc.2
Changelog
- 6fa4a74: feat(cluster): confirm before bootstrap turns the machine into a cluster node (#206) (@incognick)
- 4cd7702: fix(cluster): bootstrap waits for the k3s API instead of trusting the installer exit (#208) (@incognick)
- 13d6720: feat(cli): app logs prints the source note and context above the logs (#209) (@incognick)
- 9200abe: feat(cluster): bootstrap preflights RAM and steers away from undersized boxes (#210) (@incognick)
- 30fd332: fix(cluster): ingress install frames servicelb/MetalLB LoadBalancers as free, not billable (#211) (@incognick)
- f5f4bfe: feat(controlplane): lean Postgres config and memory limits for small clusters (#212) (@incognick)
v0.9.0-rc.1
Changelog
- 8e7ab20: feat(capabilities): detect servicelb and MetalLB as LoadBalancer providers (#201) (@incognick)
- 74a6820: docs(adr): ADR-0044 provision a single-VPS k3s cluster (Proposed) (#199) (@incognick)
- 5961f92: feat(cli): burrow join lands admin and scoped creds from a bootstrap token (#202) (@incognick)
- a262093: feat(cluster): burrow cluster bootstrap turns a bare VPS into a Burrow cluster (#203) (@incognick)
- c35410d: feat(vps): curl | sh bootstrap script that installs burrow and runs cluster bootstrap (#204) (@incognick)
- 4170901: release: mark rc tags as GitHub pre-releases (#205) (@incognick)
v0.8.0
Changelog
- 52fe1fc: docs(adr): ADR-0038 scoped agent credential (#157) (@incognick)
- 313471a: feat(app): autoscaling via HorizontalPodAutoscaler (v0.8) (#153) (@incognick)
- 5b2bfc7: fix(upgrade): preserve the add-on namespace when re-rendering manifests (#158) (@incognick)
- 2ccba8d: fix(upgrade): wait for the new revision to roll out before reporting ready (#159) (@incognick)
- 2661352: feat(guardrails): gate deploys with a configurable app.deploy guardrail (#160) (@incognick)
- 39e1eb4: feat(deploy): guide the agent to configure a private registry (#161) (@incognick)
- d8e4609: fix(deploy): correct the registry command path in agent and user guidance (#162) (@incognick)
- d8a3a55: fix(cli): drop Kubernetes namespace jargon from registry output (#163) (@incognick)
- d020b82: feat(cli): mark ready and success output with a green check (#166) (@incognick)
- 6051931: feat(deploy): guide durable registry credentials and versioned image tags (#167) (@incognick)
- dc0a399: feat(deploy): roll the workload on every deploy via a release annotation (#168) (@incognick)
- 5732d90: chore(release): tell users to restart their agent session after a brew upgrade (#165) (@incognick)
- ee04f47: docs(adr): ADR-0039 CLI and control-plane version skew (#164) (@incognick)
- 128a303: feat(env): make the unknown-environment error actionable (#169) (@incognick)
- 4a41e2d: docs(readme): add the v0.8 changelog row (in progress) (#170) (@incognick)
- 0401af1: feat(registry): prompt for the token instead of requiring it on the command line (#171) (@incognick)
- b8d6627: feat(deploy): stop resolving images in the control plane (ADR-0040) (#173) (@incognick)
- 3dfc26b: docs(adr): ADR-0040 burrowd never contacts the registry (#172) (@incognick)
- 0916676: fix(deploy): preserve the replica count and defer to the autoscaler (#174) (@incognick)
- b995097: feat(mcp): add an opt-in --deny-kubectl to the Claude hardening (#175) (@incognick)
- 80aa675: feat(expose): report missing TLS/DNS prerequisites as actionable guidance (#176) (@incognick)
- b42cc64: feat(install): mint a scoped burrow-agent credential (ADR-0038 phase 1) (#178) (@incognick)
- 61e8f35: test(e2e): make grep -q checks pipefail-safe (#177) (@incognick)
- 2950ea5: feat(mcp): use the scoped agent kubeconfig for the operate path (ADR-0038 phase 2) (#179) (@incognick)
- 7af1a51: feat(install): join an existing install and backfill the agent credential (ADR-0038 phase 3) (#180) (@incognick)
- 83969a3: feat(audit): record the acting principal (ADR-0038 phase 4) (#181) (@incognick)
- 834a830: feat(mcp): fail closed when the scoped agent credential is missing (#182) (@incognick)
- 59c9e79: docs(hardening): add the trust-surfaces table (#183) (@incognick)
- f9abd7f: feat(cluster): gate ingress install behind --approve and explain the SPOF tradeoff (#184) (@incognick)
- 428cae1: feat(expose): guide the agent on ingress cost and DNS provider setup (#185) (@incognick)
- c69c74b: docs(readme): add "Build it, then fix it" and de-dup the day-two answer bullet (#186) (@incognick)
- 8ebb762: feat(mcp): add server instructions so the agent gets oriented at connect (#187) (@incognick)
- bc81757: docs(adr): ADR-0041 a flatter path to a reachable app (#188) (@incognick)
- 8bf5324: fix(capabilities): require a running ingress controller, not just an IngressClass (#189) (@incognick)
- 95d00fd: docs(adr): ADR-0042 use the cluster's existing ingress controller (#190) (@incognick)
- 35550d9: feat(cluster): require --approve only for the billable ingress path (#191) (@incognick)
- d8697be: fix(cluster): install adopts an orphan IngressClass instead of skipping (#192) (@incognick)
- 4507620: test(e2e): a LoadBalancer Service gets an external IP on k3d (servicelb) (#193) (@incognick)
- a9b0412: docs(adr): ADR-0043 public reachability is a LoadBalancer, not NodePort (#195) (@incognick)
- 745c32e: feat(mcp): steer public exposure to a LoadBalancer, stop suggesting NodePort (#194) (@incognick)
- 837f1d6: ci: pre-import a smaller Postgres image and widen burrowd's db-wait to kill the exit-75 flake (#196) (@incognick)
- 367b07a: feat(mcp): run human credential steps in the user's own terminal, not via "!" (#197) (@incognick)
- b37747c: feat(cluster): cleaner sectioned output for ingress install (#198) (@incognick)
- 4720869: docs(readme): mark v0.8.0 shipped and add the live burrow-cloud.dev link (#200) (@incognick)
v0.7.3
Changelog
- 294be42: feat(mcp): deny the burrow CLI in Claude Code on install (#154) (@incognick)
- 4c828e0: feat(mcp): teach burrow_deploy the build-and-push flow (#155) (@incognick)
- 5e184db: feat(cli): burrow version checks the latest release and flags an outdated control plane (#156) (@incognick)
v0.7.2
Changelog
- 0a10a9b: docs: record v0.7.1 (agent onboarding, kubectl-style help, one-command add-on install) (#151) (@incognick)
- 4427b12: docs(readme): sell-focused rewrite (talk-to-agent, how-it-works, day-two) (#152) (@incognick)
v0.7.1
Changelog
- 0f10f97: feat(cli): first-run help and install-status listing (v0.7.1) (#146) (@incognick)
- d9a7c00: docs(readme): add the Burrow mascot as a centered hero image (#147) (@incognick)
- 9945307: feat(addon): one-command install with per-add-on RBAC self-heal (#148) (@incognick)
- 4e71391: feat(cli): kubectl-style help layout and copy (#149) (@incognick)
- 8e7264b: feat(cli): burrow mcp agent onboarding and install progress (#150) (@incognick)