Skip to content

Releases: discobox-ai/discobox

v0.19.0-rc.3

v0.19.0-rc.3 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 26 Oct 19:57

What's Changed

Full Changelog: v0.19.0-rc.2...v0.19.0-rc.3

v0.19.0-rc.2

v0.19.0-rc.2 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 23 Oct 18:37

v0.19.0-rc.1

v0.19.0-rc.1 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 23 Oct 14:04

What's Changed

  • feat: a terminal's status is what its program reports over OSC 7501 by @ibuildthecloud in #240
  • pi telemetry off; omp's judge answers with thinking off, proven at configure by @ibuildthecloud in #241
  • feat: a discobox sleeps and wakes on its own request (ADR 26-10-16-337) by @ibuildthecloud in #243
  • feat(console): color a pull request's status tag, not its whole row by @ibuildthecloud in #252
  • fix(harness/claude-code): start sandboxes past the auto-mode offer by @ibuildthecloud in #251
  • docs(adr): propose 26-10-16-423, a harness is a provisioning bundle by @ibuildthecloud in #253
  • docs(adr): accept 26-10-16-423 and mark what it supersedes by @ibuildthecloud in #272
  • feat: a project may route a provider's API through a gateway by @ibuildthecloud in #248
  • feat(cli): paste images into a discobox, and dictation through Ctrl-V by @ibuildthecloud in #273
  • feat(sandbox-agent): fold runc, ca-anchor, power and docker into the agent by @ibuildthecloud in #275
  • feat(sandbox-agent): provision runner for a feature's idempotent typed steps by @ibuildthecloud in #277
  • feat: .discobox/settings.json replaces sources.json and project.json by @ibuildthecloud in #276
  • build: delete the boxd.yaml image twins by @ibuildthecloud in #278
  • feat(boot): delete a conflicting account instead of renaming it by @ibuildthecloud in #274
  • docs(adr): propose 26-10-20-782, access is granted as a policy decided at the network boundary by @ibuildthecloud in #279
  • feat(sandbox-agent): work on boxes that are not containers by @ibuildthecloud in #281
  • feat: features — opt-out, adoption, async provisioning and provision.json by @ibuildthecloud in #292
  • feat: a grant carries a policy — model, validation, storage, API and variables by @ibuildthecloud in #293
  • docs(adr): accept 26-10-20-782 and mark what it supersedes by @ibuildthecloud in #291
  • feat: a Docker pool freezes a sleeping sandbox, and a person can suspend one by @ibuildthecloud in #300
  • feat(cli/console): one memory per machine, and the last source leads by @ibuildthecloud in #304
  • feat(policy): statements as sentences, parsed and formatted without loss by @ibuildthecloud in #303
  • feat: build the sandbox-agent and harness images from feature definitions by @ibuildthecloud in #302
  • feat: a discobox is shown its primary source and variables while it writes a policy by @ibuildthecloud in #308
  • feat: a harness is a FROM scratch bundle, registered on the platform's by @ibuildthecloud in #309
  • feat: render a credential policy for approval, and delegate policies within a delegation by @ibuildthecloud in #307
  • feat(judge): judge a grant's commands and requests against its policy by @ibuildthecloud in #311
  • feat(cli): lead the window title with the box's status on a terminal without OSC 7501 by @ibuildthecloud in #313
  • feat(access): write a policy as sentences, and show it back as sentences by @ibuildthecloud in #316
  • feat(server): serve bundles to pools by blob by @ibuildthecloud in #315
  • feat(dockerworker): the Docker driver owns a Debian sandbox base image by @ibuildthecloud in #310
  • fix: keep a sandbox's proxy record across a container replacement, and restore it on start by @ibuildthecloud in #319
  • feat(secrets): an approval rule is a policy a request's policy must fall within by @ibuildthecloud in #322
  • feat: serve a sandbox its pinned bundles at assets.discobox.internal by @ibuildthecloud in #323
  • docs(adr): a discobox has a files API that acts as its user by @ibuildthecloud in #326
  • feat(sandbox-agent): end discobox-review with a review card by @ibuildthecloud in #327
  • feat(dev): build bundles without a Docker image store (#267) by @ibuildthecloud in #320
  • refactor: move shared root-module packages under pkg/ by @ibuildthecloud in #329
  • feat(tui): offer repair on any box but an archived one by @ibuildthecloud in #330
  • feat(server): keep server.yaml's project gateways on their projects by @ibuildthecloud in #324
  • feat: a pool delivers a box its platform, and the agent provisions it (#266) by @ibuildthecloud in #331
  • feat: a discobox has a files API that acts as its user by @ibuildthecloud in #328
  • feat(server): retire server.yaml's defaultSandboxImage with a warning by @ibuildthecloud in #333
  • feat(secrets): every grant an agent takes carries a policy by @ibuildthecloud in #332

Full Changelog: v0.18.0...v0.19.0-rc.1

v0.18.0

Choose a tag to compare

@github-actions github-actions released this 16 Oct 00:42

What's Changed

Full Changelog: v0.17.0...v0.18.0

v0.17.0

Choose a tag to compare

@github-actions github-actions released this 15 Oct 15:15

What's Changed

  • feat(cli): every create asks where it is cut from, on one card by @ibuildthecloud in #197
  • feat: --skills takes a Git repository, linked so edits can be pushed back by @ibuildthecloud in #198
  • feat: approval rules answer credential requests (ADR 26-10-12-330) by @ibuildthecloud in #174
  • feat(judge): tell the judge who is asking, from the control plane's record by @ibuildthecloud in #199
  • feat(tui): light ready and blocked boxes in the list and the workspace header by @ibuildthecloud in #200
  • fix(test): bake the keep stub's toggle into the image label by @ibuildthecloud in #207
  • ci: commit-keyed caches, one go test across modules, darwin lints only darwin's packages by @ibuildthecloud in #208
  • fix(pool-agent): bind the fake upstream's TCP port first and retry any UDP refusal by @ibuildthecloud in #209
  • feat(console): open on the first discobox, and in the prompt only when there is none by @ibuildthecloud in #206
  • refactor: delete dead code, and fail CI on new dead code with check:deadcode by @ibuildthecloud in #215
  • feat(access): discobox-access audit reads the sandbox's own egress record by @ibuildthecloud in #210
  • fix(server): answer accepted intent without reading after the commit by @ibuildthecloud in #214
  • fix(sandbox-agent): replace an exec's runtime file whole, never in place by @ibuildthecloud in #212
  • fix(server): a delegated grant ends no later than its delegation by @ibuildthecloud in #213
  • fix: a pool create outlasts the pool agent being replaced under it by @ibuildthecloud in #216
  • feat: a project names skills repositories every discobox is created with by @ibuildthecloud in #211
  • feat: a discobox acts on any discobox in its project, and the judge decides which by @ibuildthecloud in #217
  • fix(proxy): never send a sentinel the control plane could not resolve by @ibuildthecloud in #218
  • feat(sandbox-agent): boot a container with systemd as PID 1 by @ibuildthecloud in #219
  • feat(access): ask for credentials one use per job, its lines spelled out by @ibuildthecloud in #220
  • feat(harness): add omp (oh-my-pi) as an included harness by @ibuildthecloud in #223
  • feat: a secret may carry routes that every swap of it must fall on by @ibuildthecloud in #222
  • feat(sandbox-agent): have reviewers read REVIEW.md notes and authors write them by @ibuildthecloud in #225
  • feat(console): draw a pull request's files changed in discobox-review's window by @ibuildthecloud in #227
  • feat(harness): run opencode 2 in the opencode harness by @ibuildthecloud in #231

Full Changelog: v0.16.0...v0.17.0

v0.16.0

v0.16.0 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 14 Oct 15:32

What's Changed

  • feat(skills): run a repository's own reviewers in parallel in discobox-review by @ibuildthecloud in #157
  • test(sandboxes): backdate the attach-wait fixture's pool report by @ibuildthecloud in #158
  • feat(cli): client.yaml defaults for discobox new's skills by @ibuildthecloud in #142
  • fix(harness): tell Claude Code the discobox terminal takes hyperlinks by @ibuildthecloud in #165
  • fix(tui): every card fits the window, with its answers on it by @ibuildthecloud in #164
  • chore(skills): move the verify skill to .agents/skills by @ibuildthecloud in #167
  • feat(tui): open a discobox's pull request as a workspace tab, and merge it by @ibuildthecloud in #163
  • docs(adr): propose 26-10-12-330 (approval rules) and 26-10-12-669 (Jev confident refusals) by @ibuildthecloud in #168
  • feat: deliver every source into a per-remote Git cache on its pool by @ibuildthecloud in #166
  • build: bump Go to 1.27.1 by @ibuildthecloud in #176
  • fix(server): refuse a provider type that cannot resolve, and leave no row by @ibuildthecloud in #117
  • docs(adr): boxd runs the ordinary pool agent; the Docker-free one is for native hosts by @ibuildthecloud in #177
  • feat: a discobox has a name that sticks, and discobox rename sets it by @ibuildthecloud in #170
  • feat(cli): discobox new names the discobox it made when it exits by @ibuildthecloud in #179
  • feat: read a stopped discobox from what it last posted by @ibuildthecloud in #173
  • feat: repair a failed discobox with no container once, when it is used by @ibuildthecloud in #171
  • fix(cli): give the autolaunched server the shell's config file and XDG dirs by @ibuildthecloud in #181
  • feat(judge): Jev's confident refusal is final, and only what it is unsure of goes on by @ibuildthecloud in #172
  • feat(cli): draw a discobox under the discobox that created it by @ibuildthecloud in #185
  • feat(skills): orchestrate-issues triages one box per issue under a max concurrency by @ibuildthecloud in #183
  • feat(sandbox-agent): have every reviewer approve, on a discobox-review that keeps an approval each by @ibuildthecloud in #187
  • feat: a harness names the requests whose refusal means its login is dead by @ibuildthecloud in #189
  • fix(tui): stopping the launcher's wait stops the attach under it by @ibuildthecloud in #184
  • feat(cli): group the console's folders by GitHub repository, not by server by @ibuildthecloud in #190
  • feat(tui): say how old the listing is once it stops keeping up by @ibuildthecloud in #191
  • docs(skills): drop Copilot review from the delivery skills by @ibuildthecloud in #193
  • feat(cli): list every discobox, and scope no command to a directory by @ibuildthecloud in #192
  • fix(sandbox-agent): give each discobox its own nix daemon socket by @ibuildthecloud in #195
  • fix(server): the server's private keys are its user's alone on Windows by @ibuildthecloud in #188
  • fix: secret grants and open requests die with their box; console hides expired grants by @ibuildthecloud in #196

Full Changelog: v0.15.0...v0.16.0

v0.15.0

Choose a tag to compare

@github-actions github-actions released this 12 Oct 15:22

What's Changed

Full Changelog: v0.14.0...v0.15.0

v0.14.0

Choose a tag to compare

@github-actions github-actions released this 09 Oct 15:02
886357d

What's Changed

  • feat(pool-agent): reach a sandbox through a dialer the runtime supplies, not a container IP by @ibuildthecloud in #77
  • feat(sandbox-agent): an observation seam for ports, resource counters and idle stop by @ibuildthecloud in #83
  • feat(sandbox-agent): take one revisioned runtime-config document from the pool by @ibuildthecloud in #79
  • feat(layout): resolve state against a root the pool's shape picks by @ibuildthecloud in #80
  • feat(sandbox-agent): a run-identity seam for a sandbox with one account by @ibuildthecloud in #87
  • fix(pool-agent): explicit power on a sandbox with no container says why by @ibuildthecloud in #92
  • fix(secrets): approve under a delegation that holds the uses by @ibuildthecloud in #89
  • feat(proxy/bridge): dial the pool through wire, not hard-coded TCP by @ibuildthecloud in #84
  • feat(pool-agent): serve a live local origin over Git HTTP, fetch-only with a ref allow-list by @ibuildthecloud in #81
  • feat(server): record a platform on harness configs, sandboxes and pools, and place only on a match by @ibuildthecloud in #82
  • refactor(pool-agent): Serve is handed a sandboxruntime.Runtime and calls nothing else by @ibuildthecloud in #78
  • feat(execs): a sandbox without systemd supervises its own shims by @ibuildthecloud in #90
  • feat(cli): top-level discobox start, stop, and restart by @ibuildthecloud in #91
  • feat: judge sandbox paths by the sandbox's platform, and let new pick its pool by @ibuildthecloud in #94
  • fix(proxy): drop hop-by-hop request headers before forwarding by @ibuildthecloud in #95
  • feat(sandbox-agent): serve the worktree Git endpoint; the pool forwards to it by @ibuildthecloud in #96
  • feat: read the harness manifest from an overlay file, and declare what a platform has by @ibuildthecloud in #98
  • feat(sandbox-agent): clone and converge the sandbox's own sources from an origin URL by @ibuildthecloud in #97
  • feat: the pool drives the runtime-config intake and stages nothing into sandboxes by @ibuildthecloud in #99
  • feat: discobox tag sets and removes a discobox's tags from outside it by @ibuildthecloud in #102
  • proxy: renew client certificates while a sandbox runs by @ibuildthecloud in #103
  • feat(pool-agent): stop running git in sandbox checkouts and drop the origin bind by @ibuildthecloud in #104
  • fix(pool-agent): keep a sandbox request alive so a refusal is heard by @ibuildthecloud in #110
  • fix: a configure command runs once, and the stub-harness Bats suites run on a clean checkout by @ibuildthecloud in #116
  • docs(adr): 26-10-09-106, disco-vm is a pool runtime and the server runs its machines by @ibuildthecloud in #109
  • fix(peers): keep store.ErrNotFound behind DeletePeer's 404 by @ibuildthecloud in #113
  • fix(pools): a superseded pool reconcile settles instead of backing off by @ibuildthecloud in #114
  • feat(server): place by an image kind beside the platform by @ibuildthecloud in #131
  • docs(adr): 26-10-09-143, a VM sandbox starts its agent when its bootstrap arrives by @ibuildthecloud in #105

Full Changelog: v0.13.0...v0.14.0

v0.13.0

Choose a tag to compare

@github-actions github-actions released this 03 Oct 17:14

Full Changelog: v0.12.0...v0.13.0

v0.12.0

Choose a tag to compare

@github-actions github-actions released this 28 Sep 06:06

What's Changed

  • fix(proxy): relay 304, 204, and HEAD responses without a body by @ibuildthecloud in #73
  • fix(proxy): hold tunneled requests to the CONNECT host, upgrade plaintext :443 by @ibuildthecloud in #76

Full Changelog: v0.11.0...v0.12.0