From bcf216527cd0111a32e36fc625d4976b2926ba93 Mon Sep 17 00:00:00 2001 From: Claude Date: Thu, 22 Oct 2026 16:57:47 +0000 Subject: [PATCH 1/4] chore(turbo): bump to 2.11.7 and opt out of agent guidance From 2.11.6, turbo appends a turborepo-agent-rules block to the root AGENTS.md whenever it runs under an AI agent (CLAUDECODE, AI_AGENT, CURSOR_TRACE_ID and similar). Here that lands as a stray diff in every agent worktree, and CLAUDE.md imports AGENTS.md, so the block would also ride into every agent's context. Set agentGuidance to false. turbo 2.10.9 rejects agentGuidance as an unknown turbo.json key, so the opt-out needs the bump; 2.11.7 matches webdriverio/desktop-mobile and the turbo entry in the open dependabot dev-dependencies group (#660), which would otherwise turn the block on when it merges. Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01HQN3v9Z4f1mu3xK4Z7K44e --- package.json | 2 +- pnpm-lock.yaml | 58 +++++++++++++++++++++++++------------------------- turbo.json | 1 + 3 files changed, 31 insertions(+), 30 deletions(-) diff --git a/package.json b/package.json index a1821f30..130714d3 100644 --- a/package.json +++ b/package.json @@ -52,7 +52,7 @@ "lint-staged": "^16.4.0", "tsup": "catalog:", "tsx": "catalog:", - "turbo": "2.10.9", + "turbo": "2.11.7", "typescript": "catalog:", "yaml": "catalog:", "zod": "catalog:" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ac6e8987..b1aa39fc 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -93,8 +93,8 @@ importers: specifier: 'catalog:' version: 4.23.1 turbo: - specifier: 2.10.9 - version: 2.10.9 + specifier: 2.11.7 + version: 2.11.7 typescript: specifier: 'catalog:' version: 5.9.3 @@ -1427,33 +1427,33 @@ packages: '@standard-schema/spec@1.1.0': resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==} - '@turbo/darwin-64@2.10.9': - resolution: {integrity: sha512-Jh+pTGXLNz8+1tkUU13TI/f+ZOI+OvC4YbHi1H+57iSpLt5DR3xgptd+4sA07RdjdRR/RX/01uQQu2OkbzIefA==} + '@turbo/darwin-64@2.11.7': + resolution: {integrity: sha512-Z2LFOxwbiJueD1miByXJS/BrW21vv6YaQXZustty5jEX4vQYw6zyh101Sz1QO7WG0mqBzKagZ/DoAeeujI0/Sw==} cpu: [x64] os: [darwin] - '@turbo/darwin-arm64@2.10.9': - resolution: {integrity: sha512-aqtpPkiIC4IUas8Vv27oJ3aDfTuP1d5wofd01dZ7gfhHRrIKuFdqQb4imvNnVFahcOViF9Jh8Oi7feDoz8/ciA==} + '@turbo/darwin-arm64@2.11.7': + resolution: {integrity: sha512-Vhv8ybgIflosNDSSRD9fNXHlCFA60dsGyTqQmc7l28SEX5jOaweCCD4BBYNd8/p0WGkw3e7tZbfA9w6FsujGvw==} cpu: [arm64] os: [darwin] - '@turbo/linux-64@2.10.9': - resolution: {integrity: sha512-XyAneUBsS5uNOUOjBSs81zyigMVwwhVUd3u7F2JFMKGQk6F7eNAiOEBASJ+aHLldjYsOEjhfW+5gWIqwziyFFw==} + '@turbo/linux-64@2.11.7': + resolution: {integrity: sha512-rAqRp3blQKk1+ylMGlZHAW0eJjVNuuGUm4ZrC6RU1Im8tLryvaO4a2zLQ/FQi1TRlmKqKV9YXBki2YeytlLbXA==} cpu: [x64] os: [android, linux] - '@turbo/linux-arm64@2.10.9': - resolution: {integrity: sha512-5jAcldLnkuWIjujGhCn2MGIeUwW8IVNOq9Sce4EEzzgLcxmhTasbV0RiW6ZkaRdOjmOCGzeNXPLkDJEOIucOLw==} + '@turbo/linux-arm64@2.11.7': + resolution: {integrity: sha512-thVYGov7S+llXAxrl3kBb/efalav0xhrjl5NHCR6AfKx14JkbqaetvbVwyss4FvZ9rt+Pv3xsTb+8SIYix8DTg==} cpu: [arm64] os: [android, linux] - '@turbo/windows-64@2.10.9': - resolution: {integrity: sha512-u1xGpGlefzuhBedbt/VR2nWdftfFVZwPeDg9e5uZl68sV1fL3HNYTNr5VyHkzgtPK2VTYg1x4OKZuGrh1Gvhtg==} + '@turbo/windows-64@2.11.7': + resolution: {integrity: sha512-ZIoKT7J7KutgYl4bGxmmgeUQjG+7E0nY8BF9dxUOiMH2vdTsM4JQ2uSwTYFkTR2Llbg6ghGjSmuZ8LQtkLEYjg==} cpu: [x64] os: [win32] - '@turbo/windows-arm64@2.10.9': - resolution: {integrity: sha512-W2Ub165Qv0iMFljbYKxxbZN+2dVSngnzEjQNEFXtnz5oJVx9XSypmNmUvMtuYMeZ3kdVC1zI7yd/rtuX+SDnbg==} + '@turbo/windows-arm64@2.11.7': + resolution: {integrity: sha512-88Xv2f7SLGVJ68lRRx8o375dKmnZYNdDtvlKcPA0kZpcF93eAQd8l96BKQ0/AMHG0bMJA0Z5QqoqtetxzNsC+g==} cpu: [arm64] os: [win32] @@ -2397,8 +2397,8 @@ packages: engines: {node: '>=18.0.0'} hasBin: true - turbo@2.10.9: - resolution: {integrity: sha512-Yl9+ukxH+UmPtKidpDkjn82tvPoEvFNb9UACd9vUomN1Ft0cwl3rx0P8yC1D93W9EOsWRMjllvIDG8y25sFOog==} + turbo@2.11.7: + resolution: {integrity: sha512-RhXHbqfvY6o3xt/zSHCwSNwLrZlXiqHzewi4eAj9PtZ1T1CqgMJ2yIDb7SKPTG9IikTm925mfzL6hldQVdyNWw==} hasBin: true type-check@0.4.0: @@ -3086,22 +3086,22 @@ snapshots: '@standard-schema/spec@1.1.0': {} - '@turbo/darwin-64@2.10.9': + '@turbo/darwin-64@2.11.7': optional: true - '@turbo/darwin-arm64@2.10.9': + '@turbo/darwin-arm64@2.11.7': optional: true - '@turbo/linux-64@2.10.9': + '@turbo/linux-64@2.11.7': optional: true - '@turbo/linux-arm64@2.10.9': + '@turbo/linux-arm64@2.11.7': optional: true - '@turbo/windows-64@2.10.9': + '@turbo/windows-64@2.11.7': optional: true - '@turbo/windows-arm64@2.10.9': + '@turbo/windows-arm64@2.11.7': optional: true '@types/chai@5.2.3': @@ -4090,14 +4090,14 @@ snapshots: optionalDependencies: fsevents: 2.3.3 - turbo@2.10.9: + turbo@2.11.7: optionalDependencies: - '@turbo/darwin-64': 2.10.9 - '@turbo/darwin-arm64': 2.10.9 - '@turbo/linux-64': 2.10.9 - '@turbo/linux-arm64': 2.10.9 - '@turbo/windows-64': 2.10.9 - '@turbo/windows-arm64': 2.10.9 + '@turbo/darwin-64': 2.11.7 + '@turbo/darwin-arm64': 2.11.7 + '@turbo/linux-64': 2.11.7 + '@turbo/linux-arm64': 2.11.7 + '@turbo/windows-64': 2.11.7 + '@turbo/windows-arm64': 2.11.7 type-check@0.4.0: dependencies: diff --git a/turbo.json b/turbo.json index 3162791e..f41b64a6 100644 --- a/turbo.json +++ b/turbo.json @@ -1,6 +1,7 @@ { "$schema": "https://turbo.build/schema.json", "ui": "tui", + "agentGuidance": false, "remoteCache": { "enabled": true }, From cc620837fcbd96f7363b6ec94d2768d335f56777 Mon Sep 17 00:00:00 2001 From: Claude Date: Thu, 22 Oct 2026 17:35:19 +0000 Subject: [PATCH 2/4] chore(turbo): bump to 2.11.10 Move to the current latest turbo. Since 2.11.8 (vercel/turborepo#14490) agentGuidance defaults to false, so the explicit false in turbo.json now restates the default; keeping it holds the opt-out if that default flips back. Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01HQN3v9Z4f1mu3xK4Z7K44e --- package.json | 2 +- pnpm-lock.yaml | 58 +++++++++++++++++++++++++------------------------- 2 files changed, 30 insertions(+), 30 deletions(-) diff --git a/package.json b/package.json index 130714d3..80f2727d 100644 --- a/package.json +++ b/package.json @@ -52,7 +52,7 @@ "lint-staged": "^16.4.0", "tsup": "catalog:", "tsx": "catalog:", - "turbo": "2.11.7", + "turbo": "2.11.10", "typescript": "catalog:", "yaml": "catalog:", "zod": "catalog:" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index b1aa39fc..2fc2f444 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -93,8 +93,8 @@ importers: specifier: 'catalog:' version: 4.23.1 turbo: - specifier: 2.11.7 - version: 2.11.7 + specifier: 2.11.10 + version: 2.11.10 typescript: specifier: 'catalog:' version: 5.9.3 @@ -1427,33 +1427,33 @@ packages: '@standard-schema/spec@1.1.0': resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==} - '@turbo/darwin-64@2.11.7': - resolution: {integrity: sha512-Z2LFOxwbiJueD1miByXJS/BrW21vv6YaQXZustty5jEX4vQYw6zyh101Sz1QO7WG0mqBzKagZ/DoAeeujI0/Sw==} + '@turbo/darwin-64@2.11.10': + resolution: {integrity: sha512-By4idRap5+nLnMuRzLB4qkOPRlvNdyY1ne4VJYDyUoUB11H94k7uif9mbe3JT8JSNXs1D68uMcBj6hJ/jMQRvA==} cpu: [x64] os: [darwin] - '@turbo/darwin-arm64@2.11.7': - resolution: {integrity: sha512-Vhv8ybgIflosNDSSRD9fNXHlCFA60dsGyTqQmc7l28SEX5jOaweCCD4BBYNd8/p0WGkw3e7tZbfA9w6FsujGvw==} + '@turbo/darwin-arm64@2.11.10': + resolution: {integrity: sha512-pyEYlVcuexOPa92p0Wlwl9YT1Is5D60lxN3ItWm3g30YLvFaUq86TF4BBWg5ZAc0uMTnrOzCvuCsOBTdzUWnRQ==} cpu: [arm64] os: [darwin] - '@turbo/linux-64@2.11.7': - resolution: {integrity: sha512-rAqRp3blQKk1+ylMGlZHAW0eJjVNuuGUm4ZrC6RU1Im8tLryvaO4a2zLQ/FQi1TRlmKqKV9YXBki2YeytlLbXA==} + '@turbo/linux-64@2.11.10': + resolution: {integrity: sha512-1tYeR/IDZ5HEdsb0jNq2L2xam5nMQ+g80tlV2BZmv4OFw+pMcUM0mMmUcfc5wXPPNHVNPuDMjh9Y8G8HgXPLZA==} cpu: [x64] os: [android, linux] - '@turbo/linux-arm64@2.11.7': - resolution: {integrity: sha512-thVYGov7S+llXAxrl3kBb/efalav0xhrjl5NHCR6AfKx14JkbqaetvbVwyss4FvZ9rt+Pv3xsTb+8SIYix8DTg==} + '@turbo/linux-arm64@2.11.10': + resolution: {integrity: sha512-HuekQxvVGhUd46g1Im/DKdOtglHr4/gguZAvzEpPUgtxNkztSa8lWhQEGQ+EmPQ0n7w19qjThFU+OfEEd0uvlw==} cpu: [arm64] os: [android, linux] - '@turbo/windows-64@2.11.7': - resolution: {integrity: sha512-ZIoKT7J7KutgYl4bGxmmgeUQjG+7E0nY8BF9dxUOiMH2vdTsM4JQ2uSwTYFkTR2Llbg6ghGjSmuZ8LQtkLEYjg==} + '@turbo/windows-64@2.11.10': + resolution: {integrity: sha512-UJOP3BkbreY3/JlMgJR6ZiimxYIBn+c+B4tnBIxD0E9c3Estmk+XoVNVBNBottZLNRXe3/ScgOU4+/k8tIWysg==} cpu: [x64] os: [win32] - '@turbo/windows-arm64@2.11.7': - resolution: {integrity: sha512-88Xv2f7SLGVJ68lRRx8o375dKmnZYNdDtvlKcPA0kZpcF93eAQd8l96BKQ0/AMHG0bMJA0Z5QqoqtetxzNsC+g==} + '@turbo/windows-arm64@2.11.10': + resolution: {integrity: sha512-xOkEjF3ws/b/YNlc+bvJHMYBn+vL+QbEISZFVi0qS+ImmhA1X3/gmNmBrjjIG3dg6aeN+n6gQitzSkXQ286qJQ==} cpu: [arm64] os: [win32] @@ -2397,8 +2397,8 @@ packages: engines: {node: '>=18.0.0'} hasBin: true - turbo@2.11.7: - resolution: {integrity: sha512-RhXHbqfvY6o3xt/zSHCwSNwLrZlXiqHzewi4eAj9PtZ1T1CqgMJ2yIDb7SKPTG9IikTm925mfzL6hldQVdyNWw==} + turbo@2.11.10: + resolution: {integrity: sha512-3GJYwig8ygEI89oaOZdduJX8/aw6O9eRPYHoIt6T3FZl9hkKjiyIspufJoVgqXihPoJu8M5CSV0DlZvzfohBCw==} hasBin: true type-check@0.4.0: @@ -3086,22 +3086,22 @@ snapshots: '@standard-schema/spec@1.1.0': {} - '@turbo/darwin-64@2.11.7': + '@turbo/darwin-64@2.11.10': optional: true - '@turbo/darwin-arm64@2.11.7': + '@turbo/darwin-arm64@2.11.10': optional: true - '@turbo/linux-64@2.11.7': + '@turbo/linux-64@2.11.10': optional: true - '@turbo/linux-arm64@2.11.7': + '@turbo/linux-arm64@2.11.10': optional: true - '@turbo/windows-64@2.11.7': + '@turbo/windows-64@2.11.10': optional: true - '@turbo/windows-arm64@2.11.7': + '@turbo/windows-arm64@2.11.10': optional: true '@types/chai@5.2.3': @@ -4090,14 +4090,14 @@ snapshots: optionalDependencies: fsevents: 2.3.3 - turbo@2.11.7: + turbo@2.11.10: optionalDependencies: - '@turbo/darwin-64': 2.11.7 - '@turbo/darwin-arm64': 2.11.7 - '@turbo/linux-64': 2.11.7 - '@turbo/linux-arm64': 2.11.7 - '@turbo/windows-64': 2.11.7 - '@turbo/windows-arm64': 2.11.7 + '@turbo/darwin-64': 2.11.10 + '@turbo/darwin-arm64': 2.11.10 + '@turbo/linux-64': 2.11.10 + '@turbo/linux-arm64': 2.11.10 + '@turbo/windows-64': 2.11.10 + '@turbo/windows-arm64': 2.11.10 type-check@0.4.0: dependencies: From 907a72ddd39e29f11a538b89780dd99be4fdf072 Mon Sep 17 00:00:00 2001 From: Claude Date: Thu, 22 Oct 2026 17:37:39 +0000 Subject: [PATCH 3/4] test(version): stop the strategy unit tests running real cargo MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit versionStrategies.spec.ts mocks node:fs, so the Cargo.lock lookup in syncCargoLockfile finds a lock and the real sync shells out to `cargo update --workspace --offline` — 78 times per run. On a cold CI runner that pushes "should update all packages to the same version" past its 5s timeout; it failed that way on #668 and #671. Mock the sync like the other collaborators. Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01HQN3v9Z4f1mu3xK4Z7K44e --- packages/version/test/unit/core/versionStrategies.spec.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packages/version/test/unit/core/versionStrategies.spec.ts b/packages/version/test/unit/core/versionStrategies.spec.ts index 150b2b75..ffea0ad7 100644 --- a/packages/version/test/unit/core/versionStrategies.spec.ts +++ b/packages/version/test/unit/core/versionStrategies.spec.ts @@ -17,6 +17,8 @@ import * as jsonOutput from '../../../src/utils/jsonOutput.js'; import * as logging from '../../../src/utils/logging.js'; // Mock dependencies +// fs is mocked, so the Cargo.lock lookup finds a lock and the real sync would shell out to cargo. +vi.mock('../../../src/cargo/cargoLock.js'); vi.mock('../../../src/git/commands.js'); vi.mock('../../../src/git/tagsAndBranches.js'); vi.mock('../../../src/git/tagVerification.js'); From 18daebc6ea7fee82aa68916627c7e73d98040cd2 Mon Sep 17 00:00:00 2001 From: Claude Date: Thu, 22 Oct 2026 17:50:45 +0000 Subject: [PATCH 4/4] test(version): drop the comment on the cargoLock mock Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01HQN3v9Z4f1mu3xK4Z7K44e --- packages/version/test/unit/core/versionStrategies.spec.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/version/test/unit/core/versionStrategies.spec.ts b/packages/version/test/unit/core/versionStrategies.spec.ts index ffea0ad7..6b88dc8c 100644 --- a/packages/version/test/unit/core/versionStrategies.spec.ts +++ b/packages/version/test/unit/core/versionStrategies.spec.ts @@ -17,7 +17,6 @@ import * as jsonOutput from '../../../src/utils/jsonOutput.js'; import * as logging from '../../../src/utils/logging.js'; // Mock dependencies -// fs is mocked, so the Cargo.lock lookup finds a lock and the real sync would shell out to cargo. vi.mock('../../../src/cargo/cargoLock.js'); vi.mock('../../../src/git/commands.js'); vi.mock('../../../src/git/tagsAndBranches.js');