GitHub check

Whole log, 149 KB
Current runner version: '2.338.1'
Runner name: 'blacksmith-4vcpu-ubuntu-2404-ht32ykvnxeuutwzw'
Runner group name: 'blacksmith scale sets - blacksmith-4vcpu-ubuntu-2404'
Machine name: 'ip-172-31-73-130'
▸ GITHUB_TOKEN Permissions
Contents: read
Metadata: read
Secret source: Actions
Cache mode: write
Prepare workflow directory
Prepare all required actions
Getting action download info
Download action repository 'actions/checkout@v6' (SHA:d23441a48e516b6c34aea4fa41551a30e30af803)
Download action repository 'actions/cache@v6' (SHA:55cc8345863c7cc4c66a329aec7e433d2d1c52a9)
Download action repository 'actions/upload-artifact@v7' (SHA:cf430e030ddbb5b0abf93d22962f4752f3646cd9)
Setting BLACKSMITH_ACTIONS_RESULTS_URL to https://results-receiver.actions.githubusercontent.com/
Complete job name: Test Server 3
A job started hook has been configured by the self-hosted runner administrator
▸ Run '/setup.sh'
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 222
  BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 569
  BLACKSMITH_CHECK_RUN_ID: 125666512090
  BLACKSMITH_JOB_DISPLAY_NAME: Test Server 3
  GITHUB_ACTIONS_CACHE_MODE: write
Logging daemon started (blacksmithd for logs)
Results daemon started (blacksmithd for results)
Background adoption and SSH setup started (PID: 2951)

----------------------------------------
View this job: https://app.blacksmith.sh/pingdotgg/runs/41559532101/jobs/125666512090
SSH Access (using your GitHub SSH key):
  ssh -p 64002 runner@blacksmith-4vcpu-ubuntu-2404-ht32ykvnxeuutwzw.vm.blacksmith.sh

No GitHub SSH key? Add one at:
https://docs.github.com/en/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account

----------------------------------------

VM ID: blacksmith-4vcpu-ubuntu-2404-ht32ykvnxeuutwzw
Host: production-152.236.30.231-x8664
Host Agent PID: 265909
Host Agent Git SHA: 37436a538
Host CPU Manufacturer: AuthenticAMD
Blacksmith Host Generation: gen 2
Petname: production-desired-escargot-30e508bd
Region: us-east
Rootfs Version: ubuntu24-full-x64-081926
OS Version: Ubuntu 24.04.4 LTS

Enabling Blacksmith transparent cache
▸ Run actions/checkout@v6
with:
  fetch-depth: 2
  sparse-checkout: /*
!/.repos/
!/apps/mobile/modules/t3-terminal/Vendor/**/*.a

  sparse-checkout-cone-mode: false
  repository: pingdotgg/t3code
  token: ***
  ssh-strict: true
  ssh-user: git
  persist-credentials: true
  clean: true
  fetch-tags: false
  show-progress: true
  lfs: false
  submodules: false
  set-safe-directory: true
  allow-unsafe-pr-checkout: false
env:
  BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 222
  BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 569
  GITHUB_REPO_NAME: pingdotgg/t3code
Syncing repository: pingdotgg/t3code
▸ Getting Git version info
Working directory is '/home/runner/_work/t3code/t3code'
[command]/usr/local/bin/git version
git version 2.55.0
Temporarily overriding HOME='/home/runner/_work/_temp/ccffe3cd-55b9-4252-8aad-64d0d61d05d1' 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
Deleting the contents of '/home/runner/_work/t3code/t3code'
▸ Determining repository object format
▸ Initializing the repository
[command]/usr/local/bin/git init /home/runner/_work/t3code/t3code
hint: Using 'master' as the name for the initial branch. This default branch name
hint: will change to "main" in Git 3.0. To configure the initial branch name
hint: to use in all of your new repositories, which will suppress this warning,
hint: call:
hint:
hint: 	git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: 	git branch -m <name>
hint:
hint: Disable this message with "git config set advice.defaultBranchName false"
Initialized empty Git repository in /home/runner/_work/t3code/t3code/.git/
[command]/usr/local/bin/git remote add origin https://github.com/pingdotgg/t3code
▸ Disabling automatic garbage collection
[command]/usr/local/bin/git config --local gc.auto 0
▸ Setting up auth
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' || :"
Removing HTTP extra header
[command]/usr/local/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader
[command]/usr/local/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :"
Removing includeIf entries pointing to credentials config files
[command]/usr/local/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir:
[command]/usr/local/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url
[command]/usr/local/bin/git config --file /home/runner/_work/_temp/git-credentials-aaacc96e-05f1-486f-853b-7c24231d0526.config http.https://github.com/.extraheader AUTHORIZATION: basic ***
[command]/usr/local/bin/git config --local includeIf.gitdir:/home/runner/_work/t3code/t3code/.git.path /home/runner/_work/_temp/git-credentials-aaacc96e-05f1-486f-853b-7c24231d0526.config
[command]/usr/local/bin/git config --local includeIf.gitdir:/home/runner/_work/t3code/t3code/.git/worktrees/*.path /home/runner/_work/_temp/git-credentials-aaacc96e-05f1-486f-853b-7c24231d0526.config
[command]/usr/local/bin/git config --local includeIf.gitdir:/github/workspace/.git.path /github/runner_temp/git-credentials-aaacc96e-05f1-486f-853b-7c24231d0526.config
[command]/usr/local/bin/git config --local includeIf.gitdir:/github/workspace/.git/worktrees/*.path /github/runner_temp/git-credentials-aaacc96e-05f1-486f-853b-7c24231d0526.config
▸ Fetching the repository
[command]/usr/local/bin/git -c protocol.version=2 fetch --no-tags --prune --no-recurse-submodules --filter=blob:none --depth=2 origin +30533ce610b6407b0ff302171e9d5c322c819623:refs/remotes/pull/22830/merge
From https://github.com/pingdotgg/t3code
 * [new ref]         30533ce610b6407b0ff302171e9d5c322c819623 -> pull/22830/merge
▸ Determining the checkout info
▸ Setting up sparse checkout
[command]/usr/local/bin/git config core.sparseCheckout true
[command]/usr/local/bin/git rev-parse --git-path info/sparse-checkout
.git/info/sparse-checkout
▸ Checking out the ref
[command]/usr/local/bin/git checkout --progress --force refs/remotes/pull/22830/merge
Updating files:   0% (1/7369)
Updating files:   1% (74/7369)
Updating files:   2% (148/7369)
Updating files:   3% (222/7369)
Updating files:   4% (295/7369)
Updating files:   5% (369/7369)
Updating files:   6% (443/7369)
Updating files:   7% (516/7369)
Updating files:   8% (590/7369)
Updating files:   9% (664/7369)
Updating files:  10% (737/7369)
Updating files:  11% (811/7369)
Updating files:  12% (885/7369)
Updating files:  13% (958/7369)
Updating files:  14% (1032/7369)
Updating files:  15% (1106/7369)
Updating files:  16% (1180/7369)
Updating files:  17% (1253/7369)
Updating files:  18% (1327/7369)
Updating files:  19% (1401/7369)
Updating files:  20% (1474/7369)
Updating files:  21% (1548/7369)
Updating files:  22% (1622/7369)
Updating files:  23% (1695/7369)
Updating files:  24% (1769/7369)
Updating files:  25% (1843/7369)
Updating files:  26% (1916/7369)
Updating files:  27% (1990/7369)
Updating files:  28% (2064/7369)
Updating files:  29% (2138/7369)
Updating files:  30% (2211/7369)
Updating files:  31% (2285/7369)
Updating files:  32% (2359/7369)
Updating files:  33% (2432/7369)
Updating files:  34% (2506/7369)
Updating files:  35% (2580/7369)
Updating files:  35% (2601/7369)
Updating files:  36% (2653/7369)
Updating files:  37% (2727/7369)
Updating files:  38% (2801/7369)
Updating files:  39% (2874/7369)
Updating files:  40% (2948/7369)
Updating files:  41% (3022/7369)
Updating files:  42% (3095/7369)
Updating files:  43% (3169/7369)
Updating files:  44% (3243/7369)
Updating files:  45% (3317/7369)
Updating files:  46% (3390/7369)
Updating files:  47% (3464/7369)
Updating files:  48% (3538/7369)
Updating files:  49% (3611/7369)
Updating files:  50% (3685/7369)
Updating files:  51% (3759/7369)
Updating files:  52% (3832/7369)
Updating files:  53% (3906/7369)
Updating files:  54% (3980/7369)
Updating files:  55% (4053/7369)
Updating files:  56% (4127/7369)
Updating files:  57% (4201/7369)
Updating files:  58% (4275/7369)
Updating files:  59% (4348/7369)
Updating files:  60% (4422/7369)
Updating files:  61% (4496/7369)
Updating files:  62% (4569/7369)
Updating files:  63% (4643/7369)
Updating files:  64% (4717/7369)
Updating files:  65% (4790/7369)
Updating files:  66% (4864/7369)
Updating files:  67% (4938/7369)
Updating files:  68% (5011/7369)
Updating files:  69% (5085/7369)
Updating files:  70% (5159/7369)
Updating files:  71% (5232/7369)
Updating files:  72% (5306/7369)
Updating files:  73% (5380/7369)
Updating files:  74% (5454/7369)
Updating files:  75% (5527/7369)
Updating files:  76% (5601/7369)
Updating files:  77% (5675/7369)
Updating files:  78% (5748/7369)
Updating files:  79% (5822/7369)
Updating files:  80% (5896/7369)
Updating files:  81% (5969/7369)
Updating files:  82% (6043/7369)
Updating files:  83% (6117/7369)
Updating files:  84% (6190/7369)
Updating files:  85% (6264/7369)
Updating files:  86% (6338/7369)
Updating files:  87% (6412/7369)
Updating files:  88% (6485/7369)
Updating files:  89% (6559/7369)
Updating files:  90% (6633/7369)
Updating files:  91% (6706/7369)
Updating files:  92% (6780/7369)
Updating files:  93% (6854/7369)
Updating files:  94% (6927/7369)
Updating files:  95% (7001/7369)
Updating files:  96% (7075/7369)
Updating files:  97% (7148/7369)
Updating files:  98% (7222/7369)
Updating files:  99% (7296/7369)
Updating files: 100% (7369/7369)
Updating files: 100% (7369/7369), done.
Note: switching to 'refs/remotes/pull/22830/merge'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by switching back to a branch.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -c with the switch command. Example:

  git switch -c <new-branch-name>

Or undo this operation with:

  git switch -

Turn off this advice by setting config variable advice.detachedHead to false

HEAD is now at 30533ce Merge d3d0823a81aa5410efa80ef910de9269da707331 into f6503f0e717f5d577a897149b4ceeb3d1bf00b3a
[command]/usr/local/bin/git log -1 --format=%H
30533ce610b6407b0ff302171e9d5c322c819623
Prepare all required actions
▸ Run ./.github/actions/ci-changes
env:
  BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 222
  BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 569
  GITHUB_REPO_NAME: pingdotgg/t3code
##[start-action display=Run set -uo pipefail;id=changes.detect]
▸ Run set -uo pipefail
set -uo pipefail

decide() {
  node .github/scripts/ci-changes.cjs "$@" | tee -a "$GITHUB_OUTPUT"
  exit "${PIPESTATUS[0]}"
}

fail_open() {
  echo "$* Running every job."
  decide
}

# Reads the change from git rather than the REST API: every job that
# runs this shares the repository's 1,000 requests/hour GITHUB_TOKEN quota.
if [[ "$EVENT_NAME" == pull_request ]]; then
  # A pull request checks out GitHub's merge commit with fetch-depth: 2,
  # so its first parent is the base branch and the diff is the PR's change.
  base=HEAD^1
  mode=()
else
  base=$BEFORE_SHA
  git fetch --quiet --no-tags --depth=1 --filter=blob:none origin "$base" \
    || fail_open "Could not fetch ${base}."
  # main keeps a full run as the backstop for anything the gate misses.
  mode=(--full)
fi

# --no-renames lists a rename as its old and new path: renaming a file out
# of a package changes that package just like editing it. It also keeps
# git from fetching file contents to score renames.
git diff --name-only --no-renames "$base" HEAD > "$RUNNER_TEMP/changed-paths" \
  || fail_open "Could not diff against ${base}."
decide --paths "$RUNNER_TEMP/changed-paths" "${mode[@]}"
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 222
  BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 569
  GITHUB_REPO_NAME: pingdotgg/t3code
  EVENT_NAME: pull_request
  BEFORE_SHA: e51cff5e060e071e0132e186e070f964ce65e085
Runs everything: knip.jsonc
Affected packages: @t3tools/client-runtime, @t3tools/contracts, @t3tools/desktop, @t3tools/evals, @t3tools/marketing, @t3tools/mobile, @t3tools/oxlint-plugin-t3code, @t3tools/provider-acp, @t3tools/provider-acp-registry, @t3tools/provider-core, @t3tools/provider-cursor, @t3tools/provider-fx, @t3tools/provider-grok, @t3tools/provider-kiro, @t3tools/provider-muse, @t3tools/provider-opencode, @t3tools/provider-pi, @t3tools/provider-testing, @t3tools/scripts, @t3tools/secret-provider-core, @t3tools/secret-provider-definitions, @t3tools/secret-provider-onepassword, @t3tools/shared, @t3tools/source-control-azure-devops, @t3tools/source-control-bitbucket, @t3tools/source-control-core, @t3tools/source-control-definitions, @t3tools/source-control-forgejo, @t3tools/source-control-gitcafe, @t3tools/source-control-github, @t3tools/source-control-gitlab, @t3tools/source-control-testing, @t3tools/ssh, @t3tools/tailscale, @t3tools/task-cache, @t3tools/web, effect-acp, effect-codex-app-server, t3, t3code-relay
typecheck=true
build=true
test=true
test_packages=
test_web=true
test_server=true
rust=true
release_smoke=true
mobile_native=false
##[end-action id=changes.detect;outcome=success;conclusion=success;duration_ms=65]
Prepare all required actions
Getting action download info
Download action repository 'actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9' (SHA:55cc8345863c7cc4c66a329aec7e433d2d1c52a9)
Download action repository 'voidzero-dev/setup-vp@250f29ce396baf5e8f24498e17c0dfdebabc26eb' (SHA:250f29ce396baf5e8f24498e17c0dfdebabc26eb)
▸ Run ./.github/actions/setup-ci-deps
with:
  task-cache-read-token: ***
  install: true
env:
  BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 222
  BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 569
  GITHUB_REPO_NAME: pingdotgg/t3code
##[start-action display=Resolve Vite+ version;id=__self.vp]
▸ Run echo "version=$(sed -nE 's/^  vite-plus: ([0-9][^ ]*)$/\1/p' pnpm-workspace.yaml)" >> "$GITHUB_OUTPUT"
echo "version=$(sed -nE 's/^  vite-plus: ([0-9][^ ]*)$/\1/p' pnpm-workspace.yaml)" >> "$GITHUB_OUTPUT"
echo "node=$(jq -r '.engines.node' package.json)" >> "$GITHUB_OUTPUT"
echo "pnpm=$(jq -r '.packageManager' package.json)" >> "$GITHUB_OUTPUT"
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 222
  BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 569
  GITHUB_REPO_NAME: pingdotgg/t3code
##[end-action id=__self.vp;outcome=success;conclusion=success;duration_ms=11]
##[start-action display=Cache Vite+;id=__self.vp_cache]
▸ Run actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9
with:
  path: ~/.vite-plus
  key: vite-plus-home-v2-Linux-X64-1.4.0-node26.12.1-pnpm@12.14.0
  enableCrossOsArchive: false
  fail-on-cache-miss: false
  lookup-only: false
  save-always: false
env:
  BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 222
  BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 569
  GITHUB_REPO_NAME: pingdotgg/t3code
Cache hit for: vite-plus-home-v2-Linux-X64-1.4.0-node26.12.1-pnpm@12.14.0
Received 173777970 of 173777970 (100.0%), 662.9 MBs/sec
Cache Size: ~166 MB (173777970 B)
[command]/usr/bin/tar -xf /home/runner/_work/_temp/96ecc06e-9307-4064-afe0-7e97c431a38f/cache.tzst -P -C /home/runner/_work/t3code/t3code --use-compress-program unzstd
Cache restored successfully
Cache restored from key: vite-plus-home-v2-Linux-X64-1.4.0-node26.12.1-pnpm@12.14.0
##[end-action id=__self.vp_cache;outcome=success;conclusion=success;duration_ms=1151]
##[start-action display=Use cached Vite+;id=__self.__run]
▸ Run echo "$HOME/.vite-plus/bin" >> "$GITHUB_PATH"
echo "$HOME/.vite-plus/bin" >> "$GITHUB_PATH"
"$HOME/.vite-plus/bin/vp" env use "26.12.1"
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 222
  BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 569
  GITHUB_REPO_NAME: pingdotgg/t3code
Using Node.js v26.12.1 (resolved from 26.12.1)
##[end-action id=__self.__run;outcome=success;conclusion=success;duration_ms=22]
##[start-action display=Setup Vite+;id=__self.__voidzero-dev_setup-vp]
##[end-action id=__self.__voidzero-dev_setup-vp;outcome=skipped;conclusion=skipped;duration_ms=0]
##[start-action display=Resolve pnpm store;id=__self.pnpm_store]
▸ Run echo "path=$(vp pm cache dir)" >> "$GITHUB_OUTPUT"
echo "path=$(vp pm cache dir)" >> "$GITHUB_OUTPUT"
metadata_dir="${pnpm_config_cache_dir:-$RUNNER_TEMP/pnpm-metadata}"
echo "pnpm_config_cache_dir=$metadata_dir" >> "$GITHUB_ENV"
echo "verified=$metadata_dir/lockfile-verified.jsonl" >> "$GITHUB_OUTPUT"
if [[ -z "$INSTALL_ARGS" ]]; then
  echo "namespace=full" >> "$GITHUB_OUTPUT"
else
  echo "namespace=filtered-$(printf '%s' "$INSTALL_ARGS" | cksum | cut -d' ' -f1)" >> "$GITHUB_OUTPUT"
fi
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 222
  BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 569
  GITHUB_REPO_NAME: pingdotgg/t3code
  INSTALL_ARGS:
##[end-action id=__self.pnpm_store;outcome=success;conclusion=success;duration_ms=28]
##[start-action display=Restore pnpm store;id=__self.pnpm_cache]
▸ Run actions/cache/restore@55cc8345863c7cc4c66a329aec7e433d2d1c52a9
with:
  path: /home/runner/.local/share/pnpm/store/v11
  key: pnpm-full-v1-Linux-X64-03fb2742c631a1645eb98c873496bc22b12ef83b7b1fc1a0b01f7ffec2eac1e7
  restore-keys: pnpm-full-v1-Linux-X64-03fb2742c631a1645eb98c873496bc22b12ef83b7b1fc1a0b01f7ffec2eac1e7
pnpm-full-v1-Linux-X64-
pnpm-full-v1-Linux-X64-

  enableCrossOsArchive: false
  fail-on-cache-miss: false
  lookup-only: false
env:
  BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 222
  BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 569
  GITHUB_REPO_NAME: pingdotgg/t3code
  pnpm_config_cache_dir: /home/runner/_work/_temp/pnpm-metadata
Cache hit for: pnpm-full-v1-Linux-X64-03fb2742c631a1645eb98c873496bc22b12ef83b7b1fc1a0b01f7ffec2eac1e7
Received 704643072 of 854301811 (82.5%), 669.3 MBs/sec
Received 854301811 of 854301811 (100.0%), 682.3 MBs/sec
Cache Size: ~815 MB (854301811 B)
[command]/usr/bin/tar -xf /home/runner/_work/_temp/25037530-3ec8-409d-95b7-9fec8fe04b72/cache.tzst -P -C /home/runner/_work/t3code/t3code --use-compress-program unzstd
Cache restored successfully
Cache restored from key: pnpm-full-v1-Linux-X64-03fb2742c631a1645eb98c873496bc22b12ef83b7b1fc1a0b01f7ffec2eac1e7
##[end-action id=__self.pnpm_cache;outcome=success;conclusion=success;duration_ms=5022]
##[start-action display=Restore lockfile verification;id=__self.pnpm_verified]
▸ Run actions/cache/restore@55cc8345863c7cc4c66a329aec7e433d2d1c52a9
with:
  path: /home/runner/_work/_temp/pnpm-metadata/lockfile-verified.jsonl
  key: pnpm-verified-v1-03fb2742c631a1645eb98c873496bc22b12ef83b7b1fc1a0b01f7ffec2eac1e7
  enableCrossOsArchive: false
  fail-on-cache-miss: false
  lookup-only: false
env:
  BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 222
  BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 569
  GITHUB_REPO_NAME: pingdotgg/t3code
  pnpm_config_cache_dir: /home/runner/_work/_temp/pnpm-metadata
Cache hit for: pnpm-verified-v1-03fb2742c631a1645eb98c873496bc22b12ef83b7b1fc1a0b01f7ffec2eac1e7
Received 1977 of 1977 (100.0%), 0.4 MBs/sec
Cache Size: ~0 MB (1977 B)
[command]/usr/bin/tar -xf /home/runner/_work/_temp/f19591be-da38-4e46-a89b-aa58aed64232/cache.tzst -P -C /home/runner/_work/t3code/t3code --use-compress-program unzstd
Cache restored successfully
Cache restored from key: pnpm-verified-v1-03fb2742c631a1645eb98c873496bc22b12ef83b7b1fc1a0b01f7ffec2eac1e7
##[end-action id=__self.pnpm_verified;outcome=success;conclusion=success;duration_ms=287]
##[start-action display=Install dependencies;id=__self.__run_2]
▸ Run vp install $INSTALL_ARGS
vp install $INSTALL_ARGS
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 222
  BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 569
  GITHUB_REPO_NAME: pingdotgg/t3code
  pnpm_config_cache_dir: /home/runner/_work/_temp/pnpm-metadata
  INSTALL_ARGS:
Scope: all 41 workspace projects
✓ Lockfile passes supply-chain policies (verified 53m ago)
Lockfile is up to date, resolution step is skipped
Packages are hard linked from the content-addressable store to the virtual store.
  Content-addressable store is at: /home/runner/.local/share/pnpm/store/v11
  Virtual store is at:             node_modules/.pnpm
Packages: +1663
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Progress: resolved 1663, reused 1659, downloaded 0, added 1663, done
. prepare$ vp config --no-agent
. prepare: Done

devDependencies:
+ @coderabbitai/config 1.1.0
+ @shadcn/lint 0.1.5
+ @types/node 24.12.4
+ knip 6.34.0
+ typescript <- @tsc-rs/typescript 0.8.0
+ vite-plus 1.4.0

Done in 1.4s using pnpm v12.14.0
##[end-action id=__self.__run_2;outcome=success;conclusion=success;duration_ms=1441]
##[start-action display=Save lockfile verification;id=__self.__actions_cache]
##[end-action id=__self.__actions_cache;outcome=skipped;conclusion=skipped;duration_ms=0]
##[start-action display=Save pnpm store;id=__self.__actions_cache_2]
##[end-action id=__self.__actions_cache_2;outcome=skipped;conclusion=skipped;duration_ms=0]
##[start-action display=Enable shared task cache;id=__self.__run_3]
▸ Run node infra/task-cache/scripts/install-ci.ts
node infra/task-cache/scripts/install-ci.ts
if [[ ( "$GITHUB_EVENT_NAME" == pull_request && "$GITHUB_BASE_REF" == main ) || ( "$GITHUB_EVENT_NAME" == push && "$GITHUB_REF" == refs/heads/main ) ]]; then
  echo 'VP_REMOTE_CACHE=read-write' >> "$GITHUB_ENV"
else
  echo 'VP_REMOTE_CACHE=read' >> "$GITHUB_ENV"
fi
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 222
  BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 569
  GITHUB_REPO_NAME: pingdotgg/t3code
  pnpm_config_cache_dir: /home/runner/_work/_temp/pnpm-metadata
  T3_TASK_CACHE_READ_TOKEN: ***
##[end-action id=__self.__run_3;outcome=success;conclusion=success;duration_ms=75]
▸ Run echo "version=$(node -p "require('./apps/server/node_modules/playwright-core/package.json').version")" >> "$GITHUB_OUTPUT"
echo "version=$(node -p "require('./apps/server/node_modules/playwright-core/package.json').version")" >> "$GITHUB_OUTPUT"
shell: /usr/bin/bash -e {0}
env:
  BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 222
  BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 569
  GITHUB_REPO_NAME: pingdotgg/t3code
  pnpm_config_cache_dir: /home/runner/_work/_temp/pnpm-metadata
  BASH_ENV: /home/runner/_work/_temp/t3-task-cache.sh
  VP_REMOTE_CACHE: read-write
▸ Run actions/cache@v6
with:
  path: ~/.cache/ms-playwright
  key: playwright-chromium-shell-Linux-X64-1.60.0
  enableCrossOsArchive: false
  fail-on-cache-miss: false
  lookup-only: false
  save-always: false
env:
  BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 222
  BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 569
  GITHUB_REPO_NAME: pingdotgg/t3code
  pnpm_config_cache_dir: /home/runner/_work/_temp/pnpm-metadata
  BASH_ENV: /home/runner/_work/_temp/t3-task-cache.sh
  VP_REMOTE_CACHE: read-write
Cache hit for: playwright-chromium-shell-Linux-X64-1.60.0
Received 106492750 of 106492750 (100.0%), 735.9 MBs/sec
Cache Size: ~102 MB (106492750 B)
[command]/usr/bin/tar -xf /home/runner/_work/_temp/7e0c5425-3152-444e-8fd3-59d13a130074/cache.tzst -P -C /home/runner/_work/t3code/t3code --use-compress-program unzstd
Cache restored successfully
Cache restored from key: playwright-chromium-shell-Linux-X64-1.60.0
▸ Run browser=$(find "$HOME/.cache/ms-playwright" -name chrome-headless-shell -type f -print -quit)
browser=$(find "$HOME/.cache/ms-playwright" -name chrome-headless-shell -type f -print -quit)
test -n "$browser"
if ldd "$browser" | grep '=> not found'; then
  node apps/server/node_modules/playwright-core/cli.js install-deps chromium
fi
shell: /usr/bin/bash -e {0}
env:
  BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 222
  BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 569
  GITHUB_REPO_NAME: pingdotgg/t3code
  pnpm_config_cache_dir: /home/runner/_work/_temp/pnpm-metadata
  BASH_ENV: /home/runner/_work/_temp/t3-task-cache.sh
  VP_REMOTE_CACHE: read-write
▸ Run vp run test:cached -- --shard 3/8 --uncached apps/server/integration/transferBudgetV2.integration.test.ts --verify-hits 1 --report "/home/runner/_work/_temp/test-cache-3.json" apps/server
vp run test:cached -- --shard 3/8 --uncached apps/server/integration/transferBudgetV2.integration.test.ts --verify-hits 1 --report "/home/runner/_work/_temp/test-cache-3.json" apps/server
shell: /usr/bin/bash -e {0}
env:
  BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 222
  BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 569
  GITHUB_REPO_NAME: pingdotgg/t3code
  pnpm_config_cache_dir: /home/runner/_work/_temp/pnpm-metadata
  BASH_ENV: /home/runner/_work/_temp/t3-task-cache.sh
  VP_REMOTE_CACHE: read-write
  T3CODE_TRANSFER_BUDGET_REPORT_PATH: /home/runner/_work/_temp/t3code-transfer-budget.md
  T3CODE_TRANSFER_BUDGET_RESULT_PATH: /home/runner/_work/_temp/thread-transfer-result.json
$ node scripts/test-cached.ts -- --shard 3/8 --uncached apps/server/integration/transferBudgetV2.integration.test.ts --verify-hits 1 --report /home/runner/_work/_temp/test-cache-3.json apps/server ⊘ cache disabled
Cached tests: 57 files, 1 per task, concurrency 1
~/apps/server$ vp test run 'src/guest/http.test.ts' ○ cache miss: 'evidence' added in 'apps/server/scripts', executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/guest/http.test.ts (1 test) 12ms

 Test Files  1 passed (1)
      Tests  1 passed (1)
   Start at  01:24:50
   Duration  4.19s (transform 72%, import 27%, setup 1%)


~/apps/server$ vp test run 'src/orchestration-v2/WireProjection.test.ts' ○ cache miss: 'evidence' added in 'apps/server/scripts', executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/orchestration-v2/WireProjection.test.ts (17 tests) 15ms

 Test Files  1 passed (1)
      Tests  17 passed (17)
   Start at  01:24:55
   Duration  623ms (import 65%, transform 27%, setup 6%, tests 3%)


~/apps/server$ vp test run 'src/scheduling/Scheduler.test.ts' ○ cache miss: 'evidence' added in 'apps/server/scripts', executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/scheduling/Scheduler.test.ts (4 tests) 11ms

 Test Files  1 passed (1)
      Tests  4 passed (4)
   Start at  01:24:57
   Duration  182ms (import 39%, setup 29%, transform 20%, tests 9%, worker 2%)


~/apps/server$ vp test run 'src/cloud/bootService.test.ts' ○ cache miss: 'evidence' added in 'apps/server/scripts', executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/cloud/bootService.test.ts (35 tests) 140ms

 Test Files  1 passed (1)
      Tests  35 passed (35)
   Start at  01:24:58
   Duration  385ms (tests 44%, import 29%, transform 16%, setup 11%, worker 1%)


~/apps/server$ vp test run 'src/orchestration-v2/PullRequestSyncReactor.test.ts' ○ cache miss: 'apps/server/src/orchestration-v2/Adapters/CodexAdapterV2.ts' modified, executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

(node:3986) ExperimentalWarning: v8.queryObjects() is an experimental feature and might change at any time
(Use `node --trace-warnings ...` to show where the warning was created)
 ✓ src/orchestration-v2/PullRequestSyncReactor.test.ts (52 tests) 1196ms
   ✓ PullRequestSyncReactor (52)
     ✓ lets a finished sweep's links go while a cache keeps the fiber that read them 1108ms

 Test Files  1 passed (1)
      Tests  52 passed (52)
   Start at  01:25:00
   Duration  2.71s (tests 45%, import 37%, transform 16%, setup 1%)


~/apps/server$ vp test run 'src/provider/acp/AntigravityAcpSupport.test.ts' ○ cache miss: 'evidence' added in 'apps/server/scripts', executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/provider/acp/AntigravityAcpSupport.test.ts (51 tests) 41ms

 Test Files  1 passed (1)
      Tests  51 passed (51)
   Start at  01:25:03
   Duration  524ms (import 61%, transform 22%, tests 9%, setup 7%)


~/apps/server$ vp test run 'src/assets/AssetAccess.test.ts' ○ cache miss: 'apps/server/src/orchestration-v2/Adapters/CodexAdapterV2.ts' modified, executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/assets/AssetAccess.test.ts (36 tests) 339ms

 Test Files  1 passed (1)
      Tests  36 passed (36)
   Start at  01:25:05
   Duration  1.89s (import 55%, transform 24%, tests 18%, setup 2%)


~/apps/server$ vp test run 'src/orchestration-v2/CheckpointScopeOwnership.test.ts' ○ cache miss: 'evidence' added in 'apps/server/scripts', executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/orchestration-v2/CheckpointScopeOwnership.test.ts (1 test) 53ms

 Test Files  1 passed (1)
      Tests  1 passed (1)
   Start at  01:25:08
   Duration  1.56s (import 67%, transform 27%, tests 4%, setup 2%)


~/apps/server$ vp test run 'src/preview/ServerBrowserContexts.test.ts' ○ cache miss: 'evidence' added in 'apps/server/scripts', executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/preview/ServerBrowserContexts.test.ts (12 tests) 9ms

 Test Files  1 passed (1)
      Tests  12 passed (12)
   Start at  01:25:11
   Duration  518ms (import 70%, transform 20%, setup 7%, tests 2%, worker 1%)


~/apps/server$ vp test run 'src/mcp/McpInvocationContext.test.ts' ○ cache miss: remote cache fetch failed, executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/mcp/McpInvocationContext.test.ts (3 tests) 6ms

 Test Files  1 passed (1)
      Tests  3 passed (3)
   Start at  01:25:12
   Duration  345ms (import 65%, transform 20%, setup 12%, tests 2%, worker 1%)


~/apps/server$ vp test run 'src/orchestration-v2/toolOutputImageBytes.test.ts' ○ cache miss: 'evidence' added in 'apps/server/scripts', executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/orchestration-v2/toolOutputImageBytes.test.ts (9 tests) 12ms

 Test Files  1 passed (1)
      Tests  9 passed (9)
   Start at  01:25:13
   Duration  366ms (import 64%, transform 21%, setup 11%, tests 4%, worker 1%)


~/apps/server$ vp test run 'src/sourceControl/SourceControlProviderRegistry.test.ts' ○ cache miss: 'evidence' added in 'apps/server/scripts', executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/sourceControl/SourceControlProviderRegistry.test.ts (10 tests) 44ms

 Test Files  1 passed (1)
      Tests  10 passed (10)
   Start at  01:25:14
   Duration  641ms (import 58%, transform 28%, tests 8%, setup 6%)


~/apps/server$ vp test run 'src/cloud/pinnedRuntime.test.ts' ○ cache miss: 'evidence' added in 'apps/server/scripts', executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/cloud/pinnedRuntime.test.ts (15 tests) 171ms

 Test Files  1 passed (1)
      Tests  15 passed (15)
   Start at  01:25:16
   Duration  403ms (tests 50%, import 26%, setup 12%, transform 10%, worker 1%)


~/apps/server$ vp test run 'src/orchestration-v2/RemoteDelegatedTask.test.ts' ○ cache miss: 'apps/server/src/orchestration-v2/Adapters/CodexAdapterV2.ts' modified, executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/orchestration-v2/RemoteDelegatedTask.test.ts (4 tests) 129ms

 Test Files  1 passed (1)
      Tests  4 passed (4)
   Start at  01:25:18
   Duration  1.71s (import 61%, transform 29%, tests 8%, setup 2%)


~/apps/server$ vp test run 'src/provider/antigravityUsageLimits.test.ts' ○ cache miss: 'evidence' added in 'apps/server/scripts', executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/provider/antigravityUsageLimits.test.ts (16 tests) 79ms

 Test Files  1 passed (1)
      Tests  16 passed (16)
   Start at  01:25:21
   Duration  312ms (import 41%, tests 32%, setup 15%, transform 12%, worker 1%)


~/apps/server$ vp test run 'src/auth/EnvironmentAuth.test.ts' ○ cache miss: 'evidence' added in 'apps/server/scripts', executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/auth/EnvironmentAuth.test.ts (22 tests) 722ms

 Test Files  1 passed (1)
      Tests  22 passed (22)
   Start at  01:25:22
   Duration  1.37s (tests 55%, import 28%, transform 14%, setup 3%)


~/apps/server$ vp test run 'src/orchestration-v2/IdleCompaction.test.ts' ○ cache miss: 'evidence' added in 'apps/server/scripts', executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/orchestration-v2/IdleCompaction.test.ts (13 tests) 15ms

 Test Files  1 passed (1)
      Tests  13 passed (13)
   Start at  01:25:25
   Duration  1.40s (import 69%, transform 27%, setup 2%, tests 1%)


~/apps/server$ vp test run 'src/project/ProjectMutation.test.ts' ○ cache miss: 'azureDevOpsChangeRequestTemplate.ts' removed from 'packages/source-control-azure-devops/src/server', executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/project/ProjectMutation.test.ts (2 tests) 6ms

 Test Files  1 passed (1)
      Tests  2 passed (2)
   Start at  01:25:27
   Duration  704ms (import 65%, transform 28%, setup 5%, tests 1%)


~/apps/server$ vp test run 'src/mcp/McpToolAccess.test.ts' ○ cache miss: 'apps/server/src/orchestration-v2/Adapters/CodexAdapterV2.ts' modified, executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/mcp/McpToolAccess.test.ts (71 tests) 130ms

 Test Files  1 passed (1)
      Tests  71 passed (71)
   Start at  01:25:29
   Duration  2.12s (import 54%, transform 38%, tests 6%, setup 2%)


~/apps/server$ vp test run 'src/peer/PeerMcpClient.test.ts' ○ cache miss: 'apps/server/src/orchestration-v2/Adapters/CodexAdapterV2.ts' modified, executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/peer/PeerMcpClient.test.ts (3 tests) 293ms

 Test Files  1 passed (1)
      Tests  3 passed (3)
   Start at  01:25:32
   Duration  1.98s (import 60%, transform 22%, tests 15%, setup 2%)


~/apps/server$ vp test run 'src/telemetry/FeatureUsage.test.ts' ○ cache miss: 'evidence' added in 'apps/server/scripts', executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/telemetry/FeatureUsage.test.ts (5 tests) 5ms

 Test Files  1 passed (1)
      Tests  5 passed (5)
   Start at  01:25:35
   Duration  365ms (import 63%, transform 23%, setup 11%, tests 2%, worker 1%)


~/apps/server$ vp test run 'src/cloud/traceRelayRequest.test.ts' ○ cache miss: 'evidence' added in 'apps/server/scripts', executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/cloud/traceRelayRequest.test.ts (2 tests) 18ms

 Test Files  1 passed (1)
      Tests  2 passed (2)
   Start at  01:25:36
   Duration  226ms (import 51%, setup 21%, transform 15%, tests 11%, worker 1%)


~/apps/server$ vp test run 'src/orchestration-v2/ThreadLiveEventCoalescer.test.ts' ○ cache miss: 'evidence' added in 'apps/server/scripts', executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/orchestration-v2/ThreadLiveEventCoalescer.test.ts (12 tests) 26ms

 Test Files  1 passed (1)
      Tests  12 passed (12)
   Start at  01:25:37
   Duration  416ms (import 57%, transform 24%, setup 11%, tests 7%, worker 1%)


~/apps/server$ vp test run 'src/provider/providerInstallation.test.ts' ○ cache miss: 'apps/server/src/orchestration-v2/Adapters/CodexAdapterV2.ts' modified, executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/provider/providerInstallation.test.ts (2 tests) 14ms

 Test Files  1 passed (1)
      Tests  2 passed (2)
   Start at  01:25:38
   Duration  1.40s (import 70%, transform 26%, setup 3%, tests 1%)


~/apps/server$ vp test run 'src/auth/McpOAuth.test.ts' ○ cache miss: 'apps/server/src/orchestration-v2/Adapters/CodexAdapterV2.ts' modified, executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

stdout | src/auth/McpOAuth.test.ts > derives discovery metadata from the origin the client reached
[01:25:42.856] INFO (#14): Migrations ran successfully {
  migrations: [
    '1_OrchestrationEvents',
    '2_OrchestrationCommandReceipts',
    '3_CheckpointDiffBlobs',
    '4_ProviderSessionRuntime',
    '5_Projections',
    '6_ProjectionThreadSessionRuntimeModeColumns',
    '7_ProjectionThreadMessageAttachments',
    '8_ProjectionThreadActivitySequence',
    '9_ProviderSessionRuntimeMode',
    '10_ProjectionThreadsRuntimeMode',
    '11_OrchestrationThreadCreatedRuntimeMode',
    '12_ProjectionThreadsInteractionMode',
    '13_ProjectionThreadProposedPlans',
    '14_ProjectionThreadProposedPlanImplementation',
    '15_ProjectionTurnsSourceProposedPlan',
    '16_CanonicalizeModelSelections',
    '17_ProjectionThreadsArchivedAt',
    '18_ProjectionThreadsArchivedAtIndex',
    '19_ProjectionSnapshotLookupIndexes',
    '20_AuthAccessManagement',
    '21_AuthSessionClientMetadata',
    '22_AuthSessionLastConnectedAt',
    '23_ProjectionThreadShellSummary',
    '24_BackfillProjectionThreadShellSummary',
    '25_CleanupInvalidProjectionPendingApprovals',
    '26_CanonicalizeModelSelectionOptions',
    '27_ProviderSessionRuntimeInstanceId',
    '28_ProjectionThreadSessionInstanceId',
    '29_ProjectionThreadDetailOrderingIndexes',
    '30_ProjectionThreadShellArchiveIndexes',
    '31_AuthAuthorizationScopes',
    '32_AuthPairingProofKeyThumbprint',
    '33_ProjectionThreadsSettled',
    '34_ProjectionThreadsSnoozed',
    '35_ProjectionThreadTitleRegeneration',
    '36_ProjectionThreadsPinned',
    '37_ProjectionTurnsKeysetIndex',
    '38_ProjectionThreadsPinOrderKey',
    '39_ProjectionProjectsDefaultThreadEnvMode',
    '40_ProjectionProjectFaviconPath',
    '41_AuthSessionClientConnection',
    '42_ProjectionThreadLinkedPullRequest',
    '43_ProjectionThreadsUnsettledAt',
    '44_ClearAutomaticProjectModelDefaults',
    '45_ProjectionProjectsAutoPull',
    '46_RepairAutomaticSettlementTimestamps',
    '47_ProjectionProjectIcon',
    '48_ProjectionThreadBranchPullRequest',
    '49_ProjectionThreadsActiveOrderKey',
    '50_ProjectionThreadPullRequests',
    '51_ProjectionThreadMessageContext',
    '52_ProjectionThreadTitleState',
    '53_PullRequestFilesViewed',
    '54_ProjectionThreadsAutoSettleDisabledAt',
    '55_OrchestrationV2',
    '56_RemoveRedundantProjectionIndexes',
    '57_ScheduledTaskWebhooks',
    '58_WebhookRelayDeliveries',
    '59_McpAppModelContext',
    '60_ThreadSnapshotWindowIndexes',
    '61_PullRequestReviewGuides',
    '62_ThreadFailureLookupIndex',
    '63_DropUnusedV1Projections',
    '64_CanonicalizeThreadPullRequestLinks',
    '65_CodexUsageNativeTurnIndex',
    '66_RepairClientSettlementTimestamps',
    '67_WebhookDedupe',
    '68_ShellStopRequestIndex',
    '69_ThreadMessageSearch',
    '70_PeerLinks',
    '71_PeerLinkFence',
    '72_WaitingLinkRequestIndex',
    '73_ActiveTurnItemIndexes',
    '74_ExcludeAttachmentPlaceholdersFromSearch',
    '75_SubagentDeliveryState',
    '76_ProjectionProjectsPinArchive',
    '77_RepairBooleanSettledOverride'
  ]
}

stdout | src/auth/McpOAuth.test.ts > registers loopback and https clients and never redirects for an unverified client
[01:25:42.905] INFO (#426): Migrations ran successfully {
  migrations: [
    '1_OrchestrationEvents',
    '2_OrchestrationCommandReceipts',
    '3_CheckpointDiffBlobs',
    '4_ProviderSessionRuntime',
    '5_Projections',
    '6_ProjectionThreadSessionRuntimeModeColumns',
    '7_ProjectionThreadMessageAttachments',
    '8_ProjectionThreadActivitySequence',
    '9_ProviderSessionRuntimeMode',
    '10_ProjectionThreadsRuntimeMode',
    '11_OrchestrationThreadCreatedRuntimeMode',
    '12_ProjectionThreadsInteractionMode',
    '13_ProjectionThreadProposedPlans',
    '14_ProjectionThreadProposedPlanImplementation',
    '15_ProjectionTurnsSourceProposedPlan',
    '16_CanonicalizeModelSelections',
    '17_ProjectionThreadsArchivedAt',
    '18_ProjectionThreadsArchivedAtIndex',
    '19_ProjectionSnapshotLookupIndexes',
    '20_AuthAccessManagement',
    '21_AuthSessionClientMetadata',
    '22_AuthSessionLastConnectedAt',
    '23_ProjectionThreadShellSummary',
    '24_BackfillProjectionThreadShellSummary',
    '25_CleanupInvalidProjectionPendingApprovals',
    '26_CanonicalizeModelSelectionOptions',
    '27_ProviderSessionRuntimeInstanceId',
    '28_ProjectionThreadSessionInstanceId',
    '29_ProjectionThreadDetailOrderingIndexes',
    '30_ProjectionThreadShellArchiveIndexes',
    '31_AuthAuthorizationScopes',
    '32_AuthPairingProofKeyThumbprint',
    '33_ProjectionThreadsSettled',
    '34_ProjectionThreadsSnoozed',
    '35_ProjectionThreadTitleRegeneration',
    '36_ProjectionThreadsPinned',
    '37_ProjectionTurnsKeysetIndex',
    '38_ProjectionThreadsPinOrderKey',
    '39_ProjectionProjectsDefaultThreadEnvMode',
    '40_ProjectionProjectFaviconPath',
    '41_AuthSessionClientConnection',
    '42_ProjectionThreadLinkedPullRequest',
    '43_ProjectionThreadsUnsettledAt',
    '44_ClearAutomaticProjectModelDefaults',
    '45_ProjectionProjectsAutoPull',
    '46_RepairAutomaticSettlementTimestamps',
    '47_ProjectionProjectIcon',
    '48_ProjectionThreadBranchPullRequest',
    '49_ProjectionThreadsActiveOrderKey',
    '50_ProjectionThreadPullRequests',
    '51_ProjectionThreadMessageContext',
    '52_ProjectionThreadTitleState',
    '53_PullRequestFilesViewed',
    '54_ProjectionThreadsAutoSettleDisabledAt',
    '55_OrchestrationV2',
    '56_RemoveRedundantProjectionIndexes',
    '57_ScheduledTaskWebhooks',
    '58_WebhookRelayDeliveries',
    '59_McpAppModelContext',
    '60_ThreadSnapshotWindowIndexes',
    '61_PullRequestReviewGuides',
    '62_ThreadFailureLookupIndex',
    '63_DropUnusedV1Projections',
    '64_CanonicalizeThreadPullRequestLinks',
    '65_CodexUsageNativeTurnIndex',
    '66_RepairClientSettlementTimestamps',
    '67_WebhookDedupe',
    '68_ShellStopRequestIndex',
    '69_ThreadMessageSearch',
    '70_PeerLinks',
    '71_PeerLinkFence',
    '72_WaitingLinkRequestIndex',
    '73_ActiveTurnItemIndexes',
    '74_ExcludeAttachmentPlaceholdersFromSearch',
    '75_SubagentDeliveryState',
    '76_ProjectionProjectsPinArchive',
    '77_RepairBooleanSettledOverride'
  ]
}

stdout | src/auth/McpOAuth.test.ts > signs in with a pairing code and issues a token only /mcp accepts
[01:25:42.949] INFO (#874): Migrations ran successfully {
  migrations: [
    '1_OrchestrationEvents',
    '2_OrchestrationCommandReceipts',
    '3_CheckpointDiffBlobs',
    '4_ProviderSessionRuntime',
    '5_Projections',
    '6_ProjectionThreadSessionRuntimeModeColumns',
    '7_ProjectionThreadMessageAttachments',
    '8_ProjectionThreadActivitySequence',
    '9_ProviderSessionRuntimeMode',
    '10_ProjectionThreadsRuntimeMode',
    '11_OrchestrationThreadCreatedRuntimeMode',
    '12_ProjectionThreadsInteractionMode',
    '13_ProjectionThreadProposedPlans',
    '14_ProjectionThreadProposedPlanImplementation',
    '15_ProjectionTurnsSourceProposedPlan',
    '16_CanonicalizeModelSelections',
    '17_ProjectionThreadsArchivedAt',
    '18_ProjectionThreadsArchivedAtIndex',
    '19_ProjectionSnapshotLookupIndexes',
    '20_AuthAccessManagement',
    '21_AuthSessionClientMetadata',
    '22_AuthSessionLastConnectedAt',
    '23_ProjectionThreadShellSummary',
    '24_BackfillProjectionThreadShellSummary',
    '25_CleanupInvalidProjectionPendingApprovals',
    '26_CanonicalizeModelSelectionOptions',
    '27_ProviderSessionRuntimeInstanceId',
    '28_ProjectionThreadSessionInstanceId',
    '29_ProjectionThreadDetailOrderingIndexes',
    '30_ProjectionThreadShellArchiveIndexes',
    '31_AuthAuthorizationScopes',
    '32_AuthPairingProofKeyThumbprint',
    '33_ProjectionThreadsSettled',
    '34_ProjectionThreadsSnoozed',
    '35_ProjectionThreadTitleRegeneration',
    '36_ProjectionThreadsPinned',
    '37_ProjectionTurnsKeysetIndex',
    '38_ProjectionThreadsPinOrderKey',
    '39_ProjectionProjectsDefaultThreadEnvMode',
    '40_ProjectionProjectFaviconPath',
    '41_AuthSessionClientConnection',
    '42_ProjectionThreadLinkedPullRequest',
    '43_ProjectionThreadsUnsettledAt',
    '44_ClearAutomaticProjectModelDefaults',
    '45_ProjectionProjectsAutoPull',
    '46_RepairAutomaticSettlementTimestamps',
    '47_ProjectionProjectIcon',
    '48_ProjectionThreadBranchPullRequest',
    '49_ProjectionThreadsActiveOrderKey',
    '50_ProjectionThreadPullRequests',
    '51_ProjectionThreadMessageContext',
    '52_ProjectionThreadTitleState',
    '53_PullRequestFilesViewed',
    '54_ProjectionThreadsAutoSettleDisabledAt',
    '55_OrchestrationV2',
    '56_RemoveRedundantProjectionIndexes',
    '57_ScheduledTaskWebhooks',
    '58_WebhookRelayDeliveries',
    '59_McpAppModelContext',
    '60_ThreadSnapshotWindowIndexes',
    '61_PullRequestReviewGuides',
    '62_ThreadFailureLookupIndex',
    '63_DropUnusedV1Projections',
    '64_CanonicalizeThreadPullRequestLinks',
    '65_CodexUsageNativeTurnIndex',
    '66_RepairClientSettlementTimestamps',
    '67_WebhookDedupe',
    '68_ShellStopRequestIndex',
    '69_ThreadMessageSearch',
    '70_PeerLinks',
    '71_PeerLinkFence',
    '72_WaitingLinkRequestIndex',
    '73_ActiveTurnItemIndexes',
    '74_ExcludeAttachmentPlaceholdersFromSearch',
    '75_SubagentDeliveryState',
    '76_ProjectionProjectsPinArchive',
    '77_RepairBooleanSettledOverride'
  ]
}

stdout | src/auth/McpOAuth.test.ts > signs in with a pairing code and issues a token only /mcp accepts
[01:25:42.959] INFO (#1249): Approved an MCP client sign-in. { client: 'Claude Code', access: 'auto', method: 'pairing-code' }

stdout | src/auth/McpOAuth.test.ts > signs in a hosted agent with an https callback that asked for a client secret
[01:25:42.993] INFO (#1313): Migrations ran successfully {
  migrations: [
    '1_OrchestrationEvents',
    '2_OrchestrationCommandReceipts',
    '3_CheckpointDiffBlobs',
    '4_ProviderSessionRuntime',
    '5_Projections',
    '6_ProjectionThreadSessionRuntimeModeColumns',
    '7_ProjectionThreadMessageAttachments',
    '8_ProjectionThreadActivitySequence',
    '9_ProviderSessionRuntimeMode',
    '10_ProjectionThreadsRuntimeMode',
    '11_OrchestrationThreadCreatedRuntimeMode',
    '12_ProjectionThreadsInteractionMode',
    '13_ProjectionThreadProposedPlans',
    '14_ProjectionThreadProposedPlanImplementation',
    '15_ProjectionTurnsSourceProposedPlan',
    '16_CanonicalizeModelSelections',
    '17_ProjectionThreadsArchivedAt',
    '18_ProjectionThreadsArchivedAtIndex',
    '19_ProjectionSnapshotLookupIndexes',
    '20_AuthAccessManagement',
    '21_AuthSessionClientMetadata',
    '22_AuthSessionLastConnectedAt',
    '23_ProjectionThreadShellSummary',
    '24_BackfillProjectionThreadShellSummary',
    '25_CleanupInvalidProjectionPendingApprovals',
    '26_CanonicalizeModelSelectionOptions',
    '27_ProviderSessionRuntimeInstanceId',
    '28_ProjectionThreadSessionInstanceId',
    '29_ProjectionThreadDetailOrderingIndexes',
    '30_ProjectionThreadShellArchiveIndexes',
    '31_AuthAuthorizationScopes',
    '32_AuthPairingProofKeyThumbprint',
    '33_ProjectionThreadsSettled',
    '34_ProjectionThreadsSnoozed',
    '35_ProjectionThreadTitleRegeneration',
    '36_ProjectionThreadsPinned',
    '37_ProjectionTurnsKeysetIndex',
    '38_ProjectionThreadsPinOrderKey',
    '39_ProjectionProjectsDefaultThreadEnvMode',
    '40_ProjectionProjectFaviconPath',
    '41_AuthSessionClientConnection',
    '42_ProjectionThreadLinkedPullRequest',
    '43_ProjectionThreadsUnsettledAt',
    '44_ClearAutomaticProjectModelDefaults',
    '45_ProjectionProjectsAutoPull',
    '46_RepairAutomaticSettlementTimestamps',
    '47_ProjectionProjectIcon',
    '48_ProjectionThreadBranchPullRequest',
    '49_ProjectionThreadsActiveOrderKey',
    '50_ProjectionThreadPullRequests',
    '51_ProjectionThreadMessageContext',
    '52_ProjectionThreadTitleState',
    '53_PullRequestFilesViewed',
    '54_ProjectionThreadsAutoSettleDisabledAt',
    '55_OrchestrationV2',
    '56_RemoveRedundantProjectionIndexes',
    '57_ScheduledTaskWebhooks',
    '58_WebhookRelayDeliveries',
    '59_McpAppModelContext',
    '60_ThreadSnapshotWindowIndexes',
    '61_PullRequestReviewGuides',
    '62_ThreadFailureLookupIndex',
    '63_DropUnusedV1Projections',
    '64_CanonicalizeThreadPullRequestLinks',
    '65_CodexUsageNativeTurnIndex',
    '66_RepairClientSettlementTimestamps',
    '67_WebhookDedupe',
    '68_ShellStopRequestIndex',
    '69_ThreadMessageSearch',
    '70_PeerLinks',
    '71_PeerLinkFence',
    '72_WaitingLinkRequestIndex',
    '73_ActiveTurnItemIndexes',
    '74_ExcludeAttachmentPlaceholdersFromSearch',
    '75_SubagentDeliveryState',
    '76_ProjectionProjectsPinArchive',
    '77_RepairBooleanSettledOverride'
  ]
}

stdout | src/auth/McpOAuth.test.ts > signs in a hosted agent with an https callback that asked for a client secret
[01:25:42.999] INFO (#1686): Approved an MCP client sign-in. {
  client: 'Hosted bot',
  access: 'approval-required',
  method: 'pairing-code'
}

stdout | src/auth/McpOAuth.test.ts > rejects a wrong PKCE verifier and spends the code
[01:25:43.026] INFO (#1745): Migrations ran successfully {
  migrations: [
    '1_OrchestrationEvents',
    '2_OrchestrationCommandReceipts',
    '3_CheckpointDiffBlobs',
    '4_ProviderSessionRuntime',
    '5_Projections',
    '6_ProjectionThreadSessionRuntimeModeColumns',
    '7_ProjectionThreadMessageAttachments',
    '8_ProjectionThreadActivitySequence',
    '9_ProviderSessionRuntimeMode',
    '10_ProjectionThreadsRuntimeMode',
    '11_OrchestrationThreadCreatedRuntimeMode',
    '12_ProjectionThreadsInteractionMode',
    '13_ProjectionThreadProposedPlans',
    '14_ProjectionThreadProposedPlanImplementation',
    '15_ProjectionTurnsSourceProposedPlan',
    '16_CanonicalizeModelSelections',
    '17_ProjectionThreadsArchivedAt',
    '18_ProjectionThreadsArchivedAtIndex',
    '19_ProjectionSnapshotLookupIndexes',
    '20_AuthAccessManagement',
    '21_AuthSessionClientMetadata',
    '22_AuthSessionLastConnectedAt',
    '23_ProjectionThreadShellSummary',
    '24_BackfillProjectionThreadShellSummary',
    '25_CleanupInvalidProjectionPendingApprovals',
    '26_CanonicalizeModelSelectionOptions',
    '27_ProviderSessionRuntimeInstanceId',
    '28_ProjectionThreadSessionInstanceId',
    '29_ProjectionThreadDetailOrderingIndexes',
    '30_ProjectionThreadShellArchiveIndexes',
    '31_AuthAuthorizationScopes',
    '32_AuthPairingProofKeyThumbprint',
    '33_ProjectionThreadsSettled',
    '34_ProjectionThreadsSnoozed',
    '35_ProjectionThreadTitleRegeneration',
    '36_ProjectionThreadsPinned',
    '37_ProjectionTurnsKeysetIndex',
    '38_ProjectionThreadsPinOrderKey',
    '39_ProjectionProjectsDefaultThreadEnvMode',
    '40_ProjectionProjectFaviconPath',
    '41_AuthSessionClientConnection',
    '42_ProjectionThreadLinkedPullRequest',
    '43_ProjectionThreadsUnsettledAt',
    '44_ClearAutomaticProjectModelDefaults',
    '45_ProjectionProjectsAutoPull',
    '46_RepairAutomaticSettlementTimestamps',
    '47_ProjectionProjectIcon',
    '48_ProjectionThreadBranchPullRequest',
    '49_ProjectionThreadsActiveOrderKey',
    '50_ProjectionThreadPullRequests',
    '51_ProjectionThreadMessageContext',
    '52_ProjectionThreadTitleState',
    '53_PullRequestFilesViewed',
    '54_ProjectionThreadsAutoSettleDisabledAt',
    '55_OrchestrationV2',
    '56_RemoveRedundantProjectionIndexes',
    '57_ScheduledTaskWebhooks',
    '58_WebhookRelayDeliveries',
    '59_McpAppModelContext',
    '60_ThreadSnapshotWindowIndexes',
    '61_PullRequestReviewGuides',
    '62_ThreadFailureLookupIndex',
    '63_DropUnusedV1Projections',
    '64_CanonicalizeThreadPullRequestLinks',
    '65_CodexUsageNativeTurnIndex',
    '66_RepairClientSettlementTimestamps',
    '67_WebhookDedupe',
    '68_ShellStopRequestIndex',
    '69_ThreadMessageSearch',
    '70_PeerLinks',
    '71_PeerLinkFence',
    '72_WaitingLinkRequestIndex',
    '73_ActiveTurnItemIndexes',
    '74_ExcludeAttachmentPlaceholdersFromSearch',
    '75_SubagentDeliveryState',
    '76_ProjectionProjectsPinArchive',
    '77_RepairBooleanSettledOverride'
  ]
}

stdout | src/auth/McpOAuth.test.ts > rejects a wrong PKCE verifier and spends the code
[01:25:43.033] INFO (#2113): Approved an MCP client sign-in. {
  client: 'Claude Code',
  access: 'approval-required',
  method: 'pairing-code'
}

stdout | src/auth/McpOAuth.test.ts > denies and refuses codes bound to another client's key or without the scopes it grants
[01:25:43.069] INFO (#2174): Migrations ran successfully {
  migrations: [
    '1_OrchestrationEvents',
    '2_OrchestrationCommandReceipts',
    '3_CheckpointDiffBlobs',
    '4_ProviderSessionRuntime',
    '5_Projections',
    '6_ProjectionThreadSessionRuntimeModeColumns',
    '7_ProjectionThreadMessageAttachments',
    '8_ProjectionThreadActivitySequence',
    '9_ProviderSessionRuntimeMode',
    '10_ProjectionThreadsRuntimeMode',
    '11_OrchestrationThreadCreatedRuntimeMode',
    '12_ProjectionThreadsInteractionMode',
    '13_ProjectionThreadProposedPlans',
    '14_ProjectionThreadProposedPlanImplementation',
    '15_ProjectionTurnsSourceProposedPlan',
    '16_CanonicalizeModelSelections',
    '17_ProjectionThreadsArchivedAt',
    '18_ProjectionThreadsArchivedAtIndex',
    '19_ProjectionSnapshotLookupIndexes',
    '20_AuthAccessManagement',
    '21_AuthSessionClientMetadata',
    '22_AuthSessionLastConnectedAt',
    '23_ProjectionThreadShellSummary',
    '24_BackfillProjectionThreadShellSummary',
    '25_CleanupInvalidProjectionPendingApprovals',
    '26_CanonicalizeModelSelectionOptions',
    '27_ProviderSessionRuntimeInstanceId',
    '28_ProjectionThreadSessionInstanceId',
    '29_ProjectionThreadDetailOrderingIndexes',
    '30_ProjectionThreadShellArchiveIndexes',
    '31_AuthAuthorizationScopes',
    '32_AuthPairingProofKeyThumbprint',
    '33_ProjectionThreadsSettled',
    '34_ProjectionThreadsSnoozed',
    '35_ProjectionThreadTitleRegeneration',
    '36_ProjectionThreadsPinned',
    '37_ProjectionTurnsKeysetIndex',
    '38_ProjectionThreadsPinOrderKey',
    '39_ProjectionProjectsDefaultThreadEnvMode',
    '40_ProjectionProjectFaviconPath',
    '41_AuthSessionClientConnection',
    '42_ProjectionThreadLinkedPullRequest',
    '43_ProjectionThreadsUnsettledAt',
    '44_ClearAutomaticProjectModelDefaults',
    '45_ProjectionProjectsAutoPull',
    '46_RepairAutomaticSettlementTimestamps',
    '47_ProjectionProjectIcon',
    '48_ProjectionThreadBranchPullRequest',
    '49_ProjectionThreadsActiveOrderKey',
    '50_ProjectionThreadPullRequests',
    '51_ProjectionThreadMessageContext',
    '52_ProjectionThreadTitleState',
    '53_PullRequestFilesViewed',
    '54_ProjectionThreadsAutoSettleDisabledAt',
    '55_OrchestrationV2',
    '56_RemoveRedundantProjectionIndexes',
    '57_ScheduledTaskWebhooks',
    '58_WebhookRelayDeliveries',
    '59_McpAppModelContext',
    '60_ThreadSnapshotWindowIndexes',
    '61_PullRequestReviewGuides',
    '62_ThreadFailureLookupIndex',
    '63_DropUnusedV1Projections',
    '64_CanonicalizeThreadPullRequestLinks',
    '65_CodexUsageNativeTurnIndex',
    '66_RepairClientSettlementTimestamps',
    '67_WebhookDedupe',
    '68_ShellStopRequestIndex',
    '69_ThreadMessageSearch',
    '70_PeerLinks',
    '71_PeerLinkFence',
    '72_WaitingLinkRequestIndex',
    '73_ActiveTurnItemIndexes',
    '74_ExcludeAttachmentPlaceholdersFromSearch',
    '75_SubagentDeliveryState',
    '76_ProjectionProjectsPinArchive',
    '77_RepairBooleanSettledOverride'
  ]
}

stdout | src/auth/McpOAuth.test.ts > denies and refuses codes bound to another client's key or without the scopes it grants
[01:25:43.080] INFO (#2565): Approved an MCP client sign-in. { client: 'Claude Code', access: 'read-only', method: 'pairing-code' }

stdout | src/auth/McpOAuth.test.ts > a code minted with an access level's scopes approves that access
[01:25:43.110] INFO (#2622): Migrations ran successfully {
  migrations: [
    '1_OrchestrationEvents',
    '2_OrchestrationCommandReceipts',
    '3_CheckpointDiffBlobs',
    '4_ProviderSessionRuntime',
    '5_Projections',
    '6_ProjectionThreadSessionRuntimeModeColumns',
    '7_ProjectionThreadMessageAttachments',
    '8_ProjectionThreadActivitySequence',
    '9_ProviderSessionRuntimeMode',
    '10_ProjectionThreadsRuntimeMode',
    '11_OrchestrationThreadCreatedRuntimeMode',
    '12_ProjectionThreadsInteractionMode',
    '13_ProjectionThreadProposedPlans',
    '14_ProjectionThreadProposedPlanImplementation',
    '15_ProjectionTurnsSourceProposedPlan',
    '16_CanonicalizeModelSelections',
    '17_ProjectionThreadsArchivedAt',
    '18_ProjectionThreadsArchivedAtIndex',
    '19_ProjectionSnapshotLookupIndexes',
    '20_AuthAccessManagement',
    '21_AuthSessionClientMetadata',
    '22_AuthSessionLastConnectedAt',
    '23_ProjectionThreadShellSummary',
    '24_BackfillProjectionThreadShellSummary',
    '25_CleanupInvalidProjectionPendingApprovals',
    '26_CanonicalizeModelSelectionOptions',
    '27_ProviderSessionRuntimeInstanceId',
    '28_ProjectionThreadSessionInstanceId',
    '29_ProjectionThreadDetailOrderingIndexes',
    '30_ProjectionThreadShellArchiveIndexes',
    '31_AuthAuthorizationScopes',
    '32_AuthPairingProofKeyThumbprint',
    '33_ProjectionThreadsSettled',
    '34_ProjectionThreadsSnoozed',
    '35_ProjectionThreadTitleRegeneration',
    '36_ProjectionThreadsPinned',
    '37_ProjectionTurnsKeysetIndex',
    '38_ProjectionThreadsPinOrderKey',
    '39_ProjectionProjectsDefaultThreadEnvMode',
    '40_ProjectionProjectFaviconPath',
    '41_AuthSessionClientConnection',
    '42_ProjectionThreadLinkedPullRequest',
    '43_ProjectionThreadsUnsettledAt',
    '44_ClearAutomaticProjectModelDefaults',
    '45_ProjectionProjectsAutoPull',
    '46_RepairAutomaticSettlementTimestamps',
    '47_ProjectionProjectIcon',
    '48_ProjectionThreadBranchPullRequest',
    '49_ProjectionThreadsActiveOrderKey',
    '50_ProjectionThreadPullRequests',
    '51_ProjectionThreadMessageContext',
    '52_ProjectionThreadTitleState',
    '53_PullRequestFilesViewed',
    '54_ProjectionThreadsAutoSettleDisabledAt',
    '55_OrchestrationV2',
    '56_RemoveRedundantProjectionIndexes',
    '57_ScheduledTaskWebhooks',
    '58_WebhookRelayDeliveries',
    '59_McpAppModelContext',
    '60_ThreadSnapshotWindowIndexes',
    '61_PullRequestReviewGuides',
    '62_ThreadFailureLookupIndex',
    '63_DropUnusedV1Projections',
    '64_CanonicalizeThreadPullRequestLinks',
    '65_CodexUsageNativeTurnIndex',
    '66_RepairClientSettlementTimestamps',
    '67_WebhookDedupe',
    '68_ShellStopRequestIndex',
    '69_ThreadMessageSearch',
    '70_PeerLinks',
    '71_PeerLinkFence',
    '72_WaitingLinkRequestIndex',
    '73_ActiveTurnItemIndexes',
    '74_ExcludeAttachmentPlaceholdersFromSearch',
    '75_SubagentDeliveryState',
    '76_ProjectionProjectsPinArchive',
    '77_RepairBooleanSettledOverride'
  ]
}

stdout | src/auth/McpOAuth.test.ts > a code minted with an access level's scopes approves that access
[01:25:43.117] INFO (#2990): Approved an MCP client sign-in. { client: 'Claude Code', access: 'read-only', method: 'pairing-code' }

stdout | src/auth/McpOAuth.test.ts > a code minted with an access level's scopes approves that access
[01:25:43.118] INFO (#2996): Approved an MCP client sign-in. {
  client: 'Claude Code',
  access: 'approval-required',
  method: 'pairing-code'
}

stdout | src/auth/McpOAuth.test.ts > a code minted with an access level's scopes approves that access
[01:25:43.119] INFO (#3001): Approved an MCP client sign-in. {
  client: 'Claude Code',
  access: 'auto-accept-edits',
  method: 'pairing-code'
}

stdout | src/auth/McpOAuth.test.ts > a code minted with an access level's scopes approves that access
[01:25:43.119] INFO (#3006): Approved an MCP client sign-in. { client: 'Claude Code', access: 'auto', method: 'pairing-code' }

stdout | src/auth/McpOAuth.test.ts > a code minted with an access level's scopes approves that access
[01:25:43.120] INFO (#3011): Approved an MCP client sign-in. {
  client: 'Claude Code',
  access: 'full-access',
  method: 'pairing-code'
}

stdout | src/auth/McpOAuth.test.ts > one-click approves only access the browser session holds the scopes for
[01:25:43.148] INFO (#3063): Migrations ran successfully {
  migrations: [
    '1_OrchestrationEvents',
    '2_OrchestrationCommandReceipts',
    '3_CheckpointDiffBlobs',
    '4_ProviderSessionRuntime',
    '5_Projections',
    '6_ProjectionThreadSessionRuntimeModeColumns',
    '7_ProjectionThreadMessageAttachments',
    '8_ProjectionThreadActivitySequence',
    '9_ProviderSessionRuntimeMode',
    '10_ProjectionThreadsRuntimeMode',
    '11_OrchestrationThreadCreatedRuntimeMode',
    '12_ProjectionThreadsInteractionMode',
    '13_ProjectionThreadProposedPlans',
    '14_ProjectionThreadProposedPlanImplementation',
    '15_ProjectionTurnsSourceProposedPlan',
    '16_CanonicalizeModelSelections',
    '17_ProjectionThreadsArchivedAt',
    '18_ProjectionThreadsArchivedAtIndex',
    '19_ProjectionSnapshotLookupIndexes',
    '20_AuthAccessManagement',
    '21_AuthSessionClientMetadata',
    '22_AuthSessionLastConnectedAt',
    '23_ProjectionThreadShellSummary',
    '24_BackfillProjectionThreadShellSummary',
    '25_CleanupInvalidProjectionPendingApprovals',
    '26_CanonicalizeModelSelectionOptions',
    '27_ProviderSessionRuntimeInstanceId',
    '28_ProjectionThreadSessionInstanceId',
    '29_ProjectionThreadDetailOrderingIndexes',
    '30_ProjectionThreadShellArchiveIndexes',
    '31_AuthAuthorizationScopes',
    '32_AuthPairingProofKeyThumbprint',
    '33_ProjectionThreadsSettled',
    '34_ProjectionThreadsSnoozed',
    '35_ProjectionThreadTitleRegeneration',
    '36_ProjectionThreadsPinned',
    '37_ProjectionTurnsKeysetIndex',
    '38_ProjectionThreadsPinOrderKey',
    '39_ProjectionProjectsDefaultThreadEnvMode',
    '40_ProjectionProjectFaviconPath',
    '41_AuthSessionClientConnection',
    '42_ProjectionThreadLinkedPullRequest',
    '43_ProjectionThreadsUnsettledAt',
    '44_ClearAutomaticProjectModelDefaults',
    '45_ProjectionProjectsAutoPull',
    '46_RepairAutomaticSettlementTimestamps',
    '47_ProjectionProjectIcon',
    '48_ProjectionThreadBranchPullRequest',
    '49_ProjectionThreadsActiveOrderKey',
    '50_ProjectionThreadPullRequests',
    '51_ProjectionThreadMessageContext',
    '52_ProjectionThreadTitleState',
    '53_PullRequestFilesViewed',
    '54_ProjectionThreadsAutoSettleDisabledAt',
    '55_OrchestrationV2',
    '56_RemoveRedundantProjectionIndexes',
    '57_ScheduledTaskWebhooks',
    '58_WebhookRelayDeliveries',
    '59_McpAppModelContext',
    '60_ThreadSnapshotWindowIndexes',
    '61_PullRequestReviewGuides',
    '62_ThreadFailureLookupIndex',
    '63_DropUnusedV1Projections',
    '64_CanonicalizeThreadPullRequestLinks',
    '65_CodexUsageNativeTurnIndex',
    '66_RepairClientSettlementTimestamps',
    '67_WebhookDedupe',
    '68_ShellStopRequestIndex',
    '69_ThreadMessageSearch',
    '70_PeerLinks',
    '71_PeerLinkFence',
    '72_WaitingLinkRequestIndex',
    '73_ActiveTurnItemIndexes',
    '74_ExcludeAttachmentPlaceholdersFromSearch',
    '75_SubagentDeliveryState',
    '76_ProjectionProjectsPinArchive',
    '77_RepairBooleanSettledOverride'
  ]
}

stdout | src/auth/McpOAuth.test.ts > one-click approves only access the browser session holds the scopes for
[01:25:43.158] INFO (#3443): Approved an MCP client sign-in. { client: 'Claude Code', access: 'auto', method: 'browser-session' }

stdout | src/auth/McpOAuth.test.ts > one-click approves only access the browser session holds the scopes for
[01:25:43.163] INFO (#3476): Approved an MCP client sign-in. {
  client: 'Claude Code',
  access: 'read-only',
  method: 'browser-session'
}

 ✓ src/auth/McpOAuth.test.ts (9 tests) 370ms

 Test Files  1 passed (1)
      Tests  9 passed (9)
   Start at  01:25:41
   Duration  2.03s (import 57%, transform 22%, tests 19%, setup 2%)


~/apps/server$ vp test run 'src/orchestration-v2/ProjectionRecovery.test.ts' ○ cache miss: 'evidence' added in 'apps/server/scripts', executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/orchestration-v2/ProjectionRecovery.test.ts (13 tests) 528ms

 Test Files  1 passed (1)
      Tests  13 passed (13)
   Start at  01:25:44
   Duration  2.01s (import 51%, tests 27%, transform 20%, setup 2%)


~/apps/server$ vp test run 'src/provider/AntigravityProvider.test.ts' ○ cache miss: 'azureDevOpsChangeRequestTemplate.ts' removed from 'packages/source-control-azure-devops/src/server', executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/provider/AntigravityProvider.test.ts (22 tests) 53ms

 Test Files  1 passed (1)
      Tests  22 passed (22)
   Start at  01:25:47
   Duration  701ms (import 60%, transform 27%, tests 8%, setup 5%)


~/apps/server$ vp test run 'src/mcp/toolkits/environment/handlers.test.ts' ○ cache miss: 'apps/server/src/orchestration-v2/Adapters/CodexAdapterV2.ts' modified, executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/mcp/toolkits/environment/handlers.test.ts (1 test) 8ms

 Test Files  1 passed (1)
      Tests  1 passed (1)
   Start at  01:25:48
   Duration  1.38s (import 70%, transform 27%, setup 2%, tests 1%)


~/apps/server$ vp test run 'src/persistence/Migrations/027_028_ProviderInstanceIdColumns.test.ts' ○ cache miss: 'evidence' added in 'apps/server/scripts', executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/persistence/Migrations/027_028_ProviderInstanceIdColumns.test.ts (1 test) 22ms

 Test Files  1 passed (1)
      Tests  1 passed (1)
   Start at  01:25:50
   Duration  395ms (import 62%, transform 22%, setup 9%, tests 7%, worker 1%)


~/apps/server$ vp test run 'src/textGeneration/CodexTextGeneration.test.ts' ○ cache miss: 'evidence' added in 'apps/server/scripts', executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/textGeneration/CodexTextGeneration.test.ts (14 tests) 2527ms
   ✓ CodexTextGeneration (12)
     ✓ kills a stalled exec CLI when its request is interrupted 1056ms
     ✓ kills a stalled mcp list CLI when its request is interrupted 1027ms

 Test Files  1 passed (1)
      Tests  14 passed (14)
   Start at  01:25:51
   Duration  3.09s (tests 83%, import 10%, transform 5%, setup 1%)


~/apps/server$ vp test run 'src/device/ExpoApi.test.ts' ○ cache miss: 'evidence' added in 'apps/server/scripts', executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/device/ExpoApi.test.ts (7 tests) 35ms

 Test Files  1 passed (1)
      Tests  7 passed (7)
   Start at  01:25:55
   Duration  245ms (import 50%, tests 19%, setup 16%, transform 14%, worker 1%)


~/apps/server$ vp test run 'src/orchestration-v2/ThreadManagementService.test.ts' ○ cache miss: 'apps/server/src/orchestration-v2/Adapters/CodexAdapterV2.ts' modified, executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/orchestration-v2/ThreadManagementService.test.ts (19 tests) 504ms

 Test Files  1 passed (1)
      Tests  19 passed (19)
   Start at  01:25:56
   Duration  1.99s (import 51%, tests 26%, transform 21%, setup 2%)


~/apps/server$ vp test run 'src/provider/userInputAttachments.test.ts' ○ cache miss: 'apps/server/src/orchestration-v2/Adapters/CodexAdapterV2.ts' modified, executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/provider/userInputAttachments.test.ts (30 tests) 7886ms
   ✓ question answer paths (30)
     ✓ preserves office structure and EPUB reading order with bounded archives 6327ms

 Test Files  1 passed (1)
      Tests  30 passed (30)
   Start at  01:25:59
   Duration  9.41s (tests 84%, import 11%, transform 5%)


~/apps/server$ vp test run 'src/auth/ServerSecretStore.test.ts' ○ cache miss: 'evidence' added in 'apps/server/scripts', executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/auth/ServerSecretStore.test.ts (4 tests) 19ms

 Test Files  1 passed (1)
      Tests  4 passed (4)
   Start at  01:26:09
   Duration  420ms (import 66%, transform 19%, setup 9%, tests 5%, worker 1%)


~/apps/server$ vp test run 'src/orchestration-v2/ProjectionSettlement.test.ts' ○ cache miss: 'apps/server/src/provider/Drivers/CodexHomeLayout.ts' modified, executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/orchestration-v2/ProjectionSettlement.test.ts (4 tests) 153ms

 Test Files  1 passed (1)
      Tests  4 passed (4)
   Start at  01:26:10
   Duration  1.48s (import 64%, transform 23%, tests 11%, setup 2%)


~/apps/server$ vp test run 'src/provider/CodexChatGptAuth.test.ts' ○ cache miss: 'evidence' added in 'apps/server/scripts', executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/provider/CodexChatGptAuth.test.ts (54 tests) 3890ms

 Test Files  1 passed (1)
      Tests  54 passed (54)
   Start at  01:26:12
   Duration  4.52s (tests 87%, import 8%, transform 4%, setup 1%)


~/apps/server$ vp test run 'src/orchestration-v2/Adapters/ClaudeAdapterV2.test.ts' ○ cache miss: 'apps/server/src/orchestration-v2/Adapters/CodexAdapterV2.ts' modified, executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/orchestration-v2/Adapters/ClaudeAdapterV2.test.ts (288 tests) 4711ms
   ✓ ClaudeAdapterV2 background wake turns (221)
     ✓ persists a todo_list from inline Claude task-tool frames 1821ms

 Test Files  1 passed (1)
      Tests  288 passed (288)
   Start at  01:26:18
   Duration  6.47s (tests 73%, import 16%, transform 10%)


~/apps/server$ vp test run 'src/persistence/Migrations/057_ScheduledTaskWebhooks.test.ts' ○ cache miss: 'evidence' added in 'apps/server/scripts', executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/persistence/Migrations/057_ScheduledTaskWebhooks.test.ts (1 test) 40ms

 Test Files  1 passed (1)
      Tests  1 passed (1)
   Start at  01:26:25
   Duration  429ms (import 58%, transform 21%, tests 11%, setup 9%, worker 1%)


~/apps/server$ vp test run 'src/triage/triagePrompt.test.ts' ○ cache miss: 'evidence' added in 'apps/server/scripts', executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/triage/triagePrompt.test.ts (4 tests) 3ms

 Test Files  1 passed (1)
      Tests  4 passed (4)
   Start at  01:26:26
   Duration  173ms (import 39%, setup 30%, transform 27%, tests 2%, worker 2%)


~/apps/server$ vp test run 'src/entrypoint.test.ts' ○ cache miss: 'evidence' added in 'apps/server/scripts', executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/entrypoint.test.ts (3 tests) 3ms

 Test Files  1 passed (1)
      Tests  3 passed (3)
   Start at  01:26:27
   Duration  117ms (setup 54%, transform 32%, import 7%, tests 4%, worker 3%)


~/apps/server$ vp test run 'src/orchestration-v2/ThreadStop.test.ts' ○ cache miss: 'evidence' added in 'apps/server/scripts', executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/orchestration-v2/ThreadStop.test.ts (44 tests) 2154ms

 Test Files  1 passed (1)
      Tests  44 passed (44)
   Start at  01:26:28
   Duration  3.57s (tests 61%, import 27%, transform 11%, setup 1%)


~/apps/server$ vp test run 'src/resourceTelemetry/ResourceMonitorBinary.test.ts' ○ cache miss: 'evidence' added in 'apps/server/scripts', executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/resourceTelemetry/ResourceMonitorBinary.test.ts (6 tests) 17ms

 Test Files  1 passed (1)
      Tests  6 passed (6)
   Start at  01:26:33
   Duration  403ms (import 64%, transform 20%, setup 10%, tests 5%, worker 1%)


~/apps/server$ vp test run 'src/cli/connect.test.ts' ○ cache miss: 'evidence' added in 'apps/server/scripts', executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/cli/connect.test.ts (1 test) 3ms

 Test Files  1 passed (1)
      Tests  1 passed (1)
   Start at  01:26:34
   Duration  801ms (import 57%, transform 37%, setup 4%)


~/apps/server$ vp test run 'src/orchestration-v2/ProviderRuntimeRecoveryService.regression.test.ts' ○ cache miss: 'evidence' added in 'apps/server/scripts', executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/orchestration-v2/ProviderRuntimeRecoveryService.regression.test.ts (1 test) 8ms

 Test Files  1 passed (1)
      Tests  1 passed (1)
   Start at  01:26:35
   Duration  1.50s (import 70%, transform 28%, setup 2%, tests 1%)


~/apps/server$ vp test run 'src/provider/CodexThreadRevert.test.ts' ○ cache miss: 'evidence' added in 'apps/server/scripts', executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

 ✓ src/provider/CodexThreadRevert.test.ts (2 tests) 13ms

 Test Files  1 passed (1)
      Tests  2 passed (2)
   Start at  01:26:37
   Duration  301ms (import 60%, transform 21%, setup 13%, tests 6%, worker 1%)


~/apps/server$ vp test run 'src/orchestration-v2/Adapters/CodexAdapterV2.test.ts' ○ cache miss: 'evidence' added in 'apps/server/scripts', executing

 RUN  v5.0.5 /home/runner/_work/t3code/t3code/apps/server

stdout | src/orchestration-v2/Adapters/CodexAdapterV2.test.ts > CodexAdapterV2 post-settle continuation > recovers a native child's actual model after transient empty rollout lookups
[01:26:41.215] ERROR (#7293): [Error: Service not found: effect/crypto/Digest] { [cause]: undefined }

stdout | src/orchestration-v2/Adapters/CodexAdapterV2.test.ts > CodexAdapterV2 post-settle continuation > stops native child metadata lookups after interruption
[01:26:41.217] ERROR (#7309): [Error: Service not found: effect/crypto/Digest] { [cause]: undefined }

 ❯ src/orchestration-v2/Adapters/CodexAdapterV2.test.ts (135 tests | 2 failed) 966ms
   ✓ CodexAdapterV2 context usage (1)
     ✓ uses the current context rather than cumulative processed tokens 1ms
   ✓ CodexAdapterV2 assistant message streaming (1)
     ✓ flushes buffered text synchronously before item and turn completion 4ms
   ✓ CodexAdapterV2 runtime policy (5)
     ✓ selects native collaboration modes without prompt overrides with hasT3Mcp=undefined 1ms
     ✓ selects native collaboration modes without prompt overrides with hasT3Mcp=false 1ms
     ✓ selects native collaboration modes without prompt overrides with hasT3Mcp=true 1ms
     ✓ derives concrete Codex turn policies from every T3 runtime mode 0ms
     ✓ sends MCP app model context as untrusted Codex context 0ms
   ✓ CodexAdapterV2 native protocol logging (1)
     ✓ logs decoded app-server frames once with credentials redacted 1ms
   ✓ CodexAdapterV2 rollback mapping (1)
     ✓ derives native rollback count from durable provider turns 0ms
   ✓ CodexAdapterV2 fork boundary (2)
     ✓ resolves the selected provider turn to an inclusive native fork boundary 1ms
     ✓ keeps the rollback-count fallback when the boundary turn lacks a native id 0ms
   ✓ CodexAdapterV2 process exit (4)
     ✓ retires the shared session after numeric (active turn: false) 19ms
     ✓ retires the shared session after SIGKILL (active turn: false) 4ms
     ✓ retires the shared session after numeric (active turn: true) 3ms
     ✓ retires the shared session after SIGKILL (active turn: true) 3ms
   ✓ CodexAdapterV2 session initialize (4)
     ✓ sends one initialize when two threads start on a fresh session at once 4ms
     ✓ retries initialize after a failed handshake 3ms
     ✓ refuses to open a session on a Codex version marked broken 2ms
     ✓ completes the handshake after a caller is interrupted mid-initialize 3ms
   ❯ CodexAdapterV2 post-settle continuation (115)
     ✓ rejects a previous run's native turn when it completes before the new start response 5ms
     ✓ rejects a previous run's native turn when it completes after the new start response 4ms
     ✓ delivers native history with supported app-server protocol 3ms
     ✓ delivers native history with unsupported app-server protocol 2ms
     ✓ delivers native history with invalid app-server protocol 5ms
     ✓ adds the session MCP server without replacing launch-argument servers 2ms
     ✓ replays historical and dotted MCP config while enforcing other thread config 2ms
     ✓ waits for native start before interrupting an acknowledged queued turn 5ms
     ✓ keeps an asynchronous Codex question actionable after the turn completes 5ms
     ✓ stops asking for commands the user allowed for the session 7ms
     ✓ preserves T3 context on the wire and restores it after compaction 4ms
     ✓ compacts Codex with the native RPC and completes the compaction turn 3ms
     ✓ settles unfinished compaction on failed without changing completed compaction 4ms
     ✓ settles unfinished compaction on interrupted without changing completed compaction 3ms
     ✓ settles unfinished compaction on Stop without changing completed compaction 3ms
     ✓ correlates stopped hook output with a interrupted turn only 3ms
     ✓ correlates completed hook output with a interrupted turn only 3ms
     ✓ correlates warning hook output with a interrupted turn only 3ms
     ✓ correlates empty hook output with a interrupted turn only 5ms
     ✓ correlates wrong-turn hook output with a interrupted turn only 3ms
     ✓ correlates wrong-thread hook output with a interrupted turn only 3ms
     ✓ correlates unscoped hook output with a interrupted turn only 3ms
     ✓ correlates stopped hook output with a completed turn only 3ms
     ✓ correlates stopped hook output with a failed turn only 3ms
     ✓ resumes a provider thread without requesting or decoding its history 3ms
     ✓ recovers archived-session errors 2ms
     ✓ preserves missing-thread errors 2ms
     ✓ propagates unarchive missing-thread err… 2ms
     ✓ does not retry archived errors twice 2ms
     ✓ handles terminal Codex capacity failures when retries recover 141ms
     ✓ handles terminal Codex capacity failures when retries completion-only 5ms
     ✓ handles terminal Codex capacity failures when retries exhaust 10ms
     ✓ handles terminal Codex capacity failures when retries stop 3ms
     ✓ handles terminal Codex capacity failures when retries stop-continued 4ms
     ✓ handles terminal Codex capacity failures when retries stop-starting 3ms
     ✓ handles terminal Codex capacity failures when retries started-first 3ms
     ✓ handles terminal Codex capacity failures when retries completed-first 3ms
     ✓ handles terminal Codex capacity failures when retries new-run 3ms
     ✓ handles terminal Codex capacity failures when retries steer 4ms
     ✓ handles terminal Codex capacity failures when retries start-fails 3ms
     ✓ resolves retryable app-server errors on resumed provider activity 4ms
     ✓ retains Codex reasoning parts when the turn is completed 3ms
     ✓ retains Codex reasoning parts when the turn is interrupted 2ms
     ✓ preserves a final answer that repeats a preceding partial answer (streamed: false) 5ms
     ✓ preserves a final answer that repeats a preceding partial answer (streamed: true) 3ms
     ✓ projects generated images: a text reply gains each saved image once 8ms
     ✓ projects generated images: an image-only result becomes the reply 3ms
     ✓ retains generating images after settlement until complete 6ms
     ✓ retains generating images after settlement until stop 3ms
     ✓ suppresses a trailing empty final answer after a non-empty final answer 2ms
     ✓ keeps commands interrupted after native thread closure (persistent tool: false) 5ms
     ✓ keeps commands interrupted after native thread closure (persistent tool: true) 4ms
     ✓ stops a command after root completion when termination returns true 3ms
     ✓ stops a command after root completion when termination returns false 3ms
     ✓ stops a command after root completion when termination returns still_running 3ms
     ✓ stops a command after root completion when termination returns thread_unloaded 4ms
     ✓ stops a completed run's background command without a client-supplied run 206ms
     ✓ Stop ends a background command no Codex process tracks any more 197ms
     ✓ contains commands that start before and after the interrupt response 7ms
     ✓ contains descendant commands and keeps Stop authoritative 8ms
     ✓ interrupts descendants that start after the initial Stop snapshot 5ms
     ✓ keeps reading notifications while interrupting a child turn that starts after Stop 4ms
     ✓ classifies Codex terminal failures from usage evidence 3ms
     ✓ classifies Codex terminal failures from replacement evidence 2ms
     ✓ classifies Codex terminal failures from late-reset evidence 3ms
     ✓ classifies Codex terminal failures from matching-details evidence 2ms
     ✓ classifies Codex terminal failures from deferred-reset evidence 3ms
     ✓ classifies Codex terminal failures from retry evidence 2ms
     ✓ classifies Codex terminal failures from exhausted-429 evidence 5ms
     ✓ classifies Codex terminal failures from exhausted-500 evidence 3ms
     ✓ classifies Codex terminal failures from chatgpt-workspace-limit evidence 3ms
     ✓ honors completion HTTP status from 500 to 429 (retry: false) 2ms
     ✓ honors completion HTTP status from 429 to 500 (retry: true) 2ms
     ✓ honors completion HTTP status from 429 to null (retry: false) 2ms
     ✓ honors completion HTTP status from 429 to null (retry: true) 2ms
     ✓ terminalizes running command items before turn.terminal on failed turns 2ms
     ✓ captures an MCP app's resource and holds the turn open until it lands 5ms
     ✓ captures the app of a tool call that defers to its form 3ms
     ✓ terminalizes leftover nonpersistent dynamic tools when a completed turn never closes them 3ms
     ✓ wakes the parent when a native child finishes after the parent's turn 3ms
     ✓ handles a late native child after the capacity retry completed 3ms
     ✓ handles a late native child after the capacity retry failed 3ms
     ✓ handles a late native child after the capacity retry interrupted 3ms
     ✓ handles a late native child after the capacity retry starting 7ms
     ✓ handles a late native child after the capacity retry replied-last 4ms
     ✓ stops native children when capacity retry startup fails 4ms
     ✓ names a late child spawned without a prompt in its wake 3ms
     ✓ wakes the root only when its direct child finishes, not a grandchild 4ms
     ✓ leaves a late child's result to the root's next turn when one is running 3ms
     × recovers a native child's actual model after transient empty rollout lookups 2ms
     × stops native child metadata lookups after interruption 1ms
     ✓ keeps model/rerouted child metadata when an older lookup finishes later 4ms
     ✓ creates a child from activity without the parent's effort 2ms
     ✓ creates a child from spawn without the parent's effort 2ms
     ✓ creates a child from activity then spawn without the parent's effort 2ms
     ✓ preserves a subagent result across a trailing empty final and resume 4ms
     ✓ normalizes subagent shutdown without losing its lifecycle 4ms
     ✓ normalizes subagent activity-completed without losing its lifecycle 2ms
     ✓ normalizes subagent late-activity-completed without losing its lifecycle 2ms
     ✓ normalizes subagent stale-running without losing its lifecycle 2ms
     ✓ normalizes subagent duplicate-completed without losing its lifecycle 2ms
     ✓ fails honestly when rolling back a legacy Codex thread 2ms
     ✓ falls back to fork-local thread/revert on paginated history when the source turn lacks a native reference 3ms
     ✓ native goals (8)
       ✓ keeps a /goal run open across the turns Codex continues on its own 3ms
       ✓ settles a run held for the next goal turn when Stop arrives in between 2ms
       ✓ moves a Stop that names an earlier goal turn to the turn Codex continued with 3ms
       ✓ pauses a goal Codex does not continue before its run settles 2ms
       ✓ stops a turn Codex starts while the expiry pause is in flight 3ms
       ✓ settles the run when Codex never answers the expiry pause 2ms
       ✓ Stop prevents a capacity retry while pausing its goal 3ms
       ✓ pauses an active goal before Stop interrupts its turn 2ms
     ✓ Codex file-change approval paths (4)
       ✓ answers without waiting for late paths or borrowing another item's paths 5ms
       ✓ matches file paths to items approved out of order 3ms
       ✓ keeps every path of a completed multi-file patch 2ms
       ✓ classifies permission requests that only list sandbox entries 3ms
   ✓ codexDynamicToolOutput (1)
     ✓ translates inputImage data URLs into image blocks the work log can serve 0ms

⎯⎯⎯⎯⎯⎯⎯ Failed Tests 2 ⎯⎯⎯⎯⎯⎯⎯

 FAIL  src/orchestration-v2/Adapters/CodexAdapterV2.test.ts > CodexAdapterV2 post-settle continuation > recovers a native child's actual model after transient empty rollout lookups
 FAIL  src/orchestration-v2/Adapters/CodexAdapterV2.test.ts > CodexAdapterV2 post-settle continuation > stops native child metadata lookups after interruption
Error: Service not found: effect/crypto/Digest
 ❯ Digest.evaluate [as ~effect/Effect/evaluate] ../../node_modules/.pnpm/effect@4.1.2/node_modules/effect/src/Context.ts:435:26
 ❯ FiberImpl.runLoop ../../node_modules/.pnpm/effect@4.1.2/node_modules/effect/src/internal/effect.ts:700:41
 ❯ FiberImpl.evaluate ../../node_modules/.pnpm/effect@4.1.2/node_modules/effect/src/internal/effect.ts:635:23
 ❯ FiberImpl.evaluate ../../node_modules/.pnpm/effect@4.1.2/node_modules/effect/src/internal/effect.ts:624:29
 ❯ ../../node_modules/.pnpm/effect@4.1.2/node_modules/effect/src/internal/effect.ts:1210:17
 ❯ ../../node_modules/.pnpm/effect@4.1.2/node_modules/effect/src/Effect.ts:27179:13

⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[1/2]⎯


 Test Files  1 failed (1)
      Tests  2 failed | 133 passed (135)
   Start at  01:26:38
   Duration  2.56s (import 41%, tests 39%, transform 18%, setup 2%)


---
vp run: 0/46 cache hit (0%), 45/46 successful. @t3tools/monorepo#test-cache:fa842e63c97fc9cbcaa813951a139c3c9d1e1470aaf45cbb8ec422f99beee4a3 (and 3 more) not uploaded to the remote cache: HTTP status 503. (Run `vp run --last-details` for full details)

Error: Process completed with exit code 1.
▸ Run actions/upload-artifact@v7
with:
  name: test-cache-3
  path: /home/runner/_work/_temp/test-cache-3.json
  if-no-files-found: error
  compression-level: 6
  overwrite: false
  include-hidden-files: false
  archive: true
env:
  BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 222
  BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 569
  GITHUB_REPO_NAME: pingdotgg/t3code
  pnpm_config_cache_dir: /home/runner/_work/_temp/pnpm-metadata
  BASH_ENV: /home/runner/_work/_temp/t3-task-cache.sh
  VP_REMOTE_CACHE: read-write
With the provided path, there will be 1 file uploaded
Artifact name is valid!
Root directory input is valid!
Uploading artifact: test-cache-3.zip
Beginning upload of artifact content to blob storage
Uploaded bytes 4307
Finished uploading artifact content to blob storage!
SHA256 digest of uploaded artifact is 90308b004747e4434c6b354dafcb8bd70ce44571573e5f5e87914ca2221be929
Finalizing artifact upload
Artifact test-cache-3 successfully finalized. Artifact ID 13196811450
Artifact test-cache-3 has been successfully uploaded! Final size is 4307 bytes. Artifact ID is 13196811450
Artifact download URL: https://github.com/pingdotgg/t3code/actions/runs/41559532101/artifacts/13196811450
▸ Run if test -f "/home/runner/_work/_temp/thread-transfer-result.json"; then
if test -f "/home/runner/_work/_temp/thread-transfer-result.json"; then
  echo "present=true" >> "$GITHUB_OUTPUT"
else
  echo "present=false" >> "$GITHUB_OUTPUT"
fi
shell: /usr/bin/bash -e {0}
env:
  BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 222
  BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 569
  GITHUB_REPO_NAME: pingdotgg/t3code
  pnpm_config_cache_dir: /home/runner/_work/_temp/pnpm-metadata
  BASH_ENV: /home/runner/_work/_temp/t3-task-cache.sh
  VP_REMOTE_CACHE: read-write
Post job cleanup.
##[start-action display=Cache Vite+;id=__f03c657e-aa0b-440c-ab1e-dd9be4124f22.vp_cache]
##[end-action id=__f03c657e-aa0b-440c-ab1e-dd9be4124f22.vp_cache;outcome=skipped;conclusion=skipped;duration_ms=0]
Post job cleanup.
[command]/usr/local/bin/git version
git version 2.55.0
Temporarily overriding HOME='/home/runner/_work/_temp/31abe7ba-d2b2-49e5-ab8c-3f9da6808c8b' 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: 222
  BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 569
  BLACKSMITH_CHECK_RUN_ID: 125666512090
  BLACKSMITH_JOB_DISPLAY_NAME: Test Server 3
  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