Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
475b408
fix(console): backport usage reset boundary fix to dev (#47267)
MrMushrooooom Sep 4, 2026
3f31139
feat(console): route migrated BYOK through provider connections (#47266)
vimtor Sep 4, 2026
4178fd7
fix(stats): hide stealth model providers
adamdotdevin Sep 4, 2026
31afdd5
chore: generate
opencode-agent[bot] Sep 4, 2026
20a7743
docs(go): renew DeepSeek ZDR through September 2026 (#47288)
MrMushrooooom Sep 4, 2026
51f86c8
sync release versions for v1.18.28
Sep 4, 2026
5d5c35e
docs(zh): fix bold rendering by adding spaces around asterisks (#46231)
Peter267 Sep 4, 2026
5cf9f51
feat(console): add quota reset support action (#47313)
heimoshuiyu Sep 4, 2026
500c46e
fix(opencode): allow integer GPT versions in Codex model filter (#47384)
rekram1-node Sep 4, 2026
02a167e
fix(opencode): compare Codex GPT versions by major and minor (#47385)
rekram1-node Sep 4, 2026
5b1e319
sync release versions for v1.18.29
Sep 4, 2026
7774580
zen: add muse spark
fwang Sep 5, 2026
e8548ae
update zen models
fwang Sep 5, 2026
79903a4
chore: generate
opencode-agent[bot] Sep 5, 2026
e145c46
chore(dev): merge latest upstream development
henry701 Sep 5, 2026
4db1eec
update zen docs
fwang Sep 5, 2026
70b4ca8
Merge branch 'dev' of github.com:anomalyco/opencode into dev
fwang Sep 5, 2026
676ec50
fix(app): repair V2 session composer state
henry701 Aug 24, 2026
d41b781
fix(core): preserve catalog reasoning effort variants
henry701 Sep 5, 2026
1f8d715
Merge remote-tracking branch 'origin/dev' into web-audit-dev
henry701 Sep 5, 2026
5041316
fix(app): preserve admitted input and replacement session state
henry701 Sep 5, 2026
0c12a19
chore(ci): gate fork releases and upstream sync with validation
henry701 Sep 5, 2026
f869c17
fix(app): preserve keyboard tab menus and current server fixtures
henry701 Sep 5, 2026
cf80117
fix(app): align context meter with staged rollback selection
henry701 Sep 5, 2026
3040550
docs(app): record upstream comparison and remaining release gates
henry701 Sep 5, 2026
22d161d
fix(app): preserve current session state across compatibility boundaries
henry701 Sep 5, 2026
f618d53
test(ci): stabilize fork runners and portable subprocess fixtures
henry701 Sep 5, 2026
4c66b4d
docs(app): record accepted follow-ups and throttled benchmark context
henry701 Sep 5, 2026
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
6 changes: 5 additions & 1 deletion .github/actions/setup-bun/action.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
name: "Setup Bun"
description: "Setup Bun with caching and install dependencies"
inputs:
node-version:
description: "Node.js version used by dependency install scripts"
required: false
default: "24"
install-flags:
description: "Additional flags to pass to 'bun install'"
required: false
Expand All @@ -13,7 +17,7 @@ runs:
- name: Setup Node
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
with:
node-version: "24"
node-version: ${{ inputs.node-version }}

- name: Get baseline download URL
id: bun-url
Expand Down
19 changes: 11 additions & 8 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ on:
push:
branches:
- dev
- production
pull_request:
workflow_dispatch:

Expand Down Expand Up @@ -31,7 +32,7 @@ jobs:
host: blacksmith-4vcpu-ubuntu-2404
- name: windows
host: blacksmith-4vcpu-windows-2025
runs-on: ${{ matrix.settings.host }}
runs-on: ${{ github.repository == 'anomalyco/opencode' && matrix.settings.host || (matrix.settings.name == 'windows' && 'windows-latest' || 'ubuntu-latest') }}
defaults:
run:
shell: bash
Expand All @@ -54,6 +55,10 @@ jobs:
git config --global user.email "bot@opencode.ai"
git config --global user.name "opencode"

- name: Install ripgrep
if: runner.os == 'Windows'
run: choco install ripgrep --version 15.1.0 --yes --no-progress

- name: Cache Turbo
uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0
with:
Expand All @@ -65,7 +70,7 @@ jobs:

- name: Run unit tests
timeout-minutes: 20
run: GITHUB_ACTIONS=false bun turbo test
run: GITHUB_ACTIONS=false bun turbo test --concurrency=${{ github.repository == 'anomalyco/opencode' && '10' || '2' }}
env:
OPENCODE_EXPERIMENTAL_DISABLE_FILEWATCHER: ${{ runner.os == 'Windows' && 'true' || 'false' }}

Expand All @@ -89,9 +94,10 @@ jobs:
host: blacksmith-4vcpu-ubuntu-2404
- name: windows
host: blacksmith-4vcpu-windows-2025
runs-on: ${{ matrix.settings.host }}
runs-on: ${{ github.repository == 'anomalyco/opencode' && matrix.settings.host || (matrix.settings.name == 'windows' && 'windows-latest' || 'ubuntu-latest') }}
env:
PLAYWRIGHT_BROWSERS_PATH: ${{ github.workspace }}/.playwright-browsers
PLAYWRIGHT_WORKERS: ${{ github.repository == 'anomalyco/opencode' && '5' || '2' }}
defaults:
run:
shell: bash
Expand All @@ -101,15 +107,12 @@ jobs:
with:
token: ${{ secrets.GITHUB_TOKEN }}

- name: Setup Node
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
- name: Setup Bun
uses: ./.github/actions/setup-bun
with:
# Playwright 1.59 hangs while extracting Chromium with Node 24.16.
node-version: "24.15"

- name: Setup Bun
uses: ./.github/actions/setup-bun

- name: Read Playwright version
id: playwright-version
run: |
Expand Down
12 changes: 8 additions & 4 deletions .github/workflows/typecheck.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,14 @@ name: typecheck

on:
push:
branches: [dev]
branches: [dev, production]
pull_request:
branches: [dev]
branches: [dev, production]
workflow_dispatch:

jobs:
typecheck:
runs-on: blacksmith-4vcpu-ubuntu-2404
runs-on: ${{ github.repository == 'anomalyco/opencode' && 'blacksmith-4vcpu-ubuntu-2404' || 'ubuntu-latest' }}
steps:
- name: Checkout repository
uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.3.1
Expand All @@ -18,4 +18,8 @@ jobs:
uses: ./.github/actions/setup-bun

- name: Run typecheck
run: bun typecheck
run: bun typecheck --concurrency=${{ github.repository == 'anomalyco/opencode' && '10' || '2' }}

- name: Typecheck browser regression fixtures
working-directory: packages/app
run: bun run typecheck:e2e
30 changes: 28 additions & 2 deletions .github/workflows/upstream-sync.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@ name: Sync Upstream

on:
schedule:
- cron: '0 6 * * *'
- cron: "0 6 * * *"
workflow_dispatch:
inputs:
force:
description: 'Force merge even if already up-to-date'
description: "Force merge even if already up-to-date"
type: boolean
default: false

Expand Down Expand Up @@ -91,6 +91,32 @@ jobs:
} >> "$GITHUB_OUTPUT"
fi

# GITHUB_TOKEN pushes do not trigger the normal push workflows. Gate here.
- name: Setup validation tools
if: steps.merge.outputs.status == 'merged'
uses: ./.github/actions/setup-bun

- name: Validate merged types and unit tests
if: steps.merge.outputs.status == 'merged'
run: |
bun turbo typecheck --concurrency=2
bun --cwd packages/app run typecheck:e2e
GITHUB_ACTIONS=false bun turbo test --concurrency=2
bun --cwd packages/client run check:generated
bun --cwd packages/opencode run test:httpapi

- name: Install browser test dependencies
if: steps.merge.outputs.status == 'merged'
working-directory: packages/app
run: bunx playwright install --with-deps chromium firefox

- name: Validate merged browser behavior
if: steps.merge.outputs.status == 'merged'
working-directory: packages/app
env:
CI: true
run: bun run test:e2e:local

- name: Push merged changes
if: steps.merge.outputs.status == 'merged'
shell: bash
Expand Down
Loading
Loading