Releases: cocoonstack/sandbox-operator
Releases · cocoonstack/sandbox-operator
Release list
v0.1.5
Changelog
- 72100bf A Get by name finds a sandbox on any replica before its node republishes (#36)
- 1cbcb32 Depend on kubernetes-sigs/agent-sandbox instead of carrying a copy (#28)
- 7f49523 Fork children are recorded in the parent's namespace and the Kubernetes result carries their token (#41)
- 1a4fadb Org upkeep (.github#1): lint baseline, Go 1.27.1, tool pins, core v0.1.5, JSON logs off a terminal (#44)
- 006a2bb build: bump distroless/static-debian13 from
1c2c046toe2e927e(#20) - 68b4c39 build: bump distroless/static-debian13 in /deploy/loadgen (#21)
- 76bb875 build: bump docker/build-push-action from 7.3.0 to 7.4.0 (#24)
- 13399e7 build: bump docker/setup-buildx-action from 4.3.0 to 4.4.0 (#22)
- d739c47 build: bump docker/setup-buildx-action from 4.4.0 to 4.4.1 (#31)
- ca2e557 build: bump docker/setup-qemu-action from 4.2.0 to 4.3.0
- 20831a0 build: bump docker/setup-qemu-action from 4.3.0 to 4.4.0 (#23)
- 990e7a2 build: bump golang from 1.27.0 to 1.27.1
- ba3a479 build: bump golang from
512690atof44f6e8(#19) - e1b22b6 build: bump golang from
f44f6e8to3680233(#30) - 56e256d build: config drift left behind by the upstream import
- 0719d33 cut: LOC-justify round after the whole-repo review (#27)
- a1c078d e2b: /v2 create and connect, refused v2 options, one namespace per API key, connect returns the node-held token (#38)
- f5f20d9 feat: reads find a sandbox before its node republishes inventory (#34)
- 422389b final review and clean up (#37)
- 34fd93c fix: a list or watch pinned to one name agrees with Get before the node publishes (#46)
- d14d801 fix: end a watch-list stream's initial events with the initial-events-end bookmark (#45)
- d8e087c logging: migrate both binaries to projecteru2/core/log (#43)
- 48bb08f perf: a watch pinned to one name polls only the node that holds its entry (#48)
- a20e33f review & refactor (#25)
- 40c09dc review: claim-id index for claims and fork children; comment budget and log levels (#49)
- 75de148 review: cmp.Or for zero-value fallbacks
- c19a6f1 review: exit on a lost warm-pool lease, docs sync, comment budget, deps refresh (#42)
- da684b1 review: inline three single-use forwarders (#18)
- 5eb160c review: one scheme builder and one namespace helper for the bench harnesses (#14)
- 5e01e10 scale: the claim node-pick reads the inventory cache without copying (#39)
- 30bbb86 startedAt is the claim time the node publishes (#32)
v0.1.4
Changelog
- 9b3a533 Hygiene: comment budget, shared request helpers, dead client verbs, two fixes (#13)
- b827032 build: bump sandbox modules to v0.1.9
- 7f77e27 fix: report the granted lease as endAt; drop dead reconcile work (#9)
- 1f70187 review: comment budget and named func types in pkg/scale and controllers (#12)
- 1422588 review: leaf packages for the name hash and the sandboxd client (#10)
- 7403461 review: one typed sync.Map, one ready-reason test, dead reconciler field
- 086d8ea review: whole-repo round — owning-node index, cache-fed warm pool, scoped informers, indexed queue (#11)
v0.1.3
v0.1.2
Changelog
v0.1.1
Changelog
- 83cb237 build: bump sandbox/sdk/go to v0.1.5
- e89fcfb fix: restore the SSA inventory applier vk-sandbox consumes (#4)
- 0ef7022 perf: hot-path round — event amplification, fan-out, and per-request costs (#2)
- b30ebc7 review: exported-above-unexported layout pass; tighten comments to the /code budget
- 01300e2 review: hoist free helpers and pre-type aux blocks below the reconciler method sets
- 87e3263 review: loc-justify cuts — unwired SSA applier, impossible cross-namespace requeue, queue removal dedup
- f3dc7e9 review: partition declarations so the layout gate passes (#3)
- a4a8a8f review: second comment pass — delete restating section labels and label-list narration
v0.1.0
Changelog
- 4c5e383 add sandbox-sdk-loadgen: persistent-client create-latency benchmark
- f4cc273 adopt the workspace lint config and decompose operator startup
- 18d8f65 align docs and helm defaults with the benchmarked configuration
- cdc80e4 align repo conventions to the workspace standard
- afb2ac7 apiserver: document warm-pool-sync-interval as the warm-count sampling period
- fdcae05 apiserver: register Sandbox OpenAPI model to fix managedFields error
- 3d53f4b back off the aggregated watch while the fleet is quiet
- 6ad73a5 chore: stop tracking local benchmark binaries
- 2b8fdcd ci: dual-GOOS vet/lint matrix and tagged-harness type-check
- 4ccfd89 ci: publish multi-arch images to GHCR on release
- 91c8f7f clear the remaining lint findings
- 0e86db3 cut per-claim HTTP handshakes, spread bursts, and drop a claim write
- 670f6f4 cut: drop the unreachable ambiguous-404 guard in OrphanReconciler
- a703b60 dashboard: add claim-latency quantile lines (p50/p95/p99) beside heatmap
- 93eba81 dashboard: disable the 剩余 query instead of hiding its series
- aea42ea dashboard: hide 剩余 series by default in the total/available panel
- 7ccaf7b dashboard: render pool=0 instead of freezing on the last value
- 9791323 decompose reconcilePod and reconcileService
- 33beff3 decompose updatePodMetadata into map primitives
- 1c7b01c deploy: sandbox-sdk-loadgen image + manifest (replicas 0)
- 6f60941 deps: track sandbox protocol/wire v0.1.3
- 62e5ec8 docs+scaffold: decentralized scaling design (L1/L2/L3) + L2/L3 interfaces
- a3cb14e drop the cocoon- prefix from the sandbox naming family
- d101159 e2b-compatible API + sandbox lifecycle verbs (pause/resume/fork/snapshot) (#1)
- 408b6ea exclude rest.Creater from misspell
- 94ee046 fix three regressions the closed-loop review found
- e46d041 grafana(hot-sandbox): 5s resolution + per-node warm dot matrix
- 6188e3a init: agents.x-k8s.io sandbox operator with vk-cocoon microVM runtime
- 30f1964 license: correct AGPL-3.0 statements and drop misapplied file headers
- fe09776 lint: unify vet/lint over the shared GOOSES loop
- d6f3fbe loadgen: add create-wave/delete-all cycle mode for soak testing
- 6480b8c loadgen: drop sandbox watch (OOM at scale), add concurrency+total flags
- 2f927fd loadgen: drop the dead served flag from the claim wait loop
- c8d3ae1 loadgen: event-accurate sandbox watch metrics + hot-sandbox dashboard
- b87efd2 loadgen: measure create-to-exec end to end via the sandbox Go SDK
- 8c40aee loadgen: prune sandbox watch cache to metadata-only
- 26d5247 loadgen: require bounded --total, confirm every release, fail loud on leaks
- d8622e4 make the SA1019 exclusion comment tell the truth again
- c4fd345 move lifecycle deep-dive into docs, fix a dead PERFORMANCE.md link
- c90be09 operator: count warm-pool sandbox creations; two-tab dashboard
- 37614d8 patch the claim itself on flush and stage only the two keys it owns
- a897be5 pin sandbox modules to released versions and add goreleaser release
- 898a199 podruntime: add sandboxd runtime routing to vk-cocoon-sandbox
- 7fce6a9 rename apiserver image to sandbox-apiserver
- 101a213 rename apiserver in-cluster and process identities to sandbox-apiserver
- 0c71cfe rename: cocoon-sandbox-operator -> sandbox-operator
- d1392ea restore the claim-worker default to 50
- cb77918 retire the deprecated pre-rename label constants
- 7a38633 retire the legacy sandbox.cocoonstack.io/v1 direct-sandboxd layer
- c6ca757 review: bench and e2e harnesses create one root context and propagate it
- 1dc6d9a review: context hygiene across indexers, the metrics collector, and the e2e harness
- 8e424b4 review: repo-wide audit round — comments, modern Go, dedup, layout
- 803497d review: single top-level const/var block, test helpers below tests
- 659a3d7 review: tests use t.Context() instead of context.Background()
- b66ab28 review: tighten comments added in the context sweep
- df54f60 say what the survival check actually proves
- dd03010 scale: carry the sandboxd claim id through inventory so Delete releases the right VM
- 5f38f35 scale: drive official SandboxWarmPool onto node-local pools (control-plane warm capacity)
- 63c96ce scale: implement L1/L2/L3 decentralized scaling and full-stack e2e
- 0c9150d scale: productionize the L3 aggregated apiserver
- 0ee5719 scale: send the claim_ref when claiming a warm sandbox for a Create
- 0dba430 scale: surface the per-sandbox exec token on claimed Sandboxes
- 6720c07 scale: writable L3 aggregation — Create=node-local claim, no etcd per-sandbox
- fb83661 split the claim reconciler's three oversized functions
- 6dfab8b stop treating any resourceVersion bump as proof the annotations landed
- 29b5483 stop writing the pre-rename pod-template-hash label
- 55f915b use the toolchain's sorting, ranging and WaitGroup helpers
- c9598f2 warmpool: aggregate targets by key + route driver logs through klog
- 391593c warmpool: make the driver event-driven (watch), not a 20s poll
- d4fcdfa warmpool: sample fleet warm every 5s from PUT responses