Skip to content

v0.9.122

Changes since v0.9.121, including HEAD and the working tree. Generated-file churn and test-only changes are omitted.

Breaking Changes

  • Remove AppKitChildProcess; use exec.spawn() and the child handle’s shutdown(). createGraphitiChildProcess() now returns { child } after readiness succeeds.
  • Replace AppKit and configUtils runtime-detection helpers with environmentUtils.isDatabricksAppEnv() from @dbx-tools/shared-core.
  • Sandbox execution returns a live SshCommand: awaiting it yields the exit code; await .result for the serialized result.
  • Sandbox workloads run as non-sudo sandbox-user, with home /home/sandbox-user, and cannot inherit Databricks credentials. Each machine has one owner; duplicate-assignment migration retains the earliest owner and removes losing owners’ project records.
  • Move project startup and readiness checks into postinstall, and teardown into uninstall; removal/reset no longer automatically invokes stop.

Improvements And Fixes

  • Add selectable, pooled OpenSSH and ssh2 transports, live command output, cancellation, and timeout results.
  • Restore Sandbox service state after app restarts, detect dead services instead of trusting stale readiness markers, and expose bounded service/project lifecycle logs.
  • Accept JSON or TOML project configuration plus first-class setup fields; add default Homebrew and pkgx installation.
  • Expose in-memory Mastra skills through standard skill tools, avoiding redundant remote discovery. Make isolated-vm optional.
  • Consolidate child-process shutdown across Genie, tunnels, and Graphiti; prevent Graphiti’s spurious interrupted-lifespan traceback.
  • Fix Sandbox client routing for custom mounts, improve mobile controls and destructive-action confirmations, and run documentation tooling under Node.

Validation

  • The configured release validation phase completed, as reported. No tests or validation commands were rerun; no validation counts are claimed.