2026-10-24T21:34:17.8678558Z Current runner version: '2.337.0' 2026-10-24T21:34:17.8681852Z Runner name: 'blacksmith-8vcpu-ubuntu-2404-6kd3s3iqv2ba3pok' 2026-10-24T21:34:17.8682549Z Runner group name: 'blacksmith scale sets - blacksmith-8vcpu-ubuntu-2404' 2026-10-24T21:34:17.8683252Z Machine name: 'ip-172-31-73-130' 2026-10-24T21:34:17.8684746Z ##[group]GITHUB_TOKEN Permissions 2026-10-24T21:34:17.8685989Z Contents: read 2026-10-24T21:34:17.8686458Z Metadata: read 2026-10-24T21:34:17.8687931Z ##[endgroup] 2026-10-24T21:34:17.8689282Z Secret source: Actions 2026-10-24T21:34:17.8689880Z Cache mode: write 2026-10-24T21:34:17.8690339Z Prepare workflow directory 2026-10-24T21:34:17.8866755Z Prepare all required actions 2026-10-24T21:34:17.8892669Z Getting action download info 2026-10-24T21:34:17.9909140Z Download action repository 'actions/checkout@v6' (SHA:d23441a48e516b6c34aea4fa41551a30e30af803) 2026-10-24T21:34:18.0225831Z Download action repository 'actions/cache@v6' (SHA:55cc8345863c7cc4c66a329aec7e433d2d1c52a9) 2026-10-24T21:34:18.1339954Z Setting BLACKSMITH_ACTIONS_RESULTS_URL to https://results-receiver.actions.githubusercontent.com/ 2026-10-24T21:34:18.1376485Z Complete job name: Build and Typecheck 2026-10-24T21:34:18.1692082Z A job started hook has been configured by the self-hosted runner administrator 2026-10-24T21:34:18.1748621Z ##[group]Run '/setup.sh' 2026-10-24T21:34:18.1756430Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2026-10-24T21:34:18.1756815Z env: 2026-10-24T21:34:18.1757020Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 151 2026-10-24T21:34:18.1757296Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 350 2026-10-24T21:34:18.1757559Z BLACKSMITH_CHECK_RUN_ID: 120993937487 2026-10-24T21:34:18.1757851Z BLACKSMITH_JOB_DISPLAY_NAME: Build and Typecheck 2026-10-24T21:34:18.1758143Z GITHUB_ACTIONS_CACHE_MODE: write 2026-10-24T21:34:18.1758388Z ##[endgroup] 2026-10-24T21:34:18.1966304Z Logging daemon started (blacksmithd for logs) 2026-10-24T21:34:18.2048368Z Results daemon started (blacksmithd for results) 2026-10-24T21:34:18.2161968Z Background adoption and SSH setup started (PID: 3056) 2026-10-24T21:34:18.2162453Z 2026-10-24T21:34:18.2162842Z ---------------------------------------- 2026-10-24T21:34:18.2163450Z View this job: https://app.blacksmith.sh/pingdotgg/runs/40134793376/jobs/120993937487 2026-10-24T21:34:18.2163863Z SSH Access (using your GitHub SSH key): 2026-10-24T21:34:18.2164276Z ssh -p 64000 runner@blacksmith-8vcpu-ubuntu-2404-6kd3s3iqv2ba3pok.vm.blacksmith.sh 2026-10-24T21:34:18.2164580Z 2026-10-24T21:34:18.2164682Z No GitHub SSH key? Add one at: 2026-10-24T21:34:18.2165154Z https://docs.github.com/en/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account 2026-10-24T21:34:18.2165534Z 2026-10-24T21:34:18.2165635Z ---------------------------------------- 2026-10-24T21:34:18.2165805Z 2026-10-24T21:34:18.2165945Z VM ID: blacksmith-8vcpu-ubuntu-2404-6kd3s3iqv2ba3pok 2026-10-24T21:34:18.2166247Z Host: production-152.236.40.94-x8664 2026-10-24T21:34:18.2166501Z Host Agent PID: 511928 2026-10-24T21:34:18.2166736Z Host Agent Git SHA: af74fd76b 2026-10-24T21:34:18.2166988Z Host CPU Manufacturer: AuthenticAMD 2026-10-24T21:34:18.2167250Z Blacksmith Host Generation: gen 2 2026-10-24T21:34:18.2167515Z Petname: production-ethical-kiwi-f5a03f2d 2026-10-24T21:34:18.2167823Z Region: us-east 2026-10-24T21:34:18.2168043Z Rootfs Version: ubuntu24-full-x64-081926 2026-10-24T21:34:18.2174363Z OS Version: Ubuntu 24.04.4 LTS 2026-10-24T21:34:18.2175147Z 2026-10-24T21:34:18.2175418Z Enabling Blacksmith transparent cache 2026-10-24T21:34:18.2386468Z ##[group]Run actions/checkout@v6 2026-10-24T21:34:18.2386826Z with: 2026-10-24T21:34:18.2387141Z sparse-checkout: /* !/.repos/ !/apps/mobile/modules/t3-terminal/Vendor/**/*.a 2026-10-24T21:34:18.2387533Z sparse-checkout-cone-mode: false 2026-10-24T21:34:18.2387805Z repository: pingdotgg/t3code 2026-10-24T21:34:18.2389651Z token: *** 2026-10-24T21:34:18.2389857Z ssh-strict: true 2026-10-24T21:34:18.2390073Z ssh-user: git 2026-10-24T21:34:18.2390561Z persist-credentials: true 2026-10-24T21:34:18.2390801Z clean: true 2026-10-24T21:34:18.2391002Z fetch-depth: 1 2026-10-24T21:34:18.2391212Z fetch-tags: false 2026-10-24T21:34:18.2391437Z show-progress: true 2026-10-24T21:34:18.2391652Z lfs: false 2026-10-24T21:34:18.2391853Z submodules: false 2026-10-24T21:34:18.2392071Z set-safe-directory: true 2026-10-24T21:34:18.2392321Z allow-unsafe-pr-checkout: false 2026-10-24T21:34:18.2442306Z env: 2026-10-24T21:34:18.2442669Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 151 2026-10-24T21:34:18.2442996Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 350 2026-10-24T21:34:18.2443347Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-24T21:34:18.2443638Z ##[endgroup] 2026-10-24T21:34:18.3591592Z Syncing repository: pingdotgg/t3code 2026-10-24T21:34:18.3592445Z ##[group]Getting Git version info 2026-10-24T21:34:18.3592769Z Working directory is '/home/runner/_work/t3code/t3code' 2026-10-24T21:34:18.3593222Z [command]/usr/local/bin/git version 2026-10-24T21:34:18.3662483Z git version 2.55.0 2026-10-24T21:34:18.3673242Z ##[endgroup] 2026-10-24T21:34:18.3679921Z Temporarily overriding HOME='/home/runner/_work/_temp/7dd7b31b-4d91-4eb1-974f-6990073acce9' before making global git config changes 2026-10-24T21:34:18.3680541Z Adding repository directory to the temporary git global config as a safe directory 2026-10-24T21:34:18.3682980Z [command]/usr/local/bin/git config --global --add safe.directory /home/runner/_work/t3code/t3code 2026-10-24T21:34:18.3710913Z Deleting the contents of '/home/runner/_work/t3code/t3code' 2026-10-24T21:34:18.3712470Z ##[group]Determining repository object format 2026-10-24T21:34:18.3713523Z ##[endgroup] 2026-10-24T21:34:18.3713861Z ##[group]Initializing the repository 2026-10-24T21:34:18.3715615Z [command]/usr/local/bin/git init /home/runner/_work/t3code/t3code 2026-10-24T21:34:18.3749535Z hint: Using 'master' as the name for the initial branch. This default branch name 2026-10-24T21:34:18.3750026Z hint: will change to "main" in Git 3.0. To configure the initial branch name 2026-10-24T21:34:18.3750482Z hint: to use in all of your new repositories, which will suppress this warning, 2026-10-24T21:34:18.3750828Z hint: call: 2026-10-24T21:34:18.3751020Z hint: 2026-10-24T21:34:18.3751268Z hint: git config --global init.defaultBranch 2026-10-24T21:34:18.3751555Z hint: 2026-10-24T21:34:18.3751829Z hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 2026-10-24T21:34:18.3752258Z hint: 'development'. The just-created branch can be renamed via this command: 2026-10-24T21:34:18.3752614Z hint: 2026-10-24T21:34:18.3752811Z hint: git branch -m 2026-10-24T21:34:18.3753037Z hint: 2026-10-24T21:34:18.3753335Z hint: Disable this message with "git config set advice.defaultBranchName false" 2026-10-24T21:34:18.3753785Z Initialized empty Git repository in /home/runner/_work/t3code/t3code/.git/ 2026-10-24T21:34:18.3754569Z [command]/usr/local/bin/git remote add origin https://github.com/pingdotgg/t3code 2026-10-24T21:34:18.3777085Z ##[endgroup] 2026-10-24T21:34:18.3777444Z ##[group]Disabling automatic garbage collection 2026-10-24T21:34:18.3779972Z [command]/usr/local/bin/git config --local gc.auto 0 2026-10-24T21:34:18.3799674Z ##[endgroup] 2026-10-24T21:34:18.3800002Z ##[group]Setting up auth 2026-10-24T21:34:18.3800257Z Removing SSH command configuration 2026-10-24T21:34:18.3803390Z [command]/usr/local/bin/git config --local --name-only --get-regexp core\.sshCommand 2026-10-24T21:34:18.3825302Z [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' || :" 2026-10-24T21:34:18.3951941Z Removing HTTP extra header 2026-10-24T21:34:18.3955487Z [command]/usr/local/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader 2026-10-24T21:34:18.3981823Z [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' || :" 2026-10-24T21:34:18.4072562Z Removing includeIf entries pointing to credentials config files 2026-10-24T21:34:18.4075212Z [command]/usr/local/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: 2026-10-24T21:34:18.4095158Z [command]/usr/local/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url 2026-10-24T21:34:18.4183556Z [command]/usr/local/bin/git config --file /home/runner/_work/_temp/git-credentials-2ea3cf91-2d5c-4497-aa21-e8556393f8db.config http.https://github.com/.extraheader AUTHORIZATION: basic *** 2026-10-24T21:34:18.4209207Z [command]/usr/local/bin/git config --local includeIf.gitdir:/home/runner/_work/t3code/t3code/.git.path /home/runner/_work/_temp/git-credentials-2ea3cf91-2d5c-4497-aa21-e8556393f8db.config 2026-10-24T21:34:18.4227760Z [command]/usr/local/bin/git config --local includeIf.gitdir:/home/runner/_work/t3code/t3code/.git/worktrees/*.path /home/runner/_work/_temp/git-credentials-2ea3cf91-2d5c-4497-aa21-e8556393f8db.config 2026-10-24T21:34:18.4246176Z [command]/usr/local/bin/git config --local includeIf.gitdir:/github/workspace/.git.path /github/runner_temp/git-credentials-2ea3cf91-2d5c-4497-aa21-e8556393f8db.config 2026-10-24T21:34:18.4262619Z [command]/usr/local/bin/git config --local includeIf.gitdir:/github/workspace/.git/worktrees/*.path /github/runner_temp/git-credentials-2ea3cf91-2d5c-4497-aa21-e8556393f8db.config 2026-10-24T21:34:18.4278183Z ##[endgroup] 2026-10-24T21:34:18.4278526Z ##[group]Fetching the repository 2026-10-24T21:34:18.4282510Z [command]/usr/local/bin/git -c protocol.version=2 fetch --no-tags --prune --no-recurse-submodules --filter=blob:none --depth=1 origin +eea989536849e5b5049987ee24318b5a77326542:refs/remotes/origin/main 2026-10-24T21:34:18.7501753Z From https://github.com/pingdotgg/t3code 2026-10-24T21:34:18.7502878Z * [new ref] eea989536849e5b5049987ee24318b5a77326542 -> origin/main 2026-10-24T21:34:18.7524983Z [command]/usr/local/bin/git branch --list --remote origin/main 2026-10-24T21:34:18.7546765Z origin/main 2026-10-24T21:34:18.7551577Z [command]/usr/local/bin/git rev-parse refs/remotes/origin/main 2026-10-24T21:34:18.7569861Z eea989536849e5b5049987ee24318b5a77326542 2026-10-24T21:34:18.7572298Z ##[endgroup] 2026-10-24T21:34:18.7573298Z ##[group]Determining the checkout info 2026-10-24T21:34:18.7574423Z ##[endgroup] 2026-10-24T21:34:18.7575504Z ##[group]Setting up sparse checkout 2026-10-24T21:34:18.7576370Z [command]/usr/local/bin/git config core.sparseCheckout true 2026-10-24T21:34:18.7596190Z [command]/usr/local/bin/git rev-parse --git-path info/sparse-checkout 2026-10-24T21:34:18.7611326Z .git/info/sparse-checkout 2026-10-24T21:34:18.7615061Z ##[endgroup] 2026-10-24T21:34:18.7615975Z ##[group]Checking out the ref 2026-10-24T21:34:18.7617680Z [command]/usr/local/bin/git checkout --progress --force -B main refs/remotes/origin/main 2026-10-24T21:34:25.9156910Z Updating files: 0% (1/6402) 2026-10-24T21:34:25.9185515Z Updating files: 1% (65/6402) 2026-10-24T21:34:25.9202564Z Updating files: 2% (129/6402) 2026-10-24T21:34:25.9222831Z Updating files: 3% (193/6402) 2026-10-24T21:34:25.9243025Z Updating files: 4% (257/6402) 2026-10-24T21:34:25.9272586Z Updating files: 5% (321/6402) 2026-10-24T21:34:25.9293653Z Updating files: 6% (385/6402) 2026-10-24T21:34:25.9345069Z Updating files: 7% (449/6402) 2026-10-24T21:34:25.9374817Z Updating files: 8% (513/6402) 2026-10-24T21:34:25.9396329Z Updating files: 9% (577/6402) 2026-10-24T21:34:25.9641641Z Updating files: 10% (641/6402) 2026-10-24T21:34:25.9656730Z Updating files: 11% (705/6402) 2026-10-24T21:34:25.9667057Z Updating files: 12% (769/6402) 2026-10-24T21:34:25.9682991Z Updating files: 13% (833/6402) 2026-10-24T21:34:25.9698789Z Updating files: 14% (897/6402) 2026-10-24T21:34:25.9716165Z Updating files: 15% (961/6402) 2026-10-24T21:34:25.9734049Z Updating files: 16% (1025/6402) 2026-10-24T21:34:25.9748087Z Updating files: 17% (1089/6402) 2026-10-24T21:34:25.9765937Z Updating files: 18% (1153/6402) 2026-10-24T21:34:25.9780092Z Updating files: 19% (1217/6402) 2026-10-24T21:34:25.9803321Z Updating files: 20% (1281/6402) 2026-10-24T21:34:25.9819027Z Updating files: 21% (1345/6402) 2026-10-24T21:34:25.9837133Z Updating files: 22% (1409/6402) 2026-10-24T21:34:25.9849922Z Updating files: 23% (1473/6402) 2026-10-24T21:34:25.9862754Z Updating files: 24% (1537/6402) 2026-10-24T21:34:25.9879344Z Updating files: 25% (1601/6402) 2026-10-24T21:34:25.9893351Z Updating files: 26% (1665/6402) 2026-10-24T21:34:25.9906343Z Updating files: 27% (1729/6402) 2026-10-24T21:34:25.9925570Z Updating files: 28% (1793/6402) 2026-10-24T21:34:25.9958208Z Updating files: 29% (1857/6402) 2026-10-24T21:34:25.9977886Z Updating files: 30% (1921/6402) 2026-10-24T21:34:26.0000677Z Updating files: 31% (1985/6402) 2026-10-24T21:34:26.0030722Z Updating files: 32% (2049/6402) 2026-10-24T21:34:26.0057939Z Updating files: 33% (2113/6402) 2026-10-24T21:34:26.0125526Z Updating files: 34% (2177/6402) 2026-10-24T21:34:26.0181069Z Updating files: 35% (2241/6402) 2026-10-24T21:34:26.0215910Z Updating files: 36% (2305/6402) 2026-10-24T21:34:26.0247603Z Updating files: 37% (2369/6402) 2026-10-24T21:34:26.0298370Z Updating files: 38% (2433/6402) 2026-10-24T21:34:26.0331067Z Updating files: 39% (2497/6402) 2026-10-24T21:34:26.0359712Z Updating files: 40% (2561/6402) 2026-10-24T21:34:26.0386259Z Updating files: 41% (2625/6402) 2026-10-24T21:34:26.0401470Z Updating files: 42% (2689/6402) 2026-10-24T21:34:26.0411190Z Updating files: 43% (2753/6402) 2026-10-24T21:34:26.0439529Z Updating files: 44% (2817/6402) 2026-10-24T21:34:26.0468040Z Updating files: 45% (2881/6402) 2026-10-24T21:34:26.0494351Z Updating files: 46% (2945/6402) 2026-10-24T21:34:26.0519146Z Updating files: 47% (3009/6402) 2026-10-24T21:34:26.0547017Z Updating files: 48% (3073/6402) 2026-10-24T21:34:26.0583536Z Updating files: 49% (3137/6402) 2026-10-24T21:34:26.0610593Z Updating files: 50% (3201/6402) 2026-10-24T21:34:26.0625262Z Updating files: 51% (3266/6402) 2026-10-24T21:34:26.0659560Z Updating files: 52% (3330/6402) 2026-10-24T21:34:26.0686826Z Updating files: 53% (3394/6402) 2026-10-24T21:34:26.0705655Z Updating files: 54% (3458/6402) 2026-10-24T21:34:26.0728501Z Updating files: 55% (3522/6402) 2026-10-24T21:34:26.0742991Z Updating files: 56% (3586/6402) 2026-10-24T21:34:26.0761530Z Updating files: 57% (3650/6402) 2026-10-24T21:34:26.0778489Z Updating files: 58% (3714/6402) 2026-10-24T21:34:26.1130399Z Updating files: 59% (3778/6402) 2026-10-24T21:34:26.1144204Z Updating files: 60% (3842/6402) 2026-10-24T21:34:26.1163075Z Updating files: 61% (3906/6402) 2026-10-24T21:34:26.1180382Z Updating files: 62% (3970/6402) 2026-10-24T21:34:26.1201828Z Updating files: 63% (4034/6402) 2026-10-24T21:34:26.1227879Z Updating files: 64% (4098/6402) 2026-10-24T21:34:26.1246638Z Updating files: 65% (4162/6402) 2026-10-24T21:34:26.1262936Z Updating files: 66% (4226/6402) 2026-10-24T21:34:26.1286478Z Updating files: 67% (4290/6402) 2026-10-24T21:34:26.1300328Z Updating files: 68% (4354/6402) 2026-10-24T21:34:26.1318080Z Updating files: 69% (4418/6402) 2026-10-24T21:34:26.1330464Z Updating files: 70% (4482/6402) 2026-10-24T21:34:26.1348113Z Updating files: 71% (4546/6402) 2026-10-24T21:34:26.1361050Z Updating files: 72% (4610/6402) 2026-10-24T21:34:26.1405549Z Updating files: 73% (4674/6402) 2026-10-24T21:34:26.1792302Z Updating files: 74% (4738/6402) 2026-10-24T21:34:26.1814295Z Updating files: 75% (4802/6402) 2026-10-24T21:34:26.1836733Z Updating files: 76% (4866/6402) 2026-10-24T21:34:26.1860123Z Updating files: 77% (4930/6402) 2026-10-24T21:34:26.1880705Z Updating files: 78% (4994/6402) 2026-10-24T21:34:26.1895976Z Updating files: 79% (5058/6402) 2026-10-24T21:34:26.1921167Z Updating files: 80% (5122/6402) 2026-10-24T21:34:26.1935741Z Updating files: 81% (5186/6402) 2026-10-24T21:34:26.1952986Z Updating files: 82% (5250/6402) 2026-10-24T21:34:26.1974494Z Updating files: 83% (5314/6402) 2026-10-24T21:34:26.1998386Z Updating files: 84% (5378/6402) 2026-10-24T21:34:26.2015064Z Updating files: 85% (5442/6402) 2026-10-24T21:34:26.2040876Z Updating files: 86% (5506/6402) 2026-10-24T21:34:26.2108008Z Updating files: 87% (5570/6402) 2026-10-24T21:34:26.2136270Z Updating files: 88% (5634/6402) 2026-10-24T21:34:26.2155112Z Updating files: 89% (5698/6402) 2026-10-24T21:34:26.2183188Z Updating files: 90% (5762/6402) 2026-10-24T21:34:26.2209883Z Updating files: 91% (5826/6402) 2026-10-24T21:34:26.2223860Z Updating files: 92% (5890/6402) 2026-10-24T21:34:26.2247817Z Updating files: 93% (5954/6402) 2026-10-24T21:34:26.2267155Z Updating files: 94% (6018/6402) 2026-10-24T21:34:26.2289668Z Updating files: 95% (6082/6402) 2026-10-24T21:34:26.2343580Z Updating files: 96% (6146/6402) 2026-10-24T21:34:26.2367372Z Updating files: 97% (6210/6402) 2026-10-24T21:34:26.2411021Z Updating files: 98% (6274/6402) 2026-10-24T21:34:26.2429834Z Updating files: 99% (6338/6402) 2026-10-24T21:34:26.2430096Z Updating files: 100% (6402/6402) 2026-10-24T21:34:26.2577901Z Updating files: 100% (6402/6402), done. 2026-10-24T21:34:26.2578126Z Switched to a new branch 'main' 2026-10-24T21:34:26.2579068Z branch 'main' set up to track 'origin/main'. 2026-10-24T21:34:26.2591509Z ##[endgroup] 2026-10-24T21:34:26.2624561Z [command]/usr/local/bin/git log -1 --format=%H 2026-10-24T21:34:26.2643141Z eea989536849e5b5049987ee24318b5a77326542 2026-10-24T21:34:26.2762696Z Prepare all required actions 2026-10-24T21:34:26.2782792Z ##[group]Run ./.github/actions/setup-apt-mirrors 2026-10-24T21:34:26.2782967Z env: 2026-10-24T21:34:26.2783098Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 151 2026-10-24T21:34:26.2783257Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 350 2026-10-24T21:34:26.2783416Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-24T21:34:26.2783567Z ##[endgroup] 2026-10-24T21:34:26.2921848Z ##[start-action display=Run # Replace the existing Blacksmith mirror list as well as direct sources.;id=__self.__run] 2026-10-24T21:34:26.2937604Z ##[group]Run # Replace the existing Blacksmith mirror list as well as direct sources. 2026-10-24T21:34:26.2938155Z # Replace the existing Blacksmith mirror list as well as direct sources. 2026-10-24T21:34:26.2938503Z printf '%s\tpriority:%s\n' \ 2026-10-24T21:34:26.2938788Z  https://archive.ubuntu.com/ubuntu 1 \ 2026-10-24T21:34:26.2939066Z  https://mirrors.edge.kernel.org/ubuntu 2 \ 2026-10-24T21:34:26.2939276Z  https://mirror.math.princeton.edu/pub/ubuntu 3 \ 2026-10-24T21:34:26.2939509Z  | sudo tee /etc/apt/blacksmith-ubuntu-mirrors.txt > /dev/null 2026-10-24T21:34:26.2939697Z  2026-10-24T21:34:26.2939868Z # APT's mirror transport retries each file against the next server. 2026-10-24T21:34:26.2940138Z sudo find /etc/apt -maxdepth 2 -type f \( -name '*.list' -o -name '*.sources' \) \ 2026-10-24T21:34:26.2940362Z  -exec sed -i -E \ 2026-10-24T21:34:26.2940631Z  's#https?://(([^/]+\.)?archive|security)\.ubuntu\.com/ubuntu/?#mirror+file:/etc/apt/blacksmith-ubuntu-mirrors.txt#g' {} + 2026-10-24T21:34:26.2940895Z  2026-10-24T21:34:26.2941066Z # Move on to a fallback before an unreachable server exhausts the job. 2026-10-24T21:34:26.2941326Z printf '%s\n' 'Acquire::http::Timeout "15";' 'Acquire::https::Timeout "15";' \ 2026-10-24T21:34:26.2941575Z  | sudo tee /etc/apt/apt.conf.d/80-mirror-timeouts > /dev/null 2026-10-24T21:34:26.2951143Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2026-10-24T21:34:26.2951328Z env: 2026-10-24T21:34:26.2951459Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 151 2026-10-24T21:34:26.2951622Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 350 2026-10-24T21:34:26.2951856Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-24T21:34:26.2952042Z ##[endgroup] 2026-10-24T21:34:26.3174070Z ##[end-action id=__self.__run;outcome=success;conclusion=success;duration_ms=25] 2026-10-24T21:34:26.3194854Z ##[group]Run sudo sed -i 's|http://|https://|g' /etc/apt/blacksmith-ubuntu-mirrors.txt /etc/apt/sources.list.d/ubuntu.sources 2026-10-24T21:34:26.3195377Z sudo sed -i 's|http://|https://|g' /etc/apt/blacksmith-ubuntu-mirrors.txt /etc/apt/sources.list.d/ubuntu.sources 2026-10-24T21:34:26.3195632Z ( 2026-10-24T21:34:26.3195750Z  set +e 2026-10-24T21:34:26.3195937Z  sudo apt-get update && sudo apt-get install -y libsecret-1-dev pkg-config 2026-10-24T21:34:26.3196167Z  echo "$?" > "$RUNNER_TEMP/apt-status" 2026-10-24T21:34:26.3196348Z ) > "$RUNNER_TEMP/apt.log" 2>&1 < /dev/null & 2026-10-24T21:34:26.3204503Z shell: /usr/bin/bash -e {0} 2026-10-24T21:34:26.3204646Z env: 2026-10-24T21:34:26.3204781Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 151 2026-10-24T21:34:26.3204940Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 350 2026-10-24T21:34:26.3205100Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-24T21:34:26.3205246Z ##[endgroup] 2026-10-24T21:34:26.3326888Z Prepare all required actions 2026-10-24T21:34:26.3327202Z Getting action download info 2026-10-24T21:34:26.4171925Z Download action repository 'voidzero-dev/setup-vp@v1' (SHA:250f29ce396baf5e8f24498e17c0dfdebabc26eb) 2026-10-24T21:34:26.5174529Z ##[group]Run ./.github/actions/setup-ci-deps 2026-10-24T21:34:26.5174817Z env: 2026-10-24T21:34:26.5175034Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 151 2026-10-24T21:34:26.5175296Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 350 2026-10-24T21:34:26.5175563Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-24T21:34:26.5175808Z ##[endgroup] 2026-10-24T21:34:26.5235472Z ##[start-action display=Resolve Vite+ version;id=__self_2.vp] 2026-10-24T21:34:26.5244177Z ##[group]Run echo "version=$(sed -nE 's/^ vite-plus: ([0-9][^ ]*)$/\1/p' pnpm-workspace.yaml)" >> "$GITHUB_OUTPUT" 2026-10-24T21:34:26.5244543Z echo "version=$(sed -nE 's/^ vite-plus: ([0-9][^ ]*)$/\1/p' pnpm-workspace.yaml)" >> "$GITHUB_OUTPUT" 2026-10-24T21:34:26.5244859Z echo "node=$(jq -r '.engines.node' package.json)" >> "$GITHUB_OUTPUT" 2026-10-24T21:34:26.5245116Z echo "pnpm=$(jq -r '.packageManager' package.json)" >> "$GITHUB_OUTPUT" 2026-10-24T21:34:26.5254991Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2026-10-24T21:34:26.5255192Z env: 2026-10-24T21:34:26.5255333Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 151 2026-10-24T21:34:26.5255500Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 350 2026-10-24T21:34:26.5255660Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-24T21:34:26.5255814Z ##[endgroup] 2026-10-24T21:34:26.5329268Z ##[end-action id=__self_2.vp;outcome=success;conclusion=success;duration_ms=9] 2026-10-24T21:34:26.5331324Z ##[start-action display=Cache Vite+;id=__self_2.vp_cache] 2026-10-24T21:34:26.5382063Z ##[group]Run actions/cache@v6 2026-10-24T21:34:26.5382307Z with: 2026-10-24T21:34:26.5382505Z path: ~/.vite-plus 2026-10-24T21:34:26.5382790Z key: vite-plus-home-v2-Linux-X64-1.3.0-node26.12.1-pnpm@12.14.0 2026-10-24T21:34:26.5383133Z enableCrossOsArchive: false 2026-10-24T21:34:26.5383373Z fail-on-cache-miss: false 2026-10-24T21:34:26.5383606Z lookup-only: false 2026-10-24T21:34:26.5383828Z save-always: false 2026-10-24T21:34:26.5384048Z env: 2026-10-24T21:34:26.5384274Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 151 2026-10-24T21:34:26.5384541Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 350 2026-10-24T21:34:26.5384800Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-24T21:34:26.5385044Z ##[endgroup] 2026-10-24T21:34:26.7460612Z Cache hit for: vite-plus-home-v2-Linux-X64-1.3.0-node26.12.1-pnpm@12.14.0 2026-10-24T21:34:27.1175386Z Received 170349591 of 170349591 (100.0%), 462.8 MBs/sec 2026-10-24T21:34:27.1176429Z Cache Size: ~162 MB (170349591 B) 2026-10-24T21:34:27.1224478Z [command]/usr/bin/tar -xf /home/runner/_work/_temp/f4b08be2-41bb-4a57-8efb-d7a2586fb475/cache.tzst -P -C /home/runner/_work/t3code/t3code --use-compress-program unzstd 2026-10-24T21:34:27.7523597Z Cache restored successfully 2026-10-24T21:34:27.7699670Z Cache restored from key: vite-plus-home-v2-Linux-X64-1.3.0-node26.12.1-pnpm@12.14.0 2026-10-24T21:34:27.7772962Z ##[end-action id=__self_2.vp_cache;outcome=success;conclusion=success;duration_ms=1244] 2026-10-24T21:34:27.7778092Z ##[start-action display=Use cached Vite+;id=__self_2.__run] 2026-10-24T21:34:27.7824469Z ##[group]Run echo "$HOME/.vite-plus/bin" >> "$GITHUB_PATH" 2026-10-24T21:34:27.7824729Z echo "$HOME/.vite-plus/bin" >> "$GITHUB_PATH" 2026-10-24T21:34:27.7824910Z "$HOME/.vite-plus/bin/vp" env use "26.12.1" 2026-10-24T21:34:27.7837149Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2026-10-24T21:34:27.7837334Z env: 2026-10-24T21:34:27.7837466Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 151 2026-10-24T21:34:27.7837620Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 350 2026-10-24T21:34:27.7837763Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-24T21:34:27.7837902Z ##[endgroup] 2026-10-24T21:34:27.7892872Z Using Node.js v26.12.1 (resolved from 26.12.1) 2026-10-24T21:34:27.7907130Z ##[end-action id=__self_2.__run;outcome=success;conclusion=success;duration_ms=12] 2026-10-24T21:34:27.7910227Z ##[start-action display=Setup Vite+;id=__self_2.__voidzero-dev_setup-vp] 2026-10-24T21:34:27.7918324Z ##[end-action id=__self_2.__voidzero-dev_setup-vp;outcome=skipped;conclusion=skipped;duration_ms=0] 2026-10-24T21:34:27.7920285Z ##[start-action display=Resolve pnpm store path;id=__self_2.pnpm_store] 2026-10-24T21:34:27.7935788Z ##[group]Run store_path="$(vp pm cache dir)" 2026-10-24T21:34:27.7936070Z store_path="$(vp pm cache dir)" 2026-10-24T21:34:27.7936339Z echo "path=$store_path" >> "$GITHUB_OUTPUT" 2026-10-24T21:34:27.7955098Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2026-10-24T21:34:27.7955400Z env: 2026-10-24T21:34:27.7955579Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 151 2026-10-24T21:34:27.7955822Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 350 2026-10-24T21:34:27.7956072Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-24T21:34:27.7956349Z ##[endgroup] 2026-10-24T21:34:27.8144172Z ##[end-action id=__self_2.pnpm_store;outcome=success;conclusion=success;duration_ms=22] 2026-10-24T21:34:27.8146064Z ##[start-action display=Cache full pnpm store;id=__self_2.__actions_cache] 2026-10-24T21:34:27.8696551Z ##[group]Run actions/cache@v6 2026-10-24T21:34:27.8696704Z with: 2026-10-24T21:34:27.8696841Z path: /home/runner/.local/share/pnpm/store/v11 2026-10-24T21:34:27.8697091Z key: pnpm-full-v1-Linux-X64-bab31c3827e90e1352d302da4c761fd1b91963ae565f5f0ea70972d0942af1f6 2026-10-24T21:34:27.8697333Z restore-keys: pnpm-full-v1-Linux-X64- 2026-10-24T21:34:27.8697475Z enableCrossOsArchive: false 2026-10-24T21:34:27.8697604Z fail-on-cache-miss: false 2026-10-24T21:34:27.8697720Z lookup-only: false 2026-10-24T21:34:27.8697829Z save-always: false 2026-10-24T21:34:27.8697936Z env: 2026-10-24T21:34:27.8698048Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 151 2026-10-24T21:34:27.8698191Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 350 2026-10-24T21:34:27.8698326Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-24T21:34:27.8698470Z ##[endgroup] 2026-10-24T21:34:28.0629201Z Cache hit for: pnpm-full-v1-Linux-X64-bab31c3827e90e1352d302da4c761fd1b91963ae565f5f0ea70972d0942af1f6 2026-10-24T21:34:29.1086750Z Received 536870912 of 995395870 (53.9%), 500.5 MBs/sec 2026-10-24T21:34:29.8614718Z Received 995395870 of 995395870 (100.0%), 534.5 MBs/sec 2026-10-24T21:34:29.8615275Z Cache Size: ~949 MB (995395870 B) 2026-10-24T21:34:29.8672328Z [command]/usr/bin/tar -xf /home/runner/_work/_temp/4e98e76e-f88e-4dfe-9868-c4b3a094c307/cache.tzst -P -C /home/runner/_work/t3code/t3code --use-compress-program unzstd 2026-10-24T21:34:34.8981757Z Cache restored successfully 2026-10-24T21:34:34.9419204Z Cache restored from key: pnpm-full-v1-Linux-X64-bab31c3827e90e1352d302da4c761fd1b91963ae565f5f0ea70972d0942af1f6 2026-10-24T21:34:34.9483326Z ##[end-action id=__self_2.__actions_cache;outcome=success;conclusion=success;duration_ms=7133] 2026-10-24T21:34:34.9485586Z ##[start-action display=Install dependencies;id=__self_2.__run_2] 2026-10-24T21:34:34.9494505Z ##[group]Run vp install 2026-10-24T21:34:34.9494637Z vp install 2026-10-24T21:34:34.9503421Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2026-10-24T21:34:34.9503629Z env: 2026-10-24T21:34:34.9503739Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 151 2026-10-24T21:34:34.9503879Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 350 2026-10-24T21:34:34.9504016Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-24T21:34:34.9504146Z ##[endgroup] 2026-10-24T21:34:34.9910585Z Scope: all 34 workspace projects 2026-10-24T21:34:35.0925770Z ? Verifying lockfile against supply-chain policies (2088 entries)... 2026-10-24T21:34:35.3671813Z Packages are hard linked from the content-addressable store to the virtual store. 2026-10-24T21:34:35.3672394Z Content-addressable store is at: /home/runner/.local/share/pnpm/store/v11 2026-10-24T21:34:35.3672661Z Virtual store is at: node_modules/.pnpm 2026-10-24T21:34:37.7541046Z ✓ Lockfile passes supply-chain policies (2088 entries in 2.7s) 2026-10-24T21:34:37.7541452Z Lockfile is up to date, resolution step is skipped 2026-10-24T21:34:37.7707846Z Packages: +1721 2026-10-24T21:34:37.7708166Z ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2026-10-24T21:34:37.8011856Z Progress: resolved 1721, reused 1718, downloaded 0, added 1721, done 2026-10-24T21:34:38.6576277Z . prepare$ vp config --no-agent 2026-10-24T21:34:38.7922639Z . prepare: Done 2026-10-24T21:34:38.7940691Z 2026-10-24T21:34:38.7940943Z devDependencies: 2026-10-24T21:34:38.7941121Z + @coderabbitai/config 1.1.0 2026-10-24T21:34:38.7941270Z + @shadcn/lint 0.1.5 2026-10-24T21:34:38.7941457Z + @types/node 24.12.4 2026-10-24T21:34:38.7941601Z + knip 6.34.0 2026-10-24T21:34:38.7941759Z + typescript <- @tsc-rs/typescript 0.8.0 2026-10-24T21:34:38.7941916Z + vite-plus 1.3.0 2026-10-24T21:34:38.7941977Z 2026-10-24T21:34:38.7962404Z Done in 3.8s using pnpm v12.14.0 2026-10-24T21:34:38.8182163Z ##[end-action id=__self_2.__run_2;outcome=success;conclusion=success;duration_ms=3869] 2026-10-24T21:34:38.9056450Z ##[group]Run actions/cache@v6 2026-10-24T21:34:38.9056704Z with: 2026-10-24T21:34:38.9056864Z path: ~/.cache/electron 2026-10-24T21:34:38.9057198Z key: electron-Linux-X64-854e11ddd491bd4f350eebb67a74265df119376a3984c8e153cfe5fc8ced6309 2026-10-24T21:34:38.9057542Z enableCrossOsArchive: false 2026-10-24T21:34:38.9057736Z fail-on-cache-miss: false 2026-10-24T21:34:38.9057915Z lookup-only: false 2026-10-24T21:34:38.9058081Z save-always: false 2026-10-24T21:34:38.9058242Z env: 2026-10-24T21:34:38.9058409Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 151 2026-10-24T21:34:38.9058640Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 350 2026-10-24T21:34:38.9058886Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-24T21:34:38.9059097Z ##[endgroup] 2026-10-24T21:34:39.0944778Z Cache hit for: electron-Linux-X64-854e11ddd491bd4f350eebb67a74265df119376a3984c8e153cfe5fc8ced6309 2026-10-24T21:34:39.2616219Z Received 122906203 of 122906203 (100.0%), 776.2 MBs/sec 2026-10-24T21:34:39.2616776Z Cache Size: ~117 MB (122906203 B) 2026-10-24T21:34:39.2652130Z [command]/usr/bin/tar -xf /home/runner/_work/_temp/df6bcdc0-99e7-46c3-a343-dc6bf7687d5d/cache.tzst -P -C /home/runner/_work/t3code/t3code --use-compress-program unzstd 2026-10-24T21:34:39.3240753Z Cache restored successfully 2026-10-24T21:34:39.3363860Z Cache restored from key: electron-Linux-X64-854e11ddd491bd4f350eebb67a74265df119376a3984c8e153cfe5fc8ced6309 2026-10-24T21:34:39.3475443Z ##[group]Run vp run --filter @t3tools/desktop ensure:electron 2026-10-24T21:34:39.3475720Z vp run --filter @t3tools/desktop ensure:electron 2026-10-24T21:34:39.3485809Z shell: /usr/bin/bash -e {0} 2026-10-24T21:34:39.3486135Z env: 2026-10-24T21:34:39.3486246Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 151 2026-10-24T21:34:39.3486405Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 350 2026-10-24T21:34:39.3486554Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-24T21:34:39.3486693Z ##[endgroup] 2026-10-24T21:34:39.5248416Z ~/apps/desktop$ node scripts/ensure-electron-runtime.mjs ⊘ cache disabled 2026-10-24T21:34:40.0612782Z /home/runner/_work/t3code/t3code/node_modules/.pnpm/electron@44.9.3_supports-color@8.1.1/node_modules/electron/dist/electron 2026-10-24T21:34:40.0630922Z 2026-10-24T21:34:40.0742971Z ##[group]Run ( 2026-10-24T21:34:40.0743197Z ( 2026-10-24T21:34:40.0743319Z  set +e 2026-10-24T21:34:40.0743439Z  vpr typecheck 2026-10-24T21:34:40.0743587Z  echo "$?" > "$RUNNER_TEMP/typecheck-status" 2026-10-24T21:34:40.0743801Z ) > "$RUNNER_TEMP/typecheck.log" 2>&1 < /dev/null & 2026-10-24T21:34:40.0754174Z shell: /usr/bin/bash -e {0} 2026-10-24T21:34:40.0754309Z env: 2026-10-24T21:34:40.0754423Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 151 2026-10-24T21:34:40.0754572Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 350 2026-10-24T21:34:40.0754721Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-24T21:34:40.0754857Z ##[endgroup] 2026-10-24T21:34:40.0814628Z ##[group]Run until test -s "$RUNNER_TEMP/apt-status"; do sleep 1; done 2026-10-24T21:34:40.0814930Z until test -s "$RUNNER_TEMP/apt-status"; do sleep 1; done 2026-10-24T21:34:40.0815121Z cat "$RUNNER_TEMP/apt.log" 2026-10-24T21:34:40.0815294Z exit "$(cat "$RUNNER_TEMP/apt-status")" 2026-10-24T21:34:40.0822642Z shell: /usr/bin/bash -e {0} 2026-10-24T21:34:40.0822778Z env: 2026-10-24T21:34:40.0822890Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 151 2026-10-24T21:34:40.0823039Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 350 2026-10-24T21:34:40.0823243Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-24T21:34:40.0823448Z ##[endgroup] 2026-10-24T21:36:15.1892561Z blacksmith: the apt mirror lists changed since the package indexes were staged; discarding the staged indexes 2026-10-24T21:36:15.1893118Z Get:1 file:/etc/apt/blacksmith-ubuntu-mirrors.txt Mirrorlist [151 B] 2026-10-24T21:36:15.1893432Z Hit:6 https://packages.microsoft.com/repos/azure-cli noble InRelease 2026-10-24T21:36:15.1893690Z Get:7 https://packages.microsoft.com/ubuntu/24.04/prod noble InRelease [3600 B] 2026-10-24T21:36:15.1893960Z Get:8 https://dl.google.com/linux/chrome-stable/deb stable InRelease [2548 B] 2026-10-24T21:36:15.1894226Z Get:9 https://packages.microsoft.com/ubuntu/24.04/prod noble/main amd64 Packages [660 kB] 2026-10-24T21:36:15.1894518Z Get:10 https://packages.microsoft.com/ubuntu/24.04/prod noble/main arm64 Packages [598 kB] 2026-10-24T21:36:15.1894795Z Get:11 https://dl.google.com/linux/chrome-stable/deb stable/main amd64 Packages [1411 B] 2026-10-24T21:36:15.1895061Z Get:2 https://archive.ubuntu.com/ubuntu noble InRelease [256 kB] 2026-10-24T21:36:15.1895329Z Get:3 https://archive.ubuntu.com/ubuntu noble-updates InRelease [126 kB] 2026-10-24T21:36:15.1895573Z Get:4 https://archive.ubuntu.com/ubuntu noble-backports InRelease [126 kB] 2026-10-24T21:36:15.1895823Z Get:5 https://archive.ubuntu.com/ubuntu noble-security InRelease [126 kB] 2026-10-24T21:36:15.1896064Z Get:12 https://archive.ubuntu.com/ubuntu noble/main amd64 Packages [1401 kB] 2026-10-24T21:36:15.1896315Z Get:13 https://archive.ubuntu.com/ubuntu noble/main Translation-en [513 kB] 2026-10-24T21:36:15.1896554Z Get:14 https://archive.ubuntu.com/ubuntu noble/main amd64 Components [464 kB] 2026-10-24T21:36:15.1896809Z Get:15 https://archive.ubuntu.com/ubuntu noble/main amd64 c-n-f Metadata [30.5 kB] 2026-10-24T21:36:15.1897062Z Get:16 https://archive.ubuntu.com/ubuntu noble/universe amd64 Packages [15.0 MB] 2026-10-24T21:36:15.1897316Z Get:17 https://archive.ubuntu.com/ubuntu noble/universe Translation-en [5982 kB] 2026-10-24T21:36:15.1897562Z Get:18 https://archive.ubuntu.com/ubuntu noble/universe amd64 Components [3871 kB] 2026-10-24T21:36:15.1897827Z Get:19 https://archive.ubuntu.com/ubuntu noble/universe amd64 c-n-f Metadata [301 kB] 2026-10-24T21:36:15.1898089Z Get:20 https://archive.ubuntu.com/ubuntu noble/restricted amd64 Packages [93.9 kB] 2026-10-24T21:36:15.1898343Z Get:21 https://archive.ubuntu.com/ubuntu noble/restricted Translation-en [18.7 kB] 2026-10-24T21:36:15.1898597Z Get:22 https://archive.ubuntu.com/ubuntu noble/restricted amd64 c-n-f Metadata [416 B] 2026-10-24T21:36:15.1898865Z Get:23 https://archive.ubuntu.com/ubuntu noble/multiverse amd64 Packages [269 kB] 2026-10-24T21:36:15.1899113Z Get:24 https://archive.ubuntu.com/ubuntu noble/multiverse Translation-en [118 kB] 2026-10-24T21:36:15.1899371Z Get:25 https://archive.ubuntu.com/ubuntu noble/multiverse amd64 Components [35.0 kB] 2026-10-24T21:36:15.1899640Z Get:26 https://archive.ubuntu.com/ubuntu noble/multiverse amd64 c-n-f Metadata [8328 B] 2026-10-24T21:36:15.1899903Z Get:27 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 Packages [1400 kB] 2026-10-24T21:36:15.1900166Z Get:28 https://archive.ubuntu.com/ubuntu noble-updates/main Translation-en [310 kB] 2026-10-24T21:36:15.1900468Z Get:29 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 Components [181 kB] 2026-10-24T21:36:15.1900760Z Get:30 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 c-n-f Metadata [17.7 kB] 2026-10-24T21:36:15.1901068Z Get:31 https://archive.ubuntu.com/ubuntu noble-updates/universe amd64 Packages [1706 kB] 2026-10-24T21:36:15.1901344Z Get:32 https://archive.ubuntu.com/ubuntu noble-updates/universe Translation-en [342 kB] 2026-10-24T21:36:15.1901615Z Get:33 https://archive.ubuntu.com/ubuntu noble-updates/universe amd64 Components [388 kB] 2026-10-24T21:36:15.1901908Z Get:34 https://archive.ubuntu.com/ubuntu noble-updates/universe amd64 c-n-f Metadata [34.9 kB] 2026-10-24T21:36:15.1902262Z Get:35 https://archive.ubuntu.com/ubuntu noble-updates/restricted amd64 Packages [1805 kB] 2026-10-24T21:36:15.1902543Z Get:36 https://archive.ubuntu.com/ubuntu noble-updates/restricted Translation-en [411 kB] 2026-10-24T21:36:15.1902816Z Get:37 https://archive.ubuntu.com/ubuntu noble-updates/restricted amd64 Components [212 B] 2026-10-24T21:36:15.1903111Z Get:38 https://archive.ubuntu.com/ubuntu noble-updates/restricted amd64 c-n-f Metadata [456 B] 2026-10-24T21:36:15.1903391Z Get:39 https://archive.ubuntu.com/ubuntu noble-updates/multiverse amd64 Packages [50.7 kB] 2026-10-24T21:36:15.1903678Z Get:40 https://archive.ubuntu.com/ubuntu noble-updates/multiverse Translation-en [14.0 kB] 2026-10-24T21:36:15.1903949Z Get:41 https://archive.ubuntu.com/ubuntu noble-updates/multiverse amd64 Components [940 B] 2026-10-24T21:36:15.1904237Z Get:42 https://archive.ubuntu.com/ubuntu noble-updates/multiverse amd64 c-n-f Metadata [656 B] 2026-10-24T21:36:15.1904515Z Get:43 https://archive.ubuntu.com/ubuntu noble-backports/main amd64 Packages [40.6 kB] 2026-10-24T21:36:15.1904783Z Get:44 https://archive.ubuntu.com/ubuntu noble-backports/main Translation-en [9172 B] 2026-10-24T21:36:15.1905048Z Get:45 https://archive.ubuntu.com/ubuntu noble-backports/main amd64 Components [5764 B] 2026-10-24T21:36:15.1905489Z Get:46 https://archive.ubuntu.com/ubuntu noble-backports/main amd64 c-n-f Metadata [368 B] 2026-10-24T21:36:15.1905860Z Get:47 https://archive.ubuntu.com/ubuntu noble-backports/universe amd64 Packages [31.0 kB] 2026-10-24T21:36:15.1906135Z Get:48 https://archive.ubuntu.com/ubuntu noble-backports/universe Translation-en [18.6 kB] 2026-10-24T21:36:15.1906411Z Get:49 https://archive.ubuntu.com/ubuntu noble-backports/universe amd64 Components [12.6 kB] 2026-10-24T21:36:15.1906701Z Get:50 https://archive.ubuntu.com/ubuntu noble-backports/universe amd64 c-n-f Metadata [1588 B] 2026-10-24T21:36:15.1906987Z Get:51 https://archive.ubuntu.com/ubuntu noble-backports/restricted amd64 Components [212 B] 2026-10-24T21:36:15.1907271Z Get:52 https://archive.ubuntu.com/ubuntu noble-backports/restricted amd64 c-n-f Metadata [116 B] 2026-10-24T21:36:15.1907561Z Get:53 https://archive.ubuntu.com/ubuntu noble-backports/multiverse amd64 Packages [748 B] 2026-10-24T21:36:15.1907832Z Get:54 https://archive.ubuntu.com/ubuntu noble-backports/multiverse Translation-en [340 B] 2026-10-24T21:36:15.1908120Z Get:55 https://archive.ubuntu.com/ubuntu noble-backports/multiverse amd64 Components [212 B] 2026-10-24T21:36:15.1908409Z Get:56 https://archive.ubuntu.com/ubuntu noble-backports/multiverse amd64 c-n-f Metadata [116 B] 2026-10-24T21:36:15.1908689Z Get:57 https://archive.ubuntu.com/ubuntu noble-security/main amd64 Packages [1146 kB] 2026-10-24T21:36:15.1908948Z Get:58 https://archive.ubuntu.com/ubuntu noble-security/main Translation-en [231 kB] 2026-10-24T21:36:15.1909215Z Get:59 https://archive.ubuntu.com/ubuntu noble-security/main amd64 Components [46.4 kB] 2026-10-24T21:36:15.1909692Z Get:60 https://archive.ubuntu.com/ubuntu noble-security/main amd64 c-n-f Metadata [11.9 kB] 2026-10-24T21:36:15.1909975Z Get:61 https://archive.ubuntu.com/ubuntu noble-security/universe amd64 Packages [1222 kB] 2026-10-24T21:36:15.1910242Z Get:62 https://archive.ubuntu.com/ubuntu noble-security/universe Translation-en [246 kB] 2026-10-24T21:36:15.1910524Z Get:63 https://archive.ubuntu.com/ubuntu noble-security/universe amd64 Components [76.3 kB] 2026-10-24T21:36:15.1910865Z Get:64 https://archive.ubuntu.com/ubuntu noble-security/universe amd64 c-n-f Metadata [24.2 kB] 2026-10-24T21:36:15.1911156Z Get:65 https://archive.ubuntu.com/ubuntu noble-security/restricted amd64 Packages [1713 kB] 2026-10-24T21:36:15.1911431Z Get:66 https://archive.ubuntu.com/ubuntu noble-security/restricted Translation-en [392 kB] 2026-10-24T21:36:15.1911714Z Get:67 https://archive.ubuntu.com/ubuntu noble-security/restricted amd64 Components [212 B] 2026-10-24T21:36:15.1912002Z Get:68 https://archive.ubuntu.com/ubuntu noble-security/restricted amd64 c-n-f Metadata [444 B] 2026-10-24T21:36:15.1912294Z Get:69 https://archive.ubuntu.com/ubuntu noble-security/multiverse amd64 Packages [45.4 kB] 2026-10-24T21:36:15.1912570Z Get:70 https://archive.ubuntu.com/ubuntu noble-security/multiverse Translation-en [12.1 kB] 2026-10-24T21:36:15.1912851Z Get:71 https://archive.ubuntu.com/ubuntu noble-security/multiverse amd64 Components [208 B] 2026-10-24T21:36:15.1913140Z Get:72 https://archive.ubuntu.com/ubuntu noble-security/multiverse amd64 c-n-f Metadata [468 B] 2026-10-24T21:36:15.1913370Z Fetched 42.0 MB in 9s (4926 kB/s) 2026-10-24T21:36:15.1913517Z Reading package lists... 2026-10-24T21:36:15.1913647Z Reading package lists... 2026-10-24T21:36:15.1913782Z Building dependency tree... 2026-10-24T21:36:15.1913917Z Reading state information... 2026-10-24T21:36:15.1914082Z pkg-config is already the newest version (1.8.1-2build1). 2026-10-24T21:36:15.1914275Z The following additional packages will be installed: 2026-10-24T21:36:15.1914482Z bsdextrautils bsdutils eject fdisk gir1.2-glib-2.0 gir1.2-secret-1 2026-10-24T21:36:15.1914701Z libblkid-dev libblkid1 libfdisk1 libgcrypt20 libgcrypt20-dev 2026-10-24T21:36:15.1914926Z libgirepository-2.0-0 libglib2.0-0t64 libglib2.0-bin libglib2.0-data 2026-10-24T21:36:15.1916273Z libglib2.0-dev libglib2.0-dev-bin libgpg-error-dev libmount-dev libmount1 2026-10-24T21:36:15.1916582Z libsecret-1-0 libsecret-common libselinux1-dev libsepol-dev libsmartcols1 2026-10-24T21:36:15.1916825Z libuuid1 mount util-linux uuid-dev uuid-runtime 2026-10-24T21:36:15.1916967Z Suggested packages: 2026-10-24T21:36:15.1917123Z rng-tools libgcrypt20-doc low-memory-monitor gir1.2-glib-2.0-dev 2026-10-24T21:36:15.1917345Z libglib2.0-doc libxml2-utils nfs-common util-linux-extra util-linux-locales 2026-10-24T21:36:15.1917541Z The following NEW packages will be installed: 2026-10-24T21:36:15.1917722Z gir1.2-secret-1 libblkid-dev libgcrypt20-dev libgirepository-2.0-0 2026-10-24T21:36:15.1917931Z libglib2.0-dev libglib2.0-dev-bin libgpg-error-dev libmount-dev 2026-10-24T21:36:15.1918149Z libsecret-1-0 libsecret-1-dev libsecret-common libselinux1-dev libsepol-dev 2026-10-24T21:36:15.1918330Z uuid-dev 2026-10-24T21:36:15.1918435Z The following packages will be upgraded: 2026-10-24T21:36:15.1918612Z bsdextrautils bsdutils eject fdisk gir1.2-glib-2.0 libblkid1 libfdisk1 2026-10-24T21:36:15.1918827Z libgcrypt20 libglib2.0-0t64 libglib2.0-bin libglib2.0-data libmount1 2026-10-24T21:36:15.1919017Z libsmartcols1 libuuid1 mount util-linux uuid-runtime 2026-10-24T21:36:15.1919202Z 17 upgraded, 14 newly installed, 0 to remove and 241 not upgraded. 2026-10-24T21:36:15.1919366Z Need to get 8378 kB of archives. 2026-10-24T21:36:15.1919531Z After this operation, 23.0 MB of additional disk space will be used. 2026-10-24T21:36:15.1919739Z Get:1 file:/etc/apt/blacksmith-ubuntu-mirrors.txt Mirrorlist [151 B] 2026-10-24T21:36:15.1920011Z Get:2 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 bsdutils amd64 1:2.39.3-9ubuntu6.6 [96.4 kB] 2026-10-24T21:36:15.1920332Z Get:3 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 util-linux amd64 2.39.3-9ubuntu6.6 [1128 kB] 2026-10-24T21:36:15.1920646Z Get:4 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 mount amd64 2.39.3-9ubuntu6.6 [118 kB] 2026-10-24T21:36:15.1920986Z Get:5 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libsmartcols1 amd64 2.39.3-9ubuntu6.6 [66.3 kB] 2026-10-24T21:36:15.1921300Z Get:6 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libuuid1 amd64 2.39.3-9ubuntu6.6 [36.6 kB] 2026-10-24T21:36:15.1921610Z Get:7 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 uuid-runtime amd64 2.39.3-9ubuntu6.6 [33.1 kB] 2026-10-24T21:36:15.1921922Z Get:8 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libblkid1 amd64 2.39.3-9ubuntu6.6 [124 kB] 2026-10-24T21:36:15.1922230Z Get:9 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libgcrypt20 amd64 1.10.3-2ubuntu0.2 [536 kB] 2026-10-24T21:36:15.1922546Z Get:10 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libmount1 amd64 2.39.3-9ubuntu6.6 [134 kB] 2026-10-24T21:36:15.1922851Z Get:11 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 eject amd64 2.39.3-9ubuntu6.6 [26.3 kB] 2026-10-24T21:36:15.1923173Z Get:12 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libglib2.0-data all 2.80.0-6ubuntu3.10 [50.2 kB] 2026-10-24T21:36:15.1923503Z Get:13 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libglib2.0-bin amd64 2.80.0-6ubuntu3.10 [97.9 kB] 2026-10-24T21:36:15.1923831Z Get:14 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 gir1.2-glib-2.0 amd64 2.80.0-6ubuntu3.10 [183 kB] 2026-10-24T21:36:15.1924161Z Get:15 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libglib2.0-0t64 amd64 2.80.0-6ubuntu3.10 [1548 kB] 2026-10-24T21:36:15.1924480Z Get:16 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libfdisk1 amd64 2.39.3-9ubuntu6.6 [146 kB] 2026-10-24T21:36:15.1924795Z Get:17 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 bsdextrautils amd64 2.39.3-9ubuntu6.6 [73.7 kB] 2026-10-24T21:36:15.1925106Z Get:18 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 fdisk amd64 2.39.3-9ubuntu6.6 [122 kB] 2026-10-24T21:36:15.1925400Z Get:19 https://archive.ubuntu.com/ubuntu noble/main amd64 libsecret-common all 0.21.4-1build3 [4962 B] 2026-10-24T21:36:15.1925746Z Get:20 https://archive.ubuntu.com/ubuntu noble/main amd64 libsecret-1-0 amd64 0.21.4-1build3 [116 kB] 2026-10-24T21:36:15.1926077Z Get:21 https://archive.ubuntu.com/ubuntu noble/main amd64 gir1.2-secret-1 amd64 0.21.4-1build3 [9424 B] 2026-10-24T21:36:15.1926386Z Get:22 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libgpg-error-dev amd64 1.47-3build2.1 [128 kB] 2026-10-24T21:36:15.1926715Z Get:23 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libgcrypt20-dev amd64 1.10.3-2ubuntu0.2 [596 kB] 2026-10-24T21:36:15.1927058Z Get:24 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libgirepository-2.0-0 amd64 2.80.0-6ubuntu3.10 [73.5 kB] 2026-10-24T21:36:15.1927409Z Get:25 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libglib2.0-dev-bin amd64 2.80.0-6ubuntu3.10 [138 kB] 2026-10-24T21:36:15.1927730Z Get:26 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 uuid-dev amd64 2.39.3-9ubuntu6.6 [33.5 kB] 2026-10-24T21:36:15.1928052Z Get:27 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libblkid-dev amd64 2.39.3-9ubuntu6.6 [205 kB] 2026-10-24T21:36:15.1928355Z Get:28 https://archive.ubuntu.com/ubuntu noble/main amd64 libsepol-dev amd64 3.5-2build1 [384 kB] 2026-10-24T21:36:15.1928762Z Get:29 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libselinux1-dev amd64 3.5-2ubuntu2.1 [164 kB] 2026-10-24T21:36:15.1929111Z Get:30 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libmount-dev amd64 2.39.3-9ubuntu6.6 [14.9 kB] 2026-10-24T21:36:15.1929433Z Get:31 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libglib2.0-dev amd64 2.80.0-6ubuntu3.10 [1861 kB] 2026-10-24T21:36:15.1929752Z Get:32 https://archive.ubuntu.com/ubuntu noble/universe amd64 libsecret-1-dev amd64 0.21.4-1build3 [129 kB] 2026-10-24T21:36:15.1929972Z Fetched 8378 kB in 1s (12.5 MB/s) 2026-10-24T21:36:15.1930100Z (Reading database ... 2026-10-24T21:36:15.1930210Z (Reading database ... 5% 2026-10-24T21:36:15.1930326Z (Reading database ... 10% 2026-10-24T21:36:15.1930442Z (Reading database ... 15% 2026-10-24T21:36:15.1930558Z (Reading database ... 20% 2026-10-24T21:36:15.1930668Z (Reading database ... 25% 2026-10-24T21:36:15.1930775Z (Reading database ... 30% 2026-10-24T21:36:15.1930918Z (Reading database ... 35% 2026-10-24T21:36:15.1931026Z (Reading database ... 40% 2026-10-24T21:36:15.1931137Z (Reading database ... 45% 2026-10-24T21:36:15.1931258Z (Reading database ... 50% 2026-10-24T21:36:15.1931368Z (Reading database ... 55% 2026-10-24T21:36:15.1931475Z (Reading database ... 60% 2026-10-24T21:36:15.1931586Z (Reading database ... 65% 2026-10-24T21:36:15.1931694Z (Reading database ... 70% 2026-10-24T21:36:15.1931801Z (Reading database ... 75% 2026-10-24T21:36:15.1931910Z (Reading database ... 80% 2026-10-24T21:36:15.1932020Z (Reading database ... 85% 2026-10-24T21:36:15.1932127Z (Reading database ... 90% 2026-10-24T21:36:15.1932234Z (Reading database ... 95% 2026-10-24T21:36:15.1932343Z (Reading database ... 100% 2026-10-24T21:36:15.1932516Z (Reading database ... 207973 files and directories currently installed.) 2026-10-24T21:36:15.1932729Z Preparing to unpack .../bsdutils_1%3a2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-24T21:36:15.1932944Z Unpacking bsdutils (1:2.39.3-9ubuntu6.6) over (1:2.39.3-9ubuntu6.5) ... 2026-10-24T21:36:15.1933126Z Setting up bsdutils (1:2.39.3-9ubuntu6.6) ... 2026-10-24T21:36:15.1933265Z (Reading database ... 2026-10-24T21:36:15.1933375Z (Reading database ... 5% 2026-10-24T21:36:15.1933490Z (Reading database ... 10% 2026-10-24T21:36:15.1933598Z (Reading database ... 15% 2026-10-24T21:36:15.1933707Z (Reading database ... 20% 2026-10-24T21:36:15.1933821Z (Reading database ... 25% 2026-10-24T21:36:15.1933929Z (Reading database ... 30% 2026-10-24T21:36:15.1934040Z (Reading database ... 35% 2026-10-24T21:36:15.1934148Z (Reading database ... 40% 2026-10-24T21:36:15.1934258Z (Reading database ... 45% 2026-10-24T21:36:15.1934368Z (Reading database ... 50% 2026-10-24T21:36:15.1934476Z (Reading database ... 55% 2026-10-24T21:36:15.1934584Z (Reading database ... 60% 2026-10-24T21:36:15.1934775Z (Reading database ... 65% 2026-10-24T21:36:15.1934930Z (Reading database ... 70% 2026-10-24T21:36:15.1935039Z (Reading database ... 75% 2026-10-24T21:36:15.1935153Z (Reading database ... 80% 2026-10-24T21:36:15.1935260Z (Reading database ... 85% 2026-10-24T21:36:15.1935372Z (Reading database ... 90% 2026-10-24T21:36:15.1935478Z (Reading database ... 95% 2026-10-24T21:36:15.1935587Z (Reading database ... 100% 2026-10-24T21:36:15.1935747Z (Reading database ... 207973 files and directories currently installed.) 2026-10-24T21:36:15.1935952Z Preparing to unpack .../util-linux_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-24T21:36:15.1936161Z Unpacking util-linux (2.39.3-9ubuntu6.6) over (2.39.3-9ubuntu6.5) ... 2026-10-24T21:36:15.1936336Z Setting up util-linux (2.39.3-9ubuntu6.6) ... 2026-10-24T21:36:15.1936586Z update-alternatives: warning: forcing reinstallation of alternative /usr/bin/less because link group pager is broken 2026-10-24T21:36:15.1937005Z update-alternatives: warning: skip creation of /usr/share/man/man1/pager.1.gz because associated file /usr/share/man/man1/less.1.gz (of link group pager) doesn't exist 2026-10-24T21:36:15.1937363Z fstrim.service is a disabled or a static unit not running, not starting it. 2026-10-24T21:36:15.1937538Z (Reading database ... 2026-10-24T21:36:15.1937651Z (Reading database ... 5% 2026-10-24T21:36:15.1937761Z (Reading database ... 10% 2026-10-24T21:36:15.1937869Z (Reading database ... 15% 2026-10-24T21:36:15.1937978Z (Reading database ... 20% 2026-10-24T21:36:15.1938086Z (Reading database ... 25% 2026-10-24T21:36:15.1938198Z (Reading database ... 30% 2026-10-24T21:36:15.1938309Z (Reading database ... 35% 2026-10-24T21:36:15.1938421Z (Reading database ... 40% 2026-10-24T21:36:15.1938531Z (Reading database ... 45% 2026-10-24T21:36:15.1938639Z (Reading database ... 50% 2026-10-24T21:36:15.1938754Z (Reading database ... 55% 2026-10-24T21:36:15.1938868Z (Reading database ... 60% 2026-10-24T21:36:15.1938980Z (Reading database ... 65% 2026-10-24T21:36:15.1939091Z (Reading database ... 70% 2026-10-24T21:36:15.1939205Z (Reading database ... 75% 2026-10-24T21:36:15.1939314Z (Reading database ... 80% 2026-10-24T21:36:15.1939424Z (Reading database ... 85% 2026-10-24T21:36:15.1939534Z (Reading database ... 90% 2026-10-24T21:36:15.1939641Z (Reading database ... 95% 2026-10-24T21:36:15.1939756Z (Reading database ... 100% 2026-10-24T21:36:15.1939911Z (Reading database ... 207973 files and directories currently installed.) 2026-10-24T21:36:15.1940114Z Preparing to unpack .../mount_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-24T21:36:15.1940308Z Unpacking mount (2.39.3-9ubuntu6.6) over (2.39.3-9ubuntu6.5) ... 2026-10-24T21:36:15.1940512Z Preparing to unpack .../libsmartcols1_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-24T21:36:15.1940732Z Unpacking libsmartcols1:amd64 (2.39.3-9ubuntu6.6) over (2.39.3-9ubuntu6.5) ... 2026-10-24T21:36:15.1940968Z Setting up libsmartcols1:amd64 (2.39.3-9ubuntu6.6) ... 2026-10-24T21:36:15.1941116Z (Reading database ... 2026-10-24T21:36:15.1941227Z (Reading database ... 5% 2026-10-24T21:36:15.1941343Z (Reading database ... 10% 2026-10-24T21:36:15.1941452Z (Reading database ... 15% 2026-10-24T21:36:15.1941561Z (Reading database ... 20% 2026-10-24T21:36:15.1941672Z (Reading database ... 25% 2026-10-24T21:36:15.1941782Z (Reading database ... 30% 2026-10-24T21:36:15.1941889Z (Reading database ... 35% 2026-10-24T21:36:15.1941998Z (Reading database ... 40% 2026-10-24T21:36:15.1942108Z (Reading database ... 45% 2026-10-24T21:36:15.1942213Z (Reading database ... 50% 2026-10-24T21:36:15.1942326Z (Reading database ... 55% 2026-10-24T21:36:15.1942436Z (Reading database ... 60% 2026-10-24T21:36:15.1942545Z (Reading database ... 65% 2026-10-24T21:36:15.1942654Z (Reading database ... 70% 2026-10-24T21:36:15.1942763Z (Reading database ... 75% 2026-10-24T21:36:15.1942879Z (Reading database ... 80% 2026-10-24T21:36:15.1942989Z (Reading database ... 85% 2026-10-24T21:36:15.1943103Z (Reading database ... 90% 2026-10-24T21:36:15.1943212Z (Reading database ... 95% 2026-10-24T21:36:15.1943395Z (Reading database ... 100% 2026-10-24T21:36:15.1943596Z (Reading database ... 207973 files and directories currently installed.) 2026-10-24T21:36:15.1943802Z Preparing to unpack .../libuuid1_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-24T21:36:15.1944010Z Unpacking libuuid1:amd64 (2.39.3-9ubuntu6.6) over (2.39.3-9ubuntu6.5) ... 2026-10-24T21:36:15.1944199Z Setting up libuuid1:amd64 (2.39.3-9ubuntu6.6) ... 2026-10-24T21:36:15.1944345Z (Reading database ... 2026-10-24T21:36:15.1944454Z (Reading database ... 5% 2026-10-24T21:36:15.1944570Z (Reading database ... 10% 2026-10-24T21:36:15.1944683Z (Reading database ... 15% 2026-10-24T21:36:15.1944796Z (Reading database ... 20% 2026-10-24T21:36:15.1944907Z (Reading database ... 25% 2026-10-24T21:36:15.1945016Z (Reading database ... 30% 2026-10-24T21:36:15.1945128Z (Reading database ... 35% 2026-10-24T21:36:15.1945235Z (Reading database ... 40% 2026-10-24T21:36:15.1945345Z (Reading database ... 45% 2026-10-24T21:36:15.1945452Z (Reading database ... 50% 2026-10-24T21:36:15.1945564Z (Reading database ... 55% 2026-10-24T21:36:15.1945674Z (Reading database ... 60% 2026-10-24T21:36:15.1945781Z (Reading database ... 65% 2026-10-24T21:36:15.1945893Z (Reading database ... 70% 2026-10-24T21:36:15.1945998Z (Reading database ... 75% 2026-10-24T21:36:15.1946112Z (Reading database ... 80% 2026-10-24T21:36:15.1946220Z (Reading database ... 85% 2026-10-24T21:36:15.1946333Z (Reading database ... 90% 2026-10-24T21:36:15.1946439Z (Reading database ... 95% 2026-10-24T21:36:15.1946547Z (Reading database ... 100% 2026-10-24T21:36:15.1946708Z (Reading database ... 207973 files and directories currently installed.) 2026-10-24T21:36:15.1946915Z Preparing to unpack .../uuid-runtime_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-24T21:36:15.1947127Z Unpacking uuid-runtime (2.39.3-9ubuntu6.6) over (2.39.3-9ubuntu6.5) ... 2026-10-24T21:36:15.1947333Z Preparing to unpack .../libblkid1_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-24T21:36:15.1947545Z Unpacking libblkid1:amd64 (2.39.3-9ubuntu6.6) over (2.39.3-9ubuntu6.5) ... 2026-10-24T21:36:15.1947735Z Setting up libblkid1:amd64 (2.39.3-9ubuntu6.6) ... 2026-10-24T21:36:15.1947880Z (Reading database ... 2026-10-24T21:36:15.1947990Z (Reading database ... 5% 2026-10-24T21:36:15.1948105Z (Reading database ... 10% 2026-10-24T21:36:15.1948219Z (Reading database ... 15% 2026-10-24T21:36:15.1948329Z (Reading database ... 20% 2026-10-24T21:36:15.1948442Z (Reading database ... 25% 2026-10-24T21:36:15.1948555Z (Reading database ... 30% 2026-10-24T21:36:15.1948670Z (Reading database ... 35% 2026-10-24T21:36:15.1948779Z (Reading database ... 40% 2026-10-24T21:36:15.1948894Z (Reading database ... 45% 2026-10-24T21:36:15.1949002Z (Reading database ... 50% 2026-10-24T21:36:15.1949111Z (Reading database ... 55% 2026-10-24T21:36:15.1949226Z (Reading database ... 60% 2026-10-24T21:36:15.1949333Z (Reading database ... 65% 2026-10-24T21:36:15.1949514Z (Reading database ... 70% 2026-10-24T21:36:15.1949625Z (Reading database ... 75% 2026-10-24T21:36:15.1949739Z (Reading database ... 80% 2026-10-24T21:36:15.1949847Z (Reading database ... 85% 2026-10-24T21:36:15.1949956Z (Reading database ... 90% 2026-10-24T21:36:15.1950070Z (Reading database ... 95% 2026-10-24T21:36:15.1950182Z (Reading database ... 100% 2026-10-24T21:36:15.1950341Z (Reading database ... 207973 files and directories currently installed.) 2026-10-24T21:36:15.1950550Z Preparing to unpack .../libgcrypt20_1.10.3-2ubuntu0.2_amd64.deb ... 2026-10-24T21:36:15.1950771Z Unpacking libgcrypt20:amd64 (1.10.3-2ubuntu0.2) over (1.10.3-2ubuntu0.1) ... 2026-10-24T21:36:15.1950991Z Setting up libgcrypt20:amd64 (1.10.3-2ubuntu0.2) ... 2026-10-24T21:36:15.1951140Z (Reading database ... 2026-10-24T21:36:15.1951249Z (Reading database ... 5% 2026-10-24T21:36:15.1951357Z (Reading database ... 10% 2026-10-24T21:36:15.1951472Z (Reading database ... 15% 2026-10-24T21:36:15.1951581Z (Reading database ... 20% 2026-10-24T21:36:15.1951694Z (Reading database ... 25% 2026-10-24T21:36:15.1951803Z (Reading database ... 30% 2026-10-24T21:36:15.1952008Z (Reading database ... 35% 2026-10-24T21:36:15.1952164Z (Reading database ... 40% 2026-10-24T21:36:15.1952269Z (Reading database ... 45% 2026-10-24T21:36:15.1952377Z (Reading database ... 50% 2026-10-24T21:36:15.1952483Z (Reading database ... 55% 2026-10-24T21:36:15.1952606Z (Reading database ... 60% 2026-10-24T21:36:15.1952714Z (Reading database ... 65% 2026-10-24T21:36:15.1952827Z (Reading database ... 70% 2026-10-24T21:36:15.1952936Z (Reading database ... 75% 2026-10-24T21:36:15.1953045Z (Reading database ... 80% 2026-10-24T21:36:15.1953158Z (Reading database ... 85% 2026-10-24T21:36:15.1953267Z (Reading database ... 90% 2026-10-24T21:36:15.1953384Z (Reading database ... 95% 2026-10-24T21:36:15.1953496Z (Reading database ... 100% 2026-10-24T21:36:15.1953666Z (Reading database ... 207973 files and directories currently installed.) 2026-10-24T21:36:15.1953875Z Preparing to unpack .../libmount1_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-24T21:36:15.1954089Z Unpacking libmount1:amd64 (2.39.3-9ubuntu6.6) over (2.39.3-9ubuntu6.5) ... 2026-10-24T21:36:15.1954279Z Setting up libmount1:amd64 (2.39.3-9ubuntu6.6) ... 2026-10-24T21:36:15.1954423Z (Reading database ... 2026-10-24T21:36:15.1954540Z (Reading database ... 5% 2026-10-24T21:36:15.1954654Z (Reading database ... 10% 2026-10-24T21:36:15.1954770Z (Reading database ... 15% 2026-10-24T21:36:15.1954885Z (Reading database ... 20% 2026-10-24T21:36:15.1955000Z (Reading database ... 25% 2026-10-24T21:36:15.1955108Z (Reading database ... 30% 2026-10-24T21:36:15.1955218Z (Reading database ... 35% 2026-10-24T21:36:15.1966594Z (Reading database ... 40% 2026-10-24T21:36:15.1966730Z (Reading database ... 45% 2026-10-24T21:36:15.1966841Z (Reading database ... 50% 2026-10-24T21:36:15.1966947Z (Reading database ... 55% 2026-10-24T21:36:15.1967058Z (Reading database ... 60% 2026-10-24T21:36:15.1967169Z (Reading database ... 65% 2026-10-24T21:36:15.1967274Z (Reading database ... 70% 2026-10-24T21:36:15.1967386Z (Reading database ... 75% 2026-10-24T21:36:15.1967497Z (Reading database ... 80% 2026-10-24T21:36:15.1967610Z (Reading database ... 85% 2026-10-24T21:36:15.1967715Z (Reading database ... 90% 2026-10-24T21:36:15.1967820Z (Reading database ... 95% 2026-10-24T21:36:15.1967931Z (Reading database ... 100% 2026-10-24T21:36:15.1968092Z (Reading database ... 207973 files and directories currently installed.) 2026-10-24T21:36:15.1968303Z Preparing to unpack .../00-eject_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-24T21:36:15.1968494Z Unpacking eject (2.39.3-9ubuntu6.6) over (2.39.3-9ubuntu6.5) ... 2026-10-24T21:36:15.1968699Z Preparing to unpack .../01-libglib2.0-data_2.80.0-6ubuntu3.10_all.deb ... 2026-10-24T21:36:15.1968921Z Unpacking libglib2.0-data (2.80.0-6ubuntu3.10) over (2.80.0-6ubuntu3.8) ... 2026-10-24T21:36:15.1969140Z Preparing to unpack .../02-libglib2.0-bin_2.80.0-6ubuntu3.10_amd64.deb ... 2026-10-24T21:36:15.1969354Z Unpacking libglib2.0-bin (2.80.0-6ubuntu3.10) over (2.80.0-6ubuntu3.8) ... 2026-10-24T21:36:15.1969573Z Preparing to unpack .../03-gir1.2-glib-2.0_2.80.0-6ubuntu3.10_amd64.deb ... 2026-10-24T21:36:15.1969800Z Unpacking gir1.2-glib-2.0:amd64 (2.80.0-6ubuntu3.10) over (2.80.0-6ubuntu3.8) ... 2026-10-24T21:36:15.1970020Z Preparing to unpack .../04-libglib2.0-0t64_2.80.0-6ubuntu3.10_amd64.deb ... 2026-10-24T21:36:15.1970241Z Unpacking libglib2.0-0t64:amd64 (2.80.0-6ubuntu3.10) over (2.80.0-6ubuntu3.8) ... 2026-10-24T21:36:15.1970460Z Preparing to unpack .../05-libfdisk1_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-24T21:36:15.1970670Z Unpacking libfdisk1:amd64 (2.39.3-9ubuntu6.6) over (2.39.3-9ubuntu6.5) ... 2026-10-24T21:36:15.1970926Z Preparing to unpack .../06-bsdextrautils_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-24T21:36:15.1971142Z Unpacking bsdextrautils (2.39.3-9ubuntu6.6) over (2.39.3-9ubuntu6.5) ... 2026-10-24T21:36:15.1971343Z Preparing to unpack .../07-fdisk_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-24T21:36:15.1971532Z Unpacking fdisk (2.39.3-9ubuntu6.6) over (2.39.3-9ubuntu6.5) ... 2026-10-24T21:36:15.1971845Z Selecting previously unselected package libsecret-common. 2026-10-24T21:36:15.1972094Z Preparing to unpack .../08-libsecret-common_0.21.4-1build3_all.deb ... 2026-10-24T21:36:15.1972280Z Unpacking libsecret-common (0.21.4-1build3) ... 2026-10-24T21:36:15.1972459Z Selecting previously unselected package libsecret-1-0:amd64. 2026-10-24T21:36:15.1972658Z Preparing to unpack .../09-libsecret-1-0_0.21.4-1build3_amd64.deb ... 2026-10-24T21:36:15.1972842Z Unpacking libsecret-1-0:amd64 (0.21.4-1build3) ... 2026-10-24T21:36:15.1973018Z Selecting previously unselected package gir1.2-secret-1:amd64. 2026-10-24T21:36:15.1973222Z Preparing to unpack .../10-gir1.2-secret-1_0.21.4-1build3_amd64.deb ... 2026-10-24T21:36:15.1973412Z Unpacking gir1.2-secret-1:amd64 (0.21.4-1build3) ... 2026-10-24T21:36:15.1973587Z Selecting previously unselected package libgpg-error-dev. 2026-10-24T21:36:15.1973786Z Preparing to unpack .../11-libgpg-error-dev_1.47-3build2.1_amd64.deb ... 2026-10-24T21:36:15.1973969Z Unpacking libgpg-error-dev (1.47-3build2.1) ... 2026-10-24T21:36:15.1974140Z Selecting previously unselected package libgcrypt20-dev. 2026-10-24T21:36:15.1974337Z Preparing to unpack .../12-libgcrypt20-dev_1.10.3-2ubuntu0.2_amd64.deb ... 2026-10-24T21:36:15.1974525Z Unpacking libgcrypt20-dev (1.10.3-2ubuntu0.2) ... 2026-10-24T21:36:15.1974711Z Selecting previously unselected package libgirepository-2.0-0:amd64. 2026-10-24T21:36:15.1974937Z Preparing to unpack .../13-libgirepository-2.0-0_2.80.0-6ubuntu3.10_amd64.deb ... 2026-10-24T21:36:15.1975153Z Unpacking libgirepository-2.0-0:amd64 (2.80.0-6ubuntu3.10) ... 2026-10-24T21:36:15.1975342Z Selecting previously unselected package libglib2.0-dev-bin. 2026-10-24T21:36:15.1975554Z Preparing to unpack .../14-libglib2.0-dev-bin_2.80.0-6ubuntu3.10_amd64.deb ... 2026-10-24T21:36:15.1975752Z Unpacking libglib2.0-dev-bin (2.80.0-6ubuntu3.10) ... 2026-10-24T21:36:15.1975924Z Selecting previously unselected package uuid-dev:amd64. 2026-10-24T21:36:15.1976110Z Preparing to unpack .../15-uuid-dev_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-24T21:36:15.1976290Z Unpacking uuid-dev:amd64 (2.39.3-9ubuntu6.6) ... 2026-10-24T21:36:15.1976458Z Selecting previously unselected package libblkid-dev:amd64. 2026-10-24T21:36:15.1976658Z Preparing to unpack .../16-libblkid-dev_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-24T21:36:15.1976842Z Unpacking libblkid-dev:amd64 (2.39.3-9ubuntu6.6) ... 2026-10-24T21:36:15.1977020Z Selecting previously unselected package libsepol-dev:amd64. 2026-10-24T21:36:15.1977211Z Preparing to unpack .../17-libsepol-dev_3.5-2build1_amd64.deb ... 2026-10-24T21:36:15.1977390Z Unpacking libsepol-dev:amd64 (3.5-2build1) ... 2026-10-24T21:36:15.1977561Z Selecting previously unselected package libselinux1-dev:amd64. 2026-10-24T21:36:15.1977802Z Preparing to unpack .../18-libselinux1-dev_3.5-2ubuntu2.1_amd64.deb ... 2026-10-24T21:36:15.1977991Z Unpacking libselinux1-dev:amd64 (3.5-2ubuntu2.1) ... 2026-10-24T21:36:15.1978164Z Selecting previously unselected package libmount-dev:amd64. 2026-10-24T21:36:15.1978361Z Preparing to unpack .../19-libmount-dev_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-24T21:36:15.1978543Z Unpacking libmount-dev:amd64 (2.39.3-9ubuntu6.6) ... 2026-10-24T21:36:15.1978721Z Selecting previously unselected package libglib2.0-dev:amd64. 2026-10-24T21:36:15.1978921Z Preparing to unpack .../20-libglib2.0-dev_2.80.0-6ubuntu3.10_amd64.deb ... 2026-10-24T21:36:15.1979117Z Unpacking libglib2.0-dev:amd64 (2.80.0-6ubuntu3.10) ... 2026-10-24T21:36:15.1979299Z Selecting previously unselected package libsecret-1-dev:amd64. 2026-10-24T21:36:15.1979502Z Preparing to unpack .../21-libsecret-1-dev_0.21.4-1build3_amd64.deb ... 2026-10-24T21:36:15.1979685Z Unpacking libsecret-1-dev:amd64 (0.21.4-1build3) ... 2026-10-24T21:36:15.1979842Z Setting up bsdextrautils (2.39.3-9ubuntu6.6) ... 2026-10-24T21:36:15.1979986Z Setting up eject (2.39.3-9ubuntu6.6) ... 2026-10-24T21:36:15.1980136Z Setting up libglib2.0-0t64:amd64 (2.80.0-6ubuntu3.10) ... 2026-10-24T21:36:15.1980301Z Setting up libglib2.0-data (2.80.0-6ubuntu3.10) ... 2026-10-24T21:36:15.1980514Z Setting up libgpg-error-dev (1.47-3build2.1) ... 2026-10-24T21:36:15.1980700Z Setting up uuid-dev:amd64 (2.39.3-9ubuntu6.6) ... 2026-10-24T21:36:15.1980876Z Setting up libsepol-dev:amd64 (3.5-2build1) ... 2026-10-24T21:36:15.1981039Z Setting up gir1.2-glib-2.0:amd64 (2.80.0-6ubuntu3.10) ... 2026-10-24T21:36:15.1981199Z Setting up libfdisk1:amd64 (2.39.3-9ubuntu6.6) ... 2026-10-24T21:36:15.1981347Z Setting up mount (2.39.3-9ubuntu6.6) ... 2026-10-24T21:36:15.1981485Z Setting up uuid-runtime (2.39.3-9ubuntu6.6) ... 2026-10-24T21:36:15.1981670Z uuidd.service is a disabled or a static unit not running, not starting it. 2026-10-24T21:36:15.1981860Z Setting up libsecret-common (0.21.4-1build3) ... 2026-10-24T21:36:15.1982017Z Setting up libglib2.0-dev-bin (2.80.0-6ubuntu3.10) ... 2026-10-24T21:36:15.1982188Z Setting up libblkid-dev:amd64 (2.39.3-9ubuntu6.6) ... 2026-10-24T21:36:15.1982366Z Setting up libgirepository-2.0-0:amd64 (2.80.0-6ubuntu3.10) ... 2026-10-24T21:36:15.1982551Z Setting up libselinux1-dev:amd64 (3.5-2ubuntu2.1) ... 2026-10-24T21:36:15.1982711Z Setting up libglib2.0-bin (2.80.0-6ubuntu3.10) ... 2026-10-24T21:36:15.1982859Z Setting up fdisk (2.39.3-9ubuntu6.6) ... 2026-10-24T21:36:15.1983001Z Setting up libsecret-1-0:amd64 (0.21.4-1build3) ... 2026-10-24T21:36:15.1983159Z Setting up gir1.2-secret-1:amd64 (0.21.4-1build3) ... 2026-10-24T21:36:15.1983315Z Setting up libgcrypt20-dev (1.10.3-2ubuntu0.2) ... 2026-10-24T21:36:15.1983471Z Setting up libmount-dev:amd64 (2.39.3-9ubuntu6.6) ... 2026-10-24T21:36:15.1983637Z Setting up libglib2.0-dev:amd64 (2.80.0-6ubuntu3.10) ... 2026-10-24T21:36:15.1983803Z Setting up libsecret-1-dev:amd64 (0.21.4-1build3) ... 2026-10-24T21:36:15.1983967Z Processing triggers for libc-bin (2.39-0ubuntu8.8) ... 2026-10-24T21:36:15.1984129Z Processing triggers for man-db (2.12.0-4build2) ... 2026-10-24T21:36:15.1984300Z Not building database; man-db/auto-update is not 'true'. 2026-10-24T21:36:15.1984472Z Processing triggers for install-info (7.1-3build2) ... 2026-10-24T21:36:15.1984577Z 2026-10-24T21:36:15.1984627Z Restarting services... 2026-10-24T21:36:15.1985116Z systemctl restart esm-cache.service irqbalance.service packagekit.service php8.3-fpm.service polkit.service rsyslog.service systemd-journald.service systemd-manager.service systemd-networkd.service systemd-resolved.service systemd-timedated.service systemd-udevd.service udisks2.service 2026-10-24T21:36:15.1985699Z Failed to restart systemd-manager.service: Unit systemd-manager.service not found. 2026-10-24T21:36:15.1985850Z 2026-10-24T21:36:15.1985901Z Service restarts being deferred: 2026-10-24T21:36:15.1986038Z systemctl restart ModemManager.service 2026-10-24T21:36:15.1986174Z systemctl restart dbus.service 2026-10-24T21:36:15.1986304Z systemctl restart getty@tty1.service 2026-10-24T21:36:15.1986448Z systemctl restart networkd-dispatcher.service 2026-10-24T21:36:15.1986601Z systemctl restart serial-getty@ttyS0.service 2026-10-24T21:36:15.1986759Z systemctl restart setup_and_run_blacksmith.service 2026-10-24T21:36:15.1986912Z systemctl restart systemd-logind.service 2026-10-24T21:36:15.1987003Z 2026-10-24T21:36:15.1987056Z No containers need to be restarted. 2026-10-24T21:36:15.1987139Z 2026-10-24T21:36:15.1987189Z User sessions running outdated binaries: 2026-10-24T21:36:15.1987334Z runner @ user manager service: systemd[1855] 2026-10-24T21:36:15.1987429Z 2026-10-24T21:36:15.1987516Z No VM guests are running outdated hypervisor (qemu) binaries on this host. 2026-10-24T21:36:15.2005850Z ##[group]Run vp run build:desktop 2026-10-24T21:36:15.2006037Z vp run build:desktop 2026-10-24T21:36:15.2015058Z shell: /usr/bin/bash -e {0} 2026-10-24T21:36:15.2015181Z env: 2026-10-24T21:36:15.2015284Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 151 2026-10-24T21:36:15.2015424Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 350 2026-10-24T21:36:15.2015560Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-24T21:36:15.2015684Z ##[endgroup] 2026-10-24T21:36:15.3552094Z ~/apps/web$ vp build ⊘ cache disabled 2026-10-24T21:36:15.8196587Z transforming... 2026-10-24T21:36:18.4071044Z ✓ 6675 modules transformed. 2026-10-24T21:36:18.7669658Z rendering chunks... 2026-10-24T21:36:20.2087662Z computing gzip size... 2026-10-24T21:36:20.2582509Z dist/assets/ghostty-write-pty-hgyAvVbe.wasm 0.11 kB │ gzip: 0.12 kB 2026-10-24T21:36:20.2582904Z dist/assets/KaTeX_Size3-Regular-CTq5MqoE.woff 4.42 kB 2026-10-24T21:36:20.2583202Z dist/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 4.92 kB 2026-10-24T21:36:20.2583505Z dist/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 5.20 kB 2026-10-24T21:36:20.2583792Z dist/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 5.46 kB 2026-10-24T21:36:20.2584115Z dist/assets/KaTeX_Size4-Regular-BF-4gkZK.woff 5.98 kB 2026-10-24T21:36:20.2584391Z dist/assets/KaTeX_Size2-Regular-oD1tc_U0.woff 6.18 kB 2026-10-24T21:36:20.2584677Z dist/assets/snap-shot-click-CJiuxMEv.mp3 6.38 kB 2026-10-24T21:36:20.2584953Z dist/assets/KaTeX_Size1-Regular-C195tn64.woff 6.49 kB 2026-10-24T21:36:20.2585277Z dist/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 6.90 kB 2026-10-24T21:36:20.2585571Z dist/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 6.91 kB 2026-10-24T21:36:20.2585854Z dist/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf 7.58 kB 2026-10-24T21:36:20.2586136Z dist/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff 7.65 kB 2026-10-24T21:36:20.2586429Z dist/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff 7.71 kB 2026-10-24T21:36:20.2586709Z dist/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 9.64 kB 2026-10-24T21:36:20.2586999Z dist/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 10.34 kB 2026-10-24T21:36:20.2587280Z dist/assets/KaTeX_Size4-Regular-DWFBv043.ttf 10.36 kB 2026-10-24T21:36:20.2587557Z dist/assets/KaTeX_Script-Regular-D5yQViql.woff 10.58 kB 2026-10-24T21:36:20.2587839Z dist/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 11.31 kB 2026-10-24T21:36:20.2588126Z dist/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 11.34 kB 2026-10-24T21:36:20.2588410Z dist/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf 11.50 kB 2026-10-24T21:36:20.2588695Z dist/assets/notification-input-BJS4voY1.mp3 11.63 kB 2026-10-24T21:36:20.2588987Z dist/assets/notification-completion-vyCCbYsz.mp3 11.94 kB 2026-10-24T21:36:20.2589279Z dist/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 12.02 kB 2026-10-24T21:36:20.2589659Z dist/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 12.21 kB 2026-10-24T21:36:20.2589932Z dist/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf 12.22 kB 2026-10-24T21:36:20.2590251Z dist/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff 12.31 kB 2026-10-24T21:36:20.2590512Z dist/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf 12.34 kB 2026-10-24T21:36:20.2590746Z dist/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf 12.36 kB 2026-10-24T21:36:20.2590971Z dist/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff 13.20 kB 2026-10-24T21:36:20.2591194Z dist/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff 13.29 kB 2026-10-24T21:36:20.2591408Z dist/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 13.56 kB 2026-10-24T21:36:20.2591627Z dist/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff 14.11 kB 2026-10-24T21:36:20.2591843Z dist/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff 14.40 kB 2026-10-24T21:36:20.2592056Z dist/assets/snap-shot-whoosh-CQZ59XJc.mp3 15.02 kB 2026-10-24T21:36:20.2592276Z dist/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff 16.02 kB 2026-10-24T21:36:20.2592493Z dist/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 16.40 kB 2026-10-24T21:36:20.2592708Z dist/assets/KaTeX_Math-Italic-t53AETM-.woff2 16.44 kB 2026-10-24T21:36:20.2592920Z dist/assets/KaTeX_Script-Regular-C5JkGWo-.ttf 16.64 kB 2026-10-24T21:36:20.2593554Z dist/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 16.78 kB 2026-10-24T21:36:20.2593862Z dist/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 16.98 kB 2026-10-24T21:36:20.2594078Z dist/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff 18.66 kB 2026-10-24T21:36:20.2594290Z dist/assets/KaTeX_Math-Italic-DA0__PXp.woff 18.74 kB 2026-10-24T21:36:20.2594502Z dist/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff 19.41 kB 2026-10-24T21:36:20.2594717Z dist/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf 19.43 kB 2026-10-24T21:36:20.2595024Z dist/index.html 19.49 kB │ gzip: 5.03 kB 2026-10-24T21:36:20.2595239Z dist/assets/KaTeX_Fraktur-Regular-CB_wures.ttf 19.57 kB 2026-10-24T21:36:20.2595455Z dist/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf 19.58 kB 2026-10-24T21:36:20.2595664Z dist/assets/KaTeX_Main-Italic-BMLOBm91.woff 19.67 kB 2026-10-24T21:36:20.2595882Z dist/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf 22.36 kB 2026-10-24T21:36:20.2596107Z dist/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf 24.50 kB 2026-10-24T21:36:20.2596320Z dist/assets/KaTeX_Main-Bold-Cx986IdX.woff2 25.32 kB 2026-10-24T21:36:20.2596535Z dist/assets/KaTeX_Main-Regular-B22Nviop.woff2 26.27 kB 2026-10-24T21:36:20.2596747Z dist/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf 27.55 kB 2026-10-24T21:36:20.2596966Z dist/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 28.07 kB 2026-10-24T21:36:20.2597176Z dist/assets/KaTeX_Main-Bold-Jm3AIy58.woff 29.91 kB 2026-10-24T21:36:20.2597389Z dist/assets/KaTeX_Main-Regular-Dr94JaBh.woff 30.77 kB 2026-10-24T21:36:20.2597601Z dist/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf 31.19 kB 2026-10-24T21:36:20.2597815Z dist/assets/KaTeX_Math-Italic-flOr_0UB.ttf 31.30 kB 2026-10-24T21:36:20.2598030Z dist/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf 32.96 kB 2026-10-24T21:36:20.2598245Z dist/assets/KaTeX_AMS-Regular-DMm9YOAa.woff 33.51 kB 2026-10-24T21:36:20.2598455Z dist/assets/KaTeX_Main-Italic-3WenGoN9.ttf 33.58 kB 2026-10-24T21:36:20.2598668Z dist/assets/KaTeX_Main-Bold-waoOVXN0.ttf 51.33 kB 2026-10-24T21:36:20.2598877Z dist/assets/KaTeX_Main-Regular-ypZvNtVU.ttf 53.58 kB 2026-10-24T21:36:20.2599085Z dist/assets/KaTeX_AMS-Regular-DRggAlZN.ttf 63.63 kB 2026-10-24T21:36:20.2599340Z dist/.vite/manifest.json 293.85 kB │ gzip: 30.66 kB 2026-10-24T21:36:20.2599610Z dist/assets/ghostty-vt-DdA0Zryv.wasm 630.93 kB │ gzip: 187.91 kB 2026-10-24T21:36:20.2599874Z dist/assets/worker-3-uhxiAg.js 836.41 kB 2026-10-24T21:36:20.2600136Z dist/third-party-licenses.json 852.62 kB │ gzip: 102.38 kB 2026-10-24T21:36:20.2600384Z dist/assets/SymbolsNerdFontMono-Regular-aK5vsLov.woff2 1,177.57 kB 2026-10-24T21:36:20.2600649Z dist/assets/ipad-pro-13-m5-DCWznkpd.glb 1,815.87 kB 2026-10-24T21:36:20.2600872Z dist/assets/ipad-pro-13-m5-magic-keyboard-l8da3bBi.glb 2,341.88 kB 2026-10-24T21:36:20.2601091Z dist/assets/iphone-18-pro-max-B3H2Zbeg.glb 2,399.02 kB 2026-10-24T21:36:20.2601304Z dist/assets/iphone-18-pro-Crheuaz9.glb 2,422.54 kB 2026-10-24T21:36:20.2601515Z dist/assets/iphone-duo-Cu4Xx1NH.glb 3,097.72 kB 2026-10-24T21:36:20.2601782Z dist/assets/MathTypeset-DEcVZfaU.css 28.83 kB │ gzip: 7.92 kB 2026-10-24T21:36:20.2602053Z dist/assets/main-CO_Qp_dy.css 528.10 kB │ gzip: 70.83 kB 2026-10-24T21:36:20.2602317Z dist/assets/JZOYTAAL-DEKgGvN8.js 0.05 kB │ gzip: 0.07 kB 2026-10-24T21:36:20.2602708Z dist/assets/_chat.draft._draftId-DJ7LAi8J.js 0.09 kB │ gzip: 0.11 kB │ map: 0.55 kB 2026-10-24T21:36:20.2603058Z dist/assets/legalLinks-BaIJY52l.js 0.10 kB │ gzip: 0.12 kB │ map: 0.24 kB 2026-10-24T21:36:20.2603381Z dist/assets/_chat._environmentId._threadId-DJ7LAi8J.js 0.10 kB │ gzip: 0.12 kB │ map: 0.57 kB 2026-10-24T21:36:20.2603692Z dist/assets/minus-DvZBHEtU.js 0.15 kB │ gzip: 0.16 kB │ map: 0.79 kB 2026-10-24T21:36:20.2603977Z dist/assets/circle-O_62Kz6M.js 0.16 kB │ gzip: 0.16 kB │ map: 0.84 kB 2026-10-24T21:36:20.2604272Z dist/assets/chevron-up-D-eqv5xz.js 0.16 kB │ gzip: 0.16 kB │ map: 0.83 kB 2026-10-24T21:36:20.2604573Z dist/assets/chevron-left-VzWFFfJV.js 0.17 kB │ gzip: 0.17 kB │ map: 0.84 kB 2026-10-24T21:36:20.2604873Z dist/assets/x-CtDhSmo0.js 0.18 kB │ gzip: 0.17 kB │ map: 0.87 kB 2026-10-24T21:36:20.2605157Z dist/assets/plus-DRJnlync.js 0.18 kB │ gzip: 0.17 kB │ map: 0.89 kB 2026-10-24T21:36:20.2605465Z dist/assets/FieldItemContext-D7F7CWCg.js 0.19 kB │ gzip: 0.18 kB │ map: 0.88 kB 2026-10-24T21:36:20.2605772Z dist/assets/arrow-up-Dxmh-8a4.js 0.19 kB │ gzip: 0.18 kB │ map: 0.92 kB 2026-10-24T21:36:20.2606062Z dist/assets/terminal-B7_CcXzt.js 0.19 kB │ gzip: 0.18 kB │ map: 0.92 kB 2026-10-24T21:36:20.2606360Z dist/assets/itemRows-DNgi4sqO.js 0.20 kB │ gzip: 0.17 kB │ map: 0.43 kB 2026-10-24T21:36:20.2606657Z dist/assets/arrow-down-CwiX2zUI.js 0.20 kB │ gzip: 0.18 kB │ map: 0.93 kB 2026-10-24T21:36:20.2606974Z dist/assets/RVARI57O-CgA1WoRv.js 0.20 kB │ gzip: 0.19 kB │ map: 0.64 kB 2026-10-24T21:36:20.2607271Z dist/assets/arrow-right-BV_nDoCV.js 0.20 kB │ gzip: 0.19 kB │ map: 0.94 kB 2026-10-24T21:36:20.2607567Z dist/assets/gauge--BDm3ivd.js 0.20 kB │ gzip: 0.19 kB │ map: 0.92 kB 2026-10-24T21:36:20.2607866Z dist/assets/chevrons-up-down-BkLK4jrE.js 0.21 kB │ gzip: 0.18 kB │ map: 0.98 kB 2026-10-24T21:36:20.2608175Z dist/assets/play-RXGUYyl2.js 0.22 kB │ gzip: 0.21 kB │ map: 0.90 kB 2026-10-24T21:36:20.2608468Z dist/assets/smartphone-D0Mgfa7D.js 0.23 kB │ gzip: 0.21 kB │ map: 1.04 kB 2026-10-24T21:36:20.2608763Z dist/assets/undo-2-CzUHuoIy.js 0.24 kB │ gzip: 0.20 kB │ map: 0.96 kB 2026-10-24T21:36:20.2609053Z dist/assets/circle-x-DkgNqhsK.js 0.24 kB │ gzip: 0.20 kB │ map: 1.05 kB 2026-10-24T21:36:20.2609357Z dist/assets/authRedirect-DWE5a_T9.js 0.25 kB │ gzip: 0.18 kB │ map: 1.23 kB 2026-10-24T21:36:20.2609663Z dist/assets/circle-arrow-up-Cnd0b-9q.js 0.26 kB │ gzip: 0.21 kB │ map: 1.11 kB 2026-10-24T21:36:20.2609967Z dist/assets/ellipsis-Ba3jR4KI.js 0.26 kB │ gzip: 0.19 kB │ map: 1.13 kB 2026-10-24T21:36:20.2610258Z dist/assets/log-in-axSX1Ul6.js 0.26 kB │ gzip: 0.21 kB │ map: 1.04 kB 2026-10-24T21:36:20.2610595Z dist/assets/useNavigate-ZTWFv7Wx.js 0.26 kB │ gzip: 0.22 kB │ map: 2.30 kB 2026-10-24T21:36:20.2610904Z dist/assets/useSearch-CZ7cIWSu.js 0.26 kB │ gzip: 0.20 kB │ map: 1.53 kB 2026-10-24T21:36:20.2611198Z dist/assets/copy-tx2aQfww.js 0.26 kB │ gzip: 0.23 kB │ map: 1.04 kB 2026-10-24T21:36:20.2611571Z dist/assets/cloneFileDiffMetadata-zVRGqYgv.js 0.27 kB │ gzip: 0.19 kB │ map: 1.23 kB 2026-10-24T21:36:20.2611923Z dist/assets/ellipsis-vertical-BmW5_1NR.js 0.28 kB │ gzip: 0.20 kB │ map: 1.19 kB 2026-10-24T21:36:20.2612237Z dist/assets/square-terminal-DLKd3WZs.js 0.28 kB │ gzip: 0.23 kB │ map: 1.18 kB 2026-10-24T21:36:20.2612541Z dist/assets/eye-DcrgQArc.js 0.28 kB │ gzip: 0.23 kB │ map: 1.05 kB 2026-10-24T21:36:20.2612834Z dist/assets/circle-alert-pHfDBynR.js 0.29 kB │ gzip: 0.21 kB │ map: 1.20 kB 2026-10-24T21:36:20.2613141Z dist/assets/external-link-C-DWxBJN.js 0.29 kB │ gzip: 0.23 kB │ map: 1.10 kB 2026-10-24T21:36:20.2613448Z dist/assets/mouse-pointer-2--4WLvE3e.js 0.29 kB │ gzip: 0.24 kB │ map: 1.02 kB 2026-10-24T21:36:20.2613757Z dist/assets/pencil-60m8KW76.js 0.31 kB │ gzip: 0.25 kB │ map: 1.06 kB 2026-10-24T21:36:20.2614051Z dist/assets/pen-line-CmhjfyJg.js 0.31 kB │ gzip: 0.25 kB │ map: 1.07 kB 2026-10-24T21:36:20.2614347Z dist/assets/plug-2-D0EPU-J9.js 0.31 kB │ gzip: 0.23 kB │ map: 1.21 kB 2026-10-24T21:36:20.2614640Z dist/assets/list-checks-C0UyaVrI.js 0.31 kB │ gzip: 0.22 kB │ map: 1.24 kB 2026-10-24T21:36:20.2614947Z dist/assets/FormContext-D-I_yxhH.js 0.33 kB │ gzip: 0.26 kB │ map: 1.13 kB 2026-10-24T21:36:20.2615241Z dist/assets/archive-x-B1Lxt_ae.js 0.33 kB │ gzip: 0.25 kB │ map: 1.24 kB 2026-10-24T21:36:20.2615551Z dist/assets/message-square-off-CC4CSLfF.js 0.35 kB │ gzip: 0.27 kB │ map: 1.22 kB 2026-10-24T21:36:20.2615862Z dist/assets/refresh-cw-f0sYLYFw.js 0.35 kB │ gzip: 0.25 kB │ map: 1.22 kB 2026-10-24T21:36:20.2616172Z dist/assets/settings.general-C0A8l0jF.js 0.36 kB │ gzip: 0.28 kB │ map: 0.84 kB 2026-10-24T21:36:20.2616472Z dist/assets/trash-2-BLtjvmSA.js 0.36 kB │ gzip: 0.24 kB │ map: 1.27 kB 2026-10-24T21:36:20.2616767Z dist/assets/camera-BPh_dJif.js 0.37 kB │ gzip: 0.28 kB │ map: 1.15 kB 2026-10-24T21:36:20.2617053Z dist/assets/server-CYq90Ros.js 0.37 kB │ gzip: 0.24 kB │ map: 1.43 kB 2026-10-24T21:36:20.2617349Z dist/assets/unlink-2-DC75hwNQ.js 0.38 kB │ gzip: 0.27 kB │ map: 1.83 kB 2026-10-24T21:36:20.2617634Z dist/assets/lock-B_0jes9T.js 0.39 kB │ gzip: 0.25 kB │ map: 1.93 kB 2026-10-24T21:36:20.2617934Z dist/assets/useLocation-BzR9jzNp.js 0.39 kB │ gzip: 0.28 kB │ map: 2.27 kB 2026-10-24T21:36:20.2618257Z dist/assets/settings.scheduled-tasks-BHaXUQKh.js 0.40 kB │ gzip: 0.30 kB │ map: 1.24 kB 2026-10-24T21:36:20.2618583Z dist/assets/toastHelpers-CSQRKo4F.js 0.40 kB │ gzip: 0.26 kB │ map: 2.12 kB 2026-10-24T21:36:20.2618886Z dist/assets/grip-vertical-B4CDIMqL.js 0.41 kB │ gzip: 0.23 kB │ map: 1.57 kB 2026-10-24T21:36:20.2619206Z dist/assets/useT3ConnectAuthPrompt-BsI_DHk0.js 0.41 kB │ gzip: 0.30 kB │ map: 0.95 kB 2026-10-24T21:36:20.2619521Z dist/assets/previewBridge--WA15Zcw.js 0.42 kB │ gzip: 0.29 kB │ map: 1.92 kB 2026-10-24T21:36:20.2619826Z dist/assets/K3MD6TGW-DGmNtd_j.js 0.42 kB │ gzip: 0.32 kB │ map: 1.02 kB 2026-10-24T21:36:20.2620117Z dist/assets/hammer-BtSyZFYT.js 0.42 kB │ gzip: 0.30 kB │ map: 1.24 kB 2026-10-24T21:36:20.2620507Z dist/assets/inbox-BGGCARsb.js 0.43 kB │ gzip: 0.32 kB │ map: 1.89 kB 2026-10-24T21:36:20.2620859Z dist/assets/mouse-pointer-click-BFW6AziF.js 0.46 kB │ gzip: 0.31 kB │ map: 1.46 kB 2026-10-24T21:36:20.2621174Z dist/assets/eye-off-CGiC01Xr.js 0.46 kB │ gzip: 0.30 kB │ map: 1.37 kB 2026-10-24T21:36:20.2621483Z dist/assets/sliders-horizontal-BHkPcwje.js 0.47 kB │ gzip: 0.26 kB │ map: 1.68 kB 2026-10-24T21:36:20.2621795Z dist/assets/folder-BUa2a6zj.js 0.47 kB │ gzip: 0.31 kB │ map: 1.87 kB 2026-10-24T21:36:20.2622103Z dist/assets/fileCommentAnnotations-BgdL_7u9.js 0.48 kB │ gzip: 0.30 kB │ map: 2.48 kB 2026-10-24T21:36:20.2622423Z dist/assets/radio-tower-B-fb5gOx.js 0.49 kB │ gzip: 0.32 kB │ map: 1.58 kB 2026-10-24T21:36:20.2622730Z dist/assets/redirect-D3L17tzd.js 0.49 kB │ gzip: 0.32 kB │ map: 3.46 kB 2026-10-24T21:36:20.2623026Z dist/assets/star-CSH4IHn1.js 0.50 kB │ gzip: 0.32 kB │ map: 1.18 kB 2026-10-24T21:36:20.2623321Z dist/assets/file-braces-DgOzaxUZ.js 0.50 kB │ gzip: 0.29 kB │ map: 1.44 kB 2026-10-24T21:36:20.2623624Z dist/assets/folder-tree-BjnUo84q.js 0.51 kB │ gzip: 0.29 kB │ map: 1.45 kB 2026-10-24T21:36:20.2623920Z dist/assets/5THPTBWS-Ce_hS451.js 0.52 kB │ gzip: 0.34 kB │ map: 1.60 kB 2026-10-24T21:36:20.2624213Z dist/assets/sparkles-RZkyvAwn.js 0.53 kB │ gzip: 0.31 kB │ map: 1.44 kB 2026-10-24T21:36:20.2624513Z dist/assets/ScopedSwitch-Cn5aX1yD.js 0.53 kB │ gzip: 0.39 kB │ map: 1.47 kB 2026-10-24T21:36:20.2624828Z dist/assets/browserLinkTarget-CMnAhbjy.js 0.53 kB │ gzip: 0.36 kB │ map: 2.48 kB 2026-10-24T21:36:20.2625140Z dist/assets/TSHNXIZL-q9mdpGpW.js 0.53 kB │ gzip: 0.39 kB │ map: 1.34 kB 2026-10-24T21:36:20.2625449Z dist/assets/rows-3-DMely9jx.js 0.54 kB │ gzip: 0.31 kB │ map: 2.87 kB 2026-10-24T21:36:20.2625746Z dist/assets/onboarding-HtsTPJAs.js 0.54 kB │ gzip: 0.32 kB │ map: 2.20 kB 2026-10-24T21:36:20.2626055Z dist/assets/triangle-alert-C5aZTDBX.js 0.57 kB │ gzip: 0.33 kB │ map: 2.93 kB 2026-10-24T21:36:20.2626362Z dist/assets/paintbrush-DCImhdDK.js 0.57 kB │ gzip: 0.37 kB │ map: 1.44 kB 2026-10-24T21:36:20.2626673Z dist/assets/useAriaLabelledBy-CQPoUrOG.js 0.58 kB │ gzip: 0.40 kB │ map: 3.53 kB 2026-10-24T21:36:20.2626984Z dist/assets/codeowners-C8r90Shi.js 0.58 kB │ gzip: 0.34 kB │ map: 1.09 kB 2026-10-24T21:36:20.2627294Z dist/assets/trending-up-PW95SRBw.js 0.59 kB │ gzip: 0.34 kB │ map: 2.90 kB 2026-10-24T21:36:20.2627597Z dist/assets/G3MDBVQH-BZmnMkFw.js 0.60 kB │ gzip: 0.38 kB │ map: 1.76 kB 2026-10-24T21:36:20.2627904Z dist/assets/use-atom-command-Bw7IAbaQ.js 0.60 kB │ gzip: 0.39 kB │ map: 1.86 kB 2026-10-24T21:36:20.2628215Z dist/assets/usageAccess-rF_MTyXy.js 0.62 kB │ gzip: 0.33 kB │ map: 2.05 kB 2026-10-24T21:36:20.2628514Z dist/assets/square-v7Oo0Y38.js 0.63 kB │ gzip: 0.38 kB │ map: 3.08 kB 2026-10-24T21:36:20.2628818Z dist/assets/composerTrigger-BP81K-4K.js 0.63 kB │ gzip: 0.38 kB │ map: 6.62 kB 2026-10-24T21:36:20.2629126Z dist/assets/jsx-runtime-DVMLLmEC.js 0.64 kB │ gzip: 0.44 kB │ map: 3.54 kB 2026-10-24T21:36:20.2629561Z dist/assets/monitor-DKhPzqUQ.js 0.64 kB │ gzip: 0.41 kB │ map: 2.90 kB 2026-10-24T21:36:20.2629899Z dist/assets/5GK6JWQ2-XTJR19D8.js 0.64 kB │ gzip: 0.47 kB │ map: 1.68 kB 2026-10-24T21:36:20.2630212Z dist/assets/runtimeModeConfig-C97PIe3m.js 0.64 kB │ gzip: 0.38 kB │ map: 1.52 kB 2026-10-24T21:36:20.2630549Z dist/assets/upload-BcSejyNp.js 0.66 kB │ gzip: 0.39 kB │ map: 2.48 kB 2026-10-24T21:36:20.2630870Z dist/assets/WorkspacePageContainer-DztDaoHX.js 0.67 kB │ gzip: 0.48 kB │ map: 2.06 kB 2026-10-24T21:36:20.2631191Z dist/assets/CSPContext-L0FF4knb.js 0.71 kB │ gzip: 0.47 kB │ map: 4.09 kB 2026-10-24T21:36:20.2631512Z dist/assets/use-atom-query-runner-Ckvj4YGN.js 0.71 kB │ gzip: 0.44 kB │ map: 2.46 kB 2026-10-24T21:36:20.2631823Z dist/assets/skeleton-D2zBzHe_.js 0.72 kB │ gzip: 0.48 kB │ map: 1.79 kB 2026-10-24T21:36:20.2632128Z dist/assets/layers-Dl99swt-.js 0.73 kB │ gzip: 0.38 kB │ map: 2.42 kB 2026-10-24T21:36:20.2632430Z dist/assets/shellsession-B6LP6YJG.js 0.76 kB │ gzip: 0.46 kB │ map: 1.37 kB 2026-10-24T21:36:20.2632746Z dist/assets/usageShortcuts-DjAGbGvM.js 0.76 kB │ gzip: 0.44 kB │ map: 2.41 kB 2026-10-24T21:36:20.2633043Z dist/assets/tsv-sltzmVWM.js 0.77 kB │ gzip: 0.37 kB │ map: 1.38 kB 2026-10-24T21:36:20.2633345Z dist/assets/MathTypeset-DiBH90KS.js 0.82 kB │ gzip: 0.56 kB │ map: 26.87 kB 2026-10-24T21:36:20.2633649Z dist/assets/DKTLEL5E-DciMwFJ1.js 0.87 kB │ gzip: 0.43 kB │ map: 2.42 kB 2026-10-24T21:36:20.2633959Z dist/assets/useNavigateBack-C0U_AfSW.js 0.88 kB │ gzip: 0.56 kB │ map: 3.67 kB 2026-10-24T21:36:20.2634261Z dist/assets/pair-DBjaFc6S.js 0.88 kB │ gzip: 0.55 kB │ map: 3.77 kB 2026-10-24T21:36:20.2634568Z dist/assets/html-derivative-QfWcQxux.js 0.89 kB │ gzip: 0.49 kB │ map: 1.46 kB 2026-10-24T21:36:20.2634892Z dist/assets/useRelativeTimeState-B8Lvd7C7.js 0.90 kB │ gzip: 0.54 kB │ map: 3.30 kB 2026-10-24T21:36:20.2635213Z dist/assets/SecretInput-Dk1XbY7G.js 0.90 kB │ gzip: 0.60 kB │ map: 2.97 kB 2026-10-24T21:36:20.2635517Z dist/assets/linkedPrompt-CM6Kq62e.js 0.91 kB │ gzip: 0.53 kB │ map: 2.66 kB 2026-10-24T21:36:20.2635816Z dist/assets/kbd-ClnU6hi-.js 0.99 kB │ gzip: 0.50 kB │ map: 2.57 kB 2026-10-24T21:36:20.2636133Z dist/assets/useScopedModelAvailability-BMmvyB1O.js 0.99 kB │ gzip: 0.60 kB │ map: 4.94 kB 2026-10-24T21:36:20.2636463Z dist/assets/74OO7NKP-DZUAHNBR.js 1.01 kB │ gzip: 0.62 kB │ map: 2.78 kB 2026-10-24T21:36:20.2636765Z dist/assets/draft-input-COD7gj__.js 1.02 kB │ gzip: 0.66 kB │ map: 4.35 kB 2026-10-24T21:36:20.2637074Z dist/assets/git-rebase-Bl-U2xaZ.js 1.03 kB │ gzip: 0.47 kB │ map: 1.72 kB 2026-10-24T21:36:20.2637371Z dist/assets/qmldir-DCQb3MpD.js 1.03 kB │ gzip: 0.48 kB │ map: 1.74 kB 2026-10-24T21:36:20.2637669Z dist/assets/WEVWDWVA-CEvgpJt3.js 1.07 kB │ gzip: 0.57 kB │ map: 2.98 kB 2026-10-24T21:36:20.2637961Z dist/assets/type-IZznv1At.js 1.07 kB │ gzip: 0.52 kB │ map: 4.84 kB 2026-10-24T21:36:20.2638280Z dist/assets/git-pull-request-draft-Dd5x8xqM.js 1.09 kB │ gzip: 0.44 kB │ map: 5.05 kB 2026-10-24T21:36:20.2638595Z dist/assets/user-lock-3dt3yw_X.js 1.09 kB │ gzip: 0.50 kB │ map: 4.74 kB 2026-10-24T21:36:20.2639026Z dist/assets/sun-B8Xysd5K.js 1.11 kB │ gzip: 0.52 kB │ map: 4.01 kB 2026-10-24T21:36:20.2639376Z dist/assets/route-DV_JcBsb.js 1.12 kB │ gzip: 0.51 kB │ map: 4.41 kB 2026-10-24T21:36:20.2639672Z dist/assets/wrench-Ct0tGnPy.js 1.15 kB │ gzip: 0.57 kB │ map: 3.90 kB 2026-10-24T21:36:20.2639989Z dist/assets/pullRequestReviewStore-BUOZy_n4.js 1.15 kB │ gzip: 0.57 kB │ map: 5.66 kB 2026-10-24T21:36:20.2640305Z dist/assets/csv-Dx-8-gkx.js 1.17 kB │ gzip: 0.40 kB │ map: 2.00 kB 2026-10-24T21:36:20.2640644Z dist/assets/observeResize-CZSaj3UZ.js 1.19 kB │ gzip: 0.64 kB │ map: 5.33 kB 2026-10-24T21:36:20.2640961Z dist/assets/minimize-2-BWhrEW73.js 1.20 kB │ gzip: 0.59 kB │ map: 5.47 kB 2026-10-24T21:36:20.2641278Z dist/assets/ExpandableText-MOot-btL.js 1.23 kB │ gzip: 0.77 kB │ map: 5.16 kB 2026-10-24T21:36:20.2641597Z dist/assets/git-commit-BSykSTBG.js 1.27 kB │ gzip: 0.56 kB │ map: 2.07 kB 2026-10-24T21:36:20.2641914Z dist/assets/WorkspacePageHeader-DpSSFSRE.js 1.30 kB │ gzip: 0.69 kB │ map: 4.15 kB 2026-10-24T21:36:20.2642243Z dist/assets/discovery-list-B2Nkc9ye.js 1.39 kB │ gzip: 0.76 kB │ map: 4.07 kB 2026-10-24T21:36:20.2642544Z dist/assets/xsl-Bqr2UbU6.js 1.40 kB │ gzip: 0.53 kB │ map: 2.22 kB 2026-10-24T21:36:20.2642852Z dist/assets/AuthSurfaceShell-CST-ySbW.js 1.42 kB │ gzip: 0.75 kB │ map: 5.23 kB 2026-10-24T21:36:20.2643158Z dist/assets/semver-CFbvOQKc.js 1.42 kB │ gzip: 0.64 kB │ map: 9.55 kB 2026-10-24T21:36:20.2643464Z dist/assets/6IMQ5BUJ-6itAmRoY.js 1.43 kB │ gzip: 0.79 kB │ map: 3.49 kB 2026-10-24T21:36:20.2643760Z dist/assets/dotenv-_5a1GRtc.js 1.45 kB │ gzip: 0.56 kB │ map: 2.34 kB 2026-10-24T21:36:20.2644066Z dist/assets/CommandBlock-BS0-Bv6u.js 1.48 kB │ gzip: 0.89 kB │ map: 4.75 kB 2026-10-24T21:36:20.2644366Z dist/assets/sparql-D_iOobhT.js 1.52 kB │ gzip: 0.84 kB │ map: 2.14 kB 2026-10-24T21:36:20.2644656Z dist/assets/ini-B5eOa1yu.js 1.55 kB │ gzip: 0.52 kB │ map: 2.47 kB 2026-10-24T21:36:20.2644953Z dist/assets/sourceControl-FmI9vk2O.js 1.56 kB │ gzip: 0.52 kB │ map: 5.30 kB 2026-10-24T21:36:20.2645279Z dist/assets/RedactedSensitiveText-qS5CoeNE.js 1.56 kB │ gzip: 0.96 kB │ map: 6.24 kB 2026-10-24T21:36:20.2645613Z dist/assets/previewMiniPlayerStore-CkDOqUX3.js 1.56 kB │ gzip: 0.70 kB │ map: 8.23 kB 2026-10-24T21:36:20.2645955Z dist/assets/EnvironmentMachineIcon-Co6uBvrg.js 1.66 kB │ gzip: 0.80 kB │ map: 4.92 kB 2026-10-24T21:36:20.2646276Z dist/assets/5N7A7DKN-Ci7Zq-A5.js 1.67 kB │ gzip: 0.96 kB │ map: 4.05 kB 2026-10-24T21:36:20.2646571Z dist/assets/preview-9KVasQ7j.js 1.71 kB │ gzip: 0.59 kB │ map: 6.09 kB 2026-10-24T21:36:20.2646883Z dist/assets/fortran-fixed-form-DEKoE2YW.js 1.71 kB │ gzip: 0.72 kB │ map: 2.77 kB 2026-10-24T21:36:20.2647213Z dist/assets/ConnectionStatusDot-BuzX6ohm.js 1.73 kB │ gzip: 0.92 kB │ map: 5.60 kB 2026-10-24T21:36:20.2647544Z dist/assets/T3ConnectSidebarSignIn-BH7PTG7v.js 1.75 kB │ gzip: 0.81 kB │ map: 5.39 kB 2026-10-24T21:36:20.2647860Z dist/assets/docker-IyjqRm3v.js 1.77 kB │ gzip: 0.63 kB │ map: 2.65 kB 2026-10-24T21:36:20.2648207Z dist/assets/hxml-B0Qn7Nwc.js 1.78 kB │ gzip: 0.91 kB │ map: 2.51 kB 2026-10-24T21:36:20.2648565Z dist/assets/WorkspaceBreadcrumb-CTxS4Czc.js 1.80 kB │ gzip: 0.89 kB │ map: 5.93 kB 2026-10-24T21:36:20.2648876Z dist/assets/session-CBSBXxy_.js 1.81 kB │ gzip: 0.90 kB │ map: 8.91 kB 2026-10-24T21:36:20.2649171Z dist/assets/query-BSBqj6E2.js 1.81 kB │ gzip: 0.97 kB │ map: 8.50 kB 2026-10-24T21:36:20.2649468Z dist/assets/mediaSource-CDaN-3T5.js 1.84 kB │ gzip: 0.91 kB │ map: 9.78 kB 2026-10-24T21:36:20.2649774Z dist/assets/desktop-Dlh5hvp9.js 1.87 kB │ gzip: 0.78 kB │ map: 2.76 kB 2026-10-24T21:36:20.2650074Z dist/assets/user-round-DIWQPoBt.js 1.87 kB │ gzip: 0.76 kB │ map: 8.43 kB 2026-10-24T21:36:20.2650384Z dist/assets/memory-stick-CTKyzUTl.js 1.89 kB │ gzip: 0.77 kB │ map: 7.67 kB 2026-10-24T21:36:20.2650731Z dist/assets/7WLXJQOR-D6QVYUu9.js 1.99 kB │ gzip: 1.00 kB │ map: 2.80 kB 2026-10-24T21:36:20.2651035Z dist/assets/attachments-QnGojQoj.js 2.05 kB │ gzip: 0.89 kB │ map: 10.19 kB 2026-10-24T21:36:20.2651351Z dist/assets/NoProjectsHero-DJo7ZdZm.js 2.05 kB │ gzip: 1.06 kB │ map: 8.31 kB 2026-10-24T21:36:20.2651659Z dist/assets/textarea-fo-g86bR.js 2.05 kB │ gzip: 1.01 kB │ map: 7.13 kB 2026-10-24T21:36:20.2651973Z dist/assets/ProviderAuthTerminal-iaPKjOBO.js 2.13 kB │ gzip: 1.14 kB │ map: 8.51 kB 2026-10-24T21:36:20.2652292Z dist/assets/search-xLME8fgJ.js 2.16 kB │ gzip: 1.13 kB │ map: 13.13 kB 2026-10-24T21:36:20.2652584Z dist/assets/erb-C0PT2tVJ.js 2.17 kB │ gzip: 0.65 kB │ map: 3.34 kB 2026-10-24T21:36:20.2652881Z dist/assets/5B3SVYGG-Dh2l4W-V.js 2.17 kB │ gzip: 1.10 kB │ map: 5.94 kB 2026-10-24T21:36:20.2653180Z dist/assets/wenyan-C8pVoKbM.js 2.19 kB │ gzip: 1.13 kB │ map: 3.19 kB 2026-10-24T21:36:20.2653490Z dist/assets/AnimatedHeight-Bu8VSDu4.js 2.20 kB │ gzip: 1.11 kB │ map: 10.50 kB 2026-10-24T21:36:20.2653798Z dist/assets/assetUrls-CySxKY-W.js 2.23 kB │ gzip: 1.16 kB │ map: 8.60 kB 2026-10-24T21:36:20.2654098Z dist/assets/jssm-DXw9l8Rf.js 2.27 kB │ gzip: 0.64 kB │ map: 3.39 kB 2026-10-24T21:36:20.2654398Z dist/assets/EnvironmentRow-P6Xrz8sP.js 2.29 kB │ gzip: 1.22 kB │ map: 8.55 kB 2026-10-24T21:36:20.2654709Z dist/assets/fileLinks-BbVuUN7i.js 2.33 kB │ gzip: 1.11 kB │ map: 11.00 kB 2026-10-24T21:36:20.2655009Z dist/assets/edge-DbocH-4h.js 2.34 kB │ gzip: 0.70 kB │ map: 3.63 kB 2026-10-24T21:36:20.2655296Z dist/assets/reg-CRGYupPL.js 2.37 kB │ gzip: 0.72 kB │ map: 3.51 kB 2026-10-24T21:36:20.2655606Z dist/assets/usePermissionStatus-BYJHwh_E.js 2.41 kB │ gzip: 1.26 kB │ map: 10.74 kB 2026-10-24T21:36:20.2655924Z dist/assets/useResizeDrag-K16rNICO.js 2.52 kB │ gzip: 1.17 kB │ map: 10.38 kB 2026-10-24T21:36:20.2656240Z dist/assets/square-pen-Bre3KHiZ.js 2.53 kB │ gzip: 1.08 kB │ map: 11.16 kB 2026-10-24T21:36:20.2656541Z dist/assets/FTXIJQGB-CggtIYAM.js 2.58 kB │ gzip: 1.15 kB │ map: 4.98 kB 2026-10-24T21:36:20.2656838Z dist/assets/diff-woXpYk--.js 2.60 kB │ gzip: 0.72 kB │ map: 3.86 kB 2026-10-24T21:36:20.2657234Z dist/assets/sourceControlPresentation-DYVvNc0r.js 2.60 kB │ gzip: 1.35 kB │ map: 13.27 kB 2026-10-24T21:36:20.2657596Z dist/assets/gleam-CSRkHgEL.js 2.61 kB │ gzip: 0.85 kB │ map: 3.99 kB 2026-10-24T21:36:20.2657886Z dist/assets/connect-Dz0vTAFT.js 2.63 kB │ gzip: 1.40 kB │ map: 10.10 kB 2026-10-24T21:36:20.2658180Z dist/assets/hy-CZbG8q4J.js 2.68 kB │ gzip: 1.21 kB │ map: 3.69 kB 2026-10-24T21:36:20.2658491Z dist/assets/sidebarProjectGrouping-c-EpPNh6.js 2.75 kB │ gzip: 1.00 kB │ map: 11.52 kB 2026-10-24T21:36:20.2658814Z dist/assets/openscad-BUDT5pXO.js 2.86 kB │ gzip: 1.04 kB │ map: 4.23 kB 2026-10-24T21:36:20.2659105Z dist/assets/log-BNLmms1o.js 2.88 kB │ gzip: 0.93 kB │ map: 4.35 kB 2026-10-24T21:36:20.2659415Z dist/assets/standalone-page-BuwC2fNh.js 2.89 kB │ gzip: 1.25 kB │ map: 10.07 kB 2026-10-24T21:36:20.2659718Z dist/assets/json-CU5hZXC7.js 2.92 kB │ gzip: 0.85 kB │ map: 4.35 kB 2026-10-24T21:36:20.2660016Z dist/assets/preview-De9Yy3gS.js 2.95 kB │ gzip: 1.40 kB │ map: 11.90 kB 2026-10-24T21:36:20.2660308Z dist/assets/cairo-DLTphjLi.js 2.97 kB │ gzip: 0.83 kB │ map: 4.57 kB 2026-10-24T21:36:20.2660637Z dist/assets/berry-DKpUyyne.js 3.04 kB │ gzip: 0.84 kB │ map: 4.85 kB 2026-10-24T21:36:20.2660926Z dist/assets/jsonl-CmCQp5Yx.js 3.04 kB │ gzip: 0.82 kB │ map: 4.51 kB 2026-10-24T21:36:20.2661225Z dist/assets/jsonc-CYpm1nAK.js 3.14 kB │ gzip: 0.82 kB │ map: 4.61 kB 2026-10-24T21:36:20.2661513Z dist/assets/logo-Cluzi2Zq.js 3.16 kB │ gzip: 1.50 kB │ map: 3.82 kB 2026-10-24T21:36:20.2661820Z dist/assets/textDirection-DGhDAV7L.js 3.22 kB │ gzip: 1.47 kB │ map: 9.42 kB 2026-10-24T21:36:20.2662125Z dist/assets/device-kFGTEsJ9.js 3.24 kB │ gzip: 1.43 kB │ map: 15.42 kB 2026-10-24T21:36:20.2662419Z dist/assets/po-BiJDBrnU.js 3.27 kB │ gzip: 0.94 kB │ map: 5.09 kB 2026-10-24T21:36:20.2662708Z dist/assets/json5-BR5RXkoi.js 3.29 kB │ gzip: 0.86 kB │ map: 4.96 kB 2026-10-24T21:36:20.2663007Z dist/assets/mipsasm-BMqwQI7S.js 3.29 kB │ gzip: 1.21 kB │ map: 4.68 kB 2026-10-24T21:36:20.2663302Z dist/assets/tasl-DMoTqEGO.js 3.32 kB │ gzip: 0.88 kB │ map: 5.13 kB 2026-10-24T21:36:20.2663599Z dist/assets/genie-CV2tkWYe.js 3.39 kB │ gzip: 1.24 kB │ map: 4.87 kB 2026-10-24T21:36:20.2663890Z dist/assets/rel-BtDbiS_P.js 3.40 kB │ gzip: 1.14 kB │ map: 4.88 kB 2026-10-24T21:36:20.2664182Z dist/assets/vala-zf12oZj6.js 3.40 kB │ gzip: 1.22 kB │ map: 4.90 kB 2026-10-24T21:36:20.2664473Z dist/assets/6OLKWJ4F-BsJtNztg.js 3.47 kB │ gzip: 1.64 kB │ map: 8.16 kB 2026-10-24T21:36:20.2664773Z dist/assets/splunk-BC2Px7Mm.js 3.47 kB │ gzip: 1.55 kB │ map: 4.45 kB 2026-10-24T21:36:20.2665086Z dist/assets/FoldedSettingsSection-W6hbVWAx.js 3.51 kB │ gzip: 1.63 kB │ map: 18.85 kB 2026-10-24T21:36:20.2665402Z dist/assets/users-JCKA3SAz.js 3.52 kB │ gzip: 1.35 kB │ map: 15.98 kB 2026-10-24T21:36:20.2665694Z dist/assets/hurl-Bjvvc9lj.js 3.55 kB │ gzip: 1.13 kB │ map: 5.48 kB 2026-10-24T21:36:20.2666067Z dist/assets/panel-tab-close-button-DpJnr1h9.js 3.63 kB │ gzip: 1.88 kB │ map: 15.33 kB 2026-10-24T21:36:20.2666422Z dist/assets/usageFormat-CP56Y4Gt.js 3.63 kB │ gzip: 1.47 kB │ map: 14.84 kB 2026-10-24T21:36:20.2666733Z dist/assets/fluent-C03EYrpw.js 3.64 kB │ gzip: 0.93 kB │ map: 5.21 kB 2026-10-24T21:36:20.2667028Z dist/assets/jsonnet-CJTPZ8u_.js 3.65 kB │ gzip: 1.07 kB │ map: 5.43 kB 2026-10-24T21:36:20.2667336Z dist/assets/ssh-config-BgfXC-Er.js 3.65 kB │ gzip: 1.63 kB │ map: 4.50 kB 2026-10-24T21:36:20.2667631Z dist/assets/kdl-CsD5j6eV.js 3.66 kB │ gzip: 1.07 kB │ map: 5.51 kB 2026-10-24T21:36:20.2667922Z dist/assets/narrat-_X_XdTYD.js 3.70 kB │ gzip: 1.13 kB │ map: 5.43 kB 2026-10-24T21:36:20.2668208Z dist/assets/glsl-B3Z4Qj6t.js 3.73 kB │ gzip: 1.48 kB │ map: 4.44 kB 2026-10-24T21:36:20.2668512Z dist/assets/t3ProjectFile-MTd5Suwr.js 3.73 kB │ gzip: 1.53 kB │ map: 21.81 kB 2026-10-24T21:36:20.2668814Z dist/assets/turtle-ByJddavk.js 3.73 kB │ gzip: 1.00 kB │ map: 5.50 kB 2026-10-24T21:36:20.2669117Z dist/assets/threadSort-bjHzZAxR.js 3.75 kB │ gzip: 1.60 kB │ map: 20.16 kB 2026-10-24T21:36:20.2669442Z dist/assets/lazyRouteComponent-D5Ht-3SL.js 3.80 kB │ gzip: 1.39 kB │ map: 25.98 kB 2026-10-24T21:36:20.2669801Z dist/assets/ProjectMonogram-Vup_50fX.js 3.83 kB │ gzip: 1.57 kB │ map: 12.77 kB 2026-10-24T21:36:20.2670101Z dist/assets/ron-VUp2lXgN.js 3.94 kB │ gzip: 1.01 kB │ map: 6.03 kB 2026-10-24T21:36:20.2670396Z dist/assets/zenscript-BnlCZFoB.js 3.95 kB │ gzip: 1.31 kB │ map: 5.76 kB 2026-10-24T21:36:20.2670731Z dist/assets/toggle-group-DOFabD6X.js 3.98 kB │ gzip: 1.70 kB │ map: 17.27 kB 2026-10-24T21:36:20.2671047Z dist/assets/workflow-DZg1siTd.js 3.99 kB │ gzip: 1.44 kB │ map: 18.04 kB 2026-10-24T21:36:20.2671338Z dist/assets/gn-ilITqXS6.js 4.03 kB │ gzip: 1.52 kB │ map: 5.28 kB 2026-10-24T21:36:20.2671647Z dist/assets/SettingsPanels.logic-87BVOMeo.js 4.08 kB │ gzip: 1.35 kB │ map: 14.38 kB 2026-10-24T21:36:20.2671958Z dist/assets/alert-VxijgGyd.js 4.12 kB │ gzip: 1.62 kB │ map: 13.51 kB 2026-10-24T21:36:20.2672262Z dist/assets/CompositeRoot-FF9au0M-.js 4.13 kB │ gzip: 1.93 kB │ map: 20.99 kB 2026-10-24T21:36:20.2672563Z dist/assets/toggle-DOExvE6c.js 4.13 kB │ gzip: 1.72 kB │ map: 11.55 kB 2026-10-24T21:36:20.2672879Z dist/assets/SettingsScopeNotice-BCApnVD-.js 4.14 kB │ gzip: 1.90 kB │ map: 19.31 kB 2026-10-24T21:36:20.2673196Z dist/assets/CXAC5362-CJVXxMPH.js 4.17 kB │ gzip: 1.97 kB │ map: 10.66 kB 2026-10-24T21:36:20.2673500Z dist/assets/pascal-4ZHwLPI5.js 4.18 kB │ gzip: 1.71 kB │ map: 5.54 kB 2026-10-24T21:36:20.2673792Z dist/assets/empty-3BBP7Y2v.js 4.19 kB │ gzip: 1.46 kB │ map: 11.56 kB 2026-10-24T21:36:20.2674107Z dist/assets/desktopUpdate.logic-DlvhG2zH.js 4.20 kB │ gzip: 1.69 kB │ map: 15.14 kB 2026-10-24T21:36:20.2674437Z dist/assets/vcsRefInvalidation-DUct0Hs1.js 4.23 kB │ gzip: 2.06 kB │ map: 30.70 kB 2026-10-24T21:36:20.2674748Z dist/assets/http-Dz--gbJ7.js 4.45 kB │ gzip: 1.09 kB │ map: 6.78 kB 2026-10-24T21:36:20.2675035Z dist/assets/tcl-CZd0xW_V.js 4.46 kB │ gzip: 1.54 kB │ map: 6.48 kB 2026-10-24T21:36:20.2675420Z dist/assets/timestampFormat-BBUHLb6E.js 4.46 kB │ gzip: 1.58 kB │ map: 20.84 kB 2026-10-24T21:36:20.2675770Z dist/assets/useParams-CrfmNdjx.js 4.53 kB │ gzip: 2.00 kB │ map: 26.30 kB 2026-10-24T21:36:20.2676078Z dist/assets/nextflow-BJtWHP5T.js 4.55 kB │ gzip: 1.20 kB │ map: 6.87 kB 2026-10-24T21:36:20.2676375Z dist/assets/rosmsg-CAekHB0j.js 4.56 kB │ gzip: 1.09 kB │ map: 6.76 kB 2026-10-24T21:36:20.2676697Z dist/assets/projectFilesQueryState-ZkB0FOoF.js 4.59 kB │ gzip: 2.22 kB │ map: 20.22 kB 2026-10-24T21:36:20.2677015Z dist/assets/polar-C7UOKdEL.js 4.70 kB │ gzip: 1.16 kB │ map: 7.26 kB 2026-10-24T21:36:20.2677311Z dist/assets/assets-DcUtWSqH.js 4.72 kB │ gzip: 2.11 kB │ map: 22.56 kB 2026-10-24T21:36:20.2677608Z dist/assets/sdbl-bTVj8UrX.js 4.73 kB │ gzip: 2.04 kB │ map: 5.90 kB 2026-10-24T21:36:20.2677954Z dist/assets/fennel-DQxkIbk2.js 4.80 kB │ gzip: 1.57 kB │ map: 6.43 kB 2026-10-24T21:36:20.2678361Z dist/assets/bibtex-Ci_nEsc7.js 4.83 kB │ gzip: 0.86 kB │ map: 7.03 kB 2026-10-24T21:36:20.2678710Z dist/assets/settings.archived-CpzghqLf.js 5.02 kB │ gzip: 2.16 kB │ map: 31.79 kB 2026-10-24T21:36:20.2679061Z dist/assets/llvm-Cm23YOpf.js 5.08 kB │ gzip: 2.04 kB │ map: 6.68 kB 2026-10-24T21:36:20.2692140Z dist/assets/HDGCDEEZ-Cvsj_b7p.js 5.17 kB │ gzip: 2.48 kB │ map: 13.05 kB 2026-10-24T21:36:20.2692451Z dist/assets/wgsl-BsKzXJz4.js 5.17 kB │ gzip: 1.42 kB │ map: 7.51 kB 2026-10-24T21:36:20.2692773Z dist/assets/keybindings-CEi2nauQ.js 5.32 kB │ gzip: 2.12 kB │ map: 28.47 kB 2026-10-24T21:36:20.2693086Z dist/assets/gdresource-C0sCabJj.js 5.33 kB │ gzip: 1.36 kB │ map: 7.81 kB 2026-10-24T21:36:20.2693395Z dist/assets/5S6HY5KT-B75Q3qGp.js 5.35 kB │ gzip: 2.67 kB │ map: 13.95 kB 2026-10-24T21:36:20.2693688Z dist/assets/zig-CMLA9XwU.js 5.37 kB │ gzip: 1.59 kB │ map: 7.87 kB 2026-10-24T21:36:20.2693981Z dist/assets/qml-DyjGyXLX.js 5.37 kB │ gzip: 1.41 kB │ map: 8.17 kB 2026-10-24T21:36:20.2694265Z dist/assets/dax-BkyTk9wS.js 5.39 kB │ gzip: 2.25 kB │ map: 6.77 kB 2026-10-24T21:36:20.2694559Z dist/assets/bicep-CUHmPFLl.js 5.41 kB │ gzip: 1.18 kB │ map: 7.92 kB 2026-10-24T21:36:20.2694883Z dist/assets/ReadOnlySourcePreview-Ct2ZHy1o.js 5.45 kB │ gzip: 2.21 kB │ map: 19.88 kB 2026-10-24T21:36:20.2695288Z dist/assets/xml-D1Mu8RCW.js 5.47 kB │ gzip: 1.27 kB │ map: 7.90 kB 2026-10-24T21:36:20.2695609Z dist/assets/awk-BWXHIvNe.js 5.49 kB │ gzip: 1.41 kB │ map: 8.00 kB 2026-10-24T21:36:20.2695898Z dist/assets/coq-BrsZFFmf.js 5.58 kB │ gzip: 1.95 kB │ map: 7.52 kB 2026-10-24T21:36:20.2696187Z dist/assets/jinja-C4P3y_qB.js 5.67 kB │ gzip: 1.39 kB │ map: 8.57 kB 2026-10-24T21:36:20.2696492Z dist/assets/mediaReference-C0dIqaK0.js 5.76 kB │ gzip: 2.53 kB │ map: 26.43 kB 2026-10-24T21:36:20.2696807Z dist/assets/guideRunStore-CMV8UWHU.js 5.76 kB │ gzip: 2.55 kB │ map: 26.90 kB 2026-10-24T21:36:20.2697118Z dist/assets/UQJE5E4I-CtjNRxzl.js 5.77 kB │ gzip: 2.88 kB │ map: 16.01 kB 2026-10-24T21:36:20.2697420Z dist/assets/settings-l6A9LedX.js 5.78 kB │ gzip: 2.48 kB │ map: 23.03 kB 2026-10-24T21:36:20.2697720Z dist/assets/primary-CEZ1qjtz.js 5.80 kB │ gzip: 2.27 kB │ map: 25.91 kB 2026-10-24T21:36:20.2698015Z dist/assets/lean-CewbzKMR.js 5.81 kB │ gzip: 1.95 kB │ map: 7.88 kB 2026-10-24T21:36:20.2698309Z dist/assets/moonbit-CaWjb8XO.js 5.93 kB │ gzip: 1.71 kB │ map: 8.68 kB 2026-10-24T21:36:20.2698615Z dist/assets/powerquery-DNMTfnFr.js 5.94 kB │ gzip: 1.54 kB │ map: 8.52 kB 2026-10-24T21:36:20.2698918Z dist/assets/shaderlab-TOUzSsQk.js 5.96 kB │ gzip: 2.11 kB │ map: 7.73 kB 2026-10-24T21:36:20.2699219Z dist/assets/verilog-CiiDBU1e.js 5.96 kB │ gzip: 1.93 kB │ map: 8.03 kB 2026-10-24T21:36:20.2699516Z dist/assets/cypher-ClKdZ_lG.js 5.99 kB │ gzip: 1.75 kB │ map: 8.44 kB 2026-10-24T21:36:20.2699810Z dist/assets/zap-CU6xHUKO.js 6.12 kB │ gzip: 2.29 kB │ map: 26.87 kB 2026-10-24T21:36:20.2700095Z dist/assets/vb-Djn5o6TS.js 6.12 kB │ gzip: 2.37 kB │ map: 8.05 kB 2026-10-24T21:36:20.2700395Z dist/assets/input-group-B1m5npbz.js 6.15 kB │ gzip: 1.93 kB │ map: 11.42 kB 2026-10-24T21:36:20.2700765Z dist/assets/color-picker-SHuB43z1.js 6.27 kB │ gzip: 2.93 kB │ map: 27.68 kB 2026-10-24T21:36:20.2701102Z dist/assets/KeybindingsSettings.logic-C0AiTnP5.js 6.28 kB │ gzip: 2.55 kB │ map: 27.02 kB 2026-10-24T21:36:20.2701417Z dist/assets/red-CJ3rzSJv.js 6.30 kB │ gzip: 1.63 kB │ map: 8.89 kB 2026-10-24T21:36:20.2701710Z dist/assets/min-dark-BSWPekZh.js 6.33 kB │ gzip: 1.74 kB │ map: 8.63 kB 2026-10-24T21:36:20.2702010Z dist/assets/gdshader-CBce3t8t.js 6.36 kB │ gzip: 1.75 kB │ map: 9.20 kB 2026-10-24T21:36:20.2702309Z dist/assets/prisma-BsRQq5mF.js 6.36 kB │ gzip: 1.42 kB │ map: 9.28 kB 2026-10-24T21:36:20.2702598Z dist/assets/ara-4CJ0cIlV.js 6.39 kB │ gzip: 1.84 kB │ map: 9.26 kB 2026-10-24T21:36:20.2702914Z dist/assets/ConnectionDiagnosisDetails-Bz_yer_w.js 6.40 kB │ gzip: 2.81 kB │ map: 28.56 kB 2026-10-24T21:36:20.2703231Z dist/assets/DYY6UVD2-DFy-eVMa.js 6.44 kB │ gzip: 3.04 kB │ map: 16.52 kB 2026-10-24T21:36:20.2703535Z dist/assets/clojure-DqKBuwfJ.js 6.45 kB │ gzip: 1.45 kB │ map: 9.29 kB 2026-10-24T21:36:20.2703835Z dist/assets/postcss-BXeXVLqQ.js 6.45 kB │ gzip: 1.94 kB │ map: 9.12 kB 2026-10-24T21:36:20.2704524Z dist/assets/toml-CcmNWLt0.js 6.46 kB │ gzip: 1.31 kB │ map: 9.48 kB 2026-10-24T21:36:20.2704911Z dist/assets/solarized-light-DSh2HLQt.js 6.53 kB │ gzip: 1.75 kB │ map: 9.25 kB 2026-10-24T21:36:20.2705249Z dist/assets/scheduledTasksSettings.logic-10-4nEVs.js 6.53 kB │ gzip: 2.67 kB │ map: 25.74 kB 2026-10-24T21:36:20.2705569Z dist/assets/proto-DB4EqR-F.js 6.58 kB │ gzip: 1.45 kB │ map: 9.91 kB 2026-10-24T21:36:20.2705871Z dist/assets/smalltalk-B16xEiuN.js 6.62 kB │ gzip: 1.65 kB │ map: 9.26 kB 2026-10-24T21:36:20.2706160Z dist/assets/r-D4tONY_S.js 6.63 kB │ gzip: 1.86 kB │ map: 10.16 kB 2026-10-24T21:36:20.2706450Z dist/assets/talonscript-CohzipZa.js 6.79 kB │ gzip: 1.52 kB │ map: 10.08 kB 2026-10-24T21:36:20.2706762Z dist/assets/solarized-dark-DV17i1UV.js 6.89 kB │ gzip: 1.81 kB │ map: 9.71 kB 2026-10-24T21:36:20.2707074Z dist/assets/riscv-Ckw8ddFX.js 6.95 kB │ gzip: 2.01 kB │ map: 9.60 kB 2026-10-24T21:36:20.2707363Z dist/assets/soy-BZidhfq9.js 6.96 kB │ gzip: 1.66 kB │ map: 10.74 kB 2026-10-24T21:36:20.2707659Z dist/assets/min-light-DDpmG2fV.js 7.01 kB │ gzip: 1.92 kB │ map: 9.56 kB 2026-10-24T21:36:20.2707958Z dist/assets/4UO7MD6I-B8CEAhK2.js 7.08 kB │ gzip: 3.24 kB │ map: 18.76 kB 2026-10-24T21:36:20.2708259Z dist/assets/scheme-DQCgrYNe.js 7.20 kB │ gzip: 2.08 kB │ map: 9.80 kB 2026-10-24T21:36:20.2708552Z dist/assets/O7XIQ6OM-sB6UPoB5.js 7.27 kB │ gzip: 3.30 kB │ map: 19.44 kB 2026-10-24T21:36:20.2708852Z dist/assets/hlsl-Cvrh5tZx.js 7.29 kB │ gzip: 2.21 kB │ map: 9.25 kB 2026-10-24T21:36:20.2709147Z dist/assets/YVG2LODB-CjSc184A.js 7.34 kB │ gzip: 3.34 kB │ map: 18.98 kB 2026-10-24T21:36:20.2709524Z dist/assets/qss-Fe1Jh2GI.js 7.50 kB │ gzip: 2.60 kB │ map: 9.41 kB 2026-10-24T21:36:20.2709823Z dist/assets/collapsible-CfGh8-cI.js 7.51 kB │ gzip: 3.04 kB │ map: 47.01 kB 2026-10-24T21:36:20.2710128Z dist/assets/CEQABKGZ-DPF4ggmp.js 7.59 kB │ gzip: 3.52 kB │ map: 19.22 kB 2026-10-24T21:36:20.2710445Z dist/assets/primaryCloudLinkState-DnEfDi81.js 7.66 kB │ gzip: 3.06 kB │ map: 32.29 kB 2026-10-24T21:36:20.2710798Z dist/assets/htmlRender-u7V3PByb.js 7.71 kB │ gzip: 3.15 kB │ map: 30.90 kB 2026-10-24T21:36:20.2711096Z dist/assets/checkbox-BbuquKxE.js 7.73 kB │ gzip: 3.39 kB │ map: 42.78 kB 2026-10-24T21:36:20.2711406Z dist/assets/DiffFileTree-OAk07N-b.js 7.75 kB │ gzip: 3.61 kB │ map: 42.65 kB 2026-10-24T21:36:20.2711715Z dist/assets/radio-group-C6acrdot.js 7.82 kB │ gzip: 3.33 kB │ map: 38.48 kB 2026-10-24T21:36:20.2712016Z dist/assets/systemd-BxMlprV5.js 7.90 kB │ gzip: 2.57 kB │ map: 10.64 kB 2026-10-24T21:36:20.2712314Z dist/assets/_chat.index-BkkvPPtX.js 7.92 kB │ gzip: 3.10 kB │ map: 31.56 kB 2026-10-24T21:36:20.2712617Z dist/assets/monokai-CdkpiU2Y.js 7.92 kB │ gzip: 1.94 kB │ map: 11.12 kB 2026-10-24T21:36:20.2712910Z dist/assets/index-C63i7RCm.js 8.01 kB │ gzip: 3.88 kB │ map: 1.93 kB 2026-10-24T21:36:20.2713206Z dist/assets/regexp-C160j5mr.js 8.08 kB │ gzip: 1.49 kB │ map: 11.23 kB 2026-10-24T21:36:20.2713693Z dist/assets/LUXOKEGN-qGX69mpA.js 8.24 kB │ gzip: 3.73 kB │ map: 21.07 kB 2026-10-24T21:36:20.2714061Z dist/assets/haml-78M2RzJ5.js 8.36 kB │ gzip: 1.88 kB │ map: 12.45 kB 2026-10-24T21:36:20.2714348Z dist/assets/typst-DI99ib-x.js 8.42 kB │ gzip: 1.70 kB │ map: 12.31 kB 2026-10-24T21:36:20.2714648Z dist/assets/vue-html-_q5YSMOd.js 8.52 kB │ gzip: 1.72 kB │ map: 12.03 kB 2026-10-24T21:36:20.2714941Z dist/assets/plsql-DGHpHOYJ.js 8.54 kB │ gzip: 3.03 kB │ map: 10.90 kB 2026-10-24T21:36:20.2715234Z dist/assets/dart-CnvKMtbv.js 8.65 kB │ gzip: 2.03 kB │ map: 12.66 kB 2026-10-24T21:36:20.2715527Z dist/assets/horizon-CE9ld1lL.js 8.82 kB │ gzip: 1.98 kB │ map: 12.09 kB 2026-10-24T21:36:20.2715826Z dist/assets/kotlin-DhhofPvG.js 8.82 kB │ gzip: 2.16 kB │ map: 12.79 kB 2026-10-24T21:36:20.2716133Z dist/assets/horizon-bright-DSNQnXHK.js 8.83 kB │ gzip: 1.99 kB │ map: 12.14 kB 2026-10-24T21:36:20.2716466Z dist/assets/ProjectIconPickerDialog-CWeJ1FxS.js 8.92 kB │ gzip: 3.73 kB │ map: 52.01 kB 2026-10-24T21:36:20.2716788Z dist/assets/react-beAb49SJ.js 8.97 kB │ gzip: 3.50 kB │ map: 31.05 kB 2026-10-24T21:36:20.2717080Z dist/assets/make-Dixweg8N.js 8.99 kB │ gzip: 1.79 kB │ map: 12.87 kB 2026-10-24T21:36:20.2717378Z dist/assets/andromeeda-vGVdxbeo.js 9.06 kB │ gzip: 2.39 kB │ map: 11.97 kB 2026-10-24T21:36:20.2717673Z dist/assets/sas-DNZ6OI-k.js 9.10 kB │ gzip: 3.85 kB │ map: 11.14 kB 2026-10-24T21:36:20.2717967Z dist/assets/dark-plus-Cs2F2srj.js 9.14 kB │ gzip: 2.13 kB │ map: 12.44 kB 2026-10-24T21:36:20.2718274Z dist/assets/slack-dark-DnToyrRv.js 9.16 kB │ gzip: 1.99 kB │ map: 12.54 kB 2026-10-24T21:36:20.2718579Z dist/assets/connect-agent-BSUzKdem.js 9.16 kB │ gzip: 3.97 kB │ map: 39.85 kB 2026-10-24T21:36:20.2718895Z dist/assets/terminalSessions-CWBhiS-n.js 9.20 kB │ gzip: 3.20 kB │ map: 42.87 kB 2026-10-24T21:36:20.2719201Z dist/assets/2NI2N5EU-DhKGmUgn.js 9.32 kB │ gzip: 4.19 kB │ map: 24.57 kB 2026-10-24T21:36:20.2719487Z dist/assets/sass-DXrisJhu.js 9.32 kB │ gzip: 2.52 kB │ map: 13.42 kB 2026-10-24T21:36:20.2719773Z dist/assets/plastic-DQwYfKfQ.js 9.33 kB │ gzip: 2.00 kB │ map: 12.50 kB 2026-10-24T21:36:20.2720066Z dist/assets/XBNEOJTC-DI-PY1SS.js 9.44 kB │ gzip: 4.24 kB │ map: 25.57 kB 2026-10-24T21:36:20.2720392Z dist/assets/use-orchestration-command-CxCI6kJl.js 9.47 kB │ gzip: 3.02 kB │ map: 38.41 kB 2026-10-24T21:36:20.2720759Z dist/assets/slack-ochin-B2OO5cIa.js 9.47 kB │ gzip: 2.12 kB │ map: 13.13 kB 2026-10-24T21:36:20.2721054Z dist/assets/tex-D4kYGkpD.js 9.71 kB │ gzip: 3.10 kB │ map: 12.45 kB 2026-10-24T21:36:20.2721336Z dist/assets/jison-Byt20Y-H.js 9.73 kB │ gzip: 1.90 kB │ map: 14.14 kB 2026-10-24T21:36:20.2721621Z dist/assets/cmake-Bj61d0ZC.js 9.89 kB │ gzip: 3.41 kB │ map: 11.27 kB 2026-10-24T21:36:20.2721912Z dist/assets/light-plus-DVQuIRkW.js 9.98 kB │ gzip: 2.31 kB │ map: 13.44 kB 2026-10-24T21:36:20.2722243Z dist/assets/settings.open-source-licenses-CbsDFN7g.js 9.99 kB │ gzip: 4.09 kB │ map: 46.85 kB 2026-10-24T21:36:20.2722677Z dist/assets/hcl-Dh228itO.js 10.08 kB │ gzip: 1.96 kB │ map: 14.80 kB 2026-10-24T21:36:20.2723072Z dist/assets/imageCompression-B5vTC6_a.js 10.19 kB │ gzip: 4.07 kB │ map: 45.60 kB 2026-10-24T21:36:20.2723368Z dist/assets/rst-OA9zXOEF.js 10.35 kB │ gzip: 2.28 kB │ map: 15.73 kB 2026-10-24T21:36:20.2723649Z dist/assets/pkl-ot-7Btpt.js 10.40 kB │ gzip: 1.41 kB │ map: 15.48 kB 2026-10-24T21:36:20.2723937Z dist/assets/beancount-D-usSTwE.js 10.41 kB │ gzip: 1.46 kB │ map: 15.05 kB 2026-10-24T21:36:20.2724242Z dist/assets/nextflow-groovy-DJMQeKeT.js 10.48 kB │ gzip: 2.17 kB │ map: 15.26 kB 2026-10-24T21:36:20.2724545Z dist/assets/YURCZMG2-CFC0UBX1.js 10.49 kB │ gzip: 4.56 kB │ map: 25.28 kB 2026-10-24T21:36:20.2724838Z dist/assets/raku-B3gFvitq.js 10.50 kB │ gzip: 2.97 kB │ map: 12.92 kB 2026-10-24T21:36:20.2725138Z dist/assets/dream-maker-DW3nJb8Q.js 10.51 kB │ gzip: 2.29 kB │ map: 15.13 kB 2026-10-24T21:36:20.2725445Z dist/assets/_chat.new-CKf3yahy.js 10.58 kB │ gzip: 4.54 kB │ map: 45.05 kB 2026-10-24T21:36:20.2725735Z dist/assets/yaml-DqrBPYEo.js 10.60 kB │ gzip: 2.34 kB │ map: 14.93 kB 2026-10-24T21:36:20.2726045Z dist/assets/browserHistoryStore-DGvpFwgr.js 10.62 kB │ gzip: 4.20 kB │ map: 55.77 kB 2026-10-24T21:36:20.2726353Z dist/assets/just-DDwlfhUt.js 10.85 kB │ gzip: 2.64 kB │ map: 15.45 kB 2026-10-24T21:36:20.2726645Z dist/assets/elm-ByOPkR8C.js 10.98 kB │ gzip: 2.13 kB │ map: 16.07 kB 2026-10-24T21:36:20.2726950Z dist/assets/phoneViewer-DwqUCyZv.js 11.04 kB │ gzip: 4.64 kB │ map: 49.75 kB 2026-10-24T21:36:20.2727271Z dist/assets/K7RP3OMA-CWmq2dY4.js 11.18 kB │ gzip: 5.02 kB │ map: 29.89 kB 2026-10-24T21:36:20.2727588Z dist/assets/github-light-EUqPIrTm.js 11.23 kB │ gzip: 2.53 kB │ map: 15.44 kB 2026-10-24T21:36:20.2727911Z dist/assets/prolog-iXnhIJG7.js 11.39 kB │ gzip: 3.88 kB │ map: 13.31 kB 2026-10-24T21:36:20.2728228Z dist/assets/terraform-DswuEJGm.js 11.42 kB │ gzip: 2.54 kB │ map: 16.23 kB 2026-10-24T21:36:20.2728551Z dist/assets/github-dark-C-LZuMrd.js 11.45 kB │ gzip: 2.56 kB │ map: 15.70 kB 2026-10-24T21:36:20.2728873Z dist/assets/puppet-CDv2pdJW.js 11.47 kB │ gzip: 2.14 kB │ map: 16.33 kB 2026-10-24T21:36:20.2729193Z dist/assets/77XECAW3-CPgkP2me.js 11.54 kB │ gzip: 5.35 kB │ map: 27.96 kB 2026-10-24T21:36:20.2729517Z dist/assets/laserwave-C_8bwKvT.js 11.54 kB │ gzip: 2.61 kB │ map: 14.72 kB 2026-10-24T21:36:20.2729860Z dist/assets/ProjectFavicon-C7LRZmkf.js 11.76 kB │ gzip: 5.20 kB │ map: 15.88 kB 2026-10-24T21:36:20.2730178Z dist/assets/gherkin-DExj1W_8.js 11.98 kB │ gzip: 5.08 kB │ map: 13.13 kB 2026-10-24T21:36:20.2730538Z dist/assets/wasm-ByWQv1Qj.js 12.04 kB │ gzip: 2.21 kB │ map: 16.85 kB 2026-10-24T21:36:20.2730841Z dist/assets/hjson-CxZEssPk.js 12.08 kB │ gzip: 1.67 kB │ map: 17.29 kB 2026-10-24T21:36:20.2731158Z dist/assets/YHV2MVVZ-BuFOpA0y.js 12.09 kB │ gzip: 5.11 kB │ map: 36.55 kB 2026-10-24T21:36:20.2731470Z dist/assets/ABYRPUBD-ClTlGZRk.js 12.11 kB │ gzip: 3.25 kB │ map: 36.28 kB 2026-10-24T21:36:20.2731783Z dist/assets/handlebars-C2O4g9kv.js 12.21 kB │ gzip: 2.41 kB │ map: 17.46 kB 2026-10-24T21:36:20.2732244Z dist/assets/ProjectDefaultsSettings-BQcPt06G.js 12.44 kB │ gzip: 4.48 kB │ map: 68.04 kB 2026-10-24T21:36:20.2732634Z dist/assets/apache-U0d_L8uA.js 12.49 kB │ gzip: 3.74 kB │ map: 15.96 kB 2026-10-24T21:36:20.2732933Z dist/assets/vesper-DdrHHSXu.js 12.77 kB │ gzip: 2.03 kB │ map: 16.24 kB 2026-10-24T21:36:20.2733257Z dist/assets/ProviderSettingsForm-CgrlHwYE.js 12.91 kB │ gzip: 4.89 kB │ map: 60.05 kB 2026-10-24T21:36:20.2733578Z dist/assets/bat-Bo4NYOV-.js 12.92 kB │ gzip: 3.26 kB │ map: 17.40 kB 2026-10-24T21:36:20.2733888Z dist/assets/fish-BJitypiv.js 13.07 kB │ gzip: 1.76 kB │ map: 16.86 kB 2026-10-24T21:36:20.2734185Z dist/assets/qr-code-CmPFsYWt.js 13.19 kB │ gzip: 5.02 kB │ map: 49.58 kB 2026-10-24T21:36:20.2734483Z dist/assets/v-DETTlOr0.js 13.24 kB │ gzip: 2.76 kB │ map: 19.27 kB 2026-10-24T21:36:20.2734778Z dist/assets/NUIALGQ3-CaghVocB.js 13.25 kB │ gzip: 5.62 kB │ map: 40.22 kB 2026-10-24T21:36:20.2735081Z dist/assets/OFQON5FD-bE3t4bLO.js 13.49 kB │ gzip: 5.51 kB │ map: 34.02 kB 2026-10-24T21:36:20.2735393Z dist/assets/vitesse-light-VbXTXTou.js 13.66 kB │ gzip: 3.06 kB │ map: 18.57 kB 2026-10-24T21:36:20.2735713Z dist/assets/aurora-x-CDeNXAV0.js 13.70 kB │ gzip: 2.32 kB │ map: 17.59 kB 2026-10-24T21:36:20.2736023Z dist/assets/vitesse-black-fwtXNY1n.js 13.72 kB │ gzip: 3.09 kB │ map: 18.66 kB 2026-10-24T21:36:20.2736340Z dist/assets/vitesse-dark-BZCL-v6S.js 13.80 kB │ gzip: 3.10 kB │ map: 18.73 kB 2026-10-24T21:36:20.2736655Z dist/assets/DeviceSetup-D5zM0EcJ.js 13.81 kB │ gzip: 5.11 kB │ map: 59.86 kB 2026-10-24T21:36:20.2736964Z dist/assets/pug-H48468vj.js 13.89 kB │ gzip: 2.62 kB │ map: 20.57 kB 2026-10-24T21:36:20.2737276Z dist/assets/synthwave-84-nFMaYfgc.js 14.08 kB │ gzip: 2.88 kB │ map: 19.12 kB 2026-10-24T21:36:20.2737587Z dist/assets/PJQHF43J-C9WPxEqE.js 14.12 kB │ gzip: 5.87 kB │ map: 39.03 kB 2026-10-24T21:36:20.2737909Z dist/assets/github-light-default-BXViO-2h.js 14.21 kB │ gzip: 3.05 kB │ map: 19.30 kB 2026-10-24T21:36:20.2738223Z dist/assets/clarity-SemFz856.js 14.31 kB │ gzip: 2.50 kB │ map: 19.95 kB 2026-10-24T21:36:20.2738558Z dist/assets/github-light-high-contrast-B68TUdTA.js 14.33 kB │ gzip: 3.03 kB │ map: 19.48 kB 2026-10-24T21:36:20.2738897Z dist/assets/github-dark-dimmed-Bx1FflLF.js 14.48 kB │ gzip: 3.15 kB │ map: 19.67 kB 2026-10-24T21:36:20.2739236Z dist/assets/github-dark-default-DXG-b-1a.js 14.48 kB │ gzip: 3.15 kB │ map: 19.68 kB 2026-10-24T21:36:20.2739563Z dist/assets/X62E3GBT-Bso6Y_1L.js 14.54 kB │ gzip: 6.34 kB │ map: 39.30 kB 2026-10-24T21:36:20.2739890Z dist/assets/github-dark-high-contrast-B_tTalzw.js 14.65 kB │ gzip: 3.11 kB │ map: 19.91 kB 2026-10-24T21:36:20.2740209Z dist/assets/gnuplot-7GGW24-e.js 14.82 kB │ gzip: 3.31 kB │ map: 20.83 kB 2026-10-24T21:36:20.2740577Z dist/assets/rust-Cfkwpbl8.js 15.10 kB │ gzip: 2.75 kB │ map: 21.47 kB 2026-10-24T21:36:20.2740880Z dist/assets/FNOVOB4O-Bhj6xxUp.js 15.14 kB │ gzip: 5.88 kB │ map: 38.44 kB 2026-10-24T21:36:20.2741188Z dist/assets/kusto-C7mF5XQf.js 15.20 kB │ gzip: 3.96 kB │ map: 19.63 kB 2026-10-24T21:36:20.2741638Z dist/assets/actionscript-3--17pq3dv.js 15.25 kB │ gzip: 2.71 kB │ map: 21.47 kB 2026-10-24T21:36:20.2742042Z dist/assets/duoViewer-Do7bNmXC.js 15.46 kB │ gzip: 6.05 kB │ map: 65.43 kB 2026-10-24T21:36:20.2742345Z dist/assets/nix-IvuFDN5E.js 15.54 kB │ gzip: 2.51 kB │ map: 22.93 kB 2026-10-24T21:36:20.2742642Z dist/assets/lua-1Va2DEvn.js 15.63 kB │ gzip: 3.22 kB │ map: 22.17 kB 2026-10-24T21:36:20.2742955Z dist/assets/usePullRequestActions-BYkt2TlI.js 15.66 kB │ gzip: 5.26 kB │ map: 66.12 kB 2026-10-24T21:36:20.2743277Z dist/assets/luau-FMPmPwt6.js 15.66 kB │ gzip: 3.42 kB │ map: 21.88 kB 2026-10-24T21:36:20.2743567Z dist/assets/abap-CLvhMVsD.js 15.88 kB │ gzip: 5.96 kB │ map: 18.85 kB 2026-10-24T21:36:20.2743876Z dist/assets/solidity-CKzVLygQ.js 16.11 kB │ gzip: 3.13 kB │ map: 23.46 kB 2026-10-24T21:36:20.2744179Z dist/assets/matlab-D7qyCx1q.js 16.12 kB │ gzip: 3.10 kB │ map: 23.37 kB 2026-10-24T21:36:20.2744474Z dist/assets/cue-CE9AQfxI.js 16.23 kB │ gzip: 2.08 kB │ map: 23.80 kB 2026-10-24T21:36:20.2744766Z dist/assets/elixir-CrKEldnf.js 16.30 kB │ gzip: 2.79 kB │ map: 23.18 kB 2026-10-24T21:36:20.2745067Z dist/assets/dialog-DYfJmtGq.js 16.37 kB │ gzip: 5.61 kB │ map: 77.01 kB 2026-10-24T21:36:20.2745373Z dist/assets/rightPanelStore-BdRXz1Ln.js 16.38 kB │ gzip: 4.67 kB │ map: 78.50 kB 2026-10-24T21:36:20.2745678Z dist/assets/odin-B1RWQWA5.js 16.54 kB │ gzip: 2.96 kB │ map: 23.80 kB 2026-10-24T21:36:20.2745971Z dist/assets/X5RFHQXM-Cq4u5QdQ.js 16.59 kB │ gzip: 7.04 kB │ map: 42.63 kB 2026-10-24T21:36:20.2746276Z dist/assets/ts-tags-iKEdjM6n.js 16.59 kB │ gzip: 2.09 kB │ map: 24.94 kB 2026-10-24T21:36:20.2746578Z dist/assets/scroll-area-CmUS9Ek-.js 16.78 kB │ gzip: 5.98 kB │ map: 85.84 kB 2026-10-24T21:36:20.2746883Z dist/assets/popover-CXe30KLx.js 17.14 kB │ gzip: 6.45 kB │ map: 90.10 kB 2026-10-24T21:36:20.2747187Z dist/assets/kanagawa-wave-CTweb8Dz.js 17.17 kB │ gzip: 2.94 kB │ map: 22.30 kB 2026-10-24T21:36:20.2747503Z dist/assets/kanagawa-lotus-BN08jTvb.js 17.17 kB │ gzip: 2.94 kB │ map: 22.30 kB 2026-10-24T21:36:20.2747817Z dist/assets/kanagawa-dragon-CXtmUGW6.js 17.17 kB │ gzip: 2.96 kB │ map: 22.31 kB 2026-10-24T21:36:20.2748148Z dist/assets/projectScriptEditor-DMYNojp3.js 17.39 kB │ gzip: 6.67 kB │ map: 100.01 kB 2026-10-24T21:36:20.2748464Z dist/assets/move-B1IS1UjX.js 17.54 kB │ gzip: 3.10 kB │ map: 26.27 kB 2026-10-24T21:36:20.2748772Z dist/assets/command-BJZsT7YV.js 17.80 kB │ gzip: 4.81 kB │ map: 70.69 kB 2026-10-24T21:36:20.2749085Z dist/assets/pullRequests-Cyu0MRVp.js 17.93 kB │ gzip: 6.21 kB │ map: 87.67 kB 2026-10-24T21:36:20.2749475Z dist/assets/link-BbkE67KT.js 17.95 kB │ gzip: 6.74 kB │ map: 91.88 kB 2026-10-24T21:36:20.2749769Z dist/assets/graphql-f7MMklYv.js 18.12 kB │ gzip: 2.56 kB │ map: 25.58 kB 2026-10-24T21:36:20.2750073Z dist/assets/liquid-NR0kReLd.js 18.14 kB │ gzip: 3.18 kB │ map: 25.31 kB 2026-10-24T21:36:20.2750389Z dist/assets/T3ConnectAccountPages-OfEjAUtZ.js 18.25 kB │ gzip: 6.37 kB │ map: 80.99 kB 2026-10-24T21:36:20.2750872Z dist/assets/svelte-D_LLVCZp.js 18.29 kB │ gzip: 3.18 kB │ map: 25.82 kB 2026-10-24T21:36:20.2751250Z dist/assets/material-theme-Bm3Qr25_.js 18.66 kB │ gzip: 3.14 kB │ map: 24.14 kB 2026-10-24T21:36:20.2751575Z dist/assets/material-theme-ocean-CHQ94UKr.js 18.68 kB │ gzip: 3.16 kB │ map: 24.18 kB 2026-10-24T21:36:20.2751986Z dist/assets/material-theme-darker-2IIEA8gg.js 18.68 kB │ gzip: 3.13 kB │ map: 24.18 kB 2026-10-24T21:36:20.2752329Z dist/assets/material-theme-lighter-uhdI0v04.js 18.69 kB │ gzip: 3.14 kB │ map: 24.19 kB 2026-10-24T21:36:20.2752672Z dist/assets/material-theme-palenight-B5W6OYN7.js 18.69 kB │ gzip: 3.15 kB │ map: 24.20 kB 2026-10-24T21:36:20.2753018Z dist/assets/pullRequestDetail.logic-ByzJV2uM.js 18.87 kB │ gzip: 6.74 kB │ map: 77.97 kB 2026-10-24T21:36:20.2753341Z dist/assets/gdscript-Cp2uCuqX.js 19.03 kB │ gzip: 3.78 kB │ map: 26.26 kB 2026-10-24T21:36:20.2753651Z dist/assets/USNYFO5S-Di4yNowY.js 19.10 kB │ gzip: 7.42 kB │ map: 47.26 kB 2026-10-24T21:36:20.2753947Z dist/assets/groovy-CacY0gHj.js 19.21 kB │ gzip: 3.63 kB │ map: 27.53 kB 2026-10-24T21:36:20.2754256Z dist/assets/settings.storage-BzRknKV8.js 19.43 kB │ gzip: 6.99 kB │ map: 104.83 kB 2026-10-24T21:36:20.2754559Z dist/assets/mdc-BszP3a5M.js 19.58 kB │ gzip: 6.70 kB │ map: 23.16 kB 2026-10-24T21:36:20.2754852Z dist/assets/server-A4L5jzT7.js 19.96 kB │ gzip: 6.16 kB │ map: 117.05 kB 2026-10-24T21:36:20.2755148Z dist/assets/ayu-dark-DluEY0Gj.js 20.12 kB │ gzip: 3.96 kB │ map: 27.06 kB 2026-10-24T21:36:20.2755456Z dist/assets/ayu-mirage-Bqwy1Gya.js 20.13 kB │ gzip: 3.95 kB │ map: 27.08 kB 2026-10-24T21:36:20.2755763Z dist/assets/glimmer-js-BDXa_Fyc.js 20.13 kB │ gzip: 2.97 kB │ map: 28.69 kB 2026-10-24T21:36:20.2756072Z dist/assets/glimmer-ts-Bj66Y8fi.js 20.13 kB │ gzip: 2.97 kB │ map: 28.69 kB 2026-10-24T21:36:20.2756377Z dist/assets/powershell-DshXNtvi.js 20.19 kB │ gzip: 4.09 kB │ map: 26.60 kB 2026-10-24T21:36:20.2756683Z dist/assets/ayu-light-C3h-C4tm.js 20.19 kB │ gzip: 3.93 kB │ map: 27.14 kB 2026-10-24T21:36:20.2756977Z dist/assets/viml-DvXPmvsu.js 20.40 kB │ gzip: 6.77 kB │ map: 23.51 kB 2026-10-24T21:36:20.2757275Z dist/assets/DRLTVNUE-CiU5rMTM.js 20.40 kB │ gzip: 7.66 kB │ map: 50.95 kB 2026-10-24T21:36:20.2757572Z dist/assets/nushell-DcLAeLz5.js 20.45 kB │ gzip: 5.25 kB │ map: 27.67 kB 2026-10-24T21:36:20.2757875Z dist/assets/entities-BvKiek-r.js 20.58 kB │ gzip: 6.96 kB │ map: 135.97 kB 2026-10-24T21:36:20.2758176Z dist/assets/HSJLKHB7-C1siS3pi.js 20.80 kB │ gzip: 8.63 kB │ map: 57.03 kB 2026-10-24T21:36:20.2758482Z dist/assets/snazzy-light-4G7pJPwS.js 20.82 kB │ gzip: 3.84 kB │ map: 28.03 kB 2026-10-24T21:36:20.2758781Z dist/assets/twig-Ci9rMG4p.js 20.94 kB │ gzip: 3.70 kB │ map: 29.33 kB 2026-10-24T21:36:20.2759077Z dist/assets/dracula-BHWKrbxM.js 21.10 kB │ gzip: 4.03 kB │ map: 27.51 kB 2026-10-24T21:36:20.2759384Z dist/assets/dracula-soft-5eyTD99u.js 21.12 kB │ gzip: 4.06 kB │ map: 27.54 kB 2026-10-24T21:36:20.2759695Z dist/assets/number-field-CJ6I9ayC.js 21.14 kB │ gzip: 8.04 kB │ map: 104.64 kB 2026-10-24T21:36:20.2760102Z dist/assets/wit-DdvCle-K.js 21.50 kB │ gzip: 2.91 kB │ map: 30.11 kB 2026-10-24T21:36:20.2760475Z dist/assets/rose-pine-BthvhNj6.js 21.78 kB │ gzip: 3.90 kB │ map: 28.78 kB 2026-10-24T21:36:20.2760815Z dist/assets/rose-pine-moon-hon4tzzS.js 21.80 kB │ gzip: 3.91 kB │ map: 28.81 kB 2026-10-24T21:36:20.2761133Z dist/assets/rose-pine-dawn-Dg85fqjY.js 21.80 kB │ gzip: 3.92 kB │ map: 28.81 kB 2026-10-24T21:36:20.2761452Z dist/assets/useStableCallback-z_SONSIp.js 22.26 kB │ gzip: 9.25 kB │ map: 690.61 kB 2026-10-24T21:36:20.2761758Z dist/assets/nim-BM9Yvas0.js 22.49 kB │ gzip: 3.19 kB │ map: 32.88 kB 2026-10-24T21:36:20.2762054Z dist/assets/common-lisp-Cv5bFMCO.js 22.62 kB │ gzip: 6.11 kB │ map: 26.69 kB 2026-10-24T21:36:20.2762358Z dist/assets/surrealql-BhXwxFwT.js 22.63 kB │ gzip: 4.34 kB │ map: 32.51 kB 2026-10-24T21:36:20.2762673Z dist/assets/gruvbox-dark-hard-C820rvS2.js 22.68 kB │ gzip: 4.19 kB │ map: 30.59 kB 2026-10-24T21:36:20.2762998Z dist/assets/gruvbox-dark-soft-MrdJrrXF.js 22.68 kB │ gzip: 4.19 kB │ map: 30.59 kB 2026-10-24T21:36:20.2763317Z dist/assets/gruvbox-light-hard-BC_s9l72.js 22.68 kB │ gzip: 4.19 kB │ map: 30.59 kB 2026-10-24T21:36:20.2763642Z dist/assets/gruvbox-light-soft-BSMLrYjP.js 22.68 kB │ gzip: 4.19 kB │ map: 30.59 kB 2026-10-24T21:36:20.2763972Z dist/assets/gruvbox-dark-medium-BPjhmG05.js 22.69 kB │ gzip: 4.19 kB │ map: 30.60 kB 2026-10-24T21:36:20.2764303Z dist/assets/gruvbox-light-medium-BAWPOn9u.js 22.69 kB │ gzip: 4.20 kB │ map: 30.61 kB 2026-10-24T21:36:20.2764619Z dist/assets/bird2-C6vDhewU.js 22.97 kB │ gzip: 4.69 kB │ map: 31.06 kB 2026-10-24T21:36:20.2764918Z dist/assets/5OC2THR4-DkA8Wya8.js 23.28 kB │ gzip: 9.39 kB │ map: 61.59 kB 2026-10-24T21:36:20.2765218Z dist/assets/sql-DJtPbMSQ.js 23.52 kB │ gzip: 7.54 kB │ map: 27.96 kB 2026-10-24T21:36:20.2765510Z dist/assets/cadence-CQ2zXKGN.js 23.70 kB │ gzip: 3.69 kB │ map: 33.59 kB 2026-10-24T21:36:20.2765804Z dist/assets/astro-BmmE1wns.js 24.06 kB │ gzip: 7.63 kB │ map: 29.26 kB 2026-10-24T21:36:20.2766092Z dist/assets/apl-Dbn5QvGU.js 24.07 kB │ gzip: 4.20 kB │ map: 33.43 kB 2026-10-24T21:36:20.2766380Z dist/assets/templ-ChNxr6tm.js 24.10 kB │ gzip: 5.45 kB │ map: 30.96 kB 2026-10-24T21:36:20.2766675Z dist/assets/SLD4V6NK-B6tO6fVg.js 24.20 kB │ gzip: 10.11 kB │ map: 66.35 kB 2026-10-24T21:36:20.2766983Z dist/assets/angular-html-CHSubNNg.js 24.28 kB │ gzip: 4.02 kB │ map: 35.88 kB 2026-10-24T21:36:20.2767281Z dist/assets/vhdl-BroJfC0k.js 24.29 kB │ gzip: 3.90 kB │ map: 33.38 kB 2026-10-24T21:36:20.2767569Z dist/assets/vue-DhtZA_zP.js 24.53 kB │ gzip: 2.99 kB │ map: 36.98 kB 2026-10-24T21:36:20.2767863Z dist/assets/purescript-9MfHhQsQ.js 24.72 kB │ gzip: 3.27 kB │ map: 34.90 kB 2026-10-24T21:36:20.2768166Z dist/assets/typespec-BRdr0IET.js 25.08 kB │ gzip: 2.66 kB │ map: 34.70 kB 2026-10-24T21:36:20.2768465Z dist/assets/one-light-D7Lr4KcI.js 25.34 kB │ gzip: 3.67 kB │ map: 33.81 kB 2026-10-24T21:36:20.2768767Z dist/assets/fsharp-D13ZGOAj.js 25.34 kB │ gzip: 4.16 kB │ map: 35.90 kB 2026-10-24T21:36:20.2769056Z dist/assets/marko-BaagTwf0.js 25.52 kB │ gzip: 3.62 kB │ map: 35.92 kB 2026-10-24T21:36:20.2769453Z dist/assets/night-owl-light-eJ-hLW7d.js 25.95 kB │ gzip: 4.27 kB │ map: 35.17 kB 2026-10-24T21:36:20.2769844Z dist/assets/system-verilog-DJ5XKQeo.js 26.24 kB │ gzip: 4.86 kB │ map: 36.27 kB 2026-10-24T21:36:20.2770165Z dist/assets/useThreadActions-DGaKZx9z.js 26.35 kB │ gzip: 8.46 kB │ map: 129.82 kB 2026-10-24T21:36:20.2770480Z dist/assets/nord-Cb4Vim4T.js 26.76 kB │ gzip: 4.39 kB │ map: 35.36 kB 2026-10-24T21:36:20.2770809Z dist/assets/codeql-oeQT6MSM.js 26.92 kB │ gzip: 3.83 kB │ map: 36.02 kB 2026-10-24T21:36:20.2771097Z dist/assets/c3-BFHwR3_K.js 27.00 kB │ gzip: 3.96 kB │ map: 39.15 kB 2026-10-24T21:36:20.2771392Z dist/assets/T3PCR2KE-BdFnmgFj.js 27.06 kB │ gzip: 11.16 kB │ map: 74.49 kB 2026-10-24T21:36:20.2771689Z dist/assets/scss-DQyDwCYy.js 27.30 kB │ gzip: 4.26 kB │ map: 38.39 kB 2026-10-24T21:36:20.2771982Z dist/assets/java-CF-jL4AX.js 27.31 kB │ gzip: 4.34 kB │ map: 38.66 kB 2026-10-24T21:36:20.2785305Z dist/assets/coffee-BHyBL9L1.js 27.46 kB │ gzip: 6.39 kB │ map: 36.12 kB 2026-10-24T21:36:20.2785676Z dist/assets/razor-CRS4rNJT.js 27.49 kB │ gzip: 3.58 kB │ map: 38.35 kB 2026-10-24T21:36:20.2785970Z dist/assets/BB2UYUI2-DGavGt15.js 28.18 kB │ gzip: 10.96 kB │ map: 75.19 kB 2026-10-24T21:36:20.2786271Z dist/assets/sidebar-BlgOkR4a.js 28.33 kB │ gzip: 9.12 kB │ map: 123.41 kB 2026-10-24T21:36:20.2786564Z dist/assets/scala-DKOlJaKm.js 28.92 kB │ gzip: 3.96 kB │ map: 40.12 kB 2026-10-24T21:36:20.2786883Z dist/assets/night-owl-DhmEMT88.js 28.95 kB │ gzip: 5.18 kB │ map: 39.06 kB 2026-10-24T21:36:20.2787185Z dist/assets/select-QcGKSg-e.js 29.01 kB │ gzip: 10.87 kB │ map: 139.91 kB 2026-10-24T21:36:20.2787487Z dist/assets/crystal-xgOldvWp.js 29.45 kB │ gzip: 4.47 kB │ map: 41.29 kB 2026-10-24T21:36:20.2787785Z dist/assets/mermaid-Bk4SNUv9.js 29.54 kB │ gzip: 3.68 kB │ map: 44.12 kB 2026-10-24T21:36:20.2788091Z dist/assets/applescript-CCn79oCD.js 29.61 kB │ gzip: 5.98 kB │ map: 39.35 kB 2026-10-24T21:36:20.2788398Z dist/assets/BUM34MOA-CR9BTEsj.js 30.12 kB │ gzip: 11.46 kB │ map: 75.42 kB 2026-10-24T21:36:20.2788701Z dist/assets/75O6YZUN-CkRpemUq.js 30.19 kB │ gzip: 11.64 kB │ map: 77.70 kB 2026-10-24T21:36:20.2789005Z dist/assets/pierre-dark-CpLgRqie.js 30.59 kB │ gzip: 4.77 kB │ map: 34.24 kB 2026-10-24T21:36:20.2789489Z dist/assets/pierre-light-CoaEpmwp.js 30.59 kB │ gzip: 4.77 kB │ map: 34.25 kB 2026-10-24T21:36:20.2789856Z dist/assets/pierre-dark-soft-kZQmAZld.js 30.61 kB │ gzip: 4.81 kB │ map: 34.27 kB 2026-10-24T21:36:20.2790186Z dist/assets/pierre-light-soft-lWLdNTOI.js 30.61 kB │ gzip: 4.77 kB │ map: 34.27 kB 2026-10-24T21:36:20.2790556Z dist/assets/pierre-dark-tritanopia-CpjhbsIL.js 30.62 kB │ gzip: 4.72 kB │ map: 34.30 kB 2026-10-24T21:36:20.2790905Z dist/assets/pierre-light-tritanopia-CEbqgOJL.js 30.63 kB │ gzip: 4.73 kB │ map: 34.30 kB 2026-10-24T21:36:20.2791264Z dist/assets/pierre-dark-protanopia-deuteranopia-B35FxJx-.js 30.66 kB │ gzip: 4.80 kB │ map: 34.36 kB 2026-10-24T21:36:20.2791646Z dist/assets/pierre-light-protanopia-deuteranopia-0fSaH845.js 30.67 kB │ gzip: 4.76 kB │ map: 34.37 kB 2026-10-24T21:36:20.2792004Z dist/assets/ChatGptUsageButton-BpFvNi2V.js 30.79 kB │ gzip: 12.00 kB │ map: 117.44 kB 2026-10-24T21:36:20.2792333Z dist/assets/julia-BAkj-Grs.js 31.05 kB │ gzip: 4.34 kB │ map: 40.65 kB 2026-10-24T21:36:20.2792622Z dist/assets/stylus-B6D30XZt.js 31.11 kB │ gzip: 8.05 kB │ map: 38.88 kB 2026-10-24T21:36:20.2792918Z dist/assets/N3JZAHOW-B5OczCUg.js 32.62 kB │ gzip: 13.28 kB │ map: 101.23 kB 2026-10-24T21:36:20.2793216Z dist/assets/poimandres-DRFjx7u4.js 33.53 kB │ gzip: 5.53 kB │ map: 43.07 kB 2026-10-24T21:36:20.2793523Z dist/assets/one-dark-pro-CLwyXe_n.js 33.83 kB │ gzip: 5.54 kB │ map: 44.51 kB 2026-10-24T21:36:20.2793813Z dist/assets/bsl-BkkzgIyY.js 33.90 kB │ gzip: 8.38 kB │ map: 37.63 kB 2026-10-24T21:36:20.2794106Z dist/assets/O65XPQGZ-xyoMGcl5.js 34.10 kB │ gzip: 12.69 kB │ map: 86.95 kB 2026-10-24T21:36:20.2794407Z dist/assets/UsageLimits-Ty54YKhR.js 34.31 kB │ gzip: 11.88 kB │ map: 148.44 kB 2026-10-24T21:36:20.2794702Z dist/assets/haxe-OTjmBuCE.js 35.19 kB │ gzip: 5.94 kB │ map: 49.52 kB 2026-10-24T21:36:20.2794988Z dist/assets/nginx-Bunv6cTi.js 35.39 kB │ gzip: 4.49 kB │ map: 48.50 kB 2026-10-24T21:36:20.2795279Z dist/assets/houston-CsvMBhTu.js 35.46 kB │ gzip: 5.80 kB │ map: 46.40 kB 2026-10-24T21:36:20.2795577Z dist/assets/tokyo-night-oM2G3aXe.js 35.71 kB │ gzip: 6.26 kB │ map: 45.35 kB 2026-10-24T21:36:20.2795900Z dist/assets/CodexSetupSection.logic-D-F-pKK8.js 36.12 kB │ gzip: 12.95 kB │ map: 164.42 kB 2026-10-24T21:36:20.2796227Z dist/assets/settings.keybindings-m3eAPjew.js 37.18 kB │ gzip: 12.45 kB │ map: 164.58 kB 2026-10-24T21:36:20.2796542Z dist/assets/erlang-Cphh6RMH.js 37.52 kB │ gzip: 4.39 kB │ map: 51.59 kB 2026-10-24T21:36:20.2796830Z dist/assets/lazy-D3m2vkbL.js 38.37 kB │ gzip: 16.01 kB │ map: 81.90 kB 2026-10-24T21:36:20.2797152Z dist/assets/PullRequestCodeTab-D_gnFE77.js 39.03 kB │ gzip: 14.42 kB │ map: 180.92 kB 2026-10-24T21:36:20.2797469Z dist/assets/settings.projects-9mnPpuj9.js 39.04 kB │ gzip: 15.31 kB │ map: 163.46 kB 2026-10-24T21:36:20.2797788Z dist/assets/useSettings-C-JX9oJj.js 39.05 kB │ gzip: 13.38 kB │ map: 174.19 kB 2026-10-24T21:36:20.2798083Z dist/assets/cobol-DlmPKder.js 39.11 kB │ gzip: 10.92 kB │ map: 47.39 kB 2026-10-24T21:36:20.2798376Z dist/assets/TKWO2OVW-2JmoxibO.js 39.43 kB │ gzip: 14.77 kB │ map: 97.94 kB 2026-10-24T21:36:20.2798725Z dist/assets/ThemeEditorPanel-CFtOYpOQ.js 40.14 kB │ gzip: 14.48 kB │ map: 189.11 kB 2026-10-24T21:36:20.2799066Z dist/assets/asm-Cmm7eHzH.js 40.75 kB │ gzip: 8.20 kB │ map: 53.00 kB 2026-10-24T21:36:20.2799353Z dist/assets/RHNBAITX-B0i9kMLA.js 41.31 kB │ gzip: 15.53 kB │ map: 105.33 kB 2026-10-24T21:36:20.2799650Z dist/assets/haskell-D8IpX4py.js 41.52 kB │ gzip: 6.44 kB │ map: 57.85 kB 2026-10-24T21:36:20.2799947Z dist/assets/shellscript-y5xaAa26.js 41.58 kB │ gzip: 6.16 kB │ map: 56.57 kB 2026-10-24T21:36:20.2800248Z dist/assets/combobox-kuatU9k0.js 41.97 kB │ gzip: 14.24 kB │ map: 212.73 kB 2026-10-24T21:36:20.2800576Z dist/assets/perl-AhzhpTrP.js 43.18 kB │ gzip: 4.68 kB │ map: 60.84 kB 2026-10-24T21:36:20.2800875Z dist/assets/queries-DOXKdxgK.js 43.25 kB │ gzip: 16.07 kB │ map: 239.43 kB 2026-10-24T21:36:20.2801179Z dist/assets/DiffPanel-CYP7hf9k.js 43.26 kB │ gzip: 16.70 kB │ map: 244.01 kB 2026-10-24T21:36:20.2801476Z dist/assets/d-qD-0Kul2.js 43.82 kB │ gzip: 8.46 kB │ map: 62.69 kB 2026-10-24T21:36:20.2801764Z dist/assets/LHDIQX7Q-DxXmlTPr.js 44.04 kB │ gzip: 16.12 kB │ map: 107.24 kB 2026-10-24T21:36:20.2802083Z dist/assets/DiffCommentAnnotation-wO-UkYxL.js 44.48 kB │ gzip: 15.81 kB │ map: 120.50 kB 2026-10-24T21:36:20.2802414Z dist/assets/ProviderModelPicker-BNKW40Uh.js 44.81 kB │ gzip: 16.00 kB │ map: 233.06 kB 2026-10-24T21:36:20.2802742Z dist/assets/pierre-dark-vibrant-CpQYzh95.js 44.81 kB │ gzip: 5.33 kB │ map: 48.48 kB 2026-10-24T21:36:20.2803075Z dist/assets/pierre-light-vibrant-D80Fkn33.js 44.81 kB │ gzip: 5.31 kB │ map: 48.48 kB 2026-10-24T21:36:20.2803401Z dist/assets/settingsLayout-WuO23n3t.js 45.01 kB │ gzip: 15.81 kB │ map: 227.20 kB 2026-10-24T21:36:20.2803707Z dist/assets/DevicePanel-Cy7oWrXa.js 46.03 kB │ gzip: 15.62 kB │ map: 246.51 kB 2026-10-24T21:36:20.2804029Z dist/assets/settings.source-control-CFs74iyh.js 46.24 kB │ gzip: 15.08 kB │ map: 262.11 kB 2026-10-24T21:36:20.2804340Z dist/assets/toast-Bn-O5TLf.js 46.41 kB │ gzip: 15.38 kB │ map: 273.09 kB 2026-10-24T21:36:20.2804630Z dist/assets/ruby-ubltFHEX.js 46.64 kB │ gzip: 5.74 kB │ map: 66.38 kB 2026-10-24T21:36:20.2804913Z dist/assets/go-rLFTqkRN.js 46.85 kB │ gzip: 5.18 kB │ map: 66.61 kB 2026-10-24T21:36:20.2805215Z dist/assets/settings.snap-shot-CRCJJg_k.js 46.99 kB │ gzip: 16.64 kB │ map: 252.93 kB 2026-10-24T21:36:20.2805531Z dist/assets/catppuccin-mocha-DYhrFGRu.js 47.30 kB │ gzip: 8.02 kB │ map: 62.03 kB 2026-10-24T21:36:20.2805856Z dist/assets/catppuccin-latte-DwIHMF0Q.js 47.30 kB │ gzip: 8.02 kB │ map: 62.03 kB 2026-10-24T21:36:20.2806176Z dist/assets/catppuccin-frappe-3VR1Za6u.js 47.31 kB │ gzip: 8.03 kB │ map: 62.04 kB 2026-10-24T21:36:20.2806504Z dist/assets/catppuccin-macchiato-DYnBP6_5.js 47.31 kB │ gzip: 8.03 kB │ map: 62.06 kB 2026-10-24T21:36:20.2806823Z dist/assets/PreviewPanel-BQVBJc8D.js 47.35 kB │ gzip: 17.24 kB │ map: 255.28 kB 2026-10-24T21:36:20.2807123Z dist/assets/apex-VAyPSnFM.js 47.80 kB │ gzip: 6.85 kB │ map: 66.78 kB 2026-10-24T21:36:20.2807408Z dist/assets/ada-C5qYipkI.js 48.11 kB │ gzip: 6.00 kB │ map: 70.96 kB 2026-10-24T21:36:20.2807731Z dist/assets/css-kzGS2ZwB.js 49.13 kB │ gzip: 11.99 kB │ map: 60.67 kB 2026-10-24T21:36:20.2808051Z dist/assets/welcome-EJSMOKgv.js 49.73 kB │ gzip: 17.03 kB │ map: 266.54 kB 2026-10-24T21:36:20.2808342Z dist/assets/imba-DsUTQ-LC.js 49.96 kB │ gzip: 9.51 kB │ map: 68.08 kB 2026-10-24T21:36:20.2808636Z dist/assets/sortable.esm-BOZCRw2L.js 50.51 kB │ gzip: 16.26 kB │ map: 236.47 kB 2026-10-24T21:36:20.2808948Z dist/assets/everforest-dark-sB-x3p7T.js 53.79 kB │ gzip: 8.41 kB │ map: 68.28 kB 2026-10-24T21:36:20.2809264Z dist/assets/everforest-light-Df2xbC6M.js 53.79 kB │ gzip: 8.41 kB │ map: 68.29 kB 2026-10-24T21:36:20.2809578Z dist/assets/Virtualizer-BrxpfYl2.js 55.69 kB │ gzip: 14.33 kB │ map: 177.52 kB 2026-10-24T21:36:20.2809880Z dist/assets/wikitext-ClFFjSW2.js 55.92 kB │ gzip: 4.85 kB │ map: 77.64 kB 2026-10-24T21:36:20.2810203Z dist/assets/ScheduledTasksSettings-DKnGyWJp.js 56.58 kB │ gzip: 19.20 kB │ map: 343.57 kB 2026-10-24T21:36:20.2810557Z dist/assets/stata-Ciuk7_mY.js 57.03 kB │ gzip: 12.44 kB │ map: 74.20 kB 2026-10-24T21:36:20.2810849Z dist/assets/html-DIIndQnv.js 57.35 kB │ gzip: 11.82 kB │ map: 73.07 kB 2026-10-24T21:36:20.2811146Z dist/assets/ballerina-B7ZEbQpA.js 58.73 kB │ gzip: 8.14 kB │ map: 81.54 kB 2026-10-24T21:36:20.2811449Z dist/assets/markdown-BYOwaDjH.js 59.37 kB │ gzip: 5.70 kB │ map: 82.33 kB 2026-10-24T21:36:20.2811751Z dist/assets/pierre-icons-DRq8fpDH.js 60.69 kB │ gzip: 22.05 kB │ map: 82.50 kB 2026-10-24T21:36:20.2812053Z dist/assets/Icons-HN_P161M.js 61.79 kB │ gzip: 30.40 kB │ map: 165.88 kB 2026-10-24T21:36:20.2812345Z dist/assets/ocaml-O90oeIOV.js 62.48 kB │ gzip: 5.08 kB │ map: 81.11 kB 2026-10-24T21:36:20.2812639Z dist/assets/mojo-BgCJLMeH.js 69.83 kB │ gzip: 9.25 kB │ map: 94.94 kB 2026-10-24T21:36:20.2812932Z dist/assets/python-gzcpVVnB.js 69.98 kB │ gzip: 9.13 kB │ map: 95.24 kB 2026-10-24T21:36:20.2813245Z dist/assets/useHandleNewThread-BhR9w0te.js 70.93 kB │ gzip: 22.58 kB │ map: 333.47 kB 2026-10-24T21:36:20.2813546Z dist/assets/c-esFkreWu.js 72.20 kB │ gzip: 10.58 kB │ map: 95.41 kB 2026-10-24T21:36:20.2813835Z dist/assets/latex-b0569jTU.js 72.91 kB │ gzip: 6.78 kB │ map: 100.96 kB 2026-10-24T21:36:20.2814123Z dist/assets/vyper-CgoNMtux.js 74.68 kB │ gzip: 10.73 kB │ map: 100.71 kB 2026-10-24T21:36:20.2814417Z dist/assets/hack-mYo6lwOk.js 81.09 kB │ gzip: 26.47 kB │ map: 98.63 kB 2026-10-24T21:36:20.2814718Z dist/assets/SettingsPanels-SOjt2Cfc.js 82.62 kB │ gzip: 25.82 kB │ map: 507.56 kB 2026-10-24T21:36:20.2815033Z dist/assets/themePalette-BEEX5lLK.js 83.31 kB │ gzip: 23.89 kB │ map: 284.11 kB 2026-10-24T21:36:20.2815331Z dist/assets/swift-DonLKvLd.js 86.72 kB │ gzip: 14.72 kB │ map: 114.51 kB 2026-10-24T21:36:20.2815649Z dist/assets/DiffWorkerPoolProvider-DHpbQJ4r.js 87.11 kB │ gzip: 23.11 kB │ map: 273.90 kB 2026-10-24T21:36:20.2815978Z dist/assets/fortran-free-form-CYNrtFtB.js 89.01 kB │ gzip: 11.23 kB │ map: 124.06 kB 2026-10-24T21:36:20.2816289Z dist/assets/csharp-oqKa8noW.js 90.22 kB │ gzip: 10.75 kB │ map: 126.35 kB 2026-10-24T21:36:20.2816665Z dist/assets/FileDiff-wBSIEU4t.js 91.16 kB │ gzip: 23.35 kB │ map: 307.03 kB 2026-10-24T21:36:20.2817047Z dist/assets/_chat.pull-requests-CbTozR2-.js 91.36 kB │ gzip: 32.71 kB │ map: 452.85 kB 2026-10-24T21:36:20.2817360Z dist/assets/racket-DcIDlBhZ.js 92.42 kB │ gzip: 15.11 kB │ map: 106.19 kB 2026-10-24T21:36:20.2817672Z dist/assets/settings.diagnostics-C9j1DcPs.js 93.82 kB │ gzip: 27.30 kB │ map: 499.48 kB 2026-10-24T21:36:20.2818001Z dist/assets/embeddedScripts-DGY2WsD8.js 94.06 kB │ gzip: 24.28 kB │ map: 399.57 kB 2026-10-24T21:36:20.2818303Z dist/assets/usage-C3jwz-0G.js 96.07 kB │ gzip: 32.13 kB │ map: 559.57 kB 2026-10-24T21:36:20.2818615Z dist/assets/settings.integrations-BDLVI_Wr.js 96.58 kB │ gzip: 31.47 kB │ map: 566.32 kB 2026-10-24T21:36:20.2818920Z dist/assets/less-DVTAwKKz.js 97.66 kB │ gzip: 14.88 kB │ map: 131.85 kB 2026-10-24T21:36:20.2819221Z dist/assets/blade-DBGhfhIu.js 105.01 kB │ gzip: 28.34 kB │ map: 131.09 kB 2026-10-24T21:36:20.2819519Z dist/assets/objective-c-D1A_Heim.js 105.45 kB │ gzip: 23.67 kB │ map: 129.66 kB 2026-10-24T21:36:20.2819842Z dist/assets/settings.connections-CPQiRXoI.js 107.25 kB │ gzip: 36.15 kB │ map: 612.94 kB 2026-10-24T21:36:20.2820155Z dist/assets/php-BrskDoCo.js 113.12 kB │ gzip: 28.89 kB │ map: 142.15 kB 2026-10-24T21:36:20.2820506Z dist/assets/ThreadTerminalDrawer-X3w8hhcw.js 113.83 kB │ gzip: 33.62 kB │ map: 458.92 kB 2026-10-24T21:36:20.2820842Z dist/assets/getDiffFileInput-CC8o74Ry.js 124.36 kB │ gzip: 30.75 kB │ map: 375.11 kB 2026-10-24T21:36:20.2821161Z dist/assets/asciidoc-DE70LPWp.js 131.56 kB │ gzip: 9.35 kB │ map: 189.11 kB 2026-10-24T21:36:20.2821460Z dist/assets/mdx-DQZ5AkYe.js 136.14 kB │ gzip: 23.57 kB │ map: 176.72 kB 2026-10-24T21:36:20.2821778Z dist/assets/RenderErrorBoundary-DGhLIVus.js 153.41 kB │ gzip: 45.88 kB │ map: 938.43 kB 2026-10-24T21:36:20.2822104Z dist/assets/settings.providers-DmPF3ZZ-.js 161.58 kB │ gzip: 53.43 kB │ map: 828.10 kB 2026-10-24T21:36:20.2822431Z dist/assets/objective-cpp-BsSzOQcm.js 172.01 kB │ gzip: 31.02 kB │ map: 218.54 kB 2026-10-24T21:36:20.2822742Z dist/assets/javascript-DM2jNGak.js 174.93 kB │ gzip: 16.72 kB │ map: 236.10 kB 2026-10-24T21:36:20.2823049Z dist/assets/runtime-eaHEc3P9.js 175.44 kB │ gzip: 56.08 kB │ map: 1,084.32 kB 2026-10-24T21:36:20.2823341Z dist/assets/tsx-BeGYnVHn.js 175.63 kB │ gzip: 16.71 kB │ map: 236.76 kB 2026-10-24T21:36:20.2823634Z dist/assets/jsx-DQaT7vKh.js 177.88 kB │ gzip: 16.80 kB │ map: 239.02 kB 2026-10-24T21:36:20.2823927Z dist/assets/runtime-KeJZHiK_.js 178.48 kB │ gzip: 51.35 kB │ map: 826.10 kB 2026-10-24T21:36:20.2824235Z dist/assets/typescript-BEWCPeCr.js 181.18 kB │ gzip: 16.32 kB │ map: 244.44 kB 2026-10-24T21:36:20.2824542Z dist/assets/angular-ts-B9yvU4g3.js 183.77 kB │ gzip: 16.82 kB │ map: 249.70 kB 2026-10-24T21:36:20.2824847Z dist/assets/vue-vine-DBK802jz.js 190.10 kB │ gzip: 18.11 kB │ map: 255.27 kB 2026-10-24T21:36:20.2825159Z dist/assets/fileTreeExpansion-Db0xZQX2.js 199.35 kB │ gzip: 54.49 kB │ map: 731.80 kB 2026-10-24T21:36:20.2825488Z dist/assets/FilePreviewPanel-DFF_SEBl.js 204.15 kB │ gzip: 67.02 kB │ map: 946.02 kB 2026-10-24T21:36:20.2825812Z dist/assets/settings.appearance-BoYaWoBr.js 214.00 kB │ gzip: 68.30 kB │ map: 896.66 kB 2026-10-24T21:36:20.2826233Z dist/assets/diffRendering-DG6cvROu.js 254.85 kB │ gzip: 81.54 kB │ map: 946.66 kB 2026-10-24T21:36:20.2826600Z dist/assets/katex-DJhrJSbw.js 258.63 kB │ gzip: 77.46 kB │ map: 969.65 kB 2026-10-24T21:36:20.2826898Z dist/assets/wolfram-DLL8P-h_.js 262.42 kB │ gzip: 77.67 kB │ map: 279.66 kB 2026-10-24T21:36:20.2827191Z dist/assets/dist-B2ybgEi4.js 332.34 kB │ gzip: 97.19 kB │ map: 1,652.92 kB 2026-10-24T21:36:20.2827513Z dist/assets/PanelLayoutControls-CtvDaLCI.js 384.70 kB │ gzip: 119.97 kB │ map: 1,813.73 kB 2026-10-24T21:36:20.2827836Z dist/assets/ChatMarkdown-iaMEVAFS.js 438.88 kB │ gzip: 146.35 kB │ map: 1,866.44 kB 2026-10-24T21:36:20.2828169Z dist/assets/ComposerPromptEditor-bHtnL1J8.js 519.96 kB │ gzip: 167.94 kB │ map: 2,358.60 kB 2026-10-24T21:36:20.2828501Z dist/assets/lucideIconByName-Bh7LJc8i.js 553.52 kB │ gzip: 141.17 kB │ map: 2,035.78 kB 2026-10-24T21:36:20.2828829Z dist/assets/renderScheduler-Bj9WwcUX.js 608.04 kB │ gzip: 156.02 kB │ map: 3,048.60 kB 2026-10-24T21:36:20.2829132Z dist/assets/wasm-BnjxR4X6.js 622.36 kB │ gzip: 232.13 kB │ map: 622.90 kB 2026-10-24T21:36:20.2829438Z dist/assets/cpp-5pYxG9nn.js 626.16 kB │ gzip: 48.12 kB │ map: 816.28 kB 2026-10-24T21:36:20.2829775Z dist/assets/emacs-lisp-B4R74twV.js 779.92 kB │ gzip: 197.59 kB │ map: 789.85 kB 2026-10-24T21:36:20.2830077Z dist/assets/utils-BokjoGa4.js 1,012.45 kB │ gzip: 314.36 kB │ map: 7,799.08 kB 2026-10-24T21:36:20.2830366Z dist/assets/main-D4jmunnz.js 1,055.85 kB │ gzip: 345.69 kB │ map: 5,061.54 kB 2026-10-24T21:36:20.2830689Z dist/assets/_chat-C7odgosU.js 1,314.75 kB │ gzip: 438.49 kB │ map: 6,558.42 kB 2026-10-24T21:36:20.2830986Z dist/assets/heic-to-DeD09f__.js 2,995.22 kB │ gzip: 750.97 kB │ map: 2,998.72 kB 2026-10-24T21:36:20.2831143Z 2026-10-24T21:36:20.2831271Z [plugin builtin:vite-reporter] 2026-10-24T21:36:20.2831453Z (!) Some chunks are larger than 500 kB after minification. Consider: 2026-10-24T21:36:20.2831654Z - Using dynamic import() to code-split the application 2026-10-24T21:36:20.2831981Z - Use build.rolldownOptions.output.codeSplitting to improve chunking: https://rolldown.rs/reference/OutputOptions.codeSplitting 2026-10-24T21:36:20.2832349Z - Adjust chunk size limit for this warning via build.chunkSizeWarningLimit. 2026-10-24T21:36:20.2832870Z ✓ built in 4.47s 2026-10-24T21:36:20.3528049Z 2026-10-24T21:36:20.3528632Z ~/apps/server$ node scripts/cli.ts build ⊘ cache disabled 2026-10-24T21:36:20.5785872Z [21:36:20.578] INFO (#1): [cli] Running tsdown... 2026-10-24T21:36:22.1228917Z [21:36:22.122] INFO (#1): [cli] Applied development icon overrides to dist/client 2026-10-24T21:36:22.1229318Z [21:36:22.122] INFO (#1): [cli] Bundled web app into dist/client 2026-10-24T21:36:22.1321277Z 2026-10-24T21:36:22.1321956Z ~/apps/desktop$ node scripts/build-browser-secret.mjs ⊘ cache disabled 2026-10-24T21:36:22.2617574Z 2026-10-24T21:36:22.2618654Z ~/apps/desktop$ node scripts/build-preview-annotation-css.mjs ⊘ cache disabled 2026-10-24T21:36:22.3123521Z 2026-10-24T21:36:22.3124339Z ~/apps/desktop$ vp pack ⊘ cache disabled 2026-10-24T21:36:22.4193621Z ℹ entry: src/main.ts 2026-10-24T21:36:22.4194346Z ℹ tsconfig: tsconfig.json 2026-10-24T21:36:22.4199962Z ℹ entry: src/electron/WindowsForegroundFocusWorker.ts, src/snapShot/GlobalShiftShortcutWorker.ts, src/snapShot/RegionSnapShotWorker.ts, src/snapShot/SnapShotAccessibilityWorker.ts 2026-10-24T21:36:22.4200347Z ℹ tsconfig: tsconfig.json 2026-10-24T21:36:22.4202807Z ℹ entry: src/boot.ts, src/compileCache.ts 2026-10-24T21:36:22.4203047Z ℹ tsconfig: tsconfig.json 2026-10-24T21:36:22.4206403Z ℹ entry: src/preload.ts 2026-10-24T21:36:22.4206668Z ℹ tsconfig: tsconfig.json 2026-10-24T21:36:22.4208775Z ℹ entry: src/preview-pick-preload.ts 2026-10-24T21:36:22.4209096Z ℹ tsconfig: tsconfig.json 2026-10-24T21:36:22.4211789Z ℹ entry: src/preview-pip-preload.ts 2026-10-24T21:36:22.4212151Z ℹ tsconfig: tsconfig.json 2026-10-24T21:36:22.4214407Z ℹ entry: src/mac-permission-preload.ts 2026-10-24T21:36:22.4214563Z ℹ tsconfig: tsconfig.json 2026-10-24T21:36:22.4217079Z ℹ Build start 2026-10-24T21:36:22.4376642Z ℹ dist-electron/mac-permission-preload.cjs 0.79 kB │ gzip: 0.38 kB 2026-10-24T21:36:22.4377416Z ℹ dist-electron/mac-permission-preload.cjs.map 11.01 kB │ gzip: 2.80 kB 2026-10-24T21:36:22.4377843Z ℹ 2 files, total: 11.80 kB 2026-10-24T21:36:22.4378281Z ℹ dist-electron/preview-pip-preload.cjs 0.68 kB │ gzip: 0.36 kB 2026-10-24T21:36:22.4378643Z ℹ dist-electron/preview-pip-preload.cjs.map 10.93 kB │ gzip: 2.83 kB 2026-10-24T21:36:22.4378938Z ℹ 2 files, total: 11.61 kB 2026-10-24T21:36:22.4585705Z ✔ Build complete in 34ms 2026-10-24T21:36:22.4585979Z ✔ Build complete in 35ms 2026-10-24T21:36:22.4644302Z ℹ Hint: consider adding deps.onlyBundle option to avoid unintended bundling of dependencies, or set deps.onlyBundle: false to disable this hint. 2026-10-24T21:36:22.4644871Z See more at https://tsdown.dev/options/dependencies#deps-onlybundle 2026-10-24T21:36:22.4645161Z Detected dependencies in bundle: 2026-10-24T21:36:22.4645799Z - @clerk/electron 2026-10-24T21:36:22.4800731Z ℹ Hint: consider adding deps.onlyBundle option to avoid unintended bundling of dependencies, or set deps.onlyBundle: false to disable this hint. 2026-10-24T21:36:22.4801231Z See more at https://tsdown.dev/options/dependencies#deps-onlybundle 2026-10-24T21:36:22.4801432Z Detected dependencies in bundle: 2026-10-24T21:36:22.4801556Z - react-grab 2026-10-24T21:36:22.4903284Z ℹ dist-electron/compileCache.cjs 1.61 kB │ gzip: 0.75 kB 2026-10-24T21:36:22.4903619Z ℹ dist-electron/boot.cjs 0.12 kB │ gzip: 0.12 kB 2026-10-24T21:36:22.4903853Z ℹ dist-electron/compileCache.cjs.map 1.29 kB │ gzip: 0.74 kB 2026-10-24T21:36:22.4904069Z ℹ dist-electron/boot.cjs.map 0.31 kB │ gzip: 0.22 kB 2026-10-24T21:36:22.4904248Z ℹ 4 files, total: 3.33 kB 2026-10-24T21:36:22.4904433Z ℹ dist-electron/preload.cjs 32.04 kB │ gzip: 7.35 kB 2026-10-24T21:36:22.4904636Z ℹ dist-electron/preload.cjs.map 58.74 kB │ gzip: 13.13 kB 2026-10-24T21:36:22.4904816Z ℹ 2 files, total: 90.78 kB 2026-10-24T21:36:22.4998826Z ✔ Build complete in 75ms 2026-10-24T21:36:22.4999043Z ✔ Build complete in 75ms 2026-10-24T21:36:22.5225993Z ℹ dist-electron/preview-pick-preload.cjs 136.94 kB │ gzip: 36.46 kB 2026-10-24T21:36:22.5226314Z ℹ dist-electron/preview-pick-preload.cjs.map 243.14 kB │ gzip: 62.42 kB 2026-10-24T21:36:22.5226521Z ℹ 2 files, total: 380.08 kB 2026-10-24T21:36:22.5354502Z ✔ Build complete in 113ms 2026-10-24T21:36:22.6806039Z ℹ dist-electron/snapShot/SnapShotAccessibilityWorker.cjs 6.35 kB │ gzip: 1.97 kB 2026-10-24T21:36:22.6806431Z ℹ dist-electron/snapShot/GlobalShiftShortcutWorker.cjs 5.71 kB │ gzip: 1.60 kB 2026-10-24T21:36:22.6806736Z ℹ dist-electron/electron/WindowsForegroundFocusWorker.cjs 2.32 kB │ gzip: 0.89 kB 2026-10-24T21:36:22.6807034Z ℹ dist-electron/snapShot/RegionSnapShotWorker.cjs 0.77 kB │ gzip: 0.43 kB 2026-10-24T21:36:22.6807316Z ℹ dist-electron/snapShot-DNy3-ApB.cjs.map 4.58 MB 2026-10-24T21:36:22.6807598Z ℹ dist-electron/snapShot-DNy3-ApB.cjs 1.19 MB 2026-10-24T21:36:22.6808028Z ℹ dist-electron/snapShot/SnapShotAccessibilityWorker.cjs.map 13.86 kB │ gzip: 4.10 kB 2026-10-24T21:36:22.6808326Z ℹ dist-electron/snapShot/GlobalShiftShortcutWorker.cjs.map 13.29 kB │ gzip: 3.40 kB 2026-10-24T21:36:22.6808625Z ℹ dist-electron/electron/WindowsForegroundFocusWorker.cjs.map 5.07 kB │ gzip: 1.69 kB 2026-10-24T21:36:22.6808917Z ℹ dist-electron/snapShot/RegionSnapShotWorker.cjs.map 1.73 kB │ gzip: 0.82 kB 2026-10-24T21:36:22.6809626Z ℹ dist-electron/rolldown-runtime-VH7oDXx4.cjs 1.13 kB │ gzip: 0.54 kB 2026-10-24T21:36:22.6809957Z ℹ 11 files, total: 5.82 MB 2026-10-24T21:36:22.6810138Z ✔ Build complete in 259ms 2026-10-24T21:36:23.0219326Z ℹ dist-electron/main.cjs 5.48 MB 2026-10-24T21:36:23.0219570Z ℹ dist-electron/main.cjs.map 13.90 MB 2026-10-24T21:36:23.0219726Z ℹ 2 files, total: 19.39 MB 2026-10-24T21:36:23.0226128Z ../../node_modules/.pnpm/dbus-next@0.10.2_patch_hash=cfff57561b0ee59b5addb3b2e6c6f20906e967507a530ab67e8db8108e520ba4/node_modules/dbus-next/lib/address-x11.js (7:22) [UNRESOLVED_IMPORT] Could not resolve 'x11' in ../../node_modules/.pnpm/dbus-next@0.10.2_patch_hash=cfff57561b0ee59b5addb3b2e6c6f20906e967507a530ab67e8db8108e520ba4/node_modules/dbus-next/lib/address-x11.js 2026-10-24T21:36:23.0227887Z ╭─[ ../../node_modules/.pnpm/dbus-next@0.10.2_patch_hash=cfff57561b0ee59b5addb3b2e6c6f20906e967507a530ab67e8db8108e520ba4/node_modules/dbus-next/lib/address-x11.js:7:23 ] 2026-10-24T21:36:23.0228550Z │ 2026-10-24T21:36:23.0229605Z 7 │   const x11 = require('x11'); 2026-10-24T21:36:23.0230461Z  │ ──┬── 2026-10-24T21:36:23.0230839Z  │ ╰──── Module not found, treating it as an external dependency 2026-10-24T21:36:23.0231280Z ───╯ 2026-10-24T21:36:23.0231381Z 2026-10-24T21:36:23.0231867Z ../../node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/ConfigProvider.js (725:7) [EMPTY_IMPORT_META] `import.meta` may not be a valid syntax with the `cjs` output format. 2026-10-24T21:36:23.0232658Z ╭─[ ../../node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/ConfigProvider.js:725:8 ] 2026-10-24T21:36:23.0233069Z │ 2026-10-24T21:36:23.0233608Z 725 │     ...import.meta?.env 2026-10-24T21:36:23.0234127Z  │ ─────┬───── 2026-10-24T21:36:23.0234951Z  │ ╰─────── This `import.meta` will be replaced with an empty object (`{}`) automatically. If this is desired, you can suppress this warning by adding `transform.define: { 'import.meta': {} }`. If `import.meta` needs to be kept as-is, you need to set the output format to `esm`. 2026-10-24T21:36:23.0235633Z ─────╯ 2026-10-24T21:36:23.0235744Z 2026-10-24T21:36:23.0235850Z ✔ Build complete in 601ms 2026-10-24T21:36:23.0375151Z 2026-10-24T21:36:23.0376696Z --- 2026-10-24T21:36:23.0377021Z vp run: 5/5 successful. (Run `vp run --last-details` for full details) 2026-10-24T21:36:23.0447622Z ##[group]Run node apps/desktop/scripts/verify-preload-bundle.mjs 2026-10-24T21:36:23.0447901Z node apps/desktop/scripts/verify-preload-bundle.mjs 2026-10-24T21:36:23.0457679Z shell: /usr/bin/bash -e {0} 2026-10-24T21:36:23.0457797Z env: 2026-10-24T21:36:23.0457904Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 151 2026-10-24T21:36:23.0458049Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 350 2026-10-24T21:36:23.0458185Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-24T21:36:23.0458316Z ##[endgroup] 2026-10-24T21:36:23.0816015Z ##[group]Run until test -s "$RUNNER_TEMP/typecheck-status"; do sleep 1; done 2026-10-24T21:36:23.0816313Z until test -s "$RUNNER_TEMP/typecheck-status"; do sleep 1; done 2026-10-24T21:36:23.0816501Z cat "$RUNNER_TEMP/typecheck.log" 2026-10-24T21:36:23.0816855Z exit "$(cat "$RUNNER_TEMP/typecheck-status")" 2026-10-24T21:36:23.0826298Z shell: /usr/bin/bash -e {0} 2026-10-24T21:36:23.0826419Z env: 2026-10-24T21:36:23.0826523Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 151 2026-10-24T21:36:23.0826664Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 350 2026-10-24T21:36:23.0826797Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-24T21:36:23.0826928Z ##[endgroup] 2026-10-24T21:36:23.0849111Z ~/packages/effect-acp$ tsc --noEmit 2026-10-24T21:36:23.0849270Z ~/packages/effect-codex-app-server$ tsc --noEmit 2026-10-24T21:36:23.0849434Z ~/oxlint-plugin-t3code$ tsc --noEmit 2026-10-24T21:36:23.0849570Z ~/packages/contracts$ tsc --noEmit 2026-10-24T21:36:23.0849658Z 2026-10-24T21:36:23.0850003Z src/agent.test.ts:40:10 - suggestion TS377036: This `Schema.Struct` includes a `_tag` field. `Schema.TaggedStruct` is the tagged-struct form for this pattern and makes the tag optional in the constructor. effect(schemaStructWithTag) 2026-10-24T21:36:23.0850375Z 2026-10-24T21:36:23.0850435Z 40 error: Schema.Struct({ 2026-10-24T21:36:23.0850557Z ~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0850736Z 41 _tag: Schema.Literal("Cause"), 2026-10-24T21:36:23.0850872Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0851045Z 42 data: Schema.Tuple([Schema.Struct({ _tag: Schema.Literal("Die") })]), 2026-10-24T21:36:23.0851255Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0851408Z 43 }), 2026-10-24T21:36:23.0851518Z ~~~~ 2026-10-24T21:36:23.0851572Z 2026-10-24T21:36:23.0851880Z src/agent.test.ts:42:25 - suggestion TS377036: This `Schema.Struct` includes a `_tag` field. `Schema.TaggedStruct` is the tagged-struct form for this pattern and makes the tag optional in the constructor. effect(schemaStructWithTag) 2026-10-24T21:36:23.0852226Z 2026-10-24T21:36:23.0852313Z 42 data: Schema.Tuple([Schema.Struct({ _tag: Schema.Literal("Die") })]), 2026-10-24T21:36:23.0852509Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0852618Z 2026-10-24T21:36:23.0852884Z src/agent.ts:422:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpAgent.handleInitialize")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0853178Z 2026-10-24T21:36:23.0853233Z 422 handleInitialize: (handler) => 2026-10-24T21:36:23.0853364Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0853429Z 2026-10-24T21:36:23.0853690Z src/agent.ts:427:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpAgent.handleAuthenticate")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0853987Z 2026-10-24T21:36:23.0854043Z 427 handleAuthenticate: (handler) => 2026-10-24T21:36:23.0854176Z ~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0854246Z 2026-10-24T21:36:23.0854499Z src/agent.ts:432:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpAgent.handleLogout")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0854791Z 2026-10-24T21:36:23.0854842Z 432 handleLogout: (handler) => 2026-10-24T21:36:23.0854985Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.0855046Z 2026-10-24T21:36:23.0855308Z src/agent.ts:437:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpAgent.handleCreateSession")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0855607Z 2026-10-24T21:36:23.0855665Z 437 handleCreateSession: (handler) => 2026-10-24T21:36:23.0855799Z ~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0855872Z 2026-10-24T21:36:23.0856269Z src/agent.ts:442:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpAgent.handleLoadSession")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0856564Z 2026-10-24T21:36:23.0856621Z 442 handleLoadSession: (handler) => 2026-10-24T21:36:23.0856753Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0856894Z 2026-10-24T21:36:23.0857151Z src/agent.ts:447:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpAgent.handleListSessions")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0857444Z 2026-10-24T21:36:23.0857500Z 447 handleListSessions: (handler) => 2026-10-24T21:36:23.0857630Z ~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0857699Z 2026-10-24T21:36:23.0857949Z src/agent.ts:452:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpAgent.handleForkSession")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0858241Z 2026-10-24T21:36:23.0858292Z 452 handleForkSession: (handler) => 2026-10-24T21:36:23.0858425Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0858491Z 2026-10-24T21:36:23.0858747Z src/agent.ts:457:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpAgent.handleResumeSession")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0859044Z 2026-10-24T21:36:23.0859099Z 457 handleResumeSession: (handler) => 2026-10-24T21:36:23.0859228Z ~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0859298Z 2026-10-24T21:36:23.0859550Z src/agent.ts:462:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpAgent.handleCloseSession")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0859842Z 2026-10-24T21:36:23.0859891Z 462 handleCloseSession: (handler) => 2026-10-24T21:36:23.0860027Z ~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0860092Z 2026-10-24T21:36:23.0860377Z src/agent.ts:467:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpAgent.handleDeleteSession")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0860671Z 2026-10-24T21:36:23.0860724Z 467 handleDeleteSession: (handler) => 2026-10-24T21:36:23.0860854Z ~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0860923Z 2026-10-24T21:36:23.0861179Z src/agent.ts:472:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpAgent.handleListProviders")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0861477Z 2026-10-24T21:36:23.0861528Z 472 handleListProviders: (handler) => 2026-10-24T21:36:23.0861659Z ~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0861727Z 2026-10-24T21:36:23.0861976Z src/agent.ts:477:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpAgent.handleSetProvider")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0862273Z 2026-10-24T21:36:23.0862325Z 477 handleSetProvider: (handler) => 2026-10-24T21:36:23.0862452Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0862524Z 2026-10-24T21:36:23.0862808Z src/agent.ts:482:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpAgent.handleDisableProvider")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0863111Z 2026-10-24T21:36:23.0863163Z 482 handleDisableProvider: (handler) => 2026-10-24T21:36:23.0863395Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0863469Z 2026-10-24T21:36:23.0863742Z src/agent.ts:487:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpAgent.handleSetSessionConfigOption")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0864056Z 2026-10-24T21:36:23.0864123Z 487 handleSetSessionConfigOption: (handler) => 2026-10-24T21:36:23.0864271Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0864406Z 2026-10-24T21:36:23.0864651Z src/agent.ts:492:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpAgent.handlePrompt")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0864940Z 2026-10-24T21:36:23.0864990Z 492 handlePrompt: (handler) => 2026-10-24T21:36:23.0865148Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.0865213Z 2026-10-24T21:36:23.0865454Z src/agent.ts:497:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpAgent.handleCancel")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0865744Z 2026-10-24T21:36:23.0865795Z 497 handleCancel: (handler) => 2026-10-24T21:36:23.0865913Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.0865977Z 2026-10-24T21:36:23.0866244Z src/agent.ts:502:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpAgent.handleUnknownExtRequest")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0866552Z 2026-10-24T21:36:23.0866609Z 502 handleUnknownExtRequest: (handler) => 2026-10-24T21:36:23.0866751Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0866828Z 2026-10-24T21:36:23.0867100Z src/agent.ts:507:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpAgent.handleUnknownExtNotification")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0867417Z 2026-10-24T21:36:23.0867482Z 507 handleUnknownExtNotification: (handler) => 2026-10-24T21:36:23.0867626Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0867708Z 2026-10-24T21:36:23.0867987Z src/agent.ts:512:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpAgent.handleExtRequest")((method, payload, handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0868305Z 2026-10-24T21:36:23.0868372Z 512 handleExtRequest: (method, payload, handler) => 2026-10-24T21:36:23.0868525Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0868595Z 2026-10-24T21:36:23.0868880Z src/agent.ts:517:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpAgent.handleExtNotification")((method, payload, handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0869208Z 2026-10-24T21:36:23.0869285Z 517 handleExtNotification: (method, payload, handler) => 2026-10-24T21:36:23.0869548Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0869623Z 2026-10-24T21:36:23.0869930Z src/client.test.ts:56:10 - suggestion TS377036: This `Schema.Struct` includes a `_tag` field. `Schema.TaggedStruct` is the tagged-struct form for this pattern and makes the tag optional in the constructor. effect(schemaStructWithTag) 2026-10-24T21:36:23.0870292Z 2026-10-24T21:36:23.0870340Z 56 error: Schema.Struct({ 2026-10-24T21:36:23.0870454Z ~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0870578Z 57 _tag: Schema.Literal("Cause"), 2026-10-24T21:36:23.0870713Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0870883Z 58 data: Schema.Tuple([Schema.Struct({ _tag: Schema.Literal("Die") })]), 2026-10-24T21:36:23.0871085Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0871236Z 59 }), 2026-10-24T21:36:23.0871329Z ~~~~ 2026-10-24T21:36:23.0871378Z 2026-10-24T21:36:23.0871684Z src/client.test.ts:58:25 - suggestion TS377036: This `Schema.Struct` includes a `_tag` field. `Schema.TaggedStruct` is the tagged-struct form for this pattern and makes the tag optional in the constructor. effect(schemaStructWithTag) 2026-10-24T21:36:23.0872024Z 2026-10-24T21:36:23.0872114Z 58 data: Schema.Tuple([Schema.Struct({ _tag: Schema.Literal("Die") })]), 2026-10-24T21:36:23.0872302Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0872407Z 2026-10-24T21:36:23.0872701Z src/client.test.ts:1071:18 - suggestion TS377113: `Effect.forEach` expresses this effectful array mapping more directly than `Effect.all` over `Array#map`. effect(allOfMapToForEach) 2026-10-24T21:36:23.0872979Z 2026-10-24T21:36:23.0873034Z 1071 yield* Effect.all( 2026-10-24T21:36:23.0873169Z ~~~~~~~~~~ 2026-10-24T21:36:23.0873246Z 2026-10-24T21:36:23.0873526Z src/client.ts:1244:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleRequestPermission")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0873896Z 2026-10-24T21:36:23.0873959Z 1244 handleRequestPermission: (handler) => 2026-10-24T21:36:23.0874106Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0874182Z 2026-10-24T21:36:23.0874448Z src/client.ts:1249:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleElicitation")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0874749Z 2026-10-24T21:36:23.0874802Z 1249 handleElicitation: (handler) => 2026-10-24T21:36:23.0874938Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0875009Z 2026-10-24T21:36:23.0875265Z src/client.ts:1254:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleMcpConnect")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0875565Z 2026-10-24T21:36:23.0875620Z 1254 handleMcpConnect: (handler) => 2026-10-24T21:36:23.0875752Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0875820Z 2026-10-24T21:36:23.0876078Z src/client.ts:1258:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleMcpMessage")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0876377Z 2026-10-24T21:36:23.0876427Z 1258 handleMcpMessage: (handler) => 2026-10-24T21:36:23.0876555Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0876624Z 2026-10-24T21:36:23.0876890Z src/client.ts:1262:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleMcpDisconnect")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0877195Z 2026-10-24T21:36:23.0877251Z 1262 handleMcpDisconnect: (handler) => 2026-10-24T21:36:23.0877385Z ~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0877463Z 2026-10-24T21:36:23.0877730Z src/client.ts:1266:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleMcpNotification")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0878037Z 2026-10-24T21:36:23.0878092Z 1266 handleMcpNotification: (handler) => 2026-10-24T21:36:23.0878233Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0878309Z 2026-10-24T21:36:23.0878568Z src/client.ts:1275:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleReadTextFile")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0878871Z 2026-10-24T21:36:23.0878928Z 1275 handleReadTextFile: (handler) => 2026-10-24T21:36:23.0879059Z ~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0879129Z 2026-10-24T21:36:23.0879394Z src/client.ts:1279:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleWriteTextFile")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0879704Z 2026-10-24T21:36:23.0879757Z 1279 handleWriteTextFile: (handler) => 2026-10-24T21:36:23.0879892Z ~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0879964Z 2026-10-24T21:36:23.0880227Z src/client.ts:1283:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleCreateTerminal")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0880556Z 2026-10-24T21:36:23.0880615Z 1283 handleCreateTerminal: (handler) => 2026-10-24T21:36:23.0880750Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0880825Z 2026-10-24T21:36:23.0881129Z src/client.ts:1287:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleTerminalOutput")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0881435Z 2026-10-24T21:36:23.0881492Z 1287 handleTerminalOutput: (handler) => 2026-10-24T21:36:23.0881668Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0881743Z 2026-10-24T21:36:23.0882023Z src/client.ts:1291:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleTerminalWaitForExit")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0882340Z 2026-10-24T21:36:23.0882404Z 1291 handleTerminalWaitForExit: (handler) => 2026-10-24T21:36:23.0882547Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0882628Z 2026-10-24T21:36:23.0882890Z src/client.ts:1295:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleTerminalKill")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0883193Z 2026-10-24T21:36:23.0883248Z 1295 handleTerminalKill: (handler) => 2026-10-24T21:36:23.0883375Z ~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0883447Z 2026-10-24T21:36:23.0883715Z src/client.ts:1299:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleTerminalRelease")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0884020Z 2026-10-24T21:36:23.0884079Z 1299 handleTerminalRelease: (handler) => 2026-10-24T21:36:23.0884217Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0884291Z 2026-10-24T21:36:23.0884557Z src/client.ts:1303:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleSessionUpdate")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0884859Z 2026-10-24T21:36:23.0884915Z 1303 handleSessionUpdate: (handler) => 2026-10-24T21:36:23.0885047Z ~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0885120Z 2026-10-24T21:36:23.0885394Z src/client.ts:1308:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleElicitationComplete")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0885707Z 2026-10-24T21:36:23.0885789Z 1308 handleElicitationComplete: (handler) => 2026-10-24T21:36:23.0885935Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0886011Z 2026-10-24T21:36:23.0886283Z src/client.ts:1313:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleUnknownExtRequest")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0886594Z 2026-10-24T21:36:23.0886655Z 1313 handleUnknownExtRequest: (handler) => 2026-10-24T21:36:23.0886794Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0886870Z 2026-10-24T21:36:23.0887154Z src/client.ts:1318:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleUnknownExtNotification")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0887471Z 2026-10-24T21:36:23.0887540Z 1318 handleUnknownExtNotification: (handler) => 2026-10-24T21:36:23.0887695Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0887776Z 2026-10-24T21:36:23.0888060Z src/client.ts:1323:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleExtRequest")((method, payload, handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0888382Z 2026-10-24T21:36:23.0888454Z 1323 handleExtRequest: (method, payload, handler) => 2026-10-24T21:36:23.0888605Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0888674Z 2026-10-24T21:36:23.0889003Z src/client.ts:1328:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleExtNotification")((method, payload, handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0889338Z 2026-10-24T21:36:23.0889414Z 1328 handleExtNotification: (method, payload, handler) => 2026-10-24T21:36:23.0889579Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0889650Z 2026-10-24T21:36:23.0890033Z src/protocol.test.ts:500:38 - suggestion TS377112: This input is already assignable to the schema's Encoded type. Use `decodeEffect` to preserve compile-time type checking instead of discarding the input type through `decodeUnknownEffect`. effect(preferTypedSchemaDecoder) 2026-10-24T21:36:23.0890500Z 2026-10-24T21:36:23.0890580Z 500 const response = yield* Schema.decodeUnknownEffect( 2026-10-24T21:36:23.0890753Z ~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0890849Z 2026-10-24T21:36:23.0891114Z src/protocol.ts:875:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("RpcClient.Protocol.run")((_clientId, f) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0891415Z 2026-10-24T21:36:23.0891462Z 875 run: (_clientId, f) => 2026-10-24T21:36:23.0891580Z ~~~ 2026-10-24T21:36:23.0891637Z 2026-10-24T21:36:23.0891906Z src/protocol.ts:880:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("RpcClient.Protocol.send")((_clientId, request) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0892218Z 2026-10-24T21:36:23.0892269Z 880 send: (_clientId, request) => 2026-10-24T21:36:23.0892391Z ~~~~ 2026-10-24T21:36:23.0892449Z 2026-10-24T21:36:23.0892694Z src/protocol.ts:898:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("RpcServer.Protocol.run")((f) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0892978Z 2026-10-24T21:36:23.0893019Z 898 run: (f) => 2026-10-24T21:36:23.0893123Z ~~~ 2026-10-24T21:36:23.0893178Z 2026-10-24T21:36:23.0893444Z src/protocol.ts:904:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("RpcServer.Protocol.send")((_clientId, response) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0893759Z 2026-10-24T21:36:23.0893813Z 904 send: (_clientId, response) => 2026-10-24T21:36:23.0893937Z ~~~~ 2026-10-24T21:36:23.0894000Z 2026-10-24T21:36:23.0894255Z src/protocol.ts:913:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("RpcServer.Protocol.end")((_clientId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0894549Z 2026-10-24T21:36:23.0894593Z 913 end: (_clientId) => 2026-10-24T21:36:23.0894709Z ~~~ 2026-10-24T21:36:23.0894764Z 2026-10-24T21:36:23.0894766Z 2026-10-24T21:36:23.0895122Z src/auth.test.ts:17:19 - suggestion TS377112: This input is already assignable to the schema's Encoded type. Use `decodeSync` to preserve compile-time type checking instead of discarding the input type through `decodeUnknownSync`. effect(preferTypedSchemaDecoder) 2026-10-24T21:36:23.0895516Z 2026-10-24T21:36:23.0895643Z 17 expect(Schema.decodeUnknownSync(AuthEnvironmentScopes)(["review:write"])).toEqual([ 2026-10-24T21:36:23.0895849Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0895931Z 2026-10-24T21:36:23.0895932Z 2026-10-24T21:36:23.0895984Z ~/packages/shared$ tsc --noEmit 2026-10-24T21:36:23.0896317Z src/HostProcess.ts:91:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("defaultValue")(function*() { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0896616Z 2026-10-24T21:36:23.0896666Z 91 defaultValue: () => 2026-10-24T21:36:23.0896779Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.0896843Z 2026-10-24T21:36:23.0897084Z src/httpReadiness.ts:121:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("onNone")(function*() { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0897364Z 2026-10-24T21:36:23.0897408Z 121 onNone: () => 2026-10-24T21:36:23.0897547Z ~~~~~~ 2026-10-24T21:36:23.0897609Z 2026-10-24T21:36:23.0897865Z src/nodeSqliteClient.ts:143:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("checkNodeSqliteCompat")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0898193Z 2026-10-24T21:36:23.0898250Z 143 const checkNodeSqliteCompat = () => { 2026-10-24T21:36:23.0898387Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0898464Z 2026-10-24T21:36:23.0898712Z src/nodeSqliteClient.ts:471:31 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-24T21:36:23.0898995Z 2026-10-24T21:36:23.0899071Z 471 if (unavailable) return Effect.succeed(undefined); 2026-10-24T21:36:23.0899257Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0899354Z 2026-10-24T21:36:23.0899723Z src/nodeSqliteClient.ts:478:3 - suggestion TS377014: This generator returns an Effect-able value directly, which produces a nested `Effect>`. If the intended result is the inner Effect value, `return yield*` represents that form. effect(returnEffectInGen) 2026-10-24T21:36:23.0900118Z 2026-10-24T21:36:23.0900215Z 478 return Effect.suspend((): Effect.Effect => { 2026-10-24T21:36:23.0900463Z ~~~~~~ 2026-10-24T21:36:23.0900516Z 2026-10-24T21:36:23.0900766Z src/nodeSqliteClient.ts:479:29 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-24T21:36:23.0901057Z 2026-10-24T21:36:23.0901129Z 479 if (unavailable) return Effect.succeed(undefined); 2026-10-24T21:36:23.0901291Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0901390Z 2026-10-24T21:36:23.0901636Z src/nodeSqliteClient.ts:500:13 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-24T21:36:23.0901918Z 2026-10-24T21:36:23.0901972Z 500 ? Effect.succeed(undefined) 2026-10-24T21:36:23.0902108Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0902189Z 2026-10-24T21:36:23.0902542Z src/nodeSqliteClient.ts:665:3 - suggestion TS377012: This Effect generator contains `try/catch`; in this context, error handling is expressed with Effect APIs such as Effect.try, Effect.tryPromise, Effect.catch, Effect.catchTag). effect(tryCatchInEffectGen) 2026-10-24T21:36:23.0902930Z 2026-10-24T21:36:23.0902971Z 665 try { 2026-10-24T21:36:23.0903064Z ~~~~~ 2026-10-24T21:36:23.0903213Z 666 worker = new NodeWorkerThreads.Worker(checkpointWorkerSource, { 2026-10-24T21:36:23.0903412Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0903557Z ... 2026-10-24T21:36:23.0903655Z 677 return undefined; 2026-10-24T21:36:23.0903767Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0903877Z 678 } 2026-10-24T21:36:23.0903966Z ~~~ 2026-10-24T21:36:23.0904018Z 2026-10-24T21:36:23.0904217Z src/symlink.ts:28:7 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-24T21:36:23.0904449Z 2026-10-24T21:36:23.0904501Z 28 Effect.map(Option.some), 2026-10-24T21:36:23.0904631Z ~~~~~~~~~~ 2026-10-24T21:36:23.0904691Z 2026-10-24T21:36:23.0904693Z 2026-10-24T21:36:23.0904743Z ~/apps/marketing$ astro check 2026-10-24T21:36:23.0904886Z ~/packages/source-control-core$ tsc --noEmit 2026-10-24T21:36:23.0905036Z ~/packages/tailscale$ tsc --noEmit 2026-10-24T21:36:23.0905123Z 2026-10-24T21:36:23.0905173Z ~/packages/ssh$ tsc --noEmit 2026-10-24T21:36:23.0905552Z src/client.ts:243:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("CodexAppServerClient.handleServerRequest")((method, handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0905930Z 2026-10-24T21:36:23.0906000Z 243 handleServerRequest: (method, handler) => 2026-10-24T21:36:23.0906147Z ~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0906218Z 2026-10-24T21:36:23.0906524Z src/client.ts:247:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("CodexAppServerClient.handleServerNotification")((method, handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0906903Z 2026-10-24T21:36:23.0906974Z 247 handleServerNotification: (method, handler) => 2026-10-24T21:36:23.0907131Z ~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0907205Z 2026-10-24T21:36:23.0907507Z src/client.ts:253:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("CodexAppServerClient.handleUnknownServerRequest")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0907849Z 2026-10-24T21:36:23.0907913Z 253 handleUnknownServerRequest: (handler) => 2026-10-24T21:36:23.0908060Z ~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0908140Z 2026-10-24T21:36:23.0908451Z src/client.ts:257:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("CodexAppServerClient.handleUnknownServerNotification")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0908804Z 2026-10-24T21:36:23.0908875Z 257 handleUnknownServerNotification: (handler) => 2026-10-24T21:36:23.0909034Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0909114Z 2026-10-24T21:36:23.0909116Z 2026-10-24T21:36:23.0909176Z ~/packages/provider-core$ tsc --noEmit 2026-10-24T21:36:23.0909269Z 2026-10-24T21:36:23.0909318Z ~/scripts$ tsc --noEmit 2026-10-24T21:36:23.0910121Z src/auth.ts:51:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SshPasswordPrompt.request")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0910430Z 2026-10-24T21:36:23.0910493Z 51 request: () => Effect.succeed(null), 2026-10-24T21:36:23.0910628Z ~~~~~~~ 2026-10-24T21:36:23.0910692Z 2026-10-24T21:36:23.0910921Z src/command.ts:311:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("onNone")(function*() { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0911189Z 2026-10-24T21:36:23.0911237Z 311 onNone: () => 2026-10-24T21:36:23.0911349Z ~~~~~~ 2026-10-24T21:36:23.0911407Z 2026-10-24T21:36:23.0911409Z 2026-10-24T21:36:23.0911476Z ~/packages/source-control-testing$ tsc --noEmit 2026-10-24T21:36:23.0911872Z src/server/McpProviderSessions.ts:95:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("McpProviderSessions.read")((threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0912200Z 2026-10-24T21:36:23.0912330Z 95 read: (threadId) => Ref.get(sessions).pipe(Effect.map((current) => current.get(threadId))), 2026-10-24T21:36:23.0912535Z ~~~~ 2026-10-24T21:36:23.0912590Z 2026-10-24T21:36:23.0912881Z src/server/McpProviderSessions.ts:96:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("McpProviderSessions.clear")((threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0913215Z 2026-10-24T21:36:23.0913266Z 96 clear: (threadId) => 2026-10-24T21:36:23.0913376Z ~~~~~ 2026-10-24T21:36:23.0913432Z 2026-10-24T21:36:23.0913774Z src/server/McpProviderSessions.ts:110:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("McpProviderSessions.recordHtmlRender")((threadId, input, reference) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0914158Z 2026-10-24T21:36:23.0914225Z 110 recordHtmlRender: (threadId, input, reference) => 2026-10-24T21:36:23.0914386Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0914455Z 2026-10-24T21:36:23.0914851Z src/server/McpProviderSessions.ts:130:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("McpProviderSessions.takeHtmlRender")((threadId, input, reported) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0915224Z 2026-10-24T21:36:23.0915294Z 130 takeHtmlRender: (threadId, input, reported) => 2026-10-24T21:36:23.0915440Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0915557Z 2026-10-24T21:36:23.0915887Z src/server/ProviderContinuationRequests.ts:55:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderContinuationRequests.offer")((request) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0916252Z 2026-10-24T21:36:23.0916321Z 55 offer: (request: ProviderContinuationRequest) => 2026-10-24T21:36:23.0916474Z ~~~~~ 2026-10-24T21:36:23.0916532Z 2026-10-24T21:36:23.0916838Z src/server/ProviderLatestVersions.ts:53:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderLatestVersions.invalidate")((key) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0917185Z 2026-10-24T21:36:23.0917235Z 53 invalidate: (key) => 2026-10-24T21:36:23.0917350Z ~~~~~~~~~~ 2026-10-24T21:36:23.0917410Z 2026-10-24T21:36:23.0917670Z src/server/snapshotProbe.test.ts:139:9 - suggestion TS377124: `Effect.provideService` provides this inline single-service layer directly. effect(provideLayerSucceedToProvideService) 2026-10-24T21:36:23.0917969Z 2026-10-24T21:36:23.0918109Z 139 Effect.provide(Layer.succeed(ChildProcessSpawner.ChildProcessSpawner, spawner)), 2026-10-24T21:36:23.0918323Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0918394Z 2026-10-24T21:36:23.0918396Z 2026-10-24T21:36:23.0918469Z ~/packages/provider-acp$ tsc --noEmit 2026-10-24T21:36:23.0918561Z 2026-10-24T21:36:23.0918619Z ~/packages/provider-testing$ tsc --noEmit 2026-10-24T21:36:23.0918758Z 21:34:42 [types] Generated 179ms 2026-10-24T21:36:23.0918980Z 21:34:42 [check] Getting diagnostics for Astro files in /home/runner/_work/t3code/t3code/apps/marketing... 2026-10-24T21:36:23.0919153Z 2026-10-24T21:36:23.0919213Z ~/packages/source-control-gitlab$ tsc --noEmit 2026-10-24T21:36:23.0919683Z src/server/AcpSessionRuntime.ts:501:7 - suggestion TS377012: This Effect generator contains `try/catch`; in this context, error handling is expressed with Effect APIs such as Effect.try, Effect.tryPromise, Effect.catch, Effect.catchTag). effect(tryCatchInEffectGen) 2026-10-24T21:36:23.0920089Z 2026-10-24T21:36:23.0920128Z 501 try { 2026-10-24T21:36:23.0920229Z ~~~~~ 2026-10-24T21:36:23.0920343Z 502 lease.kill(); 2026-10-24T21:36:23.0920480Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0920585Z ... 2026-10-24T21:36:23.0920680Z 508 continue; 2026-10-24T21:36:23.0920784Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0920883Z 509 } 2026-10-24T21:36:23.0920979Z ~~~~~~~ 2026-10-24T21:36:23.0921033Z 2026-10-24T21:36:23.0921392Z src/server/AcpSessionRuntime.ts:511:7 - suggestion TS377012: This Effect generator contains `try/catch`; in this context, error handling is expressed with Effect APIs such as Effect.try, Effect.tryPromise, Effect.catch, Effect.catchTag). effect(tryCatchInEffectGen) 2026-10-24T21:36:23.0921793Z 2026-10-24T21:36:23.0921836Z 511 try { 2026-10-24T21:36:23.0921932Z ~~~~~ 2026-10-24T21:36:23.0922043Z 512 populated = lease.populated(); 2026-10-24T21:36:23.0922185Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0922311Z ... 2026-10-24T21:36:23.0922429Z 520 return yield* failure("read state for", cause); 2026-10-24T21:36:23.0922600Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0922737Z 521 } 2026-10-24T21:36:23.0922827Z ~~~~~~~ 2026-10-24T21:36:23.0922880Z 2026-10-24T21:36:23.0923302Z src/server/AcpSessionRuntime.ts:527:7 - suggestion TS377012: This Effect generator contains `try/catch`; in this context, error handling is expressed with Effect APIs such as Effect.try, Effect.tryPromise, Effect.catch, Effect.catchTag). effect(tryCatchInEffectGen) 2026-10-24T21:36:23.0923704Z 2026-10-24T21:36:23.0923744Z 527 try { 2026-10-24T21:36:23.0923837Z ~~~~~ 2026-10-24T21:36:23.0923936Z 528 lease.remove(); 2026-10-24T21:36:23.0924051Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0924156Z ... 2026-10-24T21:36:23.0924306Z 536 lastRemovalFailure = { cause }; 2026-10-24T21:36:23.0924443Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0924569Z 537 } 2026-10-24T21:36:23.0924656Z ~~~~~~~ 2026-10-24T21:36:23.0924717Z 2026-10-24T21:36:23.0925026Z src/server/AcpSessionRuntime.ts:1990:15 - suggestion TS377118: `Effect.fromOption` expresses this Option-to-Effect conversion more directly than `Option.match` or an Option tag conditional. effect(optionMatchToFromOption) 2026-10-24T21:36:23.0925374Z 2026-10-24T21:36:23.0925429Z 1990 Option.match(result, { 2026-10-24T21:36:23.0925563Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.0925639Z 2026-10-24T21:36:23.0925939Z src/server/AcpSessionRuntime.ts:2037:7 - suggestion TS377132: `Effect.andThen` expresses this sequencing more directly than `Effect.flatMap` with a zero-parameter callback. effect(flatMapIgnoredParamToAndThen) 2026-10-24T21:36:23.0926268Z 2026-10-24T21:36:23.0926329Z 2037 Effect.flatMap(() => getStartedState), 2026-10-24T21:36:23.0926472Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0926541Z 2026-10-24T21:36:23.0926861Z src/server/AcpSessionRuntime.ts:2254:7 - suggestion TS377116: `Effect.catchIf` expresses selective recovery more directly than `Effect.catch` with a conditional `Effect.fail` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-24T21:36:23.0927214Z 2026-10-24T21:36:23.0927267Z 2254 Effect.catch((error) => 2026-10-24T21:36:23.0927397Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.0927462Z 2026-10-24T21:36:23.0927806Z src/server/AcpSessionRuntime.ts:2611:15 - suggestion TS377116: `Effect.catchCauseIf` expresses selective recovery more directly than `Effect.catchCause` with a conditional `Effect.failCause` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-24T21:36:23.0928187Z 2026-10-24T21:36:23.0928245Z 2611 Effect.catchCause((cause) => 2026-10-24T21:36:23.0928389Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0928471Z 2026-10-24T21:36:23.0928790Z src/server/adapter.ts:1389:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.getCapabilities")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0929158Z 2026-10-24T21:36:23.0929246Z 1389 getCapabilities: () => Effect.succeed(flavor.capabilities), 2026-10-24T21:36:23.0929418Z ~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0929485Z 2026-10-24T21:36:23.0929822Z src/server/adapter.ts:1390:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.planSelectionTransition")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0930198Z 2026-10-24T21:36:23.0930337Z 1390 planSelectionTransition: (input) => Effect.succeed(acpSelectionTransition(input)), 2026-10-24T21:36:23.0930563Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0930642Z 2026-10-24T21:36:23.0930823Z src/server/adapter.ts:5398:23 - suggestion TS377017: This Effect.gen contains a single return statement. effect(unnecessaryEffectGen) 2026-10-24T21:36:23.0931045Z 2026-10-24T21:36:23.0931106Z 5398 Effect.gen(function* () { 2026-10-24T21:36:23.0931261Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0931439Z 5399 yield* Ref.update(pendingRuntimeRequests, (current) => { 2026-10-24T21:36:23.0931649Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0931803Z ... 2026-10-24T21:36:23.0931917Z 5403 }); 2026-10-24T21:36:23.0932032Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0932204Z 5404 }), 2026-10-24T21:36:23.0932329Z ~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0932405Z 2026-10-24T21:36:23.0932578Z src/server/adapter.ts:6092:21 - suggestion TS377017: This Effect.gen contains a single return statement. effect(unnecessaryEffectGen) 2026-10-24T21:36:23.0932793Z 2026-10-24T21:36:23.0932893Z 6092 Effect.gen(function* () { 2026-10-24T21:36:23.0933040Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0933220Z 6093 yield* Ref.update(pendingRuntimeRequests, (current) => { 2026-10-24T21:36:23.0933419Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0933573Z ... 2026-10-24T21:36:23.0933669Z 6097 }); 2026-10-24T21:36:23.0933786Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0933900Z 6098 }), 2026-10-24T21:36:23.0934012Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0934084Z 2026-10-24T21:36:23.0934371Z src/server/adapter.ts:7128:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("scheduleDeferredFinalize")(function*(context) { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0934698Z 2026-10-24T21:36:23.0934763Z 7128 scheduleDeferredFinalize = (context) => 2026-10-24T21:36:23.0934913Z ~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0934995Z 2026-10-24T21:36:23.0935263Z src/server/clientTerminals.test.ts:243:32 - suggestion TS377113: `Effect.forEach` expresses this effectful array mapping more directly than `Effect.all` over `Array#map`. effect(allOfMapToForEach) 2026-10-24T21:36:23.0935569Z 2026-10-24T21:36:23.0935626Z 243 const results = yield* Effect.all( 2026-10-24T21:36:23.0935767Z ~~~~~~~~~~ 2026-10-24T21:36:23.0935858Z 2026-10-24T21:36:23.0935860Z 2026-10-24T21:36:23.0935922Z ~/packages/source-control-github$ tsc --noEmit 2026-10-24T21:36:23.0936332Z src/TestProviderHost.ts:59:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderHost.ProviderHost.shouldRunBackgroundWork")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0936678Z 2026-10-24T21:36:23.0936799Z 59 shouldRunBackgroundWork: () => Effect.succeed(options.runBackgroundWork ?? true), 2026-10-24T21:36:23.0937005Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0937086Z 2026-10-24T21:36:23.0937407Z src/TestProviderHost.ts:61:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderHost.ProviderHost.credentials")((namespace, bindingId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0937767Z 2026-10-24T21:36:23.0937827Z 61 credentials: (namespace, bindingId) => 2026-10-24T21:36:23.0937966Z ~~~~~~~~~~~ 2026-10-24T21:36:23.0938031Z 2026-10-24T21:36:23.0938033Z 2026-10-24T21:36:23.0938104Z ~/packages/source-control-azure-devops$ tsc --noEmit 2026-10-24T21:36:23.0938488Z src/server/GitLabCli.ts:470:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabCli.listMergeRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0938811Z 2026-10-24T21:36:23.0938866Z 470 listMergeRequests: (input) => 2026-10-24T21:36:23.0938996Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0939066Z 2026-10-24T21:36:23.0939338Z src/server/GitLabCli.ts:507:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabCli.getMergeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0939646Z 2026-10-24T21:36:23.0939700Z 507 getMergeRequest: (input) => 2026-10-24T21:36:23.0939830Z ~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0939895Z 2026-10-24T21:36:23.0940226Z src/server/GitLabCli.ts:534:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabCli.getRepositoryCloneUrls")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0940584Z 2026-10-24T21:36:23.0940645Z 534 getRepositoryCloneUrls: (input) => 2026-10-24T21:36:23.0940784Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0940859Z 2026-10-24T21:36:23.0941132Z src/server/GitLabCli.ts:556:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabCli.createRepository")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0941497Z 2026-10-24T21:36:23.0941550Z 556 createRepository: (input) => { 2026-10-24T21:36:23.0941683Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0941751Z 2026-10-24T21:36:23.0942027Z src/server/GitLabCli.ts:621:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabCli.createMergeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0942346Z 2026-10-24T21:36:23.0942401Z 621 createMergeRequest: (input) => { 2026-10-24T21:36:23.0942533Z ~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0942607Z 2026-10-24T21:36:23.0942876Z src/server/GitLabCli.ts:642:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabCli.getDefaultBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0943186Z 2026-10-24T21:36:23.0943239Z 642 getDefaultBranch: (input) => 2026-10-24T21:36:23.0943371Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0943435Z 2026-10-24T21:36:23.0943712Z src/server/GitLabCli.ts:663:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabCli.checkoutMergeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0944030Z 2026-10-24T21:36:23.0944085Z 663 checkoutMergeRequest: (input) => 2026-10-24T21:36:23.0944218Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0944292Z 2026-10-24T21:36:23.0944615Z src/server/GitLabPullRequestCli.ts:1139:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.listMergeRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0944978Z 2026-10-24T21:36:23.0945029Z 1139 listMergeRequests: (input) => { 2026-10-24T21:36:23.0945160Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0945230Z 2026-10-24T21:36:23.0945532Z src/server/GitLabPullRequestCli.ts:1147:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.listNotes")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0945877Z 2026-10-24T21:36:23.0945978Z 1147 listNotes: (input) => notesPage({ ...input, page: 1, collected: [] }), 2026-10-24T21:36:23.0946159Z ~~~~~~~~~ 2026-10-24T21:36:23.0946223Z 2026-10-24T21:36:23.0946532Z src/server/GitLabPullRequestCli.ts:1149:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.listReactions")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0947143Z 2026-10-24T21:36:23.0947268Z 1149 listReactions: (input) => awardsPage({ ...input, cursor: null, page: 1, collected: null }), 2026-10-24T21:36:23.0947472Z ~~~~~~~~~~~~~ 2026-10-24T21:36:23.0947539Z 2026-10-24T21:36:23.0947840Z src/server/GitLabPullRequestCli.ts:1187:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.listCommits")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0948186Z 2026-10-24T21:36:23.0948236Z 1187 listCommits: (input) => 2026-10-24T21:36:23.0948356Z ~~~~~~~~~~~ 2026-10-24T21:36:23.0948423Z 2026-10-24T21:36:23.0948741Z src/server/GitLabPullRequestCli.ts:1212:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.getMergeRequestDiff")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0949099Z 2026-10-24T21:36:23.0949155Z 1212 getMergeRequestDiff: (input) => { 2026-10-24T21:36:23.0949401Z ~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0949475Z 2026-10-24T21:36:23.0949807Z src/server/GitLabPullRequestCli.ts:1283:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.getProjectMergeCapabilities")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0950240Z 2026-10-24T21:36:23.0950337Z 1283 getProjectMergeCapabilities: (input) => 2026-10-24T21:36:23.0950488Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0950567Z 2026-10-24T21:36:23.0950882Z src/server/GitLabPullRequestCli.ts:1303:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.listProjectLabels")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0951238Z 2026-10-24T21:36:23.0951293Z 1303 listProjectLabels: (input) => 2026-10-24T21:36:23.0951422Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0951494Z 2026-10-24T21:36:23.0951810Z src/server/GitLabPullRequestCli.ts:1329:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.listProjectUsers")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0952161Z 2026-10-24T21:36:23.0952217Z 1329 listProjectUsers: (input) => 2026-10-24T21:36:23.0952350Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0952415Z 2026-10-24T21:36:23.0952745Z src/server/GitLabPullRequestCli.ts:1337:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.listReviewerCandidates")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0953114Z 2026-10-24T21:36:23.0953174Z 1337 listReviewerCandidates: (input) => 2026-10-24T21:36:23.0953311Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0953389Z 2026-10-24T21:36:23.0953709Z src/server/GitLabPullRequestCli.ts:1355:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.setReviewerRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0954066Z 2026-10-24T21:36:23.0954119Z 1355 setReviewerRequest: (input) => 2026-10-24T21:36:23.0954253Z ~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0954322Z 2026-10-24T21:36:23.0954641Z src/server/GitLabPullRequestCli.ts:1408:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.updateMergeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0955002Z 2026-10-24T21:36:23.0955059Z 1408 updateMergeRequest: (input) => 2026-10-24T21:36:23.0955189Z ~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0955261Z 2026-10-24T21:36:23.0955584Z src/server/GitLabPullRequestCli.ts:1422:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.commentOnMergeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0955949Z 2026-10-24T21:36:23.0956005Z 1422 commentOnMergeRequest: (input) => 2026-10-24T21:36:23.0956142Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0956218Z 2026-10-24T21:36:23.0956518Z src/server/GitLabPullRequestCli.ts:1432:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.updateNote")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0956862Z 2026-10-24T21:36:23.0956912Z 1432 updateNote: (input) => 2026-10-24T21:36:23.0957030Z ~~~~~~~~~~ 2026-10-24T21:36:23.0957094Z 2026-10-24T21:36:23.0957409Z src/server/GitLabPullRequestCli.ts:1442:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.listDiscussions")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0957763Z 2026-10-24T21:36:23.0957876Z 1442 listDiscussions: (input) => discussionsPage({ ...input, page: 1, collected: [] }), 2026-10-24T21:36:23.0958132Z ~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0958202Z 2026-10-24T21:36:23.0958514Z src/server/GitLabPullRequestCli.ts:1493:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.replyToDiscussion")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0958923Z 2026-10-24T21:36:23.0958979Z 1493 replyToDiscussion: (input) => 2026-10-24T21:36:23.0959109Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0959179Z 2026-10-24T21:36:23.0959508Z src/server/GitLabPullRequestCli.ts:1503:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.setDiscussionResolution")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0959876Z 2026-10-24T21:36:23.0959936Z 1503 setDiscussionResolution: (input) => 2026-10-24T21:36:23.0960075Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0960152Z 2026-10-24T21:36:23.0960563Z src/server/GitLabSourceControlProvider.ts:211:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.readChangeRequestTemplate")((_) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0960983Z 2026-10-24T21:36:23.0961060Z 211 readChangeRequestTemplate: ({ cwd, treeish }) => 2026-10-24T21:36:23.0961217Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0961297Z 2026-10-24T21:36:23.0961671Z src/server/GitLabSourceControlProvider.ts:226:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.listChangeRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0962084Z 2026-10-24T21:36:23.0962139Z 226 listChangeRequests: (input) => { 2026-10-24T21:36:23.0962271Z ~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0962340Z 2026-10-24T21:36:23.0962711Z src/server/GitLabSourceControlProvider.ts:254:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0963116Z 2026-10-24T21:36:23.0963166Z 254 getChangeRequest: (input) => 2026-10-24T21:36:23.0963300Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0963364Z 2026-10-24T21:36:23.0963739Z src/server/GitLabSourceControlProvider.ts:272:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.createChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0964152Z 2026-10-24T21:36:23.0964208Z 272 createChangeRequest: (input) => { 2026-10-24T21:36:23.0964343Z ~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0964417Z 2026-10-24T21:36:23.0964801Z src/server/GitLabSourceControlProvider.ts:301:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getRepositoryCloneUrls")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0965223Z 2026-10-24T21:36:23.0965277Z 301 getRepositoryCloneUrls: (input) => 2026-10-24T21:36:23.0965416Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0965492Z 2026-10-24T21:36:23.0965855Z src/server/GitLabSourceControlProvider.ts:318:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.createRepository")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0966266Z 2026-10-24T21:36:23.0966320Z 318 createRepository: (input) => 2026-10-24T21:36:23.0966448Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0966522Z 2026-10-24T21:36:23.0966938Z src/server/GitLabSourceControlProvider.ts:335:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getDefaultBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0967348Z 2026-10-24T21:36:23.0967400Z 335 getDefaultBranch: (input) => 2026-10-24T21:36:23.0967526Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0967595Z 2026-10-24T21:36:23.0967972Z src/server/GitLabSourceControlProvider.ts:349:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.checkoutChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0968438Z 2026-10-24T21:36:23.0968494Z 349 checkoutChangeRequest: (input) => 2026-10-24T21:36:23.0968631Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0968706Z 2026-10-24T21:36:23.0968708Z 2026-10-24T21:36:23.0968777Z ~/packages/source-control-bitbucket$ tsc --noEmit 2026-10-24T21:36:23.0969179Z src/server/AzureDevOpsCli.ts:403:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsCli.listPullRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0969506Z 2026-10-24T21:36:23.0969561Z 403 listPullRequests: (input) => 2026-10-24T21:36:23.0969687Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0969750Z 2026-10-24T21:36:23.0970038Z src/server/AzureDevOpsCli.ts:443:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsCli.getPullRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0970395Z 2026-10-24T21:36:23.0970448Z 443 getPullRequest: (input) => 2026-10-24T21:36:23.0970573Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0970639Z 2026-10-24T21:36:23.0970943Z src/server/AzureDevOpsCli.ts:477:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsCli.getRepositoryCloneUrls")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0971283Z 2026-10-24T21:36:23.0971342Z 477 getRepositoryCloneUrls: (input) => 2026-10-24T21:36:23.0971481Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0971554Z 2026-10-24T21:36:23.0971843Z src/server/AzureDevOpsCli.ts:493:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsCli.createRepository")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0972174Z 2026-10-24T21:36:23.0972229Z 493 createRepository: (input) => { 2026-10-24T21:36:23.0972356Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0972424Z 2026-10-24T21:36:23.0972719Z src/server/AzureDevOpsCli.ts:518:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsCli.createPullRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0973050Z 2026-10-24T21:36:23.0973105Z 518 createPullRequest: (input) => 2026-10-24T21:36:23.0973236Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0973302Z 2026-10-24T21:36:23.0973599Z src/server/AzureDevOpsCli.ts:538:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsCli.getDefaultBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0973931Z 2026-10-24T21:36:23.0973984Z 538 getDefaultBranch: (input) => 2026-10-24T21:36:23.0974107Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0974176Z 2026-10-24T21:36:23.0974472Z src/server/AzureDevOpsCli.ts:549:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsCli.checkoutPullRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0974810Z 2026-10-24T21:36:23.0974864Z 549 checkoutPullRequest: (input) => 2026-10-24T21:36:23.0974996Z ~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.0975076Z 2026-10-24T21:36:23.0975396Z src/server/AzureDevOpsPullRequestCli.ts:494:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsPullRequestCli.getViewer")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.0975814Z 2026-10-24T21:36:23.0975864Z 494 getViewer: (input) => 2026-10-24T21:36:23.1016490Z ~~~~~~~~~ 2026-10-24T21:36:23.1016615Z 2026-10-24T21:36:23.1016987Z src/server/AzureDevOpsPullRequestCli.ts:548:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsPullRequestCli.listPullRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1017489Z 2026-10-24T21:36:23.1017546Z 548 listPullRequests: (input) => 2026-10-24T21:36:23.1017675Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1017745Z 2026-10-24T21:36:23.1018078Z src/server/AzureDevOpsPullRequestCli.ts:562:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsPullRequestCli.getPullRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1018449Z 2026-10-24T21:36:23.1018500Z 562 getPullRequest: (input) => 2026-10-24T21:36:23.1018627Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1018693Z 2026-10-24T21:36:23.1019010Z src/server/AzureDevOpsPullRequestCli.ts:593:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsPullRequestCli.listThreads")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1019371Z 2026-10-24T21:36:23.1019423Z 593 listThreads: (input) => 2026-10-24T21:36:23.1019547Z ~~~~~~~~~~~ 2026-10-24T21:36:23.1019610Z 2026-10-24T21:36:23.1019931Z src/server/AzureDevOpsPullRequestCli.ts:603:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsPullRequestCli.listIterations")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1020304Z 2026-10-24T21:36:23.1020352Z 603 listIterations: (input) => 2026-10-24T21:36:23.1020495Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1020559Z 2026-10-24T21:36:23.1020890Z src/server/AzureDevOpsPullRequestCli.ts:613:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsPullRequestCli.listIterationChanges")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1021263Z 2026-10-24T21:36:23.1021322Z 613 listIterationChanges: (input) => { 2026-10-24T21:36:23.1021455Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1021529Z 2026-10-24T21:36:23.1021851Z src/server/AzureDevOpsPullRequestCli.ts:640:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsPullRequestCli.readItemContent")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1022214Z 2026-10-24T21:36:23.1022264Z 640 readItemContent: (input) => 2026-10-24T21:36:23.1022390Z ~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1022455Z 2026-10-24T21:36:23.1022791Z src/server/AzureDevOpsPullRequestCli.ts:663:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsPullRequestCli.setPullRequestReviewers")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1023167Z 2026-10-24T21:36:23.1023225Z 663 setPullRequestReviewers: (input) => 2026-10-24T21:36:23.1023359Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1023433Z 2026-10-24T21:36:23.1023767Z src/server/AzureDevOpsPullRequestCli.ts:688:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsPullRequestCli.runPullRequestAction")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1024141Z 2026-10-24T21:36:23.1024198Z 688 runPullRequestAction: (input) => 2026-10-24T21:36:23.1024327Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1024400Z 2026-10-24T21:36:23.1024732Z src/server/AzureDevOpsPullRequestCli.ts:707:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsPullRequestCli.updatePullRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1025097Z 2026-10-24T21:36:23.1025208Z 707 updatePullRequest: (input) => 2026-10-24T21:36:23.1025338Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1025403Z 2026-10-24T21:36:23.1025786Z src/server/AzureDevOpsSourceControlProvider.ts:81:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.listChangeRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1026246Z 2026-10-24T21:36:23.1026299Z 81 listChangeRequests: (input) => { 2026-10-24T21:36:23.1026425Z ~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1026496Z 2026-10-24T21:36:23.1026869Z src/server/AzureDevOpsSourceControlProvider.ts:109:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1027277Z 2026-10-24T21:36:23.1027330Z 109 getChangeRequest: (input) => 2026-10-24T21:36:23.1027456Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1027520Z 2026-10-24T21:36:23.1027898Z src/server/AzureDevOpsSourceControlProvider.ts:127:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.createChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1028315Z 2026-10-24T21:36:23.1028370Z 127 createChangeRequest: (input) => { 2026-10-24T21:36:23.1028500Z ~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1028572Z 2026-10-24T21:36:23.1028956Z src/server/AzureDevOpsSourceControlProvider.ts:156:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getRepositoryCloneUrls")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1029387Z 2026-10-24T21:36:23.1029556Z 156 getRepositoryCloneUrls: (input) => 2026-10-24T21:36:23.1029694Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1029768Z 2026-10-24T21:36:23.1030137Z src/server/AzureDevOpsSourceControlProvider.ts:173:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.createRepository")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1030572Z 2026-10-24T21:36:23.1030624Z 173 createRepository: (input) => 2026-10-24T21:36:23.1030745Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1030813Z 2026-10-24T21:36:23.1031180Z src/server/AzureDevOpsSourceControlProvider.ts:190:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getDefaultBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1031585Z 2026-10-24T21:36:23.1031632Z 190 getDefaultBranch: (input) => 2026-10-24T21:36:23.1031755Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1031820Z 2026-10-24T21:36:23.1032202Z src/server/AzureDevOpsSourceControlProvider.ts:204:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.checkoutChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1032623Z 2026-10-24T21:36:23.1032680Z 204 checkoutChangeRequest: (input) => 2026-10-24T21:36:23.1032813Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1032887Z 2026-10-24T21:36:23.1032888Z 2026-10-24T21:36:23.1032956Z ~/packages/source-control-gitcafe$ tsc --noEmit 2026-10-24T21:36:23.1033345Z src/server/GitHubCredentials.ts:245:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubCredentials.invalidate")((rawHost) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1033671Z 2026-10-24T21:36:23.1033723Z 245 invalidate: (rawHost) => { 2026-10-24T21:36:23.1033841Z ~~~~~~~~~~ 2026-10-24T21:36:23.1033904Z 2026-10-24T21:36:23.1034254Z src/server/GitHubPullRequestApi.ts:992:21 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubApiResponseError")(function*(error) { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1034590Z 2026-10-24T21:36:23.1034658Z 992 GitHubApiResponseError: (error) => 2026-10-24T21:36:23.1034814Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1034957Z 2026-10-24T21:36:23.1035304Z src/server/GitHubPullRequestApi.ts:1629:13 - suggestion TS377120: `Effect.filterOrFail` expresses this conditional validation more directly than `Effect.flatMap` with an identity `Effect.succeed` branch. effect(flatMapConditionalToFilterOrFail) 2026-10-24T21:36:23.1035686Z 2026-10-24T21:36:23.1035741Z 1629 Effect.flatMap((runs) => 2026-10-24T21:36:23.1035875Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1035948Z 2026-10-24T21:36:23.1036271Z src/server/GitHubPullRequestApi.ts:1776:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.getViewerLogin")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1036621Z 2026-10-24T21:36:23.1036671Z 1776 getViewerLogin: (input) => 2026-10-24T21:36:23.1036795Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1036861Z 2026-10-24T21:36:23.1037170Z src/server/GitHubPullRequestApi.ts:1779:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.listPullRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1037518Z 2026-10-24T21:36:23.1037570Z 1779 listPullRequests: (input) => { 2026-10-24T21:36:23.1037704Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1037768Z 2026-10-24T21:36:23.1038110Z src/server/GitHubPullRequestApi.ts:1908:9 - suggestion TS377120: `Effect.filterOrElse` expresses this conditional validation more directly than `Effect.flatMap` with an identity `Effect.succeed` branch. effect(flatMapConditionalToFilterOrFail) 2026-10-24T21:36:23.1038486Z 2026-10-24T21:36:23.1038540Z 1908 Effect.flatMap((batch) => { 2026-10-24T21:36:23.1038667Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1038739Z 2026-10-24T21:36:23.1039061Z src/server/GitHubPullRequestApi.ts:1947:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.searchPullRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1039418Z 2026-10-24T21:36:23.1039470Z 1947 searchPullRequests: (input) => { 2026-10-24T21:36:23.1039606Z ~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1039674Z 2026-10-24T21:36:23.1039996Z src/server/GitHubPullRequestApi.ts:2021:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.getPullRequestPreview")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1040374Z 2026-10-24T21:36:23.1040435Z 2021 getPullRequestPreview: (input) => { 2026-10-24T21:36:23.1040572Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1040648Z 2026-10-24T21:36:23.1040959Z src/server/GitHubPullRequestApi.ts:2034:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.getPullRequestStack")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1041313Z 2026-10-24T21:36:23.1041366Z 2034 getPullRequestStack: (input) => { 2026-10-24T21:36:23.1041502Z ~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1041575Z 2026-10-24T21:36:23.1041885Z src/server/GitHubPullRequestApi.ts:2112:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.getPullRequestDiff")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1042244Z 2026-10-24T21:36:23.1042298Z 2112 getPullRequestDiff: (input) => { 2026-10-24T21:36:23.1042426Z ~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1042496Z 2026-10-24T21:36:23.1042859Z src/server/GitHubPullRequestApi.ts:2160:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.getReviewThreadComments")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1043221Z 2026-10-24T21:36:23.1043279Z 2160 getReviewThreadComments: (input) => { 2026-10-24T21:36:23.1043424Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1043543Z 2026-10-24T21:36:23.1043850Z src/server/GitHubPullRequestApi.ts:2302:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.listActorAvatars")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1044203Z 2026-10-24T21:36:23.1044256Z 2302 listActorAvatars: (input) => { 2026-10-24T21:36:23.1044385Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1044454Z 2026-10-24T21:36:23.1044763Z src/server/GitHubPullRequestApi.ts:2311:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.getViewerAccess")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1045110Z 2026-10-24T21:36:23.1045165Z 2311 getViewerAccess: (input) => { 2026-10-24T21:36:23.1045290Z ~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1045357Z 2026-10-24T21:36:23.1045679Z src/server/GitHubPullRequestApi.ts:2323:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.listReviewerCandidates")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1046036Z 2026-10-24T21:36:23.1046097Z 2323 listReviewerCandidates: (input) => { 2026-10-24T21:36:23.1046236Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1046308Z 2026-10-24T21:36:23.1046618Z src/server/GitHubPullRequestApi.ts:2335:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.setReviewerRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1046972Z 2026-10-24T21:36:23.1047027Z 2335 setReviewerRequest: (input) => { 2026-10-24T21:36:23.1047158Z ~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1047231Z 2026-10-24T21:36:23.1047544Z src/server/GitHubPullRequestApi.ts:2348:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.listLabelCandidates")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1047899Z 2026-10-24T21:36:23.1047954Z 2348 listLabelCandidates: (input) => { 2026-10-24T21:36:23.1048086Z ~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1048156Z 2026-10-24T21:36:23.1048475Z src/server/GitHubPullRequestApi.ts:2360:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.listRepositoryLabels")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1048830Z 2026-10-24T21:36:23.1048887Z 2360 listRepositoryLabels: (input) => { 2026-10-24T21:36:23.1049021Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1049095Z 2026-10-24T21:36:23.1049420Z src/server/GitHubPullRequestApi.ts:2372:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.searchRepositoryAuthors")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1049784Z 2026-10-24T21:36:23.1049844Z 2372 searchRepositoryAuthors: (input) => { 2026-10-24T21:36:23.1049989Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1050064Z 2026-10-24T21:36:23.1050406Z src/server/GitHubPullRequestApi.ts:2384:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.setLabels")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1050747Z 2026-10-24T21:36:23.1050795Z 2384 setLabels: (input) => { 2026-10-24T21:36:23.1050914Z ~~~~~~~~~ 2026-10-24T21:36:23.1050975Z 2026-10-24T21:36:23.1051338Z src/server/GitHubPullRequestApi.ts:2411:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.runPullRequestAction")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1051693Z 2026-10-24T21:36:23.1051747Z 2411 runPullRequestAction: (input) => { 2026-10-24T21:36:23.1051883Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1052002Z 2026-10-24T21:36:23.1052314Z src/server/GitHubPullRequestApi.ts:2670:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.commentOnPullRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1052671Z 2026-10-24T21:36:23.1052725Z 2670 commentOnPullRequest: (input) => 2026-10-24T21:36:23.1052857Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1052929Z 2026-10-24T21:36:23.1053235Z src/server/GitHubPullRequestApi.ts:2680:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.submitReview")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1053584Z 2026-10-24T21:36:23.1053633Z 2680 submitReview: (input) => { 2026-10-24T21:36:23.1053757Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1053824Z 2026-10-24T21:36:23.1054135Z src/server/GitHubPullRequestApi.ts:2697:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.replyToReviewThread")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1054492Z 2026-10-24T21:36:23.1054550Z 2697 replyToReviewThread: (input) => 2026-10-24T21:36:23.1054679Z ~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1054752Z 2026-10-24T21:36:23.1055083Z src/server/GitHubPullRequestApi.ts:2702:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.getPullRequestFilesViewed")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1055455Z 2026-10-24T21:36:23.1055515Z 2702 getPullRequestFilesViewed: (input) => { 2026-10-24T21:36:23.1055664Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1055742Z 2026-10-24T21:36:23.1056064Z src/server/GitHubPullRequestApi.ts:2730:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.getPullRequestFileStats")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1056436Z 2026-10-24T21:36:23.1056496Z 2730 getPullRequestFileStats: (input) => { 2026-10-24T21:36:23.1056632Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1056707Z 2026-10-24T21:36:23.1057036Z src/server/GitHubPullRequestApi.ts:2758:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.setPullRequestFilesViewed")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1057405Z 2026-10-24T21:36:23.1057466Z 2758 setPullRequestFilesViewed: (input) => { 2026-10-24T21:36:23.1057608Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1057684Z 2026-10-24T21:36:23.1058011Z src/server/GitHubPullRequestApi.ts:2779:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.setReviewThreadResolution")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1058382Z 2026-10-24T21:36:23.1058444Z 2779 setReviewThreadResolution: (input) => 2026-10-24T21:36:23.1058583Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1058657Z 2026-10-24T21:36:23.1058960Z src/server/GitHubPullRequestApi.ts:2785:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.setReaction")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1059305Z 2026-10-24T21:36:23.1059356Z 2785 setReaction: (input) => { 2026-10-24T21:36:23.1059473Z ~~~~~~~~~~~ 2026-10-24T21:36:23.1059536Z 2026-10-24T21:36:23.1059890Z src/server/GitHubPullRequestApi.ts:2818:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.updatePullRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1060244Z 2026-10-24T21:36:23.1060305Z 2818 updatePullRequest: (input) => 2026-10-24T21:36:23.1060456Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1060524Z 2026-10-24T21:36:23.1060890Z src/server/GitHubPullRequestApi.ts:2834:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.updateComment")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1061235Z 2026-10-24T21:36:23.1061286Z 2834 updateComment: (input) => 2026-10-24T21:36:23.1061405Z ~~~~~~~~~~~~~ 2026-10-24T21:36:23.1061471Z 2026-10-24T21:36:23.1061853Z src/server/GitHubSourceControlProvider.ts:897:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.readChangeRequestTemplate")((_) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1062280Z 2026-10-24T21:36:23.1062350Z 897 readChangeRequestTemplate: ({ cwd, treeish }) => 2026-10-24T21:36:23.1062506Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1062584Z 2026-10-24T21:36:23.1062943Z src/server/GitHubSourceControlProvider.ts:935:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.recordBranchBase")((_) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1063350Z 2026-10-24T21:36:23.1063421Z 935 recordBranchBase: ({ cwd, branch, baseBranch }) => 2026-10-24T21:36:23.1063584Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1063654Z 2026-10-24T21:36:23.1064028Z src/server/GitHubSourceControlProvider.ts:957:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.listChangeRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1064442Z 2026-10-24T21:36:23.1064497Z 957 listChangeRequests: (input) => 2026-10-24T21:36:23.1064626Z ~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1064695Z 2026-10-24T21:36:23.1065063Z src/server/GitHubSourceControlProvider.ts:975:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1065472Z 2026-10-24T21:36:23.1065525Z 975 getChangeRequest: (input) => 2026-10-24T21:36:23.1065653Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1065716Z 2026-10-24T21:36:23.1066095Z src/server/GitHubSourceControlProvider.ts:1088:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.checkoutChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1066512Z 2026-10-24T21:36:23.1066569Z 1088 checkoutChangeRequest: (input) => 2026-10-24T21:36:23.1066706Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1066781Z 2026-10-24T21:36:23.1067127Z src/server/gitHubGraphQlClient.ts:118:12 - suggestion TS377019: This `yield* Effect.fail(...)` passes a yieldable error value. `yield*` represents that value directly without wrapping it in `Effect.fail`. effect(unnecessaryFailYieldableError) 2026-10-24T21:36:23.1067495Z 2026-10-24T21:36:23.1067550Z 118 return yield* Effect.fail(error); 2026-10-24T21:36:23.1067681Z ~~~~~ 2026-10-24T21:36:23.1067743Z 2026-10-24T21:36:23.1067745Z 2026-10-24T21:36:23.1067812Z ~/packages/source-control-forgejo$ tsc --noEmit 2026-10-24T21:36:23.1068203Z src/server/BitbucketApi.ts:1013:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketApi.listPullRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1068528Z 2026-10-24T21:36:23.1068581Z 1013 listPullRequests: (input) => 2026-10-24T21:36:23.1068713Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1068825Z 2026-10-24T21:36:23.1069111Z src/server/BitbucketApi.ts:1040:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketApi.getPullRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1069500Z 2026-10-24T21:36:23.1069611Z 1040 getPullRequest: (input) => 2026-10-24T21:36:23.1069734Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1069802Z 2026-10-24T21:36:23.1070097Z src/server/BitbucketApi.ts:1042:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketApi.getRepositoryCloneUrls")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1070448Z 2026-10-24T21:36:23.1070504Z 1042 getRepositoryCloneUrls: (input) => 2026-10-24T21:36:23.1070643Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1070718Z 2026-10-24T21:36:23.1071005Z src/server/BitbucketApi.ts:1044:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketApi.createRepository")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1071331Z 2026-10-24T21:36:23.1071383Z 1044 createRepository: (input) => 2026-10-24T21:36:23.1071509Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1071577Z 2026-10-24T21:36:23.1071861Z src/server/BitbucketApi.ts:1109:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketApi.getDefaultBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1072184Z 2026-10-24T21:36:23.1072233Z 1109 getDefaultBranch: (input) => 2026-10-24T21:36:23.1072361Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1072427Z 2026-10-24T21:36:23.1072734Z src/server/BitbucketPullRequestApi.ts:555:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.getViewer")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1073080Z 2026-10-24T21:36:23.1073127Z 555 getViewer: () => 2026-10-24T21:36:23.1073236Z ~~~~~~~~~ 2026-10-24T21:36:23.1073297Z 2026-10-24T21:36:23.1073622Z src/server/BitbucketPullRequestApi.ts:570:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.listPullRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1073989Z 2026-10-24T21:36:23.1074040Z 570 listPullRequests: (input) => 2026-10-24T21:36:23.1074167Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1074233Z 2026-10-24T21:36:23.1074547Z src/server/BitbucketPullRequestApi.ts:594:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.getPullRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1074909Z 2026-10-24T21:36:23.1074961Z 594 getPullRequest: (input) => 2026-10-24T21:36:23.1075082Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1075151Z 2026-10-24T21:36:23.1075489Z src/server/BitbucketPullRequestApi.ts:609:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.getRepositoryPermission")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1075866Z 2026-10-24T21:36:23.1075923Z 609 getRepositoryPermission: (input) => 2026-10-24T21:36:23.1076068Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1076145Z 2026-10-24T21:36:23.1076465Z src/server/BitbucketPullRequestApi.ts:622:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.getFileRevisions")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1076827Z 2026-10-24T21:36:23.1076878Z 622 getFileRevisions: (input) => 2026-10-24T21:36:23.1077003Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1077069Z 2026-10-24T21:36:23.1077433Z src/server/BitbucketPullRequestApi.ts:639:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.getDiffStat")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1077786Z 2026-10-24T21:36:23.1077836Z 639 getDiffStat: (input) => 2026-10-24T21:36:23.1077951Z ~~~~~~~~~~~ 2026-10-24T21:36:23.1078015Z 2026-10-24T21:36:23.1078334Z src/server/BitbucketPullRequestApi.ts:647:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.getMergeability")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1078740Z 2026-10-24T21:36:23.1078792Z 647 getMergeability: (input) => 2026-10-24T21:36:23.1078916Z ~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1078983Z 2026-10-24T21:36:23.1079296Z src/server/BitbucketPullRequestApi.ts:656:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.listComments")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1079651Z 2026-10-24T21:36:23.1079704Z 656 listComments: (input) => 2026-10-24T21:36:23.1079823Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1079888Z 2026-10-24T21:36:23.1080200Z src/server/BitbucketPullRequestApi.ts:666:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.listCommits")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1080574Z 2026-10-24T21:36:23.1080622Z 666 listCommits: (input) => 2026-10-24T21:36:23.1080739Z ~~~~~~~~~~~ 2026-10-24T21:36:23.1080798Z 2026-10-24T21:36:23.1081107Z src/server/BitbucketPullRequestApi.ts:677:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.listChecks")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1081458Z 2026-10-24T21:36:23.1081507Z 677 listChecks: (input) => 2026-10-24T21:36:23.1081621Z ~~~~~~~~~~ 2026-10-24T21:36:23.1081682Z 2026-10-24T21:36:23.1082016Z src/server/BitbucketPullRequestApi.ts:688:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.listReviewerCandidates")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1082388Z 2026-10-24T21:36:23.1082447Z 688 listReviewerCandidates: (input) => 2026-10-24T21:36:23.1082587Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1082665Z 2026-10-24T21:36:23.1082992Z src/server/BitbucketPullRequestApi.ts:722:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.setReviewerRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1083362Z 2026-10-24T21:36:23.1083416Z 722 setReviewerRequest: (input) => 2026-10-24T21:36:23.1083547Z ~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1083616Z 2026-10-24T21:36:23.1083926Z src/server/BitbucketPullRequestApi.ts:749:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.runAction")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1084278Z 2026-10-24T21:36:23.1084324Z 749 runAction: (input) => 2026-10-24T21:36:23.1084441Z ~~~~~~~~~ 2026-10-24T21:36:23.1084497Z 2026-10-24T21:36:23.1084826Z src/server/BitbucketPullRequestApi.ts:766:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.updateChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1085196Z 2026-10-24T21:36:23.1085251Z 766 updateChangeRequest: (input) => 2026-10-24T21:36:23.1085380Z ~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1085451Z 2026-10-24T21:36:23.1085753Z src/server/BitbucketPullRequestApi.ts:784:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.comment")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1086098Z 2026-10-24T21:36:23.1086200Z 784 comment: (input) => 2026-10-24T21:36:23.1086314Z ~~~~~~~ 2026-10-24T21:36:23.1086369Z 2026-10-24T21:36:23.1086685Z src/server/BitbucketPullRequestApi.ts:795:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.updateComment")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1087087Z 2026-10-24T21:36:23.1087138Z 795 updateComment: (input) => 2026-10-24T21:36:23.1087260Z ~~~~~~~~~~~~~ 2026-10-24T21:36:23.1087326Z 2026-10-24T21:36:23.1087639Z src/server/BitbucketPullRequestApi.ts:808:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.submitReview")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1087993Z 2026-10-24T21:36:23.1088040Z 808 submitReview: (input) => 2026-10-24T21:36:23.1088161Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1088224Z 2026-10-24T21:36:23.1088540Z src/server/BitbucketPullRequestApi.ts:848:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.replyToComment")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1088903Z 2026-10-24T21:36:23.1088954Z 848 replyToComment: (input) => 2026-10-24T21:36:23.1089079Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1089147Z 2026-10-24T21:36:23.1089482Z src/server/BitbucketPullRequestApi.ts:862:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.setCommentResolution")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1089853Z 2026-10-24T21:36:23.1089906Z 862 setCommentResolution: (input) => 2026-10-24T21:36:23.1090044Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1090115Z 2026-10-24T21:36:23.1090506Z src/server/BitbucketSourceControlProvider.ts:47:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.listChangeRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1090922Z 2026-10-24T21:36:23.1090979Z 47 listChangeRequests: (input) => { 2026-10-24T21:36:23.1091107Z ~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1091175Z 2026-10-24T21:36:23.1091547Z src/server/BitbucketSourceControlProvider.ts:75:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1091966Z 2026-10-24T21:36:23.1092018Z 75 getChangeRequest: (input) => 2026-10-24T21:36:23.1092143Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1092211Z 2026-10-24T21:36:23.1092593Z src/server/BitbucketSourceControlProvider.ts:92:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.createChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1093008Z 2026-10-24T21:36:23.1093063Z 92 createChangeRequest: (input) => { 2026-10-24T21:36:23.1093196Z ~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1093263Z 2026-10-24T21:36:23.1093650Z src/server/BitbucketSourceControlProvider.ts:121:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getRepositoryCloneUrls")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1094082Z 2026-10-24T21:36:23.1094144Z 121 getRepositoryCloneUrls: (input) => 2026-10-24T21:36:23.1094279Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1094355Z 2026-10-24T21:36:23.1094730Z src/server/BitbucketSourceControlProvider.ts:137:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.createRepository")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1095186Z 2026-10-24T21:36:23.1095236Z 137 createRepository: (input) => 2026-10-24T21:36:23.1095362Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1095426Z 2026-10-24T21:36:23.1095796Z src/server/BitbucketSourceControlProvider.ts:153:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getDefaultBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1096249Z 2026-10-24T21:36:23.1096303Z 153 getDefaultBranch: (input) => 2026-10-24T21:36:23.1096427Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1096492Z 2026-10-24T21:36:23.1096873Z src/server/BitbucketSourceControlProvider.ts:171:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.checkoutChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1097292Z 2026-10-24T21:36:23.1097348Z 171 checkoutChangeRequest: (input) => 2026-10-24T21:36:23.1097484Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1097561Z 2026-10-24T21:36:23.1097563Z 2026-10-24T21:36:23.1097618Z ~/packages/provider-grok$ tsc --noEmit 2026-10-24T21:36:23.1097989Z src/server/GitCafeCredentials.ts:170:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitCafeCredentials.get")((host) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1098310Z 2026-10-24T21:36:23.1098350Z 170 get: (host) => 2026-10-24T21:36:23.1098457Z ~~~ 2026-10-24T21:36:23.1098513Z 2026-10-24T21:36:23.1098801Z src/server/GitCafeCredentials.ts:183:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitCafeCredentials.invalidate")((host) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1099130Z 2026-10-24T21:36:23.1099226Z 183 invalidate: (host) => Cache.invalidate(cache, normalizeHost(host)), 2026-10-24T21:36:23.1099400Z ~~~~~~~~~~ 2026-10-24T21:36:23.1099465Z 2026-10-24T21:36:23.1099754Z src/server/GitCafeCredentials.ts:184:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitCafeCredentials.cliEnv")((host) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1100082Z 2026-10-24T21:36:23.1100127Z 184 cliEnv: (host) => 2026-10-24T21:36:23.1100240Z ~~~~~~ 2026-10-24T21:36:23.1100307Z 2026-10-24T21:36:23.1100570Z src/server/GitCafePullRequestProvider.ts:341:9 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-24T21:36:23.1100851Z 2026-10-24T21:36:23.1100903Z 341 Effect.map(Option.some), 2026-10-24T21:36:23.1101026Z ~~~~~~~~~~ 2026-10-24T21:36:23.1101093Z 2026-10-24T21:36:23.1101333Z src/server/GitCafePullRequestProvider.ts:346:17 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1101609Z 2026-10-24T21:36:23.1101666Z 346 : Effect.succeed(Option.none()), 2026-10-24T21:36:23.1101813Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1101893Z 2026-10-24T21:36:23.1102126Z src/server/GitCafePullRequestProvider.ts:655:13 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-24T21:36:23.1102401Z 2026-10-24T21:36:23.1102455Z 655 Effect.map(Option.some), 2026-10-24T21:36:23.1102581Z ~~~~~~~~~~ 2026-10-24T21:36:23.1102651Z 2026-10-24T21:36:23.1102883Z src/server/GitCafePullRequestProvider.ts:660:21 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1103154Z 2026-10-24T21:36:23.1103216Z 660 : Effect.succeed(Option.none()), 2026-10-24T21:36:23.1103364Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1103446Z 2026-10-24T21:36:23.1103774Z src/server/GitCafePullRequestProvider.ts:673:15 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("readPage")((rows, after) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1104095Z 2026-10-24T21:36:23.1104176Z 673 const readPage = (rows: number, after: string | null) => { 2026-10-24T21:36:23.1104387Z ~~~~~~~~ 2026-10-24T21:36:23.1104459Z 2026-10-24T21:36:23.1104796Z src/server/GitCafePullRequestProvider.ts:790:13 - suggestion TS377116: `Effect.catchIf` expresses selective recovery more directly than `Effect.catch` with a conditional `Effect.fail` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-24T21:36:23.1105166Z 2026-10-24T21:36:23.1105215Z 790 Effect.catch((error) => 2026-10-24T21:36:23.1105345Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1105419Z 2026-10-24T21:36:23.1105744Z src/server/GitCafePullRequestProvider.ts:872:19 - suggestion TS377116: `Effect.catchIf` expresses selective recovery more directly than `Effect.catch` with a conditional `Effect.fail` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-24T21:36:23.1106113Z 2026-10-24T21:36:23.1106168Z 872 Effect.catch((error) => 2026-10-24T21:36:23.1106308Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1106390Z 2026-10-24T21:36:23.1106392Z 2026-10-24T21:36:23.1106448Z ~/packages/provider-pi$ tsc --noEmit 2026-10-24T21:36:23.1106914Z src/server/ForgejoSourceControlProvider.ts:362:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1107332Z 2026-10-24T21:36:23.1107384Z 362 getChangeRequest: (input) => 2026-10-24T21:36:23.1107508Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1107574Z 2026-10-24T21:36:23.1107576Z 2026-10-24T21:36:23.1107631Z ~/packages/provider-muse$ tsc --noEmit 2026-10-24T21:36:23.1108037Z src/server/driver.ts:174:7 - suggestion TS377120: `Effect.filterOrElse` expresses this conditional validation more directly than `Effect.flatMap` with an identity `Effect.succeed` branch. effect(flatMapConditionalToFilterOrFail) 2026-10-24T21:36:23.1108388Z 2026-10-24T21:36:23.1108441Z 174 Effect.flatMap((snapshot) => 2026-10-24T21:36:23.1108575Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1108640Z 2026-10-24T21:36:23.1108875Z src/server/xaiAcpExtension.ts:1507:15 - suggestion TS377009: The previous Effect does not fail, so this error-handling branch will never run. effect(catchUnfailableEffect) 2026-10-24T21:36:23.1109148Z 2026-10-24T21:36:23.1109213Z 1507 }).pipe(Effect.catch(() => Effect.void)); 2026-10-24T21:36:23.1109410Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1109486Z 2026-10-24T21:36:23.1109732Z src/server/xaiAcpExtension.ts:1507:15 - suggestion TS377099: `Effect.ignore` expresses ignored failure more directly than `Effect.catch` returning `Effect.void`. effect(catchToIgnore) 2026-10-24T21:36:23.1110017Z 2026-10-24T21:36:23.1110083Z 1507 }).pipe(Effect.catch(() => Effect.void)); 2026-10-24T21:36:23.1110227Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1110313Z 2026-10-24T21:36:23.1110654Z src/server/xaiAcpExtension.ts:1588:13 - suggestion TS377116: `Effect.catchCauseIf` expresses selective recovery more directly than `Effect.catchCause` with a conditional `Effect.failCause` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-24T21:36:23.1111031Z 2026-10-24T21:36:23.1111090Z 1588 Effect.catchCause((cause) => 2026-10-24T21:36:23.1111231Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1111308Z 2026-10-24T21:36:23.1111620Z src/server/adapter.ts:440:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.getCapabilities")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1111965Z 2026-10-24T21:36:23.1112115Z 440 getCapabilities: () => Effect.succeed(PiProviderCapabilitiesV2), 2026-10-24T21:36:23.1112293Z ~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1112356Z 2026-10-24T21:36:23.1112682Z src/server/adapter.ts:441:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.planSelectionTransition")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1113098Z 2026-10-24T21:36:23.1113217Z 441 planSelectionTransition: () => Effect.succeed(turnScopedSelectionTransition()), 2026-10-24T21:36:23.1113419Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1113493Z 2026-10-24T21:36:23.1113705Z src/server/adapter.ts:1694:31 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-24T21:36:23.1113963Z 2026-10-24T21:36:23.1114027Z 1694 Effect.map(Option.some), 2026-10-24T21:36:23.1114184Z ~~~~~~~~~~ 2026-10-24T21:36:23.1114274Z 2026-10-24T21:36:23.1114479Z src/server/adapter.ts:1697:29 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1114723Z 2026-10-24T21:36:23.1114791Z 1697 : Effect.succeed(Option.none()), 2026-10-24T21:36:23.1114950Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1115041Z 2026-10-24T21:36:23.1115283Z src/server/rpc.ts:334:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("onSuccess")(function*() { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1115564Z 2026-10-24T21:36:23.1115608Z 334 onSuccess: () => 2026-10-24T21:36:23.1115722Z ~~~~~~~~~ 2026-10-24T21:36:23.1115784Z 2026-10-24T21:36:23.1115981Z src/server/rpc.ts:342:17 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-24T21:36:23.1116220Z 2026-10-24T21:36:23.1116279Z 342 Effect.map(Option.some), 2026-10-24T21:36:23.1116413Z ~~~~~~~~~~ 2026-10-24T21:36:23.1116488Z 2026-10-24T21:36:23.1116490Z 2026-10-24T21:36:23.1116549Z ~/packages/provider-opencode$ tsc --noEmit 2026-10-24T21:36:23.1116646Z 2026-10-24T21:36:23.1116699Z ~/packages/provider-cursor$ tsc --noEmit 2026-10-24T21:36:23.1117105Z src/server/adapter.ts:284:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.getCapabilities")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1117455Z 2026-10-24T21:36:23.1117547Z 284 getCapabilities: () => Effect.succeed(MuseProviderCapabilitiesV2), 2026-10-24T21:36:23.1117726Z ~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1117792Z 2026-10-24T21:36:23.1118115Z src/server/adapter.ts:285:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.planSelectionTransition")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1118476Z 2026-10-24T21:36:23.1118592Z 285 planSelectionTransition: () => Effect.succeed(turnScopedSelectionTransition()), 2026-10-24T21:36:23.1118792Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1118871Z 2026-10-24T21:36:23.1119129Z src/server/adapter.ts:388:13 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("TimeoutError")(function*(cause) { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1119430Z 2026-10-24T21:36:23.1119480Z 388 TimeoutError: (cause) => 2026-10-24T21:36:23.1119610Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1119685Z 2026-10-24T21:36:23.1119892Z src/server/adapter.ts:1366:35 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-24T21:36:23.1120142Z 2026-10-24T21:36:23.1120320Z 1366 wake === held ? Effect.map(dispatch, Option.some) : Effect.succeed(Option.none()), 2026-10-24T21:36:23.1120530Z ~~~~~~~~~~ 2026-10-24T21:36:23.1120622Z 2026-10-24T21:36:23.1120827Z src/server/adapter.ts:1366:71 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1121110Z 2026-10-24T21:36:23.1121224Z 1366 wake === held ? Effect.map(dispatch, Option.some) : Effect.succeed(Option.none()), 2026-10-24T21:36:23.1121451Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1121563Z 2026-10-24T21:36:23.1121565Z 2026-10-24T21:36:23.1121630Z ~/packages/provider-acp-registry$ tsc --noEmit 2026-10-24T21:36:23.1122067Z src/server/CursorAccountReader.ts:31:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("CursorAccountReader.read")((credentialSource, sinceMs, untilMs) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1122437Z 2026-10-24T21:36:23.1122507Z 31 read: (credentialSource, sinceMs, untilMs) => 2026-10-24T21:36:23.1122650Z ~~~~ 2026-10-24T21:36:23.1122711Z 2026-10-24T21:36:23.1122989Z src/server/CursorSdkCatalog.ts:82:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("CursorSdkCatalog.read")((apiKey) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1123306Z 2026-10-24T21:36:23.1123355Z 82 read: (apiKey) => 2026-10-24T21:36:23.1123467Z ~~~~ 2026-10-24T21:36:23.1123521Z 2026-10-24T21:36:23.1123793Z src/server/accountUsage.ts:360:5 - suggestion TS377095: `Effect.orElseSucceed` expresses the same recovery more directly than `Effect.catch` followed by `Effect.succeed`. effect(catchToOrElseSucceed) 2026-10-24T21:36:23.1124102Z 2026-10-24T21:36:23.1124152Z 360 Effect.catch(() => 2026-10-24T21:36:23.1124261Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1124326Z 2026-10-24T21:36:23.1124633Z src/server/adapter.ts:911:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.getCapabilities")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1124976Z 2026-10-24T21:36:23.1125080Z 911 getCapabilities: () => Effect.succeed(CursorProviderCapabilitiesV2), 2026-10-24T21:36:23.1125264Z ~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1125328Z 2026-10-24T21:36:23.1125647Z src/server/adapter.ts:912:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.planSelectionTransition")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1126010Z 2026-10-24T21:36:23.1126124Z 912 planSelectionTransition: () => Effect.succeed(turnScopedSelectionTransition()), 2026-10-24T21:36:23.1126326Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1126401Z 2026-10-24T21:36:23.1126836Z src/server/credentialStore.ts:55:7 - suggestion TS377074: `Effect.runPromise` is called inside an Effect with a separate services invocation. In this context, child Effects run with the surrounding services, which can be accessed through `Effect.context` and `Effect.runPromiseWith`. effect(runEffectInsideEffect) 2026-10-24T21:36:23.1127303Z 2026-10-24T21:36:23.1127349Z 55 Effect.runPromise( 2026-10-24T21:36:23.1127470Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1127536Z 2026-10-24T21:36:23.1127792Z src/server/credentialStore.ts:59:29 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-24T21:36:23.1128082Z 2026-10-24T21:36:23.1128146Z 59 onNone: () => Effect.succeed(undefined), 2026-10-24T21:36:23.1128300Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1128391Z 2026-10-24T21:36:23.1128858Z src/server/credentialStore.ts:69:7 - suggestion TS377074: `Effect.runPromise` is called inside an Effect with a separate services invocation. In this context, child Effects run with the surrounding services, which can be accessed through `Effect.context` and `Effect.runPromiseWith`. effect(runEffectInsideEffect) 2026-10-24T21:36:23.1129324Z 2026-10-24T21:36:23.1129370Z 69 Effect.runPromise( 2026-10-24T21:36:23.1129487Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1129599Z 2026-10-24T21:36:23.1130024Z src/server/credentialStore.ts:82:18 - suggestion TS377074: `Effect.runPromise` is called inside an Effect with a separate services invocation. In this context, child Effects run with the surrounding services, which can be accessed through `Effect.context` and `Effect.runPromiseWith`. effect(runEffectInsideEffect) 2026-10-24T21:36:23.1130528Z 2026-10-24T21:36:23.1130604Z 82 clear: () => Effect.runPromise(credentials.remove), 2026-10-24T21:36:23.1130762Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1130844Z 2026-10-24T21:36:23.1131166Z src/server/driver.ts:228:11 - suggestion TS377120: `Effect.filterOrElse` expresses this conditional validation more directly than `Effect.flatMap` with an identity `Effect.succeed` branch. effect(flatMapConditionalToFilterOrFail) 2026-10-24T21:36:23.1131521Z 2026-10-24T21:36:23.1131577Z 228 Effect.flatMap((snapshot) => 2026-10-24T21:36:23.1131710Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1131788Z 2026-10-24T21:36:23.1131975Z src/server/usageLimits.test.ts:74:5 - suggestion TS377017: This Effect.gen contains a single return statement. effect(unnecessaryEffectGen) 2026-10-24T21:36:23.1132196Z 2026-10-24T21:36:23.1132247Z 74 Effect.gen(function* () { 2026-10-24T21:36:23.1132374Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1132498Z 75 yield* withNodeServices( 2026-10-24T21:36:23.1132628Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1132746Z ... 2026-10-24T21:36:23.1132836Z 115 ); 2026-10-24T21:36:23.1132933Z ~~~~~~~~ 2026-10-24T21:36:23.1133025Z 116 }), 2026-10-24T21:36:23.1133117Z ~~~~~~ 2026-10-24T21:36:23.1133173Z 2026-10-24T21:36:23.1133175Z 2026-10-24T21:36:23.1133250Z ~/packages/source-control-definitions$ tsc --noEmit 2026-10-24T21:36:23.1133624Z src/server/OpenCodeServerLedger.ts:147:12 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-24T21:36:23.1133930Z 2026-10-24T21:36:23.1133985Z 147 return Effect.succeed(undefined); 2026-10-24T21:36:23.1134118Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1134201Z 2026-10-24T21:36:23.1134578Z src/server/OpenCodeServerLedger.ts:188:24 - suggestion TS377014: This generator returns an Effect-able value directly, which produces a nested `Effect>`. If the intended result is the inner Effect value, `return yield*` represents that form. effect(returnEffectInGen) 2026-10-24T21:36:23.1134989Z 2026-10-24T21:36:23.1135047Z 188 if (!recordable) return Effect.void; 2026-10-24T21:36:23.1135186Z ~~~~~~ 2026-10-24T21:36:23.1135263Z 2026-10-24T21:36:23.1135634Z src/server/OpenCodeServerLedger.ts:208:9 - suggestion TS377014: This generator returns an Effect-able value directly, which produces a nested `Effect>`. If the intended result is the inner Effect value, `return yield*` represents that form. effect(returnEffectInGen) 2026-10-24T21:36:23.1136041Z 2026-10-24T21:36:23.1136090Z 208 return Effect.void; 2026-10-24T21:36:23.1136210Z ~~~~~~ 2026-10-24T21:36:23.1136268Z 2026-10-24T21:36:23.1136640Z src/server/OpenCodeServerLedger.ts:228:7 - suggestion TS377014: This generator returns an Effect-able value directly, which produces a nested `Effect>`. If the intended result is the inner Effect value, `return yield*` represents that form. effect(returnEffectInGen) 2026-10-24T21:36:23.1137045Z 2026-10-24T21:36:23.1137094Z 228 return fs 2026-10-24T21:36:23.1137193Z ~~~~~~ 2026-10-24T21:36:23.1137252Z 2026-10-24T21:36:23.1137590Z src/server/OpenCodeServerLedger.ts:311:29 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OpenCodeServerLedger.track")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1137917Z 2026-10-24T21:36:23.1138017Z 311 OpenCodeServerLedger.of({ track: () => Effect.succeed(Effect.void) }), 2026-10-24T21:36:23.1138247Z ~~~~~ 2026-10-24T21:36:23.1138330Z 2026-10-24T21:36:23.1138630Z src/server/OpenCodeServerOwner.ts:169:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OpenCodeServerOwner.withServer")((use) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1138971Z 2026-10-24T21:36:23.1139019Z 169 withServer: (use) => 2026-10-24T21:36:23.1139135Z ~~~~~~~~~~ 2026-10-24T21:36:23.1139195Z 2026-10-24T21:36:23.1139575Z src/server/adapter.test.ts:103:39 - suggestion TS377112: This input is already assignable to the schema's Encoded type. Use `decodeSync` to preserve compile-time type checking instead of discarding the input type through `decodeUnknownSync`. effect(preferTypedSchemaDecoder) 2026-10-24T21:36:23.1139983Z 2026-10-24T21:36:23.1140093Z 103 const OPENCODE_TEST_SETTINGS = Schema.decodeUnknownSync(OpenCodeSettings)({}); 2026-10-24T21:36:23.1140316Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1140417Z 2026-10-24T21:36:23.1140723Z src/server/adapter.ts:938:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.getCapabilities")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1141072Z 2026-10-24T21:36:23.1141178Z 938 getCapabilities: () => Effect.succeed(OpenCodeProviderCapabilitiesV2), 2026-10-24T21:36:23.1141360Z ~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1141427Z 2026-10-24T21:36:23.1141748Z src/server/adapter.ts:939:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.planSelectionTransition")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1142108Z 2026-10-24T21:36:23.1142224Z 939 planSelectionTransition: () => Effect.succeed(turnScopedSelectionTransition()), 2026-10-24T21:36:23.1142421Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1142496Z 2026-10-24T21:36:23.1142777Z src/server/adapter.ts:1011:33 - suggestion TS377111: `AbortController` is manually constructed inside Effect code. Use `Effect.abortSignal` for Effect-managed cancellation. effect(abortControllerInEffect) 2026-10-24T21:36:23.1143092Z 2026-10-24T21:36:23.1143166Z 1011 const abortController = new AbortController(); 2026-10-24T21:36:23.1143334Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1143426Z 2026-10-24T21:36:23.1143737Z src/server/adapter.ts:1088:31 - suggestion TS377019: This `yield* Effect.fail(...)` passes a yieldable error value. `yield*` represents that value directly without wrapping it in `Effect.fail`. effect(unnecessaryFailYieldableError) 2026-10-24T21:36:23.1144086Z 2026-10-24T21:36:23.1144161Z 1088 if (failure) return yield* Effect.fail(failure); 2026-10-24T21:36:23.1144321Z ~~~~~ 2026-10-24T21:36:23.1144405Z 2026-10-24T21:36:23.1144670Z src/server/adapter.ts:1584:15 - suggestion TS377095: `Effect.orElseSucceed` expresses the same recovery more directly than `Effect.catch` followed by `Effect.succeed`. effect(catchToOrElseSucceed) 2026-10-24T21:36:23.1144976Z 2026-10-24T21:36:23.1145051Z 1584 Effect.catch(() => Effect.succeed(undefined)), 2026-10-24T21:36:23.1145208Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1145280Z 2026-10-24T21:36:23.1145525Z src/server/adapter.ts:1584:34 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-24T21:36:23.1145811Z 2026-10-24T21:36:23.1145884Z 1584 Effect.catch(() => Effect.succeed(undefined)), 2026-10-24T21:36:23.1146100Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1146197Z 2026-10-24T21:36:23.1146477Z src/server/adapter.ts:3194:43 - suggestion TS377111: `AbortController` is manually constructed inside Effect code. Use `Effect.abortSignal` for Effect-managed cancellation. effect(abortControllerInEffect) 2026-10-24T21:36:23.1146833Z 2026-10-24T21:36:23.1146910Z 3194 admissionAbortController: new AbortController(), 2026-10-24T21:36:23.1147090Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1147192Z 2026-10-24T21:36:23.1147465Z src/server/adapter.ts:3354:47 - suggestion TS377111: `AbortController` is manually constructed inside Effect code. Use `Effect.abortSignal` for Effect-managed cancellation. effect(abortControllerInEffect) 2026-10-24T21:36:23.1147782Z 2026-10-24T21:36:23.1147870Z 3354 turn.admissionAbortController = new AbortController(); 2026-10-24T21:36:23.1148057Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1148160Z 2026-10-24T21:36:23.1148441Z src/server/v2/OpenCode2Client.ts:158:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OpenCode2Client.connect")((_) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1148761Z 2026-10-24T21:36:23.1148818Z 158 connect: ({ baseUrl, password }) => { 2026-10-24T21:36:23.1148954Z ~~~~~~~ 2026-10-24T21:36:23.1149013Z 2026-10-24T21:36:23.1149304Z src/server/v2/OpenCode2Server.ts:160:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OpenCode2Server.withConnection")((use) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1149691Z 2026-10-24T21:36:23.1149744Z 160 withConnection: (use) => 2026-10-24T21:36:23.1149868Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1149937Z 2026-10-24T21:36:23.1150231Z src/server/v2/OpenCode2Server.ts:175:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OpenCode2Server.withConnection")((use) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1150583Z 2026-10-24T21:36:23.1150634Z 175 withConnection: (use) => 2026-10-24T21:36:23.1150756Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1150823Z 2026-10-24T21:36:23.1151033Z src/server/v2/adapter.ts:1544:26 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1151279Z 2026-10-24T21:36:23.1151399Z 1544 wake.dropped ? Effect.succeed(Option.none()) : Effect.map(dispatch, Option.some), 2026-10-24T21:36:23.1151602Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1151691Z 2026-10-24T21:36:23.1151903Z src/server/v2/adapter.ts:1544:58 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-24T21:36:23.1152156Z 2026-10-24T21:36:23.1152273Z 1544 wake.dropped ? Effect.succeed(Option.none()) : Effect.map(dispatch, Option.some), 2026-10-24T21:36:23.1152491Z ~~~~~~~~~~ 2026-10-24T21:36:23.1152592Z 2026-10-24T21:36:23.1152906Z src/server/v2/adapter.ts:4137:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.getCapabilities")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1153261Z 2026-10-24T21:36:23.1153365Z 4137 getCapabilities: () => Effect.succeed(OpenCode2ProviderCapabilities), 2026-10-24T21:36:23.1153552Z ~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1153617Z 2026-10-24T21:36:23.1153945Z src/server/v2/adapter.ts:4138:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.planSelectionTransition")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1154311Z 2026-10-24T21:36:23.1154485Z 4138 planSelectionTransition: () => Effect.succeed(turnScopedSelectionTransition()), 2026-10-24T21:36:23.1154689Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1154766Z 2026-10-24T21:36:23.1154768Z 2026-10-24T21:36:23.1155019Z src/server/AcpRegistryRuntimeCoordinator.ts:154:52 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-24T21:36:23.1155351Z 2026-10-24T21:36:23.1155478Z 154 return yield* Effect.raceFirst(effect.pipe(Effect.map(Option.some)), foregroundStarted); 2026-10-24T21:36:23.1155706Z ~~~~~~~~~~ 2026-10-24T21:36:23.1155803Z 2026-10-24T21:36:23.1156121Z src/server/AcpRegistrySupport.ts:1301:9 - suggestion TS377116: `Effect.catchIf` expresses selective recovery more directly than `Effect.catch` with a conditional `Effect.fail` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-24T21:36:23.1156476Z 2026-10-24T21:36:23.1156527Z 1301 Effect.catch((error) => 2026-10-24T21:36:23.1156652Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1156721Z 2026-10-24T21:36:23.1157006Z src/server/auth.ts:146:13 - suggestion TS377118: `Effect.fromOption` expresses this Option-to-Effect conversion more directly than `Option.match` or an Option tag conditional. effect(optionMatchToFromOption) 2026-10-24T21:36:23.1157329Z 2026-10-24T21:36:23.1157378Z 146 Option.isSome(result) 2026-10-24T21:36:23.1157509Z ~~~~~~~~~~~~~ 2026-10-24T21:36:23.1157585Z 2026-10-24T21:36:23.1157829Z src/server/driver.ts:640:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("enrichSnapshot")((_) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1158113Z 2026-10-24T21:36:23.1158212Z 640 enrichSnapshot: ({ snapshot, getSnapshot, publishSnapshot }) => { 2026-10-24T21:36:23.1158389Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1158456Z 2026-10-24T21:36:23.1158666Z src/server/driver.ts:650:51 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-24T21:36:23.1158908Z 2026-10-24T21:36:23.1159003Z 650 : enrichProviderCached(snapshot).pipe(Effect.map(Option.some)) 2026-10-24T21:36:23.1159194Z ~~~~~~~~~~ 2026-10-24T21:36:23.1159294Z 2026-10-24T21:36:23.1159295Z 2026-10-24T21:36:23.1159297Z 2026-10-24T21:36:23.1159350Z ~/packages/client-runtime$ tsc --noEmit 2026-10-24T21:36:23.1159661Z src/authorization/remote.test.ts:232:25 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1159920Z 2026-10-24T21:36:23.1160021Z 232 identity: Effect.succeed(Option.some({ accountId: "user_connect" })), 2026-10-24T21:36:23.1160210Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1160313Z 2026-10-24T21:36:23.1160528Z src/authorization/remote.test.ts:237:17 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1160785Z 2026-10-24T21:36:23.1160860Z 237 id: Effect.succeed(Option.some("device-1")), 2026-10-24T21:36:23.1161012Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1161093Z 2026-10-24T21:36:23.1161418Z src/authorization/service.ts:553:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("RemoteEnvironmentAuthorization.authorizeDpop")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1161781Z 2026-10-24T21:36:23.1161832Z 553 authorizeDpop: (input) => 2026-10-24T21:36:23.1161953Z ~~~~~~~~~~~~~ 2026-10-24T21:36:23.1162023Z 2026-10-24T21:36:23.1162343Z src/authorization/service.ts:555:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("RemoteEnvironmentAuthorization.authorizeDpopHttp")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1162743Z 2026-10-24T21:36:23.1162797Z 555 authorizeDpopHttp: (input) => 2026-10-24T21:36:23.1162928Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1162993Z 2026-10-24T21:36:23.1163294Z src/connection/onboarding.ts:298:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ConnectionOnboarding.registerPairing")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1163680Z 2026-10-24T21:36:23.1163732Z 298 registerPairing: (input) => 2026-10-24T21:36:23.1163855Z ~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1163923Z 2026-10-24T21:36:23.1164215Z src/connection/onboarding.ts:304:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ConnectionOnboarding.registerSsh")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1164541Z 2026-10-24T21:36:23.1164591Z 304 registerSsh: (input) => 2026-10-24T21:36:23.1164713Z ~~~~~~~~~~~ 2026-10-24T21:36:23.1164772Z 2026-10-24T21:36:23.1165069Z src/connection/onboarding.ts:309:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ConnectionOnboarding.updateBearer")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1165400Z 2026-10-24T21:36:23.1165455Z 309 updateBearer: (input) => 2026-10-24T21:36:23.1165573Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1165639Z 2026-10-24T21:36:23.1165966Z src/connection/pullRequestRoutingPermissions.ts:138:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("PullRequestRoutingPermissions.get")((entry) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1166331Z 2026-10-24T21:36:23.1166378Z 138 get: (entry) => 2026-10-24T21:36:23.1166490Z ~~~ 2026-10-24T21:36:23.1166544Z 2026-10-24T21:36:23.1166890Z src/connection/pullRequestRoutingPermissions.ts:143:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("PullRequestRoutingPermissions.set")((entry, permission) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1167275Z 2026-10-24T21:36:23.1167328Z 143 set: (entry, permission) => { 2026-10-24T21:36:23.1167454Z ~~~ 2026-10-24T21:36:23.1167511Z 2026-10-24T21:36:23.1167850Z src/connection/pullRequestRoutingPermissions.ts:159:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("PullRequestRoutingPermissions.forget")((environmentId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1168237Z 2026-10-24T21:36:23.1168285Z 159 forget: (environmentId) => 2026-10-24T21:36:23.1168410Z ~~~~~~ 2026-10-24T21:36:23.1168468Z 2026-10-24T21:36:23.1168729Z src/connection/registry.test.ts:1392:15 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-24T21:36:23.1169031Z 2026-10-24T21:36:23.1169089Z 1392 ? Effect.succeed(undefined) 2026-10-24T21:36:23.1169226Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1169313Z 2026-10-24T21:36:23.1169571Z src/connection/registry.test.ts:1476:15 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-24T21:36:23.1169871Z 2026-10-24T21:36:23.1169923Z 1476 ? Effect.succeed(undefined) 2026-10-24T21:36:23.1170061Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1170145Z 2026-10-24T21:36:23.1170438Z src/connection/registry.test.ts:1489:23 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-24T21:36:23.1170729Z 2026-10-24T21:36:23.1170792Z 1489 : Effect.succeed(undefined), 2026-10-24T21:36:23.1170943Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1171035Z 2026-10-24T21:36:23.1171324Z src/platform/orchestrationCache.test.ts:104:15 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-24T21:36:23.1171599Z 2026-10-24T21:36:23.1171652Z 104 }).pipe(Effect.map(Option.some)); 2026-10-24T21:36:23.1171834Z ~~~~~~~~~~ 2026-10-24T21:36:23.1171908Z 2026-10-24T21:36:23.1172266Z src/state/boundedThreadSnapshotHttp.ts:72:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadSnapshotLoader.ThreadSnapshotLoader.load")((prepared, threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1172666Z 2026-10-24T21:36:23.1172753Z 72 load: (prepared: PreparedConnection, threadId: ThreadId) => { 2026-10-24T21:36:23.1172915Z ~~~~ 2026-10-24T21:36:23.1172974Z 2026-10-24T21:36:23.1173254Z src/state/commandPermissions.ts:56:13 - suggestion TS377095: `Effect.orElseSucceed` expresses the same recovery more directly than `Effect.catch` followed by `Effect.succeed`. effect(catchToOrElseSucceed) 2026-10-24T21:36:23.1173572Z 2026-10-24T21:36:23.1173668Z 56 Effect.catch(() => Effect.succeed(Option.none())), 2026-10-24T21:36:23.1173856Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1173929Z 2026-10-24T21:36:23.1174251Z src/state/commandPermissions.ts:62:20 - suggestion TS377019: This `yield* Effect.fail(...)` passes a yieldable error value. `yield*` represents that value directly without wrapping it in `Effect.fail`. effect(unnecessaryFailYieldableError) 2026-10-24T21:36:23.1174616Z 2026-10-24T21:36:23.1174670Z 62 return yield* Effect.fail( 2026-10-24T21:36:23.1174800Z ~~~~~ 2026-10-24T21:36:23.1174870Z 2026-10-24T21:36:23.1175152Z src/state/outdatedServerUpdate.ts:57:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("execute")((target, atomRegistry) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1175472Z 2026-10-24T21:36:23.1175566Z 57 execute: (target: OutdatedServerUpdateTarget, atomRegistry) => { 2026-10-24T21:36:23.1175738Z ~~~~~~~ 2026-10-24T21:36:23.1175798Z 2026-10-24T21:36:23.1176105Z src/state/pullRequestDiffHttp.ts:90:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("PullRequestDiffLoader.load")((prepared, input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1176450Z 2026-10-24T21:36:23.1176504Z 90 load: (prepared, input) => 2026-10-24T21:36:23.1176631Z ~~~~ 2026-10-24T21:36:23.1176684Z 2026-10-24T21:36:23.1177072Z src/state/queryPersistence.ts:34:28 - suggestion TS377112: This input is already assignable to the schema's Encoded type. Use `decodeEffect` to preserve compile-time type checking instead of discarding the input type through `decodeUnknownEffect`. effect(preferTypedSchemaDecoder) 2026-10-24T21:36:23.1177500Z 2026-10-24T21:36:23.1177601Z 34 return yield* Schema.decodeUnknownEffect(codec)(stored.value).pipe( 2026-10-24T21:36:23.1177791Z ~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1177884Z 2026-10-24T21:36:23.1178102Z src/state/queryPersistence.ts:35:9 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-24T21:36:23.1178356Z 2026-10-24T21:36:23.1178410Z 35 Effect.map(Option.some), 2026-10-24T21:36:23.1178537Z ~~~~~~~~~~ 2026-10-24T21:36:23.1178600Z 2026-10-24T21:36:23.1178860Z src/state/server.ts:680:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("execute")((target, atomRegistry) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1179157Z 2026-10-24T21:36:23.1179213Z 680 execute: (target, atomRegistry) => { 2026-10-24T21:36:23.1179344Z ~~~~~~~ 2026-10-24T21:36:23.1179402Z 2026-10-24T21:36:23.1179767Z src/state/server.ts:1125:11 - suggestion TS377120: `Effect.filterOrElse` expresses this conditional validation more directly than `Effect.flatMap` with an identity `Effect.succeed` branch. effect(flatMapConditionalToFilterOrFail) 2026-10-24T21:36:23.1180123Z 2026-10-24T21:36:23.1180179Z 1125 Effect.flatMap((summary) => 2026-10-24T21:36:23.1180337Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1180458Z 2026-10-24T21:36:23.1180670Z src/state/shell-sync.test.ts:90:26 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1180922Z 2026-10-24T21:36:23.1180994Z 90 loadShell: () => Effect.succeed(Option.none()), 2026-10-24T21:36:23.1181148Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1181233Z 2026-10-24T21:36:23.1181446Z src/state/shell-sync.test.ts:96:27 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1181696Z 2026-10-24T21:36:23.1181766Z 96 loadThread: () => Effect.succeed(Option.none()), 2026-10-24T21:36:23.1181816Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1181819Z 2026-10-24T21:36:23.1182024Z src/state/shell-sync.test.ts:99:33 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1182028Z 2026-10-24T21:36:23.1182107Z 99 loadServerConfig: () => Effect.succeed(Option.none()), 2026-10-24T21:36:23.1182157Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1182159Z 2026-10-24T21:36:23.1182370Z src/state/shell-sync.test.ts:101:28 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1182372Z 2026-10-24T21:36:23.1182447Z 101 loadVcsRefs: () => Effect.succeed(Option.none()), 2026-10-24T21:36:23.1182498Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1182500Z 2026-10-24T21:36:23.1182712Z src/state/shell-sync.test.ts:108:21 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1182714Z 2026-10-24T21:36:23.1182777Z 108 load: () => Effect.succeed(Option.none()), 2026-10-24T21:36:23.1182826Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1182830Z 2026-10-24T21:36:23.1183040Z src/state/shell-sync.test.ts:229:26 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1183042Z 2026-10-24T21:36:23.1183113Z 229 loadShell: () => Effect.succeed(Option.none()), 2026-10-24T21:36:23.1183158Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1183160Z 2026-10-24T21:36:23.1183366Z src/state/shell-sync.test.ts:238:27 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1183368Z 2026-10-24T21:36:23.1183445Z 238 loadThread: () => Effect.succeed(Option.none()), 2026-10-24T21:36:23.1183495Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1183497Z 2026-10-24T21:36:23.1183710Z src/state/shell-sync.test.ts:241:33 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1183716Z 2026-10-24T21:36:23.1183794Z 241 loadServerConfig: () => Effect.succeed(Option.none()), 2026-10-24T21:36:23.1183848Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1183850Z 2026-10-24T21:36:23.1184057Z src/state/shell-sync.test.ts:243:28 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1184060Z 2026-10-24T21:36:23.1184131Z 243 loadVcsRefs: () => Effect.succeed(Option.none()), 2026-10-24T21:36:23.1184181Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1184183Z 2026-10-24T21:36:23.1184427Z src/state/shell-sync.test.ts:250:21 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1184430Z 2026-10-24T21:36:23.1184499Z 250 load: () => Effect.succeed(Option.none()), 2026-10-24T21:36:23.1184546Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1184587Z 2026-10-24T21:36:23.1184793Z src/state/shell-sync.test.ts:349:26 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1184795Z 2026-10-24T21:36:23.1184865Z 349 loadShell: () => Effect.succeed(Option.none()), 2026-10-24T21:36:23.1184912Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1184914Z 2026-10-24T21:36:23.1185121Z src/state/shell-sync.test.ts:355:27 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1185123Z 2026-10-24T21:36:23.1185195Z 355 loadThread: () => Effect.succeed(Option.none()), 2026-10-24T21:36:23.1185246Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1185248Z 2026-10-24T21:36:23.1185452Z src/state/shell-sync.test.ts:358:33 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1185456Z 2026-10-24T21:36:23.1185535Z 358 loadServerConfig: () => Effect.succeed(Option.none()), 2026-10-24T21:36:23.1185588Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1185590Z 2026-10-24T21:36:23.1185797Z src/state/shell-sync.test.ts:360:28 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1185799Z 2026-10-24T21:36:23.1185870Z 360 loadVcsRefs: () => Effect.succeed(Option.none()), 2026-10-24T21:36:23.1185916Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1185918Z 2026-10-24T21:36:23.1186132Z src/state/shell-sync.test.ts:367:21 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1186135Z 2026-10-24T21:36:23.1186200Z 367 load: () => Effect.succeed(Option.none()), 2026-10-24T21:36:23.1186246Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1186250Z 2026-10-24T21:36:23.1186457Z src/state/shell-sync.test.ts:446:26 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1186459Z 2026-10-24T21:36:23.1186544Z 446 loadShell: () => Effect.succeed(Option.some(cachedSnapshot)), 2026-10-24T21:36:23.1186592Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1186594Z 2026-10-24T21:36:23.1186803Z src/state/shell-sync.test.ts:448:27 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1186805Z 2026-10-24T21:36:23.1186878Z 448 loadThread: () => Effect.succeed(Option.none()), 2026-10-24T21:36:23.1186924Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1186926Z 2026-10-24T21:36:23.1187135Z src/state/shell-sync.test.ts:451:33 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1187139Z 2026-10-24T21:36:23.1187218Z 451 loadServerConfig: () => Effect.succeed(Option.none()), 2026-10-24T21:36:23.1187269Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1187271Z 2026-10-24T21:36:23.1187480Z src/state/shell-sync.test.ts:453:28 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1187482Z 2026-10-24T21:36:23.1187549Z 453 loadVcsRefs: () => Effect.succeed(Option.none()), 2026-10-24T21:36:23.1187599Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1187601Z 2026-10-24T21:36:23.1187850Z src/state/shell-sync.test.ts:460:21 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1187852Z 2026-10-24T21:36:23.1187927Z 460 load: () => Effect.succeed(Option.some(httpSnapshot)), 2026-10-24T21:36:23.1188019Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1188021Z 2026-10-24T21:36:23.1188308Z src/state/shellSnapshotHttp.ts:98:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ShellSnapshotLoader.load")((prepared) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1188311Z 2026-10-24T21:36:23.1188375Z 98 load: (prepared: PreparedConnection) => 2026-10-24T21:36:23.1188417Z ~~~~ 2026-10-24T21:36:23.1188418Z 2026-10-24T21:36:23.1188770Z src/state/threadHistoryController.ts:52:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadHistoryController.register")((environmentId, threadId, handler) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1188772Z 2026-10-24T21:36:23.1188839Z 52 register: (environmentId, threadId, handler) => 2026-10-24T21:36:23.1188879Z ~~~~~~~~ 2026-10-24T21:36:23.1188881Z 2026-10-24T21:36:23.1189202Z src/state/threadHistoryController.ts:64:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadHistoryController.unregister")((registration) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1189206Z 2026-10-24T21:36:23.1189259Z 64 unregister: (registration) => 2026-10-24T21:36:23.1189303Z ~~~~~~~~~~ 2026-10-24T21:36:23.1189305Z 2026-10-24T21:36:23.1189725Z src/state/threadHistoryController.ts:79:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadHistoryController.loadEarlier")((environmentId, threadId, throughEntryId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1189732Z 2026-10-24T21:36:23.1189811Z 79 loadEarlier: (environmentId, threadId, throughEntryId) => 2026-10-24T21:36:23.1189855Z ~~~~~~~~~~~ 2026-10-24T21:36:23.1189857Z 2026-10-24T21:36:23.1190208Z src/state/threadHistoryController.ts:89:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadHistoryController.reconcilePendingWork")((environmentId, threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1190212Z 2026-10-24T21:36:23.1190309Z 89 reconcilePendingWork: (environmentId, threadId) => 2026-10-24T21:36:23.1190358Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1190364Z 2026-10-24T21:36:23.1190580Z src/state/threads-sync.test.ts:1458:29 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1190582Z 2026-10-24T21:36:23.1190664Z 1458 : { loadCached: Effect.succeed(Option.some(saved!)) }, 2026-10-24T21:36:23.1190719Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1190721Z 2026-10-24T21:36:23.1190973Z src/state/vcsAction.ts:447:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("execute")((input, registry) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1190977Z 2026-10-24T21:36:23.1191057Z 447 execute: (input: RunVcsStackedActionInput, registry) => { 2026-10-24T21:36:23.1191099Z ~~~~~~~ 2026-10-24T21:36:23.1191101Z 2026-10-24T21:36:23.1191103Z 2026-10-24T21:36:23.1191155Z ~/apps/mobile$ tsc --noEmit 2026-10-24T21:36:23.1191205Z ~/infra/relay$ tsc --noEmit 2026-10-24T21:36:23.1191249Z ~/apps/web$ tsc --noEmit 2026-10-24T21:36:23.1191293Z Result (22 files): 2026-10-24T21:36:23.1191336Z - 0 errors 2026-10-24T21:36:23.1191382Z - 0 warnings 2026-10-24T21:36:23.1191421Z - 0 hints 2026-10-24T21:36:23.1191423Z 2026-10-24T21:36:23.1191425Z 2026-10-24T21:36:23.1191476Z ~/apps/desktop$ tsc --noEmit 2026-10-24T21:36:23.1191833Z src/app/DesktopAppActivation.ts:389:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppActivation.complete")((response) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1191836Z 2026-10-24T21:36:23.1191936Z 389 complete: (response) => Effect.sync(() => broker.complete(response)), 2026-10-24T21:36:23.1192037Z ~~~~~~~~ 2026-10-24T21:36:23.1192039Z 2026-10-24T21:36:23.1192249Z src/app/DesktopClerk.test.ts:300:27 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1192251Z 2026-10-24T21:36:23.1192336Z 300 currentMainOrFirst: Effect.succeed(Option.some(window)), 2026-10-24T21:36:23.1192384Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1192386Z 2026-10-24T21:36:23.1192654Z src/app/DesktopObservability.ts:461:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("onSome")(function*(logFile) { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1192656Z 2026-10-24T21:36:23.1192705Z 461 onSome: (logFile) => 2026-10-24T21:36:23.1192744Z ~~~~~~ 2026-10-24T21:36:23.1192746Z 2026-10-24T21:36:23.1193065Z src/app/DesktopObservability.ts:591:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBackendOutputLogFactory.forInstance")((id) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1193069Z 2026-10-24T21:36:23.1193125Z 591 forInstance: (id) => makeForId(id), 2026-10-24T21:36:23.1200483Z ~~~~~~~~~~~ 2026-10-24T21:36:23.1200490Z 2026-10-24T21:36:23.1200734Z src/app/DesktopWebLinks.test.ts:29:31 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1200737Z 2026-10-24T21:36:23.1200822Z 29 currentMainOrFirst: Effect.succeed(Option.some(window)), 2026-10-24T21:36:23.1200879Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1200881Z 2026-10-24T21:36:23.1201158Z src/app/DesktopWebLinks.ts:72:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWebLinks.receive")((url) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1201164Z 2026-10-24T21:36:23.1201211Z 72 receive: (url) => 2026-10-24T21:36:23.1201248Z ~~~~~~~ 2026-10-24T21:36:23.1201250Z 2026-10-24T21:36:23.1201540Z src/app/DesktopWebLinks.ts:77:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWebLinks.setRendererReady")((ready) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1201542Z 2026-10-24T21:36:23.1201597Z 77 setRendererReady: (ready) => 2026-10-24T21:36:23.1201640Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1201642Z 2026-10-24T21:36:23.1201911Z src/backend/DesktopBackendManager.ts:1062:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("onSome")(function*(run) { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1201918Z 2026-10-24T21:36:23.1201961Z 1062 onSome: (run) => 2026-10-24T21:36:23.1202004Z ~~~~~~ 2026-10-24T21:36:23.1202006Z 2026-10-24T21:36:23.1202282Z src/backend/DesktopBackendPool.ts:307:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBackendPool.get")((id) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1202286Z 2026-10-24T21:36:23.1202330Z 307 get: (id) => 2026-10-24T21:36:23.1202367Z ~~~ 2026-10-24T21:36:23.1202369Z 2026-10-24T21:36:23.1202646Z src/backend/DesktopBackendPool.ts:342:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBackendPool.get")((id) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1202648Z 2026-10-24T21:36:23.1202738Z 342 get: (id) => Effect.succeed(Option.fromNullishOr(byId.get(id))), 2026-10-24T21:36:23.1202847Z ~~~ 2026-10-24T21:36:23.1202850Z 2026-10-24T21:36:23.1203131Z src/backend/DesktopBackendPool.ts:345:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBackendPool.register")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1203183Z 2026-10-24T21:36:23.1203305Z 345 register: () => Effect.die("DesktopBackendPool.layerTest does not support register"), 2026-10-24T21:36:23.1203347Z ~~~~~~~~ 2026-10-24T21:36:23.1203349Z 2026-10-24T21:36:23.1203637Z src/backend/DesktopBackendPool.ts:346:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBackendPool.unregister")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1203640Z 2026-10-24T21:36:23.1203766Z 346 unregister: () => Effect.die("DesktopBackendPool.layerTest does not support unregister"), 2026-10-24T21:36:23.1203810Z ~~~~~~~~~~ 2026-10-24T21:36:23.1203814Z 2026-10-24T21:36:23.1204070Z src/electron/ElectronApp.ts:145:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.exit")((code) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1204073Z 2026-10-24T21:36:23.1204116Z 145 exit: (code) => 2026-10-24T21:36:23.1204158Z ~~~~ 2026-10-24T21:36:23.1204160Z 2026-10-24T21:36:23.1204430Z src/electron/ElectronApp.ts:149:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.relaunch")((options) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1204432Z 2026-10-24T21:36:23.1204482Z 149 relaunch: (options) => 2026-10-24T21:36:23.1204519Z ~~~~~~~~ 2026-10-24T21:36:23.1204522Z 2026-10-24T21:36:23.1204792Z src/electron/ElectronApp.ts:153:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.setPath")((name, path) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1204796Z 2026-10-24T21:36:23.1204845Z 153 setPath: (name, path) => 2026-10-24T21:36:23.1204884Z ~~~~~~~ 2026-10-24T21:36:23.1204886Z 2026-10-24T21:36:23.1205148Z src/electron/ElectronApp.ts:157:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.setName")((name) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1205156Z 2026-10-24T21:36:23.1205199Z 157 setName: (name) => 2026-10-24T21:36:23.1205240Z ~~~~~~~ 2026-10-24T21:36:23.1205242Z 2026-10-24T21:36:23.1205537Z src/electron/ElectronApp.ts:161:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.setAboutPanelOptions")((options) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1205539Z 2026-10-24T21:36:23.1205599Z 161 setAboutPanelOptions: (options) => 2026-10-24T21:36:23.1205641Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1205643Z 2026-10-24T21:36:23.1205923Z src/electron/ElectronApp.ts:165:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.setAppUserModelId")((id) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1205925Z 2026-10-24T21:36:23.1205976Z 165 setAppUserModelId: (id) => 2026-10-24T21:36:23.1206020Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1206022Z 2026-10-24T21:36:23.1206340Z src/electron/ElectronApp.ts:170:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.setAsDefaultProtocolClient")((protocol, path, args) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1206342Z 2026-10-24T21:36:23.1206421Z 170 setAsDefaultProtocolClient: (protocol, path, args) => 2026-10-24T21:36:23.1206466Z ~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1206469Z 2026-10-24T21:36:23.1206801Z src/electron/ElectronApp.ts:177:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.setDesktopName")((desktopName) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1206804Z 2026-10-24T21:36:23.1206859Z 177 setDesktopName: (desktopName) => 2026-10-24T21:36:23.1206897Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1206901Z 2026-10-24T21:36:23.1207171Z src/electron/ElectronApp.ts:184:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.setDockIcon")((iconPath) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1207217Z 2026-10-24T21:36:23.1207265Z 184 setDockIcon: (iconPath) => 2026-10-24T21:36:23.1207310Z ~~~~~~~~~~~ 2026-10-24T21:36:23.1207312Z 2026-10-24T21:36:23.1207624Z src/electron/ElectronApp.ts:188:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.appendCommandLineSwitch")((switchName, value) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1207627Z 2026-10-24T21:36:23.1207697Z 188 appendCommandLineSwitch: (switchName, value) => 2026-10-24T21:36:23.1207742Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1207744Z 2026-10-24T21:36:23.1208036Z src/electron/ElectronApp.ts:196:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.onBeforeQuitForUpdate")((listener) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1208040Z 2026-10-24T21:36:23.1208100Z 196 onBeforeQuitForUpdate: (listener) => 2026-10-24T21:36:23.1208143Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1208145Z 2026-10-24T21:36:23.1208439Z src/electron/ElectronApp.ts:206:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.removeCommandLineSwitch")((switchName) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1208444Z 2026-10-24T21:36:23.1208503Z 206 removeCommandLineSwitch: (switchName) => 2026-10-24T21:36:23.1208547Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1208549Z 2026-10-24T21:36:23.1208849Z src/electron/ElectronDialog.ts:169:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronDialog.showMessageBox")((options, owner) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1208851Z 2026-10-24T21:36:23.1208905Z 169 showMessageBox: (options, owner) => 2026-10-24T21:36:23.1208945Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1208947Z 2026-10-24T21:36:23.1209239Z src/electron/ElectronDialog.ts:185:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronDialog.showErrorBox")((title, content) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1209242Z 2026-10-24T21:36:23.1209294Z 185 showErrorBox: (title, content) => 2026-10-24T21:36:23.1209334Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1209336Z 2026-10-24T21:36:23.1209627Z src/electron/ElectronMenu.ts:193:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronMenu.setApplicationMenu")((template) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1209629Z 2026-10-24T21:36:23.1209680Z 193 setApplicationMenu: (template) => 2026-10-24T21:36:23.1209725Z ~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1209727Z 2026-10-24T21:36:23.1210002Z src/electron/ElectronMenu.ts:207:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronMenu.popupTemplate")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1210005Z 2026-10-24T21:36:23.1210056Z 207 popupTemplate: (input) => 2026-10-24T21:36:23.1210095Z ~~~~~~~~~~~~~ 2026-10-24T21:36:23.1210100Z 2026-10-24T21:36:23.1210399Z src/electron/ElectronMenu.ts:225:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronMenu.showContextMenu")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1210401Z 2026-10-24T21:36:23.1210453Z 225 showContextMenu: (input) => 2026-10-24T21:36:23.1210543Z ~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1210546Z 2026-10-24T21:36:23.1210885Z src/electron/ElectronPowerMonitor.ts:82:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronPowerMonitor.getSystemIdleState")((idleThresholdSeconds) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1210932Z 2026-10-24T21:36:23.1210996Z 82 getSystemIdleState: (idleThresholdSeconds) => 2026-10-24T21:36:23.1211037Z ~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1211040Z 2026-10-24T21:36:23.1211340Z src/electron/ElectronSafeStorage.ts:77:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronSafeStorage.encryptString")((value) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1211342Z 2026-10-24T21:36:23.1211392Z 77 encryptString: (value) => 2026-10-24T21:36:23.1211436Z ~~~~~~~~~~~~~ 2026-10-24T21:36:23.1211438Z 2026-10-24T21:36:23.1211741Z src/electron/ElectronSafeStorage.ts:82:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronSafeStorage.decryptString")((value) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1211743Z 2026-10-24T21:36:23.1211792Z 82 decryptString: (value) => 2026-10-24T21:36:23.1211832Z ~~~~~~~~~~~~~ 2026-10-24T21:36:23.1211836Z 2026-10-24T21:36:23.1212112Z src/electron/ElectronShell.ts:68:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronShell.openExternal")((rawUrl) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1212114Z 2026-10-24T21:36:23.1212163Z 68 openExternal: (rawUrl) => 2026-10-24T21:36:23.1212200Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1212202Z 2026-10-24T21:36:23.1212491Z src/electron/ElectronShell.ts:79:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronShell.openSystemSettings")((pane) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1212494Z 2026-10-24T21:36:23.1212546Z 79 openSystemSettings: (pane) => 2026-10-24T21:36:23.1212588Z ~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1212590Z 2026-10-24T21:36:23.1212852Z src/electron/ElectronShell.ts:86:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronShell.copyText")((text) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1212860Z 2026-10-24T21:36:23.1212903Z 86 copyText: (text) => 2026-10-24T21:36:23.1212944Z ~~~~~~~~ 2026-10-24T21:36:23.1212946Z 2026-10-24T21:36:23.1213216Z src/electron/ElectronTheme.ts:34:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronTheme.setSource")((theme) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1213218Z 2026-10-24T21:36:23.1213263Z 34 setSource: (theme) => 2026-10-24T21:36:23.1213300Z ~~~~~~~~~ 2026-10-24T21:36:23.1213302Z 2026-10-24T21:36:23.1213577Z src/electron/ElectronTheme.ts:41:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronTheme.onUpdated")((listener) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1213580Z 2026-10-24T21:36:23.1213628Z 41 onUpdated: (listener) => 2026-10-24T21:36:23.1213670Z ~~~~~~~~~ 2026-10-24T21:36:23.1213674Z 2026-10-24T21:36:23.1213961Z src/electron/ElectronUpdater.ts:85:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronUpdater.setFeedURL")((options) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1213964Z 2026-10-24T21:36:23.1214009Z 85 setFeedURL: (options) => 2026-10-24T21:36:23.1214050Z ~~~~~~~~~~ 2026-10-24T21:36:23.1214052Z 2026-10-24T21:36:23.1214340Z src/electron/ElectronUpdater.ts:90:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronUpdater.setAutoDownload")((value) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1214342Z 2026-10-24T21:36:23.1214439Z 90 setAutoDownload: (value) => 2026-10-24T21:36:23.1214477Z ~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1214484Z 2026-10-24T21:36:23.1214787Z src/electron/ElectronUpdater.ts:95:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronUpdater.setAutoInstallOnAppQuit")((value) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1214836Z 2026-10-24T21:36:23.1214893Z 95 setAutoInstallOnAppQuit: (value) => 2026-10-24T21:36:23.1214937Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1214939Z 2026-10-24T21:36:23.1215220Z src/electron/ElectronUpdater.ts:100:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronUpdater.setChannel")((channel) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1215222Z 2026-10-24T21:36:23.1215267Z 100 setChannel: (channel) => 2026-10-24T21:36:23.1215307Z ~~~~~~~~~~ 2026-10-24T21:36:23.1215309Z 2026-10-24T21:36:23.1215606Z src/electron/ElectronUpdater.ts:105:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronUpdater.setAllowPrerelease")((value) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1215608Z 2026-10-24T21:36:23.1215661Z 105 setAllowPrerelease: (value) => 2026-10-24T21:36:23.1215706Z ~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1215708Z 2026-10-24T21:36:23.1216002Z src/electron/ElectronUpdater.ts:111:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronUpdater.setAllowDowngrade")((value) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1216004Z 2026-10-24T21:36:23.1216054Z 111 setAllowDowngrade: (value) => 2026-10-24T21:36:23.1216097Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1216100Z 2026-10-24T21:36:23.1216394Z src/electron/ElectronUpdater.ts:116:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronUpdater.setFullChangelog")((value) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1216396Z 2026-10-24T21:36:23.1216447Z 116 setFullChangelog: (value) => 2026-10-24T21:36:23.1216487Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1216489Z 2026-10-24T21:36:23.1216807Z src/electron/ElectronUpdater.ts:121:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronUpdater.setDisableDifferentialDownload")((value) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1216811Z 2026-10-24T21:36:23.1216878Z 121 setDisableDifferentialDownload: (value) => 2026-10-24T21:36:23.1216924Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1216926Z 2026-10-24T21:36:23.1217211Z src/electron/ElectronUpdater.ts:140:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronUpdater.quitAndInstall")((_) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1217213Z 2026-10-24T21:36:23.1217283Z 140 quitAndInstall: ({ isSilent, isForceRunAfter }) => 2026-10-24T21:36:23.1217324Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1217327Z 2026-10-24T21:36:23.1217611Z src/electron/ElectronUpdater.ts:154:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronUpdater.on")((eventName, listener) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1217615Z 2026-10-24T21:36:23.1217665Z 154 on: (eventName, listener) => { 2026-10-24T21:36:23.1217702Z ~~ 2026-10-24T21:36:23.1217704Z 2026-10-24T21:36:23.1217975Z src/electron/ElectronWindow.ts:211:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronWindow.create")((options) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1217977Z 2026-10-24T21:36:23.1218025Z 211 create: (options) => { 2026-10-24T21:36:23.1218065Z ~~~~~~ 2026-10-24T21:36:23.1218067Z 2026-10-24T21:36:23.1218383Z src/electron/ElectronWindow.ts:243:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronWindow.setMain")((window) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1218386Z 2026-10-24T21:36:23.1218474Z 243 setMain: (window) => Ref.set(mainWindowRef, Option.some(window)), 2026-10-24T21:36:23.1218568Z ~~~~~~~ 2026-10-24T21:36:23.1218570Z 2026-10-24T21:36:23.1218846Z src/electron/ElectronWindow.ts:244:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronWindow.clearMain")((window) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1218849Z 2026-10-24T21:36:23.1218895Z 244 clearMain: (window) => 2026-10-24T21:36:23.1218935Z ~~~~~~~~~ 2026-10-24T21:36:23.1218937Z 2026-10-24T21:36:23.1219219Z src/electron/ElectronWindow.ts:254:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronWindow.prepareReveal")((window) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1219223Z 2026-10-24T21:36:23.1219273Z 254 prepareReveal: (window) => 2026-10-24T21:36:23.1219314Z ~~~~~~~~~~~~~ 2026-10-24T21:36:23.1219317Z 2026-10-24T21:36:23.1219586Z src/electron/ElectronWindow.ts:264:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronWindow.reveal")((window) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1219590Z 2026-10-24T21:36:23.1219636Z 264 reveal: (window) => 2026-10-24T21:36:23.1219675Z ~~~~~~ 2026-10-24T21:36:23.1219677Z 2026-10-24T21:36:23.1220009Z src/settings/DesktopAppSettings.ts:526:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setMainWindowBounds")((bounds, isMaximized) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1220011Z 2026-10-24T21:36:23.1220080Z 526 setMainWindowBounds: (bounds, isMaximized) => 2026-10-24T21:36:23.1220124Z ~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1220127Z 2026-10-24T21:36:23.1220474Z src/settings/DesktopAppSettings.ts:538:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setServerExposureMode")((mode) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1220480Z 2026-10-24T21:36:23.1220535Z 538 setServerExposureMode: (mode) => 2026-10-24T21:36:23.1220585Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1220587Z 2026-10-24T21:36:23.1220893Z src/settings/DesktopAppSettings.ts:542:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setTailscaleServe")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1220895Z 2026-10-24T21:36:23.1220947Z 542 setTailscaleServe: (input) => 2026-10-24T21:36:23.1220988Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1220991Z 2026-10-24T21:36:23.1221298Z src/settings/DesktopAppSettings.ts:546:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setUpdateChannel")((channel) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1221301Z 2026-10-24T21:36:23.1221354Z 546 setUpdateChannel: (channel) => 2026-10-24T21:36:23.1221396Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1221400Z 2026-10-24T21:36:23.1221712Z src/settings/DesktopAppSettings.ts:550:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setWslBackendEnabled")((enabled) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1221714Z 2026-10-24T21:36:23.1221767Z 550 setWslBackendEnabled: (enabled) => 2026-10-24T21:36:23.1221811Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1221813Z 2026-10-24T21:36:23.1222108Z src/settings/DesktopAppSettings.ts:554:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setWslDistro")((distro) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1222152Z 2026-10-24T21:36:23.1222203Z 554 setWslDistro: (distro) => 2026-10-24T21:36:23.1222243Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1222245Z 2026-10-24T21:36:23.1222536Z src/settings/DesktopAppSettings.ts:560:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setWslOnly")((enabled) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1222582Z 2026-10-24T21:36:23.1222631Z 560 setWslOnly: (enabled) => 2026-10-24T21:36:23.1222673Z ~~~~~~~~~~ 2026-10-24T21:36:23.1222675Z 2026-10-24T21:36:23.1222999Z src/settings/DesktopAppSettings.ts:564:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setLocalEnvironmentEnabled")((enabled) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1223001Z 2026-10-24T21:36:23.1223066Z 564 setLocalEnvironmentEnabled: (enabled) => 2026-10-24T21:36:23.1223112Z ~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1223115Z 2026-10-24T21:36:23.1223444Z src/settings/DesktopAppSettings.ts:599:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setMainWindowBounds")((bounds, isMaximized) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1223448Z 2026-10-24T21:36:23.1223518Z 599 setMainWindowBounds: (bounds, isMaximized) => 2026-10-24T21:36:23.1223564Z ~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1223566Z 2026-10-24T21:36:23.1223876Z src/settings/DesktopAppSettings.ts:601:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setServerExposureMode")((mode) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1223878Z 2026-10-24T21:36:23.1223933Z 601 setServerExposureMode: (mode) => 2026-10-24T21:36:23.1223976Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1223978Z 2026-10-24T21:36:23.1224286Z src/settings/DesktopAppSettings.ts:603:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setTailscaleServe")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1224288Z 2026-10-24T21:36:23.1224411Z 603 setTailscaleServe: (input) => update((settings) => setTailscaleServe(settings, input)), 2026-10-24T21:36:23.1224453Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1224458Z 2026-10-24T21:36:23.1224763Z src/settings/DesktopAppSettings.ts:604:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setUpdateChannel")((channel) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1224765Z 2026-10-24T21:36:23.1224889Z 604 setUpdateChannel: (channel) => update((settings) => setUpdateChannel(settings, channel)), 2026-10-24T21:36:23.1224932Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1224934Z 2026-10-24T21:36:23.1225250Z src/settings/DesktopAppSettings.ts:605:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setWslBackendEnabled")((enabled) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1225252Z 2026-10-24T21:36:23.1225310Z 605 setWslBackendEnabled: (enabled) => 2026-10-24T21:36:23.1225355Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1225357Z 2026-10-24T21:36:23.1225655Z src/settings/DesktopAppSettings.ts:607:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setWslDistro")((distro) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1225657Z 2026-10-24T21:36:23.1225767Z 607 setWslDistro: (distro) => update((settings) => setWslDistro(settings, distro)), 2026-10-24T21:36:23.1225811Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1225813Z 2026-10-24T21:36:23.1226149Z src/settings/DesktopAppSettings.ts:608:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setWslOnly")((enabled) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1226154Z 2026-10-24T21:36:23.1226256Z 608 setWslOnly: (enabled) => update((settings) => setWslOnly(settings, enabled)), 2026-10-24T21:36:23.1226298Z ~~~~~~~~~~ 2026-10-24T21:36:23.1226346Z 2026-10-24T21:36:23.1226673Z src/settings/DesktopAppSettings.ts:609:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setLocalEnvironmentEnabled")((enabled) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1226675Z 2026-10-24T21:36:23.1226741Z 609 setLocalEnvironmentEnabled: (enabled) => 2026-10-24T21:36:23.1226785Z ~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1226790Z 2026-10-24T21:36:23.1227086Z src/settings/DesktopClientSettings.ts:197:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopClientSettings.set")((settings) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1227088Z 2026-10-24T21:36:23.1227136Z 197 set: (settings) => 2026-10-24T21:36:23.1227176Z ~~~ 2026-10-24T21:36:23.1227178Z 2026-10-24T21:36:23.1227469Z src/settings/DesktopClientSettings.ts:231:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopClientSettings.set")((settings) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1227473Z 2026-10-24T21:36:23.1227559Z 231 set: (settings) => Ref.set(settingsRef, Option.some(settings)), 2026-10-24T21:36:23.1227600Z ~~~ 2026-10-24T21:36:23.1227602Z 2026-10-24T21:36:23.1227921Z src/snapShot/DesktopSnapShot.ts:1729:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopSnapShot.setAnimationDestination")((id, destination) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1227923Z 2026-10-24T21:36:23.1227995Z 1729 setAnimationDestination: (id, destination) => 2026-10-24T21:36:23.1228040Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1228043Z 2026-10-24T21:36:23.1228331Z src/snapShot/DesktopSnapShot.ts:1740:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopSnapShot.dismissAnimation")((id) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1228340Z 2026-10-24T21:36:23.1228387Z 1740 dismissAnimation: (id) => 2026-10-24T21:36:23.1228430Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1228432Z 2026-10-24T21:36:23.1228712Z src/snapShot/DesktopSnapShot.ts:1745:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopSnapShot.acknowledge")((id) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1228714Z 2026-10-24T21:36:23.1228762Z 1745 acknowledge: (id) => 2026-10-24T21:36:23.1228802Z ~~~~~~~~~~~ 2026-10-24T21:36:23.1228804Z 2026-10-24T21:36:23.1229109Z src/ssh/DesktopSshEnvironment.ts:136:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopSshEnvironment.discoverHosts")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1229111Z 2026-10-24T21:36:23.1229159Z 136 discoverHosts: (input) => 2026-10-24T21:36:23.1229202Z ~~~~~~~~~~~~~ 2026-10-24T21:36:23.1229204Z 2026-10-24T21:36:23.1229588Z src/ssh/DesktopSshEnvironment.ts:141:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopSshEnvironment.resolveHost")((alias) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1229591Z 2026-10-24T21:36:23.1229636Z 141 resolveHost: (alias) => 2026-10-24T21:36:23.1229676Z ~~~~~~~~~~~ 2026-10-24T21:36:23.1229678Z 2026-10-24T21:36:23.1230074Z src/ssh/DesktopSshEnvironment.ts:146:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopSshEnvironment.ensureEnvironment")((target, ensureOptions) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1230077Z 2026-10-24T21:36:23.1230144Z 146 ensureEnvironment: (target, ensureOptions) => 2026-10-24T21:36:23.1230184Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1230189Z 2026-10-24T21:36:23.1230530Z src/ssh/DesktopSshEnvironment.ts:154:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopSshEnvironment.disconnectEnvironment")((target) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1230585Z 2026-10-24T21:36:23.1230640Z 154 disconnectEnvironment: (target) => 2026-10-24T21:36:23.1230681Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1230684Z 2026-10-24T21:36:23.1230993Z src/updates/DesktopUpdates.ts:1171:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopUpdates.installPrepared")((expectedVersion) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1230995Z 2026-10-24T21:36:23.1231121Z 1171 installPrepared: (expectedVersion) => installWithExpectedVersion(expectedVersion), 2026-10-24T21:36:23.1231163Z ~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1231165Z 2026-10-24T21:36:23.1231450Z src/wsl/DesktopWslEnvironment.ts:1101:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.preWarm")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1231454Z 2026-10-24T21:36:23.1231505Z 1101 preWarm: () => Effect.void, 2026-10-24T21:36:23.1231546Z ~~~~~~~ 2026-10-24T21:36:23.1231548Z 2026-10-24T21:36:23.1231875Z src/wsl/DesktopWslEnvironment.ts:1102:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.windowsToWslPath")((distro, windowsPath) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1231882Z 2026-10-24T21:36:23.1231945Z 1102 windowsToWslPath: (distro, windowsPath) => 2026-10-24T21:36:23.1231988Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1231992Z 2026-10-24T21:36:23.1232292Z src/wsl/DesktopWslEnvironment.ts:1104:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.getUserHome")((distro) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1232294Z 2026-10-24T21:36:23.1232430Z 1104 getUserHome: (distro) => Effect.succeed(stub.getUserHome?.(distro) ?? Option.none()), 2026-10-24T21:36:23.1232470Z ~~~~~~~~~~~ 2026-10-24T21:36:23.1232472Z 2026-10-24T21:36:23.1232770Z src/wsl/DesktopWslEnvironment.ts:1105:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.getDistroIp")((distro) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1232772Z 2026-10-24T21:36:23.1232903Z 1105 getDistroIp: (distro) => Effect.succeed(stub.getDistroIp?.(distro) ?? Option.none()), 2026-10-24T21:36:23.1232943Z ~~~~~~~~~~~ 2026-10-24T21:36:23.1232945Z 2026-10-24T21:36:23.1233265Z src/wsl/DesktopWslEnvironment.ts:1106:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.prepareRuntime")((distro, archive) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1233268Z 2026-10-24T21:36:23.1233326Z 1106 prepareRuntime: (distro, archive) => 2026-10-24T21:36:23.1233368Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1233370Z 2026-10-24T21:36:23.1233688Z src/wsl/DesktopWslEnvironment.ts:1113:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.pruneRuntimes")((distro, runtimeId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1233691Z 2026-10-24T21:36:23.1233818Z 1113 pruneRuntimes: (distro, runtimeId) => stub.pruneRuntimes?.(distro, runtimeId) ?? Effect.void, 2026-10-24T21:36:23.1233862Z ~~~~~~~~~~~~~ 2026-10-24T21:36:23.1233864Z 2026-10-24T21:36:23.1234234Z src/wsl/DesktopWslEnvironment.ts:1114:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.invalidateRuntime")((distro, runtimeId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1234241Z 2026-10-24T21:36:23.1234303Z 1114 invalidateRuntime: (distro, runtimeId) => 2026-10-24T21:36:23.1234391Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1234393Z 2026-10-24T21:36:23.1234715Z src/wsl/DesktopWslEnvironment.ts:1116:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.probeRuntime")((distro, linuxAppRoot) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1234717Z 2026-10-24T21:36:23.1234778Z 1116 probeRuntime: (distro, linuxAppRoot) => 2026-10-24T21:36:23.1234817Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1234819Z 2026-10-24T21:36:23.1235163Z src/wsl/DesktopWslEnvironment.ts:1120:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.ensureNodePty")((distro, linuxAppRoot, options) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1235165Z 2026-10-24T21:36:23.1235241Z 1120 ensureNodePty: (distro, linuxAppRoot, options) => 2026-10-24T21:36:23.1235281Z ~~~~~~~~~~~~~ 2026-10-24T21:36:23.1235285Z 2026-10-24T21:36:23.1235576Z src/wsl/DesktopWslEnvironment.ts:1187:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.preWarm")((distro) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1235579Z 2026-10-24T21:36:23.1235624Z 1187 preWarm: (distro) => 2026-10-24T21:36:23.1235663Z ~~~~~~~ 2026-10-24T21:36:23.1235665Z 2026-10-24T21:36:23.1235982Z src/wsl/DesktopWslEnvironment.ts:1192:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.prepareRuntime")((distro, archive) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1235986Z 2026-10-24T21:36:23.1236044Z 1192 prepareRuntime: (distro, archive) => 2026-10-24T21:36:23.1236086Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1236088Z 2026-10-24T21:36:23.1236406Z src/wsl/DesktopWslEnvironment.ts:1196:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.pruneRuntimes")((distro, runtimeId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1236410Z 2026-10-24T21:36:23.1236470Z 1196 pruneRuntimes: (distro, runtimeId) => 2026-10-24T21:36:23.1236512Z ~~~~~~~~~~~~~ 2026-10-24T21:36:23.1236514Z 2026-10-24T21:36:23.1236844Z src/wsl/DesktopWslEnvironment.ts:1200:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.invalidateRuntime")((distro, runtimeId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1236846Z 2026-10-24T21:36:23.1236911Z 1200 invalidateRuntime: (distro, runtimeId) => 2026-10-24T21:36:23.1236951Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1236953Z 2026-10-24T21:36:23.1237277Z src/wsl/DesktopWslEnvironment.ts:1204:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.probeRuntime")((distro, linuxAppRoot) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1237281Z 2026-10-24T21:36:23.1237341Z 1204 probeRuntime: (distro, linuxAppRoot) => 2026-10-24T21:36:23.1237382Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1237384Z 2026-10-24T21:36:23.1237723Z src/wsl/DesktopWslEnvironment.ts:1208:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.ensureNodePty")((distro, linuxAppRoot, options) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1237726Z 2026-10-24T21:36:23.1237796Z 1208 ensureNodePty: (distro, linuxAppRoot, options) => 2026-10-24T21:36:23.1237840Z ~~~~~~~~~~~~~ 2026-10-24T21:36:23.1237890Z 2026-10-24T21:36:23.1237892Z 2026-10-24T21:36:23.1238190Z src/agentActivity/ApnsDeliveryQueue.ts:220:11 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ApnsDeliveryQueueSender.send")((body) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1238241Z 2026-10-24T21:36:23.1238294Z 220 send: (body) => 2026-10-24T21:36:23.1238334Z ~~~~ 2026-10-24T21:36:23.1238336Z 2026-10-24T21:36:23.1238622Z src/agentActivity/FcmDeliveryQueueConsumer.ts:12:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("onFailure")(function*(error) { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1238624Z 2026-10-24T21:36:23.1238671Z 12 onFailure: (error) => 2026-10-24T21:36:23.1238710Z ~~~~~~~~~ 2026-10-24T21:36:23.1238712Z 2026-10-24T21:36:23.1239023Z src/environments/CloudflareApiPause.ts:64:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("CloudflareApiPause.pauseUntil")((untilMillis) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1239025Z 2026-10-24T21:36:23.1239077Z 64 pauseUntil: (untilMillis) => 2026-10-24T21:36:23.1239116Z ~~~~~~~~~~ 2026-10-24T21:36:23.1239118Z 2026-10-24T21:36:23.1239347Z src/http/Api.ts:198:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("onNone")(function*() { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1239349Z 2026-10-24T21:36:23.1239394Z 198 onNone: () => 2026-10-24T21:36:23.1239434Z ~~~~~~ 2026-10-24T21:36:23.1239437Z 2026-10-24T21:36:23.1239692Z src/previewTunnelSweep.test.ts:53:11 - suggestion TS377124: `Effect.provideService` provides this inline single-service layer directly. effect(provideLayerSucceedToProvideService) 2026-10-24T21:36:23.1239694Z 2026-10-24T21:36:23.1239809Z 53 }).pipe(Effect.provide(Layer.succeed(HttpClient.HttpClient, cloudflare.client))); 2026-10-24T21:36:23.1239858Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1239860Z 2026-10-24T21:36:23.1240133Z src/worker.ts:92:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("HttpPlatform.HttpPlatform.fileResponse")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1240137Z 2026-10-24T21:36:23.1240240Z 92 fileResponse: () => Effect.die("Relay API does not serve filesystem responses"), 2026-10-24T21:36:23.1240306Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1240308Z 2026-10-24T21:36:23.1240588Z src/worker.ts:93:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("HttpPlatform.HttpPlatform.fileWebResponse")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1240590Z 2026-10-24T21:36:23.1240692Z 93 fileWebResponse: () => Effect.die("Relay API does not serve file responses"), 2026-10-24T21:36:23.1240731Z ~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1240735Z 2026-10-24T21:36:23.1240980Z src/worker.ts:242:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("HookInbox.HookInbox.hold")((_) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1240983Z 2026-10-24T21:36:23.1241050Z 242 hold: ({ endpointKey, baseUrl, hook }) => 2026-10-24T21:36:23.1241093Z ~~~~ 2026-10-24T21:36:23.1241095Z 2026-10-24T21:36:23.1241340Z src/worker.ts:244:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("HookInbox.HookInbox.wake")((_) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1241342Z 2026-10-24T21:36:23.1241396Z 244 wake: ({ endpointKey, baseUrl }) => 2026-10-24T21:36:23.1241436Z ~~~~ 2026-10-24T21:36:23.1241438Z 2026-10-24T21:36:23.1241685Z src/worker.ts:246:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("HookInbox.HookInbox.clear")((_) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1241687Z 2026-10-24T21:36:23.1241790Z 246 clear: ({ endpointKey }) => 2026-10-24T21:36:23.1241851Z ~~~~~ 2026-10-24T21:36:23.1241853Z 2026-10-24T21:36:23.1242162Z src/worker.ts:275:15 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("FcmDeliveryQueueSender.FcmDeliveryQueueSender.send")((body) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1242217Z 2026-10-24T21:36:23.1242265Z 275 send: (body) => 2026-10-24T21:36:23.1242304Z ~~~~ 2026-10-24T21:36:23.1242306Z 2026-10-24T21:36:23.1242308Z 2026-10-24T21:36:23.1242310Z 2026-10-24T21:36:23.1242634Z src/connection/platform.ts:820:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.EnvironmentOwnedDataCleanup.clear")((environmentId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1242636Z 2026-10-24T21:36:23.1242684Z 820 clear: (environmentId) => 2026-10-24T21:36:23.1242725Z ~~~~~ 2026-10-24T21:36:23.1242727Z 2026-10-24T21:36:23.1243015Z src/connection/platform.ts:830:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("EnvironmentRpcRequestObserver.observe")((_) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1243019Z 2026-10-24T21:36:23.1243100Z 830 observe: ({ environmentId, environmentLabel, method }) => 2026-10-24T21:36:23.1243140Z ~~~~~~~ 2026-10-24T21:36:23.1243142Z 2026-10-24T21:36:23.1243439Z src/connection/storage.ts:551:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("PullRequestRoutingPermissions.get")((entry) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1243441Z 2026-10-24T21:36:23.1243487Z 551 get: (entry) => 2026-10-24T21:36:23.1243527Z ~~~ 2026-10-24T21:36:23.1243529Z 2026-10-24T21:36:23.1243836Z src/connection/storage.ts:578:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("PullRequestRoutingPermissions.set")((entry, permission) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1243839Z 2026-10-24T21:36:23.1243890Z 578 set: (entry, permission) => { 2026-10-24T21:36:23.1243927Z ~~~ 2026-10-24T21:36:23.1243932Z 2026-10-24T21:36:23.1244234Z src/connection/storage.ts:598:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("PullRequestRoutingPermissions.forget")((environmentId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1244237Z 2026-10-24T21:36:23.1244316Z 598 forget: (environmentId) => write(environmentId, null), 2026-10-24T21:36:23.1244356Z ~~~~~~ 2026-10-24T21:36:23.1244358Z 2026-10-24T21:36:23.1244695Z src/connection/storage.ts:645:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.ConnectionRegistrationStore.register")((registration, routes) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1244699Z 2026-10-24T21:36:23.1244753Z 645 register: (registration, routes) => 2026-10-24T21:36:23.1244793Z ~~~~~~~~ 2026-10-24T21:36:23.1244795Z 2026-10-24T21:36:23.1245136Z src/connection/storage.ts:649:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.ConnectionRegistrationStore.setRoutes")((environmentId, routes) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1245140Z 2026-10-24T21:36:23.1245201Z 649 setRoutes: (environmentId, routes) => 2026-10-24T21:36:23.1245241Z ~~~~~~~~~ 2026-10-24T21:36:23.1245243Z 2026-10-24T21:36:23.1245562Z src/connection/storage.ts:653:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.ConnectionRegistrationStore.remove")((environmentId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1245566Z 2026-10-24T21:36:23.1245614Z 653 remove: (environmentId) => 2026-10-24T21:36:23.1245702Z ~~~~~~ 2026-10-24T21:36:23.1245704Z 2026-10-24T21:36:23.1246046Z src/connection/storage.ts:657:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.ConnectionRegistrationStore.setEnabled")((environmentId, enabled) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1246092Z 2026-10-24T21:36:23.1246154Z 657 setEnabled: (environmentId, enabled) => 2026-10-24T21:36:23.1246194Z ~~~~~~~~~~ 2026-10-24T21:36:23.1246196Z 2026-10-24T21:36:23.1246512Z src/connection/storage.ts:734:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.EnvironmentCacheStore.loadShell")((environmentId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1246515Z 2026-10-24T21:36:23.1246566Z 734 loadShell: (environmentId) => 2026-10-24T21:36:23.1246607Z ~~~~~~~~~ 2026-10-24T21:36:23.1246609Z 2026-10-24T21:36:23.1246939Z src/connection/storage.ts:770:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.EnvironmentCacheStore.loadServerConfig")((environmentId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1246942Z 2026-10-24T21:36:23.1246998Z 770 loadServerConfig: (environmentId) => 2026-10-24T21:36:23.1247044Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1247046Z 2026-10-24T21:36:23.1247376Z src/connection/storage.ts:804:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.EnvironmentCacheStore.loadThread")((environmentId, threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1247378Z 2026-10-24T21:36:23.1247438Z 804 loadThread: (environmentId, threadId) => 2026-10-24T21:36:23.1247481Z ~~~~~~~~~~ 2026-10-24T21:36:23.1247483Z 2026-10-24T21:36:23.1247808Z src/connection/storage.ts:853:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.EnvironmentCacheStore.loadVcsRefs")((environmentId, cwd) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1247810Z 2026-10-24T21:36:23.1247866Z 853 loadVcsRefs: (environmentId, cwd) => 2026-10-24T21:36:23.1247911Z ~~~~~~~~~~~ 2026-10-24T21:36:23.1247913Z 2026-10-24T21:36:23.1248246Z src/connection/storage.ts:895:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.EnvironmentCacheStore.removeVcsRefs")((environmentId, cwd) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1248248Z 2026-10-24T21:36:23.1248306Z 895 removeVcsRefs: (environmentId, cwd) => 2026-10-24T21:36:23.1248346Z ~~~~~~~~~~~~~ 2026-10-24T21:36:23.1248348Z 2026-10-24T21:36:23.1248668Z src/connection/storage.ts:901:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.EnvironmentCacheStore.clearVcsRefs")((environmentId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1248672Z 2026-10-24T21:36:23.1248725Z 901 clearVcsRefs: (environmentId) => 2026-10-24T21:36:23.1248767Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1248770Z 2026-10-24T21:36:23.1249106Z src/connection/storage.ts:907:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.EnvironmentCacheStore.removeThread")((environmentId, threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1249110Z 2026-10-24T21:36:23.1249171Z 907 removeThread: (environmentId, threadId) => 2026-10-24T21:36:23.1249213Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1249215Z 2026-10-24T21:36:23.1249524Z src/connection/storage.ts:913:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.EnvironmentCacheStore.clear")((environmentId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1249527Z 2026-10-24T21:36:23.1249575Z 913 clear: (environmentId) => 2026-10-24T21:36:23.1249654Z ~~~~~ 2026-10-24T21:36:23.1249659Z 2026-10-24T21:36:23.1249661Z 2026-10-24T21:36:23.1249709Z ~/apps/server$ tsc --noEmit 2026-10-24T21:36:23.1249950Z scripts/acp-mock-agent.ts:941:16 - suggestion TS377015: This expression contains chained `pipe` calls that can be simplified to a single `pipe` call. effect(unnecessaryPipeChain) 2026-10-24T21:36:23.1249996Z 2026-10-24T21:36:23.1250053Z 941 yield* Effect.sleep("1200 millis") 2026-10-24T21:36:23.1250104Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1250145Z 942 .pipe( 2026-10-24T21:36:23.1250184Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1250224Z ... 2026-10-24T21:36:23.1250261Z 954 ) 2026-10-24T21:36:23.1250331Z ~~~~~~~~~~~ 2026-10-24T21:36:23.1250383Z 955 .pipe(Effect.forkDetach); 2026-10-24T21:36:23.1250430Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1250432Z 2026-10-24T21:36:23.1250725Z scripts/record-codex-app-server-replay-fixture.ts:1175:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("logger")((event) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1250730Z 2026-10-24T21:36:23.1250774Z 1175 logger: (event) => { 2026-10-24T21:36:23.1250814Z ~~~~~~ 2026-10-24T21:36:23.1250816Z 2026-10-24T21:36:23.1251223Z scripts/record-grok-acp-replay-fixture.ts:376:38 - suggestion TS377112: This input is already assignable to the schema's Encoded type. Use `decodeSync` to preserve compile-time type checking instead of discarding the input type through `decodeUnknownSync`. effect(preferTypedSchemaDecoder) 2026-10-24T21:36:23.1251226Z 2026-10-24T21:36:23.1251330Z 376 const DEFAULT_GROK_SETTINGS = Schema.decodeUnknownSync(GrokSettings)({}); 2026-10-24T21:36:23.1251384Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1251388Z 2026-10-24T21:36:23.1251774Z src/assets/AssetAccess.test.ts:975:42 - suggestion TS377112: This input is already assignable to the schema's Encoded type. Use `decodeEffect` to preserve compile-time type checking instead of discarding the input type through `decodeUnknownEffect`. effect(preferTypedSchemaDecoder) 2026-10-24T21:36:23.1251777Z 2026-10-24T21:36:23.1251886Z 975 const { resource } = yield* Schema.decodeUnknownEffect(AssetCreateUrlInput)({ 2026-10-24T21:36:23.1251949Z ~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1251951Z 2026-10-24T21:36:23.1252234Z src/auth/EnvironmentAuth.ts:1346:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("EnvironmentAuth.getDescriptor")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1252237Z 2026-10-24T21:36:23.1252284Z 1346 getDescriptor: () => 2026-10-24T21:36:23.1252322Z ~~~~~~~~~~~~~ 2026-10-24T21:36:23.1252324Z 2026-10-24T21:36:23.1252627Z src/auth/EnvironmentAuthPolicy.ts:55:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("EnvironmentAuthPolicy.getDescriptor")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1252630Z 2026-10-24T21:36:23.1252676Z 55 getDescriptor: () => 2026-10-24T21:36:23.1252719Z ~~~~~~~~~~~~~ 2026-10-24T21:36:23.1252721Z 2026-10-24T21:36:23.1253033Z src/auth/McpOAuth.ts:540:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("McpHttpServer.McpClientAuthenticator.authenticate")((request) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1253040Z 2026-10-24T21:36:23.1253087Z 540 authenticate: (request) => 2026-10-24T21:36:23.1253127Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1253129Z 2026-10-24T21:36:23.1253368Z src/cli/thread.ts:468:11 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-24T21:36:23.1253370Z 2026-10-24T21:36:23.1253423Z 468 : Effect.succeed(undefined), 2026-10-24T21:36:23.1253511Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1253513Z 2026-10-24T21:36:23.1253788Z src/cloud/CliTokenManager.ts:328:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("HttpClientError")(function*(cause) { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1253832Z 2026-10-24T21:36:23.1253884Z 328 HttpClientError: (cause) => 2026-10-24T21:36:23.1253926Z ~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1253928Z 2026-10-24T21:36:23.1254160Z src/cloud/CloudLink.lifecycle.test.ts:166:21 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1254162Z 2026-10-24T21:36:23.1254225Z 166 latest: Effect.succeed(Option.none()), 2026-10-24T21:36:23.1254272Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1254274Z 2026-10-24T21:36:23.1254483Z src/cloud/CloudLink.test.ts:99:17 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1254486Z 2026-10-24T21:36:23.1254547Z 99 latest: Effect.succeed(Option.none()), 2026-10-24T21:36:23.1254588Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1254593Z 2026-10-24T21:36:23.1254926Z src/cloud/ManagedEndpointRuntime.ts:791:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("CloudManagedEndpointRuntime.requestRecovery")((config) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1254930Z 2026-10-24T21:36:23.1255056Z 791 requestRecovery: (config) => Queue.offer(recoveryRequests, config).pipe(Effect.asVoid), 2026-10-24T21:36:23.1255098Z ~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1255100Z 2026-10-24T21:36:23.1255303Z src/cloud/http.test.ts:81:67 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1255305Z 2026-10-24T21:36:23.1255446Z 81 Layer.mock(ConnectReachability.ConnectReachability)({ latest: Effect.succeed(Option.none()) }), 2026-10-24T21:36:23.1255515Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1255517Z 2026-10-24T21:36:23.1255845Z src/cloud/selfUpdate.ts:371:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ServerSelfUpdate.commitDesktopUpdate")((requestId, onHandoffAccepted) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1255849Z 2026-10-24T21:36:23.1255930Z 371 commitDesktopUpdate: (requestId, onHandoffAccepted) => 2026-10-24T21:36:23.1255973Z ~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1255975Z 2026-10-24T21:36:23.1256254Z src/device/DeviceService.ts:808:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DeviceService.updateTool")((tool) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1256259Z 2026-10-24T21:36:23.1256303Z 808 updateTool: (tool) => 2026-10-24T21:36:23.1256345Z ~~~~~~~~~~ 2026-10-24T21:36:23.1256347Z 2026-10-24T21:36:23.1256614Z src/device/DeviceService.ts:823:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DeviceService.easAccount")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1256618Z 2026-10-24T21:36:23.1256664Z 823 easAccount: () => 2026-10-24T21:36:23.1256701Z ~~~~~~~~~~ 2026-10-24T21:36:23.1256703Z 2026-10-24T21:36:23.1257008Z src/device/EasDeviceHost.ts:868:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DeviceHost.DeviceHost.ensureAgentReady")((onPhase) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1257010Z 2026-10-24T21:36:23.1257062Z 868 ensureAgentReady: (onPhase) => 2026-10-24T21:36:23.1257104Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1257106Z 2026-10-24T21:36:23.1257364Z src/device/easProjectId.ts:201:7 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-24T21:36:23.1257367Z 2026-10-24T21:36:23.1257417Z 201 Effect.map(Option.some), 2026-10-24T21:36:23.1257457Z ~~~~~~~~~~ 2026-10-24T21:36:23.1257459Z 2026-10-24T21:36:23.1257738Z src/environment/DirectEndpoints.ts:141:31 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DirectEndpoints.resolve")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1257800Z 2026-10-24T21:36:23.1257878Z 141 return DirectEndpoints.of({ resolve: () => resolve }); 2026-10-24T21:36:23.1257922Z ~~~~~~~ 2026-10-24T21:36:23.1257927Z 2026-10-24T21:36:23.1258223Z src/environment/RemoteOpenTargets.ts:83:33 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("RemoteOpenTargets.resolveTargets")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1258225Z 2026-10-24T21:36:23.1258325Z 83 return RemoteOpenTargets.of({ resolveTargets: () => resolveTargets }); 2026-10-24T21:36:23.1258376Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1258378Z 2026-10-24T21:36:23.1258673Z src/git/GitWorkflowService.ts:302:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitWorkflowService.isRepository")((cwd) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1258678Z 2026-10-24T21:36:23.1258726Z 302 isRepository: (cwd) => 2026-10-24T21:36:23.1258763Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1258765Z 2026-10-24T21:36:23.1259047Z src/git/GitWorkflowService.ts:315:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitWorkflowService.hasCommit")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1259050Z 2026-10-24T21:36:23.1259096Z 315 hasCommit: (input) => 2026-10-24T21:36:23.1259135Z ~~~~~~~~~ 2026-10-24T21:36:23.1259137Z 2026-10-24T21:36:23.1259423Z src/git/GitWorkflowService.ts:327:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitWorkflowService.hasRefNamed")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1259427Z 2026-10-24T21:36:23.1259472Z 327 hasRefNamed: (input) => 2026-10-24T21:36:23.1259513Z ~~~~~~~~~~~ 2026-10-24T21:36:23.1259515Z 2026-10-24T21:36:23.1259794Z src/git/GitWorkflowService.ts:346:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitWorkflowService.status")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1259797Z 2026-10-24T21:36:23.1259842Z 346 status: (input) => 2026-10-24T21:36:23.1259879Z ~~~~~~ 2026-10-24T21:36:23.1259881Z 2026-10-24T21:36:23.1260173Z src/git/GitWorkflowService.ts:352:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitWorkflowService.localStatus")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1260176Z 2026-10-24T21:36:23.1260223Z 352 localStatus: (input) => 2026-10-24T21:36:23.1260291Z ~~~~~~~~~~~ 2026-10-24T21:36:23.1260293Z 2026-10-24T21:36:23.1260594Z src/git/GitWorkflowService.ts:360:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitWorkflowService.remoteStatus")((input, options) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1260598Z 2026-10-24T21:36:23.1260651Z 360 remoteStatus: (input, options) => 2026-10-24T21:36:23.1260692Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1260694Z 2026-10-24T21:36:23.1260989Z src/git/GitWorkflowService.ts:369:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitWorkflowService.pullCurrentBranch")((cwd) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1260992Z 2026-10-24T21:36:23.1261042Z 369 pullCurrentBranch: (cwd) => 2026-10-24T21:36:23.1261082Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1261129Z 2026-10-24T21:36:23.1261436Z src/git/GitWorkflowService.ts:373:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitWorkflowService.runStackedAction")((input, options) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1261482Z 2026-10-24T21:36:23.1261541Z 373 runStackedAction: (input, options) => 2026-10-24T21:36:23.1261584Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1261586Z 2026-10-24T21:36:23.1261903Z src/git/GitWorkflowService.ts:388:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitWorkflowService.preparePullRequestThread")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1261905Z 2026-10-24T21:36:23.1261962Z 388 preparePullRequestThread: (input) => 2026-10-24T21:36:23.1262011Z ~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1262013Z 2026-10-24T21:36:23.1262296Z src/git/GitWorkflowService.ts:399:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitWorkflowService.listRefs")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1262298Z 2026-10-24T21:36:23.1262346Z 399 listRefs: (input) => 2026-10-24T21:36:23.1262385Z ~~~~~~~~ 2026-10-24T21:36:23.1262389Z 2026-10-24T21:36:23.1262694Z src/git/GitWorkflowService.ts:405:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitWorkflowService.createWorktree")((input, options) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1262696Z 2026-10-24T21:36:23.1262751Z 405 createWorktree: (input, options) => 2026-10-24T21:36:23.1262792Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1262794Z 2026-10-24T21:36:23.1263097Z src/git/GitWorkflowService.ts:409:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitWorkflowService.listLocalBranchNames")((cwd) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1263101Z 2026-10-24T21:36:23.1263154Z 409 listLocalBranchNames: (cwd) => 2026-10-24T21:36:23.1263194Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1263196Z 2026-10-24T21:36:23.1263483Z src/git/GitWorkflowService.ts:413:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitWorkflowService.fetchRemote")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1263487Z 2026-10-24T21:36:23.1263533Z 413 fetchRemote: (input) => 2026-10-24T21:36:23.1263573Z ~~~~~~~~~~~ 2026-10-24T21:36:23.1263575Z 2026-10-24T21:36:23.1263861Z src/git/GitWorkflowService.ts:417:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitWorkflowService.remoteExists")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1263866Z 2026-10-24T21:36:23.1263912Z 417 remoteExists: (input) => 2026-10-24T21:36:23.1263953Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1263955Z 2026-10-24T21:36:23.1264260Z src/git/GitWorkflowService.ts:421:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitWorkflowService.remoteBranchExists")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1264262Z 2026-10-24T21:36:23.1264314Z 421 remoteBranchExists: (input) => 2026-10-24T21:36:23.1264356Z ~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1264359Z 2026-10-24T21:36:23.1264677Z src/git/GitWorkflowService.ts:425:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitWorkflowService.resolveRemoteTrackingCommit")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1264680Z 2026-10-24T21:36:23.1264741Z 425 resolveRemoteTrackingCommit: (input) => 2026-10-24T21:36:23.1264786Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1264788Z 2026-10-24T21:36:23.1265147Z src/git/GitWorkflowService.ts:429:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitWorkflowService.resolveWorktreeBaseRemote")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1265149Z 2026-10-24T21:36:23.1265206Z 429 resolveWorktreeBaseRemote: (input) => 2026-10-24T21:36:23.1265250Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1265295Z 2026-10-24T21:36:23.1265602Z src/git/GitWorkflowService.ts:433:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitWorkflowService.fetchWorktreeBaseCommit")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1265605Z 2026-10-24T21:36:23.1265661Z 433 fetchWorktreeBaseCommit: (input) => 2026-10-24T21:36:23.1265705Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1265707Z 2026-10-24T21:36:23.1266000Z src/git/GitWorkflowService.ts:437:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitWorkflowService.removeWorktree")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1266004Z 2026-10-24T21:36:23.1266054Z 437 removeWorktree: (input) => 2026-10-24T21:36:23.1266095Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1266097Z 2026-10-24T21:36:23.1266389Z src/git/GitWorkflowService.ts:441:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitWorkflowService.pruneWorktrees")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1266393Z 2026-10-24T21:36:23.1266441Z 441 pruneWorktrees: (input) => 2026-10-24T21:36:23.1266480Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1266482Z 2026-10-24T21:36:23.1266781Z src/git/GitWorkflowService.ts:445:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitWorkflowService.deleteLocalBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1266784Z 2026-10-24T21:36:23.1266834Z 445 deleteLocalBranch: (input) => 2026-10-24T21:36:23.1266877Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1266880Z 2026-10-24T21:36:23.1267161Z src/git/GitWorkflowService.ts:449:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitWorkflowService.createRef")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1267167Z 2026-10-24T21:36:23.1267214Z 449 createRef: (input) => 2026-10-24T21:36:23.1267253Z ~~~~~~~~~ 2026-10-24T21:36:23.1267255Z 2026-10-24T21:36:23.1267540Z src/git/GitWorkflowService.ts:457:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitWorkflowService.switchRef")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1267542Z 2026-10-24T21:36:23.1267588Z 457 switchRef: (input) => 2026-10-24T21:36:23.1267625Z ~~~~~~~~~ 2026-10-24T21:36:23.1267627Z 2026-10-24T21:36:23.1267918Z src/git/GitWorkflowService.ts:463:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitWorkflowService.renameBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1267920Z 2026-10-24T21:36:23.1267968Z 463 renameBranch: (input) => 2026-10-24T21:36:23.1268013Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1268015Z 2026-10-24T21:36:23.1268269Z src/htmlRender/headlessChrome.ts:282:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("receive")((raw) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1268273Z 2026-10-24T21:36:23.1268323Z 282 const receive = (raw: string) => { 2026-10-24T21:36:23.1268362Z ~~~~~~~ 2026-10-24T21:36:23.1268364Z 2026-10-24T21:36:23.1268722Z src/mcp/AcpMcpStdioBridge.ts:284:7 - suggestion TS377012: This Effect generator contains `try/catch`; in this context, error handling is expressed with Effect APIs such as Effect.try, Effect.tryPromise, Effect.catch, Effect.catchTag). effect(tryCatchInEffectGen) 2026-10-24T21:36:23.1268725Z 2026-10-24T21:36:23.1268764Z 284 try { 2026-10-24T21:36:23.1268848Z ~~~~~ 2026-10-24T21:36:23.1268898Z 285 parsed = JSON.parse(line); 2026-10-24T21:36:23.1268942Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1268983Z ... 2026-10-24T21:36:23.1269077Z 287 return yield* respondWithError(null, "Parse error", -32700); 2026-10-24T21:36:23.1269186Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1269225Z 288 } 2026-10-24T21:36:23.1269265Z ~~~~~~~ 2026-10-24T21:36:23.1269267Z 2026-10-24T21:36:23.1269679Z src/mcp/AcpMcpStdioBridge.ts:324:7 - suggestion TS377099: `Effect.ignoreCause` expresses ignored failure more directly than `Effect.catchCause` returning `Effect.void`. effect(catchToIgnore) 2026-10-24T21:36:23.1269684Z 2026-10-24T21:36:23.1269740Z 324 Effect.catchCause(() => Effect.void), 2026-10-24T21:36:23.1269783Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1269785Z 2026-10-24T21:36:23.1270008Z src/mcp/McpDeviceToolkit.test.ts:105:18 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1270010Z 2026-10-24T21:36:23.1270073Z 105 getById: () => Effect.succeed(Option.none()), 2026-10-24T21:36:23.1270117Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1270119Z 2026-10-24T21:36:23.1270425Z src/mcp/McpHttpServer.ts:421:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("previewSnapshotFailure")((cause) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1270427Z 2026-10-24T21:36:23.1270521Z 421 const previewSnapshotFailure = (cause: Cause.Cause) => { 2026-10-24T21:36:23.1270565Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1270567Z 2026-10-24T21:36:23.1270844Z src/mcp/McpHttpServer.ts:938:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("McpServer.McpServer.addTool")((options) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1270846Z 2026-10-24T21:36:23.1270892Z 938 addTool: (options) => 2026-10-24T21:36:23.1270932Z ~~~~~~~ 2026-10-24T21:36:23.1270934Z 2026-10-24T21:36:23.1271202Z src/mcp/McpSessionRegistry.testkit.ts:22:20 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-24T21:36:23.1271206Z 2026-10-24T21:36:23.1271265Z 22 resolve: () => Effect.succeed(undefined), 2026-10-24T21:36:23.1271313Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1271317Z 2026-10-24T21:36:23.1271592Z src/mcp/McpToolAccess.ts:112:7 - suggestion TS377132: `Effect.andThen` expresses this sequencing more directly than `Effect.flatMap` with a zero-parameter callback. effect(flatMapIgnoredParamToAndThen) 2026-10-24T21:36:23.1271594Z 2026-10-24T21:36:23.1271651Z 112 Effect.flatMap(() => writingCaller), 2026-10-24T21:36:23.1271696Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1271698Z 2026-10-24T21:36:23.1272182Z src/mcp/OrchestratorMcpService.ts:2465:39 - suggestion TS377088: This generator applies the same inline `Effect.mapError(...)` to every yielded effect. Keep that `Effect.mapError(...)` inline and hoist it once to the generator result: `Effect.gen(...).pipe(Effect.mapError(...))`, or `Effect.fn(function*(){ ... }, Effect.mapError(...))`. effect(redundantMapError) 2026-10-24T21:36:23.1272187Z 2026-10-24T21:36:23.1272258Z 2465 const cancelOrphan = Effect.gen(function* () { 2026-10-24T21:36:23.1272310Z ~~~~~~~~~ 2026-10-24T21:36:23.1272313Z 2026-10-24T21:36:23.1272540Z src/mcp/OrchestratorMcpService.ts:2480:17 - This repeated `Effect.mapError(...)` site participates in the hoistable generator-wide mapping. effect(redundantMapError) 2026-10-24T21:36:23.1272621Z 2480 .pipe(Effect.mapError(threadManagementFailure)); 2026-10-24T21:36:23.1272668Z ~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1272670Z 2026-10-24T21:36:23.1272953Z src/mcp/OrchestratorMcpService.ts:2483:17 - This repeated `Effect.mapError(...)` site participates in the hoistable generator-wide mapping. effect(redundantMapError) 2026-10-24T21:36:23.1273031Z 2483 .pipe(Effect.mapError(threadManagementFailure)); 2026-10-24T21:36:23.1273077Z ~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1273137Z 2026-10-24T21:36:23.1273402Z src/mcp/PreviewAutomationBroker.ts:651:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("onNone")(function*() { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1273404Z 2026-10-24T21:36:23.1273449Z 651 onNone: () => 2026-10-24T21:36:23.1273487Z ~~~~~~ 2026-10-24T21:36:23.1273490Z 2026-10-24T21:36:23.1273684Z src/mcp/WorktreeMcpService.test.ts:355:3 - suggestion TS377017: This Effect.gen contains a single return statement. effect(unnecessaryEffectGen) 2026-10-24T21:36:23.1273686Z 2026-10-24T21:36:23.1273735Z 355 Effect.gen(function* () { 2026-10-24T21:36:23.1273780Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1273861Z 356 return yield* WorktreeMcpService.WorktreeMcpService; 2026-10-24T21:36:23.1273923Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1273981Z 357 }).pipe(Effect.provide(harness.layer)); 2026-10-24T21:36:23.1274022Z ~~~~ 2026-10-24T21:36:23.1274024Z 2026-10-24T21:36:23.1274283Z src/mcp/toolkits/pullRequests/handlers.ts:217:27 - suggestion TS377015: This expression contains chained `pipe` calls that can be simplified to a single `pipe` call. effect(unnecessaryPipeChain) 2026-10-24T21:36:23.1274286Z 2026-10-24T21:36:23.1274336Z 217 const thread = yield* engine 2026-10-24T21:36:23.1274381Z ~~~~~~ 2026-10-24T21:36:23.1274428Z 218 .getThreadShell(threadId) 2026-10-24T21:36:23.1274470Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1274533Z 219 .pipe(Effect.map(Option.fromNullishOr)) 2026-10-24T21:36:23.1274588Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1274671Z 220 .pipe(Effect.mapError((cause) => new Failure({ cause }))); 2026-10-24T21:36:23.1274734Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1274736Z 2026-10-24T21:36:23.1275014Z src/mcpApps/McpAppModelContext.ts:96:27 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("McpAppModelContext.set")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1275018Z 2026-10-24T21:36:23.1275138Z 96 McpAppModelContext.of({ set: () => Effect.void, forThread: () => Effect.succeed([]) }), 2026-10-24T21:36:23.1275182Z ~~~ 2026-10-24T21:36:23.1275184Z 2026-10-24T21:36:23.1275471Z src/mcpApps/McpAppModelContext.ts:96:51 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("McpAppModelContext.forThread")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1275473Z 2026-10-24T21:36:23.1275585Z 96 McpAppModelContext.of({ set: () => Effect.void, forThread: () => Effect.succeed([]) }), 2026-10-24T21:36:23.1275645Z ~~~~~~~~~ 2026-10-24T21:36:23.1275647Z 2026-10-24T21:36:23.1275960Z src/observability/BrowserTraceCollector.ts:16:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BrowserTraceCollector.record")((records) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1275965Z 2026-10-24T21:36:23.1276010Z 16 record: (records) => 2026-10-24T21:36:23.1276052Z ~~~~~~ 2026-10-24T21:36:23.1276054Z 2026-10-24T21:36:23.1276322Z src/observability/EventLoopMonitor.ts:41:49 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-24T21:36:23.1276324Z 2026-10-24T21:36:23.1276423Z 41 defaultValue: () => ({ latestNoticeableStall: Effect.succeed(undefined) }), 2026-10-24T21:36:23.1276533Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1276536Z 2026-10-24T21:36:23.1276971Z src/orchestration-v2/Adapters/AcpRegistryAdapterV2.testkit.ts:30:32 - suggestion TS377112: This input is already assignable to the schema's Encoded type. Use `decodeSync` to preserve compile-time type checking instead of discarding the input type through `decodeUnknownSync`. effect(preferTypedSchemaDecoder) 2026-10-24T21:36:23.1277020Z 2026-10-24T21:36:23.1277120Z 30 const REPLAY_SETTINGS = Schema.decodeUnknownSync(AcpRegistrySettings)({ 2026-10-24T21:36:23.1277173Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1277175Z 2026-10-24T21:36:23.1277476Z src/orchestration-v2/Adapters/AntigravityAdapterV2.test.ts:48:17 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-24T21:36:23.1277478Z 2026-10-24T21:36:23.1277535Z 48 defaultModel: Effect.succeed(undefined), 2026-10-24T21:36:23.1277586Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1277588Z 2026-10-24T21:36:23.1277892Z src/orchestration-v2/Adapters/AntigravityAdapterV2.test.ts:169:23 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-24T21:36:23.1277896Z 2026-10-24T21:36:23.1277960Z 169 defaultModel: Effect.succeed(undefined), 2026-10-24T21:36:23.1278009Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1278014Z 2026-10-24T21:36:23.1278309Z src/orchestration-v2/Adapters/AntigravityAdapterV2.test.ts:306:23 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-24T21:36:23.1278311Z 2026-10-24T21:36:23.1278373Z 306 defaultModel: Effect.succeed(undefined), 2026-10-24T21:36:23.1278425Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1278428Z 2026-10-24T21:36:23.1278732Z src/orchestration-v2/Adapters/AntigravityAdapterV2.test.ts:542:23 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-24T21:36:23.1278736Z 2026-10-24T21:36:23.1278798Z 542 defaultModel: Effect.succeed(undefined), 2026-10-24T21:36:23.1278847Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1278849Z 2026-10-24T21:36:23.1279180Z src/orchestration-v2/Adapters/ClaudeAdapterV2.test.ts:974:26 - suggestion TS377111: `AbortController` is manually constructed inside Effect code. Use `Effect.abortSignal` for Effect-managed cancellation. effect(abortControllerInEffect) 2026-10-24T21:36:23.1279182Z 2026-10-24T21:36:23.1279242Z 974 const controller = new AbortController(); 2026-10-24T21:36:23.1279293Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1279295Z 2026-10-24T21:36:23.1279576Z src/orchestration-v2/Adapters/ClaudeAdapterV2.test.ts:1326:37 - suggestion TS377015: This expression contains chained `pipe` calls that can be simplified to a single `pipe` call. effect(unnecessaryPipeChain) 2026-10-24T21:36:23.1279581Z 2026-10-24T21:36:23.1279646Z 1326 const requestEvent = yield* runtime.events 2026-10-24T21:36:23.1279702Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1279746Z 1327 .pipe( 2026-10-24T21:36:23.1279788Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1279825Z ... 2026-10-24T21:36:23.1279868Z 1330 ) 2026-10-24T21:36:23.1279907Z ~~~~~~~~~~~ 2026-10-24T21:36:23.1279960Z 1331 .pipe(Effect.forkScoped); 2026-10-24T21:36:23.1280007Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1280009Z 2026-10-24T21:36:23.1280405Z src/orchestration-v2/Adapters/ClaudeAdapterV2.test.ts:1332:28 - suggestion TS377111: `AbortController` is manually constructed inside Effect code. Use `Effect.abortSignal` for Effect-managed cancellation. effect(abortControllerInEffect) 2026-10-24T21:36:23.1280408Z 2026-10-24T21:36:23.1280474Z 1332 const controller = new AbortController(); 2026-10-24T21:36:23.1280527Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1280530Z 2026-10-24T21:36:23.1280897Z src/orchestration-v2/Adapters/ClaudeAdapterV2.test.ts:1355:37 - suggestion TS377111: `AbortController` is manually constructed inside Effect code. Use `Effect.abortSignal` for Effect-managed cancellation. effect(abortControllerInEffect) 2026-10-24T21:36:23.1280900Z 2026-10-24T21:36:23.1280978Z 1355 const cancelledController = new AbortController(); 2026-10-24T21:36:23.1281036Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1281038Z 2026-10-24T21:36:23.1281392Z src/orchestration-v2/Adapters/ClaudeAdapterV2.ts:4020:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.getCapabilities")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1281395Z 2026-10-24T21:36:23.1281498Z 4020 getCapabilities: () => Effect.succeed(ClaudeProviderCapabilitiesV2), 2026-10-24T21:36:23.1281540Z ~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1281542Z 2026-10-24T21:36:23.1281912Z src/orchestration-v2/Adapters/ClaudeAdapterV2.ts:4021:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.planSelectionTransition")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1281914Z 2026-10-24T21:36:23.1282032Z 4021 planSelectionTransition: () => Effect.succeed(turnScopedSelectionTransition()), 2026-10-24T21:36:23.1282076Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1282078Z 2026-10-24T21:36:23.1282429Z src/orchestration-v2/Adapters/ClaudeAgentSdkQueryRunner.test.ts:201:17 - suggestion TS377111: `AbortController` is manually constructed inside Effect code. Use `Effect.abortSignal` for Effect-managed cancellation. effect(abortControllerInEffect) 2026-10-24T21:36:23.1282431Z 2026-10-24T21:36:23.1282488Z 201 signal: new AbortController().signal, 2026-10-24T21:36:23.1282536Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1282538Z 2026-10-24T21:36:23.1282918Z src/orchestration-v2/Adapters/ClaudeTaskOutputTail.ts:74:17 - suggestion TS377121: This Effect first-completion race has exactly one sleep- or delay-based timer arm. `Effect.timeoutOrElse` expresses the timeout and fallback directly. effect(raceFirstWithSleepToTimeout) 2026-10-24T21:36:23.1282923Z 2026-10-24T21:36:23.1282973Z 74 const pause = Effect.raceFirst( 2026-10-24T21:36:23.1283018Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1283022Z 2026-10-24T21:36:23.1283306Z src/orchestration-v2/Adapters/CodexAdapterV2.ts:1741:25 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-24T21:36:23.1283310Z 2026-10-24T21:36:23.1283415Z 1741 threadId === null ? Effect.succeed(undefined) : mcpSessions.read(threadId); 2026-10-24T21:36:23.1283470Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1283472Z 2026-10-24T21:36:23.1283820Z src/orchestration-v2/Adapters/CodexAdapterV2.ts:1748:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.getCapabilities")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1283824Z 2026-10-24T21:36:23.1283921Z 1748 getCapabilities: () => Effect.succeed(CodexProviderCapabilitiesV2), 2026-10-24T21:36:23.1283961Z ~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1283963Z 2026-10-24T21:36:23.1284330Z src/orchestration-v2/Adapters/CodexAdapterV2.ts:1749:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.planSelectionTransition")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1284373Z 2026-10-24T21:36:23.1284488Z 1749 planSelectionTransition: () => Effect.succeed(turnScopedSelectionTransition()), 2026-10-24T21:36:23.1284532Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1284534Z 2026-10-24T21:36:23.1284841Z src/orchestration-v2/Adapters/CodexAdapterV2.ts:3045:19 - suggestion TS377095: `Effect.orElseSucceed` expresses the same recovery more directly than `Effect.catch` followed by `Effect.succeed`. effect(catchToOrElseSucceed) 2026-10-24T21:36:23.1284886Z 2026-10-24T21:36:23.1284957Z 3045 Effect.catch(() => Effect.succeed(null)), 2026-10-24T21:36:23.1285003Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1285005Z 2026-10-24T21:36:23.1285365Z src/orchestration-v2/Adapters/CodexAdapterV2.ts:3046:19 - suggestion TS377120: `Effect.filterOrElse` expresses this conditional validation more directly than `Effect.flatMap` with an identity `Effect.succeed` branch. effect(flatMapConditionalToFilterOrFail) 2026-10-24T21:36:23.1285369Z 2026-10-24T21:36:23.1285430Z 3046 Effect.flatMap((response) => 2026-10-24T21:36:23.1285475Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1285477Z 2026-10-24T21:36:23.1285748Z src/orchestration-v2/Adapters/CodexAdapterV2.ts:3068:19 - suggestion TS377099: `Effect.ignore` expresses ignored failure more directly than `Effect.catch` returning `Effect.void`. effect(catchToIgnore) 2026-10-24T21:36:23.1285754Z 2026-10-24T21:36:23.1285814Z 3068 Effect.catch(() => Effect.void), 2026-10-24T21:36:23.1285858Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1285860Z 2026-10-24T21:36:23.1286210Z src/orchestration-v2/Adapters/CodexAdapterV2.ts:7268:26 - suggestion TS377019: This `yield* Effect.fail(...)` passes a yieldable error value. `yield*` represents that value directly without wrapping it in `Effect.fail`. effect(unnecessaryFailYieldableError) 2026-10-24T21:36:23.1286212Z 2026-10-24T21:36:23.1286295Z 7268 return yield* Effect.fail(failedTermination.error); 2026-10-24T21:36:23.1286337Z ~~~~~ 2026-10-24T21:36:23.1286339Z 2026-10-24T21:36:23.1286761Z src/orchestration-v2/Adapters/GrokAdapterV2.testkit.ts:33:38 - suggestion TS377112: This input is already assignable to the schema's Encoded type. Use `decodeSync` to preserve compile-time type checking instead of discarding the input type through `decodeUnknownSync`. effect(preferTypedSchemaDecoder) 2026-10-24T21:36:23.1286765Z 2026-10-24T21:36:23.1286865Z 33 const DEFAULT_GROK_SETTINGS = Schema.decodeUnknownSync(GrokSettings)({}); 2026-10-24T21:36:23.1286922Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1286925Z 2026-10-24T21:36:23.1287341Z src/orchestration-v2/Adapters/MuseAdapterV2.testkit.ts:414:38 - suggestion TS377112: This input is already assignable to the schema's Encoded type. Use `decodeSync` to preserve compile-time type checking instead of discarding the input type through `decodeUnknownSync`. effect(preferTypedSchemaDecoder) 2026-10-24T21:36:23.1287343Z 2026-10-24T21:36:23.1287466Z 414 const DEFAULT_MUSE_SETTINGS = Schema.decodeUnknownSync(MuseSettings)({ enabled: true }); 2026-10-24T21:36:23.1287520Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1287523Z 2026-10-24T21:36:23.1287860Z src/orchestration-v2/CheckpointCaptureService.ts:242:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("CheckpointCaptureServiceV2.execute")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1287864Z 2026-10-24T21:36:23.1287914Z 242 execute: (input) => 2026-10-24T21:36:23.1287957Z ~~~~~~~ 2026-10-24T21:36:23.1287959Z 2026-10-24T21:36:23.1288212Z src/orchestration-v2/CheckpointRestoreSafety.test.ts:104:24 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1288218Z 2026-10-24T21:36:23.1288370Z 104 get: () => Effect.succeed(Option.some({ workspaceRoot: parent } as never)), 2026-10-24T21:36:23.1288424Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1288426Z 2026-10-24T21:36:23.1288768Z src/orchestration-v2/CheckpointRestoreSafety.ts:41:13 - suggestion TS377116: `Effect.catchIf` expresses selective recovery more directly than `Effect.catch` with a conditional `Effect.fail` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-24T21:36:23.1288818Z 2026-10-24T21:36:23.1288869Z 41 Effect.catch((error) => 2026-10-24T21:36:23.1288911Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1288913Z 2026-10-24T21:36:23.1289250Z src/orchestration-v2/CheckpointRestoreSafety.ts:83:17 - suggestion TS377116: `Effect.catchIf` expresses selective recovery more directly than `Effect.catch` with a conditional `Effect.fail` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-24T21:36:23.1289252Z 2026-10-24T21:36:23.1289305Z 83 Effect.catch((error) => 2026-10-24T21:36:23.1289352Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1289355Z 2026-10-24T21:36:23.1289615Z src/orchestration-v2/CheckpointRollbackService.test.ts:233:22 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1289618Z 2026-10-24T21:36:23.1289714Z 233 return Effect.succeed(Option.some({ workspaceRoot } as never)); 2026-10-24T21:36:23.1289761Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1289763Z 2026-10-24T21:36:23.1290113Z src/orchestration-v2/ClaudeAutomaticDelivery.integration.test.ts:142:28 - suggestion TS377111: `AbortController` is manually constructed inside Effect code. Use `Effect.abortSignal` for Effect-managed cancellation. effect(abortControllerInEffect) 2026-10-24T21:36:23.1290115Z 2026-10-24T21:36:23.1290179Z 142 const batchAbort = new AbortController(); 2026-10-24T21:36:23.1290231Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1290233Z 2026-10-24T21:36:23.1290623Z src/orchestration-v2/CommandOutputHub.test.ts:168:5 - suggestion TS377120: `Effect.filterOrElse` expresses this conditional validation more directly than `Effect.flatMap` with an identity `Effect.succeed` branch. effect(flatMapConditionalToFilterOrFail) 2026-10-24T21:36:23.1290628Z 2026-10-24T21:36:23.1290679Z 168 Effect.flatMap((frame) => 2026-10-24T21:36:23.1290722Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1290724Z 2026-10-24T21:36:23.1290964Z src/orchestration-v2/CommandReceiptStore.ts:164:29 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1290967Z 2026-10-24T21:36:23.1291037Z 164 onNone: () => Effect.succeed(Option.none()), 2026-10-24T21:36:23.1291085Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1291087Z 2026-10-24T21:36:23.1291325Z src/orchestration-v2/CommandReceiptStore.ts:167:21 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1291327Z 2026-10-24T21:36:23.1291390Z 167 ? Effect.succeed(Option.none()) 2026-10-24T21:36:23.1291435Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1291437Z 2026-10-24T21:36:23.1291678Z src/orchestration-v2/CommandReceiptStore.ts:168:58 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-24T21:36:23.1291682Z 2026-10-24T21:36:23.1291780Z 168 : fromApplicationReceipt(receipt).pipe(Effect.map(Option.some)), 2026-10-24T21:36:23.1291843Z ~~~~~~~~~~ 2026-10-24T21:36:23.1291845Z 2026-10-24T21:36:23.1292078Z src/orchestration-v2/CommandReceiptStore.ts:183:17 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1292081Z 2026-10-24T21:36:23.1292180Z 183 ? Effect.succeed(Option.none()) 2026-10-24T21:36:23.1292225Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1292230Z 2026-10-24T21:36:23.1292468Z src/orchestration-v2/CommandReceiptStore.ts:192:25 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-24T21:36:23.1292514Z 2026-10-24T21:36:23.1292578Z 192 }).pipe(Effect.map(Option.some)), 2026-10-24T21:36:23.1292623Z ~~~~~~~~~~ 2026-10-24T21:36:23.1292625Z 2026-10-24T21:36:23.1292849Z src/orchestration-v2/EffectOutbox.ts:429:17 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1292851Z 2026-10-24T21:36:23.1292906Z 429 ? Effect.succeed(Option.none()) 2026-10-24T21:36:23.1292950Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1292953Z 2026-10-24T21:36:23.1293178Z src/orchestration-v2/EffectOutbox.ts:430:39 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-24T21:36:23.1293182Z 2026-10-24T21:36:23.1293257Z 430 : rowToEffect(row).pipe(Effect.map(Option.some)); 2026-10-24T21:36:23.1293310Z ~~~~~~~~~~ 2026-10-24T21:36:23.1293314Z 2026-10-24T21:36:23.1293541Z src/orchestration-v2/EffectWorker.test.ts:107:20 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1293543Z 2026-10-24T21:36:23.1293604Z 107 get: () => Effect.succeed(Option.none()), 2026-10-24T21:36:23.1293649Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1293652Z 2026-10-24T21:36:23.1293877Z src/orchestration-v2/EffectWorker.test.ts:302:24 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1293880Z 2026-10-24T21:36:23.1293964Z 302 claimNext: () => Effect.succeed(Option.some(claimedEffect)), 2026-10-24T21:36:23.1294009Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1294011Z 2026-10-24T21:36:23.1294239Z src/orchestration-v2/EffectWorker.test.ts:369:24 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1294243Z 2026-10-24T21:36:23.1294325Z 369 claimNext: () => Effect.succeed(Option.some(claimedEffect)), 2026-10-24T21:36:23.1294373Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1294375Z 2026-10-24T21:36:23.1294604Z src/orchestration-v2/EffectWorker.test.ts:436:24 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1294607Z 2026-10-24T21:36:23.1294684Z 436 claimNext: () => Effect.succeed(Option.some(claimedEffect)), 2026-10-24T21:36:23.1294731Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1294736Z 2026-10-24T21:36:23.1294962Z src/orchestration-v2/EffectWorker.test.ts:437:18 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1294964Z 2026-10-24T21:36:23.1295039Z 437 get: () => Effect.succeed(Option.some(claimedEffect)), 2026-10-24T21:36:23.1295084Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1295086Z 2026-10-24T21:36:23.1295418Z src/orchestration-v2/EffectWorker.ts:98:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestrationEffectExecutorV2.execute")((effect, options) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1295420Z 2026-10-24T21:36:23.1295472Z 98 execute: (effect, options) => { 2026-10-24T21:36:23.1295515Z ~~~~~~~ 2026-10-24T21:36:23.1295517Z 2026-10-24T21:36:23.1295887Z src/orchestration-v2/EffectWorker.ts:180:17 - suggestion TS377116: `Effect.catchIf` expresses selective recovery more directly than `Effect.catch` with a conditional `Effect.fail` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-24T21:36:23.1295889Z 2026-10-24T21:36:23.1295940Z 180 Effect.catch((cause) => 2026-10-24T21:36:23.1295985Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1295987Z 2026-10-24T21:36:23.1296314Z src/orchestration-v2/EventStore.ts:110:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("EventStoreV2.append")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1296316Z 2026-10-24T21:36:23.1296365Z 110 append: (input) => 2026-10-24T21:36:23.1296409Z ~~~~~~ 2026-10-24T21:36:23.1296411Z 2026-10-24T21:36:23.1296711Z src/orchestration-v2/EventStore.ts:120:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("EventStoreV2.appendProjectEvent")((event) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1296714Z 2026-10-24T21:36:23.1296773Z 120 appendProjectEvent: (event) => 2026-10-24T21:36:23.1296817Z ~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1296820Z 2026-10-24T21:36:23.1297108Z src/orchestration-v2/EventStore.ts:131:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("EventStoreV2.latestSequence")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1297112Z 2026-10-24T21:36:23.1297162Z 131 latestSequence: (input) => 2026-10-24T21:36:23.1297203Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1297205Z 2026-10-24T21:36:23.1297459Z src/orchestration-v2/FoundationPersistence.test.ts:1791:26 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1297461Z 2026-10-24T21:36:23.1297546Z 1791 claimNext: () => Effect.succeed(Option.some(claimedEffect)), 2026-10-24T21:36:23.1297595Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1297598Z 2026-10-24T21:36:23.1297848Z src/orchestration-v2/FoundationPersistence.test.ts:1793:11 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1297852Z 2026-10-24T21:36:23.1297896Z 1793 Effect.succeed( 2026-10-24T21:36:23.1297943Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1297945Z 2026-10-24T21:36:23.1298194Z src/orchestration-v2/FoundationPersistence.test.ts:2663:30 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1298197Z 2026-10-24T21:36:23.1298274Z 2663 nextClaimableAt: Effect.succeed(Option.none()), 2026-10-24T21:36:23.1298325Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1298327Z 2026-10-24T21:36:23.1298576Z src/orchestration-v2/FoundationPersistence.test.ts:2880:30 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1298578Z 2026-10-24T21:36:23.1298654Z 2880 nextClaimableAt: Effect.succeed(Option.none()), 2026-10-24T21:36:23.1298704Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1298706Z 2026-10-24T21:36:23.1299054Z src/orchestration-v2/Orchestrator.ts:11811:7 - suggestion TS377120: `Effect.filterOrFail` expresses this conditional validation more directly than `Effect.flatMap` with an identity `Effect.succeed` branch. effect(flatMapConditionalToFilterOrFail) 2026-10-24T21:36:23.1299058Z 2026-10-24T21:36:23.1299108Z 11811 Effect.flatMap((planned) => 2026-10-24T21:36:23.1299153Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1299155Z 2026-10-24T21:36:23.1299480Z src/orchestration-v2/Orchestrator.ts:12234:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.restartContinuationPending")((run) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1299483Z 2026-10-24T21:36:23.1299589Z 12234 restartContinuationPending: (run) => 2026-10-24T21:36:23.1299637Z ~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1299639Z 2026-10-24T21:36:23.1299952Z src/orchestration-v2/Orchestrator.ts:12236:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.awaitRestartContinuation")((run) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1300005Z 2026-10-24T21:36:23.1300064Z 12236 awaitRestartContinuation: (run) => 2026-10-24T21:36:23.1300108Z ~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1300111Z 2026-10-24T21:36:23.1300453Z src/orchestration-v2/Orchestrator.ts:12239:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.autoArmLimitRecovery")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1300456Z 2026-10-24T21:36:23.1300512Z 12239 autoArmLimitRecovery: (input) => 2026-10-24T21:36:23.1300552Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1300556Z 2026-10-24T21:36:23.1300854Z src/orchestration-v2/Orchestrator.ts:12267:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.searchThread")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1300856Z 2026-10-24T21:36:23.1300906Z 12267 searchThread: (input) => 2026-10-24T21:36:23.1300948Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1300950Z 2026-10-24T21:36:23.1301331Z src/orchestration-v2/Orchestrator.ts:12275:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getThreadHistoryPage")((threadId, cursor, throughEntryId, conversationOnly) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1301333Z 2026-10-24T21:36:23.1301449Z 12275 getThreadHistoryPage: (threadId, cursor, throughEntryId, conversationOnly) => 2026-10-24T21:36:23.1301493Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1301495Z 2026-10-24T21:36:23.1301817Z src/orchestration-v2/Orchestrator.ts:12279:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getTimelinePage")((threadId, options) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1301819Z 2026-10-24T21:36:23.1301882Z 12279 getTimelinePage: (threadId, options) => 2026-10-24T21:36:23.1301927Z ~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1301929Z 2026-10-24T21:36:23.1302234Z src/orchestration-v2/Orchestrator.ts:12283:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getMessageCount")((threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1302236Z 2026-10-24T21:36:23.1302289Z 12283 getMessageCount: (threadId) => 2026-10-24T21:36:23.1302333Z ~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1302335Z 2026-10-24T21:36:23.1302634Z src/orchestration-v2/Orchestrator.ts:12287:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getTurnItem")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1302637Z 2026-10-24T21:36:23.1302685Z 12287 getTurnItem: (input) => 2026-10-24T21:36:23.1302723Z ~~~~~~~~~~~ 2026-10-24T21:36:23.1302726Z 2026-10-24T21:36:23.1303061Z src/orchestration-v2/Orchestrator.ts:12295:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getThreadRecords")((threadId, fields, filter) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1303066Z 2026-10-24T21:36:23.1303139Z 12295 getThreadRecords: (threadId, fields, filter) => 2026-10-24T21:36:23.1303182Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1303184Z 2026-10-24T21:36:23.1303495Z src/orchestration-v2/Orchestrator.ts:12299:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getThreadProjection")((threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1303542Z 2026-10-24T21:36:23.1303599Z 12299 getThreadProjection: (threadId) => 2026-10-24T21:36:23.1303643Z ~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1303645Z 2026-10-24T21:36:23.1303956Z src/orchestration-v2/Orchestrator.ts:12303:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getCheckpointContext")((threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1304003Z 2026-10-24T21:36:23.1304061Z 12303 getCheckpointContext: (threadId) => 2026-10-24T21:36:23.1304101Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1304103Z 2026-10-24T21:36:23.1304410Z src/orchestration-v2/Orchestrator.ts:12307:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getThreadSnapshot")((threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1304412Z 2026-10-24T21:36:23.1304466Z 12307 getThreadSnapshot: (threadId) => 2026-10-24T21:36:23.1304510Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1304512Z 2026-10-24T21:36:23.1304848Z src/orchestration-v2/Orchestrator.ts:12311:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getThreadSnapshotWindow")((threadId, options) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1304852Z 2026-10-24T21:36:23.1304922Z 12311 getThreadSnapshotWindow: (threadId, options) => 2026-10-24T21:36:23.1304968Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1304970Z 2026-10-24T21:36:23.1305276Z src/orchestration-v2/Orchestrator.ts:12315:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getShellSnapshot")((options) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1305278Z 2026-10-24T21:36:23.1305330Z 12315 getShellSnapshot: (options) => 2026-10-24T21:36:23.1305372Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1305374Z 2026-10-24T21:36:23.1305689Z src/orchestration-v2/Orchestrator.ts:12317:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.listActiveSubagentThreadIds")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1305691Z 2026-10-24T21:36:23.1305752Z 12317 listActiveSubagentThreadIds: () => 2026-10-24T21:36:23.1305800Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1305802Z 2026-10-24T21:36:23.1306109Z src/orchestration-v2/Orchestrator.ts:12319:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.readShellSnapshot")((options) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1306111Z 2026-10-24T21:36:23.1306165Z 12319 readShellSnapshot: (options) => 2026-10-24T21:36:23.1306206Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1306208Z 2026-10-24T21:36:23.1306512Z src/orchestration-v2/Orchestrator.ts:12326:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getThreadShell")((threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1306514Z 2026-10-24T21:36:23.1306566Z 12326 getThreadShell: (threadId) => 2026-10-24T21:36:23.1306610Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1306612Z 2026-10-24T21:36:23.1306931Z src/orchestration-v2/Orchestrator.ts:12330:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getThreadEventSequence")((threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1306933Z 2026-10-24T21:36:23.1306993Z 12330 getThreadEventSequence: (threadId) => 2026-10-24T21:36:23.1307037Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1307039Z 2026-10-24T21:36:23.1307358Z src/orchestration-v2/ProjectSettingsUpgrade.integration.test.ts:160:28 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-24T21:36:23.1307439Z 2026-10-24T21:36:23.1307507Z 160 getInstance: () => Effect.succeed(undefined), 2026-10-24T21:36:23.1307562Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1307565Z 2026-10-24T21:36:23.1307856Z src/orchestration-v2/ProjectStore.ts:269:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProjectStoreV2.getShell")((projectId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1307902Z 2026-10-24T21:36:23.1308011Z 269 getShell: (projectId) => get(projectId).pipe(Effect.map(Option.map(toShell))), 2026-10-24T21:36:23.1308051Z ~~~~~~~~ 2026-10-24T21:36:23.1308053Z 2026-10-24T21:36:23.1308347Z src/orchestration-v2/ProjectStore.ts:270:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProjectStoreV2.listShells")((options) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1308349Z 2026-10-24T21:36:23.1308399Z 270 listShells: (options) => 2026-10-24T21:36:23.1308437Z ~~~~~~~~~~ 2026-10-24T21:36:23.1308439Z 2026-10-24T21:36:23.1308690Z src/orchestration-v2/ProjectionControlReads.test.ts:279:11 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1308695Z 2026-10-24T21:36:23.1308742Z 279 Effect.succeed( 2026-10-24T21:36:23.1308786Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1308788Z 2026-10-24T21:36:23.1309109Z src/orchestration-v2/ProviderAdapterRegistry.ts:78:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapterRegistryV2.get")((instanceId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1309114Z 2026-10-24T21:36:23.1309157Z 78 get: (instanceId) => 2026-10-24T21:36:23.1309198Z ~~~ 2026-10-24T21:36:23.1309200Z 2026-10-24T21:36:23.1309569Z src/orchestration-v2/ProviderAdapterRegistry.ts:135:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapterRegistryV2.list")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1309572Z 2026-10-24T21:36:23.1309616Z 135 list: () => 2026-10-24T21:36:23.1309653Z ~~~~ 2026-10-24T21:36:23.1309655Z 2026-10-24T21:36:23.1309977Z src/orchestration-v2/ProviderEventIngestor.ts:93:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderTurnAnalytics.record")((properties) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1309979Z 2026-10-24T21:36:23.1310062Z 93 record: (properties: Readonly>) => 2026-10-24T21:36:23.1310102Z ~~~~~~ 2026-10-24T21:36:23.1310104Z 2026-10-24T21:36:23.1310493Z src/orchestration-v2/ProviderEventIngestor.ts:818:15 - suggestion TS377120: `Effect.filterOrElse` expresses this conditional validation more directly than `Effect.flatMap` with an identity `Effect.succeed` branch. effect(flatMapConditionalToFilterOrFail) 2026-10-24T21:36:23.1310496Z 2026-10-24T21:36:23.1310554Z 818 Effect.flatMap((storedEvents) => 2026-10-24T21:36:23.1310600Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1310603Z 2026-10-24T21:36:23.1310857Z src/orchestration-v2/ProviderSessionManager.test.ts:1155:19 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1310861Z 2026-10-24T21:36:23.1310982Z 1155 : Effect.succeed(Option.some(makeBrowserAccessProject(requestedProjectId))), 2026-10-24T21:36:23.1311028Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1311030Z 2026-10-24T21:36:23.1311280Z src/orchestration-v2/ProviderTurnStartService.test.ts:150:13 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1311282Z 2026-10-24T21:36:23.1311328Z 150 Effect.succeed( 2026-10-24T21:36:23.1311429Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1311431Z 2026-10-24T21:36:23.1311681Z src/orchestration-v2/ProviderTurnStartService.test.ts:703:13 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1311683Z 2026-10-24T21:36:23.1311864Z 703 Effect.succeed(Option.some({ workspaceRoot: "/tmp/native-account-project" } as never)), 2026-10-24T21:36:23.1311905Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1311907Z 2026-10-24T21:36:23.1312163Z src/orchestration-v2/ProviderTurnStartService.testkit.ts:14:20 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1312165Z 2026-10-24T21:36:23.1312230Z 14 getById: () => Effect.succeed(Option.none()), 2026-10-24T21:36:23.1312275Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1312277Z 2026-10-24T21:36:23.1312563Z src/orchestration-v2/ProviderTurnStartService.ts:205:39 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-24T21:36:23.1312568Z 2026-10-24T21:36:23.1312643Z 205 Effect.catchCause(() => Effect.succeed(undefined)), 2026-10-24T21:36:23.1312706Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1312709Z 2026-10-24T21:36:23.1313080Z src/orchestration-v2/ProviderTurnStartService.ts:512:15 - suggestion TS377116: `Effect.catchCauseIf` expresses selective recovery more directly than `Effect.catchCause` with a conditional `Effect.failCause` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-24T21:36:23.1313082Z 2026-10-24T21:36:23.1313137Z 512 Effect.catchCause((cause) => 2026-10-24T21:36:23.1313181Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1313183Z 2026-10-24T21:36:23.1313586Z src/orchestration-v2/ProviderTurnStartService.ts:1302:7 - suggestion TS377014: This generator returns an Effect-able value directly, which produces a nested `Effect>`. If the intended result is the inner Effect value, `return yield*` represents that form. effect(returnEffectInGen) 2026-10-24T21:36:23.1313589Z 2026-10-24T21:36:23.1313649Z 1302 return runExecution.startRootRun({ 2026-10-24T21:36:23.1313690Z ~~~~~~ 2026-10-24T21:36:23.1313692Z 2026-10-24T21:36:23.1313940Z src/orchestration-v2/PullRequestWatchReactor.ts:478:53 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-24T21:36:23.1313943Z 2026-10-24T21:36:23.1314037Z 478 ? pullRequests.activity(reference).pipe(Effect.map(Option.some)) 2026-10-24T21:36:23.1314100Z ~~~~~~~~~~ 2026-10-24T21:36:23.1314102Z 2026-10-24T21:36:23.1314453Z src/orchestration-v2/ResourceCleanupService.ts:49:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ResourceCleanupService.cleanupScheduledTasks")((threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1314455Z 2026-10-24T21:36:23.1314527Z 49 cleanupScheduledTasks: (threadId: ThreadId) => 2026-10-24T21:36:23.1314571Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1314575Z 2026-10-24T21:36:23.1314910Z src/orchestration-v2/ResourceCleanupService.ts:58:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ResourceCleanupService.cleanupTerminals")((threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1314914Z 2026-10-24T21:36:23.1314973Z 58 cleanupTerminals: (threadId: string) => 2026-10-24T21:36:23.1315016Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1315018Z 2026-10-24T21:36:23.1315404Z src/orchestration-v2/ResourceCleanupService.ts:66:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ResourceCleanupService.cleanupPreviews")((threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1315407Z 2026-10-24T21:36:23.1315467Z 66 cleanupPreviews: (threadId: string) => 2026-10-24T21:36:23.1315508Z ~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1315510Z 2026-10-24T21:36:23.1315855Z src/orchestration-v2/ResourceCleanupService.ts:74:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ResourceCleanupService.cleanupAttachments")((attachmentIds) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1315907Z 2026-10-24T21:36:23.1315997Z 74 cleanupAttachments: (attachmentIds: ReadonlyArray) => 2026-10-24T21:36:23.1316041Z ~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1316044Z 2026-10-24T21:36:23.1316298Z src/orchestration-v2/RunExecutionService.test.ts:1812:16 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-24T21:36:23.1316301Z 2026-10-24T21:36:23.1316358Z 1812 ).pipe(Effect.map(Option.some)), 2026-10-24T21:36:23.1316402Z ~~~~~~~~~~ 2026-10-24T21:36:23.1316404Z 2026-10-24T21:36:23.1316760Z src/orchestration-v2/RunExecutionService.ts:931:15 - suggestion TS377116: `Effect.catchCauseIf` expresses selective recovery more directly than `Effect.catchCause` with a conditional `Effect.failCause` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-24T21:36:23.1316764Z 2026-10-24T21:36:23.1316820Z 931 Effect.catchCause((cause) => 2026-10-24T21:36:23.1316866Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1316869Z 2026-10-24T21:36:23.1317095Z src/orchestration-v2/RuntimePolicy.test.ts:90:9 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1317097Z 2026-10-24T21:36:23.1317148Z 90 Effect.succeed( 2026-10-24T21:36:23.1317193Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1317195Z 2026-10-24T21:36:23.1317486Z src/orchestration-v2/RuntimePolicy.ts:54:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("RuntimePolicyV2.resolve")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1317488Z 2026-10-24T21:36:23.1317534Z 54 resolve: (input) => 2026-10-24T21:36:23.1317574Z ~~~~~~~ 2026-10-24T21:36:23.1317576Z 2026-10-24T21:36:23.1317824Z src/orchestration-v2/RuntimeRequestService.test.ts:29:7 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1317826Z 2026-10-24T21:36:23.1317870Z 29 Effect.succeed( 2026-10-24T21:36:23.1317912Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1317914Z 2026-10-24T21:36:23.1318154Z src/orchestration-v2/ThreadLaunchService.test.ts:189:33 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1318160Z 2026-10-24T21:36:23.1318252Z 189 getByWorkspaceRoot: () => Effect.succeed(Option.some(project)), 2026-10-24T21:36:23.1318306Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1318308Z 2026-10-24T21:36:23.1318550Z src/orchestration-v2/ThreadLaunchService.test.ts:220:32 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1318554Z 2026-10-24T21:36:23.1318639Z 220 folderForThread: () => Effect.succeed(Option.none()), 2026-10-24T21:36:23.1318688Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1318690Z 2026-10-24T21:36:23.1319007Z src/orchestration-v2/ThreadLifecycleService.ts:91:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadLifecycleService.archive")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1319009Z 2026-10-24T21:36:23.1319059Z 91 archive: (input) => 2026-10-24T21:36:23.1319100Z ~~~~~~~ 2026-10-24T21:36:23.1319102Z 2026-10-24T21:36:23.1319465Z src/orchestration-v2/ThreadLifecycleService.ts:97:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadLifecycleService.unarchive")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1319468Z 2026-10-24T21:36:23.1319550Z 97 unarchive: (input) => 2026-10-24T21:36:23.1319593Z ~~~~~~~~~ 2026-10-24T21:36:23.1319595Z 2026-10-24T21:36:23.1319910Z src/orchestration-v2/ThreadLifecycleService.ts:103:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadLifecycleService.delete")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1319912Z 2026-10-24T21:36:23.1319960Z 103 delete: (input) => 2026-10-24T21:36:23.1319999Z ~~~~~~ 2026-10-24T21:36:23.1320004Z 2026-10-24T21:36:23.1320344Z src/orchestration-v2/ThreadLifecycleService.ts:109:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadLifecycleService.updateMetadata")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1320346Z 2026-10-24T21:36:23.1320427Z 109 updateMetadata: (input) => 2026-10-24T21:36:23.1320469Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1320471Z 2026-10-24T21:36:23.1320797Z src/orchestration-v2/ThreadLifecycleService.ts:118:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadLifecycleService.setRuntimeMode")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1320801Z 2026-10-24T21:36:23.1320851Z 118 setRuntimeMode: (input) => 2026-10-24T21:36:23.1320890Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1320892Z 2026-10-24T21:36:23.1321226Z src/orchestration-v2/ThreadLifecycleService.ts:125:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadLifecycleService.setInteractionMode")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1321228Z 2026-10-24T21:36:23.1321283Z 125 setInteractionMode: (input) => 2026-10-24T21:36:23.1321328Z ~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1321330Z 2026-10-24T21:36:23.1321661Z src/orchestration-v2/ThreadLifecycleService.ts:132:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadLifecycleService.setModelSelection")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1321667Z 2026-10-24T21:36:23.1321716Z 132 setModelSelection: (input) => 2026-10-24T21:36:23.1321760Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1321762Z 2026-10-24T21:36:23.1322127Z src/orchestration-v2/ThreadManagementService.ts:689:7 - suggestion TS377120: `Effect.filterOrFail` expresses this conditional validation more directly than `Effect.flatMap` with an identity `Effect.succeed` branch. effect(flatMapConditionalToFilterOrFail) 2026-10-24T21:36:23.1322129Z 2026-10-24T21:36:23.1322184Z 689 Effect.flatMap((projection) => 2026-10-24T21:36:23.1322226Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1322228Z 2026-10-24T21:36:23.1322505Z src/orchestration-v2/ThreadManagementService.ts:706:5 - suggestion TS377015: This expression contains chained `pipe` calls that can be simplified to a single `pipe` call. effect(unnecessaryPipeChain) 2026-10-24T21:36:23.1322507Z 2026-10-24T21:36:23.1322577Z 706 ensureProjectionTranscript(input.threadId) 2026-10-24T21:36:23.1322630Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1322761Z 707 .pipe(Effect.andThen(orchestrator.getThreadRecords(input.threadId, fields, filter))) 2026-10-24T21:36:23.1322843Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1322882Z ... 2026-10-24T21:36:23.1322922Z 726 ), 2026-10-24T21:36:23.1322959Z ~~~~~~~~~~ 2026-10-24T21:36:23.1323001Z 727 ); 2026-10-24T21:36:23.1323042Z ~~~~~~~ 2026-10-24T21:36:23.1323044Z 2026-10-24T21:36:23.1323453Z src/orchestration-v2/ThreadManagementService.ts:717:9 - suggestion TS377120: `Effect.filterOrFail` expresses this conditional validation more directly than `Effect.flatMap` with an identity `Effect.succeed` branch. effect(flatMapConditionalToFilterOrFail) 2026-10-24T21:36:23.1323455Z 2026-10-24T21:36:23.1323513Z 717 Effect.flatMap((projection) => 2026-10-24T21:36:23.1323585Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1323587Z 2026-10-24T21:36:23.1323940Z src/orchestration-v2/ThreadManagementService.ts:1131:43 - suggestion TS377019: This `yield* Effect.fail(...)` passes a yieldable error value. `yield*` represents that value directly without wrapping it in `Effect.fail`. effect(unnecessaryFailYieldableError) 2026-10-24T21:36:23.1323943Z 2026-10-24T21:36:23.1324041Z 1131 if (failures[0] !== undefined) return yield* Effect.fail(failures[0]); 2026-10-24T21:36:23.1324095Z ~~~~~ 2026-10-24T21:36:23.1324097Z 2026-10-24T21:36:23.1324431Z src/orchestration-v2/ThreadManagementService.ts:1142:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadManagementService.searchThread")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1324433Z 2026-10-24T21:36:23.1324480Z 1142 searchThread: (input) => 2026-10-24T21:36:23.1324523Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1324527Z 2026-10-24T21:36:23.1324946Z src/orchestration-v2/ThreadManagementService.ts:1147:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadManagementService.getThreadHistoryPage")((threadId, cursor, throughEntryId, conversationOnly) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1324948Z 2026-10-24T21:36:23.1325061Z 1147 getThreadHistoryPage: (threadId, cursor, throughEntryId, conversationOnly) => 2026-10-24T21:36:23.1325105Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1325107Z 2026-10-24T21:36:23.1325460Z src/orchestration-v2/ThreadManagementService.ts:1153:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadManagementService.getTimelinePage")((threadId, options) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1325462Z 2026-10-24T21:36:23.1325526Z 1153 getTimelinePage: (threadId, options) => 2026-10-24T21:36:23.1325572Z ~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1325574Z 2026-10-24T21:36:23.1325917Z src/orchestration-v2/ThreadManagementService.ts:1157:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadManagementService.getMessageCount")((threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1325919Z 2026-10-24T21:36:23.1325972Z 1157 getMessageCount: (threadId) => 2026-10-24T21:36:23.1326013Z ~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1326015Z 2026-10-24T21:36:23.1326349Z src/orchestration-v2/ThreadManagementService.ts:1161:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadManagementService.getTurnItem")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1326352Z 2026-10-24T21:36:23.1326399Z 1161 getTurnItem: (input) => 2026-10-24T21:36:23.1326441Z ~~~~~~~~~~~ 2026-10-24T21:36:23.1326443Z 2026-10-24T21:36:23.1326808Z src/orchestration-v2/ThreadManagementService.ts:1166:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadManagementService.getThreadRecords")((threadId, fields, filter) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1326812Z 2026-10-24T21:36:23.1326880Z 1166 getThreadRecords: (threadId, fields, filter) => 2026-10-24T21:36:23.1326924Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1326926Z 2026-10-24T21:36:23.1327343Z src/orchestration-v2/ThreadManagementService.ts:1206:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("LegacyV1ThreadImporter.LegacyV1ThreadImporter.ensureTranscript")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1327345Z 2026-10-24T21:36:23.1327479Z 1206 ensureTranscript: () => Effect.succeed({ importedThreadCount: 0, importedMessageCount: 0 }), 2026-10-24T21:36:23.1327524Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1327526Z 2026-10-24T21:36:23.1327778Z src/orchestration-v2/ThreadPullRequestService.test.ts:119:29 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1327828Z 2026-10-24T21:36:23.1327910Z 119 getShell: () => Effect.succeed(Option.some(project)), 2026-10-24T21:36:23.1327961Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1327963Z 2026-10-24T21:36:23.1328218Z src/orchestration-v2/ThreadPullRequestService.test.ts:238:31 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1328220Z 2026-10-24T21:36:23.1328302Z 238 getShell: () => Effect.succeed(Option.some(project)), 2026-10-24T21:36:23.1328350Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1328352Z 2026-10-24T21:36:23.1328721Z src/orchestration-v2/ThreadPullRequestService.ts:326:17 - suggestion TS377116: `Effect.catchCauseIf` expresses selective recovery more directly than `Effect.catchCause` with a conditional `Effect.failCause` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-24T21:36:23.1328725Z 2026-10-24T21:36:23.1328781Z 326 Effect.catchCause((cause) => 2026-10-24T21:36:23.1328830Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1328832Z 2026-10-24T21:36:23.1329198Z src/orchestration-v2/ThreadSettlementService.ts:342:11 - suggestion TS377116: `Effect.catchCauseIf` expresses selective recovery more directly than `Effect.catchCause` with a conditional `Effect.failCause` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-24T21:36:23.1329200Z 2026-10-24T21:36:23.1329253Z 342 Effect.catchCause((cause) => 2026-10-24T21:36:23.1329306Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1329309Z 2026-10-24T21:36:23.1329674Z src/orchestration-v2/ThreadSettlementService.ts:505:11 - suggestion TS377116: `Effect.catchCauseIf` expresses selective recovery more directly than `Effect.catchCause` with a conditional `Effect.failCause` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-24T21:36:23.1329678Z 2026-10-24T21:36:23.1329732Z 505 Effect.catchCause((cause) => 2026-10-24T21:36:23.1329775Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1329780Z 2026-10-24T21:36:23.1330143Z src/orchestration-v2/ThreadSettlementService.ts:523:7 - suggestion TS377116: `Effect.catchCauseIf` expresses selective recovery more directly than `Effect.catchCause` with a conditional `Effect.failCause` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-24T21:36:23.1330145Z 2026-10-24T21:36:23.1330198Z 523 Effect.catchCause((cause) => 2026-10-24T21:36:23.1330242Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1330246Z 2026-10-24T21:36:23.1330628Z src/orchestration-v2/ThreadSettlementService.ts:565:9 - suggestion TS377116: `Effect.catchCauseIf` expresses selective recovery more directly than `Effect.catchCause` with a conditional `Effect.failCause` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-24T21:36:23.1330632Z 2026-10-24T21:36:23.1330684Z 565 Effect.catchCause((cause) => 2026-10-24T21:36:23.1330727Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1330729Z 2026-10-24T21:36:23.1331069Z src/orchestration-v2/TurnItemPositionStore.ts:106:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("TurnItemPositionStoreV2.normalize")((item, runOrdinal) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1331072Z 2026-10-24T21:36:23.1331126Z 106 normalize: (item, runOrdinal) => 2026-10-24T21:36:23.1331170Z ~~~~~~~~~ 2026-10-24T21:36:23.1331172Z 2026-10-24T21:36:23.1331599Z src/orchestration-v2/http.test.ts:54:23 - suggestion TS377112: This input is already assignable to the schema's Encoded type. Use `decodeSync` to preserve compile-time type checking instead of discarding the input type through `decodeUnknownSync`. effect(preferTypedSchemaDecoder) 2026-10-24T21:36:23.1331605Z 2026-10-24T21:36:23.1331701Z 54 const thread = Schema.decodeUnknownSync(OrchestrationV2AppThread)({ 2026-10-24T21:36:23.1331792Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1331794Z 2026-10-24T21:36:23.1332151Z src/orchestration-v2/http.ts:231:11 - suggestion TS377012: This Effect generator contains `try/catch`; in this context, error handling is expressed with Effect APIs such as Effect.try, Effect.tryPromise, Effect.catch, Effect.catchTag). effect(tryCatchInEffectGen) 2026-10-24T21:36:23.1332154Z 2026-10-24T21:36:23.1332195Z 231 try { 2026-10-24T21:36:23.1332234Z ~~~~~ 2026-10-24T21:36:23.1332313Z 232 decodeThreadHistoryCursor(args.query.cursor); 2026-10-24T21:36:23.1332379Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1332419Z ... 2026-10-24T21:36:23.1332544Z 236 return yield* failEnvironmentInternal("orchestration_thread_history_failed", cause); 2026-10-24T21:36:23.1332630Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1332676Z 237 } 2026-10-24T21:36:23.1332719Z ~~~~~~~~~~~ 2026-10-24T21:36:23.1332721Z 2026-10-24T21:36:23.1332951Z src/orchestration-v2/runtimeLayer.test.ts:120:18 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1332956Z 2026-10-24T21:36:23.1333018Z 120 getById: () => Effect.succeed(Option.none()), 2026-10-24T21:36:23.1333064Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1333066Z 2026-10-24T21:36:23.1333301Z src/orchestration-v2/runtimeLayer.test.ts:997:11 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1333303Z 2026-10-24T21:36:23.1333350Z 997 Effect.succeed( 2026-10-24T21:36:23.1333392Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1333394Z 2026-10-24T21:36:23.1333748Z src/orchestration-v2/testkit/CommandOutputRecorder.ts:40:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("CommandOutputHub.CommandOutputHub.append")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1333752Z 2026-10-24T21:36:23.1333801Z 40 append: (input) => 2026-10-24T21:36:23.1333843Z ~~~~~~ 2026-10-24T21:36:23.1333845Z 2026-10-24T21:36:23.1334152Z src/orchestration-v2/testkit/OrchestratorScenario.ts:283:13 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("awaitDispatch")(function*(key) { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1334155Z 2026-10-24T21:36:23.1334211Z 283 const awaitDispatch = (key: string) => 2026-10-24T21:36:23.1334256Z ~~~~~~~~~~~~~ 2026-10-24T21:36:23.1334259Z 2026-10-24T21:36:23.1334660Z src/orchestration-v2/testkit/ProviderReplayHarness.ts:447:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadTitleRegenerationService.ThreadTitleRegenerationService.execute")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1334664Z 2026-10-24T21:36:23.1334715Z 447 execute: () => Effect.void, 2026-10-24T21:36:23.1334754Z ~~~~~~~ 2026-10-24T21:36:23.1334757Z 2026-10-24T21:36:23.1335079Z src/persistence/PullRequestFilesViewed.ts:92:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("PullRequestFilesViewedRepository.list")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1335081Z 2026-10-24T21:36:23.1335127Z 92 list: (input) => 2026-10-24T21:36:23.1335171Z ~~~~ 2026-10-24T21:36:23.1335173Z 2026-10-24T21:36:23.1335548Z src/persistence/PullRequestFilesViewed.ts:102:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("PullRequestFilesViewedRepository.set")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1335551Z 2026-10-24T21:36:23.1335596Z 102 set: (input) => 2026-10-24T21:36:23.1335667Z ~~~ 2026-10-24T21:36:23.1335669Z 2026-10-24T21:36:23.1335989Z src/persistence/PullRequestReviewGuides.ts:54:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("PullRequestReviewGuideRepository.get")((key) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1335991Z 2026-10-24T21:36:23.1336034Z 54 get: (key) => 2026-10-24T21:36:23.1336074Z ~~~ 2026-10-24T21:36:23.1336076Z 2026-10-24T21:36:23.1336401Z src/persistence/PullRequestReviewGuides.ts:64:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("PullRequestReviewGuideRepository.put")((key, guide) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1336406Z 2026-10-24T21:36:23.1336451Z 64 put: (key, guide) => 2026-10-24T21:36:23.1336491Z ~~~ 2026-10-24T21:36:23.1336493Z 2026-10-24T21:36:23.1336821Z src/persistence/initializeV2Database.ts:45:9 - suggestion TS377116: `Effect.catchIf` expresses selective recovery more directly than `Effect.catch` with a conditional `Effect.fail` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-24T21:36:23.1336825Z 2026-10-24T21:36:23.1336875Z 45 Effect.catch((error) => 2026-10-24T21:36:23.1336914Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1336916Z 2026-10-24T21:36:23.1337223Z src/preview/DesktopBrowserChannel.ts:75:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBrowserChannel.awaitAttached")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1337225Z 2026-10-24T21:36:23.1337290Z 75 awaitAttached: () => Effect.succeed(false), 2026-10-24T21:36:23.1337334Z ~~~~~~~~~~~~~ 2026-10-24T21:36:23.1337337Z 2026-10-24T21:36:23.1337636Z src/preview/DesktopBrowserChannel.ts:78:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBrowserChannel.isAttached")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1337640Z 2026-10-24T21:36:23.1337697Z 78 isAttached: () => Effect.succeed(false), 2026-10-24T21:36:23.1337739Z ~~~~~~~~~~ 2026-10-24T21:36:23.1337741Z 2026-10-24T21:36:23.1338034Z src/preview/DesktopBrowserChannel.ts:79:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBrowserChannel.endpoint")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1338037Z 2026-10-24T21:36:23.1338139Z 79 endpoint: () => Effect.die("No desktop app is attached to this server."), 2026-10-24T21:36:23.1338177Z ~~~~~~~~ 2026-10-24T21:36:23.1338182Z 2026-10-24T21:36:23.1338473Z src/preview/DesktopBrowserChannel.ts:80:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBrowserChannel.pointer")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1338476Z 2026-10-24T21:36:23.1338526Z 80 pointer: () => Effect.void, 2026-10-24T21:36:23.1338566Z ~~~~~~~ 2026-10-24T21:36:23.1338570Z 2026-10-24T21:36:23.1338893Z src/preview/DesktopBrowserChannel.ts:194:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBrowserChannel.awaitAttached")((key, timeout) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1338896Z 2026-10-24T21:36:23.1338946Z 194 awaitAttached: (key, timeout) => 2026-10-24T21:36:23.1338990Z ~~~~~~~~~~~~~ 2026-10-24T21:36:23.1338992Z 2026-10-24T21:36:23.1339345Z src/preview/DesktopBrowserChannel.ts:216:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBrowserChannel.isAttached")((key) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1339347Z 2026-10-24T21:36:23.1339447Z 216 isAttached: (key) => Effect.sync(() => attachedTabs.has(keyOf(key))), 2026-10-24T21:36:23.1339488Z ~~~~~~~~~~ 2026-10-24T21:36:23.1339491Z 2026-10-24T21:36:23.1339796Z src/preview/DesktopBrowserChannel.ts:218:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBrowserChannel.pointer")((key, pointer) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1339845Z 2026-10-24T21:36:23.1339944Z 218 pointer: (key, pointer) => command({ type: "pointer", ...key, ...pointer }), 2026-10-24T21:36:23.1339987Z ~~~~~~~ 2026-10-24T21:36:23.1339989Z 2026-10-24T21:36:23.1340465Z src/preview/ServerBrowser.ts:481:23 - suggestion TS377074: `Effect.runPromise` is called inside an Effect with a separate services invocation. In this context, child Effects run with the surrounding services, which can be accessed through `Effect.context` and `Effect.runPromiseWith`. effect(runEffectInsideEffect) 2026-10-24T21:36:23.1340468Z 2026-10-24T21:36:23.1340562Z 481 executable: () => Effect.runPromise(previewBrowser.executable), 2026-10-24T21:36:23.1340608Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1340615Z 2026-10-24T21:36:23.1341042Z src/preview/ServerBrowser.ts:688:9 - suggestion TS377074: `Effect.runPromise` is called inside an Effect with a separate services invocation. In this context, child Effects run with the surrounding services, which can be accessed through `Effect.context` and `Effect.runPromiseWith`. effect(runEffectInsideEffect) 2026-10-24T21:36:23.1341046Z 2026-10-24T21:36:23.1341097Z 688 ? Effect.runPromise( 2026-10-24T21:36:23.1341141Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1341143Z 2026-10-24T21:36:23.1341576Z src/preview/ServerBrowser.ts:697:25 - suggestion TS377074: `Effect.runPromise` is called inside an Effect with a separate services invocation. In this context, child Effects run with the surrounding services, which can be accessed through `Effect.context` and `Effect.runPromiseWith`. effect(runEffectInsideEffect) 2026-10-24T21:36:23.1341578Z 2026-10-24T21:36:23.1341654Z 697 const scope = await Effect.runPromise(Scope.make()); 2026-10-24T21:36:23.1341703Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1341707Z 2026-10-24T21:36:23.1342135Z src/preview/ServerBrowser.ts:699:30 - suggestion TS377074: `Effect.runPromise` is called inside an Effect with a separate services invocation. In this context, child Effects run with the surrounding services, which can be accessed through `Effect.context` and `Effect.runPromiseWith`. effect(runEffectInsideEffect) 2026-10-24T21:36:23.1342138Z 2026-10-24T21:36:23.1342200Z 699 const endpoint = await Effect.runPromise( 2026-10-24T21:36:23.1342253Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1342255Z 2026-10-24T21:36:23.1342680Z src/preview/ServerBrowser.ts:709:17 - suggestion TS377074: `Effect.runPromise` is called inside an Effect with a separate services invocation. In this context, child Effects run with the surrounding services, which can be accessed through `Effect.context` and `Effect.runPromiseWith`. effect(runEffectInsideEffect) 2026-10-24T21:36:23.1342682Z 2026-10-24T21:36:23.1342762Z 709 await Effect.runPromise(Scope.close(scope, Exit.void)); 2026-10-24T21:36:23.1342813Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1342815Z 2026-10-24T21:36:23.1343238Z src/preview/ServerBrowser.ts:713:13 - suggestion TS377074: `Effect.runPromise` is called inside an Effect with a separate services invocation. In this context, child Effects run with the surrounding services, which can be accessed through `Effect.context` and `Effect.runPromiseWith`. effect(runEffectInsideEffect) 2026-10-24T21:36:23.1343240Z 2026-10-24T21:36:23.1343323Z 713 await Effect.runPromise(Scope.close(scope, Exit.void)); 2026-10-24T21:36:23.1343368Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1343371Z 2026-10-24T21:36:23.1343841Z src/preview/ServerBrowser.ts:1200:11 - suggestion TS377074: `Effect.runPromise` is called inside an Effect with a separate services invocation. In this context, child Effects run with the surrounding services, which can be accessed through `Effect.context` and `Effect.runPromiseWith`. effect(runEffectInsideEffect) 2026-10-24T21:36:23.1343876Z 2026-10-24T21:36:23.1343924Z 1200 await Effect.runPromise( 2026-10-24T21:36:23.1343971Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1343973Z 2026-10-24T21:36:23.1344400Z src/preview/ServerBrowser.ts:1693:17 - suggestion TS377074: `Effect.runPromise` is called inside an Effect with a separate services invocation. In this context, child Effects run with the surrounding services, which can be accessed through `Effect.context` and `Effect.runPromiseWith`. effect(runEffectInsideEffect) 2026-10-24T21:36:23.1344402Z 2026-10-24T21:36:23.1344454Z 1693 : await Effect.runPromise( 2026-10-24T21:36:23.1344500Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1344505Z 2026-10-24T21:36:23.1344927Z src/preview/ServerBrowser.ts:1757:21 - suggestion TS377074: `Effect.runPromise` is called inside an Effect with a separate services invocation. In this context, child Effects run with the surrounding services, which can be accessed through `Effect.context` and `Effect.runPromiseWith`. effect(runEffectInsideEffect) 2026-10-24T21:36:23.1344931Z 2026-10-24T21:36:23.1344987Z 1757 ? await Effect.runPromise( 2026-10-24T21:36:23.1345035Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1345037Z 2026-10-24T21:36:23.1345293Z src/preview/ServerBrowser.ts:1760:58 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-24T21:36:23.1345295Z 2026-10-24T21:36:23.1345400Z 1760 ServerBrowserTabNotFoundError: () => Effect.succeed(undefined), 2026-10-24T21:36:23.1345466Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1345469Z 2026-10-24T21:36:23.1345896Z src/preview/ServerBrowser.ts:1766:38 - suggestion TS377074: `Effect.runPromise` is called inside an Effect with a separate services invocation. In this context, child Effects run with the surrounding services, which can be accessed through `Effect.context` and `Effect.runPromiseWith`. effect(runEffectInsideEffect) 2026-10-24T21:36:23.1345900Z 2026-10-24T21:36:23.1345972Z 1766 const { sessions } = await Effect.runPromise( 2026-10-24T21:36:23.1346030Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1346032Z 2026-10-24T21:36:23.1346459Z src/preview/ServerBrowser.ts:1794:19 - suggestion TS377074: `Effect.runPromise` is called inside an Effect with a separate services invocation. In this context, child Effects run with the surrounding services, which can be accessed through `Effect.context` and `Effect.runPromiseWith`. effect(runEffectInsideEffect) 2026-10-24T21:36:23.1346463Z 2026-10-24T21:36:23.1346513Z 1794 await Effect.runPromise( 2026-10-24T21:36:23.1346559Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1346561Z 2026-10-24T21:36:23.1346985Z src/preview/ServerBrowser.ts:1825:21 - suggestion TS377074: `Effect.runPromise` is called inside an Effect with a separate services invocation. In this context, child Effects run with the surrounding services, which can be accessed through `Effect.context` and `Effect.runPromiseWith`. effect(runEffectInsideEffect) 2026-10-24T21:36:23.1346989Z 2026-10-24T21:36:23.1347041Z 1825 await Effect.runPromise( 2026-10-24T21:36:23.1347088Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1347090Z 2026-10-24T21:36:23.1347561Z src/preview/ServerBrowser.ts:1889:13 - suggestion TS377074: `Effect.runPromise` is called inside an Effect with a separate services invocation. In this context, child Effects run with the surrounding services, which can be accessed through `Effect.context` and `Effect.runPromiseWith`. effect(runEffectInsideEffect) 2026-10-24T21:36:23.1347565Z 2026-10-24T21:36:23.1347689Z 1889 await Effect.runPromise(manager.close({ threadId: tab.threadId, tabId: tab.tabId })); 2026-10-24T21:36:23.1347737Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1347739Z 2026-10-24T21:36:23.1348206Z src/preview/ServerBrowser.ts:1957:15 - suggestion TS377074: `Effect.runPromise` is called inside an Effect with a separate services invocation. In this context, child Effects run with the surrounding services, which can be accessed through `Effect.context` and `Effect.runPromiseWith`. effect(runEffectInsideEffect) 2026-10-24T21:36:23.1348209Z 2026-10-24T21:36:23.1348259Z 1957 await Effect.runPromise( 2026-10-24T21:36:23.1348302Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1348308Z 2026-10-24T21:36:23.1348734Z src/preview/ServerBrowser.ts:1969:32 - suggestion TS377074: `Effect.runPromise` is called inside an Effect with a separate services invocation. In this context, child Effects run with the surrounding services, which can be accessed through `Effect.context` and `Effect.runPromiseWith`. effect(runEffectInsideEffect) 2026-10-24T21:36:23.1348736Z 2026-10-24T21:36:23.1348802Z 1969 const snapshot = await Effect.runPromise( 2026-10-24T21:36:23.1348858Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1348862Z 2026-10-24T21:36:23.1349289Z src/preview/ServerBrowser.ts:2215:15 - suggestion TS377074: `Effect.runPromise` is called inside an Effect with a separate services invocation. In this context, child Effects run with the surrounding services, which can be accessed through `Effect.context` and `Effect.runPromiseWith`. effect(runEffectInsideEffect) 2026-10-24T21:36:23.1349291Z 2026-10-24T21:36:23.1349340Z 2215 await Effect.runPromise( 2026-10-24T21:36:23.1349434Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1349436Z 2026-10-24T21:36:23.1349703Z src/preview/ServerBrowserStream.ts:179:13 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("receive")((chunk) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1349706Z 2026-10-24T21:36:23.1349779Z 179 const receive = (chunk: Uint8Array | string) => { 2026-10-24T21:36:23.1349825Z ~~~~~~~ 2026-10-24T21:36:23.1349828Z 2026-10-24T21:36:23.1350113Z src/preview/ServerBrowserStream.ts:209:5 - suggestion TS377095: `Effect.orElseSucceed` expresses the same recovery more directly than `Effect.catch` followed by `Effect.succeed`. effect(catchToOrElseSucceed) 2026-10-24T21:36:23.1350116Z 2026-10-24T21:36:23.1350206Z 209 Effect.catch(() => Effect.succeed(HttpServerResponse.empty())), 2026-10-24T21:36:23.1350250Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1350252Z 2026-10-24T21:36:23.1350595Z src/process/externalLauncher.ts:860:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ExternalLauncher.resolveAvailableEditors")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1350598Z 2026-10-24T21:36:23.1350682Z 860 resolveAvailableEditors: () => cachedAvailableEditors, 2026-10-24T21:36:23.1350724Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1350729Z 2026-10-24T21:36:23.1351041Z src/process/externalLauncher.ts:861:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ExternalLauncher.resolveFileManagerRevealKind")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1351045Z 2026-10-24T21:36:23.1351105Z 861 resolveFileManagerRevealKind: () => 2026-10-24T21:36:23.1351152Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1351154Z 2026-10-24T21:36:23.1351450Z src/process/externalLauncher.ts:865:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ExternalLauncher.launchBrowser")((target) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1351453Z 2026-10-24T21:36:23.1351503Z 865 launchBrowser: (target) => 2026-10-24T21:36:23.1351600Z ~~~~~~~~~~~~~ 2026-10-24T21:36:23.1351603Z 2026-10-24T21:36:23.1351894Z src/process/externalLauncher.ts:869:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ExternalLauncher.launchEditor")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1351949Z 2026-10-24T21:36:23.1352000Z 869 launchEditor: (input) => 2026-10-24T21:36:23.1352044Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1352046Z 2026-10-24T21:36:23.1352281Z src/project/AgentSessionImporter.test.ts:212:15 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1352283Z 2026-10-24T21:36:23.1352330Z 212 Effect.succeed( 2026-10-24T21:36:23.1352374Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1352376Z 2026-10-24T21:36:23.1352605Z src/project/ManagedProjectFolders.ts:346:13 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1352607Z 2026-10-24T21:36:23.1352689Z 346 ? Effect.succeed(Option.some(folderFor(id.slice(-8)))) 2026-10-24T21:36:23.1352731Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1352733Z 2026-10-24T21:36:23.1352958Z src/project/ManagedProjectFolders.ts:348:15 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1352963Z 2026-10-24T21:36:23.1353029Z 348 ? Effect.succeed(Option.some(fullFolder)) 2026-10-24T21:36:23.1353073Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1353075Z 2026-10-24T21:36:23.1353375Z src/project/ProjectCloneTracker.ts:432:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProjectCloneTracker.start")((input, hooks) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1353380Z 2026-10-24T21:36:23.1353456Z 432 start: (input, hooks) => locked(start(input, hooks)), 2026-10-24T21:36:23.1353498Z ~~~~~ 2026-10-24T21:36:23.1353500Z 2026-10-24T21:36:23.1353801Z src/project/ProjectCloneTracker.ts:433:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProjectCloneTracker.cancel")((projectId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1353805Z 2026-10-24T21:36:23.1353874Z 433 cancel: (projectId) => locked(cancel(projectId)), 2026-10-24T21:36:23.1353912Z ~~~~~~ 2026-10-24T21:36:23.1353915Z 2026-10-24T21:36:23.1354209Z src/project/ProjectCloneTracker.ts:434:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProjectCloneTracker.retry")((projectId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1354211Z 2026-10-24T21:36:23.1354277Z 434 retry: (projectId) => locked(retry(projectId)), 2026-10-24T21:36:23.1354320Z ~~~~~ 2026-10-24T21:36:23.1354322Z 2026-10-24T21:36:23.1354620Z src/project/ProjectCloneTracker.ts:435:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProjectCloneTracker.discard")((projectId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1354622Z 2026-10-24T21:36:23.1354691Z 435 discard: (projectId) => locked(discard(projectId)), 2026-10-24T21:36:23.1354733Z ~~~~~~~ 2026-10-24T21:36:23.1354735Z 2026-10-24T21:36:23.1355045Z src/provider/CodexChatGptHandoff.ts:21:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ServerSecretStore.ServerSecretStore.get")((key) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1355047Z 2026-10-24T21:36:23.1355142Z 21 get: (key) => Effect.sync(() => Option.fromUndefinedOr(bytes.get(key))), 2026-10-24T21:36:23.1355183Z ~~~ 2026-10-24T21:36:23.1355185Z 2026-10-24T21:36:23.1355543Z src/provider/CodexChatGptHandoff.ts:22:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ServerSecretStore.ServerSecretStore.set")((key, value) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1355549Z 2026-10-24T21:36:23.1355595Z 22 set: (key, value) => 2026-10-24T21:36:23.1355638Z ~~~ 2026-10-24T21:36:23.1355640Z 2026-10-24T21:36:23.1355997Z src/provider/CodexChatGptHandoff.ts:26:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ServerSecretStore.ServerSecretStore.remove")((key) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1355999Z 2026-10-24T21:36:23.1356045Z 26 remove: (key) => 2026-10-24T21:36:23.1356083Z ~~~~~~ 2026-10-24T21:36:23.1356085Z 2026-10-24T21:36:23.1356400Z src/provider/CodexChatGptHandoff.ts:30:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ServerSecretStore.ServerSecretStore.create")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1356403Z 2026-10-24T21:36:23.1356502Z 30 create: () => Effect.die("Handoff does not create persistent secrets."), 2026-10-24T21:36:23.1356544Z ~~~~~~ 2026-10-24T21:36:23.1356547Z 2026-10-24T21:36:23.1356878Z src/provider/CodexChatGptHandoff.ts:31:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ServerSecretStore.ServerSecretStore.getOrCreateRandom")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1356882Z 2026-10-24T21:36:23.1357002Z 31 getOrCreateRandom: () => Effect.die("Handoff uses the destination environment identity."), 2026-10-24T21:36:23.1357047Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1357049Z 2026-10-24T21:36:23.1357448Z src/provider/CodexInstallation.ts:205:26 - suggestion TS377112: This input is already assignable to the schema's Encoded type. Use `decodeEffect` to preserve compile-time type checking instead of discarding the input type through `decodeUnknownEffect`. effect(preferTypedSchemaDecoder) 2026-10-24T21:36:23.1357450Z 2026-10-24T21:36:23.1357557Z 205 return yield* Schema.decodeUnknownEffect(Schema.fromJsonString(schema))( 2026-10-24T21:36:23.1357608Z ~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1357610Z 2026-10-24T21:36:23.1357865Z src/provider/CodexProvider.ts:569:11 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-24T21:36:23.1357869Z 2026-10-24T21:36:23.1357920Z 569 ? Effect.succeed(undefined) 2026-10-24T21:36:23.1357966Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1357969Z 2026-10-24T21:36:23.1358270Z src/provider/ModelManifest.ts:284:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ModelCatalog.ModelCatalog.current")((driverKind) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1358272Z 2026-10-24T21:36:23.1358323Z 284 current: (driverKind) => 2026-10-24T21:36:23.1358361Z ~~~~~~~ 2026-10-24T21:36:23.1358363Z 2026-10-24T21:36:23.1358710Z src/provider/ProviderAuthService.test.ts:284:24 - suggestion TS377019: This `yield* Effect.fail(...)` passes a yieldable error value. `yield*` represents that value directly without wrapping it in `Effect.fail`. effect(unnecessaryFailYieldableError) 2026-10-24T21:36:23.1358714Z 2026-10-24T21:36:23.1358770Z 284 return yield* Effect.fail( 2026-10-24T21:36:23.1358813Z ~~~~~ 2026-10-24T21:36:23.1358815Z 2026-10-24T21:36:23.1359124Z src/provider/ProviderAuthService.ts:211:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAuthService.importProfile")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1359126Z 2026-10-24T21:36:23.1359173Z 211 importProfile: (input) => 2026-10-24T21:36:23.1359213Z ~~~~~~~~~~~~~ 2026-10-24T21:36:23.1359216Z 2026-10-24T21:36:23.1359588Z src/provider/ProviderHostLive.ts:39:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderHost.ProviderHost.credentials")((namespace, bindingId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1359590Z 2026-10-24T21:36:23.1359653Z 39 credentials: (namespace, bindingId) => 2026-10-24T21:36:23.1359740Z ~~~~~~~~~~~ 2026-10-24T21:36:23.1359742Z 2026-10-24T21:36:23.1362360Z src/pullRequest/PullRequestService.ts:2984:7 - suggestion TS377116: `Effect.catchCauseIf` expresses selective recovery more directly than `Effect.catchCause` with a conditional `Effect.failCause` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-24T21:36:23.1362365Z 2026-10-24T21:36:23.1362423Z 2984 Effect.catchCause((cause) => 2026-10-24T21:36:23.1362468Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1362470Z 2026-10-24T21:36:23.1362827Z src/pullRequest/PullRequestService.ts:3387:7 - suggestion TS377116: `Effect.catchCauseIf` expresses selective recovery more directly than `Effect.catchCause` with a conditional `Effect.failCause` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-24T21:36:23.1362829Z 2026-10-24T21:36:23.1362881Z 3387 Effect.catchCause((cause) => 2026-10-24T21:36:23.1362922Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1362924Z 2026-10-24T21:36:23.1363231Z src/pullRequest/PullRequestService.ts:3607:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("PullRequestService.listStats")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1363234Z 2026-10-24T21:36:23.1363282Z 3607 listStats: (input) => 2026-10-24T21:36:23.1363322Z ~~~~~~~~~ 2026-10-24T21:36:23.1363324Z 2026-10-24T21:36:23.1363555Z src/relay/AgentAwarenessRelay.test.ts:271:9 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-24T21:36:23.1363557Z 2026-10-24T21:36:23.1363603Z 271 Effect.succeed( 2026-10-24T21:36:23.1363648Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1363650Z 2026-10-24T21:36:23.1363948Z src/relay/AgentAwarenessRelay.ts:822:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AgentAwarenessRelay.requestCatchUp")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1363952Z 2026-10-24T21:36:23.1364071Z 822 requestCatchUp: () => Queue.offer(catchUpRequests, undefined).pipe(Effect.asVoid), 2026-10-24T21:36:23.1364114Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1364116Z 2026-10-24T21:36:23.1364478Z src/resourceTelemetry/DesktopTelemetryReceiver.ts:641:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopTelemetryReceiver.requestDesktopUpdate")((requestId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1364480Z 2026-10-24T21:36:23.1364540Z 641 requestDesktopUpdate: (requestId) => 2026-10-24T21:36:23.1364583Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1364585Z 2026-10-24T21:36:23.1364939Z src/resourceTelemetry/DesktopTelemetryReceiver.ts:647:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopTelemetryReceiver.commitDesktopUpdate")((requestId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1364942Z 2026-10-24T21:36:23.1365001Z 647 commitDesktopUpdate: (requestId) => 2026-10-24T21:36:23.1365044Z ~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1365046Z 2026-10-24T21:36:23.1365400Z src/resourceTelemetry/DesktopTelemetryReceiver.ts:649:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopTelemetryReceiver.cancelDesktopUpdate")((requestId) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1365403Z 2026-10-24T21:36:23.1365457Z 649 cancelDesktopUpdate: (requestId) => 2026-10-24T21:36:23.1365501Z ~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1365503Z 2026-10-24T21:36:23.1365911Z src/resourceTelemetry/DesktopTelemetryReceiver.ts:698:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopTelemetryReceiver.setDiagnosticsDemand")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1365913Z 2026-10-24T21:36:23.1365974Z 698 setDiagnosticsDemand: () => Effect.void, 2026-10-24T21:36:23.1366068Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1366070Z 2026-10-24T21:36:23.1366411Z src/resourceTelemetry/DesktopTelemetryReceiver.ts:699:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopTelemetryReceiver.requestDesktopUpdate")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1366413Z 2026-10-24T21:36:23.1366473Z 699 requestDesktopUpdate: () => Effect.void, 2026-10-24T21:36:23.1366515Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1366519Z 2026-10-24T21:36:23.1366861Z src/resourceTelemetry/DesktopTelemetryReceiver.ts:700:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopTelemetryReceiver.commitDesktopUpdate")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1366863Z 2026-10-24T21:36:23.1366924Z 700 commitDesktopUpdate: () => Effect.void, 2026-10-24T21:36:23.1366969Z ~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1366971Z 2026-10-24T21:36:23.1367315Z src/resourceTelemetry/DesktopTelemetryReceiver.ts:701:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopTelemetryReceiver.cancelDesktopUpdate")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1367317Z 2026-10-24T21:36:23.1367375Z 701 cancelDesktopUpdate: () => Effect.void, 2026-10-24T21:36:23.1367417Z ~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1367419Z 2026-10-24T21:36:23.1367738Z src/resourceTelemetry/NativeTelemetryClient.ts:1091:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("NativeTelemetryClient.readHistory")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1367740Z 2026-10-24T21:36:23.1367787Z 1091 readHistory: () => 2026-10-24T21:36:23.1367830Z ~~~~~~~~~~~ 2026-10-24T21:36:23.1367832Z 2026-10-24T21:36:23.1368162Z src/resourceTelemetry/NativeTelemetryClient.ts:1097:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("NativeTelemetryClient.setExternalProcesses")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1368168Z 2026-10-24T21:36:23.1368228Z 1097 setExternalProcesses: () => Effect.void, 2026-10-24T21:36:23.1368272Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1368274Z 2026-10-24T21:36:23.1368601Z src/resourceTelemetry/NativeTelemetryClient.ts:1098:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("NativeTelemetryClient.setHostPowerState")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1368604Z 2026-10-24T21:36:23.1368665Z 1098 setHostPowerState: () => Effect.void, 2026-10-24T21:36:23.1368706Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1368708Z 2026-10-24T21:36:23.1368992Z src/scheduledTasks/ScheduledTaskService.ts:1136:31 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-24T21:36:23.1368996Z 2026-10-24T21:36:23.1369063Z 1136 ? Effect.succeed(undefined) 2026-10-24T21:36:23.1369120Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1369122Z 2026-10-24T21:36:23.1369390Z src/secrets/SecretRequests.test.ts:166:30 - suggestion TS377113: `Effect.forEach` expresses this effectful array mapping more directly than `Effect.all` over `Array#map`. effect(allOfMapToForEach) 2026-10-24T21:36:23.1369392Z 2026-10-24T21:36:23.1369446Z 166 const results = yield* Effect.all( 2026-10-24T21:36:23.1369494Z ~~~~~~~~~~ 2026-10-24T21:36:23.1369496Z 2026-10-24T21:36:23.1369878Z src/server.ts:481:5 - suggestion TS377014: This generator returns an Effect-able value directly, which produces a nested `Effect>`. If the intended result is the inner Effect value, `return yield*` represents that form. effect(returnEffectInGen) 2026-10-24T21:36:23.1369881Z 2026-10-24T21:36:23.1369972Z 481 return Effect.gen(function* () { 2026-10-24T21:36:23.1370013Z ~~~~~~ 2026-10-24T21:36:23.1370015Z 2026-10-24T21:36:23.1370285Z src/serverRuntimeStartup.test.ts:209:25 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-24T21:36:23.1370287Z 2026-10-24T21:36:23.1370355Z 209 prepareTrial: Effect.succeed(undefined), 2026-10-24T21:36:23.1370439Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1370442Z 2026-10-24T21:36:23.1370694Z src/serverSettings.test.ts:413:30 - suggestion TS377113: `Effect.forEach` expresses this effectful array mapping more directly than `Effect.all` over `Array#map`. effect(allOfMapToForEach) 2026-10-24T21:36:23.1370697Z 2026-10-24T21:36:23.1370752Z 413 const results = yield* Effect.all( 2026-10-24T21:36:23.1370797Z ~~~~~~~~~~ 2026-10-24T21:36:23.1370800Z 2026-10-24T21:36:23.1371198Z src/sourceControl/SourceControlProviderRegistry.ts:204:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.listChangeRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1371200Z 2026-10-24T21:36:23.1371253Z 204 listChangeRequests: (input) => 2026-10-24T21:36:23.1371297Z ~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1371299Z 2026-10-24T21:36:23.1371688Z src/sourceControl/SourceControlProviderRegistry.ts:209:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1371691Z 2026-10-24T21:36:23.1371740Z 209 getChangeRequest: (input) => 2026-10-24T21:36:23.1371782Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1371785Z 2026-10-24T21:36:23.1372174Z src/sourceControl/SourceControlProviderRegistry.ts:214:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.createChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1372177Z 2026-10-24T21:36:23.1372230Z 214 createChangeRequest: (input) => 2026-10-24T21:36:23.1372274Z ~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1372276Z 2026-10-24T21:36:23.1372668Z src/sourceControl/SourceControlProviderRegistry.ts:219:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getRepositoryCloneUrls")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1372672Z 2026-10-24T21:36:23.1372730Z 219 getRepositoryCloneUrls: (input) => 2026-10-24T21:36:23.1372773Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1372775Z 2026-10-24T21:36:23.1373156Z src/sourceControl/SourceControlProviderRegistry.ts:224:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.createRepository")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1373161Z 2026-10-24T21:36:23.1373253Z 224 createRepository: (input) => provider.createRepository(input), 2026-10-24T21:36:23.1373292Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1373294Z 2026-10-24T21:36:23.1373676Z src/sourceControl/SourceControlProviderRegistry.ts:225:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getDefaultBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1373722Z 2026-10-24T21:36:23.1373775Z 225 getDefaultBranch: (input) => 2026-10-24T21:36:23.1373818Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1373820Z 2026-10-24T21:36:23.1374219Z src/sourceControl/SourceControlProviderRegistry.ts:230:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.checkoutChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1374272Z 2026-10-24T21:36:23.1374325Z 230 checkoutChangeRequest: (input) => 2026-10-24T21:36:23.1374371Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1374373Z 2026-10-24T21:36:23.1374711Z src/sourceControl/SourceControlProviderRegistry.ts:345:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProviderRegistry.resolve")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1374714Z 2026-10-24T21:36:23.1374838Z 345 resolve: (input) => resolveHandle(input).pipe(Effect.map((handle) => handle.provider)), 2026-10-24T21:36:23.1374878Z ~~~~~~~ 2026-10-24T21:36:23.1374880Z 2026-10-24T21:36:23.1375225Z src/sourceControl/SourceControlRepositoryService.ts:406:7 - suggestion TS377116: `Effect.catchIf` expresses selective recovery more directly than `Effect.catch` with a conditional `Effect.fail` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-24T21:36:23.1375229Z 2026-10-24T21:36:23.1375278Z 406 Effect.catch((sshError) => 2026-10-24T21:36:23.1375319Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1375321Z 2026-10-24T21:36:23.1375682Z src/sourceControl/SourceControlRepositoryService.ts:553:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlRepositoryService.lookupRepository")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1375684Z 2026-10-24T21:36:23.1375736Z 553 lookupRepository: (input) => 2026-10-24T21:36:23.1375778Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1375781Z 2026-10-24T21:36:23.1376132Z src/sourceControl/SourceControlRepositoryService.ts:555:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlRepositoryService.prepareClone")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1376136Z 2026-10-24T21:36:23.1376184Z 555 prepareClone: (input) => 2026-10-24T21:36:23.1376226Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1376228Z 2026-10-24T21:36:23.1376597Z src/sourceControl/SourceControlRepositoryService.ts:562:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlRepositoryService.cloneRepository")((input, options) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1376599Z 2026-10-24T21:36:23.1376653Z 562 cloneRepository: (input, options) => 2026-10-24T21:36:23.1376695Z ~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1376697Z 2026-10-24T21:36:23.1377062Z src/sourceControl/SourceControlRepositoryService.ts:569:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlRepositoryService.discardClone")((destinationPath) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1377064Z 2026-10-24T21:36:23.1377118Z 569 discardClone: (destinationPath) => 2026-10-24T21:36:23.1377158Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1377162Z 2026-10-24T21:36:23.1377520Z src/sourceControl/SourceControlRepositoryService.ts:573:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlRepositoryService.publishRepository")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1377522Z 2026-10-24T21:36:23.1377576Z 573 publishRepository: (input) => 2026-10-24T21:36:23.1377619Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1377622Z 2026-10-24T21:36:23.1377981Z src/storageCleanup.ts:708:14 - suggestion TS377019: This `yield* Effect.fail(...)` passes a yieldable error value. `yield*` represents that value directly without wrapping it in `Effect.fail`. effect(unnecessaryFailYieldableError) 2026-10-24T21:36:23.1377984Z 2026-10-24T21:36:23.1378033Z 708 return yield* Effect.fail( 2026-10-24T21:36:23.1378071Z ~~~~~ 2026-10-24T21:36:23.1378074Z 2026-10-24T21:36:23.1378391Z src/telemetry/AnalyticsService.ts:113:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AnalyticsService.record")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1378393Z 2026-10-24T21:36:23.1378440Z 113 record: () => Effect.void, 2026-10-24T21:36:23.1378480Z ~~~~~~ 2026-10-24T21:36:23.1378482Z 2026-10-24T21:36:23.1378762Z src/telemetry/AnalyticsService.ts:115:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AnalyticsService.recordOwners")(() => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1378767Z 2026-10-24T21:36:23.1378818Z 115 recordOwners: () => Effect.void, 2026-10-24T21:36:23.1378864Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1378866Z 2026-10-24T21:36:23.1379156Z src/telemetry/AnalyticsService.ts:329:62 - suggestion TS377132: `Effect.andThen` expresses this sequencing more directly than `Effect.flatMap` with a zero-parameter callback. effect(flatMapIgnoredParamToAndThen) 2026-10-24T21:36:23.1379160Z 2026-10-24T21:36:23.1379297Z 329 yield* Effect.forever(Effect.sleep(FLUSH_INTERVAL_MS).pipe(Effect.flatMap(() => flushWhenDue)), { 2026-10-24T21:36:23.1379362Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1379364Z 2026-10-24T21:36:23.1379628Z src/textGeneration/CodexTextGeneration.ts:90:13 - suggestion TS377099: `Effect.ignore` expresses ignored failure more directly than `Effect.catch` returning `Effect.void`. effect(catchToIgnore) 2026-10-24T21:36:23.1379630Z 2026-10-24T21:36:23.1379689Z 90 .pipe(Effect.catch(() => Effect.void)); 2026-10-24T21:36:23.1379733Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1379735Z 2026-10-24T21:36:23.1380046Z src/textGeneration/TextGeneration.ts:60:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("TextGeneration.generateCommitMessage")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1380050Z 2026-10-24T21:36:23.1380102Z 60 generateCommitMessage: (input) => 2026-10-24T21:36:23.1380148Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1380150Z 2026-10-24T21:36:23.1380475Z src/textGeneration/TextGeneration.ts:64:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("TextGeneration.generatePrContent")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1380477Z 2026-10-24T21:36:23.1380528Z 64 generatePrContent: (input) => 2026-10-24T21:36:23.1380571Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1380574Z 2026-10-24T21:36:23.1380870Z src/textGeneration/TextGeneration.ts:68:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("TextGeneration.generateBranchName")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1380873Z 2026-10-24T21:36:23.1380927Z 68 generateBranchName: (input) => 2026-10-24T21:36:23.1380969Z ~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1380973Z 2026-10-24T21:36:23.1381276Z src/textGeneration/TextGeneration.ts:72:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("TextGeneration.generateReviewGuide")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1381279Z 2026-10-24T21:36:23.1381332Z 72 generateReviewGuide: (input) => 2026-10-24T21:36:23.1381374Z ~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1381376Z 2026-10-24T21:36:23.1381718Z src/textGeneration/TextGeneration.ts:76:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("TextGeneration.generateThreadTitle")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1381721Z 2026-10-24T21:36:23.1381773Z 76 generateThreadTitle: (input) => 2026-10-24T21:36:23.1381815Z ~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1381817Z 2026-10-24T21:36:23.1382083Z src/usage/UsageService.ts:172:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("UsageService.readSummary")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1382128Z 2026-10-24T21:36:23.1382175Z 172 readSummary: (input) => 2026-10-24T21:36:23.1382217Z ~~~~~~~~~~~ 2026-10-24T21:36:23.1382219Z 2026-10-24T21:36:23.1382452Z src/usage/UsageService.ts:642:9 - suggestion TS377015: This expression contains chained `pipe` calls that can be simplified to a single `pipe` call. effect(unnecessaryPipeChain) 2026-10-24T21:36:23.1382454Z 2026-10-24T21:36:23.1382509Z 642 usageInstances(driver, settings) 2026-10-24T21:36:23.1382554Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1382597Z 643 .pipe( 2026-10-24T21:36:23.1382637Z ~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1382678Z ... 2026-10-24T21:36:23.1382742Z 664 Effect.provideContext(readerContext), 2026-10-24T21:36:23.1382798Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1382837Z 665 ), 2026-10-24T21:36:23.1382878Z ~~~~~~~~~~~ 2026-10-24T21:36:23.1382882Z 2026-10-24T21:36:23.1383206Z src/vcs/GitVcsDriverCore.ts:4020:9 - suggestion TS377120: `Effect.filterOrElse` expresses this conditional validation more directly than `Effect.flatMap` with an identity `Effect.succeed` branch. effect(flatMapConditionalToFilterOrFail) 2026-10-24T21:36:23.1383209Z 2026-10-24T21:36:23.1383260Z 4020 Effect.flatMap((result) => 2026-10-24T21:36:23.1383302Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1383304Z 2026-10-24T21:36:23.1383623Z src/vcs/GitVcsDriverCore.ts:4511:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.commit")((cwd, subject, body, options) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1383626Z 2026-10-24T21:36:23.1383683Z 4511 commit: (cwd, subject, body, options) => 2026-10-24T21:36:23.1383723Z ~~~~~~ 2026-10-24T21:36:23.1383725Z 2026-10-24T21:36:23.1384064Z src/vcs/GitVcsDriverCore.ts:4513:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.pushCurrentBranch")((cwd, fallbackBranch, options) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1384068Z 2026-10-24T21:36:23.1384147Z 4513 pushCurrentBranch: (cwd, fallbackBranch, options) => 2026-10-24T21:36:23.1384190Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1384192Z 2026-10-24T21:36:23.1384495Z src/vcs/GitVcsDriverCore.ts:4515:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.pullCurrentBranch")((cwd) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1384502Z 2026-10-24T21:36:23.1384620Z 4515 pullCurrentBranch: (cwd) => withListRefsInvalidation(cwd, pullCurrentBranch(cwd)), 2026-10-24T21:36:23.1384663Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1384665Z 2026-10-24T21:36:23.1384977Z src/vcs/GitVcsDriverCore.ts:4523:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.createWorktree")((input, options) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1384981Z 2026-10-24T21:36:23.1385036Z 4523 createWorktree: (input, options) => 2026-10-24T21:36:23.1385077Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1385079Z 2026-10-24T21:36:23.1385388Z src/vcs/GitVcsDriverCore.ts:4525:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.fetchRefIntoBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1385390Z 2026-10-24T21:36:23.1385568Z 4525 fetchRefIntoBranch: (input) => withListRefsInvalidation(input.cwd, fetchRefIntoBranch(input)), 2026-10-24T21:36:23.1385611Z ~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1385613Z 2026-10-24T21:36:23.1385932Z src/vcs/GitVcsDriverCore.ts:4528:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.refreshCheckedOutBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1385988Z 2026-10-24T21:36:23.1386043Z 4528 refreshCheckedOutBranch: (input) => 2026-10-24T21:36:23.1386092Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1386094Z 2026-10-24T21:36:23.1386396Z src/vcs/GitVcsDriverCore.ts:4530:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.ensureRemote")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1386398Z 2026-10-24T21:36:23.1386513Z 4530 ensureRemote: (input) => withListRefsInvalidation(input.cwd, ensureRemote(input)), 2026-10-24T21:36:23.1386556Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1386559Z 2026-10-24T21:36:23.1386858Z src/vcs/GitVcsDriverCore.ts:4533:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.fetchRemote")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1386864Z 2026-10-24T21:36:23.1386909Z 4533 fetchRemote: (input) => 2026-10-24T21:36:23.1386949Z ~~~~~~~~~~~ 2026-10-24T21:36:23.1386951Z 2026-10-24T21:36:23.1387269Z src/vcs/GitVcsDriverCore.ts:4548:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.fetchWorktreeBaseCommit")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1387271Z 2026-10-24T21:36:23.1387329Z 4548 fetchWorktreeBaseCommit: (input) => 2026-10-24T21:36:23.1387373Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1387375Z 2026-10-24T21:36:23.1387682Z src/vcs/GitVcsDriverCore.ts:4550:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.fetchRemoteBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1387684Z 2026-10-24T21:36:23.1387816Z 4550 fetchRemoteBranch: (input) => withListRefsInvalidation(input.cwd, fetchRemoteBranch(input)), 2026-10-24T21:36:23.1387859Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1387862Z 2026-10-24T21:36:23.1388187Z src/vcs/GitVcsDriverCore.ts:4551:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.fetchRemoteTrackingBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1388189Z 2026-10-24T21:36:23.1388247Z 4551 fetchRemoteTrackingBranch: (input) => 2026-10-24T21:36:23.1388292Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1388294Z 2026-10-24T21:36:23.1388603Z src/vcs/GitVcsDriverCore.ts:4553:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.setBranchUpstream")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1388606Z 2026-10-24T21:36:23.1388736Z 4553 setBranchUpstream: (input) => withListRefsInvalidation(input.cwd, setBranchUpstream(input)), 2026-10-24T21:36:23.1388782Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1388784Z 2026-10-24T21:36:23.1389086Z src/vcs/GitVcsDriverCore.ts:4554:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.removeWorktree")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1389088Z 2026-10-24T21:36:23.1389211Z 4554 removeWorktree: (input) => withListRefsInvalidation(input.cwd, removeWorktree(input)), 2026-10-24T21:36:23.1389252Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1389254Z 2026-10-24T21:36:23.1389693Z src/vcs/GitVcsDriverCore.ts:4555:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.pruneWorktrees")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1389696Z 2026-10-24T21:36:23.1389818Z 4555 pruneWorktrees: (input) => withListRefsInvalidation(input.cwd, pruneWorktrees(input)), 2026-10-24T21:36:23.1389857Z ~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1389907Z 2026-10-24T21:36:23.1390215Z src/vcs/GitVcsDriverCore.ts:4556:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.deleteLocalBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1390217Z 2026-10-24T21:36:23.1390373Z 4556 deleteLocalBranch: (input) => withListRefsInvalidation(input.cwd, deleteLocalBranch(input)), 2026-10-24T21:36:23.1390414Z ~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1390416Z 2026-10-24T21:36:23.1390716Z src/vcs/GitVcsDriverCore.ts:4557:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.renameBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1390718Z 2026-10-24T21:36:23.1390830Z 4557 renameBranch: (input) => withListRefsInvalidation(input.cwd, renameBranch(input)), 2026-10-24T21:36:23.1390872Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1390876Z 2026-10-24T21:36:23.1391172Z src/vcs/GitVcsDriverCore.ts:4558:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.createRef")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1391174Z 2026-10-24T21:36:23.1391281Z 4558 createRef: (input) => withListRefsInvalidation(input.cwd, createRef(input)), 2026-10-24T21:36:23.1391321Z ~~~~~~~~~ 2026-10-24T21:36:23.1391323Z 2026-10-24T21:36:23.1391620Z src/vcs/GitVcsDriverCore.ts:4559:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.switchRef")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-24T21:36:23.1391622Z 2026-10-24T21:36:23.1391725Z 4559 switchRef: (input) => withListRefsInvalidation(input.cwd, switchRef(input)), 2026-10-24T21:36:23.1391765Z ~~~~~~~~~ 2026-10-24T21:36:23.1391767Z 2026-10-24T21:36:23.1392141Z src/vcs/VcsStatusBroadcaster.ts:153:5 - suggestion TS377014: This generator returns an Effect-able value directly, which produces a nested `Effect>`. If the intended result is the inner Effect value, `return yield*` represents that form. effect(returnEffectInGen) 2026-10-24T21:36:23.1392145Z 2026-10-24T21:36:23.1392210Z 153 return serverSettings.getSettings.pipe( 2026-10-24T21:36:23.1392247Z ~~~~~~ 2026-10-24T21:36:23.1392249Z 2026-10-24T21:36:23.1392544Z src/workspace/WorkspaceFileSystem.ts:171:15 - suggestion TS377095: `Effect.orElseSucceed` expresses the same recovery more directly than `Effect.catch` followed by `Effect.succeed`. effect(catchToOrElseSucceed) 2026-10-24T21:36:23.1392546Z 2026-10-24T21:36:23.1392627Z 171 }).pipe(Effect.catch(() => Effect.succeed(undefined))); 2026-10-24T21:36:23.1392670Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1392672Z 2026-10-24T21:36:23.1392937Z src/workspace/WorkspaceFileSystem.ts:171:34 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-24T21:36:23.1392940Z 2026-10-24T21:36:23.1393014Z 171 }).pipe(Effect.catch(() => Effect.succeed(undefined))); 2026-10-24T21:36:23.1393073Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1393075Z 2026-10-24T21:36:23.1393305Z src/ws.test.ts:401:47 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-24T21:36:23.1393307Z 2026-10-24T21:36:23.1393402Z 401 resolveFileManagerRevealKind: () => Effect.succeed(undefined), 2026-10-24T21:36:23.1393518Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-24T21:36:23.1393521Z 2026-10-24T21:36:23.1393787Z src/ws.ts:1385:23 - suggestion TS377118: `Effect.fromOption` expresses this Option-to-Effect conversion more directly than `Option.match` or an Option tag conditional. effect(optionMatchToFromOption) 2026-10-24T21:36:23.1393829Z 2026-10-24T21:36:23.1393889Z 1385 return yield* Option.match(project, { 2026-10-24T21:36:23.1393937Z ~~~~~~~~~~~~ 2026-10-24T21:36:23.1393939Z 2026-10-24T21:36:23.1394228Z src/ws.ts:2320:24 - suggestion TS377019: This `yield* Effect.fail(...)` passes a yieldable error value. `yield*` represents that value directly without wrapping it in `Effect.fail`. effect(unnecessaryFailYieldableError) 2026-10-24T21:36:23.1394230Z 2026-10-24T21:36:23.1394286Z 2320 return yield* Effect.fail( 2026-10-24T21:36:23.1394330Z ~~~~~ 2026-10-24T21:36:23.1394332Z 2026-10-24T21:36:23.1394620Z src/ws.ts:2329:24 - suggestion TS377019: This `yield* Effect.fail(...)` passes a yieldable error value. `yield*` represents that value directly without wrapping it in `Effect.fail`. effect(unnecessaryFailYieldableError) 2026-10-24T21:36:23.1394623Z 2026-10-24T21:36:23.1394678Z 2329 return yield* Effect.fail( 2026-10-24T21:36:23.1394724Z ~~~~~ 2026-10-24T21:36:23.1394727Z 2026-10-24T21:36:23.1395006Z src/ws.ts:2337:24 - suggestion TS377019: This `yield* Effect.fail(...)` passes a yieldable error value. `yield*` represents that value directly without wrapping it in `Effect.fail`. effect(unnecessaryFailYieldableError) 2026-10-24T21:36:23.1395011Z 2026-10-24T21:36:23.1395063Z 2337 return yield* Effect.fail( 2026-10-24T21:36:23.1395105Z ~~~~~ 2026-10-24T21:36:23.1395107Z 2026-10-24T21:36:23.1395109Z 2026-10-24T21:36:23.1395147Z --- 2026-10-24T21:36:23.1395407Z vp run: 0/33 cache hit (0%), 33/33 successful. @t3tools/oxlint-plugin-t3code#typecheck (and 1 more) not cached because they modified their inputs. (Run `vp run --last-details` for full details) 2026-10-24T21:36:23.1831668Z Post job cleanup. 2026-10-24T21:36:23.2426881Z Cache hit occurred on the primary key electron-Linux-X64-854e11ddd491bd4f350eebb67a74265df119376a3984c8e153cfe5fc8ced6309, not saving cache. 2026-10-24T21:36:23.2492824Z Post job cleanup. 2026-10-24T21:36:23.2505545Z ##[start-action display=Cache full pnpm store;id=__c248fbb2-01ec-458e-9238-c116e6d15477.__actions_cache] 2026-10-24T21:36:23.3359161Z Post job cleanup. 2026-10-24T21:36:23.3957690Z Cache hit occurred on the primary key pnpm-full-v1-Linux-X64-bab31c3827e90e1352d302da4c761fd1b91963ae565f5f0ea70972d0942af1f6, not saving cache. 2026-10-24T21:36:23.3986259Z ##[end-action id=__c248fbb2-01ec-458e-9238-c116e6d15477.__actions_cache;outcome=success;conclusion=success;duration_ms=148] 2026-10-24T21:36:23.3988233Z ##[start-action display=Cache Vite+;id=__c248fbb2-01ec-458e-9238-c116e6d15477.vp_cache] 2026-10-24T21:36:23.4006694Z Post job cleanup. 2026-10-24T21:36:23.4562458Z 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. 2026-10-24T21:36:23.4590115Z ##[end-action id=__c248fbb2-01ec-458e-9238-c116e6d15477.vp_cache;outcome=success;conclusion=success;duration_ms=60] 2026-10-24T21:36:23.4630384Z Post job cleanup. 2026-10-24T21:36:23.5004015Z [command]/usr/local/bin/git version 2026-10-24T21:36:23.5028915Z git version 2.55.0 2026-10-24T21:36:23.5044941Z Temporarily overriding HOME='/home/runner/_work/_temp/a8177842-b9ef-4027-a4e6-30630a9db63a' before making global git config changes 2026-10-24T21:36:23.5045283Z Adding repository directory to the temporary git global config as a safe directory 2026-10-24T21:36:23.5047631Z [command]/usr/local/bin/git config --global --add safe.directory /home/runner/_work/t3code/t3code 2026-10-24T21:36:23.5067492Z Removing SSH command configuration 2026-10-24T21:36:23.5070230Z [command]/usr/local/bin/git config --local --name-only --get-regexp core\.sshCommand 2026-10-24T21:36:23.5113481Z [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' || :" 2026-10-24T21:36:23.5226174Z fatal: No url found for submodule path '.repos/alchemy-effect/submodules/distilled' in .gitmodules 2026-10-24T21:36:23.5246351Z ##[warning]The process '/usr/local/bin/git' failed with exit code 128 2026-10-24T21:36:23.5279983Z A job completed hook has been configured by the self-hosted runner administrator 2026-10-24T21:36:23.5293229Z ##[group]Run '/job_completed.sh' 2026-10-24T21:36:23.5299491Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2026-10-24T21:36:23.5299653Z env: 2026-10-24T21:36:23.5299774Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 151 2026-10-24T21:36:23.5299920Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 350 2026-10-24T21:36:23.5300056Z BLACKSMITH_CHECK_RUN_ID: 120993937487 2026-10-24T21:36:23.5300208Z BLACKSMITH_JOB_DISPLAY_NAME: Build and Typecheck 2026-10-24T21:36:23.5300394Z GITHUB_ACTIONS_CACHE_MODE: write 2026-10-24T21:36:23.5300521Z ##[endgroup] 2026-10-24T21:36:23.5365778Z Docker container cache not activated, skipping hash computation. 2026-10-24T21:36:23.5567549Z No active SSH sessions detected. Proceeding with shutdown immediately. 2026-10-24T21:36:23.5612080Z Cleaning up orphan processes