GitHub check
256 KB of 395 KB loaded Download the full log (395 KB)
139 KB of earlier output not loaded
213Z
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/source-control-bitbucket
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/provider-grok
โ src/htmlRender.test.ts (11 tests) 13ms
โ src/snapShot/SnapShotAccessibilityProcess.test.ts (3 tests) 18ms
โ src/terminalOutput.test.ts (16 tests) 1073ms
โ appendTerminalOutput (8)
โ stays bounded across many appends of huge output, including one endless line 1005ms
โ src/electron/WindowsForegroundFocusThread.test.ts (2 tests) 3ms
โ src/preview/BrowserImport/LinuxBrowserSecret.test.ts (1 test) 78ms
โ src/composerContextLegacySend.test.ts (8 tests) 23ms
โ src/remote.test.ts (10 tests) 23ms
โ src/electron/WindowsForeground.test.ts (3 tests) 4ms
โ src/composerContextClipboard.test.ts (6 tests) 183ms
โ src/KeyedLock.test.ts (4 tests) 57ms
โ src/app/DesktopUserData.test.ts (2 tests) 55ms
โ src/logging.test.ts (3 tests) 142ms
โ src/promptLinks.test.ts (8 tests) 27ms
โ src/server/usage.test.ts (9 tests) 29ms
โ src/app/DesktopAppActivationBroker.test.ts (3 tests) 9ms
โ src/permissions/MacSettingsWindow.test.ts (2 tests) 31ms
โ src/app/DesktopEnvironment.test.ts (2 tests) 33ms
โ gnome-extension/feedbackGeometry.test.js (7 tests) 6ms
โ src/codexAuthHandoff.test.ts (6 tests) 22ms
โ src/schemaJson.test.ts (8 tests) 37ms
โ src/app/DesktopPreReadyFileSystem.test.ts (1 test) 26ms
โ src/ipc/methods/localEnvironment.test.ts (1 test) 21ms
โ ../../native/kde-snap-shot/src/feedbackGeometry.test.ts (2 tests) 24ms
โ src/snapShot/WindowsCaptureFeedback.test.ts (1 test) 2ms
โ src/preview/WebviewPreferences.test.ts (2 tests) 3ms
โ src/preview/RecordingInput.test.ts (2 tests) 6ms
โ src/devHome.test.ts (5 tests) 58ms
โ src/orchestrationV2BoundedSnapshot.test.ts (3 tests) 6ms
โ src/preview/AnnotationIds.test.ts (1 test) 15ms
โ src/threadFindText.test.ts (8 tests) 51ms
โ src/preview/AnnotationKeyboard.test.ts (1 test) 2ms
โ src/orchestrationTiming.test.ts (11 tests) 7ms
โ src/ipc/methods/sshEnvironment.test.ts (1 test) 11ms
Test Files 103 passed (103)
Tests 837 passed (837)
Start at 02:53:54
Duration 17.13s (import 48%, transform 26%, tests 13%, setup 12%, worker 1%)
Import 520 modules were evaluated 6428 times ยท 47.40s total, 48% of tracked time
~4.75s 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/Net.test.ts (4 tests) 21ms
~/packages/source-control-gitlab$ vp test run --config ../../vite.config.ts --dir . โ cache disabled
โ src/threadLinks.test.ts (8 tests) 3ms
โ src/gitPatchPath.test.ts (22 tests) 13ms
โ src/hostClassification.test.ts (10 tests) 8ms
โ src/composerTrigger.test.ts (25 tests) 9ms
โ src/fileLinks.test.ts (18 tests) 7ms
โ src/path.test.ts (11 tests) 6ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/source-control-gitlab
โ src/semver.test.ts (7 tests) 5ms
โ src/server/xaiAcpExtension.test.ts (52 tests) 30ms
โ src/markdownPipeline.test.ts (3 tests) 53ms
โ src/orchestrationV2Timeline.test.ts (12 tests) 11ms
โ src/server/bitbucketPullRequestJson.test.ts (22 tests) 39ms
โ src/relayTracing.test.ts (2 tests) 16ms
โ src/codexArtifactTemplates.test.ts (9 tests) 3ms
โ src/toolActivity.test.ts (4 tests) 3ms
โ src/server/BitbucketPullRequestApi.test.ts (23 tests) 48ms
โ src/server/BitbucketPullRequestProvider.test.ts (18 tests) 41ms
Test Files 3 passed (3)
Tests 63 passed (63)
Start at 02:54:10
Duration 2.10s (transform 54%, import 36%, setup 7%, tests 2%)
โ src/filePreview.test.ts (13 tests) 18ms
~/packages/provider-cursor$ vp test run --config ../../vite.config.ts --dir . โ cache disabled
โ src/cliArgs.test.ts (8 tests) 14ms
โ src/codexFileCitations.test.ts (5 tests) 3ms
โ src/threadReference.test.ts (5 tests) 3ms
โ src/server/skills.test.ts (6 tests) 33ms
โ src/relayAuth.test.ts (2 tests) 7ms
โ src/cliRelease.test.ts (3 tests) 2ms
โ src/connectAuth.test.ts (3 tests) 3ms
โ src/composerPullRequestMatches.test.ts (3 tests) 7ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/provider-cursor
โ src/server/acpSupport.test.ts (8 tests) 18ms
โ src/searchRanking.test.ts (3 tests) 4ms
โ src/cloneUrl.test.ts (3 tests) 12ms
โ src/desktopBootstrapToken.test.ts (3 tests) 13ms
โ src/favicon.test.ts (6 tests) 3ms
โ src/delimitedPreview.test.ts (8 tests) 1039ms
โ delimited file previews (8)
โ bounds rows, columns and cell length and reports partial content 1030ms
โ src/usageFormat.test.ts (4 tests) 10ms
โ src/githubMarkdownLinks.test.ts (3 tests) 24ms
โ src/schemaYaml.test.ts (2 tests) 13ms
โ src/desktopAppControl.test.ts (2 tests) 3ms
โ src/oauthScope.test.ts (3 tests) 6ms
โ src/thirdPartyLicenses.test.ts (2 tests) 7ms
โ src/t3McpToolPresentation.test.ts (2 tests) 28ms
โ src/AgentScope.test.ts (1 test) 10ms
โ src/server/skills.test.ts (5 tests) 99ms
โ src/relayUrl.test.ts (4 tests) 4ms
โ src/server/gitLabMergeRequestJson.test.ts (29 tests) 40ms
โ src/providerAuthReturnUrl.test.ts (5 tests) 3ms
โ src/server/driver.test.ts (4 tests) 109ms
Test Files 5 passed (5)
Tests 79 passed (79)
Start at 02:54:10
Duration 3.31s (transform 59%, import 32%, setup 7%, tests 2%)
โ src/video.test.ts (2 tests) 17ms
โ src/threadSearch.test.ts (2 tests) 7ms
~/packages/client-runtime$ vp test run โ cache disabled
โ src/server/GitLabCli.test.ts (5 tests) 36ms
โ src/server/GitLabPullRequestProvider.test.ts (7 tests) 23ms
โ src/server/GitLabPullRequestCli.legacy.test.ts (14 tests) 43ms
โ src/server/GitLabPullRequestCli.test.ts (42 tests) 115ms
โ src/server/GitLabSourceControlProvider.test.ts (12 tests) 27ms
Test Files 6 passed (6)
Tests 109 passed (109)
Start at 02:54:12
Duration 1.83s (transform 56%, import 35%, setup 6%, tests 3%)
~/packages/tailscale$ vp test run --config ../../vite.config.ts --dir . โ cache disabled
โ src/terminalLabels.test.ts (2 tests) 8ms
โ src/changedFileKind.test.ts (5 tests) 6ms
โ src/relayJwt.test.ts (1 test) 3ms
โ src/relaySigning.test.ts (1 test) 2ms
โ src/telemetryId.test.ts (1 test) 2ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/client-runtime
โ src/t3ProjectFile.test.ts (2 tests) 3ms
Test Files 90 passed (90)
Tests 1008 passed | 2 skipped (1010)
Start at 02:54:03
Duration 10.44s (import 42%, transform 27%, setup 17%, tests 14%, worker 1%)
Import 349 modules were evaluated 2809 times ยท 23.89s total, 42% of tracked time
~2.22s 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/accountUsage.test.ts (9 tests) 506ms
~/packages/effect-acp$ vp test run --config ../../vite.config.ts --dir . โ cache disabled
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/tailscale
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/effect-acp
โ src/tailscale.test.ts (7 tests) 15ms
Test Files 1 passed (1)
Tests 7 passed (7)
Start at 02:54:14
Duration 371ms (import 49%, transform 33%, setup 12%, tests 5%, worker 1%)
โ src/server/usageLimits.test.ts (9 tests) 67ms
~/packages/effect-codex-app-server$ vp test run --config ../../vite.config.ts --dir . โ cache disabled
โ src/server/auth.test.ts (10 tests) 41ms
โ src/server/textGeneration.test.ts (8 tests) 46ms
โ src/server/CursorAgentSdk.test.ts (1 test) 19ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/effect-codex-app-server
โ src/schema.test.ts (2 tests) 11ms
โ src/_internal/stdio.test.ts (1 test) 16ms
โ src/errors.test.ts (6 tests) 60ms
โ src/server/transportFailure.test.ts (10 tests) 6ms
โ src/server/status.test.ts (8 tests) 10ms
โ src/server/CursorSdk.test.ts (2 tests) 15ms
โ src/agent.test.ts (6 tests) 85ms
โ src/server/accountCache.test.ts (2 tests) 2ms
โ src/server/driver.test.ts (2 tests) 88ms
โ src/_internal/stdio.test.ts (1 test) 6ms
โ src/_internal/shared.test.ts (4 tests) 10ms
โ src/server/credentialStore.test.ts (5 tests) 22ms
โ src/server/adapter.test.ts (15 tests) 120ms
โ src/server/CursorSdkCatalog.test.ts (1 test) 6ms
Test Files 14 passed (14)
Tests 87 passed (87)
Start at 02:54:13
Duration 2.75s (transform 44%, import 40%, setup 9%, tests 7%)
~/packages/provider-acp-registry$ vp test run --config ../../vite.config.ts --dir . โ cache disabled
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/provider-acp-registry
โ src/authorization/layer.test.ts (23 tests) 153ms
โ src/protocol.test.ts (21 tests) 782ms
โ src/protocol.test.ts (15 tests) 52ms
โ src/schema.test.ts (4 tests) 9ms
โ src/state/runtime.test.ts (23 tests) 161ms
โ src/connection/supervisor.test.ts (30 tests) 255ms
โ src/client.test.ts (2 tests) 184ms
Test Files 5 passed (5)
Tests 26 passed (26)
Start at 02:54:15
Duration 1.39s (transform 50%, import 26%, setup 16%, tests 7%)
~/packages/provider-core$ vp test run --config ../../vite.config.ts --dir . โ cache disabled
โ src/rpc/session.test.ts (14 tests) 319ms
โ src/connection/registry.test.ts (41 tests) 246ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/provider-core
โ src/state/server.test.ts (19 tests) 40ms
โ src/state/threads-sync.test.ts (24 tests) 220ms
โ src/server/usageLimits.test.ts (7 tests) 13ms
โ src/operations/commands.test.ts (14 tests) 34ms
โ src/voice-input/controller.test.ts (22 tests) 36ms
โ src/server/AcpRegistryRuntimeCoordinator.test.ts (7 tests) 46ms
โ src/state/shell-sync.test.ts (6 tests) 43ms
โ src/server/ModelCatalog.test.ts (4 tests) 5ms
โ src/server/authenticationState.test.ts (3 tests) 110ms
โ src/state/environmentHttpAuth.test.ts (32 tests) 147ms
โ src/state/vcs.test.ts (9 tests) 86ms
โ src/state/pullRequests.test.ts (56 tests) 1394ms
โ returns a successful mutation when source invalidation stalls 1007ms
โ src/server/AcpRegistrySupport.test.ts (31 tests) 595ms
โ src/connection/onboarding.test.ts (13 tests) 127ms
โ src/server/auth.test.ts (5 tests) 123ms
โ src/state/orchestrationV2Projection.test.ts (13 tests) 13ms
โ src/state/entities.test.ts (16 tests) 16ms
โ src/state/vcsAction.test.ts (9 tests) 46ms
โ src/server/notification.test.ts (4 tests) 4ms
โ src/server/attachmentPrompt.test.ts (2 tests) 4ms
โ src/relay/managedRelay.test.ts (7 tests) 126ms
โ src/relay/discovery.test.ts (7 tests) 65ms
โ src/server/providerAuthFlow.test.ts (17 tests) 96ms
โ src/server/failure.test.ts (10 tests) 39ms
โ src/server/managedProvider.test.ts (9 tests) 39ms
โ src/state/threads-atoms.test.ts (4 tests) 139ms
โ src/server/snapshotProbe.test.ts (7 tests) 19ms
โ src/server/driver.test.ts (9 tests) 11ms
Test Files 5 passed (5)
Tests 55 passed (55)
Start at 02:54:16
Duration 2.81s (transform 58%, import 29%, tests 9%, setup 3%)
~/packages/provider-acp$ vp test run --config ../../vite.config.ts --dir . โ cache disabled
โ src/server/maintenanceResolver.test.ts (52 tests) 139ms
โ src/server/instanceEnvironment.test.ts (4 tests) 14ms
โ src/server/mcpSession.test.ts (2 tests) 2ms
โ src/state/threadCommands.test.ts (19 tests) 129ms
โ src/server/processGroup.test.ts (2 tests) 9ms
โ src/server/collectStreamText.test.ts (2 tests) 9ms
โ src/connection/routes.test.ts (19 tests) 24ms
โ src/server/threadTitleContext.test.ts (2 tests) 3ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/provider-acp
โ src/server/mcpToolPresentation.test.ts (4 tests) 3ms
โ src/rpc/client.test.ts (8 tests) 42ms
โ src/state/threadShell.test.ts (9 tests) 28ms
โ src/device/stream.test.ts (14 tests) 22ms
โ src/platform/storageDocument.test.ts (13 tests) 19ms
โ src/server/textGenerationPrompts.test.ts (1 test) 2ms
โ src/server/textGenerationUtils.test.ts (3 tests) 15ms
Test Files 17 passed (17)
Tests 132 passed (132)
Start at 02:54:17
Duration 2.75s (transform 45%, import 42%, setup 10%, tests 3%)
โ src/server/stderr.test.ts (2 tests) 8ms
โ src/server/sessionConfig.test.ts (6 tests) 3ms
~/packages/source-control-github$ vp test run --config ../../vite.config.ts --dir . โ cache disabled
โ src/server/mcpOverAcpBridge.test.ts (3 tests) 26ms
โ src/state/projectGrouping.test.ts (20 tests) 16ms
โ src/server/clientPolicy.test.ts (13 tests) 29ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/source-control-github
โ src/state/threadExecution.test.ts (11 tests) 9ms
โ src/state/fileMetadata.test.ts (11 tests) 216ms
โ src/state/threadRelationships.test.ts (11 tests) 14ms
โ src/state/threadHistoryMerge.test.ts (7 tests) 14ms
โ src/state/threadWorkflows.test.ts (21 tests) 10ms
โ src/server/runtimeModel.test.ts (47 tests) 399ms
โ src/connection/resolver.test.ts (6 tests) 79ms
โ src/state/commandPermissions.test.ts (14 tests) 43ms
โ src/mcpApps/host.test.ts (9 tests) 26ms
โ src/client.test.ts (26 tests) 5091ms
โ effect-acp client (19)
โ transforms fragmented stdout before parsing and preserves UTF-8 426ms
โ preserves stdout transform errors without logging rejected input 381ms
โ reports idle child termination and rejects later requests and notifications 339ms
โ initializes, prompts, receives updates, and handles permission requests 544ms
โ returns structured invalid params without exposing values from typed extension request payloads 459ms
โ preserves ACP v2 structured diff semantics 423ms
โ does not turn unsupported ACP v2 auth methods into agent login 410ms
โ preserves registry env-var authentication extensions 369ms
โ replays buffered notifications to handlers registered after they arrive 518ms
โ routes MCP-over-ACP connect, message, notification, and disconnect callbacks 448ms
โ preserves future content and session-update variants 582ms
Test Files 6 passed (6)
Tests 62 passed (62)
Start at 02:54:14
Duration 6.01s (tests 62%, transform 19%, import 15%, setup 4%)
~/packages/provider-muse$ vp test run --config ../../vite.config.ts --dir . โ cache disabled
โ src/connection/outdatedHostUpdate.test.ts (3 tests) 25ms
โ src/state/shellReducer.test.ts (14 tests) 10ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/provider-muse
โ src/server/gitHubPullRequestJson.test.ts (49 tests) 54ms
โ src/state/threadSnoozed.test.ts (20 tests) 33ms
โ src/server/nativeLogging.test.ts (3 tests) 10ms
โ src/operations/commands.performance.test.ts (1 test) 137ms
โ src/state/threadSort.test.ts (21 tests) 222ms
โ src/server/usageLimits.test.ts (4 tests) 9ms
โ src/state/projectCommands.test.ts (4 tests) 123ms
stdout | src/state/serverUsage.test.ts > keeps the cached usage summary when the awaited refresh fails
[02:54:21.644] 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) 100ms
โ src/server/itemPresentation.test.ts (6 tests) 14ms
โ src/state/terminalSession.test.ts (9 tests) 15ms
โ src/platform/shellCacheEncoding.test.ts (5 tests) 205ms
โ src/server/protocol.test.ts (1 test) 2ms
โ src/server/sdk.test.ts (12 tests) 182ms
โ src/state/subagentRuntime.test.ts (11 tests) 11ms
โ src/state/threadRequests.test.ts (10 tests) 7ms
โ src/server/gitHubGraphQlClient.test.ts (9 tests) 102ms
โ src/server/GitHubCredentials.test.ts (5 tests) 43ms
โ src/authorization/remote.test.ts (5 tests) 39ms
โ src/server/GitHubRest.test.ts (8 tests) 86ms
โ src/server/githubStackActions.test.ts (9 tests) 92ms
โ src/server/GitHubPullRequestProvider.test.ts (17 tests) 41ms
โ src/work-log/commandLabel.test.ts (61 tests) 118ms
โ src/state/usage.test.ts (8 tests) 14ms
โ src/state/boundedThreadSnapshotHttp.test.ts (5 tests) 79ms
โ src/device/duoControl.test.ts (12 tests) 17ms
โ src/projectFaviconCache.test.ts (8 tests) 125ms
โ src/relay/managedRelayState.test.ts (4 tests) 16ms
โ src/device/duoViewer.test.ts (2 tests) 15ms
โ src/server/gitHubRepositoryResolution.test.ts (3 tests) 4ms
โ src/state/threadDetail.test.ts (11 tests) 28ms
โ src/pullRequestQuery.test.ts (17 tests) 10ms
โ src/server/GitHubQuota.test.ts (4 tests) 10ms
โ src/state/threadSubagents.test.ts (7 tests) 9ms
โ src/server/modelCatalog.test.ts (1 test) 14ms
โ src/server/GitHubPullRequestApi.test.ts (105 tests) 763ms
โ GitHubPullRequestApi.layer (104)
โ keeps the pull request being ticked through, not the one looked up first 308ms
โ src/work-log/presentation.test.ts (16 tests) 10ms
โ src/server/maintenance.test.ts (3 tests) 35ms
โ src/server/textGeneration.test.ts (8 tests) 65ms
โ src/state/itemSupport.test.ts (2 tests) 4ms
โ src/server/status.test.ts (3 tests) 134ms
โ src/connection/presentation.test.ts (4 tests) 3ms
โ src/server/clientTerminals.test.ts (10 tests) 3306ms
โ AcpClientTerminals (9)
โ bounds unreleased terminal handles without invalidating existing ids 2739ms
โ src/connection/diagnosis.test.ts (7 tests) 6ms
โ src/preview/serverBrowserStream.test.ts (5 tests) 10ms
Test Files 7 passed (7)
Tests 84 passed (84)
Start at 02:54:19
Duration 4.12s (tests 49%, transform 26%, import 18%, setup 6%)
~/oxlint-plugin-t3code$ vp test run --config ../vite.config.ts --dir . โ cache disabled
โ src/state/presentation.test.ts (3 tests) 19ms
โ src/server/adapter.test.ts (39 tests) 169ms
Test Files 9 passed (9)
Tests 77 passed (77)
Start at 02:54:21
Duration 2.52s (transform 50%, import 35%, setup 9%, tests 5%)
~/packages/ssh$ vp test run --config ../../vite.config.ts --dir . โ cache disabled
โ src/device/phoneViewer.test.ts (1 test) 19ms
โ src/pullRequestMarkdown.test.ts (15 tests) 5ms
โ src/pullRequestLinkInput.test.ts (14 tests) 10ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/oxlint-plugin-t3code
RUN v5.0.5 /home/runner/_work/t3code/t3code/packages/ssh
โ src/device/avcConfig.test.ts (8 tests) 9ms
โ src/state/projectEntities.test.ts (2 tests) 27ms
โ src/handoff.test.ts (8 tests) 9ms
โ src/state/threadFeedback.test.ts (4 tests) 7ms
โ src/platform/orchestrationCache.test.ts (3 tests) 28ms
โ src/config.test.ts (4 tests) 71ms
stdout | src/command.test.ts > ssh command > preserves process output: default head
[02:54:24.435] 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/auth.test.ts (2 tests) 74ms
stdout | src/command.test.ts > ssh command > preserves process output: opt-in tail
[02:54:24.461] 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) 203ms
โ src/providerSkills.test.ts (6 tests) 6ms
โ src/server/GitHubSourceControlProvider.test.ts (29 tests) 2100ms
โ keeps Enterprise operations on the selected remote: git@code.example.test:team/project.git 642ms
โ keeps Enterprise operations on the selected remote: ssh://git@code.example.test/team/project.git 637ms
โ keeps Enterprise operations on the selected remote: https://code.example.test/team/project.git 632ms
Test Files 10 passed (10)
Tests 238 passed (238)
Start at 02:54:20
Duration 4.51s (transform 47%, import 29%, tests 18%, setup 5%)
โ src/tunnel.test.ts (7 tests) 166ms
Test Files 4 passed (4)
Tests 20 passed (20)
Start at 02:54:23
Duration 850ms (import 34%, transform 26%, tests 24%, setup 15%, worker 1%)
~/scripts$ vp test run --config ../vite.config.ts --dir . โ cache disabled
~/apps/mobile$ vp test run --project unit --project react โ cache disabled
โ src/device/phoneScene.test.ts (8 tests) 149ms
โ src/operations/projects.test.ts (6 tests) 12ms
โ src/threadPullRequestCompatibility.test.ts (10 tests) 6ms
โ src/state/usageProgress.test.ts (4 tests) 15ms
โ src/reviewGuideTour.test.ts (7 tests) 10ms
โ src/device/duoScene.test.ts (2 tests) 16ms
โ src/device/phoneInteraction.test.ts (4 tests) 25ms
RUN v5.0.5 /home/runner/_work/t3code/t3code/scripts
RUN v5.0.5 /home/runner/_work/t3code/t3code/apps/mobile
โ src/device/model.test.ts (4 tests) 21ms
โ src/state/attachments.test.ts (3 tests) 28ms
โ src/connection/errors.test.ts (5 tests) 5ms
โ src/t3ToolSummary.test.ts (3 tests) 6ms
โ lib/third-party-licenses.test.ts (19 tests) 213ms
โ src/state/filesystem.test.ts (8 tests) 13ms
โ src/mediaSource.test.ts (8 tests) 7ms
โ src/state/threadSearch.test.ts (4 tests) 36ms
โ src/state/sharedSettings.test.ts (9 tests) 15ms
โ src/state/turnItemPresentation.test.ts (2 tests) 8ms
โ react src/components/ui/Dialog.android.test.tsx (1 test) 62ms
โ src/work-log/toolPresentation.test.ts (4 tests) 3ms
โ notify-discord-release.test.ts (15 tests) 325ms
โ merge-update-manifests.test.ts (5 tests) 75ms
โ react src/native/NativeHeaderToolbar.test.tsx (4 tests) 31ms
โ src/connection/compatibility.test.ts (4 tests) 4ms
โ dev-runner.test.ts (31 tests) 137ms
โ src/device/modelScene.test.ts (2 tests) 26ms
โ legend-list-initial-reveal.test.ts (10 tests) 39ms
โ src/device/streamFrames.test.ts (1 test) 27ms
โ src/state/providerInstanceDisplay.test.ts (10 tests) 3ms
โ lib/dev-share.test.ts (5 tests) 29ms
โ build-npm-launcher.test.ts (1 test) 1036ms
โ build-npm-launcher (1)
โ publishes a launcher that downloads, verifies, caches, and runs the release executable 1025ms
โ src/state/serverConfigProjection.test.ts (2 tests) 11ms
โ src/promptLinks.test.ts (3 tests) 9ms
โ update-release-package-versions.test.ts (3 tests) 29ms
โ src/device/deviceMotion.test.ts (2 tests) 18ms
โ src/state/queryPersistence.test.ts (3 tests) 49ms
โ lib/public-config.test.ts (1 test) 13ms
โ lib/cli-external-packages.test.ts (10 tests) 1309ms
โ external package dependency closure (1)
โ keeps every runtime dependency of an external package external too 1255ms
โ sync-reference-repos.test.ts (2 tests) 60ms
โ lib/resolve-catalog.test.ts (2 tests) 2ms
โ mobile-native-client.test.ts (2 tests) 70ms
โ src/state/customSnooze.test.ts (11 tests) 8ms
โ mock-update-server.test.ts (2 tests) 155ms
โ src/state/threadInbox.test.ts (2 tests) 4ms
โ src/state/usageAccess.test.ts (8 tests) 27ms
โ src/errors/safeLog.test.ts (2 tests) 6ms
โ src/state/auth.test.ts (2 tests) 2ms
โ src/userMessage.test.ts (3 tests) 16ms
โ lib/icon-export.test.ts (1 test) 2ms
โ mobile-showcase.test.ts (3 tests) 9ms
โ src/filePreview.test.ts (3 tests) 72ms
โ src/work-log/itemDetail.test.ts (2 tests) 13ms
โ mobile-native-static-check.test.ts (2 tests) 13ms
โ resolve-previous-release-tag.test.ts (3 tests) 7ms
โ lib/build-target-arch.test.ts (1 test) 33ms
โ src/markdownImages.test.ts (12 tests) 3ms
โ src/mediaReference.test.ts (7 tests) 15ms
โ src/errors/transport.test.ts (3 tests) 3ms
โ src/state/assets.test.ts (1 test) 8ms
โ src/relay/errorPresentation.test.ts (3 tests) 3ms
โ src/state/threadHistoryController.test.ts (1 test) 12ms
โ src/device/duoSnap.test.ts (1 test) 4ms
โ src/device/androidFoldScene.test.ts (1 test) 70ms
โ react src/features/settings/components/BranchNamingSettings.test.tsx (4 tests) 96ms
โ react src/state/use-selected-thread-git-actions.test.tsx (1 test) 53ms
โ src/device/renderScheduler.test.ts (1 test) 10ms
โ src/state/commandOutput.test.ts (1 test) 2ms
โ src/errors/errorTrace.test.ts (2 tests) 2ms
โ src/work-log/scrollAnchor.test.ts (1 test) 2ms
โ src/environment/endpoint.test.ts (1 test) 2ms
โ src/secretRequest.test.ts (2 tests) 3ms
โ src/state/archivedThreads.test.ts (1 test) 4ms
Test Files 120 passed (120)
Tests 1101 passed (1101)
Start at 02:54:14
Duration 16.23s (import 51%, transform 29%, setup 12%, tests 7%, worker 1%)
Import 491 modules were evaluated 8705 times ยท 47.40s total, 51% of tracked time
~5.36s 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
โ build-desktop-artifact.test.ts (42 tests) 3501ms
โ build-desktop-artifact (40)
โ rejects overlapping builds from another process until restoration finishes 1351ms
โ builds web, server and desktop with the resolved version, restores changed manifests and preserves edits to matching ones 543ms
โ unit src/lib/threadActivity.test.ts (35 tests) 98ms
โ unit src/lib/modelOptions.test.ts (29 tests) 22ms
โ unit src/features/threads/threadListV2.test.ts (56 tests) 35ms
โ unit src/state/thread-outbox.test.ts (35 tests) 43ms
โ react src/features/settings/SettingsServerControlsRouteScreen.test.tsx (1 test) 41ms
โ unit src/features/agent-awareness/remoteRegistration.test.ts (15 tests) 276ms
โ unit src/lib/composerFiles.test.ts (36 tests) 49ms
stderr | src/state/use-composer-drafts.test.ts > mobile composer drafts > restores deleted file chips and releases undo history (uploaded: false)
[composer-attachments] could not remove local file TypeError: file.delete is not a function
at removePersistedComposerAttachmentFile (/home/runner/_work/t3code/t3code/apps/mobile/src/lib/composerImages.ts:223:12)
at process.processTicksAndRejections (node:internal/process/task_queues:104:5)
at releaseUnusedComposerAttachmentFiles (/home/runner/_work/t3code/t3code/apps/mobile/src/state/use-composer-drafts.ts:924:5)
Sourcemap for "/home/runner/_work/t3code/t3code/node_modules/.pnpm/expo-file-system@58.0.9_expo@58.0.14_react-native@0.88.0_@babel+core@7.29.7_supports-co_dba9ef97a37b898651a8aa6fe892beee/node_modules/expo-file-system/build/index.js" points to missing source files
Sourcemap for "/home/runner/_work/t3code/t3code/node_modules/.pnpm/expo-file-system@58.0.9_expo@58.0.14_react-native@0.88.0_@babel+core@7.29.7_supports-co_dba9ef97a37b898651a8aa6fe892beee/node_modules/expo-file-system/build/Paths.js" points to missing source files
Sourcemap for "/home/runner/_work/t3code/t3code/node_modules/.pnpm/expo-file-system@58.0.9_expo@58.0.14_react-native@0.88.0_@babel+core@7.29.7_supports-co_dba9ef97a37b898651a8aa6fe892beee/node_modules/expo-file-system/build/Directory.js" points to missing source files
Sourcemap for "/home/runner/_work/t3code/t3code/node_modules/.pnpm/expo-file-system@58.0.9_expo@58.0.14_react-native@0.88.0_@babel+core@7.29.7_supports-co_dba9ef97a37b898651a8aa6fe892beee/node_modules/expo-file-system/build/ExpoFileSystem.js" points to missing source files
Sourcemap for "/home/runner/_work/t3code/t3code/node_modules/.pnpm/expo-modules-core@58.0.22_patch_hash=f0b0fd100550ed76e5c25b4d13eb7c9ff62825f8f197c53edf_6a1c9e707e4caac0e11bcdf133fd5ef6/node_modules/expo-modules-core/build/index.js" points to missing source files
Sourcemap for "/home/runner/_work/t3code/t3code/node_modules/.pnpm/expo-modules-core@58.0.22_patch_hash=f0b0fd100550ed76e5c25b4d13eb7c9ff62825f8f197c53edf_6a1c9e707e4caac0e11bcdf133fd5ef6/node_modules/expo-modules-core/build/ts-declarations/global.js" points to missing source files
โ unit src/lib/attachmentUpload.test.ts (28 tests) 13ms
Sourcemap for "/home/runner/_work/t3code/t3code/node_modules/.pnpm/expo-modules-core@58.0.22_patch_hash=f0b0fd100550ed76e5c25b4d13eb7c9ff62825f8f197c53edf_6a1c9e707e4caac0e11bcdf133fd5ef6/node_modules/expo-modules-core/build/ts-declarations/EventEmitter.js" points to missing source files
Sourcemap for "/home/runner/_work/t3code/t3code/node_modules/.pnpm/expo-modules-core@58.0.22_patch_hash=f0b0fd100550ed76e5c25b4d13eb7c9ff62825f8f197c53edf_6a1c9e707e4caac0e11bcdf133fd5ef6/node_modules/expo-modules-core/build/ts-declarations/NativeModule.js" points to missing source files
Sourcemap for "/home/runner/_work/t3code/t3code/node_modules/.pnpm/expo-modules-core@58.0.22_patch_hash=f0b0fd100550ed76e5c25b4d13eb7c9ff62825f8f197c53edf_6a1c9e707e4caac0e11bcdf133fd5ef6/node_modules/expo-modules-core/build/ts-declarations/SharedObject.js" points to missing source files
Sourcemap for "/home/runner/_work/t3code/t3code/node_modules/.pnpm/expo-modules-core@58.0.22_patch_hash=f0b0fd100550ed76e5c25b4d13eb7c9ff62825f8f197c53edf_6a1c9e707e4caac0e11bcdf133fd5ef6/node_modules/expo-modules-core/build/ts-declarations/SharedRef.js" points to missing source files
โ unit src/features/sharing/incoming-share-model.test.ts (19 tests) 24ms
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
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
}
}
โ knip-schemas.test.ts (1 test) 6928ms
โ allows types and schemas through the real Knip CLI without hiding runtime or file findings 6926ms
Test Files 21 passed (21)
Tests 161 passed (161)
Start at 02:54:25
Duration 7.42s (tests 50%, import 23%, transform 15%, setup 12%)
Isolate 21 workers spawned ยท ~215ms startup each (spawn + environment, per file)
at least ~431ms faster with isolate: false โ reuses workers across files instead of one per file
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: {
_tag: 'ThreadOutboxManagerError',
operation: 'remove',
environmentId: 'environment-1',
โ unit src/state/use-thread-outbox-drain.test.ts (23 tests) 61ms
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
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
}
โ unit src/state/use-composer-drafts.test.ts (74 tests) 657ms
โ mobile composer drafts (74)
โ restores deleted file chips and releases undo history (uploaded: false) 301ms
โ unit src/native/workspace-stack-projection.test.ts (22 tests) 7ms
โ unit src/features/home/useThreadListActions.test.ts (37 tests) 17ms
โ unit src/state/thread-task-permissions.test.ts (7 tests) 22ms
โ unit src/lib/mobileTheme.test.ts (24 tests) 86ms
โ rules/no-polling-loop-in-tests.test.ts (16 tests) 9041ms
โ t3code/no-polling-loop-in-tests (15)
โ allows a fixed-count flush followed by unrelated error handling (1)
โ passes 378ms
โ allows a fixed-N flush with a literal bound (1)
โ passes 462ms
โ allows a fixed-N while flush with a counter bound (1)
โ passes 861ms
โ allows a fixed-N do-while flush against a named bound (1)
โ passes 661ms
โ allows a loop that takes from a queue (1)
โ passes 656ms
โ ignores waits inside nested callbacks (1)
โ passes 986ms
โ reports a budgeted yieldNow poll that dies after the loop (1)
โ reports the rule diagnostic 831ms
โ reports a while loop spinning on a predicate (1)
โ reports the rule diagnostic 589ms
โ reports a while loop bounded by a length predicate (1)
โ reports the rule diagnostic 559ms
โ reports a comparison against an identifier the loop never advances (1)
โ reports the rule diagnostic 427ms
โ reports a for loop bounded by a length predicate (1)
โ reports the rule diagnostic 466ms
โ reports a sleep poll with a counter bound and an early return (1)
โ reports the rule diagnostic 472ms
โ reports a microtask poll keyed on the loop condition (1)
โ reports the rule diagnostic 395ms
โ reports an awaited setTimeout poll (1)
โ reports the rule diagnostic 496ms
โ reports an awaited Promise.resolve poll that breaks (1)
โ reports the rule diagnostic 412ms
โ ignores non-test files (1)
โ passes 336ms
โ rules/no-real-time-wait-in-tests.test.ts (16 tests) 9108ms
โ t3code/no-real-time-wait-in-tests (15)
โ allows TestClock-driven sleeps and timeout safety nets (1)
โ passes 426ms
โ ignores sleeps inside strings and child-process script templates (1)
โ passes 490ms
โ ignores shared helpers in files that drive the TestClock (1)
โ passes 866ms
โ ignores bare setTimeout callbacks outside promise executors (1)
โ passes 657ms
โ reports Effect.sleep under it.live (1)
โ reports the rule diagnostic 706ms
โ reports retry schedules under curried testers (1)
โ reports the rule diagnostic 828ms
โ reports Effect.delay under plain it (1)
โ reports the rule diagnostic 715ms
โ reports it.effect inside an excludeTestServices layer as a real-clock wait (1)
โ reports the rule diagnostic 759ms
โ reports it.effect sleeps in files that never adjust the TestClock (1)
โ reports the rule diagnostic 457ms
โ reports polling helpers even when the file drives the TestClock (1)
โ reports the rule diagnostic 520ms
โ reports promise-wrapped setTimeout in vitest tests (1)
โ reports the rule diagnostic 402ms
โ reports promise-wrapped setTimeout under it.effect as a mixed clock (1)
โ reports the rule diagnostic 454ms
โ reports TestClock sleeps when TestClock.adjust appears only in a comment (1)
โ reports the rule diagnostic 443ms
โ reports timers hidden in module-level helpers (1)
โ reports the rule diagnostic 499ms
โ reports awaited timers/promises sleeps (1)
โ reports the rule diagnostic 357ms
โ ignores non-test files (1)
โ passes 499ms
โ unit src/state/use-thread-outbox-drain.permissions.test.ts (12 tests) 29ms
โ unit src/lib/attachmentDownload.test.ts (19 tests) 23ms
โ unit src/lib/composerContext.test.ts (15 tests) 147ms
โ unit src/features/pull-requests/pullRequestList.test.ts (18 tests) 29ms
โ unit src/lib/android-workspace-navigation.test.ts (15 tests) 8ms
โ rules/no-test-timeout-or-unreasoned-skip.test.ts (16 tests) 9596ms
โ t3code/no-test-timeout-or-unreasoned-skip (13)
โ allows tests without overrides, conditional skips, and waitFor timeouts (1)
โ passes 496ms
โ allows a skip with a quarantine issue or a GitHub issue URL (1)
โ passes 627ms
โ reports a numeric timeout on it.effect (1)
โ reports the rule diagnostic 886ms
โ reports a timeout through .each and .skipIf chains (1)
โ reports the rule diagnostic 952ms
โ reports retry options, options-first timeouts, and hook timeouts (1)
โ reports the rule diagnostic 808ms
โ reports vi.setConfig timeouts (1)
โ reports the rule diagnostic 764ms
โ reports a skip whose comment has no issue (1)
โ reports the rule diagnostic 856ms
โ reports todo, only, and the x/f aliases (1)
โ reports the rule diagnostic 468ms
โ flags an options-object timeout when the callback is a reference (1)
โ reports the rule diagnostic 436ms
โ allows a computed skip option, which is a platform gate like skipIf (1)
โ passes 438ms
โ flags the suite alias and option-object skips (1)
โ reports the rule diagnostic 477ms
โ flags a skip option without a quarantine issue (1)
โ reports the rule diagnostic 486ms
โ flags a bracket-access skip without a quarantine issue (1)
โ reports the rule diagnostic 536ms
โ still flags an option-object skip in a live file (1)
โ reports the rule diagnostic 466ms
โ allows timeouts in opt-in live provider suites (1)
โ passes 434ms
โ ignores non-test files (1)
โ passes 446ms
โ unit src/lib/composerAttachmentUploadQueue.test.ts (11 tests) 8ms
โ unit src/features/threads/thread-feed-live-follow.test.ts (28 tests) 23ms
โ unit src/features/voice-input/voiceInputSession.test.ts (13 tests) 18ms
โ unit src/state/composer-attachment-uploads.test.ts (5 tests) 40ms
โ unit src/lib/composerContextClipboard.test.ts (7 tests) 17ms
โ unit src/features/updates/app-updates.test.ts (11 tests) 66ms
โ unit src/connection/environment-cache-store.test.ts (4 tests) 29ms
โ unit src/state/pending-task-editor-writes.test.ts (5 tests) 6ms
โ unit src/features/home/home-thread-navigation.test.ts (6 tests) 6ms
โ unit src/features/threads/checkout-new-task-branch.test.ts (11 tests) 2260ms
โ new-task branch checkout (11)
โ switches to the selected remote instead of reusing a worktree tracking another remote 415ms
โ unit src/features/diffs/nativeReviewDiffHighlighter.test.ts (11 tests) 421ms
โ unit src/features/threads/threadOrderAvailability.test.ts (7 tests) 297ms
โ unit src/state/thread-outbox-removal.test.ts (5 tests) 6ms
โ unit src/state/use-selected-thread-git-actions.test.ts (11 tests) 13ms
โ rules/require-disposable-render.test.ts (22 tests) 11458ms
โ t3code/require-disposable-render (22)
โ allows the disposable helper (1)
โ passes 544ms
โ rejects react-dom/client (1)
โ reports the rule diagnostic 492ms
โ rejects act from react (1)
โ reports the rule diagnostic 816ms
โ rejects a renamed act from react (1)
โ reports the rule diagnostic 964ms
โ rejects setting the act environment (1)
โ reports the rule diagnostic 504ms
โ rejects setting the act environment by computed key (1)
โ reports the rule diagnostic 593ms
โ rejects stubbing the act environment (1)
โ reports the rule diagnostic 673ms
โ rejects userEvent wrapped in act from react (1)
โ reports the rule diagnostic 622ms
โ rejects userEvent wrapped in the render helper's act (1)
โ reports the rule diagnostic 586ms
โ rejects userEvent wrapped in a renamed render helper act (1)
โ reports the rule diagnostic 454ms
โ rejects a renamed userEvent wrapped in act (1)
โ reports the rule diagnostic 387ms
โ rejects a locator click wrapped in act (1)
โ reports the rule diagnostic 382ms
โ rejects React.act from a namespace import (1)
โ reports the rule diagnostic 462ms
โ rejects userEvent wrapped in React.act (1)
โ reports the rule diagnostic 341ms
โ allows act around a DOM click and userEvent in a function act only defines (1)
โ passes 432ms
โ rejects lifecycle hooks through a test runner namespace (1)
โ reports the rule diagnostic 417ms
โ rejects importing lifecycle hooks from the test runner (1)
โ reports the rule diagnostic 408ms
โ rejects afterEach (1)
โ reports the rule diagnostic 514ms
โ rejects beforeAll (1)
โ reports the rule diagnostic 505ms
โ allows lifecycle hooks outside browser tests (1)
โ passes 406ms
โ allows importing lifecycle hooks outside browser tests (1)
โ passes 485ms
โ still rejects react-dom/client in unit tests (1)
โ reports the rule diagnostic 439ms
โ unit src/features/cloud/linkEnvironment.test.ts (3 tests) 65ms
โ unit src/features/sharing/incoming-share-inbox.test.ts (10 tests) 28ms
โ unit src/dependency-graph.test.ts (2 tests) 24ms
โ unit src/lib/composerImages.test.ts (6 tests) 19ms
โ unit src/native/composerEditorRevision.test.ts (17 tests) 21ms
โ unit src/features/settings/scheduledTaskDraft.test.ts (12 tests) 12ms
โ unit src/features/home/homeThreadList.test.ts (4 tests) 18ms
โ rules/prefer-effect-fn.test.ts (23 tests) 12913ms
โ t3code/prefer-effect-fn (23)
โ allows inline programs and layer construction (1)
โ passes 577ms
โ allows named functions and deliberate untraced functions (1)
โ passes 679ms
โ allows inline combinator callbacks (1)
โ passes 899ms
โ allows inline option and error callbacks (1)
โ passes 743ms
โ allows reference default-value callbacks (1)
โ passes 834ms
โ reports service members named onSome (1)
โ reports the rule diagnostic 808ms
โ reports service members named onNone (1)
โ reports the rule diagnostic 727ms
โ reports service members named onSuccess (1)
โ reports the rule diagnostic 479ms
โ reports service members named onFailure (1)
โ reports the rule diagnostic 440ms
โ reports service members named defaultValue (1)
โ reports the rule diagnostic 384ms
โ does not mistake other namespaces or shadowed locals for Effect (1)
โ passes 481ms
โ leaves functions with synchronous setup for manual review (1)
โ passes 686ms
โ reports a named arrow wrapper (1)
โ reports the rule diagnostic 432ms
โ reports a block-bodied wrapper (1)
โ reports the rule diagnostic 486ms
โ reports a declaration with pipe transforms (1)
โ reports the rule diagnostic 405ms
โ reports a function expression (1)
โ reports the rule diagnostic 410ms
โ reports service members (1)
โ reports the rule diagnostic 459ms
โ reports class fields (1)
โ reports the rule diagnostic 431ms
โ recognizes namespace aliases (1)
โ reports the rule diagnostic 421ms
โ recognizes bare-package Effect imports (1)
โ reports the rule diagnostic 350ms
โ recognizes a direct gen import (1)
โ reports the rule diagnostic 542ms
โ reports class methods (1)
โ reports the rule diagnostic 468ms
โ allows getters that expose an effect value (1)
โ passes 740ms
stdout | src/state/preferences.test.ts > mobile preferences state > falls back to empty preferences when secure storage cannot be read
[02:54:37.352] 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) 19ms
โ rules/no-mobile-uniwind-theme-escape-hatches.test.ts (24 tests) 13027ms
โ t3code/no-mobile-uniwind-theme-escape-hatches (24)
โ allows semantic mobile theme classes (1)
โ passes 679ms
โ allows unrelated functions with legacy hook names (1)
โ passes 786ms
โ allows unrelated imports with legacy hook names (1)
โ passes 876ms
โ allows erased type-only theme imports (1)
โ passes 735ms
โ allows appearance words in ordinary copy (1)
โ passes 825ms
โ does not conflate shadowed Uniwind namespaces (1)
โ passes 601ms
โ allows reviewed native interop boundaries (1)
โ passes 614ms
โ still reports appearance variants in reviewed interop boundaries (1)
โ reports the rule diagnostic 603ms
โ reports new React theme subscriptions (1)
โ reports the rule diagnostic 506ms
โ reports the retired theme color hook (1)
โ reports the rule diagnostic 414ms
โ reports guarded hooks imported with TypeScript extensions (1)
โ reports the rule diagnostic 398ms
โ reports unreviewed native interop subscriptions (1)
โ reports the rule diagnostic 384ms
โ reports appearance variants in string literals (1)
โ reports the rule diagnostic 517ms
โ reports appearance variants in template literals (1)
โ reports the rule diagnostic 481ms
โ reports escaped appearance variants in template literals (1)
โ reports the rule diagnostic 415ms
โ reports appearance variants through nested class-map indirection (1)
โ reports the rule diagnostic 416ms
โ reports appearance variants passed to class builders (1)
โ reports the rule diagnostic 471ms
โ reports negative and important appearance variants (1)
โ reports the rule diagnostic 458ms
โ reports namespace CSS variable subscriptions (1)
โ reports the rule diagnostic 346ms
โ reports destructured namespace CSS variable subscriptions (1)
โ reports the rule diagnostic 409ms
โ reports aliased namespace CSS variable subscriptions (1)
โ reports the rule diagnostic 519ms
โ reports object-rest namespace CSS variable subscriptions (1)
โ reports the rule diagnostic 531ms
โ reports namespace access to the retired theme hook (1)
โ reports the rule diagnostic 408ms
โ reports destructured namespace access to the retired theme hook (1)
โ reports the rule diagnostic 590ms
stdout | src/lib/storage.test.ts > mobile connection storage > loads legacy preferences when SQLite is unavailable
[02:54:37.932] 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
[02:54:37.944] 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
[02:54:37.946] 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) 45ms
โ unit src/state/session.test.ts (4 tests) 10ms
โ unit src/lib/mediaActions.test.ts (10 tests) 8ms
โ unit src/features/projects/AddProjectScreen.test.ts (3 tests) 13ms
โ unit src/features/threads/thread-provider-instance.test.ts (3 tests) 22ms
โ unit src/features/settings/settings-scoped-server.test.ts (5 tests) 6ms
โ unit src/features/cloud/dpop.test.ts (5 tests) 115ms
โ unit src/features/pull-requests/pullRequestStack.test.ts (8 tests) 9ms
โ unit src/features/agent-awareness/liveActivityPreferences.test.ts (3 tests) 15ms
โ unit src/features/threads/new-task-project-selection.test.ts (9 tests) 8ms
โ unit src/lib/markdownInlineFileLinks.test.ts (16 tests) 2650ms
โ inline code that names a file (16)
โ preserves the two-pass output for every streamed prefix: HTML 835ms
โ preserves the two-pass output for every streamed prefix: nested fences 427ms
โ unit src/features/threads/thread-route-state.test.ts (5 tests) 20ms
โ unit src/features/settings/environment-maintenance.test.ts (7 tests) 32ms
โ unit src/widgets/subscriptionUsageSnapshot.test.ts (5 tests) 29ms
โ unit src/features/review/reviewModel.test.ts (5 tests) 13ms
โ unit src/features/review/reviewCommentSelection.test.ts (6 tests) 11ms
โ unit src/features/threads/thread-settings-sheet-state.test.ts (5 tests) 18ms
โ unit src/lib/markdownHtml.test.ts (8 tests) 35ms
โ unit src/lib/protectedData.test.ts (3 tests) 106ms
โ unit src/state/remote-environment-projections.test.ts (1 test) 10ms
โ unit src/features/voice-input/lazyVoiceRecorder.test.ts (3 tests) 11ms
โ rules/require-suppression-reason.test.ts (13 tests) 6258ms
โ t3code/require-suppression-reason (13)
โ allows a directive with a -- reason (1)
โ passes 421ms
โ allows a directive explained by the comment above (1)
โ passes 455ms
โ allows stacked directives under one explanation (1)
โ passes 424ms
โ allows a TypeScript directive followed by its reason (1)
โ passes 506ms
โ allows a directive in a JSX comment with a reason (1)
โ passes 487ms
โ ignores enable directives (1)
โ passes 627ms
โ reports a lint directive without a reason (1)
โ reports the rule diagnostic 554ms
โ reports a file-level directive without a reason (1)
โ reports the rule diagnostic 482ms
โ reports a TypeScript directive without a reason (1)
โ reports the rule diagnostic 361ms
โ does not count a comment separated by a blank line (1)
โ reports the rule diagnostic 629ms
โ allows an empty comment line between the reason and the directive (1)
โ passes 483ms
โ does not count an empty comment above (1)
โ reports the rule diagnostic 361ms
โ does not count a trailing comment on the code line above (1)
โ reports the rule diagnostic 435ms
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) 545ms
โ withAndroidFbjniVersion (4)
โ applies the force through the registered app config 513ms
โ unit src/features/review/nativeReviewDiffAdapter.test.ts (2 tests) 401ms
โ buildNativeReviewDiffData row bound (1)
โ caps each huge file excerpt while preserving full counts and ordinary files 389ms
โ unit src/lib/pdfPreview.test.ts (12 tests) 7ms
โ unit src/state/edit-pending-thread-message.test.ts (4 tests) 18ms
โ unit src/features/usage/UsageLimitsSection.test.ts (2 tests) 15ms
โ unit src/features/pull-requests/pullRequestDiffPages.test.ts (3 tests) 8ms
โ unit src/features/agent-awareness/notificationNavigation.test.ts (6 tests) 18ms
โ unit src/state/thread-order.test.ts (4 tests) 4ms
โ unit src/features/workspace/android-workspace-navigation-colors.test.ts (9 tests) 56ms
โ unit src/state/assets.test.ts (4 tests) 9ms
โ rules/no-test-in-loop.test.ts (8 tests) 3841ms
โ t3code/no-test-in-loop (7)
โ allows it.each and it.effect.each (1)
โ passes 531ms
โ allows loops inside a test body (1)
โ passes 479ms
โ ignores node:test files, which have no .each (1)
โ passes 507ms
โ reports it inside a for...of loop (1)
โ reports the rule diagnostic 542ms
โ reports it.effect inside a for loop nested in describe (1)
โ reports the rule diagnostic 457ms
โ reports test inside a for...in loop (1)
โ reports the rule diagnostic 391ms
โ reports a describe inside a loop once, not the tests inside it (1)
โ reports the rule diagnostic 503ms
โ ignores non-test files (1)
โ passes 403ms
โ rules/no-frame-waits-in-browser-tests.test.ts (16 tests) 7793ms
โ t3code/no-frame-waits-in-browser-tests (16)
โ allows retrying assertions and the full fake timer set (1)
โ passes 398ms
โ allows requestAnimationFrame inside mocks (1)
โ passes 473ms
โ allows timers outside a promise executor and other listeners (1)
โ passes 365ms
โ rejects a nextFrame helper (1)
โ reports the rule diagnostic 542ms
โ rejects requestAnimationFrame as the executor (1)
โ reports the rule diagnostic 521ms
โ rejects window.requestAnimationFrame (1)
โ reports the rule diagnostic 435ms
โ allows a pass-through frame executor inside a mock implementation (1)
โ passes 506ms
โ rejects setTimeout passed straight through as the promise executor (1)
โ reports the rule diagnostic 555ms
โ rejects setTimeout inside a promise executor (1)
โ reports the rule diagnostic 370ms
โ rejects setInterval inside a promise executor (1)
โ reports the rule diagnostic 548ms
โ rejects transitionend listeners (1)
โ reports the rule diagnostic 652ms
โ rejects animationend listeners (1)
โ reports the rule diagnostic 469ms
โ rejects vi.useFakeTimers (1)
โ reports the rule diagnostic 516ms
โ rejects a partial fakeTimers set (1)
โ reports the rule diagnostic 401ms
โ rejects a partial vi.useFakeTimers set (1)
โ reports the rule diagnostic 597ms
โ ignores files that are not browser tests (1)
โ passes 416ms
โ unit src/lib/adaptive-navigation.test.ts (8 tests) 16ms
โ unit src/features/connection/environmentSections.test.ts (3 tests) 9ms
โ unit src/state/pending-thread-creation.test.ts (4 tests) 9ms
โ unit src/lib/projectFaviconRequests.test.ts (4 tests) 8ms
โ unit src/state/attachments.test.ts (2 tests) 20ms
โ unit src/state/workspace-connection-atoms.test.ts (1 test) 10ms
โ unit src/features/shortcuts/appShortcuts.test.ts (7 tests) 5ms
โ unit src/lib/composerChipPresentation.test.ts (3 tests) 154ms
โ unit src/lib/atomic-file.test.ts (4 tests) 8ms
โ unit src/state/use-thread-pr.test.ts (6 tests) 4ms
โ unit src/features/workspace/workspace-tabs-state.test.ts (4 tests) 3ms
โ unit src/lib/markdownMedia.test.ts (12 tests) 5ms
โ unit src/features/pull-requests/pullRequestFileFilters.test.ts (4 tests) 17ms
โ unit src/lib/localAttachmentPreview.test.ts (4 tests) 14ms
โ unit src/lib/reserved-regions.test.ts (5 tests) 3ms
โ unit src/lib/enrichedLinkPresentation.test.ts (5 tests) 5ms
โ rules/no-raw-mcp-registration.test.ts (20 tests) 9547ms
โ t3code/no-raw-mcp-registration (20)
โ allows the rest of effect/ai and type-only McpServer imports (1)
โ passes 485ms
โ reports importing McpServer from effect/ai (1)
โ reports the rule diagnostic 456ms
โ reports importing McpServer under another name (1)
โ reports the rule diagnostic 430ms
โ reports a namespace import of effect/ai (1)
โ reports the rule diagnostic 378ms
โ reports importing the McpServer module directly (1)
โ reports the rule diagnostic 412ms
โ reports re-exporting McpServer (1)
โ reports the rule diagnostic 451ms
โ reports re-exporting all of effect/ai (1)
โ reports the rule diagnostic 523ms
โ reports a dynamic import of the McpServer module (1)
โ reports the rule diagnostic 410ms
โ reports a dynamic import written as a template (1)
โ reports the rule diagnostic 383ms
โ reports McpServer.toolkit (1)
โ reports the rule diagnostic 527ms
โ reports McpServer.resource and McpServer.prompt (1)
โ reports the rule diagnostic 517ms
โ reports addTool on the McpServer service (1)
โ reports the rule diagnostic 591ms
โ reports a registration method read without calling it (1)
โ reports the rule diagnostic 428ms
โ reports a registration function taken by destructuring (1)
โ reports the rule diagnostic 428ms
โ reports a registration method taken by destructuring (1)
โ reports the rule diagnostic 613ms
โ lets tests import McpServer to build a server (1)
โ passes 368ms
โ reports a registration in a test (1)
โ reports the rule diagnostic 513ms
โ reports a test importing McpServer under another name (1)
โ reports the rule diagnostic 441ms
โ reports a test importing effect/ai as a namespace (1)
โ reports the rule diagnostic 594ms
โ reports a test importing the McpServer module directly (1)
โ reports the rule diagnostic 555ms
โ unit src/features/terminal/useTerminalGridSync.test.ts (1 test) 27ms
โ unit src/lib/copyTextWithHaptic.test.ts (5 tests) 29ms
โ unit src/features/terminal/useTerminalLifecycle.test.ts (3 tests) 17ms
โ unit src/connection/storage.test.ts (3 tests) 30ms
โ unit src/features/review/incrementalSnippet.test.ts (3 tests) 269ms
โ unit src/persistence/mobile-database.test.ts (3 tests) 16ms
โ unit src/features/pull-requests/pullRequestDiffComments.test.ts (4 tests) 3ms
โ unit src/persistence/mobile-storage.test.ts (3 tests) 12ms
โ unit src/lib/layout.test.ts (7 tests) 3ms
โ unit src/lib/videoThumbnails.test.ts (2 tests) 20ms
โ unit src/connection/background-activity.test.ts (3 tests) 24ms
โ unit src/features/threads/threadQueueControlPresentation.test.ts (7 tests) 3ms
โ unit src/state/workspaceModel.test.ts (2 tests) 3ms
โ unit src/features/threads/fileChipMenu.test.ts (9 tests) 13ms
โ unit src/features/threads/pending-thread-feed.test.ts (4 tests) 9ms
โ rules/no-inline-schema-compile.test.ts (6 tests) 2889ms
โ t3code/no-inline-schema-compile (6)
โ allows schema compilers hoisted to module scope (1)
โ passes 431ms
โ allows factory helpers that return a precompiled decoder (1)
โ passes 556ms
โ allows schema construction helpers that use encode transformations (1)
โ passes 413ms
โ allows dynamic schema parameters that cannot be hoisted to module scope (1)
โ passes 454ms
โ reports schema compilers inside function bodies (1)
โ reports the rule diagnostic 433ms
โ reports inline schema literals as high confidence findings (1)
โ reports the rule diagnostic 580ms
โ unit src/features/threads/use-composer-command-menu.test.ts (3 tests) 5ms
โ unit src/lib/composerAttachmentFiles.test.ts (12 tests) 10ms
โ unit src/connection/migration.test.ts (2 tests) 15ms
โ unit src/features/threads/thread-settings-options.test.ts (4 tests) 5ms
โ unit src/features/settings/autoSettleSettingsSync.test.ts (3 tests) 2ms
โ unit src/lib/microphonePriority.test.ts (4 tests) 5ms
โ unit src/features/pull-requests/pullRequestStatus.test.ts (4 tests) 5ms
โ unit src/features/threads/new-task-context-presentation.test.ts (7 tests) 11ms
โ unit src/features/home/workspace-connection-status.test.ts (3 tests) 2ms
โ rules/no-wall-clock-in-tests.test.ts (8 tests) 3791ms
โ t3code/no-wall-clock-in-tests (7)
โ ignores a computed member with a variable key (1)
โ passes 442ms
โ allows fixed dates and readings that seed mocks (1)
โ passes 409ms
โ reports elapsed-time measurement (1)
โ reports the rule diagnostic 498ms
โ reports Date.now fixtures (1)
โ reports the rule diagnostic 413ms
โ reports new Date() with no arguments (1)
โ reports the rule diagnostic 534ms
โ reports process.hrtime and process.hrtime.bigint (1)
โ reports the rule diagnostic 530ms
โ reports a reading outside the mock's arguments (1)
โ reports the rule diagnostic 385ms
โ ignores non-test files (1)
โ passes 544ms
โ unit src/lib/projectFaviconDatabaseCache.test.ts (3 tests) 5ms
โ unit src/features/terminal/terminalMenu.test.ts (5 tests) 11ms
โ rules/no-unscoped-has.test.ts (42 tests) 21446ms
โ t3code/no-unscoped-has (24)
โ allows :has() on the element itself (1)
โ passes 535ms
โ allows :has() anchored to an attribute (1)
โ passes 751ms
โ allows :has() inside :not() on the element itself (1)
โ passes 697ms
โ allows built-in has-* variants (1)
โ passes 796ms
โ allows a sibling selector without :has() (1)
โ passes 888ms
โ ignores prose mentioning :has() (1)
โ passes 663ms
โ ignores :has() inside an arbitrary value (1)
โ passes 556ms
โ allows a negated :has() on the element itself (1)
โ passes 624ms
โ allows :has() on a group or peer element (1)
โ passes 579ms
โ allows a selector list whose own branch is anchored (1)
โ passes 475ms
โ ignores :has() text in quoted attribute values (1)
โ passes 429ms
โ allows a selector without & on the element itself (1)
โ passes 453ms
โ reports a sibling :has() with nothing anchoring it (1)
โ reports the rule diagnostic 448ms
โ reports a descendant :has() with nothing anchoring it (1)
โ reports the rule diagnostic 496ms
โ reports a universal :has() ancestor (1)
โ reports the rule diagnostic 428ms
โ reports :has() whose only anchor is negated (1)
โ reports the rule diagnostic 396ms
โ reports uppercase :HAS() (1)
โ reports the rule diagnostic 352ms
โ reports a selector-list branch borrowing another branch's anchor (1)
โ reports the rule diagnostic 374ms
โ reports an unanchored branch inside :is() (1)
โ reports the rule diagnostic 395ms
โ reports an unanchored :has() inside a named group variant (1)
โ reports the rule diagnostic 395ms
โ reports a :has() on an ancestor of a selector without & (1)
โ reports the rule diagnostic 594ms
โ reports a :has() on an ancestor of a group (1)
โ reports the rule diagnostic 447ms
โ reports an in-* ancestor :has() (1)
โ reports the rule diagnostic 546ms
โ reports :has() anchored to the document root (1)
โ reports the rule diagnostic 407ms
โ t3code/no-outset-state-indicators (18)
โ valid: inset state rings (1)
โ inset state rings (1)
โ passes 401ms
โ valid: an unconditional inset (1)
โ an unconditional inset (1)
โ passes 446ms
โ valid: an inset in a sibling composer argument (1)
โ an inset in a sibling composer argument (1)
โ passes 475ms
โ valid: an inset in a nested conditional composer (1)
โ an inset in a nested conditional composer (1)
โ passes 458ms
โ valid: outlines covered by the inward default (1)
โ outlines covered by the inward default (1)
โ passes 495ms
โ valid: wider outlines with a matching inward offset (1)
โ wider outlines with a matching inward offset (1)
โ passes 452ms
โ valid: arbitrary pixel outlines with a matching inward offset (1)
โ arbitrary pixel outlines with a matching inward offset (1)
โ passes 460ms
โ valid: arbitrary outline colors (1)
โ arbitrary outline colors (1)
โ passes 495ms
โ valid: decorative rings without a state (1)
โ decorative rings without a state (1)
โ passes 456ms
โ valid: prose (1)
โ prose (1)
โ passes 547ms
โ invalid: state rings without an inset (1)
โ state rings without an inset (1)
โ reports the rule diagnostic 444ms
โ invalid: an inset from another state (1)
โ an inset from another state (1)
โ reports the rule diagnostic 570ms
โ invalid: an inset from another conditional branch (1)
โ an inset from another conditional branch (1)
โ reports the rule diagnostic 420ms
โ invalid: an inset passed to another function (1)
โ an inset passed to another function (1)
โ reports the rule diagnostic 463ms
โ invalid: arbitrary state ring widths (1)
โ arbitrary state ring widths (1)
โ reports the rule diagnostic 518ms
โ invalid: positive outline offsets (1)
โ positive outline offsets (1)
โ reports the rule diagnostic 490ms
โ invalid: arbitrary outline offsets (1)
โ arbitrary outline offsets (1)
โ reports the rule diagnostic 552ms
โ invalid: wide outlines without an inward offset (1)
โ wide outlines without an inward offset (1)
โ reports the rule diagnostic 537ms
โ unit src/lib/markdownLinks.test.ts (8 tests) 17ms
โ rules/no-manual-effect-runtime-in-tests.test.ts (17 tests) 8334ms
โ t3code/no-manual-effect-runtime-in-tests (14)
โ unit src/native/voiceTranscription.ios.test.ts (1 test) 11ms
โ allows @effect/vitest effect tests (1)
โ passes 490ms
โ reports Effect.runCallback (1)
โ reports the rule diagnostic 573ms
โ reports Effect.runCallbackWith (1)
โ reports the rule diagnostic 499ms
โ reports Effect.runFork (1)
โ reports the rule diagnostic 456ms
โ reports Effect.runForkWith (1)
โ reports the rule diagnostic 438ms
โ reports Effect.runPromise (1)
โ reports the rule diagnostic 558ms
โ reports Effect.runPromiseExit (1)
โ reports the rule diagnostic 423ms
โ reports Effect.runPromiseExitWith (1)
โ reports the rule diagnostic 501ms
โ reports Effect.runPromiseWith (1)
โ reports the rule diagnostic 541ms
โ reports Effect.runSync (1)
โ reports the rule diagnostic 364ms
โ reports Effect.runSyncExit (1)
โ reports the rule diagnostic 567ms
โ reports Effect.runSyncExitWith (1)
โ reports the rule diagnostic 472ms
โ reports Effect.runSyncWith (1)
โ reports the rule diagnostic 613ms
โ reports ManagedRuntime.make (1)
โ reports the rule diagnostic 557ms
โ allows production runtime boundaries (1)
โ passes 351ms
โ t3code/no-manual-effect-runtime-in-tests with maxOccurrences (2)
โ allows occurrences up to the ceiling (1)
โ passes 400ms
โ reports occurrences beyond the ceiling (1)
โ reports the rule diagnostic 494ms
โ rules/no-hermes-unsupported-apis.test.ts (22 tests) 10066ms
โ t3code/no-hermes-unsupported-apis (22)
โ allows in-place sort on a copy (1)
โ passes 416ms
โ allows in-place reverse on a copy (1)
โ passes 481ms
โ allows other ES2023 methods Hermes ships (1)
โ passes 483ms
โ ignores property reads that are not calls (1)
โ passes 381ms
โ reports toSorted (1)
โ reports the rule diagnostic 489ms
โ reports toReversed in a chain (1)
โ reports the rule diagnostic 485ms
โ reports toSpliced via computed access with a copy-then-splice remediation (1)
โ reports the rule diagnostic 388ms
โ reports a static template-literal property name (1)
โ reports the rule diagnostic 519ms
โ ignores a template-literal property with substitutions (1)
โ passes 487ms
โ allows supported Intl constructors (1)
โ passes 483ms
โ allows feature detection (1)
โ passes 393ms
โ allows unrelated Segmenter constructors (1)
โ passes 515ms
โ ignores dynamic computed names (1)
โ passes 496ms
โ reports new Intl.Segmenter(undefined, { granularity: 'grapheme' }) (1)
โ reports the rule diagnostic 344ms
โ reports new Intl['Segmenter']() (1)
โ reports the rule diagnostic 478ms
โ reports new Intl[`Segmenter`]() (1)
โ reports the rule diagnostic 567ms
โ reports new globalThis.Intl.Segmenter() (1)
โ reports the rule diagnostic 334ms
โ reports new globalThis['Intl']['Segmenter']() (1)
โ reports the rule diagnostic 516ms
โ reports new global.Intl.Segmenter() (1)
โ reports the rule diagnostic 410ms
โ reports new window.Intl.Segmenter() (1)
โ reports the rule diagnostic 478ms
โ reports Intl.Segmenter() (1)
โ reports the rule diagnostic 451ms
โ reports Intl.Segmenter?.() (1)
โ reports the rule diagnostic 433ms
โ unit src/features/devices/threadDevicePreviews.test.ts (2 tests) 11ms
โ unit src/lib/projectIcon.test.ts (5 tests) 4ms
โ unit src/features/terminal/terminalInput.test.ts (7 tests) 4ms
โ unit src/state/queries.filesystem.test.ts (1 test) 3ms
โ unit src/features/terminal/terminalPaste.test.ts (2 tests) 5ms
โ unit src/lib/appLinking.test.ts (17 tests) 9ms
โ unit src/features/threads/worktree-setup-state.test.ts (4 tests) 2ms
โ unit src/features/terminal/terminalLaunchContext.test.ts (3 tests) 4ms
โ unit src/state/thread-provider-switching.test.ts (4 tests) 2ms
โ unit src/features/terminal/useTerminalSurfaceBuffer.test.ts (2 tests) 42ms
โ unit src/lib/device-type.test.ts (3 tests) 2ms
โ unit src/features/threads/thread-route-hydration.test.ts (3 tests) 18ms
โ unit src/state/queued-run-edit.test.ts (3 tests) 8ms
โ unit src/features/files/filePath.test.ts (7 tests) 13ms
โ unit src/features/settings/scheduled-task-editor-state.test.ts (3 tests) 5ms
โ unit src/lib/projectThreadStartTurn.test.ts (3 tests) 3ms
โ unit src/features/layout/deferred-navigation.test.ts (3 tests) 2ms
โ unit src/features/home/thread-dismissal.test.ts (3 tests) 4ms
โ rules/no-global-process-runtime.test.ts (9 tests) 4076ms
โ t3code/no-global-process-runtime (9)
โ allows injected host process references (1)
โ passes 596ms
โ allows unrelated process members (1)
โ passes 347ms
โ allows unrelated node os imports (1)
โ passes 367ms
โ reports direct platform reads (1)
โ reports the rule diagnostic 433ms
โ reports direct architecture reads (1)
โ reports the rule diagnostic 514ms
โ reports globalThis process platform reads (1)
โ reports the rule diagnostic 372ms
โ reports node os namespace platform reads (1)
โ reports the rule diagnostic 495ms
โ reports renamed node os architecture imports (1)
โ reports the rule diagnostic 429ms
โ reports default node os platform reads (1)
โ reports the rule diagnostic 505ms
โ unit src/features/cloud/managedRelayLayer.test.ts (1 test) 75ms
โ unit src/features/sharing/incoming-share-presentation.test.ts (2 tests) 3ms
โ unit src/features/devices/device-stream-document.test.ts (11 tests) 5ms
โ unit src/features/cloud/CloudAuthProvider.test.ts (1 test) 3ms
โ unit src/features/diagnostics/crash-log-model.test.ts (2 tests) 3ms
โ unit src/features/threads/provider-catalog-refresh.test.ts (2 tests) 3ms
โ unit src/features/pull-requests/pullRequestActivityFilter.test.ts (1 test) 7ms
โ rules/no-rpc-permission-bypass.test.ts (16 tests) 7572ms
โ blocks direct session calls (1)
โ reports the rule diagnostic 444ms
โ blocks extracting the raw client (1)
โ reports the rule diagnostic 465ms
โ blocks replacing the permission guard (1)
โ reports the rule diagnostic 348ms
โ blocks namespace guard access (1)
โ reports the rule diagnostic 561ms
โ blocks raw protocol imports (1)
โ reports the rule diagnostic 425ms
โ allows typed requests (1)
โ passes 447ms
โ allows the transport boundary (1)
โ passes 444ms
โ blocks guard imports through the barrel (1)
โ reports the rule diagnostic 501ms
โ blocks explicit index imports (1)
โ reports the rule diagnostic 481ms
โ blocks raw session access in subscription callbacks (1)
โ reports the rule diagnostic 635ms
โ blocks raw client destructuring (1)
โ reports the rule diagnostic 431ms
โ allows public typed RPC helpers (1)
โ passes 468ms
โ raw client allowance does not permit installing the guard (1)
โ reports the rule diagnostic 480ms
โ permits guard installation when configured (1)
โ passes 432ms
โ guard installation allowance does not permit raw clients (1)
โ reports the rule diagnostic 427ms
โ guard installation allowance does not permit raw protocol imports (1)
โ reports the rule diagnostic 566ms
โ unit src/features/observability/tracing.test.ts (1 test) 16ms
โ unit src/lib/markdownTableBreaks.test.ts (5 tests) 53ms
โ unit src/features/pull-requests/pullRequestEnvironmentFallback.test.ts (3 tests) 11ms
โ unit scripts/generate-uniwind-themes.test.ts (1 test) 43ms
โ unit src/lib/nativeTheme.test.ts (12 tests) 40ms
โ rules/namespace-node-imports.test.ts (5 tests) 2300ms
โ t3code/namespace-node-imports (5)
โ allows canonical Node namespaces (1)
โ passes 517ms
โ does not apply to non-Node packages (1)
โ passes 390ms
โ reports named imports (1)
โ reports the rule diagnostic 474ms
โ reports default imports (1)
โ reports the rule diagnostic 527ms
โ reports non-canonical namespace aliases (1)
โ reports the rule diagnostic 379ms
โ unit src/lib/assetImageSource.test.ts (3 tests) 3ms
โ unit src/features/keyboard/commandPaletteItems.test.ts (2 tests) 25ms
โ unit src/features/pull-requests/pullRequestAgentTasks.test.ts (2 tests) 6ms
โ unit src/lib/markdownMediaSource.test.ts (3 tests) 29ms
โ unit src/features/pull-requests/pullRequestActions.test.ts (2 tests) 11ms
โ rules/no-mobile-pull-request-glyph-literals.test.ts (10 tests) 4312ms
โ t3code/no-mobile-pull-request-glyph-literals (10)
โ allows glyphs picked from the module (1)
โ passes 561ms
โ allows unrelated symbols and copy that mentions pull requests (1)
โ passes 441ms
โ reports a pull request glyph in a JSX attribute (1)
โ reports the rule diagnostic 359ms
โ reports state glyphs chosen inline (1)
โ reports the rule diagnostic 355ms
โ reports glyphs in platform symbol objects (1)
โ reports the rule diagnostic 438ms
โ reports an Android-only pull request glyph (1)
โ reports the rule diagnostic 347ms
โ allows merge as an ordinary string outside an android symbol slot (1)
โ passes 412ms
โ allows merge in an android key outside a platform symbol object (1)
โ passes 369ms
โ reports an Android-only pull request glyph written as a template literal (1)
โ reports the rule diagnostic 445ms
โ reports glyphs in template literals (1)
โ reports the rule diagnostic 562ms
โ unit src/features/connection/pairing.test.ts (5 tests) 7ms
โ rules/prefer-catch-tags.test.ts (6 tests) 3031ms
โ t3code/prefer-catch-tags (6)
โ allows Effect.catchTags (1)
โ passes 497ms
โ ignores catchTag on other modules (1)
โ passes 560ms
โ ignores a local that shadows the namespace (1)
โ passes 592ms
โ reports Effect.catchTag (1)
โ reports the rule diagnostic 448ms
โ reports catchTag through an aliased namespace (1)
โ reports the rule diagnostic 553ms
โ reports a named catchTag import (1)
โ reports the rule diagnostic 363ms
โ unit src/features/settings/SettingsRouteScreen.logic.test.ts (2 tests) 16ms
โ unit src/features/sharing/incoming-share-storage.test.ts (1 test) 3ms
โ unit src/lib/connection.test.ts (1 test) 6ms
โ unit src/state/asset-url-state.test.ts (3 tests) 2ms
โ unit src/features/home/swipe-row-activation.test.ts (3 tests) 7ms
โ unit src/lib/wideMarkdownBlocks.test.ts (2 tests) 3ms
โ unit src/features/pull-requests/botBadgeImages.test.ts (1 test) 4ms
โ unit src/features/review/shikiReviewHighlighter.test.ts (2 tests) 173ms
โ unit src/features/usage/usageEnvironmentSelection.test.ts (4 tests) 4ms
โ unit src/features/pull-requests/pullRequestDescriptionContent.test.ts (1 test) 5ms
โ unit src/lib/openExternalUrl.test.ts (1 test) 5ms
โ unit src/lib/serialized-async-queue.test.ts (2 tests) 3ms
โ unit src/features/threads/composerSendPresentation.test.ts (2 tests) 2ms
โ unit src/features/pull-requests/pullRequestDescription.test.ts (1 test) 27ms
โ unit src/features/sharing/incoming-share-native.test.ts (2 tests) 2ms
โ unit src/features/diffs/nativeReviewDiffSurface.test.ts (1 test) 89ms
โ unit src/features/pull-requests/pullRequestNavigation.test.ts (2 tests) 2ms
โ unit src/features/threads/subagent-card-presentation.test.ts (1 test) 2ms
โ unit src/features/threads/threadContentPresentation.test.ts (2 tests) 2ms
โ unit src/features/cloud/managedRelayTokenStore.test.ts (1 test) 10ms
โ unit src/features/pull-requests/pullRequestReviewDrafts.test.ts (1 test) 2ms
โ unit src/lib/filePreviewGallery.test.ts (1 test) 12ms
โ unit src/features/threads/customSnoozeDate.test.ts (2 tests) 2ms
โ unit src/state/thread-composer-error.test.ts (1 test) 2ms
โ unit src/features/pull-requests/pullRequestMediaSource.test.ts (1 test) 14ms
โ unit src/features/browser/previewPromptText.test.ts (3 tests) 2ms
โ rules/no-em-dash-copy.test.ts (5 tests) 2130ms
โ t3code/no-em-dash-copy (5)
โ allows em dashes in comments and regex literals (1)
โ passes 424ms
โ allows hyphens and en dashes (1)
โ passes 352ms
โ reports a string literal (1)
โ reports the rule diagnostic 493ms
โ reports a template literal (1)
โ reports the rule diagnostic 410ms
โ reports JSX text (1)
โ reports the rule diagnostic 421ms
โ unit src/features/prompt-links/prompt-link-model.test.ts (1 test) 2ms
โ rules/no-native-title-tooltip.test.ts (11 tests) 5123ms
โ t3code/no-native-title-tooltip (11)
โ allows intrinsic elements without a title attribute (1)
โ passes 495ms
โ allows title props on custom components (1)
โ passes 446ms
โ allows title on member expression components (1)
โ passes 388ms
โ allows title as an accessible name on embedded content (1)
โ passes 424ms
โ allows the svg title child element (1)
โ passes 558ms
โ allows document.title assignments (1)
โ passes 508ms
โ reports title on a truncating span (1)
โ reports the rule diagnostic 362ms
โ reports title on a button (1)
โ reports the rule diagnostic 453ms
โ reports title on a paragraph (1)
โ reports the rule diagnostic 425ms
โ reports title on a code element (1)
โ reports the rule diagnostic 464ms
โ reports title on an anchor (1)
โ reports the rule diagnostic 569ms
โ unit src/features/cloud/publicConfig.test.ts (1 test) 2ms
โ unit src/features/projects/AddProjectScreen.logic.test.ts (1 test) 2ms
โ unit src/lib/nativeComposerTheme.test.ts (1 test) 3ms
โ unit src/lib/mobileThemeRuntime.test.ts (1 test) 2ms
โ unit src/lib/http-response.test.ts (1 test) 6ms
โ unit src/lib/filePreview.test.ts (4 tests) 2ms
โ unit src/state/queries.test.ts (1 test) 6ms
โ unit src/lib/appearancePreferences.test.ts (1 test) 2ms
โ unit src/lib/foreground-handoff.test.ts (1 test) 2ms
โ unit src/features/settings/lib/legal-document-url.test.ts (2 tests) 2ms
โ unit src/features/threads/projectThreadCreationValidation.test.ts (2 tests) 2ms
โ unit src/features/keyboard/hardwareKeyboardCommands.test.ts (2 tests) 2ms
โ rules/no-hookless-use-function.test.ts (9 tests) 3683ms
โ t3code/no-hookless-use-function (9)
โ allows a hook that calls useState (1)
โ passes 435ms
โ allows a hook that only calls use() (1)
โ passes 586ms
โ allows a hook that calls a member hook (1)
โ passes 357ms
โ allows a plain function (1)
โ passes 413ms
โ allows names that only start with use (1)
โ passes 470ms
โ reports a hook-less function declaration (1)
โ reports the rule diagnostic 421ms
โ reports a hook-less arrow returning a closure (1)
โ reports the rule diagnostic 430ms
โ reports a hook-less function expression (1)
โ reports the rule diagnostic 326ms
โ rules/no-manual-memo.test.ts (14 tests) 5888ms
โ t3code/no-manual-memo (11)
โ allows plain derived values (1)
โ passes 513ms
โ allows useStableCallback (1)
โ passes 492ms
โ allows other React members (1)
โ passes 474ms
โ allows other directives (1)
โ passes 471ms
โ reports a "use memo" directive (1)
โ reports the rule diagnostic 478ms
โ reports useMemo (1)
โ reports the rule diagnostic 530ms
โ reports useCallback (1)
โ reports the rule diagnostic 478ms
โ reports React.useMemo (1)
โ reports the rule diagnostic 383ms
โ reports "use no memo" (1)
โ reports the rule diagnostic 432ms
โ reports a module-level "use no forget" (1)
โ reports the rule diagnostic 389ms
โ allows the same text as a string value (1)
โ passes 456ms
โ t3code/no-manual-memo with allowMemoHooks (3)
โ allows useMemo (1)
โ passes 333ms
โ rules/no-dom-test-environment.test.ts (12 tests) 3583ms
โ t3code/no-dom-test-environment (12)
โ allows browser tests (1)
โ passes 497ms
โ allows similarly named packages (1)
โ passes 419ms
โ rejects line pragmas (1)
โ reports the rule diagnostic 360ms
โ rejects block pragmas for any environment (1)
โ reports the rule diagnostic 397ms
โ rejects jsdom imports (1)
โ reports the rule diagnostic 372ms
โ rejects happy-dom imports (1)
โ reports the rule diagnostic 326ms
Test Files 25 passed (25)
Tests 366 passed (366)
Start at 02:54:23
Duration 29.09s (tests 96%, import 2%, setup 1%)
โ unit src/reactCompilerCoverage.test.ts (910 tests) 32197ms
โ React Compiler coverage (910)
โ Metro's transformer applies the compiler 1477ms
โ compiles src/components/ComposerAttachmentStrip.tsx 319ms
โ compiles src/components/ComposerContextSheet.tsx 325ms
โ compiles src/features/files/AttachmentFileScreen.tsx 332ms
โ compiles src/features/files/ThreadFilesRouteScreen.tsx 527ms
โ compiles src/features/home/HomeScreen.tsx 724ms
โ compiles src/features/home/thread-swipe-actions.tsx 438ms
โ compiles src/features/layout/AdaptiveWorkspaceLayout.tsx 358ms
โ compiles src/features/pull-requests/PullRequestRouteScreen.tsx 402ms
โ compiles src/features/settings/SettingsScheduledTasksRouteScreen.tsx 321ms
โ compiles src/features/threads/NewTaskDraftScreen.tsx 374ms
โ compiles src/features/threads/ThreadComposer.tsx 570ms
โ compiles src/features/threads/ThreadDetailScreen.tsx 741ms
โ compiles src/features/threads/ThreadFeed.tsx 698ms
โ compiles src/features/threads/new-task-flow-provider.tsx 471ms
โ compiles src/features/threads/thread-work-log.tsx 345ms
โ caches the thread feed derivation 688ms
Test Files 197 passed (197)
Tests 2193 passed (2193)
Start at 02:54:25
Duration 43.55s (import 36%, transform 28%, tests 25%, setup 9%, environment 3%)
---
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=__d82b6c0a-3cdb-457d-8e37-a65b45b82d92.__actions_cache]
Post job cleanup.
[command]/usr/bin/tar --posix -cf cache.tzst --exclude cache.tzst -P -C /home/runner/_work/t3code/t3code --files-from manifest.txt --use-compress-program zstdmt
Failed to save: Unable to reserve cache with key pnpm-full-v1-Linux-X64-045caa51c4b226597018f0d0c699ccc3936ad58bb7e4b01dc2f26bb9d6fd8aef, another job may be creating this cache.
##[end-action id=__d82b6c0a-3cdb-457d-8e37-a65b45b82d92.__actions_cache;outcome=success;conclusion=success;duration_ms=3709]
##[start-action display=Cache Vite+;id=__d82b6c0a-3cdb-457d-8e37-a65b45b82d92.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=__d82b6c0a-3cdb-457d-8e37-a65b45b82d92.vp_cache;outcome=success;conclusion=success;duration_ms=62]
Post job cleanup.
[command]/usr/local/bin/git version
git version 2.55.0
Temporarily overriding HOME='/home/runner/_work/_temp/f4f9bb61-4f15-4cab-ad0b-55dffdd07cf7' 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: 150
BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 380
BLACKSMITH_CHECK_RUN_ID: 120759141408
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