Found while planning #217. The Go-side half of this (stale RepoSlug) is being fixed in #217; this is the release-infra half, which #217 cannot fix.
Bug
.github/workflows/release.yml:133 dispatches the formula update for one tool only:
-f "client_payload[tool]=databricks-claude"
But the tap (IceRhymers/homebrew-tap) carries three formulas: databricks-claude.rb, databricks-codex.rb, databricks-opencode.rb. So since the monorepo fold-in, the codex and opencode formulas are updated by nobody and still track the abandoned pre-monorepo standalone repos.
Symptom
update (and the startup notice) tell Homebrew users to run brew upgrade databricks-codex. That resolves against the stale tap formula and installs the abandoned standalone build — at time of writing databricks-codex standalone is at v2.0.0 while the monorepo is at v1.2.0, so it is an upgrade command that performs a downgrade onto dead code.
#217 fixes the version comparison (RepoSlug now points at the monorepo, so update stops claiming v2.0.0 is available). But the brew upgrade <formula> advice it prints remains wrong until the tap is fixed — the formula, not the check, is what resolves the install.
Fix sketch
Dispatch per-tool. release.yml already builds all four binaries lockstep (make dist over $(BINS), #204), so the formulas should update lockstep too — loop the dispatch over the tool list, or send one payload carrying all of them. Verify the tap's formula-update handler can key off client_payload[tool] for the non-claude formulas.
Also worth deciding: does databricks-agents (the multiplexer, #203) need a formula? It ships alongside the three today and has no tap presence.
Verification
After a release, brew info databricks-codex should report the monorepo version and its URL should point at this repo's release asset.
Found while planning #217. The Go-side half of this (stale
RepoSlug) is being fixed in #217; this is the release-infra half, which #217 cannot fix.Bug
.github/workflows/release.yml:133dispatches the formula update for one tool only:But the tap (
IceRhymers/homebrew-tap) carries three formulas:databricks-claude.rb,databricks-codex.rb,databricks-opencode.rb. So since the monorepo fold-in, the codex and opencode formulas are updated by nobody and still track the abandoned pre-monorepo standalone repos.Symptom
update(and the startup notice) tell Homebrew users to runbrew upgrade databricks-codex. That resolves against the stale tap formula and installs the abandoned standalone build — at time of writingdatabricks-codexstandalone is at v2.0.0 while the monorepo is at v1.2.0, so it is an upgrade command that performs a downgrade onto dead code.#217 fixes the version comparison (RepoSlug now points at the monorepo, so
updatestops claiming v2.0.0 is available). But thebrew upgrade <formula>advice it prints remains wrong until the tap is fixed — the formula, not the check, is what resolves the install.Fix sketch
Dispatch per-tool.
release.ymlalready builds all four binaries lockstep (make distover$(BINS), #204), so the formulas should update lockstep too — loop the dispatch over the tool list, or send one payload carrying all of them. Verify the tap'sformula-updatehandler can key offclient_payload[tool]for the non-claude formulas.Also worth deciding: does
databricks-agents(the multiplexer, #203) need a formula? It ships alongside the three today and has no tap presence.Verification
After a release,
brew info databricks-codexshould report the monorepo version and its URL should point at this repo's release asset.