Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 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
df6ba92
chore(production): merge latest upstream production
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
6264098
fix(app): preserve admitted input and replacement session state
henry701 Sep 5, 2026
08754ca
chore(ci): gate fork releases and upstream sync with validation
henry701 Sep 5, 2026
096a9f3
Merge remote-tracking branch 'origin/production' into web-audit-produ…
henry701 Sep 5, 2026
85a0a0e
fix(app): preserve keyboard tab menus and current server fixtures
henry701 Sep 5, 2026
f4d3fbd
fix(app): align context meter with staged rollback selection
henry701 Sep 5, 2026
87b8ce5
docs(app): record upstream comparison and remaining release gates
henry701 Sep 5, 2026
0526aba
fix(app): preserve current session state across compatibility boundaries
henry701 Sep 5, 2026
84412e0
test(ci): stabilize fork runners and portable subprocess fixtures
henry701 Sep 5, 2026
a570068
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