Skip to content

Commit 2e3e239

Browse files
ci(.github/workflows): move engine install to databricks/databricks-bot-engine@76a6e590 (#538)
## What Two related changes to all four bot workflows: 1. **Install the engine from the org repo.** Repoint from the personal `eric-wang-1990/databricks-bot-engine` to `databricks/databricks-bot-engine`, pinned to **`ENGINE_REF: 76a6e5902b217606b72a9476636df0d761260846`** (initial org import, extracted from `databricks/databricks-driver-test@898d020e`). 2. **Run on the peco-driver self-hosted runner.** `runs-on: [self-hosted, Linux, X64, peco-driver]` (was `ubuntu-latest`). The install pulls from a **private** org repo and the tests hit the live endpoint, so the job must run on a runner with access to the internal `databricks` network/org — the same runner adbc's reyden nightly uses. Resolves the "VERIFY: pick a protected/self-hosted runner" placeholders. ## Why The canonical published engine moved from a personal repo to the org repo. `76a6e590` includes the reviewer fix this PR originally carried (review-phase `max_turns` 20→100 + explicit out-of-turns failure, fixing the reviewer death on #536) plus current hub `main`. ## Secret The existing `BOT_ENGINE_PAT` reads the org repo (confirmed) — no secret change needed. It just has to be reachable from the peco-driver runner. ## Verify After merge, re-run the reviewer on **#536** — it should complete with `max_turns=100` (or fail with the explicit cap message). This pull request and its description were written by Isaac.
1 parent d29a06a commit 2e3e239

4 files changed

Lines changed: 15 additions & 15 deletions

File tree

.github/workflows/engineer-bot-followup.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ jobs:
9797
&& !startsWith(github.event.sender.login, 'peco-engineer-bot')
9898
)
9999
)
100-
runs-on: ubuntu-latest # VERIFY: a protected/self-hosted runner if the fix-verification tests need a warehouse
100+
runs-on: [self-hosted, Linux, X64, peco-driver]
101101
# 55 min: the App installation token expires at 60; PRs with many threads need headroom
102102
# (the agent pushes fixes + posts replies at the END of the run).
103103
timeout-minutes: 55
@@ -198,13 +198,13 @@ jobs:
198198
# repo cuts one). claude-agent-sdk / @anthropic-ai/claude-code are left
199199
# unpinned to match the hub (databricks-driver-test); pin them to exact
200200
# versions here if you want full reproducibility.
201-
ENGINE_REF: 7e36703f5cae56a3db12fd25620735315fc4c506
201+
ENGINE_REF: 76a6e5902b217606b72a9476636df0d761260846
202202
run: |
203203
set -euo pipefail
204204
: "${ENGINE_REF:?pin the engine to a tag/SHA before activation (refusing @main)}"
205205
python -m pip install --upgrade pip
206206
# Drop the `x-access-token:${ENGINE_PAT}@` prefix once the engine repo is public; ENGINE_REF stays pinned.
207-
pip install "databricks-bot-engine @ git+https://x-access-token:${ENGINE_PAT}@github.com/eric-wang-1990/databricks-bot-engine@${ENGINE_REF}"
207+
pip install "databricks-bot-engine @ git+https://x-access-token:${ENGINE_PAT}@github.com/databricks/databricks-bot-engine@${ENGINE_REF}"
208208
pip install claude-agent-sdk
209209
npm install -g @anthropic-ai/claude-code
210210

.github/workflows/engineer-bot.yaml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
# - secrets BOT_ENGINE_PAT, ENGINEER_BOT_APP_ID/PRIVATE_KEY (DATABRICKS_HOST + DATABRICKS_TOKEN already exist in adbc CI)
1919
# - ENGINE_REF in the install step is pinned to an immutable commit SHA (never @main);
2020
# bump it to adopt engine changes. claude-agent-sdk / @anthropic-ai/claude-code are
21-
# unpinned to match the hub. The engine repo (eric-wang-1990/databricks-bot-engine)
21+
# unpinned to match the hub. The engine repo (databricks/databricks-bot-engine)
2222
# is PRIVATE for now, so BOT_ENGINE_PAT is scoped to it; when it goes public, drop
2323
# the PAT (anonymous install) but keep ENGINE_REF pinned to a tag/SHA (never @main)
2424
# - an `engineer-bot` label that only maintainers can apply (one label does both:
@@ -57,7 +57,7 @@ jobs:
5757
# auto-label on the fix PR) is a `pull_request` event and never re-triggers
5858
# this job, so the single shared label can't cause a fix→PR→fix loop.
5959
if: github.event.label.name == 'engineer-bot'
60-
runs-on: ubuntu-latest # VERIFY: a protected/self-hosted runner if E2E tests need a warehouse
60+
runs-on: [self-hosted, Linux, X64, peco-driver]
6161
timeout-minutes: 45
6262
steps:
6363
- name: Mint engineer-bot App token
@@ -120,23 +120,23 @@ jobs:
120120

121121
- name: Install bot engine (interim PAT git-install) + Claude SDK/CLI
122122
env:
123-
# Fine-grained PAT, read-only Contents on eric-wang-1990/databricks-bot-engine.
123+
# Fine-grained PAT, read-only Contents on databricks/databricks-bot-engine.
124124
ENGINE_PAT: ${{ secrets.BOT_ENGINE_PAT }}
125125
# SUPPLY-CHAIN PIN: the engine is pinned to an immutable commit SHA — never
126126
# install from the force-pushable `@main` ref in a secret-bearing job. Bump
127127
# ENGINE_REF to adopt engine changes (prefer a release tag once the engine
128128
# repo cuts one). claude-agent-sdk / @anthropic-ai/claude-code are left
129129
# unpinned to match the hub (databricks-driver-test); pin them to exact
130130
# versions here if you want full reproducibility.
131-
ENGINE_REF: 7e36703f5cae56a3db12fd25620735315fc4c506
131+
ENGINE_REF: 76a6e5902b217606b72a9476636df0d761260846
132132
run: |
133133
set -euo pipefail
134134
: "${ENGINE_REF:?pin the engine to a tag/SHA before activation (refusing @main)}"
135135
python -m pip install --upgrade pip
136136
# The dedicated engine repo (PRIVATE for now → install via the PAT). Once
137137
# it's public, drop the `x-access-token:${ENGINE_PAT}@` prefix (anonymous);
138138
# ENGINE_REF stays pinned to a commit SHA / release tag for reproducibility.
139-
pip install "databricks-bot-engine @ git+https://x-access-token:${ENGINE_PAT}@github.com/eric-wang-1990/databricks-bot-engine@${ENGINE_REF}"
139+
pip install "databricks-bot-engine @ git+https://x-access-token:${ENGINE_PAT}@github.com/databricks/databricks-bot-engine@${ENGINE_REF}"
140140
# The engine drives the Claude Agent SDK + Claude Code CLI (public registries).
141141
pip install claude-agent-sdk
142142
npm install -g @anthropic-ai/claude-code

.github/workflows/reviewer-bot-followup.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ jobs:
6161
github.event.pull_request.head.repo.fork == false
6262
&& github.event.pull_request.state == 'open'
6363
&& contains(github.event.pull_request.labels.*.name, 'review-bot')
64-
runs-on: ubuntu-latest # VERIFY: a protected runner if model creds come from the runner env
64+
runs-on: [self-hosted, Linux, X64, peco-driver]
6565
timeout-minutes: 15
6666
steps:
6767
- name: Mint review-bot App token
@@ -171,13 +171,13 @@ jobs:
171171
# repo cuts one). claude-agent-sdk / @anthropic-ai/claude-code are left
172172
# unpinned to match the hub (databricks-driver-test); pin them to exact
173173
# versions here if you want full reproducibility.
174-
ENGINE_REF: 7e36703f5cae56a3db12fd25620735315fc4c506
174+
ENGINE_REF: 76a6e5902b217606b72a9476636df0d761260846
175175
run: |
176176
set -euo pipefail
177177
: "${ENGINE_REF:?pin the engine to a tag/SHA before activation (refusing @main)}"
178178
python -m pip install --upgrade pip
179179
# Drop the `x-access-token:${ENGINE_PAT}@` prefix once the engine repo is public; ENGINE_REF stays pinned.
180-
pip install "databricks-bot-engine @ git+https://x-access-token:${ENGINE_PAT}@github.com/eric-wang-1990/databricks-bot-engine@${ENGINE_REF}"
180+
pip install "databricks-bot-engine @ git+https://x-access-token:${ENGINE_PAT}@github.com/databricks/databricks-bot-engine@${ENGINE_REF}"
181181
pip install claude-agent-sdk
182182
npm install -g @anthropic-ai/claude-code
183183

.github/workflows/reviewer-bot.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
# - secrets BOT_ENGINE_PAT, REVIEW_BOT_APP_ID/PRIVATE_KEY (DATABRICKS_HOST + DATABRICKS_TOKEN already exist in adbc CI)
1919
# - ENGINE_REF in the install step is pinned to an immutable commit SHA (never @main);
2020
# bump it to adopt engine changes. claude-agent-sdk / @anthropic-ai/claude-code are
21-
# unpinned to match the hub. The engine repo (eric-wang-1990/databricks-bot-engine)
21+
# unpinned to match the hub. The engine repo (databricks/databricks-bot-engine)
2222
# is PRIVATE for now, so BOT_ENGINE_PAT is scoped to it; when it goes public, drop
2323
# the PAT (anonymous install) but keep ENGINE_REF pinned to a tag/SHA (never @main)
2424
#
@@ -68,7 +68,7 @@ jobs:
6868
# short-lived model credential distinct from the CI DATABRICKS_TOKEN). As long
6969
# as the live workspace token is reachable in env, an LLM run over untrusted PR
7070
# content must NOT execute on a shared GitHub-hosted runner. See .bot/SETUP.md.
71-
runs-on: ubuntu-latest # DRAFT default only — replace per the note above before activation
71+
runs-on: [self-hosted, Linux, X64, peco-driver]
7272
timeout-minutes: 30
7373
steps:
7474
- name: Mint review-bot App token
@@ -102,14 +102,14 @@ jobs:
102102
# repo cuts one). claude-agent-sdk / @anthropic-ai/claude-code are left
103103
# unpinned to match the hub (databricks-driver-test); pin them to exact
104104
# versions here if you want full reproducibility.
105-
ENGINE_REF: 7e36703f5cae56a3db12fd25620735315fc4c506
105+
ENGINE_REF: 76a6e5902b217606b72a9476636df0d761260846
106106
run: |
107107
set -euo pipefail
108108
: "${ENGINE_REF:?pin the engine to a tag/SHA before activation (refusing @main)}"
109109
python -m pip install --upgrade pip
110110
# The dedicated engine repo (PRIVATE for now → install via the PAT). Drop the
111111
# `x-access-token:${ENGINE_PAT}@` prefix once it's public; ENGINE_REF stays pinned.
112-
pip install "databricks-bot-engine @ git+https://x-access-token:${ENGINE_PAT}@github.com/eric-wang-1990/databricks-bot-engine@${ENGINE_REF}"
112+
pip install "databricks-bot-engine @ git+https://x-access-token:${ENGINE_PAT}@github.com/databricks/databricks-bot-engine@${ENGINE_REF}"
113113
pip install claude-agent-sdk
114114
npm install -g @anthropic-ai/claude-code
115115

0 commit comments

Comments
 (0)