GitHub check
256 KB of 403 KB loaded Download the full log (403 KB)
147 KB of earlier output not loaded
.3014977Z Start at 20:14:56
Duration 3.51s (transform 59%, import 34%, setup 4%, tests 2%)
โ src/composerPullRequestMatches.test.ts (3 tests) 10ms
โ src/connectAuth.test.ts (3 tests) 4ms
~/packages/client-runtime$ vp test run โ cache disabled
โ src/searchRanking.test.ts (3 tests) 10ms
โ src/cloneUrl.test.ts (3 tests) 3ms
โ src/desktopBootstrapToken.test.ts (3 tests) 17ms
โ src/githubMarkdownLinks.test.ts (3 tests) 34ms
โ src/server/accountUsage.test.ts (9 tests) 1030ms
โ src/usageFormat.test.ts (4 tests) 10ms
โ src/favicon.test.ts (6 tests) 3ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/client-runtime
โ src/desktopAppControl.test.ts (2 tests) 8ms
โ src/schemaYaml.test.ts (2 tests) 22ms
โ src/oauthScope.test.ts (3 tests) 4ms
โ src/thirdPartyLicenses.test.ts (2 tests) 6ms
โ src/t3McpToolPresentation.test.ts (2 tests) 50ms
โ src/AgentScope.test.ts (1 test) 37ms
โ src/threadSearch.test.ts (2 tests) 16ms
โ src/relayUrl.test.ts (4 tests) 11ms
โ src/server/driver.test.ts (4 tests) 135ms
Test Files 6 passed (6)
Tests 93 passed (93)
Start at 20:14:56
Duration 5.16s (transform 61%, import 32%, setup 5%, tests 2%)
โ src/video.test.ts (2 tests) 2ms
~/packages/tailscale$ vp test run --config ../../vite.config.ts --dir . โ cache disabled
โ src/providerAuthReturnUrl.test.ts (5 tests) 38ms
โ src/server/usageLimits.test.ts (9 tests) 64ms
โ src/telemetryId.test.ts (1 test) 8ms
โ src/terminalLabels.test.ts (2 tests) 5ms
โ src/relayJwt.test.ts (1 test) 6ms
โ src/changedFileKind.test.ts (5 tests) 4ms
โ src/relaySigning.test.ts (1 test) 9ms
โ src/t3ProjectFile.test.ts (2 tests) 4ms
Test Files 91 passed (91)
Tests 1022 passed | 2 skipped (1024)
Start at 20:14:41
Duration 20.07s (import 41%, transform 31%, setup 15%, tests 12%, worker 1%)
Import 351 modules were evaluated 2816 times ยท 46.33s total, 41% of tracked time
~4.29s 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
โ src/server/auth.test.ts (10 tests) 36ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/tailscale
~/packages/effect-acp$ vp test run --config ../../vite.config.ts --dir . โ cache disabled
โ src/server/CursorAgentSdk.test.ts (1 test) 23ms
โ src/server/textGeneration.test.ts (8 tests) 76ms
โ src/tailscale.test.ts (7 tests) 24ms
Test Files 1 passed (1)
Tests 7 passed (7)
Start at 20:15:02
Duration 481ms (import 43%, transform 28%, setup 20%, tests 7%, worker 1%)
~/packages/effect-codex-app-server$ vp test run --config ../../vite.config.ts --dir . โ cache disabled
โ src/server/accountCache.test.ts (2 tests) 3ms
โ src/server/transportFailure.test.ts (10 tests) 6ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/effect-acp
โ src/server/status.test.ts (8 tests) 50ms
โ src/server/CursorSdk.test.ts (2 tests) 23ms
โ src/server/adapter.test.ts (14 tests) 169ms
โ src/server/credentialStore.test.ts (5 tests) 35ms
โ src/server/driver.test.ts (2 tests) 107ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/effect-codex-app-server
โ src/server/CursorSdkCatalog.test.ts (1 test) 12ms
Test Files 14 passed (14)
Tests 86 passed (86)
Start at 20:14:58
Duration 5.12s (transform 47%, import 39%, setup 8%, tests 6%)
~/packages/provider-acp-registry$ vp test run --config ../../vite.config.ts --dir . โ cache disabled
โ src/_internal/stdio.test.ts (1 test) 21ms
โ src/schema.test.ts (2 tests) 11ms
โ src/errors.test.ts (6 tests) 64ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/provider-acp-registry
โ src/agent.test.ts (6 tests) 117ms
โ src/_internal/stdio.test.ts (1 test) 45ms
โ src/_internal/shared.test.ts (4 tests) 38ms
โ src/authorization/layer.test.ts (23 tests) 354ms
โ src/protocol.test.ts (15 tests) 97ms
โ src/schema.test.ts (4 tests) 27ms
โ src/connection/supervisor.test.ts (30 tests) 291ms
โ src/client.test.ts (2 tests) 245ms
Test Files 5 passed (5)
Tests 26 passed (26)
Start at 20:15:02
Duration 1.96s (transform 69%, import 18%, tests 6%, setup 6%)
~/packages/provider-core$ vp test run --config ../../vite.config.ts --dir . โ cache disabled
โ src/state/runtime.test.ts (23 tests) 275ms
โ src/rpc/session.test.ts (14 tests) 421ms
โ src/protocol.test.ts (21 tests) 1126ms
โ effect-acp protocol (21)
โ propagates the real child exit code when the input stream ends 452ms
โ does not emit a second process-exit error after a decode failure 531ms
โ src/connection/registry.test.ts (41 tests) 397ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/provider-core
โ src/state/server.test.ts (19 tests) 42ms
โ src/state/threads-sync.test.ts (24 tests) 406ms
โ src/server/usageLimits.test.ts (7 tests) 10ms
โ src/operations/commands.test.ts (14 tests) 88ms
โ src/state/pullRequests.test.ts (55 tests) 1367ms
โ returns a successful mutation when source invalidation stalls 1005ms
โ src/voice-input/controller.test.ts (22 tests) 51ms
โ src/state/shell-sync.test.ts (6 tests) 101ms
โ src/server/AcpRegistryRuntimeCoordinator.test.ts (7 tests) 85ms
โ src/server/ModelCatalog.test.ts (4 tests) 3ms
โ src/server/authenticationState.test.ts (3 tests) 58ms
โ src/state/environmentHttpAuth.test.ts (32 tests) 270ms
โ src/state/vcs.test.ts (9 tests) 108ms
โ src/connection/onboarding.test.ts (13 tests) 108ms
โ src/state/entities.test.ts (16 tests) 32ms
โ src/state/vcsAction.test.ts (9 tests) 61ms
โ src/state/orchestrationV2Projection.test.ts (13 tests) 35ms
โ src/server/auth.test.ts (5 tests) 82ms
โ src/relay/managedRelay.test.ts (7 tests) 96ms
โ src/relay/discovery.test.ts (7 tests) 77ms
โ src/server/AcpRegistrySupport.test.ts (31 tests) 1207ms
โ src/state/threads-atoms.test.ts (4 tests) 118ms
โ src/server/notification.test.ts (4 tests) 4ms
โ src/server/attachmentPrompt.test.ts (2 tests) 19ms
โ src/state/threadCommands.test.ts (19 tests) 151ms
โ src/server/failure.test.ts (10 tests) 26ms
โ src/connection/routes.test.ts (19 tests) 42ms
โ src/server/providerAuthFlow.test.ts (17 tests) 150ms
โ src/rpc/client.test.ts (8 tests) 95ms
โ src/server/managedProvider.test.ts (7 tests) 111ms
โ src/server/driver.test.ts (9 tests) 43ms
Test Files 5 passed (5)
Tests 55 passed (55)
Start at 20:15:03
Duration 4.65s (transform 64%, import 23%, tests 9%, setup 4%)
โ src/server/snapshotProbe.test.ts (7 tests) 31ms
~/packages/provider-acp$ vp test run --config ../../vite.config.ts --dir . โ cache disabled
โ src/server/maintenanceResolver.test.ts (52 tests) 239ms
โ src/server/instanceEnvironment.test.ts (4 tests) 32ms
โ src/server/processGroup.test.ts (2 tests) 9ms
โ src/server/mcpSession.test.ts (2 tests) 9ms
โ src/platform/storageDocument.test.ts (13 tests) 22ms
โ src/server/collectStreamText.test.ts (2 tests) 33ms
โ src/state/threadShell.test.ts (9 tests) 73ms
โ src/device/stream.test.ts (14 tests) 82ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/provider-acp
โ src/state/projectGrouping.test.ts (20 tests) 24ms
โ src/server/mcpToolPresentation.test.ts (4 tests) 8ms
โ src/server/threadTitleContext.test.ts (2 tests) 10ms
โ src/server/textGenerationUtils.test.ts (3 tests) 14ms
โ src/state/fileMetadata.test.ts (11 tests) 271ms
โ src/server/textGenerationPrompts.test.ts (1 test) 5ms
Test Files 17 passed (17)
Tests 130 passed (130)
Start at 20:15:05
Duration 4.36s (transform 51%, import 37%, setup 9%, tests 3%)
Import 176 modules were evaluated 1005 times ยท 8.70s total, 37% of tracked time
~281ms 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/source-control-github$ vp test run --config ../../vite.config.ts --dir . โ cache disabled
โ src/connection/resolver.test.ts (6 tests) 68ms
โ src/state/commandPermissions.test.ts (14 tests) 83ms
โ src/server/sessionConfig.test.ts (6 tests) 5ms
โ src/server/clientPolicy.test.ts (13 tests) 89ms
โ src/server/mcpOverAcpBridge.test.ts (3 tests) 56ms
โ src/state/threadWorkflows.test.ts (21 tests) 16ms
โ src/state/threadRelationships.test.ts (11 tests) 31ms
โ src/state/threadHistoryMerge.test.ts (7 tests) 5ms
โ src/mcpApps/host.test.ts (9 tests) 13ms
โ src/state/threadExecution.test.ts (11 tests) 17ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/source-control-github
โ src/server/stderr.test.ts (2 tests) 18ms
โ src/connection/outdatedHostUpdate.test.ts (3 tests) 129ms
โ src/state/shellReducer.test.ts (14 tests) 14ms
โ src/server/runtimeModel.test.ts (47 tests) 604ms
โ src/state/threadSnoozed.test.ts (20 tests) 70ms
โ src/state/threadSort.test.ts (21 tests) 196ms
stdout | src/state/serverUsage.test.ts > keeps the cached usage summary when the awaited refresh fails
[20:15:12.070] 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) 81ms
โ src/state/projectCommands.test.ts (4 tests) 88ms
โ src/server/gitHubPullRequestJson.test.ts (49 tests) 110ms
โ src/client.test.ts (26 tests) 8411ms
โ effect-acp client (19)
โ transforms fragmented stdout before parsing and preserves UTF-8 611ms
โ preserves stdout transform errors without logging rejected input 491ms
โ reports idle child termination and rejects later requests and notifications 640ms
โ initializes, prompts, receives updates, and handles permission requests 759ms
โ returns structured invalid params without exposing values from typed extension request payloads 935ms
โ preserves ACP v2 structured diff semantics 667ms
โ does not turn unsupported ACP v2 auth methods into agent login 746ms
โ preserves registry env-var authentication extensions 923ms
โ replays buffered notifications to handlers registered after they arrive 708ms
โ routes MCP-over-ACP connect, message, notification, and disconnect callbacks 854ms
โ preserves future content and session-update variants 776ms
Test Files 6 passed (6)
Tests 62 passed (62)
Start at 20:15:02
Duration 9.81s (tests 61%, transform 22%, import 13%, setup 4%)
~/packages/provider-muse$ vp test run --config ../../vite.config.ts --dir . โ cache disabled
โ src/operations/commands.performance.test.ts (1 test) 318ms
โ src/state/terminalSession.test.ts (9 tests) 46ms
โ src/state/subagentRuntime.test.ts (11 tests) 21ms
โ src/platform/shellCacheEncoding.test.ts (5 tests) 332ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/provider-muse
โ src/server/coreRuntimeEvents.test.ts (5 tests) 26ms
โ src/server/nativeLogging.test.ts (3 tests) 20ms
โ src/authorization/remote.test.ts (5 tests) 260ms
โ src/state/sharedSettings.test.ts (17 tests) 59ms
โ src/server/usageLimits.test.ts (4 tests) 31ms
โ src/server/itemPresentation.test.ts (6 tests) 30ms
โ src/state/usage.test.ts (8 tests) 58ms
โ src/work-log/commandLabel.test.ts (81 tests) 255ms
โ src/state/threadRequests.test.ts (8 tests) 20ms
โ src/server/sdk.test.ts (11 tests) 144ms
โ src/server/protocol.test.ts (1 test) 3ms
โ src/server/GitHubCredentials.test.ts (5 tests) 61ms
โ src/state/boundedThreadSnapshotHttp.test.ts (5 tests) 147ms
โ src/server/GitHubRest.test.ts (8 tests) 147ms
โ src/work-log/presentation.test.ts (19 tests) 47ms
โ src/server/gitHubGraphQlClient.test.ts (9 tests) 428ms
โ src/server/githubStackActions.test.ts (9 tests) 241ms
โ src/projectFaviconCache.test.ts (8 tests) 433ms
โ project favicon image loader (3)
โ downscales large bitmaps and refuses large vector icons 370ms
โ src/server/GitHubPullRequestProvider.test.ts (17 tests) 139ms
โ src/device/duoControl.test.ts (12 tests) 28ms
โ src/pullRequestQuery.test.ts (17 tests) 44ms
โ src/device/duoViewer.test.ts (2 tests) 61ms
โ src/relay/managedRelayState.test.ts (4 tests) 81ms
โ src/server/GitHubQuota.test.ts (4 tests) 42ms
โ src/state/threadSubagents.test.ts (7 tests) 45ms
โ src/server/gitHubRepositoryResolution.test.ts (3 tests) 8ms
โ src/providerSkills.test.ts (7 tests) 19ms
โ src/state/threadDetail.test.ts (11 tests) 51ms
โ src/server/modelCatalog.test.ts (1 test) 16ms
โ src/connection/diagnosis.test.ts (7 tests) 28ms
โ src/server/GitHubPullRequestApi.test.ts (105 tests) 2521ms
โ GitHubPullRequestApi.layer (104)
โ keeps the pull request being ticked through, not the one looked up first 984ms
โ src/server/GitHubSourceControlProvider.test.ts (29 tests) 2466ms
โ keeps Enterprise operations on the selected remote: git@code.example.test:team/project.git 703ms
โ keeps Enterprise operations on the selected remote: ssh://git@code.example.test/team/project.git 720ms
โ keeps Enterprise operations on the selected remote: https://code.example.test/team/project.git 675ms
Test Files 10 passed (10)
Tests 238 passed (238)
Start at 20:15:10
Duration 8.02s (transform 52%, import 29%, tests 15%, setup 4%)
โ src/server/clientTerminals.test.ts (10 tests) 7898ms
โ AcpClientTerminals (9)
โ bounds unreleased terminal handles without invalidating existing ids 6541ms
โ bounds aggregate output retained across unreleased terminals 618ms
Test Files 8 passed (8)
Tests 89 passed (89)
Start at 20:15:09
Duration 9.44s (tests 41%, transform 33%, import 20%, setup 6%)
~/oxlint-plugin-t3code$ vp test run --config ../vite.config.ts --dir . โ cache disabled
~/packages/ssh$ vp test run --config ../../vite.config.ts --dir . โ cache disabled
โ src/preview/serverBrowserStream.test.ts (5 tests) 16ms
โ src/state/itemSupport.test.ts (2 tests) 5ms
โ src/connection/presentation.test.ts (4 tests) 12ms
โ src/server/maintenance.test.ts (3 tests) 53ms
โ src/state/threadFeedback.test.ts (5 tests) 7ms
โ src/state/presentation.test.ts (3 tests) 59ms
โ src/server/textGeneration.test.ts (8 tests) 155ms
โ src/server/status.test.ts (3 tests) 415ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/oxlint-plugin-t3code
โ src/pullRequestMarkdown.test.ts (15 tests) 21ms
โ src/pullRequestLinkInput.test.ts (14 tests) 23ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/ssh
โ src/device/phoneViewer.test.ts (1 test) 100ms
โ src/device/avcConfig.test.ts (8 tests) 39ms
โ src/server/adapter.test.ts (36 tests) 1104ms
Test Files 9 passed (9)
Tests 73 passed (73)
Start at 20:15:13
Duration 7.03s (transform 56%, import 30%, setup 8%, tests 6%)
~/scripts$ vp test run --config ../vite.config.ts --dir . โ cache disabled
โ src/config.test.ts (4 tests) 198ms
โ src/auth.test.ts (2 tests) 84ms
โ src/state/projectEntities.test.ts (2 tests) 70ms
โ src/handoff.test.ts (8 tests) 33ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/scripts
stdout | src/command.test.ts > ssh command > preserves process output: default head
[20:15:21.305] 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: ''
}
โ src/platform/orchestrationCache.test.ts (3 tests) 70ms
stdout | src/command.test.ts > ssh command > preserves process output: opt-in tail
[20:15:21.584] 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 '
}
โ src/command.test.ts (7 tests) 762ms
โ src/threadPullRequestCompatibility.test.ts (10 tests) 40ms
โ src/tunnel.test.ts (7 tests) 606ms
Test Files 4 passed (4)
Tests 20 passed (20)
Start at 20:15:19
Duration 2.71s (import 42%, tests 25%, transform 19%, setup 13%, worker 1%)
~/apps/mobile$ vp test run --project unit --project react โ cache disabled
โ src/device/phoneScene.test.ts (8 tests) 294ms
โ src/reviewGuideTour.test.ts (7 tests) 50ms
โ src/state/usageProgress.test.ts (4 tests) 29ms
โ src/operations/projects.test.ts (6 tests) 21ms
โ src/device/model.test.ts (4 tests) 10ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/apps/mobile
โ src/device/phoneInteraction.test.ts (4 tests) 35ms
โ src/state/attachments.test.ts (3 tests) 19ms
โ src/device/duoScene.test.ts (2 tests) 72ms
โ lib/third-party-licenses.test.ts (19 tests) 716ms
โ src/t3ToolSummary.test.ts (3 tests) 22ms
โ dev-runner.test.ts (31 tests) 349ms
โ notify-discord-release.test.ts (15 tests) 953ms
โ Discord release CLI and workflow (4)
โ passes the published nightly body from the workflow to ordered sends 427ms
โ src/connection/errors.test.ts (5 tests) 33ms
โ src/state/filesystem.test.ts (8 tests) 8ms
โ merge-update-manifests.test.ts (5 tests) 148ms
โ legend-list-initial-reveal.test.ts (10 tests) 311ms
โ src/work-log/toolPresentation.test.ts (4 tests) 22ms
โ src/state/threadSearch.test.ts (4 tests) 54ms
โ build-npm-launcher.test.ts (1 test) 2666ms
โ build-npm-launcher (1)
โ publishes a launcher that downloads, verifies, caches, and runs the release executable 2622ms
โ src/mediaSource.test.ts (8 tests) 80ms
โ lib/dev-share.test.ts (5 tests) 179ms
โ src/connection/compatibility.test.ts (4 tests) 47ms
โ react src/native/useRestingTopOffset.test.tsx (4 tests) 154ms
โ src/state/turnItemPresentation.test.ts (2 tests) 10ms
โ lib/public-config.test.ts (1 test) 30ms
โ src/promptLinks.test.ts (3 tests) 14ms
โ src/device/streamFrames.test.ts (1 test) 69ms
โ src/device/modelScene.test.ts (2 tests) 19ms
โ update-release-package-versions.test.ts (3 tests) 300ms
โ react src/components/ui/Dialog.android.test.tsx (1 test) 170ms
โ src/state/providerInstanceDisplay.test.ts (10 tests) 26ms
โ mobile-native-client.test.ts (2 tests) 302ms
โ src/state/serverConfigProjection.test.ts (2 tests) 26ms
โ src/device/deviceMotion.test.ts (2 tests) 32ms
โ lib/cli-external-packages.test.ts (10 tests) 4606ms
โ external package dependency closure (1)
โ keeps every runtime dependency of an external package external too 4447ms
โ react src/native/NativeHeaderToolbar.test.tsx (4 tests) 155ms
โ mock-update-server.test.ts (2 tests) 447ms
โ src/state/customSnooze.test.ts (11 tests) 20ms
โ src/state/queryPersistence.test.ts (3 tests) 25ms
โ lib/resolve-catalog.test.ts (2 tests) 4ms
โ sync-reference-repos.test.ts (2 tests) 154ms
โ src/state/threadInbox.test.ts (2 tests) 17ms
โ mobile-showcase.test.ts (3 tests) 26ms
โ lib/build-target-arch.test.ts (1 test) 59ms
โ src/work-log/itemDetail.test.ts (2 tests) 21ms
โ src/errors/safeLog.test.ts (2 tests) 13ms
โ lib/icon-export.test.ts (1 test) 3ms
โ src/state/usageAccess.test.ts (8 tests) 18ms
โ src/state/auth.test.ts (2 tests) 29ms
โ resolve-previous-release-tag.test.ts (3 tests) 26ms
โ mobile-native-static-check.test.ts (2 tests) 62ms
โ src/userMessage.test.ts (3 tests) 26ms
โ src/filePreview.test.ts (3 tests) 177ms
โ src/markdownImages.test.ts (12 tests) 20ms
โ src/errors/transport.test.ts (3 tests) 4ms
โ src/relay/errorPresentation.test.ts (3 tests) 6ms
โ src/mediaReference.test.ts (7 tests) 17ms
โ src/device/duoSnap.test.ts (1 test) 9ms
โ src/state/threadHistoryController.test.ts (1 test) 29ms
โ src/device/androidFoldScene.test.ts (1 test) 55ms
โ src/state/commandOutput.test.ts (1 test) 3ms
โ src/environment/endpoint.test.ts (1 test) 3ms
โ src/errors/errorTrace.test.ts (2 tests) 25ms
โ src/state/assets.test.ts (1 test) 6ms
โ src/work-log/scrollAnchor.test.ts (1 test) 20ms
โ react src/features/settings/components/BranchNamingSettings.test.tsx (4 tests) 100ms
โ react src/state/use-selected-thread-git-actions.test.tsx (1 test) 38ms
โ src/secretRequest.test.ts (2 tests) 12ms
โ build-desktop-artifact.test.ts (42 tests) 9605ms
โ build-desktop-artifact (40)
โ rejects overlapping builds from another process until restoration finishes 3816ms
โ builds web, server and desktop with the resolved version, restores changed manifests and preserves edits to matching ones 1396ms
โ reports a restore failure while still restoring the remaining manifests 703ms
โ unpacks target Windows natives while excluding the other architecture 302ms
โ rejects a node-pty prebuild for the wrong architecture in a Linux arm64 archive 312ms
โ src/state/archivedThreads.test.ts (1 test) 9ms
Test Files 119 passed (119)
Tests 1130 passed (1130)
Start at 20:15:00
Duration 34.97s (import 53%, transform 29%, setup 11%, tests 5%, worker 1%)
Import 490 modules were evaluated 8709 times ยท 107.77s total, 53% of tracked time
~12.19s 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/lib/threadActivity.test.ts (35 tests) 263ms
โ unit src/lib/modelOptions.test.ts (29 tests) 70ms
โ unit src/features/threads/threadListV2.test.ts (56 tests) 131ms
โ unit src/state/thread-outbox.test.ts (35 tests) 118ms
โ react src/features/settings/SettingsServerControlsRouteScreen.test.tsx (1 test) 126ms
โ unit src/features/agent-awareness/remoteRegistration.test.ts (15 tests) 777ms
โ knip-schemas.test.ts (1 test) 17759ms
โ allows types and schemas through the real Knip CLI without hiding runtime or file findings 17755ms
Test Files 21 passed (21)
Tests 161 passed (161)
Start at 20:15:21
Duration 19.20s (tests 51%, import 24%, transform 14%, setup 11%)
Isolate 21 workers spawned ยท ~542ms startup each (spawn + environment, per file)
at least ~1.08s faster with isolate: false โ reuses workers across files instead of one per file
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
โ unit src/lib/composerFiles.test.ts (36 tests) 94ms
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
โ rules/no-polling-loop-in-tests.test.ts (16 tests) 21172ms
โ t3code/no-polling-loop-in-tests (15)
โ allows a fixed-count flush followed by unrelated error handling (1)
โ passes 1299ms
โ allows a fixed-N flush with a literal bound (1)
โ passes 1067ms
โ allows a fixed-N while flush with a counter bound (1)
โ passes 1413ms
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
โ allows a fixed-N do-while flush against a named bound (1)
โ passes 2875ms
โ allows a loop that takes from a queue (1)
โ passes 2241ms
โ ignores waits inside nested callbacks (1)
โ passes 1580ms
โ reports a budgeted yieldNow poll that dies after the loop (1)
โ reports the rule diagnostic 2004ms
โ reports a while loop spinning on a predicate (1)
โ reports the rule diagnostic 1191ms
โ reports a while loop bounded by a length predicate (1)
โ reports the rule diagnostic 1122ms
โ reports a comparison against an identifier the loop never advances (1)
โ reports the rule diagnostic 1000ms
โ reports a for loop bounded by a length predicate (1)
โ reports the rule diagnostic 871ms
โ reports a sleep poll with a counter bound and an early return (1)
โ reports the rule diagnostic 751ms
โ reports a microtask poll keyed on the loop condition (1)
โ reports the rule diagnostic 928ms
โ reports an awaited setTimeout poll (1)
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
โ reports the rule diagnostic 934ms
โ reports an awaited Promise.resolve poll that breaks (1)
โ reports the rule diagnostic 925ms
โ ignores non-test files (1)
โ passes 873ms
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: false)
[composer-attachments] could not remove local file Error [RolldownError]: Parse failure: Parse failed with 1 error:
Flow is not supported
โ unit src/features/sharing/incoming-share-model.test.ts (19 tests) 22ms
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
}
[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) 102ms
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:1977: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:1977: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
}
}
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/state/use-thread-outbox-drain.test.ts (23 tests) 143ms
_tag: 'ThreadOutboxManagerError',
operation: 'remove',
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>)
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
โ rules/no-test-timeout-or-unreasoned-skip.test.ts (16 tests) 22376ms
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
}
โ t3code/no-test-timeout-or-unreasoned-skip (13)
โ allows tests without overrides, conditional skips, and waitFor timeouts (1)
โ passes 1547ms
โ allows a skip with a quarantine issue or a GitHub issue URL (1)
โ passes 1510ms
โ reports a numeric timeout on it.effect (1)
โ reports the rule diagnostic 1957ms
โ reports a timeout through .each and .skipIf chains (1)
โ reports the rule diagnostic 2438ms
โ reports retry options, options-first timeouts, and hook timeouts (1)
โ reports the rule diagnostic 2107ms
โ reports vi.setConfig timeouts (1)
โ reports the rule diagnostic 2539ms
โ reports a skip whose comment has no issue (1)
โ reports the rule diagnostic 1508ms
โ reports todo, only, and the x/f aliases (1)
โ reports the rule diagnostic 1162ms
โ flags an options-object timeout when the callback is a reference (1)
โ reports the rule diagnostic 898ms
โ allows a computed skip option, which is a platform gate like skipIf (1)
โ passes 839ms
โ flags the suite alias and option-object skips (1)
โ reports the rule diagnostic 841ms
โ flags a skip option without a quarantine issue (1)
โ reports the rule diagnostic 976ms
โ flags a bracket-access skip without a quarantine issue (1)
โ reports the rule diagnostic 1248ms
โ still flags an option-object skip in a live file (1)
โ reports the rule diagnostic 1078ms
โ allows timeouts in opt-in live provider suites (1)
โ passes 814ms
โ ignores non-test files (1)
โ passes 810ms
โ unit src/state/use-composer-drafts.test.ts (74 tests) 1816ms
โ mobile composer drafts (74)
โ restores deleted file chips and releases undo history (uploaded: false) 825ms
โ unit src/features/home/useThreadListActions.test.ts (37 tests) 153ms
โ rules/no-real-time-wait-in-tests.test.ts (16 tests) 22779ms
โ t3code/no-real-time-wait-in-tests (15)
โ allows TestClock-driven sleeps and timeout safety nets (1)
โ passes 1339ms
โ ignores sleeps inside strings and child-process script templates (1)
โ passes 1448ms
โ ignores shared helpers in files that drive the TestClock (1)
โ passes 2641ms
โ ignores bare setTimeout callbacks outside promise executors (1)
โ passes 2872ms
โ reports Effect.sleep under it.live (1)
โ reports the rule diagnostic 1878ms
โ reports retry schedules under curried testers (1)
โ reports the rule diagnostic 1387ms
โ reports Effect.delay under plain it (1)
โ reports the rule diagnostic 1539ms
โ reports it.effect inside an excludeTestServices layer as a real-clock wait (1)
โ reports the rule diagnostic 1349ms
โ reports it.effect sleeps in files that never adjust the TestClock (1)
โ reports the rule diagnostic 750ms
โ reports polling helpers even when the file drives the TestClock (1)
โ reports the rule diagnostic 838ms
โ reports promise-wrapped setTimeout in vitest tests (1)
โ reports the rule diagnostic 1140ms
โ reports promise-wrapped setTimeout under it.effect as a mixed clock (1)
โ reports the rule diagnostic 1018ms
โ reports TestClock sleeps when TestClock.adjust appears only in a comment (1)
โ reports the rule diagnostic 1222ms
โ reports timers hidden in module-level helpers (1)
โ reports the rule diagnostic 1110ms
โ reports awaited timers/promises sleeps (1)
โ reports the rule diagnostic 874ms
โ ignores non-test files (1)
โ passes 1254ms
โ unit src/native/workspace-stack-projection.test.ts (22 tests) 38ms
โ unit src/lib/mobileTheme.test.ts (24 tests) 243ms
โ unit src/lib/attachmentDownload.test.ts (19 tests) 56ms
โ unit src/state/use-thread-outbox-drain.permissions.test.ts (12 tests) 117ms
โ unit src/lib/composerAttachmentUploadQueue.test.ts (11 tests) 28ms
โ unit src/lib/composerContext.test.ts (15 tests) 433ms
โ unit src/lib/android-workspace-navigation.test.ts (15 tests) 44ms
โ unit src/state/thread-task-permissions.test.ts (5 tests) 69ms
โ unit src/state/composer-attachment-uploads.test.ts (5 tests) 54ms
โ unit src/features/threads/thread-feed-live-follow.test.ts (28 tests) 22ms
โ unit src/features/pull-requests/pullRequestList.test.ts (15 tests) 83ms
โ unit src/features/voice-input/voiceInputSession.test.ts (13 tests) 58ms
โ unit src/features/updates/app-updates.test.ts (11 tests) 94ms
โ unit src/lib/composerContextClipboard.test.ts (7 tests) 118ms
โ unit src/features/threads/checkout-new-task-branch.test.ts (11 tests) 5495ms
โ new-task branch checkout (11)
โ switches to a free branch and clears its historical worktree path 394ms
โ does not release the selection while checkout is still pending 422ms
โ returns checkout failure without selecting the branch or losing dirty files 392ms
โ reuses an existing worktree without switching the project checkout 343ms
โ reuses an occupied picker worktree when the project root is a symlink 433ms
โ resolves historical branch metadata to its worktree beyond a long query's first page 605ms
โ resolves a non-origin remote to the right worktree when the remote name contains slashes 670ms
โ switches to the selected remote instead of reusing a worktree tracking another remote 974ms
โ rejects historical worktree reuse when project root is unsafe (nested: true) 399ms
โ rejects picker worktree reuse when project root is unsafe (nested: false) 455ms
โ keeps a nested project's cwd when historical metadata names the already-current branch 406ms
โ rules/prefer-effect-fn.test.ts (23 tests) 28406ms
โ t3code/prefer-effect-fn (23)
โ allows inline programs and layer construction (1)
โ passes 1259ms
โ allows named functions and deliberate untraced functions (1)
โ passes 1315ms
โ allows inline combinator callbacks (1)
โ passes 1813ms
โ allows inline option and error callbacks (1)
โ passes 2430ms
โ allows reference default-value callbacks (1)
โ passes 2381ms
โ reports service members named onSome (1)
โ reports the rule diagnostic 1566ms
โ reports service members named onNone (1)
โ reports the rule diagnostic 1334ms
โ reports service members named onSuccess (1)
โ reports the rule diagnostic 1430ms
โ reports service members named onFailure (1)
โ reports the rule diagnostic 1070ms
โ reports service members named defaultValue (1)
โ reports the rule diagnostic 755ms
โ does not mistake other namespaces or shadowed locals for Effect (1)
โ passes 847ms
โ leaves functions with synchronous setup for manual review (1)
โ passes 934ms
โ reports a named arrow wrapper (1)
โ reports the rule diagnostic 990ms
โ reports a block-bodied wrapper (1)
โ reports the rule diagnostic 1142ms
โ reports a declaration with pipe transforms (1)
โ reports the rule diagnostic 896ms
โ reports a function expression (1)
โ reports the rule diagnostic 790ms
โ reports service members (1)
โ reports the rule diagnostic 1011ms
โ reports class fields (1)
โ reports the rule diagnostic 1163ms
โ recognizes namespace aliases (1)
โ reports the rule diagnostic 1057ms
โ recognizes bare-package Effect imports (1)
โ reports the rule diagnostic 888ms
โ recognizes a direct gen import (1)
โ reports the rule diagnostic 923ms
โ reports class methods (1)
โ reports the rule diagnostic 1078ms
โ allows getters that expose an effect value (1)
โ passes 1103ms
โ unit src/connection/environment-cache-store.test.ts (4 tests) 80ms
โ rules/require-disposable-render.test.ts (22 tests) 28725ms
โ t3code/require-disposable-render (22)
โ allows the disposable helper (1)
โ passes 1403ms
โ rejects react-dom/client (1)
โ reports the rule diagnostic 1736ms
โ rejects act from react (1)
โ reports the rule diagnostic 2137ms
โ rejects a renamed act from react (1)
โ reports the rule diagnostic 2696ms
โ rejects setting the act environment (1)
โ reports the rule diagnostic 2232ms
โ rejects setting the act environment by computed key (1)
โ reports the rule diagnostic 1908ms
โ rejects stubbing the act environment (1)
โ reports the rule diagnostic 1277ms
โ rejects userEvent wrapped in act from react (1)
โ reports the rule diagnostic 1275ms
โ rejects userEvent wrapped in the render helper's act (1)
โ reports the rule diagnostic 789ms
โ rejects userEvent wrapped in a renamed render helper act (1)
โ reports the rule diagnostic 807ms
โ rejects a renamed userEvent wrapped in act (1)
โ reports the rule diagnostic 989ms
โ rejects a locator click wrapped in act (1)
โ reports the rule diagnostic 914ms
โ rejects React.act from a namespace import (1)
โ reports the rule diagnostic 995ms
โ rejects userEvent wrapped in React.act (1)
โ reports the rule diagnostic 1224ms
โ allows act around a DOM click and userEvent in a function act only defines (1)
โ passes 1067ms
โ rejects lifecycle hooks through a test runner namespace (1)
โ reports the rule diagnostic 998ms
โ rejects importing lifecycle hooks from the test runner (1)
โ reports the rule diagnostic 1046ms
โ rejects afterEach (1)
โ reports the rule diagnostic 896ms
โ rejects beforeAll (1)
โ reports the rule diagnostic 1112ms
โ allows lifecycle hooks outside browser tests (1)
โ passes 938ms
โ allows importing lifecycle hooks outside browser tests (1)
โ passes 1029ms
โ still rejects react-dom/client in unit tests (1)
โ reports the rule diagnostic 1126ms
โ unit src/features/home/home-thread-navigation.test.ts (6 tests) 38ms
โ unit src/state/pending-task-editor-writes.test.ts (5 tests) 44ms
โ unit src/state/use-selected-thread-git-actions.test.ts (11 tests) 63ms
โ unit src/features/diffs/nativeReviewDiffHighlighter.test.ts (11 tests) 1169ms
โ highlightNativeReviewDiffVisibleRows (3)
โ does not carry grammar state across hunk boundaries 457ms
โ unit src/features/threads/threadOrderAvailability.test.ts (7 tests) 771ms
โ computeThreadMoveAvailability matches the reference planner (7)
โ agrees across randomized sections (keys, holes, non-writable rows, hidden keys) 754ms
โ unit src/state/thread-outbox-removal.test.ts (5 tests) 41ms
โ rules/no-mobile-uniwind-theme-escape-hatches.test.ts (24 tests) 30681ms
โ t3code/no-mobile-uniwind-theme-escape-hatches (24)
โ allows semantic mobile theme classes (1)
โ passes 1705ms
โ allows unrelated functions with legacy hook names (1)
โ passes 1743ms
โ allows unrelated imports with legacy hook names (1)
โ passes 2204ms
โ allows erased type-only theme imports (1)
โ passes 2279ms
โ allows appearance words in ordinary copy (1)
โ passes 2077ms
โ does not conflate shadowed Uniwind namespaces (1)
โ passes 1974ms
โ allows reviewed native interop boundaries (1)
โ passes 1796ms
โ still reports appearance variants in reviewed interop boundaries (1)
โ reports the rule diagnostic 851ms
โ reports new React theme subscriptions (1)
โ reports the rule diagnostic 951ms
โ reports the retired theme color hook (1)
โ reports the rule diagnostic 927ms
โ reports guarded hooks imported with TypeScript extensions (1)
โ reports the rule diagnostic 987ms
โ reports unreviewed native interop subscriptions (1)
โ reports the rule diagnostic 1208ms
โ reports appearance variants in string literals (1)
โ reports the rule diagnostic 927ms
โ reports appearance variants in template literals (1)
โ reports the rule diagnostic 974ms
โ reports escaped appearance variants in template literals (1)
โ reports the rule diagnostic 972ms
โ reports appearance variants through nested class-map indirection (1)
โ reports the rule diagnostic 963ms
โ reports appearance variants passed to class builders (1)
โ reports the rule diagnostic 1006ms
โ reports negative and important appearance variants (1)
โ reports the rule diagnostic 889ms
โ reports namespace CSS variable subscriptions (1)
โ reports the rule diagnostic 1060ms
โ reports destructured namespace CSS variable subscriptions (1)
โ reports the rule diagnostic 945ms
โ reports aliased namespace CSS variable subscriptions (1)
โ reports the rule diagnostic 913ms
โ reports object-rest namespace CSS variable subscriptions (1)
โ reports the rule diagnostic 1078ms
โ reports namespace access to the retired theme hook (1)
โ reports the rule diagnostic 1216ms
โ reports destructured namespace access to the retired theme hook (1)
โ reports the rule diagnostic 889ms
โ unit src/features/cloud/linkEnvironment.test.ts (3 tests) 253ms
โ unit src/lib/composerImages.test.ts (6 tests) 50ms
โ unit src/native/composerEditorRevision.test.ts (17 tests) 23ms
โ unit src/features/settings/scheduledTaskDraft.test.ts (12 tests) 35ms
โ unit src/dependency-graph.test.ts (2 tests) 53ms
โ unit src/features/sharing/incoming-share-inbox.test.ts (10 tests) 73ms
โ unit src/features/home/homeThreadList.test.ts (4 tests) 76ms
stdout | src/state/preferences.test.ts > mobile preferences state > falls back to empty preferences when secure storage cannot be read
[20:15:55.301] 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)
}
โ unit src/state/preferences.test.ts (3 tests) 41ms
โ unit src/state/session.test.ts (4 tests) 12ms
โ unit src/lib/mediaActions.test.ts (10 tests) 48ms
โ unit src/state/use-thread-pr.test.ts (12 tests) 44ms
stdout | src/lib/storage.test.ts > mobile connection storage > loads legacy preferences when SQLite is unavailable
[20:15:57.321] WARN (#16): 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/lib/storage.test.ts > mobile connection storage > falls back to secure storage when SQLite cannot save preferences
[20:15:57.384] WARN (#17): 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/lib/storage.test.ts > mobile connection storage > falls back to secure storage when SQLite cannot save preferences
[20:15:57.393] WARN (#17): 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 (6 tests) 165ms
โ unit src/features/threads/thread-provider-instance.test.ts (3 tests) 47ms
โ unit src/features/projects/AddProjectScreen.test.ts (3 tests) 47ms
โ unit src/features/cloud/dpop.test.ts (5 tests) 182ms
โ unit src/features/settings/settings-scoped-server.test.ts (5 tests) 27ms
โ unit src/features/agent-awareness/liveActivityPreferences.test.ts (3 tests) 54ms
โ rules/require-suppression-reason.test.ts (13 tests) 15463ms
โ t3code/require-suppression-reason (13)
โ allows a directive with a -- reason (1)
โ passes 1065ms
โ allows a directive explained by the comment above (1)
โ passes 1064ms
โ allows stacked directives under one explanation (1)
โ passes 1030ms
โ allows a TypeScript directive followed by its reason (1)
โ passes 997ms
โ allows a directive in a JSX comment with a reason (1)
โ passes 1134ms
โ ignores enable directives (1)
โ passes 1423ms
โ reports a lint directive without a reason (1)
โ reports the rule diagnostic 1221ms
โ reports a file-level directive without a reason (1)
โ reports the rule diagnostic 1354ms
โ reports a TypeScript directive without a reason (1)
โ reports the rule diagnostic 1143ms
โ does not count a comment separated by a blank line (1)
โ reports the rule diagnostic 1416ms
โ allows an empty comment line between the reason and the directive (1)
โ passes 1438ms
โ does not count an empty comment above (1)
โ reports the rule diagnostic 1125ms
โ does not count a trailing comment on the code line above (1)
โ reports the rule diagnostic 878ms
โ unit src/features/pull-requests/pullRequestStack.test.ts (8 tests) 16ms
โ rules/no-test-in-loop.test.ts (8 tests) 9880ms
โ t3code/no-test-in-loop (7)
โ allows it.each and it.effect.each (1)
โ passes 1297ms
โ allows loops inside a test body (1)
โ passes 1154ms
โ ignores node:test files, which have no .each (1)
โ passes 1642ms
โ reports it inside a for...of loop (1)
โ reports the rule diagnostic 1044ms
โ reports it.effect inside a for loop nested in describe (1)
โ reports the rule diagnostic 1262ms
โ reports test inside a for...in loop (1)
โ reports the rule diagnostic 1052ms
โ reports a describe inside a loop once, not the tests inside it (1)
โ reports the rule diagnostic 932ms
โ ignores non-test files (1)
โ passes 1439ms
โ unit src/features/threads/new-task-project-selection.test.ts (9 tests) 25ms
โ unit src/features/settings/environment-maintenance.test.ts (7 tests) 100ms
โ unit src/features/threads/thread-route-state.test.ts (5 tests) 33ms
โ unit src/features/threads/thread-settings-sheet-state.test.ts (5 tests) 29ms
โ unit src/widgets/subscriptionUsageSnapshot.test.ts (5 tests) 112ms
โ unit src/features/review/reviewModel.test.ts (5 tests) 18ms
โ unit src/features/review/reviewCommentSelection.test.ts (6 tests) 21ms
โ unit src/lib/protectedData.test.ts (3 tests) 324ms
โ rules/no-frame-waits-in-browser-tests.test.ts (16 tests) 18362ms
โ t3code/no-frame-waits-in-browser-tests (16)
โ allows retrying assertions and the full fake timer set (1)
โ passes 887ms
โ allows requestAnimationFrame inside mocks (1)
โ passes 697ms
โ allows timers outside a promise executor and other listeners (1)
โ passes 1245ms
โ rejects a nextFrame helper (1)
โ reports the rule diagnostic 1108ms
โ rejects requestAnimationFrame as the executor (1)
โ reports the rule diagnostic 1007ms
โ rejects window.requestAnimationFrame (1)
โ reports the rule diagnostic 1156ms
โ allows a pass-through frame executor inside a mock implementation (1)
โ passes 1218ms
โ rejects setTimeout passed straight through as the promise executor (1)
โ reports the rule diagnostic 976ms
โ rejects setTimeout inside a promise executor (1)
โ reports the rule diagnostic 1180ms
โ rejects setInterval inside a promise executor (1)
โ reports the rule diagnostic 1490ms
โ rejects transitionend listeners (1)
โ reports the rule diagnostic 975ms
โ rejects animationend listeners (1)
โ reports the rule diagnostic 1163ms
โ rejects vi.useFakeTimers (1)
โ reports the rule diagnostic 1171ms
โ rejects a partial fakeTimers set (1)
โ reports the rule diagnostic 1257ms
โ rejects a partial vi.useFakeTimers set (1)
โ reports the rule diagnostic 1414ms
โ ignores files that are not browser tests (1)
โ passes 1258ms
โ unit src/features/voice-input/lazyVoiceRecorder.test.ts (3 tests) 22ms
โ unit src/state/remote-environment-projections.test.ts (1 test) 19ms
โ unit src/features/review/nativeReviewDiffAdapter.test.ts (2 tests) 1115ms
โ buildNativeReviewDiffData row bound (1)
โ caps each huge file excerpt while preserving full counts and ordinary files 1061ms
stdout | plugins/withAndroidFbjniVersion.test.mjs > withAndroidFbjniVersion > applies the force through the registered app config
[react-native-pdf-jsi] Remember to install peer dependencies:
- react-native-blob-util
- @react-native-async-storage/async-storage
- react-native-nitro-modules (required for the Nitro JSI path; the React Native bridge is used when it is not linked)
โ
Clerk iOS plugin loaded
โ
Clerk Android plugin loaded
โ unit plugins/withAndroidFbjniVersion.test.mjs (4 tests) 1295ms
โ withAndroidFbjniVersion (4)
โ applies the force through the registered app config 1232ms
โ unit src/state/edit-pending-thread-message.test.ts (4 tests) 18ms
โ unit src/features/usage/UsageLimitsSection.test.ts (2 tests) 21ms
โ unit src/lib/pdfPreview.test.ts (12 tests) 57ms
โ unit src/features/agent-awareness/notificationNavigation.test.ts (6 tests) 38ms
โ unit src/state/thread-order.test.ts (4 tests) 46ms
โ unit src/features/pull-requests/pullRequestDiffPages.test.ts (3 tests) 10ms
โ unit src/features/workspace/android-workspace-navigation-colors.test.ts (9 tests) 121ms
โ unit src/lib/adaptive-navigation.test.ts (8 tests) 10ms
โ rules/no-raw-mcp-registration.test.ts (20 tests) 23430ms
โ t3code/no-raw-mcp-registration (20)
โ allows the rest of effect/ai and type-only McpServer imports (1)
โ passes 1116ms
โ reports importing McpServer from effect/ai (1)
โ reports the rule diagnostic 1005ms
โ reports importing McpServer under another name (1)
โ reports the rule diagnostic 985ms
โ reports a namespace import of effect/ai (1)
โ reports the rule diagnostic 1153ms
โ reports importing the McpServer module directly (1)
โ reports the rule diagnostic 882ms
โ reports re-exporting McpServer (1)
โ reports the rule diagnostic 1124ms
โ reports re-exporting all of effect/ai (1)
โ reports the rule diagnostic 1075ms
โ reports a dynamic import of the McpServer module (1)
โ reports the rule diagnostic 1391ms
โ reports a dynamic import written as a template (1)
โ reports the rule diagnostic 1314ms
โ reports McpServer.toolkit (1)
โ reports the rule diagnostic 1082ms
โ reports McpServer.resource and McpServer.prompt (1)
โ reports the rule diagnostic 1209ms
โ reports addTool on the McpServer service (1)
โ reports the rule diagnostic 994ms
โ reports a registration method read without calling it (1)
โ reports the rule diagnostic 1079ms
โ reports a registration function taken by destructuring (1)
โ reports the rule diagnostic 1111ms
โ reports a registration method taken by destructuring (1)
โ reports the rule diagnostic 1390ms
โ lets tests import McpServer to build a server (1)
โ passes 1198ms
โ reports a registration in a test (1)
โ reports the rule diagnostic 1062ms
โ reports a test importing McpServer under another name (1)
โ reports the rule diagnostic 1428ms
โ reports a test importing effect/ai as a namespace (1)
โ reports the rule diagnostic 1212ms
โ reports a test importing the McpServer module directly (1)
โ reports the rule diagnostic 1519ms
โ unit src/state/assets.test.ts (4 tests) 45ms
โ unit src/lib/projectFaviconRequests.test.ts (4 tests) 9ms
โ unit src/state/attachments.test.ts (2 tests) 22ms
โ unit src/features/connection/environmentSections.test.ts (3 tests) 6ms
โ unit src/state/pending-thread-creation.test.ts (4 tests) 13ms
โ unit src/features/shortcuts/appShortcuts.test.ts (7 tests) 10ms
โ unit src/state/workspace-connection-atoms.test.ts (1 test) 23ms
โ unit src/lib/atomic-file.test.ts (4 tests) 25ms
โ unit src/features/workspace/workspace-tabs-state.test.ts (4 tests) 18ms
โ unit src/features/pull-requests/pullRequestFileFilters.test.ts (4 tests) 71ms
โ unit src/lib/localAttachmentPreview.test.ts (4 tests) 26ms
โ unit src/lib/reserved-regions.test.ts (5 tests) 27ms
โ rules/no-inline-schema-compile.test.ts (6 tests) 6375ms
โ t3code/no-inline-schema-compile (6)
โ allows schema compilers hoisted to module scope (1)
โ passes 965ms
โ allows factory helpers that return a precompiled decoder (1)
โ passes 1118ms
โ allows schema construction helpers that use encode transformations (1)
โ passes 962ms
โ allows dynamic schema parameters that cannot be hoisted to module scope (1)
โ passes 1162ms
โ reports schema compilers inside function bodies (1)
โ reports the rule diagnostic 951ms
โ reports inline schema literals as high confidence findings (1)
โ reports the rule diagnostic 1152ms
โ unit src/features/terminal/useTerminalLifecycle.test.ts (3 tests) 34ms
โ unit src/lib/markdownMedia.test.ts (12 tests) 41ms
โ unit src/persistence/mobile-database.test.ts (3 tests) 34ms
โ rules/no-wall-clock-in-tests.test.ts (8 tests) 9508ms
โ t3code/no-wall-clock-in-tests (7)
โ ignores a computed member with a variable key (1)
โ passes 1389ms
โ allows fixed dates and readings that seed mocks (1)
โ passes 1425ms
โ reports elapsed-time measurement (1)
โ reports the rule diagnostic 970ms
โ reports Date.now fixtures (1)
โ reports the rule diagnostic 1268ms
โ reports new Date() with no arguments (1)
โ reports the rule diagnostic 1124ms
โ reports process.hrtime and process.hrtime.bigint (1)
โ reports the rule diagnostic 1086ms
โ reports a reading outside the mock's arguments (1)
โ reports the rule diagnostic 1147ms
โ ignores non-test files (1)
โ passes 987ms
โ unit src/features/review/incrementalSnippet.test.ts (3 tests) 644ms
โ incremental snippet highlighting (3)
โ matches full highlighting through partial lines, multiline syntax, edits and truncation 411ms
โ unit src/features/terminal/useTerminalGridSync.test.ts (1 test) 47ms
โ unit src/connection/storage.test.ts (3 tests) 24ms
โ unit src/features/pull-requests/pullRequestDiffComments.test.ts (4 tests) 18ms
โ unit src/lib/layout.test.ts (7 tests) 14ms
โ unit src/lib/markdownHtml.test.ts (5 tests) 88ms
โ rules/no-manual-effect-runtime-in-tests.test.ts (17 tests) 19054ms
โ t3code/no-manual-effect-runtime-in-tests (14)
โ allows @effect/vitest effect tests (1)
โ passes 1276ms
โ reports Effect.runCallback (1)
โ reports the rule diagnostic 1036ms
โ reports Effect.runCallbackWith (1)
โ reports the rule diagnostic 840ms
โ reports Effect.runFork (1)
โ reports the rule diagnostic 1227ms
โ reports Effect.runForkWith (1)
โ reports the rule diagnostic 1171ms
โ reports Effect.runPromise (1)
โ reports the rule diagnostic 1134ms
โ reports Effect.runPromiseExit (1)
โ reports the rule diagnostic 1169ms
โ reports Effect.runPromiseExitWith (1)
โ reports the rule diagnostic 1199ms
โ reports Effect.runPromiseWith (1)
โ reports the rule diagnostic 1212ms
โ reports Effect.runSync (1)
โ reports the rule diagnostic 1255ms
โ reports Effect.runSyncExit (1)
โ reports the rule diagnostic 1154ms
โ reports Effect.runSyncExitWith (1)
โ reports the rule diagnostic 915ms
โ reports Effect.runSyncWith (1)
โ reports the rule diagnostic 1172ms
โ reports ManagedRuntime.make (1)
โ reports the rule diagnostic 975ms
โ allows production runtime boundaries (1)
โ passes 1094ms
โ t3code/no-manual-effect-runtime-in-tests with maxOccurrences (2)
โ allows occurrences up to the ceiling (1)
โ passes 1077ms
โ reports occurrences beyond the ceiling (1)
โ reports the rule diagnostic 990ms
โ unit src/connection/background-activity.test.ts (3 tests) 11ms
โ unit src/persistence/mobile-storage.test.ts (3 tests) 23ms
โ unit src/lib/videoThumbnails.test.ts (2 tests) 78ms
โ rules/no-unscoped-has.test.ts (42 tests) 51401ms
โ t3code/no-unscoped-has (24)
โ allows :has() on the element itself (1)
โ passes 1576ms
โ allows :has() anchored to an attribute (1)
โ passes 1968ms
โ allows :has() inside :not() on the element itself (1)
โ passes 2034ms
โ allows built-in has-* variants (1)
โ passes 1752ms
โ allows a sibling selector without :has() (1)
โ passes 2446ms
โ ignores prose mentioning :has() (1)
โ passes 1556ms
โ ignores :has() inside an arbitrary value (1)
โ passes 1263ms
โ allows a negated :has() on the element itself (1)
โ passes 1276ms
โ allows :has() on a group or peer element (1)
โ passes 953ms
โ allows a selector list whose own branch is anchored (1)
โ passes 831ms
โ ignores :has() text in quoted attribute values (1)
โ passes 1003ms
โ allows a selector without & on the element itself (1)
โ passes 990ms
โ reports a sibling :has() with nothing anchoring it (1)
โ reports the rule diagnostic 1256ms
โ reports a descendant :has() with nothing anchoring it (1)
โ reports the rule diagnostic 1092ms
โ reports a universal :has() ancestor (1)
โ reports the rule diagnostic 888ms
โ reports :has() whose only anchor is negated (1)
โ reports the rule diagnostic 1046ms
โ reports uppercase :HAS() (1)
โ reports the rule diagnostic 997ms
โ reports a selector-list branch borrowing another branch's anchor (1)
โ reports the rule diagnostic 893ms
โ reports an unanchored branch inside :is() (1)
โ reports the rule diagnostic 1045ms
โ reports an unanchored :has() inside a named group variant (1)
โ reports the rule diagnostic 1007ms
โ reports a :has() on an ancestor of a selector without & (1)
โ reports the rule diagnostic 1017ms
โ reports a :has() on an ancestor of a group (1)
โ reports the rule diagnostic 977ms
โ reports an in-* ancestor :has() (1)
โ reports the rule diagnostic 1145ms
โ reports :has() anchored to the document root (1)
โ reports the rule diagnostic 1387ms
โ t3code/no-outset-state-indicators (18)
โ valid: inset state rings (1)
โ inset state rings (1)
โ passes 1448ms
โ valid: an unconditional inset (1)
โ an unconditional inset (1)
โ passes 1579ms
โ valid: an inset in a sibling composer argument (1)
โ an inset in a sibling composer argument (1)
โ passes 1196ms
โ valid: an inset in a nested conditional composer (1)
โ an inset in a nested conditional composer (1)
โ passes 896ms
โ valid: outlines covered by the inward default (1)
โ outlines covered by the inward default (1)
โ passes 1097ms
โ valid: wider outlines with a matching inward offset (1)
โ wider outlines with a matching inward offset (1)
โ passes 1199ms
โ valid: arbitrary pixel outlines with a matching inward offset (1)
โ arbitrary pixel outlines with a matching inward offset (1)
โ passes 973ms
โ valid: arbitrary outline colors (1)
โ arbitrary outline colors (1)
โ passes 948ms
โ valid: decorative rings without a state (1)
โ decorative rings without a state (1)
โ passes 1090ms
โ valid: prose (1)
โ prose (1)
โ passes 1455ms
โ invalid: state rings without an inset (1)
โ state rings without an inset (1)
โ reports the rule diagnostic 1142ms
โ invalid: an inset from another state (1)
โ an inset from another state (1)
โ reports the rule diagnostic 1138ms
โ invalid: an inset from another conditional branch (1)
โ an inset from another conditional branch (1)
โ reports the rule diagnostic 1213ms
โ invalid: an inset passed to another function (1)
โ an inset passed to another function (1)
โ reports the rule diagnostic 858ms
โ invalid: arbitrary state ring widths (1)
โ arbitrary state ring widths (1)
โ reports the rule diagnostic 1304ms
โ invalid: positive outline offsets (1)
โ positive outline offsets (1)
โ reports the rule diagnostic 948ms
โ invalid: arbitrary outline offsets (1)
โ arbitrary outline offsets (1)
โ reports the rule diagnostic 1016ms
โ invalid: wide outlines without an inward offset (1)
โ wide outlines without an inward offset (1)
โ reports the rule diagnostic 1253ms
โ unit src/features/threads/threadQueueControlPresentation.test.ts (7 tests) 18ms
โ unit src/state/workspaceModel.test.ts (2 tests) 11ms
โ unit src/features/threads/fileChipMenu.test.ts (9 tests) 47ms
โ unit src/features/threads/pending-thread-feed.test.ts (4 tests) 6ms
โ unit src/features/threads/thread-settings-options.test.ts (4 tests) 22ms
โ unit src/lib/composerAttachmentFiles.test.ts (12 tests) 10ms
โ unit src/features/threads/use-composer-command-menu.test.ts (3 tests) 18ms
โ unit src/connection/migration.test.ts (2 tests) 62ms
โ unit src/lib/microphonePriority.test.ts (4 tests) 13ms
โ unit src/features/pull-requests/pullRequestStatus.test.ts (4 tests) 13ms
โ unit src/features/threads/new-task-context-presentation.test.ts (7 tests) 14ms
โ unit src/features/settings/autoSettleSettingsSync.test.ts (3 tests) 15ms
โ unit src/features/home/workspace-connection-status.test.ts (3 tests) 13ms
โ unit src/features/terminal/terminalMenu.test.ts (5 tests) 62ms
โ rules/no-hermes-unsupported-apis.test.ts (22 tests) 26031ms
โ t3code/no-hermes-unsupported-apis (22)
โ allows in-place sort on a copy (1)
โ passes 1216ms
โ allows in-place reverse on a copy (1)
โ passes 1344ms
โ allows other ES2023 methods Hermes ships (1)
โ passes 1418ms
โ ignores property reads that are not calls (1)
โ passes 1331ms
โ reports toSorted (1)
โ reports the rule diagnostic 991ms
โ reports toReversed in a chain (1)
โ reports the rule diagnostic 1462ms
โ reports toSpliced via computed access with a copy-then-splice remediation (1)
โ reports the rule diagnostic 1330ms
โ reports a static template-literal property name (1)
โ reports the rule diagnostic 907ms
โ ignores a template-literal property with substitutions (1)
โ passes 1150ms
โ allows supported Intl constructors (1)
โ passes 1020ms
โ allows feature detection (1)
โ passes 1248ms
โ allows unrelated Segmenter constructors (1)
โ passes 1074ms
โ ignores dynamic computed names (1)
โ passes 1484ms
โ reports new Intl.Segmenter(undefined, { granularity: 'grapheme' }) (1)
โ reports the rule diagnostic 1162ms
โ reports new Intl['Segmenter']() (1)
โ reports the rule diagnostic 1003ms
โ reports new Intl[`Segmenter`]() (1)
โ reports the rule diagnostic 1141ms
โ reports new globalThis.Intl.Segmenter() (1)
โ reports the rule diagnostic 1093ms
โ reports new globalThis['Intl']['Segmenter']() (1)
โ reports the rule diagnostic 1212ms
โ reports new global.Intl.Segmenter() (1)
โ reports the rule diagnostic 1015ms
โ reports new window.Intl.Segmenter() (1)
โ reports the rule diagnostic 981ms
โ reports Intl.Segmenter() (1)
โ reports the rule diagnostic 1142ms
โ reports Intl.Segmenter?.() (1)
โ reports the rule diagnostic 1168ms
โ unit src/lib/markdownLinks.test.ts (8 tests) 13ms
โ unit src/native/voiceTranscription.ios.test.ts (1 test) 38ms
โ rules/no-global-process-runtime.test.ts (9 tests) 10131ms
โ t3code/no-global-process-runtime (9)
โ allows injected host process references (1)
โ passes 1379ms
โ allows unrelated process members (1)
โ passes 1216ms
โ allows unrelated node os imports (1)
โ passes 1042ms
โ reports direct platform reads (1)
โ reports the rule diagnostic 1211ms
โ reports direct architecture reads (1)
โ reports the rule diagnostic 1138ms
โ reports globalThis process platform reads (1)
โ reports the rule diagnostic 1079ms
โ reports node os namespace platform reads (1)
โ reports the rule diagnostic 1138ms
โ reports renamed node os architecture imports (1)
โ reports the rule diagnostic 970ms
โ reports default node os platform reads (1)
โ reports the rule diagnostic 882ms
โ unit src/lib/projectFaviconDatabaseCache.test.ts (3 tests) 29ms
โ unit src/lib/threadActivityInspector.test.ts (1 test) 20ms
โ unit src/features/devices/threadDevicePreviews.test.ts (2 tests) 8ms
โ unit src/features/terminal/terminalInput.test.ts (7 tests) 16ms
โ rules/namespace-node-imports.test.ts (5 tests) 5254ms
โ t3code/namespace-node-imports (5)
โ allows canonical Node namespaces (1)
โ passes 1125ms
โ does not apply to non-Node packages (1)
โ passes 1161ms
โ reports named imports (1)
โ reports the rule diagnostic 943ms
โ reports default imports (1)
โ reports the rule diagnostic 971ms
โ reports non-canonical namespace aliases (1)
โ reports the rule diagnostic 987ms
โ unit src/state/queries.filesystem.test.ts (1 test) 21ms
โ unit src/features/terminal/terminalPaste.test.ts (2 tests) 22ms
โ unit src/features/threads/worktree-setup-state.test.ts (4 tests) 9ms
โ unit src/features/terminal/terminalLaunchContext.test.ts (3 tests) 5ms
โ unit src/state/thread-provider-switching.test.ts (4 tests) 4ms
โ unit src/lib/appLinking.test.ts (17 tests) 35ms
โ unit src/lib/device-type.test.ts (3 tests) 14ms
โ unit src/features/terminal/useTerminalSurfaceBuffer.test.ts (2 tests) 77ms
โ unit src/features/threads/thread-route-hydration.test.ts (3 tests) 9ms
โ rules/no-rpc-permission-bypass.test.ts (16 tests) 19285ms
โ blocks direct session calls (1)
โ reports the rule diagnostic 1512ms
โ blocks extracting the raw client (1)
โ reports the rule diagnostic 1547ms
โ blocks replacing the permission guard (1)
โ reports the rule diagnostic 1212ms
โ blocks namespace guard access (1)
โ reports the rule diagnostic 1264ms
โ blocks raw protocol imports (1)
โ reports the rule diagnostic 1322ms
โ allows typed requests (1)
โ passes 1316ms
โ allows the transport boundary (1)
โ passes 1133ms
โ blocks guard imports through the barrel (1)
โ reports the rule diagnostic 1291ms
โ blocks explicit index imports (1)
โ reports the rule diagnostic 1288ms
โ blocks raw session access in subscription callbacks (1)
โ reports the rule diagnostic 984ms
โ blocks raw client destructuring (1)
โ reports the rule diagnostic 1044ms
โ allows public typed RPC helpers (1)
โ passes 991ms
โ raw client allowance does not permit installing the guard (1)
โ reports the rule diagnostic 942ms
โ permits guard installation when configured (1)
โ passes 1110ms
โ guard installation allowance does not permit raw clients (1)
โ reports the rule diagnostic 1046ms
โ guard installation allowance does not permit raw protocol imports (1)
โ reports the rule diagnostic 1185ms
โ unit src/lib/projectThreadStartTurn.test.ts (3 tests) 5ms
โ unit src/features/settings/scheduled-task-editor-state.test.ts (3 tests) 10ms
โ unit src/features/files/filePath.test.ts (7 tests) 12ms
โ unit src/state/queued-run-edit.test.ts (3 tests) 18ms
โ unit src/features/layout/deferred-navigation.test.ts (3 tests) 5ms
โ unit src/features/home/thread-dismissal.test.ts (3 tests) 6ms
โ rules/no-mobile-pull-request-glyph-literals.test.ts (10 tests) 11364ms
โ t3code/no-mobile-pull-request-glyph-literals (10)
โ allows glyphs picked from the module (1)
โ passes 1047ms
โ allows unrelated symbols and copy that mentions pull requests (1)
โ passes 1219ms
โ reports a pull request glyph in a JSX attribute (1)
โ reports the rule diagnostic 940ms
โ reports state glyphs chosen inline (1)
โ reports the rule diagnostic 1090ms
โ reports glyphs in platform symbol objects (1)
โ reports the rule diagnostic 1289ms
โ reports an Android-only pull request glyph (1)
โ reports the rule diagnostic 903ms
โ allows merge as an ordinary string outside an android symbol slot (1)
โ passes 1061ms
โ allows merge in an android key outside a platform symbol object (1)
โ passes 1328ms
โ reports an Android-only pull request glyph written as a template literal (1)
โ reports the rule diagnostic 1037ms
โ reports glyphs in template literals (1)
โ reports the rule diagnostic 1252ms
โ unit src/features/cloud/managedRelayLayer.test.ts (1 test) 228ms
โ unit src/features/cloud/CloudAuthProvider.test.ts (1 test) 14ms
โ unit src/features/sharing/incoming-share-presentation.test.ts (2 tests) 4ms
โ unit src/features/devices/device-stream-document.test.ts (11 tests) 26ms
โ unit src/features/diagnostics/crash-log-model.test.ts (2 tests) 9ms
โ unit src/features/threads/provider-catalog-refresh.test.ts (2 tests) 13ms
โ unit src/features/observability/tracing.test.ts (1 test) 31ms
โ unit src/features/pull-requests/pullRequestActivityFilter.test.ts (1 test) 6ms
โ unit src/lib/markdownTableBreaks.test.ts (5 tests) 82ms
โ unit src/features/pull-requests/pullRequestEnvironmentFallback.test.ts (3 tests) 17ms
โ rules/no-native-title-tooltip.test.ts (11 tests) 12321ms
โ t3code/no-native-title-tooltip (11)
โ allows intrinsic elements without a title attribute (1)
โ passes 1304ms
โ allows title props on custom components (1)
โ passes 1168ms
โ allows title on member expression components (1)
โ passes 1062ms
โ allows title as an accessible name on embedded content (1)
โ passes 1234ms
โ allows the svg title child element (1)
โ passes 986ms
โ allows document.title assignments (1)
โ passes 1360ms
โ reports title on a truncating span (1)
โ reports the rule diagnostic 1331ms
โ reports title on a button (1)
โ reports the rule diagnostic 802ms
โ reports title on a paragraph (1)
โ reports the rule diagnostic 972ms
โ reports title on a code element (1)
โ reports the rule diagnostic 820ms
โ reports title on an anchor (1)
โ reports the rule diagnostic 1183ms
โ unit scripts/generate-uniwind-themes.test.ts (1 test) 103ms
โ unit src/lib/nativeTheme.test.ts (12 tests) 47ms
โ rules/prefer-catch-tags.test.ts (6 tests) 6298ms
โ t3code/prefer-catch-tags (6)
โ allows Effect.catchTags (1)
โ passes 1274ms
โ ignores catchTag on other modules (1)
โ passes 1039ms
โ ignores a local that shadows the namespace (1)
โ passes 1120ms
โ reports Effect.catchTag (1)
โ reports the rule diagnostic 1044ms
โ reports catchTag through an aliased namespace (1)
โ reports the rule diagnostic 904ms
โ reports a named catchTag import (1)
โ reports the rule diagnostic 877ms
โ unit src/lib/assetImageSource.test.ts (3 tests) 5ms
โ unit src/features/keyboard/commandPaletteItems.test.ts (2 tests) 8ms
โ unit src/features/pull-requests/pullRequestAgentTasks.test.ts (2 tests) 12ms
โ unit src/lib/markdownMediaSource.test.ts (3 tests) 7ms
โ unit src/features/pull-requests/pullRequestActions.test.ts (2 tests) 4ms
โ unit src/lib/enrichedLinkPresentation.test.ts (3 tests) 5ms
โ unit src/lib/connection.test.ts (1 test) 4ms
โ unit src/features/connection/pairing.test.ts (5 tests) 5ms
โ unit src/features/sharing/incoming-share-storage.test.ts (1 test) 9ms
โ unit src/features/settings/SettingsRouteScreen.logic.test.ts (2 tests) 5ms
โ unit src/lib/markdownInlineFileLinks.test.ts (4 tests) 40ms
โ unit src/features/usage/usageEnvironmentSelection.test.ts (4 tests) 4ms
โ unit src/features/home/swipe-row-activation.test.ts (3 tests) 5ms
โ unit src/state/asset-url-state.test.ts (3 tests) 74ms
โ unit src/lib/wideMarkdownBlocks.test.ts (2 tests) 5ms
โ unit src/features/review/shikiReviewHighlighter.test.ts (2 tests) 329ms
โ highlightSourceFile (2)
โ preserves one highlighted token row per source line without trailing newlines 313ms
โ unit src/features/pull-requests/botBadgeImages.test.ts (1 test) 9ms
โ unit src/lib/serialized-async-queue.test.ts (2 tests) 18ms
โ rules/no-hookless-use-function.test.ts (9 tests) 8878ms
โ t3code/no-hookless-use-function (9)
โ allows a hook that calls useState (1)
โ passes 1089ms
โ allows a hook that only calls use() (1)
โ passes 1240ms
โ allows a hook that calls a member hook (1)
โ passes 1015ms
โ allows a plain function (1)
โ passes 1033ms
โ allows names that only start with use (1)
โ passes 1110ms
โ reports a hook-less function declaration (1)
โ reports the rule diagnostic 958ms
โ reports a hook-less arrow returning a closure (1)
โ reports the rule diagnostic 879ms
โ reports a hook-less function expression (1)
โ reports the rule diagnostic 763ms
โ reports a hook call that only happens inside a nested callback (1)
โ reports the rule diagnostic 737ms
โ unit src/features/pull-requests/pullRequestDescriptionContent.test.ts (1 test) 9ms
โ unit src/lib/openExternalUrl.test.ts (1 test) 12ms
โ unit src/features/threads/composerSendPresentation.test.ts (2 tests) 7ms
โ unit src/features/pull-requests/pullRequestDescription.test.ts (1 test) 20ms
โ rules/no-manual-memo.test.ts (14 tests) 14574ms
โ t3code/no-manual-memo (11)
โ allows plain derived values (1)
โ passes 1358ms
โ allows useStableCallback (1)
โ passes 1098ms
โ allows other React members (1)
โ passes 1271ms
โ allows other directives (1)
โ passes 1265ms
โ reports a "use memo" directive (1)
โ reports the rule diagnostic 1282ms
โ reports useMemo (1)
โ reports the rule diagnostic 1074ms
โ reports useCallback (1)
โ reports the rule diagnostic 851ms
โ reports React.useMemo (1)
โ reports the rule diagnostic 964ms
โ reports "use no memo" (1)
โ reports the rule diagnostic 995ms
โ reports a module-level "use no forget" (1)
โ reports the rule diagnostic 986ms
โ allows the same text as a string value (1)
โ passes 894ms
โ t3code/no-manual-memo with allowMemoHooks (3)
โ allows useMemo (1)
โ passes 926ms
โ allows useCallback (1)
โ passes 871ms
โ still reports "use no memo" (1)
โ reports the rule diagnostic 675ms
โ unit src/features/sharing/incoming-share-native.test.ts (2 tests) 7ms
โ unit src/features/pull-requests/pullRequestNavigation.test.ts (2 tests) 6ms
โ unit src/features/diffs/nativeReviewDiffSurface.test.ts (1 test) 189ms
โ unit src/features/threads/threadContentPresentation.test.ts (2 tests) 5ms
โ unit src/features/pull-requests/pullRequestReviewDrafts.test.ts (1 test) 4ms
โ unit src/features/cloud/managedRelayTokenStore.test.ts (1 test) 35ms
โ unit src/features/threads/subagent-card-presentation.test.ts (1 test) 4ms
โ unit src/lib/filePreviewGallery.test.ts (1 test) 15ms
โ unit src/features/threads/customSnoozeDate.test.ts (2 tests) 5ms
โ unit src/state/thread-composer-error.test.ts (1 test) 4ms
โ unit src/features/pull-requests/pullRequestMediaSource.test.ts (1 test) 12ms
โ unit src/features/browser/previewPromptText.test.ts (3 tests) 5ms
โ unit src/features/threads/threadActivityFileNavigation.test.ts (1 test) 5ms
โ unit src/features/prompt-links/prompt-link-model.test.ts (1 test) 5ms
โ unit src/features/cloud/publicConfig.test.ts (1 test) 7ms
โ unit src/state/queries.test.ts (1 test) 12ms
โ unit src/lib/nativeComposerTheme.test.ts (1 test) 6ms
โ unit src/features/projects/AddProjectScreen.logic.test.ts (1 test) 3ms
โ unit src/lib/filePreview.test.ts (4 tests) 3ms
โ unit src/lib/http-response.test.ts (1 test) 8ms
โ unit src/lib/mobileThemeRuntime.test.ts (1 test) 5ms
โ unit src/lib/appearancePreferences.test.ts (1 test) 3ms
โ unit src/lib/foreground-handoff.test.ts (1 test) 4ms
โ unit src/features/settings/lib/legal-document-url.test.ts (2 tests) 4ms
โ unit src/features/threads/projectThreadCreationValidation.test.ts (2 tests) 4ms
โ unit src/features/keyboard/hardwareKeyboardCommands.test.ts (2 tests) 4ms
โ rules/no-dom-test-environment.test.ts (12 tests) 9447ms
โ t3code/no-dom-test-environment (12)
โ allows browser tests (1)
โ passes 986ms
โ allows similarly named packages (1)
โ passes 1155ms
โ rejects line pragmas (1)
โ reports the rule diagnostic 1013ms
โ rejects block pragmas for any environment (1)
โ reports the rule diagnostic 908ms
โ rejects jsdom imports (1)
โ reports the rule diagnostic 762ms
โ rejects happy-dom imports (1)
โ reports the rule diagnostic 869ms
โ rejects emulator subpaths (1)
โ reports the rule diagnostic 663ms
โ rejects dynamic imports (1)
โ reports the rule diagnostic 673ms
โ rejects template imports (1)
โ reports the rule diagnostic 682ms
โ rejects CommonJS imports (1)
โ reports the rule diagnostic 678ms
โ rejects TypeScript require imports (1)
โ reports the rule diagnostic 494ms
โ rejects re-exports (1)
โ reports the rule diagnostic 503ms
Test Files 24 passed (24)
Tests 361 passed (361)
Start at 20:15:19
Duration 70.98s (tests 96%, import 2%, setup 1%)
โ unit src/reactCompilerCoverage.test.ts (909 tests) 109471ms
โ React Compiler coverage (909)
โ Metro's transformer applies the compiler 4614ms
โ compiles src/App.tsx 465ms
โ compiles src/Stack.tsx 969ms
โ compiles src/components/ComposerAttachmentStrip.tsx 734ms
โ compiles src/components/ComposerContextAttachment.tsx 492ms
โ compiles src/components/ComposerContextSheet.tsx 1442ms
โ compiles src/components/ComposerEditor.tsx 594ms
โ compiles src/components/ComposerToolbar.tsx 728ms
โ compiles src/components/FilePreview.tsx 393ms
โ compiles src/components/FilePreviewModal.tsx 522ms
โ compiles src/components/MediaVideoPlayer.tsx 496ms
โ compiles src/components/ProviderIcon.tsx 314ms
โ compiles src/components/VideoAttachmentTile.tsx 404ms
โ compiles src/components/VideoPreviewModal.tsx 370ms
โ compiles src/components/ui/AndroidScreenHeader.tsx 315ms
โ compiles src/components/ui/AppBar.tsx 461ms
โ compiles src/components/ui/Dialog.android.tsx 584ms
โ compiles src/components/ui/MenuPopup.android.tsx 411ms
โ compiles src/features/archive/ArchivedThreadsScreen.tsx 621ms
โ compiles src/features/browser/BrowserPreviewRouteScreen.tsx 625ms
โ compiles src/features/browser/PreviewStreamWebView.tsx 800ms
โ compiles src/features/connection/CloudEnvironmentRows.tsx 527ms
โ compiles src/features/connection/ConnectionEnvironmentRow.tsx 477ms
โ compiles src/features/connection/ConnectionsNewRouteScreen.tsx 646ms
โ compiles src/features/development/ComponentCatalogScreen.tsx 388ms
โ compiles src/features/devices/DevicePreviewRouteScreen.tsx 796ms
โ compiles src/features/files/AttachmentFileScreen.tsx 445ms
โ compiles src/features/files/SourceFileSurface.tsx 373ms
โ compiles src/features/files/ThreadFilesRouteScreen.tsx 1025ms
โ compiles src/features/home/HomeScreen.tsx 1070ms
โ compiles src/features/home/thread-swipe-actions.tsx 711ms
โ compiles src/features/home/useThreadListActions.ts 604ms
โ compiles src/features/keyboard/CommandPalette.tsx 459ms
โ compiles src/features/layout/AdaptiveWorkspaceLayout.tsx 1321ms
โ compiles src/features/layout/createWorkspaceStackNavigator.ios.tsx 377ms
โ compiles src/features/projects/AddProjectScreen.tsx 848ms
โ compiles src/features/pull-requests/PullRequestRouteScreen.tsx 1443ms
โ compiles src/features/review/ReviewSheet.tsx 618ms
โ compiles src/features/settings/SettingsEnvironmentDetailRouteScreen.tsx 486ms
โ compiles src/features/settings/SettingsProviderAccountsRouteScreen.tsx 397ms
โ compiles src/features/settings/SettingsScheduledTasksRouteScreen.tsx 867ms
โ compiles src/features/terminal/ThreadTerminalRouteScreen.tsx 1232ms
โ compiles src/features/threads/McpAppWebView.tsx 794ms
โ compiles src/features/threads/NewTaskContextPickerScreens.tsx 495ms
โ compiles src/features/threads/NewTaskDraftScreen.tsx 2762ms
โ compiles src/features/threads/NewTaskRouteScreen.tsx 410ms
โ compiles src/features/threads/QuestionAttachments.tsx 321ms
โ compiles src/features/threads/ThreadArrangementSheet.tsx 654ms
โ compiles src/features/threads/ThreadComposer.tsx 2356ms
โ compiles src/features/threads/ThreadDetailScreen.tsx 3782ms
โ compiles src/features/threads/ThreadFeed.tsx 3269ms
โ compiles src/features/threads/ThreadNavigationSidebar.tsx 1199ms
โ compiles src/features/threads/ThreadQueueControl.tsx 936ms
โ compiles src/features/threads/ThreadRouteScreen.tsx 835ms
โ compiles src/features/threads/ThreadSettingsSheet.tsx 554ms
โ compiles src/features/threads/floating-working-control.tsx 318ms
โ compiles src/features/threads/new-task-flow-provider.tsx 996ms
โ compiles src/features/threads/thread-list-v2-items.tsx 1046ms
โ compiles src/features/threads/thread-work-log.tsx 1291ms
โ compiles src/features/threads/use-composer-command-menu.ts 473ms
โ compiles src/features/threads/worktree-setup-state.ts 305ms
โ compiles src/features/usage/UsageLimitsPooled.tsx 435ms
โ compiles src/features/usage/UsageLimitsSection.tsx 390ms
โ compiles src/features/usage/UsageRouteScreen.tsx 802ms
โ compiles src/features/voice-input/ComposerDictationControl.tsx 390ms
โ compiles src/native/createV5StackNavigator.ios.tsx 317ms
โ compiles src/state/queries.ts 764ms
โ compiles src/state/use-composer-drafts.ts 315ms
โ compiles src/state/use-selected-thread-git-actions.ts 316ms
โ compiles src/state/use-thread-composer-state.ts 958ms
โ compiles src/state/use-thread-outbox-drain.ts 661ms
โ caches the thread feed derivation 3350ms
Test Files 197 passed (197)
Tests 2169 passed (2169)
Start at 20:15:23
Duration 138.53s (import 34%, tests 28%, transform 25%, setup 8%, 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=__ffcd59c6-e25f-4d45-93b3-a9af502f1568.__actions_cache]
Post job cleanup.
Cache hit occurred on the primary key pnpm-full-v1-Linux-X64-26aca9b234a64276fce695cfd449de6b85aa0230cc5c8763604ee919eee10c91, not saving cache.
##[end-action id=__ffcd59c6-e25f-4d45-93b3-a9af502f1568.__actions_cache;outcome=success;conclusion=success;duration_ms=405]
##[start-action display=Cache Vite+;id=__ffcd59c6-e25f-4d45-93b3-a9af502f1568.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=__ffcd59c6-e25f-4d45-93b3-a9af502f1568.vp_cache;outcome=success;conclusion=success;duration_ms=225]
Post job cleanup.
[command]/usr/local/bin/git version
git version 2.55.0
Temporarily overriding HOME='/home/runner/_work/_temp/4cb8d461-dc82-4daf-91a2-aa1e14f234b5' 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: 193
BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 447
BLACKSMITH_CHECK_RUN_ID: 120062844428
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