From 8ca9e00f2d4210a328f16f16d58dee1548f2f72a Mon Sep 17 00:00:00 2001 From: Greg Pstrucha <875316+Gricha@users.noreply.github.com> Date: Sun, 8 Feb 2026 18:45:27 +0000 Subject: [PATCH 1/3] feat: update agent binaries and restart opencode server during sync --- src/workspace/manager.ts | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/workspace/manager.ts b/src/workspace/manager.ts index 00e9b62..0593f12 100644 --- a/src/workspace/manager.ts +++ b/src/workspace/manager.ts @@ -607,6 +607,13 @@ export class WorkspaceManager { } } + private async restartOpenCodeServer(containerName: string): Promise { + await docker.execInContainer(containerName, ['sh', '-c', 'pkill -f "opencode serve" || true'], { + user: 'workspace', + }); + await this.startOpenCodeServer(containerName); + } + private async runUserScripts(containerName: string): Promise { const scriptPaths = this.config.scripts.post_start; if (!scriptPaths || scriptPaths.length === 0) { @@ -1221,7 +1228,12 @@ export class WorkspaceManager { throw new Error(`Workspace '${name}' is not running`); } - await this.setupWorkspaceCredentials(containerName, name, { strictWorker: true }); + await this.setupWorkspaceCredentials(containerName, name, { + strictWorker: true, + startOpenCodeServer: false, + }); + await this.updateAgentBinaries(containerName); + await this.restartOpenCodeServer(containerName); } async setPortForwards(name: string, forwards: PortMapping[]): Promise { From 321b0cb5ac2c5d9e7a58774e0a81cccbfa80403f Mon Sep 17 00:00:00 2001 From: Greg Pstrucha <875316+Gricha@users.noreply.github.com> Date: Sun, 8 Feb 2026 18:48:41 +0000 Subject: [PATCH 2/3] chore: disable automatic maestro/iOS CI builds --- .github/workflows/mobile-e2e.yml | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/.github/workflows/mobile-e2e.yml b/.github/workflows/mobile-e2e.yml index 6c7f974..da79fe7 100644 --- a/.github/workflows/mobile-e2e.yml +++ b/.github/workflows/mobile-e2e.yml @@ -1,17 +1,7 @@ name: Mobile E2E Tests on: - push: - branches: [main] - paths: - - 'mobile/**' - pull_request: - branches: [main] - paths: - - 'mobile/**' workflow_dispatch: - schedule: - - cron: '0 9 * * 1' # Monday 9am UTC jobs: maestro-ios: From 7983eef28b026e35fc3a1c5a8f45c63464982ad4 Mon Sep 17 00:00:00 2001 From: Greg Pstrucha <875316+Gricha@users.noreply.github.com> Date: Sun, 8 Feb 2026 18:57:11 +0000 Subject: [PATCH 3/3] fix: wait for opencode server to terminate before restarting --- src/workspace/manager.ts | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/workspace/manager.ts b/src/workspace/manager.ts index 0593f12..9e44f5b 100644 --- a/src/workspace/manager.ts +++ b/src/workspace/manager.ts @@ -608,9 +608,15 @@ export class WorkspaceManager { } private async restartOpenCodeServer(containerName: string): Promise { - await docker.execInContainer(containerName, ['sh', '-c', 'pkill -f "opencode serve" || true'], { - user: 'workspace', - }); + await docker.execInContainer( + containerName, + [ + 'sh', + '-c', + 'pkill -f "opencode serve" || true; for i in $(seq 1 20); do pgrep -f "opencode serve" > /dev/null || break; sleep 0.25; done', + ], + { user: 'workspace' } + ); await this.startOpenCodeServer(containerName); }