Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
18 commits
Select commit Hold shift + click to select a range
0276aea
fix: restore model_cycle_favorite keybinds with minimal changes
ariane-emory Dec 7, 2025
c7390e5
Merge remote-tracking branch 'upstream/dev' into fix/allow-model-cycl…
ariane-emory Dec 9, 2025
b32a5d3
Regenerate SDK types with favorite keybinds
ariane-emory Dec 9, 2025
46c2ed9
fix(#5198): restore model_cycle_favorite keybindings
ariane-emory Dec 9, 2025
dacbc3b
Merge remote-tracking branch 'upstream/dev' into fix/allow-model-cycl…
ariane-emory Dec 9, 2025
0818725
Merge branch 'dev' into fix/allow-model-cycle-favorites-keybinds
ariane-emory Dec 9, 2025
d9e3e8c
Merge remote-tracking branch 'upstream/dev' into fix/allow-model-cycl…
ariane-emory Dec 10, 2025
355d1e6
Merge dev into fix/allow-model-cycle-favorites-keybinds
ariane-emory Dec 10, 2025
8a3cd8d
Merge branch 'dev' into fix/allow-model-cycle-favorites-keybinds
ariane-emory Dec 10, 2025
973487d
Merge remote-tracking branch 'upstream/dev' into fix/allow-model-cycl…
ariane-emory Dec 10, 2025
e6e61e4
Merge branch 'dev' into fix/allow-model-cycle-favorites-keybinds
ariane-emory Dec 10, 2025
8131801
Merge remote-tracking branch 'upstream/dev' into fix/allow-model-cycl…
ariane-emory Dec 10, 2025
2d7d73d
Fix type error: useKittyKeyboard should be boolean
ariane-emory Dec 10, 2025
bf817da
fix: uncorrupt
ariane-emory Dec 11, 2025
55629af
Merge branch 'dev' into fix/allow-model-cycle-favorites-keybinds
ariane-emory Dec 11, 2025
7200148
Merge branch 'dev' into fix/allow-model-cycle-favorites-keybinds
ariane-emory Dec 11, 2025
38f6069
Merge branch 'dev' into repair/fix/allow-model-cycle-favorites-keybinds
ariane-emory Dec 13, 2025
825a568
Fix favorite keybind generation
ariane-emory Dec 15, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Merge dev into fix/allow-model-cycle-favorites-keybinds
  • Loading branch information
ariane-emory committed Dec 10, 2025
commit 355d1e67af1a809b24e85465baae68a46b5b8aad
19 changes: 10 additions & 9 deletions .github/workflows/format.yml → .github/workflows/generate.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: format
name: generate

on:
push:
Expand All @@ -8,14 +8,10 @@ on:
branches-ignore:
- production
workflow_dispatch:
workflow_run:
workflows: ["sdk"]
types:
- completed

jobs:
format:
generate:
runs-on: blacksmith-4vcpu-ubuntu-2404
if: github.event.workflow_run.conclusion == 'success'
permissions:
contents: write
steps:
Expand All @@ -29,9 +25,14 @@ jobs:
- name: Setup Bun
uses: ./.github/actions/setup-bun

- name: run
- name: Generate SDK
run: |
./script/format.ts
bun ./packages/sdk/js/script/build.ts
(cd packages/opencode && bun dev generate > ../sdk/openapi.json)
bun x prettier --write packages/sdk/openapi.json

- name: Format
run: ./script/format.ts
env:
CI: true
PUSH_BRANCH: ${{ github.event.pull_request.head.ref || github.ref_name }}
43 changes: 0 additions & 43 deletions .github/workflows/sdk.yml

This file was deleted.

12 changes: 7 additions & 5 deletions .github/workflows/snapshot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@ on:
- snapshot-*

concurrency: ${{ github.workflow }}-${{ github.ref }}
permissions:
id-token: write

jobs:
publish:
Expand All @@ -22,17 +24,17 @@ jobs:

- run: git fetch --force --tags

- uses: actions/setup-go@v5
- uses: actions/setup-node@v4
with:
go-version: ">=1.24.0"
cache: true
cache-dependency-path: go.sum
node-version: "20"
registry-url: "https://registry.npmjs.org"

- uses: ./.github/actions/setup-bun

- name: Publish
run: |
npm install -g npm@latest
./script/publish.ts
env:
GITHUB_TOKEN: ${{ secrets.SST_GITHUB_TOKEN }}
NPM_CONFIG_TOKEN: ${{ secrets.NPM_TOKEN }}
NPM_CONFIG_PROVENANCE: false
3 changes: 2 additions & 1 deletion packages/opencode/script/publish.ts
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,8 @@ for (const [name] of Object.entries(binaries)) {
if (process.platform !== "win32") {
await $`chmod 755 -R .`
}
await $`bun publish --access public --tag ${Script.channel}`
await $`bun pm pack`
await $`npm publish *.tgz --access public --tag ${Script.channel}`
} finally {
process.chdir(dir)
}
Expand Down
16 changes: 11 additions & 5 deletions packages/opencode/test/fixture/fixture.ts
Original file line number Diff line number Diff line change
@@ -1,27 +1,33 @@
import { $ } from "bun"
import { realpathSync } from "fs"
import * as fs from "fs/promises"
import os from "os"
import path from "path"

// Strip null bytes from paths (defensive fix for CI environment issues)
function sanitizePath(p: string): string {
return p.replace(/\0/g, "")
}

type TmpDirOptions<T> = {
git?: boolean
init?: (dir: string) => Promise<T>
dispose?: (dir: string) => Promise<T>
}
export async function tmpdir<T>(options?: TmpDirOptions<T>) {
const dirpath = path.join(os.tmpdir(), "opencode-test-" + Math.random().toString(36).slice(2))
await $`mkdir -p ${dirpath}`.quiet()
const dirpath = sanitizePath(path.join(os.tmpdir(), "opencode-test-" + Math.random().toString(36).slice(2)))
await fs.mkdir(dirpath, { recursive: true })
if (options?.git) {
await $`git init`.cwd(dirpath).quiet()
await $`git commit --allow-empty -m "root commit ${dirpath}"`.cwd(dirpath).quiet()
}
const extra = await options?.init?.(dirpath)
const realpath = sanitizePath(await fs.realpath(dirpath))
const result = {
[Symbol.asyncDispose]: async () => {
await options?.dispose?.(dirpath)
await $`rm -rf ${dirpath}`.quiet()
// await fs.rm(dirpath, { recursive: true, force: true })
},
path: realpathSync(dirpath),
path: realpath,
extra: extra as T,
}
return result
Expand Down
12 changes: 7 additions & 5 deletions packages/opencode/test/preload.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,14 @@
// xdg-basedir reads env vars at import time, so we must set these first
import os from "os"
import path from "path"
import fs from "fs/promises"

const testDataDir = path.join(os.tmpdir(), "opencode-test-data-" + process.pid)
process.env["XDG_DATA_HOME"] = testDataDir
process.env["XDG_CACHE_HOME"] = path.join(testDataDir, "cache")
process.env["XDG_CONFIG_HOME"] = path.join(testDataDir, "config")
process.env["XDG_STATE_HOME"] = path.join(testDataDir, "state")
const dir = path.join(os.tmpdir(), "opencode-test-data-" + process.pid)
await fs.mkdir(dir, { recursive: true })
process.env["XDG_DATA_HOME"] = path.join(dir, "share")
process.env["XDG_CACHE_HOME"] = path.join(dir, "cache")
process.env["XDG_CONFIG_HOME"] = path.join(dir, "config")
process.env["XDG_STATE_HOME"] = path.join(dir, "state")

// Clear provider env vars to ensure clean test state
delete process.env["ANTHROPIC_API_KEY"]
Expand Down
Loading
Loading
You are viewing a condensed version of this merge commit. You can view the full changes here.