GitHub check
256 KB of 379 KB loaded Download the full log (379 KB)
123 KB of earlier output not loaded
[2m) 268ms
Test Files 6 passed (6)
Tests 90 passed (90)
Start at 02:16:49
Duration 3.12s (transform 51%, import 40%, setup 6%, tests 3%)
โ src/snapShot/RegionSnapShot.test.ts (4 tests) 9ms
~/packages/source-control-core$ vp test run --config ../../vite.config.ts --dir . โ cache disabled
โ src/preview/GuestInput.test.ts (4 tests) 10ms
โ src/permissions/MacPermissionHelper.test.ts (1 test) 13ms
โ src/ipc/methods/snapShot.test.ts (3 tests) 14ms
โ src/backend/tailscaleEndpointProvider.test.ts (3 tests) 24ms
โ src/environments/ManagedEndpointAllocations.test.ts (1 test) 9ms
โ src/app/DesktopWebLinks.test.ts (2 tests) 8ms
โ src/agentActivity/ApnsDeliveryQueue.test.ts (1 test) 7ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/source-control-core
โ scripts/verify-preload-bundle.test.mjs (7 tests) 40ms
โ react src/features/pull-requests/usePullRequestDiff.test.tsx (2 tests) 62ms
โ src/electron/ElectronShell.test.ts (5 tests) 25ms
โ src/preview/BrowserImport/CookieDatabase.test.ts (2 tests) 56ms
โ react src/features/settings/SettingsServerControlsRouteScreen.test.tsx (1 test) 17ms
โ src/preview/BrowserImport/SafariPermission.test.ts (2 tests) 19ms
โ scripts/browser-secret-native.test.mjs (10 tests) 710ms
โ src/server/mergeMessage.test.ts (11 tests) 6ms
โ src/preview/PickedElementPayload.test.ts (2 tests) 6ms
โ src/server/pullRequestChecks.test.ts (16 tests) 9ms
โ src/snapShot/NativeCaptureFeedback.test.ts (2 tests) 36ms
โ ../../native/kde-snap-shot/src/activate.test.ts (2 tests) 8ms
โ src/server/SourceControlProvider.test.ts (1 test) 2ms
โ src/environments/CloudflareApiPause.test.ts (1 test) 11ms
Test Files 32 passed (32)
Tests 276 passed (276)
Start at 02:16:41
Duration 12.97s (import 81%, transform 10%, setup 4%, tests 4%)
โ src/server/diffFileRevisions.test.ts (15 tests) 9ms
~/packages/source-control-github$ vp test run --config ../../vite.config.ts --dir . โ cache disabled
โ src/preview/BrowserImport/LinuxBrowserSecret.test.ts (1 test) 25ms
โ src/snapShot/SnapShotAccessibilityProcess.test.ts (3 tests) 5ms
โ unit src/lib/threadActivity.test.ts (40 tests) 127ms
โ src/electron/WindowsForegroundFocusThread.test.ts (2 tests) 11ms
โ src/electron/WindowsForeground.test.ts (3 tests) 3ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/source-control-github
โ src/app/DesktopUserData.test.ts (2 tests) 41ms
โ gnome-extension/feedbackGeometry.test.js (7 tests) 13ms
โ src/app/DesktopAppActivationBroker.test.ts (3 tests) 9ms
โ src/permissions/MacSettingsWindow.test.ts (2 tests) 9ms
โ src/app/DesktopEnvironment.test.ts (2 tests) 20ms
โ unit src/state/thread-outbox.test.ts (36 tests) 52ms
โ src/ipc/methods/localEnvironment.test.ts (1 test) 11ms
โ unit src/features/threads/threadListV2.test.ts (60 tests) 128ms
โ ../../native/kde-snap-shot/src/feedbackGeometry.test.ts (2 tests) 19ms
โ unit src/features/agent-awareness/remoteRegistration.test.ts (15 tests) 393ms
โ src/app/DesktopPreReadyFileSystem.test.ts (1 test) 9ms
โ unit src/lib/modelOptions.test.ts (29 tests) 40ms
โ src/preview/RecordingInput.test.ts (2 tests) 9ms
โ src/preview/WebviewPreferences.test.ts (2 tests) 6ms
โ src/snapShot/WindowsCaptureFeedback.test.ts (1 test) 2ms
โ src/preview/AnnotationKeyboard.test.ts (1 test) 2ms
โ src/ipc/methods/sshEnvironment.test.ts (1 test) 10ms
โ src/preview/AnnotationIds.test.ts (1 test) 17ms
Test Files 103 passed (103)
Tests 839 passed (839)
Start at 02:16:38
Duration 16.29s (import 48%, transform 25%, tests 14%, setup 12%, worker 1%)
Import 522 modules were evaluated 6537 times ยท 45.32s total, 48% of tracked time
~4.56s faster with isolate: false โ shared modules are evaluated once per worker instead of once per file
learn more: https://vitest.dev/guide/improving-performance#test-isolation
~/packages/provider-cursor$ vp test run --config ../../vite.config.ts --dir . โ cache disabled
โ src/server/SourceControlRateLimit.test.ts (6 tests) 12ms
Test Files 5 passed (5)
Tests 49 passed (49)
Start at 02:16:53
Duration 1.59s (transform 49%, import 28%, setup 20%, tests 2%, worker 1%)
~/packages/provider-pi$ vp test run --config ../../vite.config.ts --dir . โ cache disabled
โ unit src/features/diffs/nativeReviewDiffHighlighter.test.ts (14 tests) 124ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/provider-cursor
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/provider-pi
โ src/server/gitHubPullRequestJson.test.ts (50 tests) 104ms
โ unit src/lib/composerFiles.test.ts (36 tests) 39ms
stderr | src/state/use-composer-drafts.test.ts > mobile composer drafts > restores deleted file chips and releases undo history (uploaded: false)
[composer-attachments] could not remove local file TypeError: file.delete is not a function
at removePersistedComposerAttachmentFile (/home/runner/_work/t3code/t3code/apps/mobile/src/lib/composerImages.ts:223:12)
at process.processTicksAndRejections (node:internal/process/task_queues:104:5)
at releaseUnusedComposerAttachmentFiles (/home/runner/_work/t3code/t3code/apps/mobile/src/state/use-composer-drafts.ts:924:5)
Sourcemap for "/home/runner/_work/t3code/t3code/node_modules/.pnpm/expo-file-system@58.0.9_expo@58.0.14_react-native@0.88.0_@babel+core@7.29.7_supports-co_dba9ef97a37b898651a8aa6fe892beee/node_modules/expo-file-system/build/index.js" points to missing source files
Sourcemap for "/home/runner/_work/t3code/t3code/node_modules/.pnpm/expo-file-system@58.0.9_expo@58.0.14_react-native@0.88.0_@babel+core@7.29.7_supports-co_dba9ef97a37b898651a8aa6fe892beee/node_modules/expo-file-system/build/Paths.js" points to missing source files
Sourcemap for "/home/runner/_work/t3code/t3code/node_modules/.pnpm/expo-file-system@58.0.9_expo@58.0.14_react-native@0.88.0_@babel+core@7.29.7_supports-co_dba9ef97a37b898651a8aa6fe892beee/node_modules/expo-file-system/build/Directory.js" points to missing source files
Sourcemap for "/home/runner/_work/t3code/t3code/node_modules/.pnpm/expo-file-system@58.0.9_expo@58.0.14_react-native@0.88.0_@babel+core@7.29.7_supports-co_dba9ef97a37b898651a8aa6fe892beee/node_modules/expo-file-system/build/ExpoFileSystem.js" points to missing source files
Sourcemap for "/home/runner/_work/t3code/t3code/node_modules/.pnpm/expo-modules-core@58.0.22_patch_hash=f0b0fd100550ed76e5c25b4d13eb7c9ff62825f8f197c53edf_6a1c9e707e4caac0e11bcdf133fd5ef6/node_modules/expo-modules-core/build/index.js" points to missing source files
Sourcemap for "/home/runner/_work/t3code/t3code/node_modules/.pnpm/expo-modules-core@58.0.22_patch_hash=f0b0fd100550ed76e5c25b4d13eb7c9ff62825f8f197c53edf_6a1c9e707e4caac0e11bcdf133fd5ef6/node_modules/expo-modules-core/build/ts-declarations/global.js" points to missing source files
Sourcemap for "/home/runner/_work/t3code/t3code/node_modules/.pnpm/expo-modules-core@58.0.22_patch_hash=f0b0fd100550ed76e5c25b4d13eb7c9ff62825f8f197c53edf_6a1c9e707e4caac0e11bcdf133fd5ef6/node_modules/expo-modules-core/build/ts-declarations/EventEmitter.js" points to missing source files
Sourcemap for "/home/runner/_work/t3code/t3code/node_modules/.pnpm/expo-modules-core@58.0.22_patch_hash=f0b0fd100550ed76e5c25b4d13eb7c9ff62825f8f197c53edf_6a1c9e707e4caac0e11bcdf133fd5ef6/node_modules/expo-modules-core/build/ts-declarations/NativeModule.js" points to missing source files
Sourcemap for "/home/runner/_work/t3code/t3code/node_modules/.pnpm/expo-modules-core@58.0.22_patch_hash=f0b0fd100550ed76e5c25b4d13eb7c9ff62825f8f197c53edf_6a1c9e707e4caac0e11bcdf133fd5ef6/node_modules/expo-modules-core/build/ts-declarations/SharedObject.js" points to missing source files
Sourcemap for "/home/runner/_work/t3code/t3code/node_modules/.pnpm/expo-modules-core@58.0.22_patch_hash=f0b0fd100550ed76e5c25b4d13eb7c9ff62825f8f197c53edf_6a1c9e707e4caac0e11bcdf133fd5ef6/node_modules/expo-modules-core/build/ts-declarations/SharedRef.js" points to missing source files
Sourcemap for "/home/runner/_work/t3code/t3code/node_modules/.pnpm/expo-modules-core@58.0.22_patch_hash=f0b0fd100550ed76e5c25b4d13eb7c9ff62825f8f197c53edf_6a1c9e707e4caac0e11bcdf133fd5ef6/node_modules/expo-modules-core/build/sweet/setUpJsLogger.fx.js" points to missing source files
Sourcemap for "/home/runner/_work/t3code/t3code/node_modules/.pnpm/expo-modules-core@58.0.22_patch_hash=f0b0fd100550ed76e5c25b4d13eb7c9ff62825f8f197c53edf_6a1c9e707e4caac0e11bcdf133fd5ef6/node_modules/expo-modules-core/build/errors/CodedError.js" points to missing source files
Sourcemap for "/home/runner/_work/t3code/t3code/node_modules/.pnpm/expo-modules-core@58.0.22_patch_hash=f0b0fd100550ed76e5c25b4d13eb7c9ff62825f8f197c53edf_6a1c9e707e4caac0e11bcdf133fd5ef6/node_modules/expo-modules-core/build/requireNativeModule.js" points to missing source files
stderr | src/state/use-composer-drafts.test.ts > mobile composer drafts > restores deleted file chips and releases undo history (uploaded: true)
[composer-attachments] could not remove local file Error [RolldownError]: Parse failure: Parse failed with 1 error:
Flow is not supported
1: /**
^
2: * Copyright (c) Meta Platforms, Inc. and affiliates.
3: *
At file: /@fs/home/runner/_work/t3code/t3code/node_modules/.pnpm/react-native@0.88.0_@babel+core@7.29.7_supports-color@8.1.1__@react-native+metro-config_4bbd3f1473e0b719a3b6bb196a69f292/node_modules/react-native/index.js:1:0
at error (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/@voidzero-dev+vite-plus-core@1.3.0_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@volar+_298b27adb89a86e0d0a0a5c4125affc4/node_modules/@voidzero-dev/vite-plus-core/dist/rolldown/shared/logs-D6uA606S.mjs:166:24)
at normalizeParseError (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/@voidzero-dev+vite-plus-core@1.3.0_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@volar+_298b27adb89a86e0d0a0a5c4125affc4/node_modules/@voidzero-dev/vite-plus-core/dist/rolldown/parse-ast-index.mjs:25:9)
at wrap (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/@voidzero-dev+vite-plus-core@1.3.0_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@volar+_298b27adb89a86e0d0a0a5c4125affc4/node_modules/@voidzero-dev/vite-plus-core/dist/rolldown/parse-ast-index.mjs:5:39)
at parseAstAsync (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/@voidzero-dev+vite-plus-core@1.3.0_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@volar+_298b27adb89a86e0d0a0a5c4125affc4/node_modules/@voidzero-dev/vite-plus-core/dist/rolldown/parse-ast-index.mjs:54:9)
at async ssrTransformScript (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/@voidzero-dev+vite-plus-core@1.3.0_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@volar+_298b27adb89a86e0d0a0a5c4125affc4/node_modules/@voidzero-dev/vite-plus-core/dist/vite/node/chunks/node.js:21140:9)
at async loadAndTransform (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/@voidzero-dev+vite-plus-core@1.3.0_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@volar+_298b27adb89a86e0d0a0a5c4125affc4/node_modules/@voidzero-dev/vite-plus-core/dist/vite/node/chunks/node.js:25564:64) {
cause: undefined,
__vitest_rollup_error__: {
plugin: undefined,
id: '/@fs/home/runner/_work/t3code/t3code/node_modules/.pnpm/react-native@0.88.0_@babel+core@7.29.7_supports-color@8.1.1__@react-native+metro-config_4bbd3f1473e0b719a3b6bb196a69f292/node_modules/react-native/index.js',
loc: {
line: 1,
column: 0,
file: '/@fs/home/runner/_work/t3code/t3code/node_modules/.pnpm/react-native@0.88.0_@babel+core@7.29.7_supports-color@8.1.1__@react-native+metro-config_4bbd3f1473e0b719a3b6bb196a69f292/node_modules/react-native/index.js'
},
frame: '1 | /**\n' +
' | ^\n' +
'2 | * Copyright (c) Meta Platforms, Inc. and affiliates.\n' +
'3 | *'
},
runnerError: Error: RunnerError
at reviveInvokeError (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/@voidzero-dev+vite-plus-core@1.3.0_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@volar+_298b27adb89a86e0d0a0a5c4125affc4/node_modules/@voidzero-dev/vite-plus-core/dist/vite/node/module-runner.js:553:64)
at Object.invoke (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/@voidzero-dev+vite-plus-core@1.3.0_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@volar+_298b27adb89a86e0d0a0a5c4125affc4/node_modules/@voidzero-dev/vite-plus-core/dist/vite/node/module-runner.js:568:33)
at process.processTicksAndRejections (node:internal/process/task_queues:104:5)
at async VitestModuleRunner.getModuleInformation (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/@voidzero-dev+vite-plus-core@1.3.0_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@volar+_298b27adb89a86e0d0a0a5c4125affc4/node_modules/@voidzero-dev/vite-plus-core/dist/vite/node/module-runner.js:1217:7)
at async request (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/@voidzero-dev+vite-plus-core@1.3.0_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@volar+_298b27adb89a86e0d0a0a5c4125affc4/node_modules/@voidzero-dev/vite-plus-core/dist/vite/node/module-runner.js:1234:83)
at /home/runner/_work/t3code/t3code/node_modules/.pnpm/expo-modules-core@58.0.22_patch_hash=f0b0fd100550ed76e5c25b4d13eb7c9ff62825f8f197c53edf_6a1c9e707e4caac0e11bcdf133fd5ef6/node_modules/expo-modules-core/build/requireNativeModule.ts:1:1
at async VitestModuleEvaluator._runInlinedModule (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/module-evaluator.js:261:4)
at async VitestModuleRunner.directRequest (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/@voidzero-dev+vite-plus-core@1.3.0_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@volar+_298b27adb89a86e0d0a0a5c4125affc4/node_modules/@voidzero-dev/vite-plus-core/dist/vite/node/module-runner.js:1277:59)
at async VitestModuleRunner.cachedRequest (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/@voidzero-dev+vite-plus-core@1.3.0_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@volar+_298b27adb89a86e0d0a0a5c4125affc4/node_modules/@voidzero-dev/vite-plus-core/dist/vite/node/module-runner.js:1184:73)
at /home/runner/_work/t3code/t3code/node_modules/.pnpm/expo-modules-core@58.0.22_patch_hash=f0b0fd100550ed76e5c25b4d13eb7c9ff62825f8f197c53edf_6a1c9e707e4caac0e11bcdf133fd5ef6/node_modules/expo-modules-core/build/sweet/sweet/setUpJsLogger.fx.ts:2:1
}
stderr | src/state/use-composer-drafts.test.ts > mobile composer drafts > restores deleted file chips and releases undo history (uploaded: true)
[composer-attachments] could not verify incoming share ownership {
_tag: 'IncomingShareStorageError',
operation: 'load',
shareId: null,
cause: Error [RolldownError]: Parse failure: Parse failed with 1 error:
Flow is not supported
1: /**
^
2: * Copyright (c) Meta Platforms, Inc. and affiliates.
3: *
At file: /@fs/home/runner/_work/t3code/t3code/node_modules/.pnpm/react-native@0.88.0_@babel+core@7.29.7_supports-color@8.1.1__@react-native+metro-config_4bbd3f1473e0b719a3b6bb196a69f292/node_modules/react-native/index.js:1:0
at error (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/@voidzero-dev+vite-plus-core@1.3.0_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@volar+_298b27adb89a86e0d0a0a5c4125affc4/node_modules/@voidzero-dev/vite-plus-core/dist/rolldown/shared/logs-D6uA606S.mjs:166:24)
at normalizeParseError (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/@voidzero-dev+vite-plus-core@1.3.0_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@volar+_298b27adb89a86e0d0a0a5c4125affc4/node_modules/@voidzero-dev/vite-plus-core/dist/rolldown/parse-ast-index.mjs:25:9)
at wrap (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/@voidzero-dev+vite-plus-core@1.3.0_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@volar+_298b27adb89a86e0d0a0a5c4125affc4/node_modules/@voidzero-dev/vite-plus-core/dist/rolldown/parse-ast-index.mjs:5:39)
at parseAstAsync (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/@voidzero-dev+vite-plus-core@1.3.0_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@volar+_298b27adb89a86e0d0a0a5c4125affc4/node_modules/@voidzero-dev/vite-plus-core/dist/rolldown/parse-ast-index.mjs:54:9)
at async ssrTransformScript (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/@voidzero-dev+vite-plus-core@1.3.0_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@volar+_298b27adb89a86e0d0a0a5c4125affc4/node_modules/@voidzero-dev/vite-plus-core/dist/vite/node/chunks/node.js:21140:9)
at async loadAndTransform (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/@voidzero-dev+vite-plus-core@1.3.0_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@volar+_298b27adb89a86e0d0a0a5c4125affc4/node_modules/@voidzero-dev/vite-plus-core/dist/vite/node/chunks/node.js:25564:64) {
cause: undefined,
__vitest_rollup_error__: {
plugin: undefined,
id: '/@fs/home/runner/_work/t3code/t3code/node_modules/.pnpm/react-native@0.88.0_@babel+core@7.29.7_supports-color@8.1.1__@react-native+metro-config_4bbd3f1473e0b719a3b6bb196a69f292/node_modules/react-native/index.js',
loc: [Object],
frame: '1 | /**\n' +
' | ^\n' +
'2 | * Copyright (c) Meta Platforms, Inc. and affiliates.\n' +
'3 | *'
},
runnerError: Error: RunnerError
at reviveInvokeError (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/@voidzero-dev+vite-plus-core@1.3.0_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@volar+_298b27adb89a86e0d0a0a5c4125affc4/node_modules/@voidzero-dev/vite-plus-core/dist/vite/node/module-runner.js:553:64)
at Object.invoke (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/@voidzero-dev+vite-plus-core@1.3.0_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@volar+_298b27adb89a86e0d0a0a5c4125affc4/node_modules/@voidzero-dev/vite-plus-core/dist/vite/node/module-runner.js:568:33)
at process.processTicksAndRejections (node:internal/process/task_queues:104:5)
at async VitestModuleRunner.getModuleInformation (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/@voidzero-dev+vite-plus-core@1.3.0_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@volar+_298b27adb89a86e0d0a0a5c4125affc4/node_modules/@voidzero-dev/vite-plus-core/dist/vite/node/module-runner.js:1217:7)
at async request (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/@voidzero-dev+vite-plus-core@1.3.0_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@volar+_298b27adb89a86e0d0a0a5c4125affc4/node_modules/@voidzero-dev/vite-plus-core/dist/vite/node/module-runner.js:1234:83)
at /home/runner/_work/t3code/t3code/node_modules/.pnpm/expo-modules-core@58.0.22_patch_hash=f0b0fd100550ed76e5c25b4d13eb7c9ff62825f8f197c53edf_6a1c9e707e4caac0e11bcdf133fd5ef6/node_modules/expo-modules-core/build/requireNativeModule.ts:1:1
at async VitestModuleEvaluator._runInlinedModule (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/module-evaluator.js:261:4)
at async VitestModuleRunner.directRequest (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/@voidzero-dev+vite-plus-core@1.3.0_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@volar+_298b27adb89a86e0d0a0a5c4125affc4/node_modules/@voidzero-dev/vite-plus-core/dist/vite/node/module-runner.js:1277:59)
at async VitestModuleRunner.cachedRequest (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/@voidzero-dev+vite-plus-core@1.3.0_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@volar+_298b27adb89a86e0d0a0a5c4125affc4/node_modules/@voidzero-dev/vite-plus-core/dist/vite/node/module-runner.js:1184:73)
at /home/runner/_work/t3code/t3code/node_modules/.pnpm/expo-modules-core@58.0.22_patch_hash=f0b0fd100550ed76e5c25b4d13eb7c9ff62825f8f197c53edf_6a1c9e707e4caac0e11bcdf133fd5ef6/node_modules/expo-modules-core/build/sweet/sweet/setUpJsLogger.fx.ts:2:1
}
}
โ unit src/lib/attachmentUpload.test.ts (28 tests) 40ms
โ unit src/features/sharing/incoming-share-model.test.ts (19 tests) 15ms
stderr | src/state/use-composer-drafts.test.ts > mobile composer drafts > preserves saved drafts and attachment files when the draft read fails
[composer-drafts] failed to hydrate drafts {
_tag: 'ComposerDraftPersistenceError',
operation: 'read',
directory: 'composer-drafts',
fileName: 'drafts.json',
cause: Error: storage unavailable
at /home/runner/_work/t3code/t3code/apps/mobile/src/state/use-composer-drafts.test.ts:1978:45
at file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:2886:64
at file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:1632:35
at file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:2801:26
at file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3338:20
at new Promise (<anonymous>)
at runWithCancel (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3333:10)
at file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3318:20
at new Promise (<anonymous>)
at runWithTimeout (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3276:10)
}
stderr | src/state/use-composer-drafts.test.ts > mobile composer drafts > preserves saved drafts and attachment files when the draft read fails
[composer-drafts] failed to hydrate drafts {
_tag: 'ComposerDraftPersistenceError',
operation: 'read',
directory: 'composer-drafts',
fileName: 'drafts.json',
cause: Error: storage unavailable
at /home/runner/_work/t3code/t3code/apps/mobile/src/state/use-composer-drafts.test.ts:1978:45
at file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:2886:64
at file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:1632:35
at file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:2801:26
at file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3338:20
at new Promise (<anonymous>)
at runWithCancel (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3333:10)
at file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3318:20
at new Promise (<anonymous>)
at runWithTimeout (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3276:10)
}
stderr | src/state/use-composer-drafts.test.ts > mobile composer drafts > preserves saved drafts and attachment files when the draft decode fails
[composer-drafts] failed to hydrate drafts {
_tag: 'ComposerDraftPersistenceError',
operation: 'decode',
directory: 'composer-drafts',
fileName: 'drafts.json',
cause: {
_tag: 'SchemaError',
message: 'Expected 1\n at ["schemaVersion"]'
}
}
stderr | src/state/use-composer-drafts.test.ts > mobile composer drafts > preserves saved drafts and attachment files when the draft decode fails
[composer-drafts] failed to hydrate drafts {
_tag: 'ComposerDraftPersistenceError',
operation: 'decode',
directory: 'composer-drafts',
fileName: 'drafts.json',
cause: {
_tag: 'SchemaError',
message: 'Expected 1\n at ["schemaVersion"]'
}
}
stderr | src/state/use-thread-outbox-drain.test.ts > thread outbox drain delivery cleanup > removes an acknowledged outbox item even when the sign-out archive write fails
[thread-outbox] could not update sign-out snapshot after delivery {
messageId: 'archive-write-failure',
error: {
_tag: 'ComposerDraftPersistenceError',
operation: 'write',
directory: 'composer-drafts',
fileName: 'drafts.json',
cause: Error: Draft storage unavailable
at /home/runner/_work/t3code/t3code/apps/mobile/src/state/use-thread-outbox-drain.test.ts:335:37
at process.processTicksAndRejections (node:internal/process/task_queues:104:5)
at async file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:2801:20
}
}
โ unit src/state/use-thread-outbox-drain.test.ts (23 tests) 95ms
stderr | src/state/use-thread-outbox-drain.test.ts > thread outbox drain delivery cleanup > retries only cleanup after an acknowledged send removal fails
[thread-outbox] failed to remove acknowledged queued message {
environmentId: 'environment-1',
threadId: 'thread-1',
messageId: 'message-acknowledged',
error: {
โ unit src/features/home/useThreadListActions.test.ts (37 tests) 61ms
_tag: 'ThreadOutboxManagerError',
operation: 'remove',
โ src/server/mcpExtensionSource.test.ts (24 tests) 154ms
environmentId: 'environment-1',
threadId: 'thread-1',
messageId: 'message-acknowledged',
cause: Error: storage unavailable
at /home/runner/_work/t3code/t3code/apps/mobile/src/state/use-thread-outbox-drain.test.ts:399:55
at file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:1632:35
at file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:2801:26
at file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3338:20
at new Promise (<anonymous>)
โ unit src/state/use-composer-drafts.test.ts (74 tests) 791ms
at runWithCancel (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3333:10)
at file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3318:20
at new Promise (<anonymous>)
at runWithTimeout (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3276:10)
at file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3904:64
}
}
stderr | src/state/use-thread-outbox-drain.test.ts > thread outbox delivered creation recovery > retries a failed removal without duplicating recovered draft content
[thread-outbox] could not remove recovered pending task Error: storage unavailable
at /home/runner/_work/t3code/t3code/apps/mobile/src/state/use-thread-outbox-drain.test.ts:557:30
at file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:1632:35
at file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:2801:26
at file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3338:20
at new Promise (<anonymous>)
at runWithCancel (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3333:10)
at file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3318:20
at new Promise (<anonymous>)
at runWithTimeout (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3276:10)
at file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:3904:64
stderr | src/state/use-thread-outbox-drain.test.ts > thread outbox delivered creation recovery > keeps the queue entry when the recovered draft cannot persist
[thread-outbox] could not hand an edited pending task to the composer {
_tag: 'ComposerDraftPersistenceError',
operation: 'write',
directory: 'composer-drafts',
fileName: 'drafts.json',
cause: Error: disk full
at /home/runner/_work/t3code/t3code/apps/mobile/src/state/use-thread-outbox-drain.test.ts:583:37
at process.processTicksAndRejections (node:internal/process/task_queues:104:5)
at async file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:2801:20
}
stderr | src/state/use-thread-outbox-drain.test.ts > thread outbox recovery rollback > rolls a failed recovery merge back so the retry cannot duplicate the text
[thread-outbox] failed to persist a recovery rollback {
_tag: 'ComposerDraftPersistenceError',
operation: 'write',
directory: 'composer-drafts',
fileName: 'drafts.json',
cause: Error: disk full
at /home/runner/_work/t3code/t3code/apps/mobile/src/state/use-thread-outbox-drain.test.ts:733:37
at process.processTicksAndRejections (node:internal/process/task_queues:104:5)
at async file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:2801:20
}
stderr | src/state/use-thread-outbox-drain.test.ts > thread outbox recovery rollback > rolls a failed recovery merge back so the retry cannot duplicate the text
[thread-outbox] failed to restore an undeliverable message {
_tag: 'ComposerDraftPersistenceError',
operation: 'write',
directory: 'composer-drafts',
fileName: 'drafts.json',
cause: Error: disk full
at /home/runner/_work/t3code/t3code/apps/mobile/src/state/use-thread-outbox-drain.test.ts:733:37
at process.processTicksAndRejections (node:internal/process/task_queues:104:5)
at async file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/run.BPv-BBRv.js:2801:20
}
โ src/server/skills.test.ts (5 tests) 159ms
โ unit src/native/workspace-stack-projection.test.ts (24 tests) 23ms
โ src/server/GitHubRest.test.ts (8 tests) 93ms
โ src/server/gitHubGraphQlClient.test.ts (9 tests) 169ms
โ src/server/githubStackActions.test.ts (9 tests) 123ms
โ src/server/accountUsage.test.ts (9 tests) 919ms
โ src/server/GitHubPullRequestProvider.test.ts (23 tests) 98ms
โ unit src/features/pull-requests/pullRequestDiffHighlightFiles.test.ts (45 tests) 505ms
โ src/server/usageLimits.test.ts (9 tests) 81ms
โ unit src/state/thread-task-permissions.test.ts (7 tests) 23ms
โ src/server/commands.test.ts (1 test) 3ms
โ unit src/features/pull-requests/pullRequestList.test.ts (18 tests) 60ms
โ src/server/mcpInjection.test.ts (3 tests) 17ms
โ unit src/state/use-thread-outbox-drain.permissions.test.ts (12 tests) 52ms
โ src/server/auth.test.ts (10 tests) 108ms
โ src/shared/definition.test.ts (9 tests) 21ms
โ src/server/textGeneration.test.ts (8 tests) 121ms
โ unit src/lib/composerContext.test.ts (16 tests) 225ms
โ src/server/transportFailure.test.ts (10 tests) 12ms
โ unit src/lib/mobileTheme.test.ts (24 tests) 140ms
โ src/server/GitHubCredentials.test.ts (5 tests) 33ms
โ src/server/CursorAgentSdk.test.ts (1 test) 18ms
โ src/server/status.test.ts (8 tests) 42ms
โ src/server/gitHubChangeRequestTemplate.test.ts (10 tests) 1608ms
โ src/server/textGeneration.test.ts (1 test) 45ms
โ src/server/status.test.ts (6 tests) 116ms
โ unit src/lib/android-workspace-navigation.test.ts (17 tests) 28ms
โ unit src/lib/attachmentDownload.test.ts (19 tests) 32ms
โ unit src/features/review/nativeReviewDiffAdapter.test.ts (19 tests) 1244ms
โ buildNativeReviewDiffData row bound (1)
โ caps each huge file excerpt while preserving full counts and ordinary files 884ms
โ src/server/adapter.test.ts (18 tests) 171ms
โ src/server/accountCache.test.ts (2 tests) 5ms
โ src/server/GitHubPullRequestApi.test.ts (105 tests) 1610ms
โ GitHubPullRequestApi.layer (104)
โ keeps the pull request being ticked through, not the one looked up first 845ms
โ src/server/driver.test.ts (2 tests) 140ms
โ src/server/CursorSdk.test.ts (2 tests) 6ms
โ src/server/credentialStore.test.ts (5 tests) 64ms
โ src/server/GitHubPullRequestProvider.credential.test.ts (1 test) 53ms
โ src/server/driver.test.ts (5 tests) 165ms
โ unit src/lib/composerAttachmentUploadQueue.test.ts (11 tests) 15ms
โ unit src/features/threads/thread-feed-live-follow.test.ts (28 tests) 15ms
โ src/server/CursorSdkCatalog.test.ts (1 test) 6ms
Test Files 14 passed (14)
Tests 90 passed (90)
Start at 02:16:55
Duration 3.58s (import 43%, transform 40%, tests 9%, setup 8%)
~/packages/ssh$ vp test run --config ../../vite.config.ts --dir . โ cache disabled
โ src/server/gitHubMediaFetch.test.ts (2 tests) 14ms
โ src/server/GitHubQuota.test.ts (4 tests) 10ms
โ src/server/gitHubDiscovery.test.ts (4 tests) 8ms
โ src/server/GitHubSourceControlProvider.test.ts (30 tests) 2133ms
โ keeps Enterprise operations on the selected remote: git@code.example.test:team/project.git 638ms
โ keeps Enterprise operations on the selected remote: ssh://git@code.example.test/team/project.git 643ms
โ keeps Enterprise operations on the selected remote: https://code.example.test/team/project.git 632ms
โ src/shared/referenceAutolinks.test.ts (4 tests) 3ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/ssh
โ src/server/gitHubPullRequests.test.ts (3 tests) 5ms
โ src/server/gitHubRepositoryResolution.test.ts (3 tests) 3ms
โ unit src/features/voice-input/voiceInputSession.test.ts (13 tests) 15ms
โ unit src/state/composer-attachment-uploads.test.ts (5 tests) 17ms
โ unit src/lib/composerContextClipboard.test.ts (7 tests) 20ms
โ unit src/features/updates/app-updates.test.ts (11 tests) 80ms
โ unit src/connection/environment-cache-store.test.ts (4 tests) 49ms
โ src/auth.test.ts (2 tests) 20ms
โ src/config.test.ts (4 tests) 56ms
stdout | src/command.test.ts > ssh command > preserves process output: default head
[02:16:59.699] WARN (#40): ssh.command.failed {
alias: 'synthetic-fixture',
hostname: 'synthetic-fixture',
username: null,
port: null,
command: [
'ssh',
'-o',
'BatchMode=yes',
'-o',
'ConnectTimeout=10',
'--',
'synthetic-fixture'
],
exitCode: 1,
stdout: 'HEAD\n' +
'verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbo\n' +
'[truncated]',
stderr: ''
}
โ unit src/features/threads/checkout-new-task-branch.test.ts (11 tests) 2611ms
โ new-task branch checkout (11)
โ resolves historical branch metadata to its worktree beyond a long query's first page 347ms
โ switches to the selected remote instead of reusing a worktree tracking another remote 379ms
stdout | src/command.test.ts > ssh command > preserves process output: opt-in tail
[02:16:59.730] WARN (#53): ssh.command.failed {
alias: 'synthetic-fixture',
hostname: 'synthetic-fixture',
username: null,
port: null,
command: [
'ssh',
'-o',
'BatchMode=yes',
'-o',
'ConnectTimeout=10',
'--',
'synthetic-fixture'
],
exitCode: 1,
stdout: '[truncated]\n' +
'bose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix verbose-prefix {"credential":"[redacted]"}\n' +
'PANIC: emulator SDK is broken\n',
stderr: 'stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure stderr failure '
}
โ unit src/state/pending-task-editor-writes.test.ts (5 tests) 5ms
โ unit src/features/review/reviewModel.test.ts (13 tests) 16ms
โ src/command.test.ts (7 tests) 145ms
โ src/server/githubStackRebase.test.ts (3 tests) 1821ms
โ cascadeRebaseStack (3)
โ moves each layer's own commits onto the rebased layer below it 869ms
โ refuses to overwrite a layer pushed after it was reviewed 454ms
โ stops at a conflicting layer and leaves it untouched 485ms
Test Files 18 passed (18)
Tests 282 passed (282)
Start at 02:16:54
Duration 5.46s (transform 36%, import 32%, tests 25%, setup 6%)
Import 201 modules were evaluated 1834 times ยท 10.16s total, 32% of tracked time
~583ms faster with isolate: false โ shared modules are evaluated once per worker instead of once per file
learn more: https://vitest.dev/guide/improving-performance#test-isolation
โ unit src/features/home/home-thread-navigation.test.ts (6 tests) 6ms
~/packages/provider-opencode$ vp test run --config ../../vite.config.ts --dir . โ cache disabled
โ src/tunnel.test.ts (7 tests) 86ms
Test Files 4 passed (4)
Tests 20 passed (20)
Start at 02:16:59
Duration 620ms (import 36%, transform 28%, tests 20%, setup 14%, worker 2%)
~/packages/effect-codex-app-server$ vp test run --config ../../vite.config.ts --dir . โ cache disabled
โ unit src/state/use-selected-thread-git-actions.test.ts (11 tests) 8ms
โ unit src/features/threads/threadOrderAvailability.test.ts (7 tests) 232ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/effect-codex-app-server
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/provider-opencode
โ unit src/features/cloud/linkEnvironment.test.ts (3 tests) 125ms
โ unit src/state/thread-outbox-removal.test.ts (5 tests) 6ms
โ unit src/features/sharing/incoming-share-inbox.test.ts (10 tests) 50ms
โ src/_internal/shared.test.ts (4 tests) 15ms
โ src/_internal/stdio.test.ts (1 test) 7ms
โ src/server/adapter.test.ts (87 tests) 2313ms
โ PiAdapterV2 (85)
โ delivers realistic MCP screenshots through the bridge, JSONL transport, and adapter 363ms
โ unit src/lib/composerImages.test.ts (6 tests) 6ms
Test Files 7 passed (7)
Tests 127 passed (127)
Start at 02:16:55
Duration 5.42s (transform 49%, import 31%, tests 14%, setup 6%)
โ src/protocol.test.ts (17 tests) 87ms
~/packages/shared$ vp test run --config ../../vite.config.ts --dir . โ cache disabled
โ unit src/native/composerEditorRevision.test.ts (17 tests) 11ms
โ unit src/features/home/homeThreadList.test.ts (4 tests) 12ms
โ unit src/features/workspace/workspace-tabs-state.test.ts (15 tests) 5ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/shared
โ unit src/dependency-graph.test.ts (2 tests) 13ms
โ unit src/features/settings/scheduledTaskDraft.test.ts (12 tests) 16ms
โ src/schema.test.ts (4 tests) 14ms
stdout | src/lib/storage.test.ts > mobile connection storage > loads legacy preferences when SQLite is unavailable
[02:17:01.729] WARN (#20): Database unavailable; loading fallback preferences. {
cause: {
_tag: 'MobileDatabaseError',
operation: 'load-preferences',
cause: Error: database unavailable
at Object.<anonymous> (/home/runner/_work/t3code/t3code/apps/mobile/src/lib/storage.test.ts:49:33)
at Object.Mock [as getFirstAsync] (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/spy.DDMXghXv.js:353:40)
at try (/home/runner/_work/t3code/t3code/apps/mobile/src/persistence/mobile-database.ts:431:18)
at MixedScheduler.<anonymous> (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:785:7)
at ~effect/Effect/evaluate (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:804:38)
at FiberImpl.runLoop (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:453:97)
at FiberImpl.evaluate (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:402:23)
at file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:2474:9
at file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:2526:19
at file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:2537:31
}
}
stdout | src/state/preferences.test.ts > mobile preferences state > falls back to empty preferences when secure storage cannot be read
[02:17:01.741] WARN (#35): Could not load mobile preferences. {
_tag: 'MobilePreferencesLoadError',
cause: Error: secure storage unavailable
at /home/runner/_work/t3code/t3code/apps/mobile/src/state/preferences.test.ts:181:20
at Generator.next (<anonymous>)
at ~effect/Effect/successCont (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:979:28)
at ~effect/Effect/evaluate (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:991:25)
at FiberImpl.runLoop (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:453:97)
at FiberImpl.evaluate (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:402:23)
at file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:2474:9
at file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:2526:19
at Module.<anonymous> (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:2537:31)
at Array.<anonymous> (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/@effect+vitest@4.0.5_patch_hash=2731c9c3761c595f25ddc625a7d61ca376b389d5b3049ecb837c894_729be65b0f3c6bde0309e4457c6d9256/node_modules/@effect/vitest/dist/internal/internal.js:26:31)
}
stdout | src/lib/storage.test.ts > mobile connection storage > falls back to secure storage when SQLite cannot save preferences
[02:17:01.739] WARN (#21): Database unavailable; loading fallback preferences. {
cause: {
_tag: 'MobileDatabaseError',
operation: 'load-preferences',
cause: Error: database unavailable
at Object.<anonymous> (/home/runner/_work/t3code/t3code/apps/mobile/src/lib/storage.test.ts:49:33)
at Object.Mock [as getFirstAsync] (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/spy.DDMXghXv.js:353:40)
at try (/home/runner/_work/t3code/t3code/apps/mobile/src/persistence/mobile-database.ts:431:18)
at MixedScheduler.<anonymous> (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:785:7)
at ~effect/Effect/evaluate (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:804:38)
at FiberImpl.runLoop (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:453:97)
at FiberImpl.evaluate (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:402:23)
at file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:2474:9
at file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:2526:19
at file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:2537:31
}
}
โ unit src/state/preferences.test.ts (3 tests) 14ms
stdout | src/lib/storage.test.ts > mobile connection storage > falls back to secure storage when SQLite cannot save preferences
[02:17:01.743] WARN (#21): Database unavailable; saving preferences to secure storage. {
cause: {
_tag: 'MobileDatabaseError',
operation: 'save-preferences',
cause: Error: database unavailable
at Object.<anonymous> (/home/runner/_work/t3code/t3code/apps/mobile/src/lib/storage.test.ts:59:33)
at Object.Mock [as runAsync] (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/vitest@5.0.5_@tsc-rs+typescript@0.8.0_@types+node@24.12.4_@vitest+browser-playwright@5._a4090df6c7be8012d869871fb8a7445d/node_modules/vitest/dist/chunks/spy.DDMXghXv.js:353:40)
at try (/home/runner/_work/t3code/t3code/apps/mobile/src/persistence/mobile-database.ts:441:20)
at MixedScheduler.<anonymous> (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:785:7)
at ~effect/Effect/evaluate (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:804:38)
at FiberImpl.runLoop (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:453:97)
at FiberImpl.evaluate (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:402:23)
at AsyncResource.runInAsyncScope (node:async_hooks:226:14)
at FiberImpl.evaluate (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:396:27)
at file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:808:17
}
}
โ unit src/lib/storage.test.ts (8 tests) 55ms
โ unit src/lib/layout.test.ts (15 tests) 12ms
โ src/client.test.ts (2 tests) 265ms
Test Files 5 passed (5)
Tests 28 passed (28)
Start at 02:17:00
Duration 1.78s (transform 41%, import 37%, setup 13%, tests 9%, worker 1%)
~/packages/provider-core$ vp test run --config ../../vite.config.ts --dir . โ cache disabled
โ src/paletteSearch.test.ts (34 tests) 113ms
โ src/shell.test.ts (42 tests | 2 skipped) 80ms
โ src/relayClient.test.ts (14 tests) 150ms
โ unit src/lib/mediaActions.test.ts (10 tests) 13ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/provider-core
โ unit src/state/session.test.ts (4 tests) 16ms
โ unit src/features/projects/AddProjectScreen.test.ts (3 tests) 17ms
โ unit src/features/settings/settings-scoped-server.test.ts (5 tests) 3ms
โ unit src/features/threads/thread-provider-instance.test.ts (3 tests) 11ms
stdout | src/server/OpenCodeServerLedger.test.ts > OpenCodeServerLedger observing as linux > stops an OpenCode server group left by a server that died
[02:17:02.555] INFO (#4): Stopping an OpenCode server left by a previous T3 Code server { pid: 12782, port: 4096 }
โ src/server/usage.test.ts (5 tests) 358ms
โ readOpenCodeUsage (4)
โ bounds raw history allocations while counting every eligible message once 306ms
stdout | src/server/OpenCodeServerLedger.test.ts > OpenCodeServerLedger observing as linux > records a group whose spawned wrapper already exited
[02:17:02.714] INFO (#267): Stopping an OpenCode server left by a previous T3 Code server { pid: 12824, port: 4096 }
โ unit src/features/agent-awareness/liveActivityPreferences.test.ts (3 tests) 29ms
โ unit src/features/cloud/dpop.test.ts (5 tests) 202ms
โ unit src/features/diffs/nativeReviewDiffSource.test.ts (32 tests) 39ms
โ unit src/features/workspace/workspace-tab-navigation.test.ts (9 tests) 17ms
โ src/server/usageLimits.test.ts (7 tests) 17ms
โ src/server/textGeneration.test.ts (9 tests) 165ms
stdout | src/server/OpenCodeServerLedger.test.ts > OpenCodeServerLedger observing as darwin > stops an OpenCode server group left by a server that died
[02:17:03.169] INFO (#313): Stopping an OpenCode server left by a previous T3 Code server { pid: 12887, port: 4096 }
โ src/nodeSqliteClient.test.ts (17 tests) 491ms
โ src/server/status.test.ts (35 tests) 479ms
stdout | src/server/OpenCodeServerLedger.test.ts > OpenCodeServerLedger observing as darwin > records a group whose spawned wrapper already exited
[02:17:03.398] INFO (#335): Stopping an OpenCode server left by a previous T3 Code server { pid: 12956, port: 4096 }
โ src/observability.test.ts (18 tests) 373ms
โ src/server/adapter.test.ts (31 tests) 390ms
โ unit src/features/threads/new-task-project-selection.test.ts (9 tests) 6ms
โ unit src/features/pull-requests/pullRequestStack.test.ts (8 tests) 16ms
โ src/server/ModelCatalog.test.ts (4 tests) 3ms
โ unit src/features/settings/environment-maintenance.test.ts (7 tests) 30ms
โ src/usageMerge.test.ts (17 tests) 52ms
โ src/usageLimits.test.ts (38 tests) 94ms
โ src/composerContextLegacy.test.ts (36 tests) 107ms
โ unit src/features/threads/thread-route-state.test.ts (5 tests) 7ms
โ src/projectSettings.test.ts (20 tests) 25ms
โ src/serverSettings.test.ts (38 tests) 59ms
โ unit src/widgets/subscriptionUsageSnapshot.test.ts (5 tests) 41ms
โ src/otelEnvironment.test.ts (31 tests) 117ms
โ unit src/features/review/reviewCommentSelection.test.ts (6 tests) 19ms
โ src/server/driver.test.ts (8 tests) 438ms
โ src/server/OpenCodeServerOwner.test.ts (4 tests) 48ms
โ src/markdownMath.test.ts (44 tests) 305ms
โ src/server/versionProbe.test.ts (9 tests) 86ms
โ src/server/v2/OpenCode2Server.test.ts (7 tests) 1530ms
โ OpenCode2Server spawned server (1)
โ is ready once /api/info accepts the generated password 1229ms
โ unit src/lib/protectedData.test.ts (3 tests) 172ms
โ unit src/lib/markdownHtml.test.ts (8 tests) 102ms
โ src/server/OpenCodeRuntime.cliParsers.test.ts (9 tests) 8ms
โ unit src/features/threads/thread-settings-sheet-state.test.ts (5 tests) 21ms
โ src/server/OpenCodeServerLedger.test.ts (11 tests) 2415ms
โ OpenCode server startup (1)
โ stops the group when interrupted while the server is being recorded 1018ms
โ unit src/features/voice-input/lazyVoiceRecorder.test.ts (3 tests) 28ms
โ src/dpop.test.ts (9 tests) 323ms
โ unit src/lib/reserved-regions.test.ts (7 tests) 13ms
โ src/orchestrationV2PendingBackgroundWork.test.ts (20 tests) 11ms
โ src/server/OpenCodeRuntime.inventory.test.ts (4 tests) 381ms
โ OpenCodeRuntime inventory (4)
โ drops oversized CLI skill output without losing the model inventory 320ms
โ src/atomicWrite.test.ts (7 tests) 55ms
โ unit src/features/pull-requests/pullRequestDiffPages.test.ts (4 tests) 38ms
โ src/server/notification.test.ts (4 tests) 9ms
โ unit src/state/remote-environment-projections.test.ts (1 test) 19ms
โ src/composerContextReferences.test.ts (17 tests) 41ms
โ src/git.test.ts (28 tests) 17ms
โ src/server/attachmentPrompt.test.ts (2 tests) 16ms
โ src/assistantCitations.test.ts (20 tests) 48ms
โ src/server/OpenCodeRuntime.permissions.test.ts (8 tests) 8ms
โ src/server/failure.test.ts (10 tests) 56ms
โ src/server/providerAuthFlow.test.ts (17 tests) 196ms
โ src/server/managedProvider.test.ts (9 tests) 101ms
โ src/server/v2/OpenCode2Client.test.ts (1 test) 69ms
โ src/server/snapshotProbe.test.ts (7 tests) 23ms
โ src/mcpApp.test.ts (14 tests) 1134ms
โ mcpAppFromToolItem (4)
โ reads the app from both the stored output and its compact wire form 1089ms
โ src/server/OpenCodeRuntime.environment.test.ts (3 tests) 12ms
โ src/server/maintenanceResolver.test.ts (52 tests) 263ms
โ src/server/mcpSession.test.ts (2 tests) 3ms
โ src/server/instanceEnvironment.test.ts (4 tests) 20ms
โ src/server/processGroup.test.ts (2 tests) 4ms
โ src/server/openCode2Catalog.test.ts (3 tests) 117ms
โ src/preview.test.ts (23 tests) 15ms
Test Files 15 passed (15)
Tests 147 passed (147)
Start at 02:17:00
Duration 5.76s (import 38%, transform 37%, tests 19%, setup 5%)
Import 247 modules were evaluated 1783 times ยท 12.60s total, 38% of tracked time
~621ms faster with isolate: false โ shared modules are evaluated once per worker instead of once per file
learn more: https://vitest.dev/guide/improving-performance#test-isolation
~/packages/provider-acp$ vp test run --config ../../vite.config.ts --dir . โ cache disabled
โ unit src/features/usage/UsageLimitsSection.test.ts (2 tests) 9ms
โ src/composerInlineTokens.test.ts (34 tests) 41ms
โ src/KeyedCoalescingWorker.test.ts (4 tests) 47ms
โ src/server/collectStreamText.test.ts (2 tests) 8ms
โ src/model.test.ts (10 tests) 9ms
โ unit src/state/edit-pending-thread-message.test.ts (4 tests) 18ms
โ src/nodeRuntime.test.ts (10 tests) 583ms
โ unit src/features/threads/pending-thread-feed.test.ts (6 tests) 4ms
โ unit src/lib/pdfPreview.test.ts (12 tests) 15ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/provider-acp
โ src/markdownLinks.test.ts (34 tests) 30ms
โ unit src/state/use-thread-pr.test.ts (7 tests) 11ms
โ src/server/mcpToolPresentation.test.ts (4 tests) 3ms
โ src/toolOutput.test.ts (12 tests) 42ms
โ src/codexMarkdownDirectives.test.ts (22 tests) 81ms
โ src/server/textGenerationUtils.test.ts (3 tests) 21ms
โ src/server/threadTitleContext.test.ts (2 tests) 5ms
โ unit src/features/agent-awareness/notificationNavigation.test.ts (6 tests) 8ms
โ src/server/textGenerationPrompts.test.ts (1 test) 6ms
Test Files 17 passed (17)
Tests 132 passed (132)
Start at 02:17:02
Duration 4.42s (transform 48%, import 39%, setup 9%, tests 3%)
Import 179 modules were evaluated 1030 times ยท 9.19s total, 39% of tracked time
~297ms faster with isolate: false โ shared modules are evaluated once per worker instead of once per file
learn more: https://vitest.dev/guide/improving-performance#test-isolation
~/packages/provider-grok$ vp test run --config ../../vite.config.ts --dir . โ cache disabled
โ src/agentAwareness.test.ts (22 tests) 14ms
โ unit src/features/workspace/android-workspace-navigation-colors.test.ts (9 tests) 57ms
โ unit src/state/assets.test.ts (4 tests) 7ms
โ src/server/stderr.test.ts (2 tests) 21ms
โ src/server/sessionConfig.test.ts (6 tests) 12ms
โ unit src/state/thread-order.test.ts (4 tests) 4ms
โ src/DrainableWorker.test.ts (3 tests) 35ms
โ src/server/clientPolicy.test.ts (13 tests) 47ms
โ src/htmlRender.test.ts (11 tests) 35ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/provider-grok
โ src/imageDimensions.test.ts (8 tests) 12ms
โ src/server/mcpOverAcpBridge.test.ts (3 tests) 63ms
โ unit src/features/pull-requests/pullRequestDiffComments.test.ts (5 tests) 7ms
โ src/terminalOutput.test.ts (16 tests) 1143ms
โ appendTerminalOutput (8)
โ stays bounded across many appends of huge output, including one endless line 1111ms
โ src/composerContextLegacySend.test.ts (8 tests) 10ms
โ src/orchestrationV2DedupedBodies.test.ts (3 tests) 11ms
โ src/remote.test.ts (10 tests) 39ms
โ unit src/features/connection/environmentSections.test.ts (3 tests) 7ms
โ unit src/lib/adaptive-navigation.test.ts (8 tests) 15ms
โ unit src/state/attachments.test.ts (2 tests) 13ms
โ src/logging.test.ts (3 tests) 68ms
โ src/KeyedLock.test.ts (4 tests) 14ms
โ unit src/state/pending-thread-creation.test.ts (4 tests) 11ms
โ unit src/features/threads/threadQueueControlPresentation.test.ts (8 tests) 7ms
โ src/promptLinks.test.ts (8 tests) 68ms
stdout | src/server/clientTerminals.test.ts > AcpClientTerminals > kills long-running commands and rejects released terminal handles
[02:17:08.015] WARN (#53): ACP client terminal operation failed {
operation: 'terminal/output',
detail: "ACP terminal/output received an unknown terminal ID 't3-term-1'."
}
โ src/composerContextClipboard.test.ts (6 tests) 290ms
โ src/server/runtimeModel.test.ts (47 tests) 500ms
โ unit src/lib/projectFaviconRequests.test.ts (4 tests) 3ms
stdout | src/server/clientTerminals.test.ts > AcpClientTerminals > reserves terminal capacity across concurrent creates
[02:17:08.267] WARN (#122): ACP client terminal operation failed {
operation: 'terminal/create',
detail: 'ACP terminal/create exceeded the limit of 16 concurrent terminals.'
}
โ unit src/features/diffs/nativeReviewDiffTrace.test.ts (3 tests) 23ms
โ src/server/usage.test.ts (9 tests) 32ms
โ src/schemaJson.test.ts (8 tests) 14ms
โ unit src/state/workspace-connection-atoms.test.ts (1 test) 6ms
โ unit src/features/shortcuts/appShortcuts.test.ts (7 tests) 6ms
โ src/codexAuthHandoff.test.ts (6 tests) 18ms
โ src/devHome.test.ts (5 tests) 38ms
โ unit src/lib/composerChipPresentation.test.ts (3 tests) 75ms
โ unit src/lib/markdownMedia.test.ts (12 tests) 19ms
โ unit src/lib/atomic-file.test.ts (4 tests) 3ms
โ src/orchestrationV2BoundedSnapshot.test.ts (3 tests) 3ms
โ src/orchestrationTiming.test.ts (11 tests) 4ms
โ src/threadLinks.test.ts (8 tests) 8ms
โ src/server/nativeLogging.test.ts (3 tests) 21ms
โ unit src/features/pull-requests/pullRequestFileFilters.test.ts (4 tests) 19ms
โ unit src/lib/localAttachmentPreview.test.ts (4 tests) 11ms
โ src/fileLinks.test.ts (18 tests) 5ms
โ src/gitPatchPath.test.ts (22 tests) 13ms
โ src/threadFindText.test.ts (8 tests) 57ms
โ src/Net.test.ts (4 tests) 33ms
โ src/hostClassification.test.ts (10 tests) 9ms
โ src/server/xaiAcpExtension.test.ts (52 tests) 85ms
โ unit src/features/terminal/useTerminalGridSync.test.ts (1 test) 32ms
โ unit src/features/threads/new-task-context-presentation.test.ts (9 tests) 7ms
โ src/path.test.ts (11 tests) 15ms
โ src/composerTrigger.test.ts (25 tests) 20ms
โ unit src/features/pull-requests/pullRequestDiffDebug.test.ts (3 tests) 25ms
โ unit src/lib/copyTextWithHaptic.test.ts (5 tests) 30ms
โ src/semver.test.ts (7 tests) 25ms
โ unit src/lib/enrichedLinkPresentation.test.ts (5 tests) 13ms
โ unit src/features/terminal/useTerminalLifecycle.test.ts (3 tests) 17ms
โ src/composerPullRequestMatches.test.ts (3 tests) 6ms
โ src/markdownPipeline.test.ts (3 tests) 43ms
โ src/orchestrationV2Timeline.test.ts (12 tests) 8ms
โ src/codexArtifactTemplates.test.ts (9 tests) 17ms
โ src/relayTracing.test.ts (2 tests) 15ms
โ src/toolActivity.test.ts (4 tests) 4ms
โ unit src/persistence/mobile-database.test.ts (3 tests) 34ms
โ unit src/persistence/mobile-storage.test.ts (3 tests) 29ms
โ src/cliArgs.test.ts (8 tests) 3ms
โ unit src/lib/videoThumbnails.test.ts (2 tests) 13ms
โ src/codexFileCitations.test.ts (5 tests) 12ms
โ src/filePreview.test.ts (13 tests) 16ms
โ unit src/features/workspace/navigation-tab-order.test.ts (6 tests) 9ms
โ src/relayAuth.test.ts (2 tests) 4ms
โ unit src/connection/storage.test.ts (3 tests) 34ms
โ src/connectAuth.test.ts (3 tests) 2ms
โ src/server/skills.test.ts (10 tests) 71ms
โ src/server/acpSupport.test.ts (8 tests) 15ms
โ src/desktopBootstrapToken.test.ts (3 tests) 3ms
โ src/cliRelease.test.ts (3 tests) 2ms
โ src/delimitedPreview.test.ts (8 tests) 798ms
โ delimited file previews (8)
โ bounds rows, columns and cell length and reports partial content 781ms
โ src/cloneUrl.test.ts (3 tests) 2ms
โ src/searchRanking.test.ts (3 tests) 4ms
โ src/favicon.test.ts (6 tests) 3ms
โ unit src/connection/background-activity.test.ts (3 tests) 22ms
โ src/desktopAppControl.test.ts (2 tests) 3ms
โ unit src/state/workspaceModel.test.ts (2 tests) 8ms
โ src/schemaYaml.test.ts (2 tests) 19ms
โ src/usageFormat.test.ts (4 tests) 23ms
โ src/thirdPartyLicenses.test.ts (2 tests) 6ms
โ src/t3McpToolPresentation.test.ts (2 tests) 26ms
โ src/oauthScope.test.ts (3 tests) 14ms
โ unit src/features/threads/fileChipMenu.test.ts (9 tests) 15ms
โ unit src/lib/composerAttachmentFiles.test.ts (12 tests) 6ms
โ src/AgentScope.test.ts (1 test) 12ms
โ src/video.test.ts (2 tests) 2ms
โ unit src/features/threads/thread-settings-options.test.ts (4 tests) 10ms
โ src/providerAuthReturnUrl.test.ts (5 tests) 14ms
โ src/relayUrl.test.ts (4 tests) 4ms
โ unit src/features/threads/use-composer-command-menu.test.ts (3 tests) 10ms
โ src/threadSearch.test.ts (2 tests) 8ms
โ unit src/connection/migration.test.ts (2 tests) 8ms
โ unit src/lib/microphonePriority.test.ts (4 tests) 9ms
โ unit src/features/pull-requests/pullRequestStatus.test.ts (4 tests) 9ms
โ unit src/features/settings/autoSettleSettingsSync.test.ts (3 tests) 6ms
โ src/telemetryId.test.ts (1 test) 2ms
โ src/changedFileKind.test.ts (5 tests) 2ms
โ src/terminalLabels.test.ts (2 tests) 6ms
โ src/relayJwt.test.ts (1 test) 3ms
โ src/relaySigning.test.ts (1 test) 2ms
โ src/server/driver.test.ts (4 tests) 40ms
Test Files 5 passed (5)
Tests 83 passed (83)
Start at 02:17:07
Duration 4.14s (transform 61%, import 32%, setup 5%, tests 2%)
โ src/t3ProjectFile.test.ts (2 tests) 5ms
Test Files 87 passed (87)
โ unit src/features/home/workspace-connection-status.test.ts (3 tests) 2ms
Tests 990 passed | 2 skipped (992)
Start at 02:17:01
Duration 10.04s (import 42%, transform 27%, setup 16%, tests 14%, worker 1%)
Import 346 modules were evaluated 2546 times ยท 22.95s total, 42% of tracked time
~2.03s faster with isolate: false โ shared modules are evaluated once per worker instead of once per file
learn more: https://vitest.dev/guide/improving-performance#test-isolation
~/packages/provider-muse$ vp test run --config ../../vite.config.ts --dir . โ cache disabled
~/oxlint-plugin-t3code$ vp test run --config ../vite.config.ts --dir . โ cache disabled
stdout | src/server/clientTerminals.test.ts > AcpClientTerminals > bounds unreleased terminal handles without invalidating existing ids
[02:17:11.466] WARN (#192): ACP client terminal operation failed {
operation: 'terminal/create',
detail: 'ACP terminal/create exceeded the limit of 64 unreleased terminals.'
}
โ unit src/features/terminal/terminalMenu.test.ts (5 tests) 7ms
stdout | src/server/clientTerminals.test.ts > AcpClientTerminals > rejects terminal handles from a different ACP session
[02:17:11.635] WARN (#482): ACP client terminal operation failed {
operation: 'terminal/output',
detail: "ACP terminal/output received an unknown terminal ID 't3-term-1'."
}
[02:17:11.635] WARN (#483): ACP client terminal operation failed {
operation: 'terminal/wait_for_exit',
detail: "ACP terminal/wait_for_exit received an unknown terminal ID 't3-term-1'."
}
[02:17:11.635] WARN (#484): ACP client terminal operation failed {
operation: 'terminal/kill',
detail: "ACP terminal/kill received an unknown terminal ID 't3-term-1'."
}
[02:17:11.635] WARN (#485): ACP client terminal operation failed {
operation: 'terminal/release',
detail: "ACP terminal/release received an unknown terminal ID 't3-term-1'."
}
โ src/server/clientTerminals.test.ts (13 tests) 4012ms
โ AcpClientTerminals (12)
โ bounds unreleased terminal handles without invalidating existing ids 3179ms
Test Files 7 passed (7)
Tests 87 passed (87)
Start at 02:17:06
Duration 5.27s (tests 43%, transform 31%, import 16%, setup 10%)
โ unit src/lib/projectFaviconDatabaseCache.test.ts (3 tests) 4ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/oxlint-plugin-t3code
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/provider-muse
โ unit src/lib/markdownLinks.test.ts (8 tests) 4ms
~/packages/client-runtime$ vp test run โ cache disabled
โ unit src/features/pull-requests/pullRequestAgentTasks.test.ts (3 tests) 2ms
โ unit src/native/voiceTranscription.ios.test.ts (1 test) 41ms
โ unit src/lib/projectIcon.test.ts (5 tests) 14ms
โ unit src/features/devices/threadDevicePreviews.test.ts (2 tests) 2ms
โ src/server/usageLimits.test.ts (4 tests) 3ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/client-runtime
โ unit src/features/terminal/terminalInput.test.ts (7 tests) 3ms
โ src/server/sdk.test.ts (12 tests) 276ms
โ unit src/features/threads/worktree-setup-state.test.ts (4 tests) 2ms
โ unit src/features/terminal/terminalLaunchContext.test.ts (3 tests) 11ms
โ src/server/itemPresentation.test.ts (6 tests) 10ms
โ unit src/state/queries.filesystem.test.ts (1 test) 3ms
โ unit src/features/terminal/terminalPaste.test.ts (2 tests) 9ms
โ unit src/lib/appLinking.test.ts (17 tests) 4ms
โ unit src/features/pull-requests/pullRequestNavigation.test.ts (3 tests) 5ms
โ unit src/state/thread-provider-switching.test.ts (4 tests) 10ms
โ src/server/protocol.test.ts (1 test) 2ms
โ unit src/lib/device-type.test.ts (3 tests) 2ms
โ unit src/features/terminal/useTerminalSurfaceBuffer.test.ts (2 tests) 24ms
โ unit src/state/queued-run-edit.test.ts (3 tests) 17ms
โ unit src/lib/projectThreadStartTurn.test.ts (3 tests) 4ms
โ unit src/lib/highlights.test.ts (3 tests) 5ms
โ unit src/features/threads/thread-route-hydration.test.ts (3 tests) 8ms
โ src/server/modelCatalog.test.ts (1 test) 2ms
โ unit src/features/keyboard/commandPaletteItems.test.ts (2 tests) 6ms
โ unit src/features/files/filePath.test.ts (7 tests) 3ms
โ unit src/features/settings/scheduled-task-editor-state.test.ts (3 tests) 3ms
โ unit src/features/pull-requests/pullRequestActions.test.ts (3 tests) 6ms
โ src/server/usage.test.ts (12 tests) 129ms
โ src/server/maintenance.test.ts (3 tests) 75ms
โ src/server/textGeneration.test.ts (8 tests) 125ms
โ unit src/features/layout/deferred-navigation.test.ts (3 tests) 4ms
โ src/server/status.test.ts (3 tests) 310ms
โ unit src/features/home/thread-dismissal.test.ts (3 tests) 9ms
โ src/server/adapter.test.ts (39 tests) 401ms
Test Files 10 passed (10)
Tests 89 passed (89)
Start at 02:17:11
Duration 3.55s (transform 52%, import 35%, tests 7%, setup 6%)
โ unit src/features/cloud/managedRelayLayer.test.ts (1 test) 123ms
~/packages/effect-acp$ vp test run --config ../../vite.config.ts --dir . โ cache disabled
โ unit src/features/cloud/CloudAuthProvider.test.ts (1 test) 3ms
โ unit src/features/pull-requests/pullRequestActivityFilter.test.ts (1 test) 6ms
โ unit src/features/sharing/incoming-share-presentation.test.ts (2 tests) 2ms
โ unit src/features/devices/device-stream-document.test.ts (11 tests) 11ms
โ unit src/features/threads/provider-catalog-refresh.test.ts (2 tests) 10ms
โ unit src/features/diagnostics/crash-log-model.test.ts (2 tests) 7ms
โ unit src/features/observability/tracing.test.ts (1 test) 45ms
โ unit scripts/generate-uniwind-themes.test.ts (1 test) 19ms
โ unit src/features/pull-requests/pullRequestEnvironmentFallback.test.ts (3 tests) 2ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/effect-acp
โ unit src/lib/markdownTableBreaks.test.ts (5 tests) 52ms
โ src/authorization/layer.test.ts (23 tests) 337ms
โ unit src/lib/nativeTheme.test.ts (12 tests) 58ms
โ src/state/runtime.test.ts (23 tests) 348ms
โ src/connection/supervisor.test.ts (35 tests) 595ms
โ unit src/lib/assetImageSource.test.ts (3 tests) 3ms
โ src/rpc/session.test.ts (14 tests) 678ms
โ unit src/lib/markdownMediaSource.test.ts (3 tests) 12ms
โ src/connection/registry.test.ts (41 tests) 713ms
โ src/_internal/stdio.test.ts (1 test) 23ms
โ src/schema.test.ts (2 tests) 22ms
โ unit src/features/sharing/incoming-share-storage.test.ts (1 test) 4ms
โ src/errors.test.ts (6 tests) 44ms
โ unit src/features/connection/pairing.test.ts (5 tests) 9ms
โ unit src/features/pull-requests/pullRequestAutolinks.test.ts (4 tests) 39ms
โ src/agent.test.ts (6 tests) 98ms
โ src/state/pullRequests.test.ts (56 tests) 1480ms
โ returns a successful mutation when source invalidation stalls 1003ms
โ unit src/lib/connection.test.ts (1 test) 2ms
โ unit src/lib/markdownInlineFileLinks.test.ts (4 tests) 55ms
โ unit src/features/settings/SettingsRouteScreen.logic.test.ts (2 tests) 2ms
โ unit src/features/home/swipe-row-activation.test.ts (3 tests) 2ms
โ unit src/features/pull-requests/botBadgeImages.test.ts (1 test) 4ms
โ src/state/threads-sync.test.ts (37 tests) 532ms
โ src/state/shell-sync.test.ts (7 tests) 140ms
โ unit src/state/asset-url-state.test.ts (3 tests) 2ms
โ unit src/lib/wideMarkdownBlocks.test.ts (2 tests) 9ms
โ unit src/lib/serialized-async-queue.test.ts (2 tests) 12ms
โ unit src/features/usage/usageEnvironmentSelection.test.ts (4 tests) 5ms
โ src/state/orchestrationV2Projection.test.ts (16 tests) 61ms
โ src/operations/commands.test.ts (14 tests) 96ms
โ src/state/server.test.ts (19 tests) 145ms
โ unit src/lib/openExternalUrl.test.ts (1 test) 34ms
โ src/voice-input/controller.test.ts (22 tests) 47ms
โ src/state/vcs.test.ts (9 tests) 122ms
โ unit scripts/generate-highlights.test.ts (1 test) 45ms
โ unit src/features/threads/composerSendPresentation.test.ts (2 tests) 9ms
โ unit src/features/pull-requests/pullRequestDescription.test.ts (1 test) 13ms
โ unit src/features/sharing/incoming-share-native.test.ts (2 tests) 25ms
โ unit src/features/pull-requests/pullRequestDescriptionContent.test.ts (1 test) 24ms
โ src/protocol.test.ts (21 tests) 1789ms
โ effect-acp protocol (21)
โ propagates the real child exit code when the input stream ends 1000ms
โ does not emit a second process-exit error after a decode failure 542ms
โ unit src/features/threads/threadContentPresentation.test.ts (2 tests) 12ms
โ src/state/environmentHttpAuth.test.ts (32 tests) 385ms
โ src/connection/onboarding.test.ts (13 tests) 209ms
โ unit src/features/cloud/managedRelayTokenStore.test.ts (1 test) 41ms
โ src/state/entities.test.ts (16 tests) 52ms
โ unit src/features/threads/subagent-card-presentation.test.ts (1 test) 13ms
โ unit src/features/pull-requests/pullRequestReviewDrafts.test.ts (1 test) 2ms
โ src/state/vcsAction.test.ts (9 tests) 107ms
โ unit src/lib/filePreviewGallery.test.ts (1 test) 14ms
โ unit src/state/thread-composer-error.test.ts (1 test) 6ms
โ src/state/threadCommands.test.ts (22 tests) 139ms
โ src/relay/managedRelay.test.ts (7 tests) 130ms
โ unit src/features/pull-requests/pullRequestMediaSource.test.ts (1 test) 20ms
โ unit src/state/queries.test.ts (1 test) 24ms
โ unit src/features/threads/customSnoozeDate.test.ts (2 tests) 10ms
โ unit src/features/browser/previewPromptText.test.ts (3 tests) 7ms
โ src/relay/discovery.test.ts (7 tests) 79ms
โ unit src/features/prompt-links/prompt-link-model.test.ts (1 test) 15ms
โ src/threadPullRequests.test.ts (23 tests) 56ms
โ src/state/threads-atoms.test.ts (4 tests) 249ms
โ unit src/features/cloud/publicConfig.test.ts (1 test) 2ms
โ unit src/lib/http-response.test.ts (1 test) 21ms
โ unit src/features/projects/AddProjectScreen.logic.test.ts (1 test) 2ms
โ unit src/lib/nativeComposerTheme.test.ts (1 test) 4ms
โ unit src/lib/filePreview.test.ts (4 tests) 3ms
โ src/rpc/client.test.ts (8 tests) 145ms
โ unit src/lib/mobileThemeRuntime.test.ts (1 test) 8ms
โ src/connection/routes.test.ts (19 tests) 51ms
โ unit src/features/threads/projectThreadCreationValidation.test.ts (2 tests) 2ms
โ unit src/features/threads/threadMessageJump.test.ts (1 test) 2ms
โ unit src/lib/foreground-handoff.test.ts (1 test) 2ms
โ unit src/lib/appearancePreferences.test.ts (1 test) 2ms
โ unit src/features/settings/lib/legal-document-url.test.ts (2 tests) 2ms
โ src/device/stream.test.ts (14 tests) 48ms
โ src/state/threadShell.test.ts (9 tests) 57ms
โ unit src/features/keyboard/hardwareKeyboardCommands.test.ts (2 tests) 11ms
โ src/platform/storageDocument.test.ts (13 tests) 29ms
โ src/state/projectGrouping.test.ts (20 tests) 35ms
โ src/sourceControlClients.test.ts (35 tests) 27ms
โ rules/no-test-timeout-or-unreasoned-skip.test.ts (16 tests) 10506ms
โ t3code/no-test-timeout-or-unreasoned-skip (13)
โ allows tests without overrides, conditional skips, and waitFor timeouts (1)
โ passes 689ms
โ allows a skip with a quarantine issue or a GitHub issue URL (1)
โ passes 956ms
โ reports a numeric timeout on it.effect (1)
โ reports the rule diagnostic 673ms
โ reports a timeout through .each and .skipIf chains (1)
โ reports the rule diagnostic 498ms
โ reports retry options, options-first timeouts, and hook timeouts (1)
โ reports the rule diagnostic 688ms
โ reports vi.setConfig timeouts (1)
โ reports the rule diagnostic 781ms
โ reports a skip whose comment has no issue (1)
โ reports the rule diagnostic 831ms
โ reports todo, only, and the x/f aliases (1)
โ reports the rule diagnostic 842ms
โ flags an options-object timeout when the callback is a reference (1)
โ reports the rule diagnostic 590ms
โ allows a computed skip option, which is a platform gate like skipIf (1)
โ passes 620ms
โ flags the suite alias and option-object skips (1)
โ reports the rule diagnostic 549ms
โ flags a skip option without a quarantine issue (1)
โ reports the rule diagnostic 700ms
โ flags a bracket-access skip without a quarantine issue (1)
โ reports the rule diagnostic 689ms
โ still flags an option-object skip in a live file (1)
โ reports the rule diagnostic 535ms
โ allows timeouts in opt-in live provider suites (1)
โ passes 438ms
โ ignores non-test files (1)
โ passes 393ms
โ src/state/fileMetadata.test.ts (11 tests) 266ms
โ src/state/commandPermissions.test.ts (14 tests) 53ms
โ rules/no-polling-loop-in-tests.test.ts (16 tests) 10974ms
โ t3code/no-polling-loop-in-tests (15)
โ allows a fixed-count flush followed by unrelated error handling (1)
โ passes 843ms
โ allows a fixed-N flush with a literal bound (1)
โ passes 855ms
โ allows a fixed-N while flush with a counter bound (1)
โ passes 630ms
โ allows a fixed-N do-while flush against a named bound (1)
โ passes 469ms
โ allows a loop that takes from a queue (1)
โ passes 432ms
โ ignores waits inside nested callbacks (1)
โ passes 606ms
โ reports a budgeted yieldNow poll that dies after the loop (1)
โ reports the rule diagnostic 865ms
โ reports a while loop spinning on a predicate (1)
โ reports the rule diagnostic 895ms
โ reports a while loop bounded by a length predicate (1)
โ reports the rule diagnostic 733ms
โ reports a comparison against an identifier the loop never advances (1)
โ reports the rule diagnostic 665ms
โ reports a for loop bounded by a length predicate (1)
โ reports the rule diagnostic 797ms
โ reports a sleep poll with a counter bound and an early return (1)
โ reports the rule diagnostic 735ms
โ reports a microtask poll keyed on the loop condition (1)
โ reports the rule diagnostic 570ms
โ reports an awaited setTimeout poll (1)
โ reports the rule diagnostic 852ms
โ reports an awaited Promise.resolve poll that breaks (1)
โ reports the rule diagnostic 396ms
โ ignores non-test files (1)
โ passes 602ms
โ rules/no-real-time-wait-in-tests.test.ts (16 tests) 10793ms
โ t3code/no-real-time-wait-in-tests (15)
โ allows TestClock-driven sleeps and timeout safety nets (1)
โ passes 724ms
โ ignores sleeps inside strings and child-process script templates (1)
โ passes 579ms
โ ignores shared helpers in files that drive the TestClock (1)
โ passes 732ms
โ ignores bare setTimeout callbacks outside promise executors (1)
โ passes 538ms
โ reports Effect.sleep under it.live (1)
โ reports the rule diagnostic 592ms
โ reports retry schedules under curried testers (1)
โ reports the rule diagnostic 613ms
โ reports Effect.delay under plain it (1)
โ reports the rule diagnostic 944ms
โ reports it.effect inside an excludeTestServices layer as a real-clock wait (1)
โ reports the rule diagnostic 592ms
โ reports it.effect sleeps in files that never adjust the TestClock (1)
โ reports the rule diagnostic 912ms
โ reports polling helpers even when the file drives the TestClock (1)
โ reports the rule diagnostic 515ms
โ reports promise-wrapped setTimeout in vitest tests (1)
โ reports the rule diagnostic 758ms
โ reports promise-wrapped setTimeout under it.effect as a mixed clock (1)
โ reports the rule diagnostic 580ms
โ reports TestClock sleeps when TestClock.adjust appears only in a comment (1)
โ reports the rule diagnostic 781ms
โ reports timers hidden in module-level helpers (1)
โ reports the rule diagnostic 883ms
โ reports awaited timers/promises sleeps (1)
โ reports the rule diagnostic 492ms
โ ignores non-test files (1)
โ passes 522ms
โ src/state/threadRelationships.test.ts (11 tests) 22ms
โ src/state/threadWorkflows.test.ts (21 tests) 5ms
โ src/state/threadExecution.test.ts (11 tests) 18ms
โ src/authorization/remote.test.ts (8 tests) 44ms
โ src/connection/resolver.test.ts (6 tests) 107ms
โ src/mcpApps/host.test.ts (9 tests) 24ms
โ src/state/threadHistoryMerge.test.ts (7 tests) 20ms
โ src/state/threadDetail.test.ts (14 tests) 37ms
โ src/state/shellReducer.test.ts (14 tests) 20ms
โ src/connection/outdatedHostUpdate.test.ts (3 tests) 80ms
โ src/state/threadSnoozed.test.ts (20 tests) 18ms
โ src/state/threadSort.test.ts (21 tests) 163ms
โ src/client.test.ts (27 tests) 7265ms
โ effect-acp client (20)
โ transforms fragmented stdout before parsing and preserves UTF-8 833ms
โ preserves stdout transform errors without logging rejected input 947ms
โ reports idle child termination and rejects later requests and notifications 675ms
โ initializes, prompts, receives updates, and handles permission requests 829ms
โ returns structured invalid params without exposing values from typed extension request payloads 550ms
โ preserves ACP v2 structured diff semantics 747ms
โ does not turn unsupported ACP v2 auth methods into agent login 526ms
โ preserves registry env-var authentication extensions 542ms
โ replays buffered notifications to handlers registered after they arrive 499ms
โ routes MCP-over-ACP connect, message, notification, and disconnect callbacks 460ms
โ preserves future content and session-update variants 483ms
Test Files 6 passed (6)
Tests 63 passed (63)
Start at 02:17:16
Duration 8.91s (tests 56%, transform 23%, import 16%, setup 5%)
~/scripts$ vp test run --config ../vite.config.ts --dir . โ cache disabled
stdout | src/state/serverUsage.test.ts > keeps the cached usage summary when the awaited refresh fails
[02:17:25.040] WARN (#49): Could not refresh slow usage sources. {
errorType: 'error',
errorName: 'UsageReadError',
errorTag: 'UsageReadError',
stack: ' at /home/runner/_work/t3code/t3code/packages/client-runtime/src/state/serverUsage.test.ts:289:21\n' +
' at Generator.next (<anonymous>)\n' +
' at ~effect/Effect/successCont (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:979:28)\n' +
' at ~effect/Effect/evaluate (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:991:25)\n' +
' at FiberImpl.runLoop (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:453:97)\n' +
' at FiberImpl.evaluate (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:402:23)\n' +
' at file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:2474:9\n' +
' at file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:2526:19\n' +
' at Module.<anonymous> (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/internal/effect.js:2537:31)\n' +
' at Array.<anonymous> (file:///home/runner/_work/t3code/t3code/node_modules/.pnpm/@effect+vitest@4.0.5_patch_hash=2731c9c3761c595f25ddc625a7d61ca376b389d5b3049ecb837c894_729be65b0f3c6bde0309e4457c6d9256/node_modules/@effect/vitest/dist/internal/internal.js:26:31)'
}
โ src/state/serverUsage.test.ts (2 tests) 84ms
โ src/state/projectCommands.test.ts (4 tests) 115ms
โ src/state/terminalSession.test.ts (9 tests) 19ms
โ src/platform/shellCacheEncoding.test.ts (5 tests) 202ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/scripts
โ rules/require-disposable-render.test.ts (22 tests) 13471ms
โ t3code/require-disposable-render (22)
โ allows the disposable helper (1)
โ passes 650ms
โ rejects react-dom/client (1)
โ reports the rule diagnostic 708ms
โ rejects act from react (1)
โ reports the rule diagnostic 468ms
โ rejects a renamed act from react (1)
โ reports the rule diagnostic 740ms
โ rejects setting the act environment (1)
โ reports the rule diagnostic 659ms
โ rejects setting the act environment by computed key (1)
โ reports the rule diagnostic 605ms
โ rejects stubbing the act environment (1)
โ reports the rule diagnostic 598ms
โ rejects userEvent wrapped in act from react (1)
โ reports the rule diagnostic 661ms
โ rejects userEvent wrapped in the render helper's act (1)
โ reports the rule diagnostic 628ms
โ rejects userEvent wrapped in a renamed render helper act (1)
โ reports the rule diagnostic 570ms
โ rejects a renamed userEvent wrapped in act (1)
โ reports the rule diagnostic 637ms
โ rejects a locator click wrapped in act (1)
โ reports the rule diagnostic 606ms
โ rejects React.act from a namespace import (1)
โ reports the rule diagnostic 734ms
โ rejects userEvent wrapped in React.act (1)
โ reports the rule diagnostic 739ms
โ allows act around a DOM click and userEvent in a function act only defines (1)
โ passes 551ms
โ rejects lifecycle hooks through a test runner namespace (1)
โ reports the rule diagnostic 654ms
โ rejects importing lifecycle hooks from the test runner (1)
โ reports the rule diagnostic 520ms
โ rejects afterEach (1)
โ reports the rule diagnostic 557ms
โ rejects beforeAll (1)
โ reports the rule diagnostic 690ms
โ allows lifecycle hooks outside browser tests (1)
โ passes 596ms
โ allows importing lifecycle hooks outside browser tests (1)
โ passes 425ms
โ still rejects react-dom/client in unit tests (1)
โ reports the rule diagnostic 446ms
โ src/state/threadRequests.test.ts (10 tests) 5ms
โ src/state/subagentRuntime.test.ts (11 tests) 11ms
โ src/operations/commands.performance.test.ts (1 test) 429ms
โ routine command transport budget (1)
โ dispatches an implicit-auto message without a full projection round trip 428ms
โ lib/third-party-licenses.test.ts (19 tests) 200ms
โ src/state/usage.test.ts (8 tests) 22ms
โ src/state/threadFamilies.test.ts (3 tests) 98ms
โ notify-discord-release.test.ts (15 tests) 185ms
โ src/state/boundedThreadSnapshotHttp.test.ts (5 tests) 100ms
โ src/projectFaviconCache.test.ts (8 tests) 282ms
โ src/work-log/commandLabel.test.ts (61 tests) 131ms
โ dev-runner.test.ts (32 tests) 220ms
โ legend-list-initial-reveal.test.ts (10 tests) 30ms
โ merge-update-manifests.test.ts (5 tests) 30ms
โ lib/cli-external-packages.test.ts (10 tests) 567ms
โ external package dependency closure (1)
โ keeps every runtime dependency of an external package external too 528ms
โ build-npm-launcher.test.ts (1 test) 767ms
โ build-npm-launcher (1)
โ publishes a launcher that downloads, verifies, caches, and runs the release executable 752ms
โ src/state/threadSearch.test.ts (9 tests) 103ms
โ src/relay/managedRelayState.test.ts (4 tests) 53ms
โ lib/public-config.test.ts (1 test) 7ms
โ lib/dev-share.test.ts (5 tests) 18ms
โ rules/prefer-effect-fn.test.ts (23 tests) 15390ms
โ t3code/prefer-effect-fn (23)
โ allows inline programs and layer construction (1)
โ passes 736ms
โ allows named functions and deliberate untraced functions (1)
โ passes 808ms
โ allows inline combinator callbacks (1)
โ passes 648ms
โ allows inline option and error callbacks (1)
โ passes 635ms
โ allows reference default-value callbacks (1)
โ passes 726ms
โ reports service members named onSome (1)
โ reports the rule diagnostic 915ms
โ reports service members named onNone (1)
โ reports the rule diagnostic 637ms
โ reports service members named onSuccess (1)
โ reports the rule diagnostic 808ms
โ reports service members named onFailure (1)
โ reports the rule diagnostic 992ms
โ reports service members named defaultValue (1)
โ reports the rule diagnostic 816ms
โ does not mistake other namespaces or shadowed locals for Effect (1)
โ passes 641ms
โ leaves functions with synchronous setup for manual review (1)
โ passes 815ms
โ reports a named arrow wrapper (1)
โ reports the rule diagnostic 447ms
โ reports a block-bodied wrapper (1)
โ reports the rule diagnostic 427ms
โ reports a declaration with pipe transforms (1)
โ reports the rule diagnostic 611ms
โ reports a function expression (1)
โ reports the rule diagnostic 538ms
โ reports service members (1)
โ reports the rule diagnostic 533ms
โ reports class fields (1)
โ reports the rule diagnostic 532ms
โ recognizes namespace aliases (1)
โ reports the rule diagnostic 595ms
โ recognizes bare-package Effect imports (1)
โ reports the rule diagnostic 516ms
โ recognizes a direct gen import (1)
โ reports the rule diagnostic 710ms
โ reports class methods (1)
โ reports the rule diagnostic 734ms
โ allows getters that expose an effect value (1)
โ passes 541ms
โ mobile-native-client.test.ts (2 tests) 62ms
โ src/pullRequestEditing.test.ts (13 tests) 20ms
โ src/work-log/presentation.test.ts (18 tests) 47ms
โ rules/no-mobile-uniwind-theme-escape-hatches.test.ts (24 tests) 15678ms
โ t3code/no-mobile-uniwind-theme-escape-hatches (24)
โ allows semantic mobile theme classes (1)
โ passes 850ms
โ allows unrelated functions with legacy hook names (1)
โ passes 751ms
โ allows unrelated imports with legacy hook names (1)
โ passes 836ms
โ allows erased type-only theme imports (1)
โ passes 698ms
โ allows appearance words in ordinary copy (1)
โ passes 459ms
โ does not conflate shadowed Uniwind namespaces (1)
โ passes 639ms
โ allows reviewed native interop boundaries (1)
โ passes 711ms
โ still reports appearance variants in reviewed interop boundaries (1)
โ reports the rule diagnostic 574ms
โ reports new React theme subscriptions (1)
โ reports the rule diagnostic 554ms
โ reports the retired theme color hook (1)
โ reports the rule diagnostic 540ms
โ reports guarded hooks imported with TypeScript extensions (1)
โ reports the rule diagnostic 737ms
โ reports unreviewed native interop subscriptions (1)
โ reports the rule diagnostic 575ms
โ reports appearance variants in string literals (1)
โ reports the rule diagnostic 765ms
โ reports appearance variants in template literals (1)
โ reports the rule diagnostic 800ms
โ reports escaped appearance variants in template literals (1)
โ reports the rule diagnostic 508ms
โ reports appearance variants through nested class-map indirection (1)
โ reports the rule diagnostic 483ms
โ reports appearance variants passed to class builders (1)
โ reports the rule diagnostic 673ms
โ reports negative and important appearance variants (1)
โ reports the rule diagnostic 601ms
โ reports namespace CSS variable subscriptions (1)
โ reports the rule diagnostic 577ms
โ reports destructured namespace CSS variable subscriptions (1)
โ reports the rule diagnostic 717ms
โ reports aliased namespace CSS variable subscriptions (1)
โ reports the rule diagnostic 553ms
โ reports object-rest namespace CSS variable subscriptions (1)
โ reports the rule diagnostic 759ms
โ reports namespace access to the retired theme hook (1)
โ reports the rule diagnostic 747ms
โ reports destructured namespace access to the retired theme hook (1)
โ reports the rule diagnostic 515ms
โ update-release-package-versions.test.ts (3 tests) 87ms
โ src/device/duoViewer.test.ts (2 tests) 45ms
โ src/device/duoControl.test.ts (12 tests) 25ms
โ lib/resolve-catalog.test.ts (2 tests) 2ms
โ sync-reference-repos.test.ts (2 tests) 61ms
โ src/state/threadSubagents.test.ts (7 tests) 37ms
โ src/pullRequestLinkInput.test.ts (17 tests) 26ms
โ lib/build-target-arch.test.ts (1 test) 13ms
โ mock-update-server.test.ts (2 tests) 169ms
โ src/pullRequestQuery.test.ts (17 tests) 20ms
โ mobile-showcase.test.ts (3 tests) 12ms
โ src/handoff.test.ts (15 tests) 10ms
โ lib/icon-export.test.ts (1 test) 13ms
โ resolve-previous-release-tag.test.ts (3 tests) 8ms
โ mobile-native-static-check.test.ts (2 tests) 8ms
โ src/connection/diagnosis.test.ts (7 tests) 6ms
โ src/pullRequestMarkdown.test.ts (17 tests) 10ms
โ src/state/itemSupport.test.ts (2 tests) 6ms
โ src/state/presentation.test.ts (3 tests) 22ms
โ src/preview/serverBrowserStream.test.ts (5 tests) 19ms
โ src/connection/presentation.test.ts (4 tests) 8ms
โ src/device/phoneViewer.test.ts (1 test) 51ms
โ src/device/avcConfig.test.ts (8 tests) 12ms
โ build-desktop-artifact.test.ts (42 tests) 2987ms
โ build-desktop-artifact (40)
โ rejects overlapping builds from another process until restoration finishes 1127ms
โ builds web, server and desktop with the resolved version, restores changed manifests and preserves edits to matching ones 307ms
โ src/state/projectEntities.test.ts (2 tests) 10ms
โ src/platform/orchestrationCache.test.ts (3 tests) 43ms
โ src/providerSkills.test.ts (6 tests) 3ms
โ src/state/threadFeedback.test.ts (4 tests) 10ms
โ src/threadPullRequestCompatibility.test.ts (10 tests) 7ms
โ src/operations/projects.test.ts (6 tests) 13ms
โ src/changeRequestLinks.test.ts (6 tests) 5ms
โ src/reviewGuideTour.test.ts (7 tests) 11ms
โ src/device/phoneScene.test.ts (8 tests) 79ms
โ src/state/usageProgress.test.ts (4 tests) 3ms
โ src/device/phoneInteraction.test.ts (4 tests) 9ms
โ src/device/duoScene.test.ts (2 tests) 19ms
โ rules/require-suppression-reason.test.ts (13 tests) 7963ms
โ t3code/require-suppression-reason (13)
โ allows a directive with a -- reason (1)
โ passes 563ms
โ allows a directive explained by the comment above (1)
โ passes 499ms
โ allows stacked directives under one explanation (1)
โ passes 780ms
โ allows a TypeScript directive followed by its reason (1)
โ passes 710ms
โ allows a directive in a JSX comment with a reason (1)
โ passes 778ms
โ ignores enable directives (1)
โ passes 684ms
โ reports a lint directive without a reason (1)
โ reports the rule diagnostic 602ms
โ reports a file-level directive without a reason (1)
โ reports the rule diagnostic 577ms
โ reports a TypeScript directive without a reason (1)
โ reports the rule diagnostic 528ms
โ does not count a comment separated by a blank line (1)
โ reports the rule diagnostic 581ms
โ allows an empty comment line between the reason and the directive (1)
โ passes 640ms
โ does not count an empty comment above (1)
โ reports the rule diagnostic 634ms
โ does not count a trailing comment on the code line above (1)
โ reports the rule diagnostic 352ms
โ src/device/model.test.ts (4 tests) 8ms
โ src/state/attachments.test.ts (3 tests) 10ms
โ src/t3ToolSummary.test.ts (3 tests) 12ms
โ src/connection/errors.test.ts (5 tests) 21ms
โ src/state/filesystem.test.ts (8 tests) 8ms
โ src/state/sharedSettings.test.ts (9 tests) 21ms
โ src/mediaSource.test.ts (8 tests) 5ms
โ src/state/turnItemPresentation.test.ts (2 tests) 10ms
โ src/connection/compatibility.test.ts (4 tests) 15ms
โ src/work-log/toolPresentation.test.ts (4 tests) 15ms
โ rules/no-frame-waits-in-browser-tests.test.ts (16 tests) 9064ms
โ t3code/no-frame-waits-in-browser-tests (16)
โ allows retrying assertions and the full fake timer set (1)
โ passes 606ms
โ allows requestAnimationFrame inside mocks (1)
โ passes 698ms
โ allows timers outside a promise executor and other listeners (1)
โ passes 573ms
โ rejects a nextFrame helper (1)
โ reports the rule diagnostic 562ms
โ rejects requestAnimationFrame as the executor (1)
โ reports the rule diagnostic 474ms
โ rejects window.requestAnimationFrame (1)
โ reports the rule diagnostic 448ms
โ allows a pass-through frame executor inside a mock implementation (1)
โ passes 623ms
โ rejects setTimeout passed straight through as the promise executor (1)
โ reports the rule diagnostic 629ms
โ rejects setTimeout inside a promise executor (1)
โ reports the rule diagnostic 509ms
โ rejects setInterval inside a promise executor (1)
โ reports the rule diagnostic 645ms
โ rejects transitionend listeners (1)
โ reports the rule diagnostic 550ms
โ rejects animationend listeners (1)
โ reports the rule diagnostic 601ms
โ rejects vi.useFakeTimers (1)
โ reports the rule diagnostic 550ms
โ rejects a partial fakeTimers set (1)
โ reports the rule diagnostic 622ms
โ rejects a partial vi.useFakeTimers set (1)
โ reports the rule diagnostic 489ms
โ ignores files that are not browser tests (1)
โ passes 446ms
โ src/device/streamFrames.test.ts (1 test) 8ms
โ src/pullRequestChecks.test.ts (3 tests) 9ms
โ src/state/providerInstanceDisplay.test.ts (10 tests) 10ms
โ src/promptLinks.test.ts (3 tests) 3ms
โ src/state/gitActions.test.ts (3 tests) 3ms
โ knip-schemas.test.ts (1 test) 7271ms
โ allows types and schemas through the real Knip CLI without hiding runtime or file findings 7270ms
Test Files 21 passed (21)
Tests 162 passed (162)
Start at 02:17:25
Duration 7.65s (tests 53%, import 24%, transform 12%, setup 11%)
โ src/device/modelScene.test.ts (2 tests) 8ms
โ rules/no-test-in-loop.test.ts (8 tests) 4701ms
โ t3code/no-test-in-loop (7)
โ allows it.each and it.effect.each (1)
โ passes 829ms
โ allows loops inside a test body (1)
โ passes 708ms
โ ignores node:test files, which have no .each (1)
โ passes 526ms
โ reports it inside a for...of loop (1)
โ reports the rule diagnostic 558ms
โ reports it.effect inside a for loop nested in describe (1)
โ reports the rule diagnostic 558ms
โ reports test inside a for...in loop (1)
โ reports the rule diagnostic 513ms
โ reports a describe inside a loop once, not the tests inside it (1)
โ reports the rule diagnostic 448ms
โ ignores non-test files (1)
โ passes 538ms
โ src/pullRequestReactions.test.ts (3 tests) 2ms
โ src/state/queryPersistence.test.ts (3 tests) 19ms
โ src/state/serverConfigProjection.test.ts (2 tests) 7ms
โ src/state/threadInbox.test.ts (2 tests) 2ms
โ src/device/deviceMotion.test.ts (2 tests) 19ms
โ src/userMessage.test.ts (4 tests) 3ms
โ src/threadReference.test.ts (5 tests) 18ms
โ src/state/customSnooze.test.ts (11 tests) 14ms
โ src/state/auth.test.ts (2 tests) 8ms
โ src/state/usageAccess.test.ts (8 tests) 5ms
โ src/errors/safeLog.test.ts (2 tests) 6ms
โ src/filePreview.test.ts (3 tests) 45ms
โ src/markdownImages.test.ts (12 tests) 6ms
โ src/work-log/itemDetail.test.ts (2 tests) 4ms
โ src/errors/transport.test.ts (3 tests) 4ms
โ src/state/threadHistoryController.test.ts (1 test) 9ms
โ src/relay/errorPresentation.test.ts (3 tests) 2ms
โ src/mediaReference.test.ts (7 tests) 13ms
โ rules/no-raw-mcp-registration.test.ts (20 tests) 11297ms
โ t3code/no-raw-mcp-registration (20)
โ allows the rest of effect/ai and type-only McpServer imports (1)
โ passes 576ms
โ reports importing McpServer from effect/ai (1)
โ reports the rule diagnostic 579ms
โ reports importing McpServer under another name (1)
โ reports the rule diagnostic 557ms
โ reports a namespace import of effect/ai (1)
โ reports the rule diagnostic 495ms
โ reports importing the McpServer module directly (1)
โ reports the rule diagnostic 532ms
โ reports re-exporting McpServer (1)
โ reports the rule diagnostic 618ms
โ reports re-exporting all of effect/ai (1)
โ reports the rule diagnostic 763ms
โ reports a dynamic import of the McpServer module (1)
โ reports the rule diagnostic 541ms
โ reports a dynamic import written as a template (1)
โ reports the rule diagnostic 712ms
โ reports McpServer.toolkit (1)
โ reports the rule diagnostic 621ms
โ reports McpServer.resource and McpServer.prompt (1)
โ reports the rule diagnostic 543ms
โ reports addTool on the McpServer service (1)
โ reports the rule diagnostic 415ms
โ reports a registration method read without calling it (1)
โ reports the rule diagnostic 539ms
โ reports a registration function taken by destructuring (1)
โ reports the rule diagnostic 627ms
โ reports a registration method taken by destructuring (1)
โ reports the rule diagnostic 490ms
โ lets tests import McpServer to build a server (1)
โ passes 476ms
โ reports a registration in a test (1)
โ reports the rule diagnostic 527ms
โ reports a test importing McpServer under another name (1)
โ reports the rule diagnostic 542ms
โ reports a test importing effect/ai as a namespace (1)
โ reports the rule diagnostic 481ms
โ reports a test importing the McpServer module directly (1)
โ reports the rule diagnostic 629ms
โ src/device/duoSnap.test.ts (1 test) 20ms
โ src/state/assets.test.ts (1 test) 10ms
โ src/device/renderScheduler.test.ts (1 test) 9ms
โ src/device/androidFoldScene.test.ts (1 test) 56ms
โ src/state/commandOutput.test.ts (1 test) 7ms
โ src/composerThreadItems.test.ts (1 test) 11ms
โ src/environment/endpoint.test.ts (1 test) 2ms
โ src/errors/errorTrace.test.ts (2 tests) 4ms
โ src/secretRequest.test.ts (2 tests) 3ms
โ src/work-log/scrollAnchor.test.ts (1 test) 2ms
โ src/state/archivedThreads.test.ts (1 test) 4ms
Test Files 130 passed (130)
Tests 1247 passed (1247)
Start at 02:17:12
Duration 22.87s (import 48%, transform 32%, setup 11%, tests 8%)
Import 522 modules were evaluated 10043 times ยท 64.76s total, 48% of tracked time
~7.43s faster with isolate: false โ shared modules are evaluated once per worker instead of once per file
learn more: https://vitest.dev/guide/improving-performance#test-isolation
โ rules/no-inline-schema-compile.test.ts (6 tests) 2487ms
โ t3code/no-inline-schema-compile (6)
โ allows schema compilers hoisted to module scope (1)
โ passes 528ms
โ allows factory helpers that return a precompiled decoder (1)
โ passes 573ms
โ allows schema construction helpers that use encode transformations (1)
โ passes 379ms
โ allows dynamic schema parameters that cannot be hoisted to module scope (1)
โ passes 400ms
โ reports schema compilers inside function bodies (1)
โ reports the rule diagnostic 301ms
โ rules/no-unscoped-has.test.ts (42 tests) 23630ms
โ t3code/no-unscoped-has (24)
โ allows :has() on the element itself (1)
โ passes 857ms
โ allows :has() anchored to an attribute (1)
โ passes 596ms
โ allows :has() inside :not() on the element itself (1)
โ passes 610ms
โ allows built-in has-* variants (1)
โ passes 578ms
โ allows a sibling selector without :has() (1)
โ passes 553ms
โ ignores prose mentioning :has() (1)
โ passes 647ms
โ ignores :has() inside an arbitrary value (1)
โ passes 609ms
โ allows a negated :has() on the element itself (1)
โ passes 661ms
โ allows :has() on a group or peer element (1)
โ passes 743ms
โ allows a selector list whose own branch is anchored (1)
โ passes 993ms
โ ignores :has() text in quoted attribute values (1)
โ passes 548ms
โ allows a selector without & on the element itself (1)
โ passes 562ms
โ reports a sibling :has() with nothing anchoring it (1)
โ reports the rule diagnostic 775ms
โ reports a descendant :has() with nothing anchoring it (1)
โ reports the rule diagnostic 519ms
โ reports a universal :has() ancestor (1)
โ reports the rule diagnostic 731ms
โ reports :has() whose only anchor is negated (1)
โ reports the rule diagnostic 576ms
โ reports uppercase :HAS() (1)
โ reports the rule diagnostic 494ms
โ reports a selector-list branch borrowing another branch's anchor (1)
โ reports the rule diagnostic 585ms
โ reports an unanchored branch inside :is() (1)
โ reports the rule diagnostic 536ms
โ reports an unanchored :has() inside a named group variant (1)
โ reports the rule diagnostic 413ms
โ reports a :has() on an ancestor of a selector without & (1)
โ reports the rule diagnostic 536ms
โ reports a :has() on an ancestor of a group (1)
โ reports the rule diagnostic 579ms
โ reports an in-* ancestor :has() (1)
โ reports the rule diagnostic 639ms
โ reports :has() anchored to the document root (1)
โ reports the rule diagnostic 458ms
โ t3code/no-outset-state-indicators (18)
โ valid: inset state rings (1)
โ inset state rings (1)
โ passes 576ms
โ valid: an unconditional inset (1)
โ an unconditional inset (1)
โ passes 711ms
โ valid: an inset in a sibling composer argument (1)
โ an inset in a sibling composer argument (1)
โ passes 534ms
โ valid: an inset in a nested conditional composer (1)
โ an inset in a nested conditional composer (1)
โ passes 356ms
โ valid: outlines covered by the inward default (1)
โ outlines covered by the inward default (1)
โ passes 521ms
โ valid: wider outlines with a matching inward offset (1)
โ wider outlines with a matching inward offset (1)
โ passes 445ms
โ valid: arbitrary pixel outlines with a matching inward offset (1)
โ arbitrary pixel outlines with a matching inward offset (1)
โ passes 398ms
โ valid: arbitrary outline colors (1)
โ arbitrary outline colors (1)
โ passes 636ms
โ valid: decorative rings without a state (1)
โ decorative rings without a state (1)
โ passes 676ms
โ valid: prose (1)
โ prose (1)
โ passes 730ms
โ invalid: state rings without an inset (1)
โ state rings without an inset (1)
โ reports the rule diagnostic 357ms
โ invalid: an inset from another state (1)
โ an inset from another state (1)
โ reports the rule diagnostic 568ms
โ invalid: an inset from another conditional branch (1)
โ an inset from another conditional branch (1)
โ reports the rule diagnostic 433ms
โ invalid: an inset passed to another function (1)
โ an inset passed to another function (1)
โ reports the rule diagnostic 517ms
โ invalid: arbitrary state ring widths (1)
โ arbitrary state ring widths (1)
โ reports the rule diagnostic 357ms
โ invalid: positive outline offsets (1)
โ positive outline offsets (1)
โ reports the rule diagnostic 323ms
โ invalid: arbitrary outline offsets (1)
โ arbitrary outline offsets (1)
โ reports the rule diagnostic 311ms
โ invalid: wide outlines without an inward offset (1)
โ wide outlines without an inward offset (1)
โ reports the rule diagnostic 323ms
โ rules/no-wall-clock-in-tests.test.ts (8 tests) 3157ms
โ t3code/no-wall-clock-in-tests (7)
โ ignores a computed member with a variable key (1)
โ passes 492ms
โ allows fixed dates and readings that seed mocks (1)
โ passes 422ms
โ reports elapsed-time measurement (1)
โ reports the rule diagnostic 456ms
โ reports Date.now fixtures (1)
โ reports the rule diagnostic 504ms
โ reports new Date() with no arguments (1)
โ reports the rule diagnostic 394ms
โ rules/no-manual-effect-runtime-in-tests.test.ts (17 tests) 8060ms
โ t3code/no-manual-effect-runtime-in-tests (14)
โ allows @effect/vitest effect tests (1)
โ passes 610ms
โ reports Effect.runCallback (1)
โ reports the rule diagnostic 595ms
โ reports Effect.runCallbackWith (1)
โ reports the rule diagnostic 436ms
โ reports Effect.runFork (1)
โ reports the rule diagnostic 577ms
โ reports Effect.runForkWith (1)
โ reports the rule diagnostic 574ms
โ reports Effect.runPromise (1)
โ reports the rule diagnostic 461ms
โ reports Effect.runPromiseExit (1)
โ reports the rule diagnostic 516ms
โ reports Effect.runPromiseExitWith (1)
โ reports the rule diagnostic 584ms
โ reports Effect.runPromiseWith (1)
โ reports the rule diagnostic 556ms
โ reports Effect.runSync (1)
โ reports the rule diagnostic 474ms
โ reports Effect.runSyncExit (1)
โ reports the rule diagnostic 635ms
โ reports Effect.runSyncExitWith (1)
โ reports the rule diagnostic 458ms
โ reports Effect.runSyncWith (1)
โ reports the rule diagnostic 367ms
โ reports ManagedRuntime.make (1)
โ reports the rule diagnostic 315ms
โ rules/no-hermes-unsupported-apis.test.ts (22 tests) 10806ms
โ t3code/no-hermes-unsupported-apis (22)
โ allows in-place sort on a copy (1)
โ passes 567ms
โ allows in-place reverse on a copy (1)
โ passes 1100ms
โ allows other ES2023 methods Hermes ships (1)
โ passes 685ms
โ ignores property reads that are not calls (1)
โ passes 539ms
โ reports toSorted (1)
โ reports the rule diagnostic 397ms
โ reports toReversed in a chain (1)
โ reports the rule diagnostic 585ms
โ reports toSpliced via computed access with a copy-then-splice remediation (1)
โ reports the rule diagnostic 542ms
โ reports a static template-literal property name (1)
โ reports the rule diagnostic 525ms
โ ignores a template-literal property with substitutions (1)
โ passes 664ms
โ allows supported Intl constructors (1)
โ passes 497ms
โ allows feature detection (1)
โ passes 539ms
โ allows unrelated Segmenter constructors (1)
โ passes 616ms
โ ignores dynamic computed names (1)
โ passes 473ms
โ reports new Intl.Segmenter(undefined, { granularity: 'grapheme' }) (1)
โ reports the rule diagnostic 393ms
โ reports new Intl['Segmenter']() (1)
โ reports the rule diagnostic 483ms
โ reports new Intl[`Segmenter`]() (1)
โ reports the rule diagnostic 434ms
โ reports new window.Intl.Segmenter() (1)
โ reports the rule diagnostic 317ms
โ rules/no-global-process-runtime.test.ts (9 tests) 2748ms
โ t3code/no-global-process-runtime (9)
โ allows injected host process references (1)
โ passes 305ms
โ allows unrelated node os imports (1)
โ passes 312ms
โ reports direct platform reads (1)
โ reports the rule diagnostic 328ms
โ reports direct architecture reads (1)
โ reports the rule diagnostic 301ms
โ reports default node os platform reads (1)
โ reports the rule diagnostic 308ms
โ rules/no-rpc-permission-bypass.test.ts (16 tests) 6122ms
โ blocks direct session calls (1)
โ reports the rule diagnostic 539ms
โ blocks extracting the raw client (1)
โ reports the rule diagnostic 531ms
โ blocks replacing the permission guard (1)
โ reports the rule diagnostic 640ms
โ blocks namespace guard access (1)
โ reports the rule diagnostic 393ms
โ blocks raw protocol imports (1)
โ reports the rule diagnostic 412ms
โ allows typed requests (1)
โ passes 525ms
โ allows the transport boundary (1)
โ passes 412ms
โ blocks raw client destructuring (1)
โ reports the rule diagnostic 321ms
โ guard installation allowance does not permit raw protocol imports (1)
โ reports the rule diagnostic 316ms
โ rules/namespace-node-imports.test.ts (5 tests) 1444ms
โ t3code/namespace-node-imports (5)
โ allows canonical Node namespaces (1)
โ passes 302ms
โ rules/prefer-catch-tags.test.ts (6 tests) 1844ms
โ t3code/prefer-catch-tags (6)
โ allows Effect.catchTags (1)
โ passes 325ms
โ reports Effect.catchTag (1)
โ reports the rule diagnostic 337ms
โ reports catchTag through an aliased namespace (1)
โ reports the rule diagnostic 301ms
โ rules/no-mobile-pull-request-glyph-literals.test.ts (10 tests) 3011ms
โ t3code/no-mobile-pull-request-glyph-literals (10)
โ allows glyphs picked from the module (1)
โ passes 340ms
โ reports glyphs in platform symbol objects (1)
โ reports the rule diagnostic 330ms
โ reports an Android-only pull request glyph (1)
โ reports the rule diagnostic 313ms
โ rules/no-native-title-tooltip.test.ts (11 tests) 3241ms
โ t3code/no-native-title-tooltip (11)
โ allows intrinsic elements without a title attribute (1)
โ passes 340ms
โ allows title as an accessible name on embedded content (1)
โ passes 327ms
โ reports title on a button (1)
โ reports the rule diagnostic 317ms
โ reports title on a paragraph (1)
โ reports the rule diagnostic 313ms
โ rules/no-em-dash-copy.test.ts (5 tests) 1284ms
โ t3code/no-em-dash-copy (5)
โ allows em dashes in comments and regex literals (1)
โ passes 305ms
โ rules/no-manual-memo.test.ts (14 tests) 3831ms
โ t3code/no-manual-memo (11)
โ allows useStableCallback (1)
โ passes 304ms
โ reports a "use memo" directive (1)
โ reports the rule diagnostic 329ms
โ reports useMemo (1)
โ reports the rule diagnostic 305ms
โ rules/no-hookless-use-function.test.ts (9 tests) 2306ms
โ t3code/no-hookless-use-function (9)
โ allows a hook that calls useState (1)
โ passes 320ms
โ allows a hook that calls a member hook (1)
โ passes 316ms
โ rules/no-dom-test-environment.test.ts (12 tests) 2663ms
โ t3code/no-dom-test-environment (12)
โ allows browser tests (1)
โ passes 313ms
Test Files 25 passed (25)
Tests 366 passed (366)
Start at 02:17:11
Duration 29.49s (tests 96%, import 2%, setup 1%)
โ unit src/reactCompilerCoverage.test.ts (944 tests) 50312ms
โ React Compiler coverage (944)
โ Metro's transformer applies the compiler 1232ms
โ compiles src/components/ComposerAttachmentStrip.tsx 391ms
โ compiles src/components/ComposerContextSheet.tsx 715ms
โ compiles src/components/ComposerToolbar.tsx 350ms
โ compiles src/features/browser/PreviewStreamWebView.tsx 326ms
โ compiles src/features/connection/CloudEnvironmentRows.tsx 335ms
โ compiles src/features/development/ComponentCatalogScreen.tsx 301ms
โ compiles src/features/files/SourceFileSurface.tsx 324ms
โ compiles src/features/files/ThreadFilesRouteScreen.tsx 1176ms
โ compiles src/features/files/useFileTreeEntries.ts 335ms
โ compiles src/features/home/HomeRouteScreen.tsx 328ms
โ compiles src/features/home/HomeScreen.tsx 1466ms
โ compiles src/features/home/thread-swipe-actions.tsx 885ms
โ compiles src/features/home/useThreadListActions.ts 509ms
โ compiles src/features/keyboard/CommandPalette.tsx 466ms
โ compiles src/features/layout/AdaptiveWorkspaceLayout.tsx 948ms
โ compiles src/features/projects/AddProjectScreen.tsx 468ms
โ compiles src/features/pull-requests/PullRequestDiscussionScreen.tsx 330ms
โ compiles src/features/pull-requests/PullRequestFiles.tsx 489ms
โ compiles src/features/pull-requests/PullRequestMergeControls.tsx 355ms
โ compiles src/features/pull-requests/PullRequestReviewSheet.tsx 435ms
โ compiles src/features/pull-requests/PullRequestRouteScreen.tsx 1484ms
โ compiles src/features/pull-requests/PullRequestsScreen.tsx 312ms
โ compiles src/features/pull-requests/usePullRequestList.ts 424ms
โ compiles src/features/review/ReviewSheet.tsx 515ms
โ compiles src/features/settings/SettingsScheduledTasksRouteScreen.tsx 391ms
โ compiles src/features/terminal/ThreadTerminalRouteScreen.tsx 377ms
โ compiles src/features/threads/NewTaskDraftScreen.tsx 508ms
โ compiles src/features/threads/ThreadComposer.tsx 635ms
โ compiles src/features/threads/ThreadDetailScreen.tsx 872ms
โ compiles src/features/threads/ThreadFeed.tsx 801ms
โ compiles src/features/threads/new-task-flow-provider.tsx 426ms
โ compiles src/features/threads/thread-list-v2-items.tsx 302ms
โ compiles src/features/threads/thread-work-log.tsx 356ms
โ caches the thread feed derivation 784ms
Test Files 206 passed (206)
Tests 2399 passed (2399)
Start at 02:16:47
Duration 63.39s (import 37%, tests 26%, transform 24%, setup 9%, environment 4%)
---
vp run: 27/27 successful. (Run `vp run --last-details` for full details)
Post job cleanup.
Cache hit occurred on the primary key electron-Linux-X64-854e11ddd491bd4f350eebb67a74265df119376a3984c8e153cfe5fc8ced6309, not saving cache.
Post job cleanup.
##[start-action display=Cache full pnpm store;id=__1cbad698-c1b5-434b-8b45-6cab89cc6b87.__actions_cache]
Post job cleanup.
Cache hit occurred on the primary key pnpm-full-v1-Linux-X64-3343c3b1388f61a61de99ade7ddf42400f9622aebf34bf75a63eccbd0dde8e3d, not saving cache.
##[end-action id=__1cbad698-c1b5-434b-8b45-6cab89cc6b87.__actions_cache;outcome=success;conclusion=success;duration_ms=98]
##[start-action display=Cache Vite+;id=__1cbad698-c1b5-434b-8b45-6cab89cc6b87.vp_cache]
Post job cleanup.
Cache hit occurred on the primary key vite-plus-home-v2-Linux-X64-1.3.0-node26.12.1-pnpm@12.14.0, not saving cache.
##[end-action id=__1cbad698-c1b5-434b-8b45-6cab89cc6b87.vp_cache;outcome=success;conclusion=success;duration_ms=64]
Post job cleanup.
[command]/usr/local/bin/git version
git version 2.55.0
Temporarily overriding HOME='/home/runner/_work/_temp/0641b0d6-dc33-4cee-bb7d-374b3de2a295' before making global git config changes
Adding repository directory to the temporary git global config as a safe directory
[command]/usr/local/bin/git config --global --add safe.directory /home/runner/_work/t3code/t3code
Removing SSH command configuration
[command]/usr/local/bin/git config --local --name-only --get-regexp core\.sshCommand
[command]/usr/local/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :"
fatal: No url found for submodule path '.repos/alchemy-effect/submodules/distilled' in .gitmodules
Warning: The process '/usr/local/bin/git' failed with exit code 128
A job completed hook has been configured by the self-hosted runner administrator
โธ Run '/job_completed.sh'
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 161
BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 349
BLACKSMITH_CHECK_RUN_ID: 121050704624
BLACKSMITH_JOB_DISPLAY_NAME: Test
GITHUB_ACTIONS_CACHE_MODE: write
Docker container cache not activated, skipping hash computation.
No active SSH sessions detected. Proceeding with shutdown immediately.
Cleaning up orphan processes