feat(sandbox): add buddy provider (@computesdk/buddy) - #484
Conversation
Add the Buddy provider (@computesdk/buddy@1.0.6) in staged form per the repo convention: dependency installed, env vars documented, provider entry and CI matrix lines all commented out until BUDDY_TOKEN, BUDDY_WORKSPACE and BUDDY_PROJECT land in the vault. Activation: add the three secrets to the Namespace vault, uncomment the import + providers[] entry in providers.ts, the matrix lines in the sandbox-tti/dax/capabilities workflows, and the PROVIDER_KEYS case in sandbox-capabilities.yml. Co-Authored-By: Noah Kiser <noah@computesdk.com>
|
I'll fix CI failures and address comments from users with write access. I'll skip comments containing "(aside)".
|
BUDDY_TOKEN, BUDDY_WORKSPACE and BUDDY_PROJECT are now in the vault, so uncomment the staged provider: providers.ts import + entry, the matrix lines in the sandbox-tti/dax/capabilities workflows, the PROVIDER_KEYS case in capabilities, and the BUDDY_* vars in the TTI/DAX vault-key regexes. Co-Authored-By: Noah Kiser <noah@computesdk.com>
Contributor License AgreementAll contributors are covered by a CLA. |
There was a problem hiding this comment.
👀 1 finding needs your review
Devin reviewed the finding on 0ece013 and left it for you. Click a finding below to jump to its comment.
For your review (1)
| - arker | ||
| - beam | ||
| - blaxel | ||
| - buddy |
There was a problem hiding this comment.
🟡 Buddy capabilities job cannot run
The new Buddy capabilities job fails before benchmarking because capabilities.bench.ts does not exist. The runner imports that module before selecting a provider, so it records no Buddy capabilities.
Learn more
The capabilities workflow invokes a benchmark module that is not tracked in the repository. The runner's module import resolves and imports that module before selecting a participant. Adding Buddy to this matrix schedules another job that fails there, regardless of whether its vault credentials load. The existing providers in this workflow are also affected; the new entry does not create the missing module.
Example: Dispatching the capabilities workflow with provider buddy loads the Buddy secrets, then attempts to import benchmarks/sandbox/capabilities.bench.ts. The import fails before any sandbox is created or result is written.
Recommended fix: Add a capabilities benchmark module with the expected config and task exports, or point the workflow to a tracked benchmark implementing capabilities. Verify the workflow for Buddy and the existing matrix entries.
Was this helpful? React with 👍 or 👎 to provide feedback.
There was a problem hiding this comment.
Confirmed: benchmarks/sandbox/capabilities.bench.ts does not exist on master — it only exists on the unmerged branch devin/sandbox-capabilities-benchmark (added in 732e8a2). So this is accurate, but it's pre-existing and applies to every provider in this workflow's matrix, not just buddy: the whole sandbox-capabilities.yml workflow fails at module import on master today. Buddy's matrix entry matches all ~30 existing entries; once the capabilities bench file lands (via that branch or a port), every provider including buddy runs without further changes.
Sandbox Benchmark ResultsBurst
View full run · SVGs available as build artifacts |
Sandbox Dax Benchmark Results
|
Summary
Adds the Buddy sandbox provider (
@computesdk/buddy@1.0.6, https://www.npmjs.com/package/@computesdk/buddy) as a live provider across the sandbox benchmarks. TheBUDDY_TOKEN/BUDDY_WORKSPACE/BUDDY_PROJECTsecrets are in the Namespace vault.The factory is
buddy(config: BuddyConfig)and authenticates withtoken,workspace, andproject, falling back to the matching env vars.Changes:
package.json/pnpm-lock.yaml: add@computesdk/buddy@^1.0.6(pulls in@buddy-works/sandbox-sdk).benchmarks/.env.example: document the threeBUDDY_*vars.benchmarks/sandbox/providers.ts: import +providers[]entry withrequiredEnvVars: ['BUDDY_TOKEN', 'BUDDY_WORKSPACE', 'BUDDY_PROJECT']..github/workflows/sandbox-{tti,dax,capabilities}-benchmarks.yml:buddyin the provider matrix;BUDDY_*added to the TTI/DAX vault-key regexes and the capabilitiesPROVIDER_KEYScase.Link to Devin session: https://app.devin.ai/sessions/2f6db87a0465493e85b3d8998007e245
Open in Devin Desktop: https://app.devin.ai/desktop/session/2f6db87a0465493e85b3d8998007e245?variant=devin
Requested by: @kisernl