2026-10-25T02:19:34.5257725Z Current runner version: '2.338.1' 2026-10-25T02:19:34.5261053Z Runner name: 'blacksmith-8vcpu-ubuntu-2404-v7dcqtspc6k72lih' 2026-10-25T02:19:34.5261785Z Runner group name: 'blacksmith scale sets - blacksmith-8vcpu-ubuntu-2404' 2026-10-25T02:19:34.5262463Z Machine name: 'ip-172-31-73-130' 2026-10-25T02:19:34.5263979Z ##[group]GITHUB_TOKEN Permissions 2026-10-25T02:19:34.5265347Z Contents: read 2026-10-25T02:19:34.5265757Z Metadata: read 2026-10-25T02:19:34.5266189Z ##[endgroup] 2026-10-25T02:19:34.5267455Z Secret source: Actions 2026-10-25T02:19:34.5268154Z Cache mode: write 2026-10-25T02:19:34.5268620Z Prepare workflow directory 2026-10-25T02:19:34.5445765Z Prepare all required actions 2026-10-25T02:19:34.5471062Z Getting action download info 2026-10-25T02:19:34.6553213Z Download action repository 'actions/checkout@v6' (SHA:d23441a48e516b6c34aea4fa41551a30e30af803) 2026-10-25T02:19:34.6824442Z Download action repository 'actions/cache@v6' (SHA:55cc8345863c7cc4c66a329aec7e433d2d1c52a9) 2026-10-25T02:19:34.7936434Z Setting BLACKSMITH_ACTIONS_RESULTS_URL to https://results-receiver.actions.githubusercontent.com/ 2026-10-25T02:19:34.7975134Z Complete job name: Build and Typecheck 2026-10-25T02:19:34.8352394Z A job started hook has been configured by the self-hosted runner administrator 2026-10-25T02:19:34.8421187Z ##[group]Run '/setup.sh' 2026-10-25T02:19:34.8430443Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2026-10-25T02:19:34.8430857Z env: 2026-10-25T02:19:34.8431085Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 145 2026-10-25T02:19:34.8431381Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 404 2026-10-25T02:19:34.8431663Z BLACKSMITH_CHECK_RUN_ID: 121051349043 2026-10-25T02:19:34.8431975Z BLACKSMITH_JOB_DISPLAY_NAME: Build and Typecheck 2026-10-25T02:19:34.8432286Z GITHUB_ACTIONS_CACHE_MODE: write 2026-10-25T02:19:34.8432548Z ##[endgroup] 2026-10-25T02:19:34.8649419Z Logging daemon started (blacksmithd for logs) 2026-10-25T02:19:34.8750160Z Results daemon started (blacksmithd for results) 2026-10-25T02:19:34.8873277Z Background adoption and SSH setup started (PID: 3170) 2026-10-25T02:19:34.8875878Z 2026-10-25T02:19:34.8876047Z ---------------------------------------- 2026-10-25T02:19:34.8876798Z View this job: https://app.blacksmith.sh/pingdotgg/runs/40154004345/jobs/121051349043 2026-10-25T02:19:34.8877464Z SSH Access (using your GitHub SSH key): 2026-10-25T02:19:34.8878185Z ssh -p 64000 runner@blacksmith-8vcpu-ubuntu-2404-v7dcqtspc6k72lih.vm.blacksmith.sh 2026-10-25T02:19:34.8878491Z 2026-10-25T02:19:34.8878597Z No GitHub SSH key? Add one at: 2026-10-25T02:19:34.8879078Z https://docs.github.com/en/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account 2026-10-25T02:19:34.8879546Z 2026-10-25T02:19:34.8879659Z ---------------------------------------- 2026-10-25T02:19:34.8879832Z 2026-10-25T02:19:34.8879975Z VM ID: blacksmith-8vcpu-ubuntu-2404-v7dcqtspc6k72lih 2026-10-25T02:19:34.8880293Z Host: production-152.236.39.244-x8664 2026-10-25T02:19:34.8880620Z Host Agent PID: 3934478 2026-10-25T02:19:34.8881009Z Host Agent Git SHA: 1637818df 2026-10-25T02:19:34.8881419Z Host CPU Manufacturer: AuthenticAMD 2026-10-25T02:19:34.8881867Z Blacksmith Host Generation: gen 2 2026-10-25T02:19:34.8882334Z Petname: production-eager-sheepdog-516302aa 2026-10-25T02:19:34.8882801Z Region: us-east 2026-10-25T02:19:34.8883161Z Rootfs Version: ubuntu24-full-x64-081926 2026-10-25T02:19:34.8887825Z OS Version: Ubuntu 24.04.4 LTS 2026-10-25T02:19:34.8888265Z 2026-10-25T02:19:34.8934345Z Enabling Blacksmith transparent cache 2026-10-25T02:19:34.9108305Z ##[group]Run actions/checkout@v6 2026-10-25T02:19:34.9108606Z with: 2026-10-25T02:19:34.9108935Z sparse-checkout: /* !/.repos/ !/apps/mobile/modules/t3-terminal/Vendor/**/*.a 2026-10-25T02:19:34.9109336Z sparse-checkout-cone-mode: false 2026-10-25T02:19:34.9109615Z repository: pingdotgg/t3code 2026-10-25T02:19:34.9111516Z token: *** 2026-10-25T02:19:34.9111732Z ssh-strict: true 2026-10-25T02:19:34.9111952Z ssh-user: git 2026-10-25T02:19:34.9112325Z persist-credentials: true 2026-10-25T02:19:34.9112569Z clean: true 2026-10-25T02:19:34.9112780Z fetch-depth: 1 2026-10-25T02:19:34.9170897Z fetch-tags: false 2026-10-25T02:19:34.9171217Z show-progress: true 2026-10-25T02:19:34.9171449Z lfs: false 2026-10-25T02:19:34.9171682Z submodules: false 2026-10-25T02:19:34.9171965Z set-safe-directory: true 2026-10-25T02:19:34.9172286Z allow-unsafe-pr-checkout: false 2026-10-25T02:19:34.9172605Z env: 2026-10-25T02:19:34.9172855Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 145 2026-10-25T02:19:34.9173143Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 404 2026-10-25T02:19:34.9173425Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-25T02:19:34.9173711Z ##[endgroup] 2026-10-25T02:19:35.0328142Z Syncing repository: pingdotgg/t3code 2026-10-25T02:19:35.0329061Z ##[group]Getting Git version info 2026-10-25T02:19:35.0329395Z Working directory is '/home/runner/_work/t3code/t3code' 2026-10-25T02:19:35.0329869Z [command]/usr/local/bin/git version 2026-10-25T02:19:35.0390954Z git version 2.55.0 2026-10-25T02:19:35.0403196Z ##[endgroup] 2026-10-25T02:19:35.0410287Z Temporarily overriding HOME='/home/runner/_work/_temp/adc80c2a-2f79-4634-a38b-353de28e4d68' before making global git config changes 2026-10-25T02:19:35.0410949Z Adding repository directory to the temporary git global config as a safe directory 2026-10-25T02:19:35.0414012Z [command]/usr/local/bin/git config --global --add safe.directory /home/runner/_work/t3code/t3code 2026-10-25T02:19:35.0444257Z Deleting the contents of '/home/runner/_work/t3code/t3code' 2026-10-25T02:19:35.0446107Z ##[group]Determining repository object format 2026-10-25T02:19:35.0447167Z ##[endgroup] 2026-10-25T02:19:35.0447622Z ##[group]Initializing the repository 2026-10-25T02:19:35.0449340Z [command]/usr/local/bin/git init /home/runner/_work/t3code/t3code 2026-10-25T02:19:35.0479448Z hint: Using 'master' as the name for the initial branch. This default branch name 2026-10-25T02:19:35.0480244Z hint: will change to "main" in Git 3.0. To configure the initial branch name 2026-10-25T02:19:35.0481002Z hint: to use in all of your new repositories, which will suppress this warning, 2026-10-25T02:19:35.0481424Z hint: call: 2026-10-25T02:19:35.0481625Z hint: 2026-10-25T02:19:35.0481889Z hint: git config --global init.defaultBranch 2026-10-25T02:19:35.0482188Z hint: 2026-10-25T02:19:35.0482474Z hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 2026-10-25T02:19:35.0482924Z hint: 'development'. The just-created branch can be renamed via this command: 2026-10-25T02:19:35.0483291Z hint: 2026-10-25T02:19:35.0483500Z hint: git branch -m 2026-10-25T02:19:35.0483734Z hint: 2026-10-25T02:19:35.0484041Z hint: Disable this message with "git config set advice.defaultBranchName false" 2026-10-25T02:19:35.0484572Z Initialized empty Git repository in /home/runner/_work/t3code/t3code/.git/ 2026-10-25T02:19:35.0485375Z [command]/usr/local/bin/git remote add origin https://github.com/pingdotgg/t3code 2026-10-25T02:19:35.0509942Z ##[endgroup] 2026-10-25T02:19:35.0510327Z ##[group]Disabling automatic garbage collection 2026-10-25T02:19:35.0512664Z [command]/usr/local/bin/git config --local gc.auto 0 2026-10-25T02:19:35.0532118Z ##[endgroup] 2026-10-25T02:19:35.0532463Z ##[group]Setting up auth 2026-10-25T02:19:35.0532786Z Removing SSH command configuration 2026-10-25T02:19:35.0536029Z [command]/usr/local/bin/git config --local --name-only --get-regexp core\.sshCommand 2026-10-25T02:19:35.0556693Z [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-25T02:19:35.0690777Z Removing HTTP extra header 2026-10-25T02:19:35.0694630Z [command]/usr/local/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader 2026-10-25T02:19:35.0717581Z [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-25T02:19:35.0818995Z Removing includeIf entries pointing to credentials config files 2026-10-25T02:19:35.0822466Z [command]/usr/local/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: 2026-10-25T02:19:35.0845763Z [command]/usr/local/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url 2026-10-25T02:19:35.0939910Z [command]/usr/local/bin/git config --file /home/runner/_work/_temp/git-credentials-4ab31ad4-8257-44c5-a9f8-1095a0d14d8d.config http.https://github.com/.extraheader AUTHORIZATION: basic *** 2026-10-25T02:19:35.0997252Z [command]/usr/local/bin/git config --local includeIf.gitdir:/home/runner/_work/t3code/t3code/.git.path /home/runner/_work/_temp/git-credentials-4ab31ad4-8257-44c5-a9f8-1095a0d14d8d.config 2026-10-25T02:19:35.1018249Z [command]/usr/local/bin/git config --local includeIf.gitdir:/home/runner/_work/t3code/t3code/.git/worktrees/*.path /home/runner/_work/_temp/git-credentials-4ab31ad4-8257-44c5-a9f8-1095a0d14d8d.config 2026-10-25T02:19:35.1035932Z [command]/usr/local/bin/git config --local includeIf.gitdir:/github/workspace/.git.path /github/runner_temp/git-credentials-4ab31ad4-8257-44c5-a9f8-1095a0d14d8d.config 2026-10-25T02:19:35.1054435Z [command]/usr/local/bin/git config --local includeIf.gitdir:/github/workspace/.git/worktrees/*.path /github/runner_temp/git-credentials-4ab31ad4-8257-44c5-a9f8-1095a0d14d8d.config 2026-10-25T02:19:35.1070505Z ##[endgroup] 2026-10-25T02:19:35.1070864Z ##[group]Fetching the repository 2026-10-25T02:19:35.1075553Z [command]/usr/local/bin/git -c protocol.version=2 fetch --no-tags --prune --no-recurse-submodules --filter=blob:none --depth=1 origin +8f26ed7e279d6d290ab7200e88055b7a58982b7d:refs/remotes/origin/main 2026-10-25T02:19:35.3707340Z From https://github.com/pingdotgg/t3code 2026-10-25T02:19:35.3708438Z * [new ref] 8f26ed7e279d6d290ab7200e88055b7a58982b7d -> origin/main 2026-10-25T02:19:35.3733063Z [command]/usr/local/bin/git branch --list --remote origin/main 2026-10-25T02:19:35.3756188Z origin/main 2026-10-25T02:19:35.3760273Z [command]/usr/local/bin/git rev-parse refs/remotes/origin/main 2026-10-25T02:19:35.3776644Z 8f26ed7e279d6d290ab7200e88055b7a58982b7d 2026-10-25T02:19:35.3778338Z ##[endgroup] 2026-10-25T02:19:35.3779059Z ##[group]Determining the checkout info 2026-10-25T02:19:35.3779893Z ##[endgroup] 2026-10-25T02:19:35.3780632Z ##[group]Setting up sparse checkout 2026-10-25T02:19:35.3781363Z [command]/usr/local/bin/git config core.sparseCheckout true 2026-10-25T02:19:35.3800318Z [command]/usr/local/bin/git rev-parse --git-path info/sparse-checkout 2026-10-25T02:19:35.3820847Z .git/info/sparse-checkout 2026-10-25T02:19:35.3824216Z ##[endgroup] 2026-10-25T02:19:35.3825192Z ##[group]Checking out the ref 2026-10-25T02:19:35.3826764Z [command]/usr/local/bin/git checkout --progress --force -B main refs/remotes/origin/main 2026-10-25T02:19:42.3511423Z Updating files: 0% (1/6499) 2026-10-25T02:19:42.3540417Z Updating files: 1% (65/6499) 2026-10-25T02:19:42.3557754Z Updating files: 2% (130/6499) 2026-10-25T02:19:42.3578752Z Updating files: 3% (195/6499) 2026-10-25T02:19:42.3600154Z Updating files: 4% (260/6499) 2026-10-25T02:19:42.3631135Z Updating files: 5% (325/6499) 2026-10-25T02:19:42.3652780Z Updating files: 6% (390/6499) 2026-10-25T02:19:42.3705999Z Updating files: 7% (455/6499) 2026-10-25T02:19:42.3740920Z Updating files: 8% (520/6499) 2026-10-25T02:19:42.3828492Z Updating files: 9% (585/6499) 2026-10-25T02:19:42.3978361Z Updating files: 10% (650/6499) 2026-10-25T02:19:42.4079782Z Updating files: 11% (715/6499) 2026-10-25T02:19:42.4129751Z Updating files: 11% (721/6499) 2026-10-25T02:19:42.4142041Z Updating files: 12% (780/6499) 2026-10-25T02:19:42.4153378Z Updating files: 13% (845/6499) 2026-10-25T02:19:42.4169846Z Updating files: 14% (910/6499) 2026-10-25T02:19:42.4187063Z Updating files: 15% (975/6499) 2026-10-25T02:19:42.4203799Z Updating files: 16% (1040/6499) 2026-10-25T02:19:42.4221610Z Updating files: 17% (1105/6499) 2026-10-25T02:19:42.4238325Z Updating files: 18% (1170/6499) 2026-10-25T02:19:42.4255057Z Updating files: 19% (1235/6499) 2026-10-25T02:19:42.4269802Z Updating files: 20% (1300/6499) 2026-10-25T02:19:42.4296438Z Updating files: 21% (1365/6499) 2026-10-25T02:19:42.4312939Z Updating files: 22% (1430/6499) 2026-10-25T02:19:42.4328103Z Updating files: 23% (1495/6499) 2026-10-25T02:19:42.4342739Z Updating files: 24% (1560/6499) 2026-10-25T02:19:42.4356141Z Updating files: 25% (1625/6499) 2026-10-25T02:19:42.4372252Z Updating files: 26% (1690/6499) 2026-10-25T02:19:42.4385681Z Updating files: 27% (1755/6499) 2026-10-25T02:19:42.4405410Z Updating files: 28% (1820/6499) 2026-10-25T02:19:42.4432048Z Updating files: 29% (1885/6499) 2026-10-25T02:19:42.4454003Z Updating files: 30% (1950/6499) 2026-10-25T02:19:42.4478976Z Updating files: 31% (2015/6499) 2026-10-25T02:19:42.4501223Z Updating files: 32% (2080/6499) 2026-10-25T02:19:42.4535275Z Updating files: 33% (2145/6499) 2026-10-25T02:19:42.4597775Z Updating files: 34% (2210/6499) 2026-10-25T02:19:42.4647763Z Updating files: 35% (2275/6499) 2026-10-25T02:19:42.4687277Z Updating files: 36% (2340/6499) 2026-10-25T02:19:42.4722208Z Updating files: 37% (2405/6499) 2026-10-25T02:19:42.4761597Z Updating files: 38% (2470/6499) 2026-10-25T02:19:42.4793898Z Updating files: 39% (2535/6499) 2026-10-25T02:19:42.4822612Z Updating files: 40% (2600/6499) 2026-10-25T02:19:42.4850808Z Updating files: 41% (2665/6499) 2026-10-25T02:19:42.4869056Z Updating files: 42% (2730/6499) 2026-10-25T02:19:42.4880838Z Updating files: 43% (2795/6499) 2026-10-25T02:19:42.4893940Z Updating files: 44% (2860/6499) 2026-10-25T02:19:42.4926050Z Updating files: 45% (2925/6499) 2026-10-25T02:19:42.4950351Z Updating files: 46% (2990/6499) 2026-10-25T02:19:42.4973141Z Updating files: 47% (3055/6499) 2026-10-25T02:19:42.5002108Z Updating files: 48% (3120/6499) 2026-10-25T02:19:42.5033279Z Updating files: 49% (3185/6499) 2026-10-25T02:19:42.5071215Z Updating files: 50% (3250/6499) 2026-10-25T02:19:42.5087134Z Updating files: 51% (3315/6499) 2026-10-25T02:19:42.5120087Z Updating files: 52% (3380/6499) 2026-10-25T02:19:42.5145988Z Updating files: 53% (3445/6499) 2026-10-25T02:19:42.5166356Z Updating files: 54% (3510/6499) 2026-10-25T02:19:42.5189649Z Updating files: 55% (3575/6499) 2026-10-25T02:19:42.5207959Z Updating files: 56% (3640/6499) 2026-10-25T02:19:42.5222977Z Updating files: 57% (3705/6499) 2026-10-25T02:19:42.5244278Z Updating files: 58% (3770/6499) 2026-10-25T02:19:42.5595501Z Updating files: 59% (3835/6499) 2026-10-25T02:19:42.5614227Z Updating files: 60% (3900/6499) 2026-10-25T02:19:42.5633033Z Updating files: 61% (3965/6499) 2026-10-25T02:19:42.5654725Z Updating files: 62% (4030/6499) 2026-10-25T02:19:42.5679736Z Updating files: 63% (4095/6499) 2026-10-25T02:19:42.5707265Z Updating files: 64% (4160/6499) 2026-10-25T02:19:42.5727822Z Updating files: 65% (4225/6499) 2026-10-25T02:19:42.5746331Z Updating files: 66% (4290/6499) 2026-10-25T02:19:42.5769360Z Updating files: 67% (4355/6499) 2026-10-25T02:19:42.5782429Z Updating files: 68% (4420/6499) 2026-10-25T02:19:42.5801119Z Updating files: 69% (4485/6499) 2026-10-25T02:19:42.5814159Z Updating files: 70% (4550/6499) 2026-10-25T02:19:42.5831830Z Updating files: 71% (4615/6499) 2026-10-25T02:19:42.5846557Z Updating files: 72% (4680/6499) 2026-10-25T02:19:42.5890130Z Updating files: 73% (4745/6499) 2026-10-25T02:19:42.6286040Z Updating files: 74% (4810/6499) 2026-10-25T02:19:42.6311248Z Updating files: 75% (4875/6499) 2026-10-25T02:19:42.6332061Z Updating files: 76% (4940/6499) 2026-10-25T02:19:42.6354426Z Updating files: 77% (5005/6499) 2026-10-25T02:19:42.6378585Z Updating files: 78% (5070/6499) 2026-10-25T02:19:42.6395472Z Updating files: 79% (5135/6499) 2026-10-25T02:19:42.6417072Z Updating files: 80% (5200/6499) 2026-10-25T02:19:42.6433262Z Updating files: 81% (5265/6499) 2026-10-25T02:19:42.6451974Z Updating files: 82% (5330/6499) 2026-10-25T02:19:42.6470734Z Updating files: 83% (5395/6499) 2026-10-25T02:19:42.6488869Z Updating files: 84% (5460/6499) 2026-10-25T02:19:42.6504491Z Updating files: 85% (5525/6499) 2026-10-25T02:19:42.6526519Z Updating files: 86% (5590/6499) 2026-10-25T02:19:42.6590999Z Updating files: 87% (5655/6499) 2026-10-25T02:19:42.6620424Z Updating files: 88% (5720/6499) 2026-10-25T02:19:42.6641706Z Updating files: 89% (5785/6499) 2026-10-25T02:19:42.6665828Z Updating files: 90% (5850/6499) 2026-10-25T02:19:42.6696713Z Updating files: 91% (5915/6499) 2026-10-25T02:19:42.6710972Z Updating files: 92% (5980/6499) 2026-10-25T02:19:42.6732179Z Updating files: 93% (6045/6499) 2026-10-25T02:19:42.6750849Z Updating files: 94% (6110/6499) 2026-10-25T02:19:42.6774562Z Updating files: 95% (6175/6499) 2026-10-25T02:19:42.6831642Z Updating files: 96% (6240/6499) 2026-10-25T02:19:42.6854025Z Updating files: 97% (6305/6499) 2026-10-25T02:19:42.6900225Z Updating files: 98% (6370/6499) 2026-10-25T02:19:42.6919436Z Updating files: 99% (6435/6499) 2026-10-25T02:19:42.6919628Z Updating files: 100% (6499/6499) 2026-10-25T02:19:42.6919795Z Updating files: 100% (6499/6499), done. 2026-10-25T02:19:42.7072365Z Switched to a new branch 'main' 2026-10-25T02:19:42.7073425Z branch 'main' set up to track 'origin/main'. 2026-10-25T02:19:42.7086625Z ##[endgroup] 2026-10-25T02:19:42.7116829Z [command]/usr/local/bin/git log -1 --format=%H 2026-10-25T02:19:42.7133396Z 8f26ed7e279d6d290ab7200e88055b7a58982b7d 2026-10-25T02:19:42.7254441Z Prepare all required actions 2026-10-25T02:19:42.7277588Z ##[group]Run ./.github/actions/setup-apt-mirrors 2026-10-25T02:19:42.7277776Z env: 2026-10-25T02:19:42.7277915Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 145 2026-10-25T02:19:42.7278230Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 404 2026-10-25T02:19:42.7278397Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-25T02:19:42.7278557Z ##[endgroup] 2026-10-25T02:19:42.7317140Z ##[start-action display=Run # Replace the existing Blacksmith mirror list as well as direct sources.;id=__self.__run] 2026-10-25T02:19:42.7331142Z ##[group]Run # Replace the existing Blacksmith mirror list as well as direct sources. 2026-10-25T02:19:42.7331519Z # Replace the existing Blacksmith mirror list as well as direct sources. 2026-10-25T02:19:42.7331752Z printf '%s\tpriority:%s\n' \ 2026-10-25T02:19:42.7331951Z  https://archive.ubuntu.com/ubuntu 1 \ 2026-10-25T02:19:42.7332186Z  https://mirrors.edge.kernel.org/ubuntu 2 \ 2026-10-25T02:19:42.7332411Z  https://mirror.math.princeton.edu/pub/ubuntu 3 \ 2026-10-25T02:19:42.7332661Z  | sudo tee /etc/apt/blacksmith-ubuntu-mirrors.txt > /dev/null 2026-10-25T02:19:42.7332862Z  2026-10-25T02:19:42.7333044Z # APT's mirror transport retries each file against the next server. 2026-10-25T02:19:42.7333342Z sudo find /etc/apt -maxdepth 2 -type f \( -name '*.list' -o -name '*.sources' \) \ 2026-10-25T02:19:42.7333590Z  -exec sed -i -E \ 2026-10-25T02:19:42.7333879Z  's#https?://(([^/]+\.)?archive|security)\.ubuntu\.com/ubuntu/?#mirror+file:/etc/apt/blacksmith-ubuntu-mirrors.txt#g' {} + 2026-10-25T02:19:42.7334162Z  2026-10-25T02:19:42.7334632Z # Move on to a fallback before an unreachable server exhausts the job. 2026-10-25T02:19:42.7334907Z printf '%s\n' 'Acquire::http::Timeout "15";' 'Acquire::https::Timeout "15";' \ 2026-10-25T02:19:42.7335172Z  | sudo tee /etc/apt/apt.conf.d/80-mirror-timeouts > /dev/null 2026-10-25T02:19:42.7343963Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2026-10-25T02:19:42.7344155Z env: 2026-10-25T02:19:42.7344330Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 145 2026-10-25T02:19:42.7344504Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 404 2026-10-25T02:19:42.7344671Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-25T02:19:42.7344828Z ##[endgroup] 2026-10-25T02:19:42.7572570Z ##[end-action id=__self.__run;outcome=success;conclusion=success;duration_ms=25] 2026-10-25T02:19:42.7593801Z ##[group]Run sudo sed -i 's|http://|https://|g' /etc/apt/blacksmith-ubuntu-mirrors.txt /etc/apt/sources.list.d/ubuntu.sources 2026-10-25T02:19:42.7594437Z sudo sed -i 's|http://|https://|g' /etc/apt/blacksmith-ubuntu-mirrors.txt /etc/apt/sources.list.d/ubuntu.sources 2026-10-25T02:19:42.7594707Z ( 2026-10-25T02:19:42.7594835Z  set +e 2026-10-25T02:19:42.7595037Z  sudo apt-get update && sudo apt-get install -y libsecret-1-dev pkg-config 2026-10-25T02:19:42.7595279Z  echo "$?" > "$RUNNER_TEMP/apt-status" 2026-10-25T02:19:42.7595474Z ) > "$RUNNER_TEMP/apt.log" 2>&1 < /dev/null & 2026-10-25T02:19:42.7605184Z shell: /usr/bin/bash -e {0} 2026-10-25T02:19:42.7605343Z env: 2026-10-25T02:19:42.7605487Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 145 2026-10-25T02:19:42.7605660Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 404 2026-10-25T02:19:42.7605834Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-25T02:19:42.7605995Z ##[endgroup] 2026-10-25T02:19:42.7748702Z Prepare all required actions 2026-10-25T02:19:42.7749052Z Getting action download info 2026-10-25T02:19:42.8444855Z Download action repository 'voidzero-dev/setup-vp@v1' (SHA:250f29ce396baf5e8f24498e17c0dfdebabc26eb) 2026-10-25T02:19:42.9625664Z ##[group]Run ./.github/actions/setup-ci-deps 2026-10-25T02:19:42.9625975Z env: 2026-10-25T02:19:42.9626209Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 145 2026-10-25T02:19:42.9626484Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 404 2026-10-25T02:19:42.9626731Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-25T02:19:42.9626890Z ##[endgroup] 2026-10-25T02:19:42.9695213Z ##[start-action display=Resolve Vite+ version;id=__self_2.vp] 2026-10-25T02:19:42.9705400Z ##[group]Run echo "version=$(sed -nE 's/^ vite-plus: ([0-9][^ ]*)$/\1/p' pnpm-workspace.yaml)" >> "$GITHUB_OUTPUT" 2026-10-25T02:19:42.9705777Z echo "version=$(sed -nE 's/^ vite-plus: ([0-9][^ ]*)$/\1/p' pnpm-workspace.yaml)" >> "$GITHUB_OUTPUT" 2026-10-25T02:19:42.9706280Z echo "node=$(jq -r '.engines.node' package.json)" >> "$GITHUB_OUTPUT" 2026-10-25T02:19:42.9706740Z echo "pnpm=$(jq -r '.packageManager' package.json)" >> "$GITHUB_OUTPUT" 2026-10-25T02:19:42.9717033Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2026-10-25T02:19:42.9717231Z env: 2026-10-25T02:19:42.9717407Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 145 2026-10-25T02:19:42.9717686Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 404 2026-10-25T02:19:42.9718100Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-25T02:19:42.9718341Z ##[endgroup] 2026-10-25T02:19:42.9791812Z ##[end-action id=__self_2.vp;outcome=success;conclusion=success;duration_ms=9] 2026-10-25T02:19:42.9793167Z ##[start-action display=Cache Vite+;id=__self_2.vp_cache] 2026-10-25T02:19:42.9829779Z ##[group]Run actions/cache@v6 2026-10-25T02:19:42.9829942Z with: 2026-10-25T02:19:42.9830074Z path: ~/.vite-plus 2026-10-25T02:19:42.9830265Z key: vite-plus-home-v2-Linux-X64-1.3.0-node26.12.1-pnpm@12.14.0 2026-10-25T02:19:42.9830499Z enableCrossOsArchive: false 2026-10-25T02:19:42.9830664Z fail-on-cache-miss: false 2026-10-25T02:19:42.9830818Z lookup-only: false 2026-10-25T02:19:42.9830956Z save-always: false 2026-10-25T02:19:42.9831093Z env: 2026-10-25T02:19:42.9831229Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 145 2026-10-25T02:19:42.9831405Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 404 2026-10-25T02:19:42.9831576Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-25T02:19:42.9831738Z ##[endgroup] 2026-10-25T02:19:45.3587550Z Cache hit for: vite-plus-home-v2-Linux-X64-1.3.0-node26.12.1-pnpm@12.14.0 2026-10-25T02:19:45.7375927Z Received 170349591 of 170349591 (100.0%), 458.9 MBs/sec 2026-10-25T02:19:45.7376307Z Cache Size: ~162 MB (170349591 B) 2026-10-25T02:19:45.7395239Z [command]/usr/bin/tar -xf /home/runner/_work/_temp/c62ee426-760f-4f87-bf96-fe0c66452fdc/cache.tzst -P -C /home/runner/_work/t3code/t3code --use-compress-program unzstd 2026-10-25T02:19:46.3999461Z Cache restored successfully 2026-10-25T02:19:46.4284571Z Cache restored from key: vite-plus-home-v2-Linux-X64-1.3.0-node26.12.1-pnpm@12.14.0 2026-10-25T02:19:46.4387102Z ##[end-action id=__self_2.vp_cache;outcome=success;conclusion=success;duration_ms=3459] 2026-10-25T02:19:46.4390547Z ##[start-action display=Use cached Vite+;id=__self_2.__run] 2026-10-25T02:19:46.4437898Z ##[group]Run echo "$HOME/.vite-plus/bin" >> "$GITHUB_PATH" 2026-10-25T02:19:46.4438309Z echo "$HOME/.vite-plus/bin" >> "$GITHUB_PATH" 2026-10-25T02:19:46.4438497Z "$HOME/.vite-plus/bin/vp" env use "26.12.1" 2026-10-25T02:19:46.4448974Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2026-10-25T02:19:46.4449154Z env: 2026-10-25T02:19:46.4449286Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 145 2026-10-25T02:19:46.4449440Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 404 2026-10-25T02:19:46.4449593Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-25T02:19:46.4449734Z ##[endgroup] 2026-10-25T02:19:46.4524531Z Using Node.js v26.12.1 (resolved from 26.12.1) 2026-10-25T02:19:46.4541141Z ##[end-action id=__self_2.__run;outcome=success;conclusion=success;duration_ms=14] 2026-10-25T02:19:46.4543403Z ##[start-action display=Setup Vite+;id=__self_2.__voidzero-dev_setup-vp] 2026-10-25T02:19:46.4551414Z ##[end-action id=__self_2.__voidzero-dev_setup-vp;outcome=skipped;conclusion=skipped;duration_ms=0] 2026-10-25T02:19:46.4553145Z ##[start-action display=Resolve pnpm store path;id=__self_2.pnpm_store] 2026-10-25T02:19:46.4580488Z ##[group]Run store_path="$(vp pm cache dir)" 2026-10-25T02:19:46.4580704Z store_path="$(vp pm cache dir)" 2026-10-25T02:19:46.4580899Z echo "path=$store_path" >> "$GITHUB_OUTPUT" 2026-10-25T02:19:46.4597609Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2026-10-25T02:19:46.4597879Z env: 2026-10-25T02:19:46.4598196Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 145 2026-10-25T02:19:46.4598416Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 404 2026-10-25T02:19:46.4598608Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-25T02:19:46.4598822Z ##[endgroup] 2026-10-25T02:19:46.4776401Z ##[end-action id=__self_2.pnpm_store;outcome=success;conclusion=success;duration_ms=22] 2026-10-25T02:19:46.4778950Z ##[start-action display=Cache full pnpm store;id=__self_2.__actions_cache] 2026-10-25T02:19:46.5243693Z ##[group]Run actions/cache@v6 2026-10-25T02:19:46.5243913Z with: 2026-10-25T02:19:46.5244150Z path: /home/runner/.local/share/pnpm/store/v11 2026-10-25T02:19:46.5244600Z key: pnpm-full-v1-Linux-X64-67727b77004e0e6799b7f8587a750813c0ad4460c623edf0becc280ccb581251 2026-10-25T02:19:46.5245048Z restore-keys: pnpm-full-v1-Linux-X64- 2026-10-25T02:19:46.5245298Z enableCrossOsArchive: false 2026-10-25T02:19:46.5245547Z fail-on-cache-miss: false 2026-10-25T02:19:46.5245728Z lookup-only: false 2026-10-25T02:19:46.5245938Z save-always: false 2026-10-25T02:19:46.5246124Z env: 2026-10-25T02:19:46.5246322Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 145 2026-10-25T02:19:46.5246604Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 404 2026-10-25T02:19:46.5246870Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-25T02:19:46.5247128Z ##[endgroup] 2026-10-25T02:19:46.7385964Z Cache hit for restore-key: pnpm-full-v1-Linux-X64-3343c3b1388f61a61de99ade7ddf42400f9622aebf34bf75a63eccbd0dde8e3d 2026-10-25T02:19:47.7739908Z Received 671088640 of 998158458 (67.2%), 633.0 MBs/sec 2026-10-25T02:19:48.2551866Z Received 998158458 of 998158458 (100.0%), 638.0 MBs/sec 2026-10-25T02:19:48.2552134Z Cache Size: ~952 MB (998158458 B) 2026-10-25T02:19:48.2569951Z [command]/usr/bin/tar -xf /home/runner/_work/_temp/cca3d1f6-ca40-4600-8cd9-8665967dd9cf/cache.tzst -P -C /home/runner/_work/t3code/t3code --use-compress-program unzstd 2026-10-25T02:19:53.4552175Z Cache restored successfully 2026-10-25T02:19:53.5019354Z Cache restored from key: pnpm-full-v1-Linux-X64-3343c3b1388f61a61de99ade7ddf42400f9622aebf34bf75a63eccbd0dde8e3d 2026-10-25T02:19:53.5101270Z ##[end-action id=__self_2.__actions_cache;outcome=success;conclusion=success;duration_ms=7032] 2026-10-25T02:19:53.5103509Z ##[start-action display=Install dependencies;id=__self_2.__run_2] 2026-10-25T02:19:53.5113767Z ##[group]Run vp install 2026-10-25T02:19:53.5113904Z vp install 2026-10-25T02:19:53.5123039Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2026-10-25T02:19:53.5123206Z env: 2026-10-25T02:19:53.5123321Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 145 2026-10-25T02:19:53.5123470Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 404 2026-10-25T02:19:53.5123613Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-25T02:19:53.5123754Z ##[endgroup] 2026-10-25T02:19:53.5519989Z Scope: all 34 workspace projects 2026-10-25T02:19:53.6482769Z ? Verifying lockfile against supply-chain policies (2087 entries)... 2026-10-25T02:19:53.8757417Z Packages are hard linked from the content-addressable store to the virtual store. 2026-10-25T02:19:53.8757740Z Content-addressable store is at: /home/runner/.local/share/pnpm/store/v11 2026-10-25T02:19:53.8758059Z Virtual store is at: node_modules/.pnpm 2026-10-25T02:19:55.8834571Z ✓ Lockfile passes supply-chain policies (2087 entries in 2.2s) 2026-10-25T02:19:55.8834879Z Lockfile is up to date, resolution step is skipped 2026-10-25T02:19:55.9003089Z Packages: +1720 2026-10-25T02:19:55.9003310Z ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2026-10-25T02:19:55.9344438Z Progress: resolved 1720, reused 1716, downloaded 0, added 1720, done 2026-10-25T02:19:56.9293741Z . prepare$ vp config --no-agent 2026-10-25T02:19:57.0297464Z . prepare: Done 2026-10-25T02:19:57.0311718Z 2026-10-25T02:19:57.0311893Z devDependencies: 2026-10-25T02:19:57.0312232Z + @coderabbitai/config 1.1.0 2026-10-25T02:19:57.0312453Z + @shadcn/lint 0.1.5 2026-10-25T02:19:57.0312697Z + @types/node 24.12.4 2026-10-25T02:19:57.0312830Z + knip 6.34.0 2026-10-25T02:19:57.0312985Z + typescript <- @tsc-rs/typescript 0.8.0 2026-10-25T02:19:57.0313135Z + vite-plus 1.3.0 2026-10-25T02:19:57.0313204Z 2026-10-25T02:19:57.0328530Z Done in 3.5s using pnpm v12.14.0 2026-10-25T02:19:57.0479083Z ##[end-action id=__self_2.__run_2;outcome=success;conclusion=success;duration_ms=3537] 2026-10-25T02:19:57.1076008Z ##[group]Run actions/cache@v6 2026-10-25T02:19:57.1076231Z with: 2026-10-25T02:19:57.1076360Z path: ~/.cache/electron 2026-10-25T02:19:57.1076625Z key: electron-Linux-X64-854e11ddd491bd4f350eebb67a74265df119376a3984c8e153cfe5fc8ced6309 2026-10-25T02:19:57.1076920Z enableCrossOsArchive: false 2026-10-25T02:19:57.1077069Z fail-on-cache-miss: false 2026-10-25T02:19:57.1077201Z lookup-only: false 2026-10-25T02:19:57.1077321Z save-always: false 2026-10-25T02:19:57.1077437Z env: 2026-10-25T02:19:57.1077579Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 145 2026-10-25T02:19:57.1077736Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 404 2026-10-25T02:19:57.1077900Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-25T02:19:57.1078163Z ##[endgroup] 2026-10-25T02:19:57.3102984Z Cache hit for: electron-Linux-X64-854e11ddd491bd4f350eebb67a74265df119376a3984c8e153cfe5fc8ced6309 2026-10-25T02:19:57.4714435Z Received 122906203 of 122906203 (100.0%), 819.7 MBs/sec 2026-10-25T02:19:57.4714751Z Cache Size: ~117 MB (122906203 B) 2026-10-25T02:19:57.4749362Z [command]/usr/bin/tar -xf /home/runner/_work/_temp/4122320f-692a-4499-8f88-fe912a51d7a7/cache.tzst -P -C /home/runner/_work/t3code/t3code --use-compress-program unzstd 2026-10-25T02:19:57.5283231Z Cache restored successfully 2026-10-25T02:19:57.5413466Z Cache restored from key: electron-Linux-X64-854e11ddd491bd4f350eebb67a74265df119376a3984c8e153cfe5fc8ced6309 2026-10-25T02:19:57.5539623Z ##[group]Run vp run --filter @t3tools/desktop ensure:electron 2026-10-25T02:19:57.5540303Z vp run --filter @t3tools/desktop ensure:electron 2026-10-25T02:19:57.5566105Z shell: /usr/bin/bash -e {0} 2026-10-25T02:19:57.5628945Z env: 2026-10-25T02:19:57.5647888Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 145 2026-10-25T02:19:57.5648158Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 404 2026-10-25T02:19:57.5648324Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-25T02:19:57.5648539Z ##[endgroup] 2026-10-25T02:19:57.7509549Z ~/apps/desktop$ node scripts/ensure-electron-runtime.mjs ⊘ cache disabled 2026-10-25T02:19:58.3142630Z /home/runner/_work/t3code/t3code/node_modules/.pnpm/electron@44.9.3_supports-color@8.1.1/node_modules/electron/dist/electron 2026-10-25T02:19:58.3170468Z 2026-10-25T02:19:58.3430413Z ##[group]Run ( 2026-10-25T02:19:58.3430742Z ( 2026-10-25T02:19:58.3430928Z  set +e 2026-10-25T02:19:58.3431141Z  vpr typecheck 2026-10-25T02:19:58.3431411Z  echo "$?" > "$RUNNER_TEMP/typecheck-status" 2026-10-25T02:19:58.3431769Z ) > "$RUNNER_TEMP/typecheck.log" 2>&1 < /dev/null & 2026-10-25T02:19:58.3444233Z shell: /usr/bin/bash -e {0} 2026-10-25T02:19:58.3444372Z env: 2026-10-25T02:19:58.3444524Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 145 2026-10-25T02:19:58.3444685Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 404 2026-10-25T02:19:58.3444837Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-25T02:19:58.3444981Z ##[endgroup] 2026-10-25T02:19:58.3502353Z ##[group]Run until test -s "$RUNNER_TEMP/apt-status"; do sleep 1; done 2026-10-25T02:19:58.3502991Z until test -s "$RUNNER_TEMP/apt-status"; do sleep 1; done 2026-10-25T02:19:58.3503451Z cat "$RUNNER_TEMP/apt.log" 2026-10-25T02:19:58.3503713Z exit "$(cat "$RUNNER_TEMP/apt-status")" 2026-10-25T02:19:58.3511888Z shell: /usr/bin/bash -e {0} 2026-10-25T02:19:58.3512048Z env: 2026-10-25T02:19:58.3512167Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 145 2026-10-25T02:19:58.3512321Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 404 2026-10-25T02:19:58.3512475Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-25T02:19:58.3512614Z ##[endgroup] 2026-10-25T02:20:05.4079311Z blacksmith: the apt mirror lists changed since the package indexes were staged; discarding the staged indexes 2026-10-25T02:20:05.4199415Z Get:1 file:/etc/apt/blacksmith-ubuntu-mirrors.txt Mirrorlist [151 B] 2026-10-25T02:20:05.4256215Z Hit:6 https://packages.microsoft.com/repos/azure-cli noble InRelease 2026-10-25T02:20:05.4319105Z Get:7 https://packages.microsoft.com/ubuntu/24.04/prod noble InRelease [3600 B] 2026-10-25T02:20:05.4359029Z Get:8 https://dl.google.com/linux/chrome-stable/deb stable InRelease [2548 B] 2026-10-25T02:20:05.4417802Z Get:9 https://packages.microsoft.com/ubuntu/24.04/prod noble/main amd64 Packages [660 kB] 2026-10-25T02:20:05.4478821Z Get:10 https://packages.microsoft.com/ubuntu/24.04/prod noble/main arm64 Packages [598 kB] 2026-10-25T02:20:05.4479190Z Get:11 https://dl.google.com/linux/chrome-stable/deb stable/main amd64 Packages [1411 B] 2026-10-25T02:20:05.4479464Z Get:2 https://archive.ubuntu.com/ubuntu noble InRelease [256 kB] 2026-10-25T02:20:05.4479710Z Get:3 https://archive.ubuntu.com/ubuntu noble-updates InRelease [126 kB] 2026-10-25T02:20:05.4480004Z Get:4 https://archive.ubuntu.com/ubuntu noble-backports InRelease [126 kB] 2026-10-25T02:20:05.4480279Z Get:5 https://archive.ubuntu.com/ubuntu noble-security InRelease [126 kB] 2026-10-25T02:20:05.4480591Z Get:12 https://archive.ubuntu.com/ubuntu noble/main amd64 Packages [1401 kB] 2026-10-25T02:20:05.4480851Z Get:13 https://archive.ubuntu.com/ubuntu noble/main Translation-en [513 kB] 2026-10-25T02:20:05.4481113Z Get:14 https://archive.ubuntu.com/ubuntu noble/main amd64 Components [464 kB] 2026-10-25T02:20:05.4481382Z Get:15 https://archive.ubuntu.com/ubuntu noble/main amd64 c-n-f Metadata [30.5 kB] 2026-10-25T02:20:05.4481659Z Get:16 https://archive.ubuntu.com/ubuntu noble/universe amd64 Packages [15.0 MB] 2026-10-25T02:20:05.4558801Z Get:17 https://archive.ubuntu.com/ubuntu noble/universe Translation-en [5982 kB] 2026-10-25T02:20:05.4598905Z Get:18 https://archive.ubuntu.com/ubuntu noble/universe amd64 Components [3871 kB] 2026-10-25T02:20:05.4638745Z Get:19 https://archive.ubuntu.com/ubuntu noble/universe amd64 c-n-f Metadata [301 kB] 2026-10-25T02:20:05.4678754Z Get:20 https://archive.ubuntu.com/ubuntu noble/restricted amd64 Packages [93.9 kB] 2026-10-25T02:20:05.4679120Z Get:21 https://archive.ubuntu.com/ubuntu noble/restricted Translation-en [18.7 kB] 2026-10-25T02:20:05.4679417Z Get:22 https://archive.ubuntu.com/ubuntu noble/restricted amd64 c-n-f Metadata [416 B] 2026-10-25T02:20:05.4679715Z Get:23 https://archive.ubuntu.com/ubuntu noble/multiverse amd64 Packages [269 kB] 2026-10-25T02:20:05.4679996Z Get:24 https://archive.ubuntu.com/ubuntu noble/multiverse Translation-en [118 kB] 2026-10-25T02:20:05.4680280Z Get:25 https://archive.ubuntu.com/ubuntu noble/multiverse amd64 Components [35.0 kB] 2026-10-25T02:20:05.4680612Z Get:26 https://archive.ubuntu.com/ubuntu noble/multiverse amd64 c-n-f Metadata [8328 B] 2026-10-25T02:20:05.4680906Z Get:27 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 Packages [1400 kB] 2026-10-25T02:20:05.4681188Z Get:28 https://archive.ubuntu.com/ubuntu noble-updates/main Translation-en [310 kB] 2026-10-25T02:20:05.4681495Z Get:29 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 Components [181 kB] 2026-10-25T02:20:05.4681797Z Get:30 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 c-n-f Metadata [17.7 kB] 2026-10-25T02:20:05.4682098Z Get:31 https://archive.ubuntu.com/ubuntu noble-updates/universe amd64 Packages [1706 kB] 2026-10-25T02:20:05.4682398Z Get:32 https://archive.ubuntu.com/ubuntu noble-updates/universe Translation-en [342 kB] 2026-10-25T02:20:05.4682692Z Get:33 https://archive.ubuntu.com/ubuntu noble-updates/universe amd64 Components [388 kB] 2026-10-25T02:20:05.4683005Z Get:34 https://archive.ubuntu.com/ubuntu noble-updates/universe amd64 c-n-f Metadata [34.9 kB] 2026-10-25T02:20:05.4683312Z Get:35 https://archive.ubuntu.com/ubuntu noble-updates/restricted amd64 Packages [1805 kB] 2026-10-25T02:20:05.4683611Z Get:36 https://archive.ubuntu.com/ubuntu noble-updates/restricted Translation-en [411 kB] 2026-10-25T02:20:05.4683911Z Get:37 https://archive.ubuntu.com/ubuntu noble-updates/restricted amd64 Components [212 B] 2026-10-25T02:20:05.4684226Z Get:38 https://archive.ubuntu.com/ubuntu noble-updates/restricted amd64 c-n-f Metadata [456 B] 2026-10-25T02:20:05.4684530Z Get:39 https://archive.ubuntu.com/ubuntu noble-updates/multiverse amd64 Packages [50.7 kB] 2026-10-25T02:20:05.4684830Z Get:40 https://archive.ubuntu.com/ubuntu noble-updates/multiverse Translation-en [14.0 kB] 2026-10-25T02:20:05.4685129Z Get:41 https://archive.ubuntu.com/ubuntu noble-updates/multiverse amd64 Components [940 B] 2026-10-25T02:20:05.4685439Z Get:42 https://archive.ubuntu.com/ubuntu noble-updates/multiverse amd64 c-n-f Metadata [656 B] 2026-10-25T02:20:05.4685742Z Get:43 https://archive.ubuntu.com/ubuntu noble-backports/main amd64 Packages [40.6 kB] 2026-10-25T02:20:05.4686032Z Get:44 https://archive.ubuntu.com/ubuntu noble-backports/main Translation-en [9172 B] 2026-10-25T02:20:05.4686328Z Get:45 https://archive.ubuntu.com/ubuntu noble-backports/main amd64 Components [5764 B] 2026-10-25T02:20:05.4687068Z Get:46 https://archive.ubuntu.com/ubuntu noble-backports/main amd64 c-n-f Metadata [368 B] 2026-10-25T02:20:05.4687464Z Get:47 https://archive.ubuntu.com/ubuntu noble-backports/universe amd64 Packages [31.0 kB] 2026-10-25T02:20:05.4687819Z Get:48 https://archive.ubuntu.com/ubuntu noble-backports/universe Translation-en [18.6 kB] 2026-10-25T02:20:05.4688124Z Get:49 https://archive.ubuntu.com/ubuntu noble-backports/universe amd64 Components [12.6 kB] 2026-10-25T02:20:05.4688443Z Get:50 https://archive.ubuntu.com/ubuntu noble-backports/universe amd64 c-n-f Metadata [1588 B] 2026-10-25T02:20:05.4688759Z Get:51 https://archive.ubuntu.com/ubuntu noble-backports/restricted amd64 Components [212 B] 2026-10-25T02:20:05.4689077Z Get:52 https://archive.ubuntu.com/ubuntu noble-backports/restricted amd64 c-n-f Metadata [116 B] 2026-10-25T02:20:05.4689384Z Get:53 https://archive.ubuntu.com/ubuntu noble-backports/multiverse amd64 Packages [748 B] 2026-10-25T02:20:05.4689685Z Get:54 https://archive.ubuntu.com/ubuntu noble-backports/multiverse Translation-en [340 B] 2026-10-25T02:20:05.4689989Z Get:55 https://archive.ubuntu.com/ubuntu noble-backports/multiverse amd64 Components [212 B] 2026-10-25T02:20:05.4690339Z Get:56 https://archive.ubuntu.com/ubuntu noble-backports/multiverse amd64 c-n-f Metadata [116 B] 2026-10-25T02:20:05.4690642Z Get:57 https://archive.ubuntu.com/ubuntu noble-security/main amd64 Packages [1146 kB] 2026-10-25T02:20:05.4690927Z Get:58 https://archive.ubuntu.com/ubuntu noble-security/main Translation-en [231 kB] 2026-10-25T02:20:05.4691220Z Get:59 https://archive.ubuntu.com/ubuntu noble-security/main amd64 Components [46.4 kB] 2026-10-25T02:20:05.4691521Z Get:60 https://archive.ubuntu.com/ubuntu noble-security/main amd64 c-n-f Metadata [11.9 kB] 2026-10-25T02:20:05.4691825Z Get:61 https://archive.ubuntu.com/ubuntu noble-security/universe amd64 Packages [1222 kB] 2026-10-25T02:20:05.4692119Z Get:62 https://archive.ubuntu.com/ubuntu noble-security/universe Translation-en [246 kB] 2026-10-25T02:20:05.4692426Z Get:63 https://archive.ubuntu.com/ubuntu noble-security/universe amd64 Components [76.3 kB] 2026-10-25T02:20:05.4692740Z Get:64 https://archive.ubuntu.com/ubuntu noble-security/universe amd64 c-n-f Metadata [24.2 kB] 2026-10-25T02:20:05.4693052Z Get:65 https://archive.ubuntu.com/ubuntu noble-security/restricted amd64 Packages [1713 kB] 2026-10-25T02:20:05.4693354Z Get:66 https://archive.ubuntu.com/ubuntu noble-security/restricted Translation-en [392 kB] 2026-10-25T02:20:05.4693656Z Get:67 https://archive.ubuntu.com/ubuntu noble-security/restricted amd64 Components [212 B] 2026-10-25T02:20:05.4693967Z Get:68 https://archive.ubuntu.com/ubuntu noble-security/restricted amd64 c-n-f Metadata [444 B] 2026-10-25T02:20:05.4694279Z Get:69 https://archive.ubuntu.com/ubuntu noble-security/multiverse amd64 Packages [45.4 kB] 2026-10-25T02:20:05.4694581Z Get:70 https://archive.ubuntu.com/ubuntu noble-security/multiverse Translation-en [12.1 kB] 2026-10-25T02:20:05.4694888Z Get:71 https://archive.ubuntu.com/ubuntu noble-security/multiverse amd64 Components [208 B] 2026-10-25T02:20:05.4695197Z Get:72 https://archive.ubuntu.com/ubuntu noble-security/multiverse amd64 c-n-f Metadata [468 B] 2026-10-25T02:20:05.4695439Z Fetched 42.0 MB in 6s (6522 kB/s) 2026-10-25T02:20:05.4695586Z Reading package lists... 2026-10-25T02:20:05.4695719Z Reading package lists... 2026-10-25T02:20:05.4695854Z Building dependency tree... 2026-10-25T02:20:05.4695992Z Reading state information... 2026-10-25T02:20:05.4696160Z pkg-config is already the newest version (1.8.1-2build1). 2026-10-25T02:20:05.4696358Z The following additional packages will be installed: 2026-10-25T02:20:05.4696581Z bsdextrautils bsdutils eject fdisk gir1.2-glib-2.0 gir1.2-secret-1 2026-10-25T02:20:05.4696816Z libblkid-dev libblkid1 libfdisk1 libgcrypt20 libgcrypt20-dev 2026-10-25T02:20:05.4697059Z libgirepository-2.0-0 libglib2.0-0t64 libglib2.0-bin libglib2.0-data 2026-10-25T02:20:05.4697317Z libglib2.0-dev libglib2.0-dev-bin libgpg-error-dev libmount-dev libmount1 2026-10-25T02:20:05.4697702Z libsecret-1-0 libsecret-common libselinux1-dev libsepol-dev libsmartcols1 2026-10-25T02:20:05.4697977Z libuuid1 mount util-linux uuid-dev uuid-runtime 2026-10-25T02:20:05.4698140Z Suggested packages: 2026-10-25T02:20:05.4698321Z rng-tools libgcrypt20-doc low-memory-monitor gir1.2-glib-2.0-dev 2026-10-25T02:20:05.4698571Z libglib2.0-doc libxml2-utils nfs-common util-linux-extra util-linux-locales 2026-10-25T02:20:05.4698801Z The following NEW packages will be installed: 2026-10-25T02:20:05.4699009Z gir1.2-secret-1 libblkid-dev libgcrypt20-dev libgirepository-2.0-0 2026-10-25T02:20:05.4699252Z libglib2.0-dev libglib2.0-dev-bin libgpg-error-dev libmount-dev 2026-10-25T02:20:05.4699499Z libsecret-1-0 libsecret-1-dev libsecret-common libselinux1-dev libsepol-dev 2026-10-25T02:20:05.4699703Z uuid-dev 2026-10-25T02:20:05.4699822Z The following packages will be upgraded: 2026-10-25T02:20:05.4700027Z bsdextrautils bsdutils eject fdisk gir1.2-glib-2.0 libblkid1 libfdisk1 2026-10-25T02:20:05.4700274Z libgcrypt20 libglib2.0-0t64 libglib2.0-bin libglib2.0-data libmount1 2026-10-25T02:20:05.4700517Z libsmartcols1 libuuid1 mount util-linux uuid-runtime 2026-10-25T02:20:05.4700728Z 17 upgraded, 14 newly installed, 0 to remove and 241 not upgraded. 2026-10-25T02:20:05.4700917Z Need to get 8378 kB of archives. 2026-10-25T02:20:05.4701106Z After this operation, 23.0 MB of additional disk space will be used. 2026-10-25T02:20:05.4701343Z Get:1 file:/etc/apt/blacksmith-ubuntu-mirrors.txt Mirrorlist [151 B] 2026-10-25T02:20:05.4701648Z Get:2 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 bsdutils amd64 1:2.39.3-9ubuntu6.6 [96.4 kB] 2026-10-25T02:20:05.4702014Z Get:3 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 util-linux amd64 2.39.3-9ubuntu6.6 [1128 kB] 2026-10-25T02:20:05.4702369Z Get:4 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 mount amd64 2.39.3-9ubuntu6.6 [118 kB] 2026-10-25T02:20:05.4702726Z Get:5 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libsmartcols1 amd64 2.39.3-9ubuntu6.6 [66.3 kB] 2026-10-25T02:20:05.4703091Z Get:6 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libuuid1 amd64 2.39.3-9ubuntu6.6 [36.6 kB] 2026-10-25T02:20:05.4703448Z Get:7 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 uuid-runtime amd64 2.39.3-9ubuntu6.6 [33.1 kB] 2026-10-25T02:20:05.4703806Z Get:8 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libblkid1 amd64 2.39.3-9ubuntu6.6 [124 kB] 2026-10-25T02:20:05.4704159Z Get:9 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libgcrypt20 amd64 1.10.3-2ubuntu0.2 [536 kB] 2026-10-25T02:20:05.4704516Z Get:10 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libmount1 amd64 2.39.3-9ubuntu6.6 [134 kB] 2026-10-25T02:20:05.4704862Z Get:11 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 eject amd64 2.39.3-9ubuntu6.6 [26.3 kB] 2026-10-25T02:20:05.4705226Z 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-25T02:20:05.4705600Z 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-25T02:20:05.4705983Z 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-25T02:20:05.4706361Z Get:15 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libglib2.0-0t64 amd64 2.80.0-6ubuntu3.10 [1548 kB] 2026-10-25T02:20:05.4706728Z Get:16 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libfdisk1 amd64 2.39.3-9ubuntu6.6 [146 kB] 2026-10-25T02:20:05.4707089Z Get:17 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 bsdextrautils amd64 2.39.3-9ubuntu6.6 [73.7 kB] 2026-10-25T02:20:05.4707446Z Get:18 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 fdisk amd64 2.39.3-9ubuntu6.6 [122 kB] 2026-10-25T02:20:05.4707785Z Get:19 https://archive.ubuntu.com/ubuntu noble/main amd64 libsecret-common all 0.21.4-1build3 [4962 B] 2026-10-25T02:20:05.4708214Z Get:20 https://archive.ubuntu.com/ubuntu noble/main amd64 libsecret-1-0 amd64 0.21.4-1build3 [116 kB] 2026-10-25T02:20:05.4708576Z Get:21 https://archive.ubuntu.com/ubuntu noble/main amd64 gir1.2-secret-1 amd64 0.21.4-1build3 [9424 B] 2026-10-25T02:20:05.4708929Z Get:22 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libgpg-error-dev amd64 1.47-3build2.1 [128 kB] 2026-10-25T02:20:05.4709304Z Get:23 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libgcrypt20-dev amd64 1.10.3-2ubuntu0.2 [596 kB] 2026-10-25T02:20:05.4709710Z 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-25T02:20:05.4710110Z 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-25T02:20:05.4710521Z Get:26 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 uuid-dev amd64 2.39.3-9ubuntu6.6 [33.5 kB] 2026-10-25T02:20:05.4710886Z Get:27 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libblkid-dev amd64 2.39.3-9ubuntu6.6 [205 kB] 2026-10-25T02:20:05.4711234Z Get:28 https://archive.ubuntu.com/ubuntu noble/main amd64 libsepol-dev amd64 3.5-2build1 [384 kB] 2026-10-25T02:20:05.4711763Z Get:29 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libselinux1-dev amd64 3.5-2ubuntu2.1 [164 kB] 2026-10-25T02:20:05.4712171Z Get:30 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libmount-dev amd64 2.39.3-9ubuntu6.6 [14.9 kB] 2026-10-25T02:20:05.4712548Z Get:31 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libglib2.0-dev amd64 2.80.0-6ubuntu3.10 [1861 kB] 2026-10-25T02:20:05.4712908Z Get:32 https://archive.ubuntu.com/ubuntu noble/universe amd64 libsecret-1-dev amd64 0.21.4-1build3 [129 kB] 2026-10-25T02:20:05.4713163Z Fetched 8378 kB in 3s (2475 kB/s) 2026-10-25T02:20:05.4713306Z (Reading database ... 2026-10-25T02:20:05.4713437Z (Reading database ... 5% 2026-10-25T02:20:05.4713571Z (Reading database ... 10% 2026-10-25T02:20:05.4713702Z (Reading database ... 15% 2026-10-25T02:20:05.4713833Z (Reading database ... 20% 2026-10-25T02:20:05.4713959Z (Reading database ... 25% 2026-10-25T02:20:05.4714084Z (Reading database ... 30% 2026-10-25T02:20:05.4714206Z (Reading database ... 35% 2026-10-25T02:20:05.4714328Z (Reading database ... 40% 2026-10-25T02:20:05.4714456Z (Reading database ... 45% 2026-10-25T02:20:05.4714612Z (Reading database ... 50% 2026-10-25T02:20:05.4714737Z (Reading database ... 55% 2026-10-25T02:20:05.4714860Z (Reading database ... 60% 2026-10-25T02:20:05.4714985Z (Reading database ... 65% 2026-10-25T02:20:05.4715106Z (Reading database ... 70% 2026-10-25T02:20:05.4715227Z (Reading database ... 75% 2026-10-25T02:20:05.4715353Z (Reading database ... 80% 2026-10-25T02:20:05.4715477Z (Reading database ... 85% 2026-10-25T02:20:05.4715603Z (Reading database ... 90% 2026-10-25T02:20:05.4715725Z (Reading database ... 95% 2026-10-25T02:20:05.4715855Z (Reading database ... 100% 2026-10-25T02:20:05.4716037Z (Reading database ... 207973 files and directories currently installed.) 2026-10-25T02:20:05.4716282Z Preparing to unpack .../bsdutils_1%3a2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-25T02:20:05.4716521Z Unpacking bsdutils (1:2.39.3-9ubuntu6.6) over (1:2.39.3-9ubuntu6.5) ... 2026-10-25T02:20:05.4716728Z Setting up bsdutils (1:2.39.3-9ubuntu6.6) ... 2026-10-25T02:20:05.4716884Z (Reading database ... 2026-10-25T02:20:05.4717008Z (Reading database ... 5% 2026-10-25T02:20:05.4717140Z (Reading database ... 10% 2026-10-25T02:20:05.4717267Z (Reading database ... 15% 2026-10-25T02:20:05.4717392Z (Reading database ... 20% 2026-10-25T02:20:05.4717513Z (Reading database ... 25% 2026-10-25T02:20:05.4717634Z (Reading database ... 30% 2026-10-25T02:20:05.4717763Z (Reading database ... 35% 2026-10-25T02:20:05.4717894Z (Reading database ... 40% 2026-10-25T02:20:05.4798659Z (Reading database ... 45% 2026-10-25T02:20:05.4798845Z (Reading database ... 50% 2026-10-25T02:20:05.4798981Z (Reading database ... 55% 2026-10-25T02:20:05.4799108Z (Reading database ... 60% 2026-10-25T02:20:05.4799741Z (Reading database ... 65% 2026-10-25T02:20:05.4799968Z (Reading database ... 70% 2026-10-25T02:20:05.4800089Z (Reading database ... 75% 2026-10-25T02:20:05.4800212Z (Reading database ... 80% 2026-10-25T02:20:05.4800344Z (Reading database ... 85% 2026-10-25T02:20:05.4800497Z (Reading database ... 90% 2026-10-25T02:20:05.4800619Z (Reading database ... 95% 2026-10-25T02:20:05.4800744Z (Reading database ... 100% 2026-10-25T02:20:05.4800936Z (Reading database ... 207973 files and directories currently installed.) 2026-10-25T02:20:05.4801197Z Preparing to unpack .../util-linux_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-25T02:20:05.4801436Z Unpacking util-linux (2.39.3-9ubuntu6.6) over (2.39.3-9ubuntu6.5) ... 2026-10-25T02:20:05.4801636Z Setting up util-linux (2.39.3-9ubuntu6.6) ... 2026-10-25T02:20:05.4801921Z update-alternatives: warning: forcing reinstallation of alternative /usr/bin/less because link group pager is broken 2026-10-25T02:20:05.4802389Z 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-25T02:20:05.4802786Z fstrim.service is a disabled or a static unit not running, not starting it. 2026-10-25T02:20:05.4802985Z (Reading database ... 2026-10-25T02:20:05.4803116Z (Reading database ... 5% 2026-10-25T02:20:05.4803246Z (Reading database ... 10% 2026-10-25T02:20:05.4803372Z (Reading database ... 15% 2026-10-25T02:20:05.4803494Z (Reading database ... 20% 2026-10-25T02:20:05.4803615Z (Reading database ... 25% 2026-10-25T02:20:05.4803738Z (Reading database ... 30% 2026-10-25T02:20:05.4803860Z (Reading database ... 35% 2026-10-25T02:20:05.4803982Z (Reading database ... 40% 2026-10-25T02:20:05.4804102Z (Reading database ... 45% 2026-10-25T02:20:05.4804225Z (Reading database ... 50% 2026-10-25T02:20:05.4804345Z (Reading database ... 55% 2026-10-25T02:20:05.4804464Z (Reading database ... 60% 2026-10-25T02:20:05.4804587Z (Reading database ... 65% 2026-10-25T02:20:05.4804709Z (Reading database ... 70% 2026-10-25T02:20:05.4804840Z (Reading database ... 75% 2026-10-25T02:20:05.4804964Z (Reading database ... 80% 2026-10-25T02:20:05.4805087Z (Reading database ... 85% 2026-10-25T02:20:05.4805212Z (Reading database ... 90% 2026-10-25T02:20:05.4805334Z (Reading database ... 95% 2026-10-25T02:20:05.4805464Z (Reading database ... 100% 2026-10-25T02:20:05.4805645Z (Reading database ... 207973 files and directories currently installed.) 2026-10-25T02:20:05.4805883Z Preparing to unpack .../mount_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-25T02:20:05.4806108Z Unpacking mount (2.39.3-9ubuntu6.6) over (2.39.3-9ubuntu6.5) ... 2026-10-25T02:20:05.4806342Z Preparing to unpack .../libsmartcols1_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-25T02:20:05.4806593Z Unpacking libsmartcols1:amd64 (2.39.3-9ubuntu6.6) over (2.39.3-9ubuntu6.5) ... 2026-10-25T02:20:05.4806825Z Setting up libsmartcols1:amd64 (2.39.3-9ubuntu6.6) ... 2026-10-25T02:20:05.4806994Z (Reading database ... 2026-10-25T02:20:05.4807119Z (Reading database ... 5% 2026-10-25T02:20:05.4807253Z (Reading database ... 10% 2026-10-25T02:20:05.4807379Z (Reading database ... 15% 2026-10-25T02:20:05.4807505Z (Reading database ... 20% 2026-10-25T02:20:05.4807627Z (Reading database ... 25% 2026-10-25T02:20:05.4807749Z (Reading database ... 30% 2026-10-25T02:20:05.4807870Z (Reading database ... 35% 2026-10-25T02:20:05.4807999Z (Reading database ... 40% 2026-10-25T02:20:05.4808122Z (Reading database ... 45% 2026-10-25T02:20:05.4808245Z (Reading database ... 50% 2026-10-25T02:20:05.4808367Z (Reading database ... 55% 2026-10-25T02:20:05.4808491Z (Reading database ... 60% 2026-10-25T02:20:05.4808614Z (Reading database ... 65% 2026-10-25T02:20:05.4808732Z (Reading database ... 70% 2026-10-25T02:20:05.4808854Z (Reading database ... 75% 2026-10-25T02:20:05.4808972Z (Reading database ... 80% 2026-10-25T02:20:05.4809091Z (Reading database ... 85% 2026-10-25T02:20:05.4809215Z (Reading database ... 90% 2026-10-25T02:20:05.4809337Z (Reading database ... 95% 2026-10-25T02:20:05.4809589Z (Reading database ... 100% 2026-10-25T02:20:05.4809833Z (Reading database ... 207973 files and directories currently installed.) 2026-10-25T02:20:05.4810064Z Preparing to unpack .../libuuid1_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-25T02:20:05.4810289Z Unpacking libuuid1:amd64 (2.39.3-9ubuntu6.6) over (2.39.3-9ubuntu6.5) ... 2026-10-25T02:20:05.4810532Z Setting up libuuid1:amd64 (2.39.3-9ubuntu6.6) ... 2026-10-25T02:20:05.4810689Z (Reading database ... 2026-10-25T02:20:05.4810809Z (Reading database ... 5% 2026-10-25T02:20:05.4810941Z (Reading database ... 10% 2026-10-25T02:20:05.4811064Z (Reading database ... 15% 2026-10-25T02:20:05.4811188Z (Reading database ... 20% 2026-10-25T02:20:05.4811307Z (Reading database ... 25% 2026-10-25T02:20:05.4811433Z (Reading database ... 30% 2026-10-25T02:20:05.4811554Z (Reading database ... 35% 2026-10-25T02:20:05.4811672Z (Reading database ... 40% 2026-10-25T02:20:05.4811795Z (Reading database ... 45% 2026-10-25T02:20:05.4811915Z (Reading database ... 50% 2026-10-25T02:20:05.4812041Z (Reading database ... 55% 2026-10-25T02:20:05.4812162Z (Reading database ... 60% 2026-10-25T02:20:05.4812285Z (Reading database ... 65% 2026-10-25T02:20:05.4812404Z (Reading database ... 70% 2026-10-25T02:20:05.4812525Z (Reading database ... 75% 2026-10-25T02:20:05.4812650Z (Reading database ... 80% 2026-10-25T02:20:05.4812768Z (Reading database ... 85% 2026-10-25T02:20:05.4812894Z (Reading database ... 90% 2026-10-25T02:20:05.4813012Z (Reading database ... 95% 2026-10-25T02:20:05.4813136Z (Reading database ... 100% 2026-10-25T02:20:05.4813306Z (Reading database ... 207973 files and directories currently installed.) 2026-10-25T02:20:05.4813535Z Preparing to unpack .../uuid-runtime_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-25T02:20:05.4813768Z Unpacking uuid-runtime (2.39.3-9ubuntu6.6) over (2.39.3-9ubuntu6.5) ... 2026-10-25T02:20:05.4813994Z Preparing to unpack .../libblkid1_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-25T02:20:05.4814226Z Unpacking libblkid1:amd64 (2.39.3-9ubuntu6.6) over (2.39.3-9ubuntu6.5) ... 2026-10-25T02:20:05.4814439Z Setting up libblkid1:amd64 (2.39.3-9ubuntu6.6) ... 2026-10-25T02:20:05.4814597Z (Reading database ... 2026-10-25T02:20:05.4814715Z (Reading database ... 5% 2026-10-25T02:20:05.4814839Z (Reading database ... 10% 2026-10-25T02:20:05.4814962Z (Reading database ... 15% 2026-10-25T02:20:05.4815081Z (Reading database ... 20% 2026-10-25T02:20:05.4815211Z (Reading database ... 25% 2026-10-25T02:20:05.4815329Z (Reading database ... 30% 2026-10-25T02:20:05.4815456Z (Reading database ... 35% 2026-10-25T02:20:05.4815575Z (Reading database ... 40% 2026-10-25T02:20:05.4815699Z (Reading database ... 45% 2026-10-25T02:20:05.4815819Z (Reading database ... 50% 2026-10-25T02:20:05.4815943Z (Reading database ... 55% 2026-10-25T02:20:05.4816067Z (Reading database ... 60% 2026-10-25T02:20:05.4816192Z (Reading database ... 65% 2026-10-25T02:20:05.4816319Z (Reading database ... 70% 2026-10-25T02:20:05.4816441Z (Reading database ... 75% 2026-10-25T02:20:05.4816572Z (Reading database ... 80% 2026-10-25T02:20:05.4816703Z (Reading database ... 85% 2026-10-25T02:20:05.4816830Z (Reading database ... 90% 2026-10-25T02:20:05.4816954Z (Reading database ... 95% 2026-10-25T02:20:05.4817077Z (Reading database ... 100% 2026-10-25T02:20:05.4817254Z (Reading database ... 207973 files and directories currently installed.) 2026-10-25T02:20:05.4817487Z Preparing to unpack .../libgcrypt20_1.10.3-2ubuntu0.2_amd64.deb ... 2026-10-25T02:20:05.4817725Z Unpacking libgcrypt20:amd64 (1.10.3-2ubuntu0.2) over (1.10.3-2ubuntu0.1) ... 2026-10-25T02:20:05.4817942Z Setting up libgcrypt20:amd64 (1.10.3-2ubuntu0.2) ... 2026-10-25T02:20:05.4818104Z (Reading database ... 2026-10-25T02:20:05.4818226Z (Reading database ... 5% 2026-10-25T02:20:05.4818352Z (Reading database ... 10% 2026-10-25T02:20:05.4818476Z (Reading database ... 15% 2026-10-25T02:20:05.4818596Z (Reading database ... 20% 2026-10-25T02:20:05.4818726Z (Reading database ... 25% 2026-10-25T02:20:05.4818849Z (Reading database ... 30% 2026-10-25T02:20:05.4819282Z (Reading database ... 35% 2026-10-25T02:20:05.4819448Z (Reading database ... 40% 2026-10-25T02:20:05.4819575Z (Reading database ... 45% 2026-10-25T02:20:05.4819696Z (Reading database ... 50% 2026-10-25T02:20:05.4819815Z (Reading database ... 55% 2026-10-25T02:20:05.4819940Z (Reading database ... 60% 2026-10-25T02:20:05.4820059Z (Reading database ... 65% 2026-10-25T02:20:05.4820184Z (Reading database ... 70% 2026-10-25T02:20:05.4820327Z (Reading database ... 75% 2026-10-25T02:20:05.4820458Z (Reading database ... 80% 2026-10-25T02:20:05.4820576Z (Reading database ... 85% 2026-10-25T02:20:05.4820696Z (Reading database ... 90% 2026-10-25T02:20:05.4820819Z (Reading database ... 95% 2026-10-25T02:20:05.4820942Z (Reading database ... 100% 2026-10-25T02:20:05.4821115Z (Reading database ... 207973 files and directories currently installed.) 2026-10-25T02:20:05.4821345Z Preparing to unpack .../libmount1_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-25T02:20:05.4821576Z Unpacking libmount1:amd64 (2.39.3-9ubuntu6.6) over (2.39.3-9ubuntu6.5) ... 2026-10-25T02:20:05.4821785Z Setting up libmount1:amd64 (2.39.3-9ubuntu6.6) ... 2026-10-25T02:20:05.4821973Z (Reading database ... 2026-10-25T02:20:05.4822097Z (Reading database ... 5% 2026-10-25T02:20:05.4822223Z (Reading database ... 10% 2026-10-25T02:20:05.4822352Z (Reading database ... 15% 2026-10-25T02:20:05.4822475Z (Reading database ... 20% 2026-10-25T02:20:05.4822600Z (Reading database ... 25% 2026-10-25T02:20:05.4822724Z (Reading database ... 30% 2026-10-25T02:20:05.4822848Z (Reading database ... 35% 2026-10-25T02:20:05.4822967Z (Reading database ... 40% 2026-10-25T02:20:05.4823088Z (Reading database ... 45% 2026-10-25T02:20:05.4823218Z (Reading database ... 50% 2026-10-25T02:20:05.4823341Z (Reading database ... 55% 2026-10-25T02:20:05.4823465Z (Reading database ... 60% 2026-10-25T02:20:05.4823588Z (Reading database ... 65% 2026-10-25T02:20:05.4823720Z (Reading database ... 70% 2026-10-25T02:20:05.4823843Z (Reading database ... 75% 2026-10-25T02:20:05.4823969Z (Reading database ... 80% 2026-10-25T02:20:05.4824107Z (Reading database ... 85% 2026-10-25T02:20:05.4824232Z (Reading database ... 90% 2026-10-25T02:20:05.4824364Z (Reading database ... 95% 2026-10-25T02:20:05.4824495Z (Reading database ... 100% 2026-10-25T02:20:05.4824674Z (Reading database ... 207973 files and directories currently installed.) 2026-10-25T02:20:05.4824898Z Preparing to unpack .../00-eject_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-25T02:20:05.4920216Z Unpacking eject (2.39.3-9ubuntu6.6) over (2.39.3-9ubuntu6.5) ... 2026-10-25T02:20:05.4920799Z Preparing to unpack .../01-libglib2.0-data_2.80.0-6ubuntu3.10_all.deb ... 2026-10-25T02:20:05.4921073Z Unpacking libglib2.0-data (2.80.0-6ubuntu3.10) over (2.80.0-6ubuntu3.8) ... 2026-10-25T02:20:05.4921321Z Preparing to unpack .../02-libglib2.0-bin_2.80.0-6ubuntu3.10_amd64.deb ... 2026-10-25T02:20:05.4921566Z Unpacking libglib2.0-bin (2.80.0-6ubuntu3.10) over (2.80.0-6ubuntu3.8) ... 2026-10-25T02:20:05.4921833Z Preparing to unpack .../03-gir1.2-glib-2.0_2.80.0-6ubuntu3.10_amd64.deb ... 2026-10-25T02:20:05.4922094Z Unpacking gir1.2-glib-2.0:amd64 (2.80.0-6ubuntu3.10) over (2.80.0-6ubuntu3.8) ... 2026-10-25T02:20:05.4922340Z Preparing to unpack .../04-libglib2.0-0t64_2.80.0-6ubuntu3.10_amd64.deb ... 2026-10-25T02:20:05.4922591Z Unpacking libglib2.0-0t64:amd64 (2.80.0-6ubuntu3.10) over (2.80.0-6ubuntu3.8) ... 2026-10-25T02:20:05.4922834Z Preparing to unpack .../05-libfdisk1_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-25T02:20:05.4923069Z Unpacking libfdisk1:amd64 (2.39.3-9ubuntu6.6) over (2.39.3-9ubuntu6.5) ... 2026-10-25T02:20:05.4923324Z Preparing to unpack .../06-bsdextrautils_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-25T02:20:05.4923558Z Unpacking bsdextrautils (2.39.3-9ubuntu6.6) over (2.39.3-9ubuntu6.5) ... 2026-10-25T02:20:05.4923785Z Preparing to unpack .../07-fdisk_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-25T02:20:05.4923994Z Unpacking fdisk (2.39.3-9ubuntu6.6) over (2.39.3-9ubuntu6.5) ... 2026-10-25T02:20:05.4924653Z Selecting previously unselected package libsecret-common. 2026-10-25T02:20:05.4924960Z Preparing to unpack .../08-libsecret-common_0.21.4-1build3_all.deb ... 2026-10-25T02:20:05.4925166Z Unpacking libsecret-common (0.21.4-1build3) ... 2026-10-25T02:20:05.4925364Z Selecting previously unselected package libsecret-1-0:amd64. 2026-10-25T02:20:05.4925585Z Preparing to unpack .../09-libsecret-1-0_0.21.4-1build3_amd64.deb ... 2026-10-25T02:20:05.4925792Z Unpacking libsecret-1-0:amd64 (0.21.4-1build3) ... 2026-10-25T02:20:05.4925989Z Selecting previously unselected package gir1.2-secret-1:amd64. 2026-10-25T02:20:05.4926216Z Preparing to unpack .../10-gir1.2-secret-1_0.21.4-1build3_amd64.deb ... 2026-10-25T02:20:05.4926420Z Unpacking gir1.2-secret-1:amd64 (0.21.4-1build3) ... 2026-10-25T02:20:05.4926616Z Selecting previously unselected package libgpg-error-dev. 2026-10-25T02:20:05.4926834Z Preparing to unpack .../11-libgpg-error-dev_1.47-3build2.1_amd64.deb ... 2026-10-25T02:20:05.4927041Z Unpacking libgpg-error-dev (1.47-3build2.1) ... 2026-10-25T02:20:05.4927227Z Selecting previously unselected package libgcrypt20-dev. 2026-10-25T02:20:05.4927449Z Preparing to unpack .../12-libgcrypt20-dev_1.10.3-2ubuntu0.2_amd64.deb ... 2026-10-25T02:20:05.4927656Z Unpacking libgcrypt20-dev (1.10.3-2ubuntu0.2) ... 2026-10-25T02:20:05.4927867Z Selecting previously unselected package libgirepository-2.0-0:amd64. 2026-10-25T02:20:05.4928116Z Preparing to unpack .../13-libgirepository-2.0-0_2.80.0-6ubuntu3.10_amd64.deb ... 2026-10-25T02:20:05.4928361Z Unpacking libgirepository-2.0-0:amd64 (2.80.0-6ubuntu3.10) ... 2026-10-25T02:20:05.4928575Z Selecting previously unselected package libglib2.0-dev-bin. 2026-10-25T02:20:05.4928806Z Preparing to unpack .../14-libglib2.0-dev-bin_2.80.0-6ubuntu3.10_amd64.deb ... 2026-10-25T02:20:05.4929031Z Unpacking libglib2.0-dev-bin (2.80.0-6ubuntu3.10) ... 2026-10-25T02:20:05.4929220Z Selecting previously unselected package uuid-dev:amd64. 2026-10-25T02:20:05.4929432Z Preparing to unpack .../15-uuid-dev_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-25T02:20:05.4929628Z Unpacking uuid-dev:amd64 (2.39.3-9ubuntu6.6) ... 2026-10-25T02:20:05.4929826Z Selecting previously unselected package libblkid-dev:amd64. 2026-10-25T02:20:05.4930043Z Preparing to unpack .../16-libblkid-dev_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-25T02:20:05.4930254Z Unpacking libblkid-dev:amd64 (2.39.3-9ubuntu6.6) ... 2026-10-25T02:20:05.4930481Z Selecting previously unselected package libsepol-dev:amd64. 2026-10-25T02:20:05.4930700Z Preparing to unpack .../17-libsepol-dev_3.5-2build1_amd64.deb ... 2026-10-25T02:20:05.4930897Z Unpacking libsepol-dev:amd64 (3.5-2build1) ... 2026-10-25T02:20:05.4931089Z Selecting previously unselected package libselinux1-dev:amd64. 2026-10-25T02:20:05.4931397Z Preparing to unpack .../18-libselinux1-dev_3.5-2ubuntu2.1_amd64.deb ... 2026-10-25T02:20:05.4931607Z Unpacking libselinux1-dev:amd64 (3.5-2ubuntu2.1) ... 2026-10-25T02:20:05.4931803Z Selecting previously unselected package libmount-dev:amd64. 2026-10-25T02:20:05.4932023Z Preparing to unpack .../19-libmount-dev_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-25T02:20:05.4932230Z Unpacking libmount-dev:amd64 (2.39.3-9ubuntu6.6) ... 2026-10-25T02:20:05.4932424Z Selecting previously unselected package libglib2.0-dev:amd64. 2026-10-25T02:20:05.4932651Z Preparing to unpack .../20-libglib2.0-dev_2.80.0-6ubuntu3.10_amd64.deb ... 2026-10-25T02:20:05.4932866Z Unpacking libglib2.0-dev:amd64 (2.80.0-6ubuntu3.10) ... 2026-10-25T02:20:05.4933073Z Selecting previously unselected package libsecret-1-dev:amd64. 2026-10-25T02:20:05.4933294Z Preparing to unpack .../21-libsecret-1-dev_0.21.4-1build3_amd64.deb ... 2026-10-25T02:20:05.4933500Z Unpacking libsecret-1-dev:amd64 (0.21.4-1build3) ... 2026-10-25T02:20:05.4933675Z Setting up bsdextrautils (2.39.3-9ubuntu6.6) ... 2026-10-25T02:20:05.4933833Z Setting up eject (2.39.3-9ubuntu6.6) ... 2026-10-25T02:20:05.4934009Z Setting up libglib2.0-0t64:amd64 (2.80.0-6ubuntu3.10) ... 2026-10-25T02:20:05.4934199Z Setting up libglib2.0-data (2.80.0-6ubuntu3.10) ... 2026-10-25T02:20:05.4934487Z Setting up libgpg-error-dev (1.47-3build2.1) ... 2026-10-25T02:20:05.4934703Z Setting up uuid-dev:amd64 (2.39.3-9ubuntu6.6) ... 2026-10-25T02:20:05.4934881Z Setting up libsepol-dev:amd64 (3.5-2build1) ... 2026-10-25T02:20:05.4935058Z Setting up gir1.2-glib-2.0:amd64 (2.80.0-6ubuntu3.10) ... 2026-10-25T02:20:05.4935249Z Setting up libfdisk1:amd64 (2.39.3-9ubuntu6.6) ... 2026-10-25T02:20:05.4935414Z Setting up mount (2.39.3-9ubuntu6.6) ... 2026-10-25T02:20:05.4935574Z Setting up uuid-runtime (2.39.3-9ubuntu6.6) ... 2026-10-25T02:20:05.4935793Z uuidd.service is a disabled or a static unit not running, not starting it. 2026-10-25T02:20:05.4936006Z Setting up libsecret-common (0.21.4-1build3) ... 2026-10-25T02:20:05.4936194Z Setting up libglib2.0-dev-bin (2.80.0-6ubuntu3.10) ... 2026-10-25T02:20:05.4936381Z Setting up libblkid-dev:amd64 (2.39.3-9ubuntu6.6) ... 2026-10-25T02:20:05.4936589Z Setting up libgirepository-2.0-0:amd64 (2.80.0-6ubuntu3.10) ... 2026-10-25T02:20:05.4936792Z Setting up libselinux1-dev:amd64 (3.5-2ubuntu2.1) ... 2026-10-25T02:20:05.4936976Z Setting up libglib2.0-bin (2.80.0-6ubuntu3.10) ... 2026-10-25T02:20:05.4937144Z Setting up fdisk (2.39.3-9ubuntu6.6) ... 2026-10-25T02:20:05.4937312Z Setting up libsecret-1-0:amd64 (0.21.4-1build3) ... 2026-10-25T02:20:05.4937494Z Setting up gir1.2-secret-1:amd64 (0.21.4-1build3) ... 2026-10-25T02:20:05.4937671Z Setting up libgcrypt20-dev (1.10.3-2ubuntu0.2) ... 2026-10-25T02:20:05.4937856Z Setting up libmount-dev:amd64 (2.39.3-9ubuntu6.6) ... 2026-10-25T02:20:05.4938041Z Setting up libglib2.0-dev:amd64 (2.80.0-6ubuntu3.10) ... 2026-10-25T02:20:05.4938234Z Setting up libsecret-1-dev:amd64 (0.21.4-1build3) ... 2026-10-25T02:20:05.4938418Z Processing triggers for libc-bin (2.39-0ubuntu8.8) ... 2026-10-25T02:20:05.4938602Z Processing triggers for man-db (2.12.0-4build2) ... 2026-10-25T02:20:05.4938785Z Not building database; man-db/auto-update is not 'true'. 2026-10-25T02:20:05.4938980Z Processing triggers for install-info (7.1-3build2) ... 2026-10-25T02:20:05.4939100Z 2026-10-25T02:20:05.4939160Z Restarting services... 2026-10-25T02:20:05.4939685Z systemctl restart 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-25T02:20:05.4940363Z Failed to restart systemd-manager.service: Unit systemd-manager.service not found. 2026-10-25T02:20:05.4940555Z 2026-10-25T02:20:05.4940614Z Service restarts being deferred: 2026-10-25T02:20:05.4940765Z systemctl restart ModemManager.service 2026-10-25T02:20:05.4940922Z systemctl restart dbus.service 2026-10-25T02:20:05.4941063Z systemctl restart getty@tty1.service 2026-10-25T02:20:05.4941226Z systemctl restart networkd-dispatcher.service 2026-10-25T02:20:05.4941399Z systemctl restart serial-getty@ttyS0.service 2026-10-25T02:20:05.4941572Z systemctl restart setup_and_run_blacksmith.service 2026-10-25T02:20:05.4941748Z systemctl restart systemd-logind.service 2026-10-25T02:20:05.4941847Z 2026-10-25T02:20:05.4941905Z No containers need to be restarted. 2026-10-25T02:20:05.4941999Z 2026-10-25T02:20:05.4942058Z User sessions running outdated binaries: 2026-10-25T02:20:05.4942222Z runner @ user manager service: systemd[1838] 2026-10-25T02:20:05.4942325Z 2026-10-25T02:20:05.4942424Z No VM guests are running outdated hypervisor (qemu) binaries on this host. 2026-10-25T02:20:05.5048522Z ##[group]Run vp run build:desktop 2026-10-25T02:20:05.5048780Z vp run build:desktop 2026-10-25T02:20:05.5059355Z shell: /usr/bin/bash -e {0} 2026-10-25T02:20:05.5059506Z env: 2026-10-25T02:20:05.5059629Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 145 2026-10-25T02:20:05.5059791Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 404 2026-10-25T02:20:05.5059943Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-25T02:20:05.5060087Z ##[endgroup] 2026-10-25T02:20:06.2959415Z ~/apps/web$ vp build ⊘ cache disabled 2026-10-25T02:20:07.2537441Z transforming... 2026-10-25T02:20:09.6691877Z ✓ 6797 modules transformed. 2026-10-25T02:20:10.1659860Z rendering chunks... 2026-10-25T02:20:12.2051113Z computing gzip size... 2026-10-25T02:20:12.2631567Z dist/assets/ghostty-write-pty-hgyAvVbe.wasm 0.11 kB │ gzip: 0.12 kB 2026-10-25T02:20:12.2631904Z dist/assets/KaTeX_Size3-Regular-CTq5MqoE.woff 4.42 kB 2026-10-25T02:20:12.2632157Z dist/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 4.92 kB 2026-10-25T02:20:12.2632406Z dist/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 5.20 kB 2026-10-25T02:20:12.2632645Z dist/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 5.46 kB 2026-10-25T02:20:12.2632926Z dist/assets/KaTeX_Size4-Regular-BF-4gkZK.woff 5.98 kB 2026-10-25T02:20:12.2633166Z dist/assets/KaTeX_Size2-Regular-oD1tc_U0.woff 6.18 kB 2026-10-25T02:20:12.2633413Z dist/assets/snap-shot-click-CJiuxMEv.mp3 6.38 kB 2026-10-25T02:20:12.2633656Z dist/assets/KaTeX_Size1-Regular-C195tn64.woff 6.49 kB 2026-10-25T02:20:12.2633944Z dist/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 6.90 kB 2026-10-25T02:20:12.2634211Z dist/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 6.91 kB 2026-10-25T02:20:12.2634459Z dist/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf 7.58 kB 2026-10-25T02:20:12.2634706Z dist/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff 7.65 kB 2026-10-25T02:20:12.2634953Z dist/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff 7.71 kB 2026-10-25T02:20:12.2635205Z dist/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 9.64 kB 2026-10-25T02:20:12.2635450Z dist/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 10.34 kB 2026-10-25T02:20:12.2635695Z dist/assets/KaTeX_Size4-Regular-DWFBv043.ttf 10.36 kB 2026-10-25T02:20:12.2635934Z dist/assets/KaTeX_Script-Regular-D5yQViql.woff 10.58 kB 2026-10-25T02:20:12.2636187Z dist/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 11.31 kB 2026-10-25T02:20:12.2636437Z dist/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 11.34 kB 2026-10-25T02:20:12.2636683Z dist/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf 11.50 kB 2026-10-25T02:20:12.2636928Z dist/assets/notification-input-BJS4voY1.mp3 11.63 kB 2026-10-25T02:20:12.2637180Z dist/assets/notification-completion-vyCCbYsz.mp3 11.94 kB 2026-10-25T02:20:12.2637431Z dist/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 12.02 kB 2026-10-25T02:20:12.2637679Z dist/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 12.21 kB 2026-10-25T02:20:12.2637921Z dist/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf 12.22 kB 2026-10-25T02:20:12.2638268Z dist/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff 12.31 kB 2026-10-25T02:20:12.2638517Z dist/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf 12.34 kB 2026-10-25T02:20:12.2638766Z dist/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf 12.36 kB 2026-10-25T02:20:12.2639026Z dist/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff 13.20 kB 2026-10-25T02:20:12.2639277Z dist/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff 13.29 kB 2026-10-25T02:20:12.2639564Z dist/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 13.56 kB 2026-10-25T02:20:12.2639808Z dist/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff 14.11 kB 2026-10-25T02:20:12.2640142Z dist/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff 14.40 kB 2026-10-25T02:20:12.2640385Z dist/assets/snap-shot-whoosh-CQZ59XJc.mp3 15.02 kB 2026-10-25T02:20:12.2640639Z dist/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff 16.02 kB 2026-10-25T02:20:12.2640885Z dist/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 16.40 kB 2026-10-25T02:20:12.2641136Z dist/assets/KaTeX_Math-Italic-t53AETM-.woff2 16.44 kB 2026-10-25T02:20:12.2641378Z dist/assets/KaTeX_Script-Regular-C5JkGWo-.ttf 16.64 kB 2026-10-25T02:20:12.2642910Z dist/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 16.78 kB 2026-10-25T02:20:12.2643520Z dist/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 16.98 kB 2026-10-25T02:20:12.2643867Z dist/index.html 18.57 kB │ gzip: 4.75 kB 2026-10-25T02:20:12.2644112Z dist/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff 18.66 kB 2026-10-25T02:20:12.2644355Z dist/assets/KaTeX_Math-Italic-DA0__PXp.woff 18.74 kB 2026-10-25T02:20:12.2644595Z dist/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff 19.41 kB 2026-10-25T02:20:12.2644842Z dist/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf 19.43 kB 2026-10-25T02:20:12.2645082Z dist/assets/KaTeX_Fraktur-Regular-CB_wures.ttf 19.57 kB 2026-10-25T02:20:12.2645319Z dist/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf 19.58 kB 2026-10-25T02:20:12.2645566Z dist/assets/KaTeX_Main-Italic-BMLOBm91.woff 19.67 kB 2026-10-25T02:20:12.2645807Z dist/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf 22.36 kB 2026-10-25T02:20:12.2646052Z dist/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf 24.50 kB 2026-10-25T02:20:12.2646293Z dist/assets/KaTeX_Main-Bold-Cx986IdX.woff2 25.32 kB 2026-10-25T02:20:12.2646536Z dist/assets/KaTeX_Main-Regular-B22Nviop.woff2 26.27 kB 2026-10-25T02:20:12.2646774Z dist/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf 27.55 kB 2026-10-25T02:20:12.2647018Z dist/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 28.07 kB 2026-10-25T02:20:12.2647252Z dist/assets/KaTeX_Main-Bold-Jm3AIy58.woff 29.91 kB 2026-10-25T02:20:12.2647490Z dist/assets/KaTeX_Main-Regular-Dr94JaBh.woff 30.77 kB 2026-10-25T02:20:12.2647727Z dist/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf 31.19 kB 2026-10-25T02:20:12.2647967Z dist/assets/KaTeX_Math-Italic-flOr_0UB.ttf 31.30 kB 2026-10-25T02:20:12.2648203Z dist/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf 32.96 kB 2026-10-25T02:20:12.2648449Z dist/assets/KaTeX_AMS-Regular-DMm9YOAa.woff 33.51 kB 2026-10-25T02:20:12.2648684Z dist/assets/KaTeX_Main-Italic-3WenGoN9.ttf 33.58 kB 2026-10-25T02:20:12.2648919Z dist/assets/KaTeX_Main-Bold-waoOVXN0.ttf 51.33 kB 2026-10-25T02:20:12.2649160Z dist/assets/KaTeX_Main-Regular-ypZvNtVU.ttf 53.58 kB 2026-10-25T02:20:12.2649397Z dist/assets/KaTeX_AMS-Regular-DRggAlZN.ttf 63.63 kB 2026-10-25T02:20:12.2649746Z dist/.vite/manifest.json 344.70 kB │ gzip: 33.93 kB 2026-10-25T02:20:12.2650053Z dist/assets/ghostty-vt-DdA0Zryv.wasm 630.93 kB │ gzip: 187.91 kB 2026-10-25T02:20:12.2650400Z dist/third-party-licenses.json 877.25 kB │ gzip: 110.08 kB 2026-10-25T02:20:12.2650674Z dist/assets/SymbolsNerdFontMono-Regular-aK5vsLov.woff2 1,177.57 kB 2026-10-25T02:20:12.2650937Z dist/assets/ipad-pro-13-m5-DCWznkpd.glb 1,815.87 kB 2026-10-25T02:20:12.2651188Z dist/assets/ipad-pro-13-m5-magic-keyboard-l8da3bBi.glb 2,341.88 kB 2026-10-25T02:20:12.2651437Z dist/assets/iphone-18-pro-max-B3H2Zbeg.glb 2,399.02 kB 2026-10-25T02:20:12.2651678Z dist/assets/iphone-18-pro-Crheuaz9.glb 2,422.54 kB 2026-10-25T02:20:12.2651915Z dist/assets/iphone-duo-Cu4Xx1NH.glb 3,097.72 kB 2026-10-25T02:20:12.2652151Z dist/assets/worker-Dv645UJI.js 10,521.07 kB 2026-10-25T02:20:12.2652442Z dist/assets/MathTypeset-DEcVZfaU.css 28.83 kB │ gzip: 7.92 kB 2026-10-25T02:20:12.2652745Z dist/assets/main-B1tgK3Jh.css 529.04 kB │ gzip: 70.94 kB 2026-10-25T02:20:12.2653489Z dist/assets/JZOYTAAL-CeCKhvPM.js 0.05 kB │ gzip: 0.07 kB 2026-10-25T02:20:12.2654157Z dist/assets/_chat.draft._draftId-DJ7LAi8J.js 0.09 kB │ gzip: 0.11 kB │ map: 0.47 kB 2026-10-25T02:20:12.2654514Z dist/assets/legalLinks-BaIJY52l.js 0.10 kB │ gzip: 0.12 kB │ map: 0.24 kB 2026-10-25T02:20:12.2654940Z dist/assets/_chat._environmentId._threadId-DJ7LAi8J.js 0.10 kB │ gzip: 0.12 kB │ map: 0.50 kB 2026-10-25T02:20:12.2655306Z dist/assets/constants-CmGPilXJ.js 0.12 kB │ gzip: 0.11 kB │ map: 0.93 kB 2026-10-25T02:20:12.2655663Z dist/assets/formatCSSVariablePrefix-KRh9vnZf.js 0.13 kB │ gzip: 0.14 kB │ map: 0.71 kB 2026-10-25T02:20:12.2656007Z dist/assets/minus-tLUw_kS7.js 0.15 kB │ gzip: 0.16 kB │ map: 0.79 kB 2026-10-25T02:20:12.2656329Z dist/assets/circle-B4MfrpAf.js 0.16 kB │ gzip: 0.16 kB │ map: 0.84 kB 2026-10-25T02:20:12.2656671Z dist/assets/chevron-up-C9S6j-_y.js 0.16 kB │ gzip: 0.16 kB │ map: 0.83 kB 2026-10-25T02:20:12.2657009Z dist/assets/chevron-left-CLTdh2R0.js 0.17 kB │ gzip: 0.17 kB │ map: 0.84 kB 2026-10-25T02:20:12.2657331Z dist/assets/x-BBbeuW4r.js 0.18 kB │ gzip: 0.17 kB │ map: 0.87 kB 2026-10-25T02:20:12.2657647Z dist/assets/plus-C67lqdTz.js 0.18 kB │ gzip: 0.17 kB │ map: 0.89 kB 2026-10-25T02:20:12.2657967Z dist/assets/arrow-up-CAul9Tnl.js 0.19 kB │ gzip: 0.18 kB │ map: 0.92 kB 2026-10-25T02:20:12.2658292Z dist/assets/terminal-Y_9sWR3R.js 0.19 kB │ gzip: 0.18 kB │ map: 0.92 kB 2026-10-25T02:20:12.2658618Z dist/assets/itemRows-DNgi4sqO.js 0.20 kB │ gzip: 0.17 kB │ map: 0.43 kB 2026-10-25T02:20:12.2658955Z dist/assets/arrow-down-CyVZC3CZ.js 0.20 kB │ gzip: 0.18 kB │ map: 0.93 kB 2026-10-25T02:20:12.2659287Z dist/assets/RVARI57O-CgA1WoRv.js 0.20 kB │ gzip: 0.19 kB │ map: 0.64 kB 2026-10-25T02:20:12.2659658Z dist/assets/arrow-right-BKhTCg8u.js 0.20 kB │ gzip: 0.19 kB │ map: 0.94 kB 2026-10-25T02:20:12.2659983Z dist/assets/gauge-BPqOEwjF.js 0.20 kB │ gzip: 0.19 kB │ map: 0.92 kB 2026-10-25T02:20:12.2660321Z dist/assets/chevrons-up-down-8VodQc9V.js 0.21 kB │ gzip: 0.18 kB │ map: 0.98 kB 2026-10-25T02:20:12.2660653Z dist/assets/play-QERTqWXf.js 0.22 kB │ gzip: 0.20 kB │ map: 0.90 kB 2026-10-25T02:20:12.2660972Z dist/assets/ccount-CyGsA0u7.js 0.22 kB │ gzip: 0.20 kB │ map: 1.12 kB 2026-10-25T02:20:12.2661303Z dist/assets/smartphone-BFsCBqVP.js 0.23 kB │ gzip: 0.21 kB │ map: 1.04 kB 2026-10-25T02:20:12.2661655Z dist/assets/FieldItemContext-Czp3rpvZ.js 0.23 kB │ gzip: 0.20 kB │ map: 0.88 kB 2026-10-25T02:20:12.2661986Z dist/assets/lock-BL-yBg0W.js 0.23 kB │ gzip: 0.22 kB │ map: 1.01 kB 2026-10-25T02:20:12.2662309Z dist/assets/undo-2-C-fLAfcY.js 0.24 kB │ gzip: 0.21 kB │ map: 0.96 kB 2026-10-25T02:20:12.2662632Z dist/assets/circle-x-C_A6xadK.js 0.24 kB │ gzip: 0.20 kB │ map: 1.05 kB 2026-10-25T02:20:12.2662964Z dist/assets/lock-open-Bqnp78Pa.js 0.24 kB │ gzip: 0.22 kB │ map: 1.04 kB 2026-10-25T02:20:12.2663294Z dist/assets/authRedirect-DWE5a_T9.js 0.25 kB │ gzip: 0.18 kB │ map: 1.18 kB 2026-10-25T02:20:12.2663997Z dist/assets/circle-arrow-up-CxpZKbkB.js 0.26 kB │ gzip: 0.21 kB │ map: 1.11 kB 2026-10-25T02:20:12.2664495Z dist/assets/ellipsis-G4RIvL9o.js 0.26 kB │ gzip: 0.19 kB │ map: 1.13 kB 2026-10-25T02:20:12.2664891Z dist/assets/log-in-D3RKzt0Z.js 0.26 kB │ gzip: 0.21 kB │ map: 1.04 kB 2026-10-25T02:20:12.2665219Z dist/assets/useSearch-BItri7J7.js 0.26 kB │ gzip: 0.20 kB │ map: 1.53 kB 2026-10-25T02:20:12.2665545Z dist/assets/copy-DXoGJuqG.js 0.26 kB │ gzip: 0.23 kB │ map: 1.04 kB 2026-10-25T02:20:12.2665890Z dist/assets/cloneFileDiffMetadata-zVRGqYgv.js 0.27 kB │ gzip: 0.19 kB │ map: 1.23 kB 2026-10-25T02:20:12.2666261Z dist/assets/ellipsis-vertical-BttZZicp.js 0.28 kB │ gzip: 0.19 kB │ map: 1.19 kB 2026-10-25T02:20:12.2666613Z dist/assets/square-terminal-C7sczAdc.js 0.28 kB │ gzip: 0.23 kB │ map: 1.18 kB 2026-10-25T02:20:12.2666950Z dist/assets/eye-DMBoAWiH.js 0.28 kB │ gzip: 0.23 kB │ map: 1.05 kB 2026-10-25T02:20:12.2667276Z dist/assets/circle-alert-B7qBEacJ.js 0.29 kB │ gzip: 0.21 kB │ map: 1.20 kB 2026-10-25T02:20:12.2667619Z dist/assets/external-link-Dij3tAqz.js 0.29 kB │ gzip: 0.22 kB │ map: 1.10 kB 2026-10-25T02:20:12.2667965Z dist/assets/mouse-pointer-2-B9iiNq41.js 0.29 kB │ gzip: 0.24 kB │ map: 1.02 kB 2026-10-25T02:20:12.2668301Z dist/assets/pencil-aM1cde0f.js 0.31 kB │ gzip: 0.25 kB │ map: 1.06 kB 2026-10-25T02:20:12.2668629Z dist/assets/useNavigate-CGTEYpD_.js 0.31 kB │ gzip: 0.25 kB │ map: 2.30 kB 2026-10-25T02:20:12.2668964Z dist/assets/pen-line-Cg6qd24X.js 0.31 kB │ gzip: 0.25 kB │ map: 1.07 kB 2026-10-25T02:20:12.2669291Z dist/assets/plug-2-Brxn61vF.js 0.31 kB │ gzip: 0.23 kB │ map: 1.21 kB 2026-10-25T02:20:12.2669651Z dist/assets/list-checks-D1n_IhdV.js 0.31 kB │ gzip: 0.22 kB │ map: 1.24 kB 2026-10-25T02:20:12.2669981Z dist/assets/archive-x-B2fZ0YIR.js 0.33 kB │ gzip: 0.25 kB │ map: 1.24 kB 2026-10-25T02:20:12.2670308Z dist/assets/wrench-CpFi0mKh.js 0.33 kB │ gzip: 0.26 kB │ map: 1.02 kB 2026-10-25T02:20:12.2670628Z dist/assets/laptop-E-Srvcuc.js 0.33 kB │ gzip: 0.25 kB │ map: 1.09 kB 2026-10-25T02:20:12.2670969Z dist/assets/message-square-off-BxHiV_yc.js 0.35 kB │ gzip: 0.27 kB │ map: 1.22 kB 2026-10-25T02:20:12.2671313Z dist/assets/refresh-cw-58ZGxpCn.js 0.35 kB │ gzip: 0.25 kB │ map: 1.22 kB 2026-10-25T02:20:12.2671649Z dist/assets/trash-2-BvezLCU3.js 0.36 kB │ gzip: 0.24 kB │ map: 1.27 kB 2026-10-25T02:20:12.2671974Z dist/assets/camera-nznztjcl.js 0.37 kB │ gzip: 0.28 kB │ map: 1.15 kB 2026-10-25T02:20:12.2672312Z dist/assets/settings.general-DYIscpIa.js 0.37 kB │ gzip: 0.28 kB │ map: 0.84 kB 2026-10-25T02:20:12.2672649Z dist/assets/server-pwQAcISO.js 0.37 kB │ gzip: 0.24 kB │ map: 1.43 kB 2026-10-25T02:20:12.2672980Z dist/assets/FormContext-lfd0CSv7.js 0.37 kB │ gzip: 0.28 kB │ map: 1.13 kB 2026-10-25T02:20:12.2673313Z dist/assets/unlink-2-PtDVUS76.js 0.38 kB │ gzip: 0.27 kB │ map: 1.83 kB 2026-10-25T02:20:12.2673642Z dist/assets/monitor-CCqXOpHk.js 0.40 kB │ gzip: 0.30 kB │ map: 1.94 kB 2026-10-25T02:20:12.2674282Z dist/assets/toastHelpers-CSQRKo4F.js 0.40 kB │ gzip: 0.26 kB │ map: 2.12 kB 2026-10-25T02:20:12.2674789Z dist/assets/grip-vertical-CUpXGcVV.js 0.41 kB │ gzip: 0.22 kB │ map: 1.57 kB 2026-10-25T02:20:12.2675217Z dist/assets/settings.scheduled-tasks-qfS7RK5c.js 0.41 kB │ gzip: 0.30 kB │ map: 1.24 kB 2026-10-25T02:20:12.2675592Z dist/assets/useT3ConnectAuthPrompt-BJflR0MN.js 0.41 kB │ gzip: 0.31 kB │ map: 0.95 kB 2026-10-25T02:20:12.2675945Z dist/assets/previewBridge-BGIcwc3C.js 0.42 kB │ gzip: 0.29 kB │ map: 1.92 kB 2026-10-25T02:20:12.2676282Z dist/assets/K3MD6TGW-DoYKekB6.js 0.42 kB │ gzip: 0.33 kB │ map: 1.02 kB 2026-10-25T02:20:12.2676604Z dist/assets/hammer-_ZgIaqha.js 0.42 kB │ gzip: 0.30 kB │ map: 1.24 kB 2026-10-25T02:20:12.2676928Z dist/assets/inbox-B4_WhOGH.js 0.43 kB │ gzip: 0.32 kB │ map: 1.89 kB 2026-10-25T02:20:12.2677257Z dist/assets/useLocation-BaYG38K6.js 0.44 kB │ gzip: 0.31 kB │ map: 2.27 kB 2026-10-25T02:20:12.2677608Z dist/assets/mouse-pointer-click-yj1zaR19.js 0.46 kB │ gzip: 0.31 kB │ map: 1.46 kB 2026-10-25T02:20:12.2678009Z dist/assets/minimize-2-BqgsEoIi.js 0.46 kB │ gzip: 0.27 kB │ map: 2.14 kB 2026-10-25T02:20:12.2678341Z dist/assets/eye-off-BWu40qak.js 0.46 kB │ gzip: 0.30 kB │ map: 1.37 kB 2026-10-25T02:20:12.2678681Z dist/assets/sliders-horizontal-BmXVNeYl.js 0.47 kB │ gzip: 0.26 kB │ map: 1.68 kB 2026-10-25T02:20:12.2679021Z dist/assets/folder-CCqoOVWY.js 0.47 kB │ gzip: 0.31 kB │ map: 1.87 kB 2026-10-25T02:20:12.2679366Z dist/assets/fileCommentAnnotations-BgdL_7u9.js 0.48 kB │ gzip: 0.30 kB │ map: 2.48 kB 2026-10-25T02:20:12.2679753Z dist/assets/radio-tower-B10YzL0o.js 0.49 kB │ gzip: 0.32 kB │ map: 1.58 kB 2026-10-25T02:20:12.2680085Z dist/assets/redirect-D3L17tzd.js 0.49 kB │ gzip: 0.32 kB │ map: 3.46 kB 2026-10-25T02:20:12.2680408Z dist/assets/star-Y_W0Z3Dq.js 0.50 kB │ gzip: 0.32 kB │ map: 1.18 kB 2026-10-25T02:20:12.2680731Z dist/assets/file-braces-CauSx3-N.js 0.50 kB │ gzip: 0.29 kB │ map: 1.44 kB 2026-10-25T02:20:12.2681067Z dist/assets/onboarding-HZ7IOr-j.js 0.51 kB │ gzip: 0.31 kB │ map: 2.20 kB 2026-10-25T02:20:12.2681402Z dist/assets/folder-tree-BYcp-rEm.js 0.51 kB │ gzip: 0.29 kB │ map: 1.45 kB 2026-10-25T02:20:12.2681733Z dist/assets/5THPTBWS-Ce_hS451.js 0.52 kB │ gzip: 0.34 kB │ map: 1.60 kB 2026-10-25T02:20:12.2682061Z dist/assets/sparkles-CvqfJm6D.js 0.53 kB │ gzip: 0.31 kB │ map: 1.44 kB 2026-10-25T02:20:12.2682409Z dist/assets/browserLinkTarget-DupB-UCF.js 0.53 kB │ gzip: 0.36 kB │ map: 2.32 kB 2026-10-25T02:20:12.2682754Z dist/assets/TSHNXIZL-U-v2ngEF.js 0.53 kB │ gzip: 0.39 kB │ map: 1.34 kB 2026-10-25T02:20:12.2683085Z dist/assets/rows-3-T6vKNlRh.js 0.54 kB │ gzip: 0.31 kB │ map: 2.87 kB 2026-10-25T02:20:12.2683421Z dist/assets/ScopedSwitch-Bcx7tEwV.js 0.54 kB │ gzip: 0.39 kB │ map: 1.47 kB 2026-10-25T02:20:12.2683764Z dist/assets/paperclip-DgCa45v_.js 0.54 kB │ gzip: 0.34 kB │ map: 2.10 kB 2026-10-25T02:20:12.2684106Z dist/assets/triangle-alert-BZHjvlLD.js 0.57 kB │ gzip: 0.33 kB │ map: 2.93 kB 2026-10-25T02:20:12.2684771Z dist/assets/paintbrush-BDEtcmKn.js 0.57 kB │ gzip: 0.37 kB │ map: 1.44 kB 2026-10-25T02:20:12.2685280Z dist/assets/codeowners-C8r90Shi.js 0.58 kB │ gzip: 0.34 kB │ map: 1.09 kB 2026-10-25T02:20:12.2685680Z dist/assets/trending-up-JFvoHR-8.js 0.59 kB │ gzip: 0.34 kB │ map: 2.90 kB 2026-10-25T02:20:12.2686015Z dist/assets/G3MDBVQH-BZmnMkFw.js 0.60 kB │ gzip: 0.38 kB │ map: 1.76 kB 2026-10-25T02:20:12.2686347Z dist/assets/use-atom-command-D3_Yqx6M.js 0.61 kB │ gzip: 0.40 kB │ map: 1.86 kB 2026-10-25T02:20:12.2686714Z dist/assets/useAriaLabelledBy-OqqM4iyB.js 0.62 kB │ gzip: 0.42 kB │ map: 3.53 kB 2026-10-25T02:20:12.2687059Z dist/assets/usageAccess-DMUcoo2e.js 0.62 kB │ gzip: 0.32 kB │ map: 2.05 kB 2026-10-25T02:20:12.2687399Z dist/assets/square-DVsXKqqz.js 0.63 kB │ gzip: 0.38 kB │ map: 3.08 kB 2026-10-25T02:20:12.2687737Z dist/assets/composerTrigger-BP81K-4K.js 0.63 kB │ gzip: 0.38 kB │ map: 6.54 kB 2026-10-25T02:20:12.2688084Z dist/assets/5GK6JWQ2-kLbxQ3tP.js 0.64 kB │ gzip: 0.47 kB │ map: 1.68 kB 2026-10-25T02:20:12.2688400Z dist/assets/bug-ux_piykM.js 0.65 kB │ gzip: 0.35 kB │ map: 1.93 kB 2026-10-25T02:20:12.2688720Z dist/assets/upload-DipMcaQy.js 0.66 kB │ gzip: 0.39 kB │ map: 2.48 kB 2026-10-25T02:20:12.2689056Z dist/assets/runtimeModeConfig-DTXWqgWU.js 0.68 kB │ gzip: 0.40 kB │ map: 1.52 kB 2026-10-25T02:20:12.2689399Z dist/assets/jsx-runtime-BQExFN_X.js 0.68 kB │ gzip: 0.46 kB │ map: 3.54 kB 2026-10-25T02:20:12.2689777Z dist/assets/WorkspacePageContainer-BOo-MW3h.js 0.68 kB │ gzip: 0.48 kB │ map: 2.06 kB 2026-10-25T02:20:12.2690150Z dist/assets/use-atom-query-runner-DNqOmMAq.js 0.72 kB │ gzip: 0.45 kB │ map: 2.46 kB 2026-10-25T02:20:12.2690498Z dist/assets/layers-CvSbxijg.js 0.73 kB │ gzip: 0.38 kB │ map: 2.42 kB 2026-10-25T02:20:12.2690825Z dist/assets/skeleton-CzwgOuxV.js 0.73 kB │ gzip: 0.49 kB │ map: 1.79 kB 2026-10-25T02:20:12.2691156Z dist/assets/CSPContext-BIshez4y.js 0.75 kB │ gzip: 0.49 kB │ map: 4.09 kB 2026-10-25T02:20:12.2691495Z dist/assets/shellsession-DphNsVk1.js 0.76 kB │ gzip: 0.46 kB │ map: 1.37 kB 2026-10-25T02:20:12.2691837Z dist/assets/usageShortcuts-CaEwQIUB.js 0.76 kB │ gzip: 0.44 kB │ map: 2.41 kB 2026-10-25T02:20:12.2692167Z dist/assets/tsv-sltzmVWM.js 0.77 kB │ gzip: 0.37 kB │ map: 1.38 kB 2026-10-25T02:20:12.2692498Z dist/assets/MathTypeset-B-kPuOtT.js 0.83 kB │ gzip: 0.57 kB │ map: 26.87 kB 2026-10-25T02:20:12.2692836Z dist/assets/DKTLEL5E-DciMwFJ1.js 0.87 kB │ gzip: 0.43 kB │ map: 2.42 kB 2026-10-25T02:20:12.2693171Z dist/assets/html-derivative-COYikD7u.js 0.89 kB │ gzip: 0.49 kB │ map: 1.46 kB 2026-10-25T02:20:12.2693508Z dist/assets/pair-DZ23BlP_.js 0.89 kB │ gzip: 0.56 kB │ map: 3.72 kB 2026-10-25T02:20:12.2693835Z dist/assets/linkedPrompt-CNeq4qHN.js 0.91 kB │ gzip: 0.53 kB │ map: 2.66 kB 2026-10-25T02:20:12.2694177Z dist/assets/SecretInput-B2K5LjjR.js 0.91 kB │ gzip: 0.60 kB │ map: 2.97 kB 2026-10-25T02:20:12.2694516Z dist/assets/useNavigateBack-SMlQ6BrW.js 0.92 kB │ gzip: 0.58 kB │ map: 3.67 kB 2026-10-25T02:20:12.2695134Z dist/assets/useRelativeTimeState-De-F8N-l.js 0.94 kB │ gzip: 0.56 kB │ map: 3.07 kB 2026-10-25T02:20:12.2695680Z dist/assets/useScopedModelAvailability-BsW2JuxR.js 0.99 kB │ gzip: 0.60 kB │ map: 4.94 kB 2026-10-25T02:20:12.2696099Z dist/assets/kbd-NkjcYfgW.js 1.00 kB │ gzip: 0.51 kB │ map: 2.57 kB 2026-10-25T02:20:12.2696421Z dist/assets/74OO7NKP-DtCDTigN.js 1.01 kB │ gzip: 0.62 kB │ map: 2.78 kB 2026-10-25T02:20:12.2696753Z dist/assets/git-rebase-B09wAERM.js 1.03 kB │ gzip: 0.47 kB │ map: 1.72 kB 2026-10-25T02:20:12.2697082Z dist/assets/qmldir-DCQb3MpD.js 1.03 kB │ gzip: 0.48 kB │ map: 1.74 kB 2026-10-25T02:20:12.2697408Z dist/assets/WEVWDWVA-BVc_TCFW.js 1.07 kB │ gzip: 0.57 kB │ map: 2.98 kB 2026-10-25T02:20:12.2697737Z dist/assets/draft-input-BfzzPDsp.js 1.07 kB │ gzip: 0.68 kB │ map: 4.26 kB 2026-10-25T02:20:12.2698076Z dist/assets/type-CHIkk7Mh.js 1.07 kB │ gzip: 0.52 kB │ map: 4.84 kB 2026-10-25T02:20:12.2698423Z dist/assets/git-pull-request-draft-DW2m61g2.js 1.09 kB │ gzip: 0.44 kB │ map: 5.05 kB 2026-10-25T02:20:12.2698779Z dist/assets/user-lock-OvNRHELo.js 1.09 kB │ gzip: 0.50 kB │ map: 4.74 kB 2026-10-25T02:20:12.2699108Z dist/assets/user-plus-MI0bJ1Fb.js 1.09 kB │ gzip: 0.57 kB │ map: 4.64 kB 2026-10-25T02:20:12.2699430Z dist/assets/sun-C8h9eYPr.js 1.11 kB │ gzip: 0.52 kB │ map: 4.01 kB 2026-10-25T02:20:12.2699778Z dist/assets/rolldown-runtime-COiEfhsA.js 1.11 kB │ gzip: 0.62 kB 2026-10-25T02:20:12.2700106Z dist/assets/route-Cul5ubYD.js 1.12 kB │ gzip: 0.51 kB │ map: 4.41 kB 2026-10-25T02:20:12.2700428Z dist/assets/zap-X-K5-rWA.js 1.12 kB │ gzip: 0.59 kB │ map: 4.95 kB 2026-10-25T02:20:12.2700774Z dist/assets/pullRequestReviewStore-DKkdrVP8.js 1.15 kB │ gzip: 0.58 kB │ map: 5.31 kB 2026-10-25T02:20:12.2701131Z dist/assets/csv-Dx-8-gkx.js 1.17 kB │ gzip: 0.40 kB │ map: 2.00 kB 2026-10-25T02:20:12.2701472Z dist/assets/observeResize-C7AyGDet.js 1.20 kB │ gzip: 0.64 kB │ map: 5.11 kB 2026-10-25T02:20:12.2701832Z dist/assets/ExpandableText-BQXKnUjD.js 1.27 kB │ gzip: 0.79 kB │ map: 5.16 kB 2026-10-25T02:20:12.2702178Z dist/assets/git-commit-BSykSTBG.js 1.27 kB │ gzip: 0.56 kB │ map: 2.07 kB 2026-10-25T02:20:12.2702529Z dist/assets/WorkspacePageHeader-Dav3Hln7.js 1.31 kB │ gzip: 0.70 kB │ map: 4.15 kB 2026-10-25T02:20:12.2702887Z dist/assets/useMediaQuery-CACyGeMu.js 1.33 kB │ gzip: 0.72 kB │ map: 4.97 kB 2026-10-25T02:20:12.2703216Z dist/assets/xsl-fJeiXJlj.js 1.40 kB │ gzip: 0.53 kB │ map: 2.22 kB 2026-10-25T02:20:12.2703550Z dist/assets/discovery-list-JybmEV9E.js 1.40 kB │ gzip: 0.77 kB │ map: 4.07 kB 2026-10-25T02:20:12.2703886Z dist/assets/semver-CFbvOQKc.js 1.42 kB │ gzip: 0.64 kB │ map: 9.48 kB 2026-10-25T02:20:12.2704215Z dist/assets/6IMQ5BUJ-CNsgPwV4.js 1.43 kB │ gzip: 0.80 kB │ map: 3.49 kB 2026-10-25T02:20:12.2704557Z dist/assets/resolveLanguages-BXmdetHa.js 1.43 kB │ gzip: 0.77 kB │ map: 5.53 kB 2026-10-25T02:20:12.2704909Z dist/assets/AuthSurfaceShell-VT4Uz_4S.js 1.43 kB │ gzip: 0.76 kB │ map: 5.23 kB 2026-10-25T02:20:12.2705465Z dist/assets/dotenv-_5a1GRtc.js 1.45 kB │ gzip: 0.56 kB │ map: 2.34 kB 2026-10-25T02:20:12.2706062Z dist/assets/CommandBlock-DwoNtKGA.js 1.49 kB │ gzip: 0.90 kB │ map: 4.75 kB 2026-10-25T02:20:12.2706433Z dist/assets/sparql-D_iOobhT.js 1.52 kB │ gzip: 0.84 kB │ map: 2.14 kB 2026-10-25T02:20:12.2706767Z dist/assets/sourceControl-cB3lhfJE.js 1.53 kB │ gzip: 0.51 kB │ map: 5.30 kB 2026-10-25T02:20:12.2707099Z dist/assets/utils-C9Glzetk.js 1.53 kB │ gzip: 0.79 kB │ map: 5.92 kB 2026-10-25T02:20:12.2707417Z dist/assets/ini-B5eOa1yu.js 1.55 kB │ gzip: 0.52 kB │ map: 2.47 kB 2026-10-25T02:20:12.2707759Z dist/assets/previewMiniPlayerStore-DErRtqLM.js 1.56 kB │ gzip: 0.70 kB │ map: 8.23 kB 2026-10-25T02:20:12.2708142Z dist/assets/panel-tab-close-button-BitWv3L6.js 1.60 kB │ gzip: 0.91 kB │ map: 5.47 kB 2026-10-25T02:20:12.2708518Z dist/assets/RedactedSensitiveText-ClYd1Fg3.js 1.61 kB │ gzip: 0.98 kB │ map: 6.24 kB 2026-10-25T02:20:12.2708865Z dist/assets/user-BmgOR4Cc.js 1.62 kB │ gzip: 0.78 kB │ map: 7.38 kB 2026-10-25T02:20:12.2709191Z dist/assets/slack-dark-Dtzi51su.js 1.67 kB │ gzip: 0.66 kB │ map: 5.78 kB 2026-10-25T02:20:12.2709532Z dist/assets/5N7A7DKN-DrVJ4TVE.js 1.67 kB │ gzip: 0.96 kB │ map: 4.05 kB 2026-10-25T02:20:12.2709879Z dist/assets/preview-DeRAAvCc.js 1.68 kB │ gzip: 0.59 kB │ map: 6.09 kB 2026-10-25T02:20:12.2710232Z dist/assets/EnvironmentMachineIcon-LIrmuug8.js 1.71 kB │ gzip: 0.82 kB │ map: 4.92 kB 2026-10-25T02:20:12.2710600Z dist/assets/fortran-fixed-form-DEKoE2YW.js 1.71 kB │ gzip: 0.72 kB │ map: 2.77 kB 2026-10-25T02:20:12.2710964Z dist/assets/ConnectionStatusDot-DDqvLhjC.js 1.74 kB │ gzip: 0.93 kB │ map: 5.60 kB 2026-10-25T02:20:12.2711333Z dist/assets/T3ConnectSidebarSignIn-CCj4FUyh.js 1.76 kB │ gzip: 0.82 kB │ map: 5.39 kB 2026-10-25T02:20:12.2711682Z dist/assets/docker-IyjqRm3v.js 1.77 kB │ gzip: 0.63 kB │ map: 2.65 kB 2026-10-25T02:20:12.2712007Z dist/assets/session-B7QgktZ1.js 1.77 kB │ gzip: 0.89 kB │ map: 8.63 kB 2026-10-25T02:20:12.2712331Z dist/assets/hxml-B0Qn7Nwc.js 1.78 kB │ gzip: 0.91 kB │ map: 2.51 kB 2026-10-25T02:20:12.2712675Z dist/assets/WorkspaceBreadcrumb-DX0vtjJu.js 1.81 kB │ gzip: 0.90 kB │ map: 5.93 kB 2026-10-25T02:20:12.2713019Z dist/assets/laserwave-DYV0fvJ_.js 1.83 kB │ gzip: 0.70 kB │ map: 6.12 kB 2026-10-25T02:20:12.2713372Z dist/assets/github-dark-default-adAWTKmX.js 1.84 kB │ gzip: 0.75 kB │ map: 6.13 kB 2026-10-25T02:20:12.2713724Z dist/assets/mediaSource-Dctv-P8V.js 1.84 kB │ gzip: 0.91 kB │ map: 9.78 kB 2026-10-25T02:20:12.2714055Z dist/assets/query-DyQaWjIr.js 1.85 kB │ gzip: 1.00 kB │ map: 8.02 kB 2026-10-25T02:20:12.2714376Z dist/assets/desktop-Dlh5hvp9.js 1.87 kB │ gzip: 0.78 kB │ map: 2.76 kB 2026-10-25T02:20:12.2714711Z dist/assets/user-round-BMUNwihT.js 1.87 kB │ gzip: 0.75 kB │ map: 8.43 kB 2026-10-25T02:20:12.2715048Z dist/assets/memory-stick-D1kk6jrq.js 1.89 kB │ gzip: 0.77 kB │ map: 7.67 kB 2026-10-25T02:20:12.2715399Z dist/assets/openFileInPreview-1zTBCDTa.js 1.89 kB │ gzip: 0.98 kB │ map: 8.30 kB 2026-10-25T02:20:12.2715991Z dist/assets/horizon-bright-COxh1lHf.js 1.90 kB │ gzip: 0.74 kB │ map: 6.28 kB 2026-10-25T02:20:12.2716526Z dist/assets/slack-ochin-Bb7oPExa.js 1.92 kB │ gzip: 0.75 kB │ map: 6.34 kB 2026-10-25T02:20:12.2716922Z dist/assets/min-dark-DECtZcqS.js 1.92 kB │ gzip: 0.68 kB │ map: 6.40 kB 2026-10-25T02:20:12.2717257Z dist/assets/vesper-C1rBZbON.js 1.94 kB │ gzip: 0.69 kB │ map: 6.48 kB 2026-10-25T02:20:12.2717584Z dist/assets/dracula-soft-D-Kgh5gw.js 1.94 kB │ gzip: 0.73 kB │ map: 6.44 kB 2026-10-25T02:20:12.2717930Z dist/assets/snazzy-light-DXgiwzKu.js 1.95 kB │ gzip: 0.76 kB │ map: 6.38 kB 2026-10-25T02:20:12.2718304Z dist/assets/horizon-DUI96lQn.js 1.95 kB │ gzip: 0.73 kB │ map: 6.31 kB 2026-10-25T02:20:12.2718635Z dist/assets/min-light-qRIVcaqf.js 1.96 kB │ gzip: 0.68 kB │ map: 6.40 kB 2026-10-25T02:20:12.2718969Z dist/assets/7WLXJQOR-D6QVYUu9.js 1.99 kB │ gzip: 1.00 kB │ map: 2.80 kB 2026-10-25T02:20:12.2719316Z dist/assets/material-theme-IcIb8QNx.js 2.01 kB │ gzip: 0.76 kB │ map: 6.53 kB 2026-10-25T02:20:12.2719705Z dist/assets/material-theme-ocean-BX6hAJ_y.js 2.02 kB │ gzip: 0.77 kB │ map: 6.55 kB 2026-10-25T02:20:12.2720073Z dist/assets/material-theme-darker-B_f2vxdL.js 2.02 kB │ gzip: 0.76 kB │ map: 6.56 kB 2026-10-25T02:20:12.2720441Z dist/assets/material-theme-lighter-CR2Q-4Hp.js 2.02 kB │ gzip: 0.75 kB │ map: 6.56 kB 2026-10-25T02:20:12.2720806Z dist/assets/NoProjectsHero-Bxd-ZekT.js 2.03 kB │ gzip: 1.05 kB │ map: 8.31 kB 2026-10-25T02:20:12.2721173Z dist/assets/material-theme-palenight-B6DWAotd.js 2.03 kB │ gzip: 0.76 kB │ map: 6.57 kB 2026-10-25T02:20:12.2721534Z dist/assets/textarea-BOBORICi.js 2.06 kB │ gzip: 1.02 kB │ map: 7.13 kB 2026-10-25T02:20:12.2721873Z dist/assets/terminal-links-CnKLYLhZ.js 2.12 kB │ gzip: 1.14 kB │ map: 9.93 kB 2026-10-25T02:20:12.2722224Z dist/assets/everforest-dark-Y6tr-2zD.js 2.15 kB │ gzip: 0.80 kB │ map: 6.89 kB 2026-10-25T02:20:12.2722574Z dist/assets/everforest-light-CA0Ol4Qu.js 2.15 kB │ gzip: 0.81 kB │ map: 6.89 kB 2026-10-25T02:20:12.2722911Z dist/assets/erb-BLWPyK3T.js 2.17 kB │ gzip: 0.65 kB │ map: 3.34 kB 2026-10-25T02:20:12.2723231Z dist/assets/5B3SVYGG-yacMP93L.js 2.17 kB │ gzip: 1.10 kB │ map: 5.94 kB 2026-10-25T02:20:12.2723583Z dist/assets/ProviderAuthTerminal-eAL7EsCm.js 2.18 kB │ gzip: 1.15 kB │ map: 8.51 kB 2026-10-25T02:20:12.2723933Z dist/assets/wenyan-C8pVoKbM.js 2.19 kB │ gzip: 1.13 kB │ map: 3.19 kB 2026-10-25T02:20:12.2724266Z dist/assets/assetUrls-DTrrHv21.js 2.19 kB │ gzip: 1.15 kB │ map: 8.60 kB 2026-10-25T02:20:12.2724593Z dist/assets/search-BogclXk9.js 2.20 kB │ gzip: 1.15 kB │ map: 13.13 kB 2026-10-25T02:20:12.2724931Z dist/assets/AnimatedHeight-DvcoclUb.js 2.24 kB │ gzip: 1.13 kB │ map: 10.50 kB 2026-10-25T02:20:12.2725276Z dist/assets/EnvironmentRow-CExGm7Gt.js 2.26 kB │ gzip: 1.22 kB │ map: 8.52 kB 2026-10-25T02:20:12.2725611Z dist/assets/jssm-DXw9l8Rf.js 2.27 kB │ gzip: 0.64 kB │ map: 3.39 kB 2026-10-25T02:20:12.2725938Z dist/assets/poimandres-DB9-pI6r.js 2.27 kB │ gzip: 0.81 kB │ map: 7.17 kB 2026-10-25T02:20:12.2726284Z dist/assets/stream-tokenizer-DfuQun4b.js 2.29 kB │ gzip: 1.04 kB │ map: 8.46 kB 2026-10-25T02:20:12.2726930Z dist/assets/nord-D4wy7NEP.js 2.31 kB │ gzip: 0.83 kB │ map: 7.45 kB 2026-10-25T02:20:12.2727506Z dist/assets/one-dark-pro-28TLzoS8.js 2.32 kB │ gzip: 0.88 kB │ map: 7.30 kB 2026-10-25T02:20:12.2727849Z dist/assets/fileLinks-BcI-9KS-.js 2.33 kB │ gzip: 1.11 kB │ map: 10.89 kB 2026-10-25T02:20:12.2728242Z dist/assets/edge-Y3042ItE.js 2.34 kB │ gzip: 0.71 kB │ map: 3.63 kB 2026-10-25T02:20:12.2728568Z dist/assets/rose-pine-C3zjVKxG.js 2.35 kB │ gzip: 0.81 kB │ map: 7.54 kB 2026-10-25T02:20:12.2728913Z dist/assets/rose-pine-moon-CSM8ewhO.js 2.36 kB │ gzip: 0.81 kB │ map: 7.56 kB 2026-10-25T02:20:12.2729257Z dist/assets/rose-pine-dawn-C72QYfqa.js 2.36 kB │ gzip: 0.81 kB │ map: 7.56 kB 2026-10-25T02:20:12.2729612Z dist/assets/reg-CRGYupPL.js 2.37 kB │ gzip: 0.72 kB │ map: 3.51 kB 2026-10-25T02:20:12.2729955Z dist/assets/usePermissionStatus-DgMOjlLA.js 2.45 kB │ gzip: 1.27 kB │ map: 10.74 kB 2026-10-25T02:20:12.2730317Z dist/assets/selectionActions-CG8IoIVz.js 2.52 kB │ gzip: 1.07 kB │ map: 11.13 kB 2026-10-25T02:20:12.2730657Z dist/assets/plastic-B2V_PDVk.js 2.55 kB │ gzip: 0.86 kB │ map: 7.84 kB 2026-10-25T02:20:12.2730984Z dist/assets/ayu-dark-DzFZPuMV.js 2.56 kB │ gzip: 0.89 kB │ map: 7.85 kB 2026-10-25T02:20:12.2731310Z dist/assets/ayu-light-DSkcX_XD.js 2.56 kB │ gzip: 0.89 kB │ map: 7.86 kB 2026-10-25T02:20:12.2731643Z dist/assets/ayu-mirage-DSve0zuE.js 2.56 kB │ gzip: 0.89 kB │ map: 7.86 kB 2026-10-25T02:20:12.2731977Z dist/assets/FTXIJQGB-CggtIYAM.js 2.58 kB │ gzip: 1.15 kB │ map: 4.98 kB 2026-10-25T02:20:12.2732304Z dist/assets/diff-woXpYk--.js 2.60 kB │ gzip: 0.72 kB │ map: 3.86 kB 2026-10-25T02:20:12.2732621Z dist/assets/gleam-CSRkHgEL.js 2.61 kB │ gzip: 0.85 kB │ map: 3.99 kB 2026-10-25T02:20:12.2732977Z dist/assets/sourceControlPresentation-D2iUjpQG.js 2.64 kB │ gzip: 1.37 kB │ map: 13.27 kB 2026-10-25T02:20:12.2733346Z dist/assets/gruvbox-dark-hard-BdGOuxq8.js 2.67 kB │ gzip: 0.93 kB │ map: 8.16 kB 2026-10-25T02:20:12.2733703Z dist/assets/gruvbox-dark-soft-BJH4XuY9.js 2.67 kB │ gzip: 0.93 kB │ map: 8.16 kB 2026-10-25T02:20:12.2734037Z dist/assets/connect-DWm_Xnat.js 2.67 kB │ gzip: 1.43 kB │ map: 10.10 kB 2026-10-25T02:20:12.2734384Z dist/assets/gruvbox-light-hard-BkSILF4E.js 2.67 kB │ gzip: 0.93 kB │ map: 8.16 kB 2026-10-25T02:20:12.2734742Z dist/assets/gruvbox-light-soft-CRCTnbIj.js 2.67 kB │ gzip: 0.93 kB │ map: 8.16 kB 2026-10-25T02:20:12.2735102Z dist/assets/gruvbox-dark-medium-CmygtSMi.js 2.67 kB │ gzip: 0.92 kB │ map: 8.16 kB 2026-10-25T02:20:12.2735437Z dist/assets/hy-CZbG8q4J.js 2.68 kB │ gzip: 1.21 kB │ map: 3.69 kB 2026-10-25T02:20:12.2735777Z dist/assets/gruvbox-light-medium-DiZUfgdz.js 2.68 kB │ gzip: 0.93 kB │ map: 8.17 kB 2026-10-25T02:20:12.2736136Z dist/assets/kanagawa-wave-DsGe2Uqk.js 2.71 kB │ gzip: 0.92 kB │ map: 8.52 kB 2026-10-25T02:20:12.2736482Z dist/assets/kanagawa-lotus-NJjGXXql.js 2.71 kB │ gzip: 0.93 kB │ map: 8.53 kB 2026-10-25T02:20:12.2736829Z dist/assets/kanagawa-dragon-BHDhSKDf.js 2.72 kB │ gzip: 0.94 kB │ map: 8.53 kB 2026-10-25T02:20:12.2737391Z dist/assets/one-light-C0UY_Fh7.js 2.74 kB │ gzip: 0.91 kB │ map: 8.60 kB 2026-10-25T02:20:12.2737901Z dist/assets/sidebarProjectGrouping-DziZcgiI.js 2.75 kB │ gzip: 1.00 kB │ map: 11.52 kB 2026-10-25T02:20:12.2738323Z dist/assets/github-dark-C895GGrm.js 2.79 kB │ gzip: 0.97 kB │ map: 8.69 kB 2026-10-25T02:20:12.2738662Z dist/assets/github-light-B4HDwToD.js 2.79 kB │ gzip: 0.96 kB │ map: 8.69 kB 2026-10-25T02:20:12.2739012Z dist/assets/github-dark-dimmed-jPx1V1fR.js 2.81 kB │ gzip: 0.95 kB │ map: 8.52 kB 2026-10-25T02:20:12.2739380Z dist/assets/github-light-default-CfC59JYV.js 2.81 kB │ gzip: 0.94 kB │ map: 8.53 kB 2026-10-25T02:20:12.2739780Z dist/assets/github-dark-high-contrast-UN5YjL_Z.js 2.82 kB │ gzip: 0.96 kB │ map: 8.55 kB 2026-10-25T02:20:12.2740168Z dist/assets/github-light-high-contrast-C3edEHcK.js 2.82 kB │ gzip: 0.95 kB │ map: 8.56 kB 2026-10-25T02:20:12.2740528Z dist/assets/users-DR4a4Tqj.js 2.83 kB │ gzip: 1.15 kB │ map: 12.79 kB 2026-10-25T02:20:12.2740856Z dist/assets/openscad-BUDT5pXO.js 2.86 kB │ gzip: 1.04 kB │ map: 4.23 kB 2026-10-25T02:20:12.2741200Z dist/assets/aurora-x-BCChoRpm.js 2.86 kB │ gzip: 0.91 kB │ map: 9.07 kB 2026-10-25T02:20:12.2741541Z dist/assets/log-BNLmms1o.js 2.88 kB │ gzip: 0.93 kB │ map: 4.35 kB 2026-10-25T02:20:12.2741881Z dist/assets/standalone-page-CmUrtGk_.js 2.90 kB │ gzip: 1.25 kB │ map: 10.01 kB 2026-10-25T02:20:12.2742230Z dist/assets/dracula-BoZgXveB.js 2.90 kB │ gzip: 0.94 kB │ map: 8.69 kB 2026-10-25T02:20:12.2742573Z dist/assets/preview-DDlamC17.js 2.92 kB │ gzip: 1.38 kB │ map: 11.76 kB 2026-10-25T02:20:12.2742922Z dist/assets/json-B_qwZ7m_.js 2.93 kB │ gzip: 0.86 kB │ map: 4.35 kB 2026-10-25T02:20:12.2743266Z dist/assets/night-owl-light-C74n5ti-.js 2.95 kB │ gzip: 0.93 kB │ map: 9.00 kB 2026-10-25T02:20:12.2743617Z dist/assets/night-owl-eR4AsyAP.js 2.96 kB │ gzip: 0.99 kB │ map: 9.04 kB 2026-10-25T02:20:12.2743946Z dist/assets/cairo-DLTphjLi.js 2.97 kB │ gzip: 0.83 kB │ map: 4.57 kB 2026-10-25T02:20:12.2744278Z dist/assets/dark-plus-BVZ_4wTZ.js 2.99 kB │ gzip: 0.99 kB │ map: 9.03 kB 2026-10-25T02:20:12.2744606Z dist/assets/red-CqYzoXtd.js 3.01 kB │ gzip: 0.99 kB │ map: 9.07 kB 2026-10-25T02:20:12.2745130Z dist/assets/berry-DKpUyyne.js 3.04 kB │ gzip: 0.84 kB │ map: 4.85 kB 2026-10-25T02:20:12.2745625Z dist/assets/light-plus-FTnIShls.js 3.04 kB │ gzip: 0.98 kB │ map: 9.14 kB 2026-10-25T02:20:12.2746031Z dist/assets/jsonl-CmCQp5Yx.js 3.04 kB │ gzip: 0.82 kB │ map: 4.51 kB 2026-10-25T02:20:12.2746359Z dist/assets/monokai-CLmrJ-8t.js 3.11 kB │ gzip: 1.00 kB │ map: 9.29 kB 2026-10-25T02:20:12.2746689Z dist/assets/jsonc-CYpm1nAK.js 3.14 kB │ gzip: 0.82 kB │ map: 4.61 kB 2026-10-25T02:20:12.2747009Z dist/assets/logo-Cluzi2Zq.js 3.16 kB │ gzip: 1.50 kB │ map: 3.82 kB 2026-10-25T02:20:12.2747339Z dist/assets/device-2rj9m9d-.js 3.25 kB │ gzip: 1.43 kB │ map: 15.55 kB 2026-10-25T02:20:12.2747679Z dist/assets/solarized-dark-BKOT3ICq.js 3.26 kB │ gzip: 1.07 kB │ map: 9.66 kB 2026-10-25T02:20:12.2748046Z dist/assets/solarized-light--Lk5pOfE.js 3.26 kB │ gzip: 1.04 kB │ map: 9.66 kB 2026-10-25T02:20:12.2748398Z dist/assets/textDirection-CvCPlKFo.js 3.27 kB │ gzip: 1.49 kB │ map: 9.10 kB 2026-10-25T02:20:12.2748812Z dist/assets/po-BiJDBrnU.js 3.27 kB │ gzip: 0.94 kB │ map: 5.09 kB 2026-10-25T02:20:12.2749274Z dist/assets/json5-BR5RXkoi.js 3.29 kB │ gzip: 0.86 kB │ map: 4.96 kB 2026-10-25T02:20:12.2749931Z dist/assets/mipsasm-BMqwQI7S.js 3.29 kB │ gzip: 1.21 kB │ map: 4.68 kB 2026-10-25T02:20:12.2763061Z dist/assets/tasl-DMoTqEGO.js 3.32 kB │ gzip: 0.88 kB │ map: 5.13 kB 2026-10-25T02:20:12.2763458Z dist/assets/genie-CV2tkWYe.js 3.39 kB │ gzip: 1.24 kB │ map: 4.87 kB 2026-10-25T02:20:12.2763792Z dist/assets/rel-BtDbiS_P.js 3.40 kB │ gzip: 1.14 kB │ map: 4.88 kB 2026-10-25T02:20:12.2764134Z dist/assets/settings.beta-C4bzvwLQ.js 3.40 kB │ gzip: 1.44 kB │ map: 12.58 kB 2026-10-25T02:20:12.2764468Z dist/assets/vala-zf12oZj6.js 3.40 kB │ gzip: 1.22 kB │ map: 4.90 kB 2026-10-25T02:20:12.2764801Z dist/assets/andromeeda-BJLMrMlp.js 3.41 kB │ gzip: 1.09 kB │ map: 10.60 kB 2026-10-25T02:20:12.2765138Z dist/assets/6OLKWJ4F-D6y89VNt.js 3.47 kB │ gzip: 1.65 kB │ map: 8.16 kB 2026-10-25T02:20:12.2765469Z dist/assets/splunk-BC2Px7Mm.js 3.47 kB │ gzip: 1.55 kB │ map: 4.45 kB 2026-10-25T02:20:12.2765791Z dist/assets/hurl-DW9oantw.js 3.55 kB │ gzip: 1.13 kB │ map: 5.48 kB 2026-10-25T02:20:12.2766152Z dist/assets/FoldedSettingsSection-C0nTDvg9.js 3.55 kB │ gzip: 1.65 kB │ map: 18.85 kB 2026-10-25T02:20:12.2766512Z dist/assets/usageFormat-BChkhipv.js 3.63 kB │ gzip: 1.47 kB │ map: 14.72 kB 2026-10-25T02:20:12.2766849Z dist/assets/fluent-C03EYrpw.js 3.64 kB │ gzip: 0.93 kB │ map: 5.21 kB 2026-10-25T02:20:12.2767176Z dist/assets/jsonnet-CJTPZ8u_.js 3.65 kB │ gzip: 1.07 kB │ map: 5.43 kB 2026-10-25T02:20:12.2767513Z dist/assets/ssh-config-BgfXC-Er.js 3.65 kB │ gzip: 1.63 kB │ map: 4.50 kB 2026-10-25T02:20:12.2767839Z dist/assets/kdl-CsD5j6eV.js 3.66 kB │ gzip: 1.07 kB │ map: 5.51 kB 2026-10-25T02:20:12.2768162Z dist/assets/narrat-_X_XdTYD.js 3.70 kB │ gzip: 1.13 kB │ map: 5.43 kB 2026-10-25T02:20:12.2768979Z dist/assets/t3ProjectFile-l9S3Rmkg.js 3.73 kB │ gzip: 1.53 kB │ map: 21.81 kB 2026-10-25T02:20:12.2769549Z dist/assets/turtle-ByJddavk.js 3.73 kB │ gzip: 1.00 kB │ map: 5.50 kB 2026-10-25T02:20:12.2769957Z dist/assets/glsl-CVY0WJyt.js 3.74 kB │ gzip: 1.49 kB │ map: 4.44 kB 2026-10-25T02:20:12.2770293Z dist/assets/threadSort-bjHzZAxR.js 3.75 kB │ gzip: 1.60 kB │ map: 20.16 kB 2026-10-25T02:20:12.2770637Z dist/assets/ProjectMonogram-DkJCy5_V.js 3.84 kB │ gzip: 1.58 kB │ map: 12.57 kB 2026-10-25T02:20:12.2770992Z dist/assets/lazyRouteComponent-Rmuxx_9T.js 3.85 kB │ gzip: 1.40 kB │ map: 25.98 kB 2026-10-25T02:20:12.2771328Z dist/assets/ron-VUp2lXgN.js 3.94 kB │ gzip: 1.01 kB │ map: 6.03 kB 2026-10-25T02:20:12.2771653Z dist/assets/zenscript-BnlCZFoB.js 3.95 kB │ gzip: 1.31 kB │ map: 5.76 kB 2026-10-25T02:20:12.2771995Z dist/assets/workflow-CYtagDtn.js 3.99 kB │ gzip: 1.44 kB │ map: 18.04 kB 2026-10-25T02:20:12.2772336Z dist/assets/tokyo-night-DvpptEDd.js 4.00 kB │ gzip: 1.18 kB │ map: 12.35 kB 2026-10-25T02:20:12.2772682Z dist/assets/toggle-group-vz--OeNx.js 4.02 kB │ gzip: 1.72 kB │ map: 17.27 kB 2026-10-25T02:20:12.2773008Z dist/assets/gn-ilITqXS6.js 4.03 kB │ gzip: 1.52 kB │ map: 5.28 kB 2026-10-25T02:20:12.2773353Z dist/assets/SettingsPanels.logic-BOThvEUn.js 4.08 kB │ gzip: 1.34 kB │ map: 14.38 kB 2026-10-25T02:20:12.2773716Z dist/assets/SettingsScopeNotice-BsOoBRno.js 4.15 kB │ gzip: 1.91 kB │ map: 19.31 kB 2026-10-25T02:20:12.2774064Z dist/assets/alert-DQ7SKVBI.js 4.16 kB │ gzip: 1.64 kB │ map: 13.51 kB 2026-10-25T02:20:12.2774399Z dist/assets/pierre-dark-fPlffE7i.js 4.16 kB │ gzip: 1.21 kB │ map: 13.24 kB 2026-10-25T02:20:12.2774745Z dist/assets/pierre-light-BvcXQJIj.js 4.17 kB │ gzip: 1.21 kB │ map: 13.24 kB 2026-10-25T02:20:12.2775087Z dist/assets/CompositeRoot-BMsrIV2D.js 4.17 kB │ gzip: 1.94 kB │ map: 20.98 kB 2026-10-25T02:20:12.2775427Z dist/assets/CXAC5362-BRgo_Bfb.js 4.17 kB │ gzip: 1.97 kB │ map: 10.66 kB 2026-10-25T02:20:12.2775763Z dist/assets/pierre-dark-soft-Cng2SYKc.js 4.17 kB │ gzip: 1.23 kB │ map: 13.26 kB 2026-10-25T02:20:12.2776121Z dist/assets/pierre-light-soft-BvU23vks.js 4.18 kB │ gzip: 1.20 kB │ map: 13.26 kB 2026-10-25T02:20:12.2776459Z dist/assets/toggle-R3FGaYkA.js 4.18 kB │ gzip: 1.74 kB │ map: 11.55 kB 2026-10-25T02:20:12.2776795Z dist/assets/pascal-4ZHwLPI5.js 4.18 kB │ gzip: 1.71 kB │ map: 5.54 kB 2026-10-25T02:20:12.2777148Z dist/assets/pierre-dark-tritanopia-DneQ5i7L.js 4.19 kB │ gzip: 1.19 kB │ map: 13.28 kB 2026-10-25T02:20:12.2777532Z dist/assets/pierre-light-tritanopia-BSHccQzI.js 4.19 kB │ gzip: 1.18 kB │ map: 13.29 kB 2026-10-25T02:20:12.2777901Z dist/assets/vcsRefInvalidation-BmnyWL0d.js 4.19 kB │ gzip: 2.04 kB │ map: 30.70 kB 2026-10-25T02:20:12.2778276Z dist/assets/desktopUpdate.logic-CgrO56V-.js 4.20 kB │ gzip: 1.69 kB │ map: 14.98 kB 2026-10-25T02:20:12.2778620Z dist/assets/empty-wCMvBRcC.js 4.20 kB │ gzip: 1.46 kB │ map: 11.56 kB 2026-10-25T02:20:12.2778998Z dist/assets/pierre-dark-protanopia-deuteranopia-BmjibgrW.js 4.21 kB │ gzip: 1.22 kB │ map: 13.34 kB 2026-10-25T02:20:12.2779685Z dist/assets/pierre-light-protanopia-deuteranopia-Cd5nk0bp.js 4.22 kB │ gzip: 1.21 kB │ map: 13.34 kB 2026-10-25T02:20:12.2780239Z dist/assets/houston-DduE73P7.js 4.44 kB │ gzip: 1.20 kB │ map: 13.49 kB 2026-10-25T02:20:12.2780625Z dist/assets/http-DekGJpA5.js 4.45 kB │ gzip: 1.10 kB │ map: 6.78 kB 2026-10-25T02:20:12.2780946Z dist/assets/tcl-CZd0xW_V.js 4.46 kB │ gzip: 1.54 kB │ map: 6.48 kB 2026-10-25T02:20:12.2781279Z dist/assets/timestampFormat-BBUHLb6E.js 4.46 kB │ gzip: 1.58 kB │ map: 20.40 kB 2026-10-25T02:20:12.2781625Z dist/assets/nextflow-BJtWHP5T.js 4.55 kB │ gzip: 1.20 kB │ map: 6.87 kB 2026-10-25T02:20:12.2781951Z dist/assets/rosmsg-CAekHB0j.js 4.56 kB │ gzip: 1.09 kB │ map: 6.76 kB 2026-10-25T02:20:12.2782309Z dist/assets/projectFilesQueryState-D2AtsQo6.js 4.56 kB │ gzip: 2.22 kB │ map: 20.09 kB 2026-10-25T02:20:12.2782666Z dist/assets/useParams-7psWnduG.js 4.58 kB │ gzip: 2.02 kB │ map: 26.30 kB 2026-10-25T02:20:12.2783013Z dist/assets/vitesse-light-Cqenv4Qv.js 4.60 kB │ gzip: 1.22 kB │ map: 13.97 kB 2026-10-25T02:20:12.2783353Z dist/assets/vitesse-dark-BWf_ZQtP.js 4.65 kB │ gzip: 1.24 kB │ map: 14.02 kB 2026-10-25T02:20:12.2783700Z dist/assets/vitesse-black-Sqvrs2Sw.js 4.65 kB │ gzip: 1.24 kB │ map: 14.03 kB 2026-10-25T02:20:12.2784031Z dist/assets/assets-WdoC_MYZ.js 4.68 kB │ gzip: 2.11 kB │ map: 22.56 kB 2026-10-25T02:20:12.2784357Z dist/assets/polar-C7UOKdEL.js 4.70 kB │ gzip: 1.16 kB │ map: 7.26 kB 2026-10-25T02:20:12.2784677Z dist/assets/sdbl-bTVj8UrX.js 4.73 kB │ gzip: 2.04 kB │ map: 5.90 kB 2026-10-25T02:20:12.2785006Z dist/assets/fennel-DQxkIbk2.js 4.80 kB │ gzip: 1.57 kB │ map: 6.43 kB 2026-10-25T02:20:12.2785329Z dist/assets/bibtex-Ci_nEsc7.js 4.83 kB │ gzip: 0.86 kB │ map: 7.03 kB 2026-10-25T02:20:12.2785670Z dist/assets/settings.archived-BV2JDBAV.js 5.00 kB │ gzip: 2.16 kB │ map: 31.79 kB 2026-10-25T02:20:12.2786025Z dist/assets/catppuccin-mocha-DHkNF0Mp.js 5.05 kB │ gzip: 1.31 kB │ map: 15.14 kB 2026-10-25T02:20:12.2786382Z dist/assets/catppuccin-latte-b6208YQK.js 5.05 kB │ gzip: 1.31 kB │ map: 15.14 kB 2026-10-25T02:20:12.2786738Z dist/assets/catppuccin-frappe-DbLkF0J2.js 5.05 kB │ gzip: 1.33 kB │ map: 15.15 kB 2026-10-25T02:20:12.2787106Z dist/assets/catppuccin-macchiato-CNNBbV1L.js 5.06 kB │ gzip: 1.32 kB │ map: 15.16 kB 2026-10-25T02:20:12.2787451Z dist/assets/llvm-Cm23YOpf.js 5.08 kB │ gzip: 2.04 kB │ map: 6.68 kB 2026-10-25T02:20:12.2787785Z dist/assets/wifi-off-9c8w6gTe.js 5.09 kB │ gzip: 1.97 kB │ map: 22.02 kB 2026-10-25T02:20:12.2788118Z dist/assets/HDGCDEEZ-CQ7ep3lt.js 5.17 kB │ gzip: 2.48 kB │ map: 13.05 kB 2026-10-25T02:20:12.2788450Z dist/assets/wgsl-BsKzXJz4.js 5.17 kB │ gzip: 1.42 kB │ map: 7.51 kB 2026-10-25T02:20:12.2788783Z dist/assets/uiStateStore-1ScwLLjI.js 5.29 kB │ gzip: 1.74 kB │ map: 23.17 kB 2026-10-25T02:20:12.2789140Z dist/assets/keybindings-DDrRonU7.js 5.32 kB │ gzip: 2.12 kB │ map: 28.23 kB 2026-10-25T02:20:12.2789475Z dist/assets/gdresource-C0sCabJj.js 5.33 kB │ gzip: 1.36 kB │ map: 7.81 kB 2026-10-25T02:20:12.2789844Z dist/assets/5S6HY5KT-tb2ekpHZ.js 5.35 kB │ gzip: 2.67 kB │ map: 13.95 kB 2026-10-25T02:20:12.2790390Z dist/assets/zig-CMLA9XwU.js 5.37 kB │ gzip: 1.59 kB │ map: 7.87 kB 2026-10-25T02:20:12.2790862Z dist/assets/qml-Dd7VLkrA.js 5.37 kB │ gzip: 1.41 kB │ map: 8.17 kB 2026-10-25T02:20:12.2791242Z dist/assets/loader-BFhps5Ie.js 5.38 kB │ gzip: 1.45 kB │ map: 8.60 kB 2026-10-25T02:20:12.2791560Z dist/assets/dax-BkyTk9wS.js 5.39 kB │ gzip: 2.25 kB │ map: 6.77 kB 2026-10-25T02:20:12.2791880Z dist/assets/bicep-CUHmPFLl.js 5.41 kB │ gzip: 1.18 kB │ map: 7.92 kB 2026-10-25T02:20:12.2792195Z dist/assets/xml-Cz9mX3j0.js 5.49 kB │ gzip: 1.28 kB │ map: 7.90 kB 2026-10-25T02:20:12.2792504Z dist/assets/awk-BWXHIvNe.js 5.49 kB │ gzip: 1.41 kB │ map: 8.00 kB 2026-10-25T02:20:12.2792818Z dist/assets/coq-BrsZFFmf.js 5.58 kB │ gzip: 1.95 kB │ map: 7.52 kB 2026-10-25T02:20:12.2793138Z dist/assets/jinja-Bf4dQP5Q.js 5.67 kB │ gzip: 1.39 kB │ map: 8.57 kB 2026-10-25T02:20:12.2793484Z dist/assets/ReadOnlySourcePreview-Benp1epl.js 5.72 kB │ gzip: 2.33 kB │ map: 21.00 kB 2026-10-25T02:20:12.2793849Z dist/assets/mediaReference-CiWpCBhy.js 5.76 kB │ gzip: 2.53 kB │ map: 26.29 kB 2026-10-25T02:20:12.2794191Z dist/assets/UQJE5E4I-BZsrv4pt.js 5.77 kB │ gzip: 2.87 kB │ map: 16.01 kB 2026-10-25T02:20:12.2794521Z dist/assets/settings-BrKy1lmH.js 5.79 kB │ gzip: 2.49 kB │ map: 22.85 kB 2026-10-25T02:20:12.2794849Z dist/assets/primary-CBxMnpzd.js 5.79 kB │ gzip: 2.26 kB │ map: 25.62 kB 2026-10-25T02:20:12.2795187Z dist/assets/guideRunStore-BR7bXZS4.js 5.80 kB │ gzip: 2.57 kB │ map: 25.94 kB 2026-10-25T02:20:12.2795515Z dist/assets/lean-CewbzKMR.js 5.81 kB │ gzip: 1.95 kB │ map: 7.88 kB 2026-10-25T02:20:12.2795836Z dist/assets/moonbit-CaWjb8XO.js 5.93 kB │ gzip: 1.71 kB │ map: 8.68 kB 2026-10-25T02:20:12.2796166Z dist/assets/powerquery-DNMTfnFr.js 5.94 kB │ gzip: 1.54 kB │ map: 8.52 kB 2026-10-25T02:20:12.2796500Z dist/assets/shaderlab-TOUzSsQk.js 5.96 kB │ gzip: 2.11 kB │ map: 7.73 kB 2026-10-25T02:20:12.2796825Z dist/assets/verilog-CiiDBU1e.js 5.96 kB │ gzip: 1.93 kB │ map: 8.03 kB 2026-10-25T02:20:12.2797185Z dist/assets/scheduledTasksSettings.logic--g8cbhzV.js 5.98 kB │ gzip: 2.42 kB │ map: 23.17 kB 2026-10-25T02:20:12.2797539Z dist/assets/cypher-ClKdZ_lG.js 5.99 kB │ gzip: 1.75 kB │ map: 8.44 kB 2026-10-25T02:20:12.2797863Z dist/assets/vb-Djn5o6TS.js 6.12 kB │ gzip: 2.37 kB │ map: 8.05 kB 2026-10-25T02:20:12.2798235Z dist/assets/input-group-BqOklIvj.js 6.16 kB │ gzip: 1.94 kB │ map: 11.42 kB 2026-10-25T02:20:12.2798598Z dist/assets/KeybindingsSettings.logic-a8vjMEKo.js 6.28 kB │ gzip: 2.54 kB │ map: 26.80 kB 2026-10-25T02:20:12.2798943Z dist/assets/red-CJ3rzSJv.js 6.30 kB │ gzip: 1.63 kB │ map: 8.89 kB 2026-10-25T02:20:12.2799275Z dist/assets/color-picker-BzSZE0o_.js 6.31 kB │ gzip: 2.95 kB │ map: 27.68 kB 2026-10-25T02:20:12.2799641Z dist/assets/min-dark-BSWPekZh.js 6.33 kB │ gzip: 1.74 kB │ map: 8.63 kB 2026-10-25T02:20:12.2799971Z dist/assets/gdshader-CBce3t8t.js 6.36 kB │ gzip: 1.75 kB │ map: 9.20 kB 2026-10-25T02:20:12.2800536Z dist/assets/prisma-BsRQq5mF.js 6.36 kB │ gzip: 1.42 kB │ map: 9.28 kB 2026-10-25T02:20:12.2801022Z dist/assets/ara-4CJ0cIlV.js 6.39 kB │ gzip: 1.84 kB │ map: 9.26 kB 2026-10-25T02:20:12.2801433Z dist/assets/ConnectionDiagnosisDetails-CbupbjQM.js 6.41 kB │ gzip: 2.82 kB │ map: 28.56 kB 2026-10-25T02:20:12.2801800Z dist/assets/DYY6UVD2-CL5NuheL.js 6.44 kB │ gzip: 3.04 kB │ map: 16.52 kB 2026-10-25T02:20:12.2802135Z dist/assets/clojure-DqKBuwfJ.js 6.45 kB │ gzip: 1.45 kB │ map: 9.29 kB 2026-10-25T02:20:12.2802476Z dist/assets/postcss-BXeXVLqQ.js 6.45 kB │ gzip: 1.94 kB │ map: 9.12 kB 2026-10-25T02:20:12.2802809Z dist/assets/toml-CcmNWLt0.js 6.46 kB │ gzip: 1.31 kB │ map: 9.48 kB 2026-10-25T02:20:12.2803155Z dist/assets/solarized-light-DSh2HLQt.js 6.53 kB │ gzip: 1.75 kB │ map: 9.25 kB 2026-10-25T02:20:12.2803498Z dist/assets/proto-DB4EqR-F.js 6.58 kB │ gzip: 1.45 kB │ map: 9.91 kB 2026-10-25T02:20:12.2803830Z dist/assets/smalltalk-B16xEiuN.js 6.62 kB │ gzip: 1.65 kB │ map: 9.26 kB 2026-10-25T02:20:12.2804173Z dist/assets/engine-oniguruma-BO8SA_1o.js 6.64 kB │ gzip: 2.57 kB │ map: 27.06 kB 2026-10-25T02:20:12.2804503Z dist/assets/r-CKPAq6FD.js 6.64 kB │ gzip: 1.86 kB │ map: 10.16 kB 2026-10-25T02:20:12.2804827Z dist/assets/talonscript-CohzipZa.js 6.79 kB │ gzip: 1.52 kB │ map: 10.08 kB 2026-10-25T02:20:12.2805184Z dist/assets/solarized-dark-DV17i1UV.js 6.89 kB │ gzip: 1.81 kB │ map: 9.71 kB 2026-10-25T02:20:12.2805524Z dist/assets/riscv-Ckw8ddFX.js 6.95 kB │ gzip: 2.01 kB │ map: 9.60 kB 2026-10-25T02:20:12.2805848Z dist/assets/soy-DJQHiWIu.js 6.96 kB │ gzip: 1.66 kB │ map: 10.74 kB 2026-10-25T02:20:12.2806175Z dist/assets/min-light-DDpmG2fV.js 7.01 kB │ gzip: 1.92 kB │ map: 9.56 kB 2026-10-25T02:20:12.2806506Z dist/assets/4UO7MD6I-Dn_bBJkT.js 7.08 kB │ gzip: 3.24 kB │ map: 18.76 kB 2026-10-25T02:20:12.2806828Z dist/assets/scheme-DQCgrYNe.js 7.20 kB │ gzip: 2.08 kB │ map: 9.80 kB 2026-10-25T02:20:12.2807159Z dist/assets/O7XIQ6OM-D2gkI3d0.js 7.27 kB │ gzip: 3.30 kB │ map: 19.44 kB 2026-10-25T02:20:12.2807481Z dist/assets/hlsl-Cvrh5tZx.js 7.29 kB │ gzip: 2.21 kB │ map: 9.25 kB 2026-10-25T02:20:12.2807812Z dist/assets/YVG2LODB-zWbtejrX.js 7.34 kB │ gzip: 3.35 kB │ map: 18.98 kB 2026-10-25T02:20:12.2808134Z dist/assets/qss-Fe1Jh2GI.js 7.50 kB │ gzip: 2.60 kB │ map: 9.41 kB 2026-10-25T02:20:12.2808466Z dist/assets/collapsible-CK6xmE8m.js 7.56 kB │ gzip: 3.06 kB │ map: 47.01 kB 2026-10-25T02:20:12.2808801Z dist/assets/CEQABKGZ-Dgw1sIco.js 7.59 kB │ gzip: 3.52 kB │ map: 19.22 kB 2026-10-25T02:20:12.2809154Z dist/assets/primaryCloudLinkState-q-ZXLF-Z.js 7.66 kB │ gzip: 3.05 kB │ map: 32.29 kB 2026-10-25T02:20:12.2809530Z dist/assets/htmlRender-t4lH5woq.js 7.71 kB │ gzip: 3.15 kB │ map: 29.12 kB 2026-10-25T02:20:12.2810310Z dist/assets/checkbox-R2QllUw3.js 7.77 kB │ gzip: 3.40 kB │ map: 42.59 kB 2026-10-25T02:20:12.2810673Z dist/assets/DiffFileTree-B2rJWCgf.js 7.79 kB │ gzip: 3.62 kB │ map: 42.23 kB 2026-10-25T02:20:12.2811621Z dist/assets/radio-group-BRy9zEhu.js 7.86 kB │ gzip: 3.35 kB │ map: 38.32 kB 2026-10-25T02:20:12.2812542Z dist/assets/systemd-BxMlprV5.js 7.90 kB │ gzip: 2.57 kB │ map: 10.64 kB 2026-10-25T02:20:12.2813072Z dist/assets/react-BP46yLMB.js 7.91 kB │ gzip: 3.04 kB │ map: 30.78 kB 2026-10-25T02:20:12.2813593Z dist/assets/monokai-CdkpiU2Y.js 7.92 kB │ gzip: 1.94 kB │ map: 11.12 kB 2026-10-25T02:20:12.2814172Z dist/assets/_chat.index-CpKKwKzx.js 7.93 kB │ gzip: 3.10 kB │ map: 31.50 kB 2026-10-25T02:20:12.2814744Z dist/assets/regexp-DYMieNym.js 8.09 kB │ gzip: 1.50 kB │ map: 11.23 kB 2026-10-25T02:20:12.2815269Z dist/assets/index-MFUDV1M-.js 8.10 kB │ gzip: 3.91 kB │ map: 1.87 kB 2026-10-25T02:20:12.2815813Z dist/assets/LUXOKEGN-BDXhz0WS.js 8.24 kB │ gzip: 3.73 kB │ map: 21.07 kB 2026-10-25T02:20:12.2816367Z dist/assets/haml-lTm20nsj.js 8.38 kB │ gzip: 1.89 kB │ map: 12.45 kB 2026-10-25T02:20:12.2816910Z dist/assets/typst-DI99ib-x.js 8.42 kB │ gzip: 1.70 kB │ map: 12.31 kB 2026-10-25T02:20:12.2817485Z dist/assets/vue-html-DYZahZaV.js 8.52 kB │ gzip: 1.71 kB │ map: 12.03 kB 2026-10-25T02:20:12.2818070Z dist/assets/plsql-DGHpHOYJ.js 8.54 kB │ gzip: 3.03 kB │ map: 10.90 kB 2026-10-25T02:20:12.2818636Z dist/assets/dart-CnvKMtbv.js 8.65 kB │ gzip: 2.03 kB │ map: 12.66 kB 2026-10-25T02:20:12.2819237Z dist/assets/pierre-dark-vibrant-BUK9Y-N_.js 8.68 kB │ gzip: 1.54 kB │ map: 17.89 kB 2026-10-25T02:20:12.2819957Z dist/assets/pierre-light-vibrant-BgMZEwQI.js 8.68 kB │ gzip: 1.53 kB │ map: 17.89 kB 2026-10-25T02:20:12.2820602Z dist/assets/appendItems-BPnWZjES.js 8.69 kB │ gzip: 3.55 kB │ map: 38.92 kB 2026-10-25T02:20:12.2821207Z dist/assets/horizon-CE9ld1lL.js 8.82 kB │ gzip: 1.98 kB │ map: 12.09 kB 2026-10-25T02:20:12.2821792Z dist/assets/kotlin-DhhofPvG.js 8.82 kB │ gzip: 2.16 kB │ map: 12.79 kB 2026-10-25T02:20:12.2822359Z dist/assets/horizon-bright-DSNQnXHK.js 8.83 kB │ gzip: 1.99 kB │ map: 12.14 kB 2026-10-25T02:20:12.2822978Z dist/assets/ProjectIconPickerDialog-D7Erfojp.js 8.96 kB │ gzip: 3.75 kB │ map: 52.01 kB 2026-10-25T02:20:12.2823558Z dist/assets/make-Dixweg8N.js 8.99 kB │ gzip: 1.79 kB │ map: 12.87 kB 2026-10-25T02:20:12.2824106Z dist/assets/andromeeda-vGVdxbeo.js 9.06 kB │ gzip: 2.39 kB │ map: 11.97 kB 2026-10-25T02:20:12.2824645Z dist/assets/sas-BS1CVlM2.js 9.10 kB │ gzip: 3.85 kB │ map: 11.14 kB 2026-10-25T02:20:12.2825176Z dist/assets/dark-plus-Cs2F2srj.js 9.14 kB │ gzip: 2.13 kB │ map: 12.44 kB 2026-10-25T02:20:12.2825732Z dist/assets/slack-dark-DnToyrRv.js 9.16 kB │ gzip: 1.99 kB │ map: 12.54 kB 2026-10-25T02:20:12.2826314Z dist/assets/terminalSessions-C1BRToTj.js 9.17 kB │ gzip: 3.19 kB │ map: 42.81 kB 2026-10-25T02:20:12.2826903Z dist/assets/connect-agent-CSpIDwVF.js 9.20 kB │ gzip: 4.00 kB │ map: 39.82 kB 2026-10-25T02:20:12.2827458Z dist/assets/2NI2N5EU-DRK9ORmP.js 9.32 kB │ gzip: 4.19 kB │ map: 24.57 kB 2026-10-25T02:20:12.2827993Z dist/assets/sass-DXrisJhu.js 9.32 kB │ gzip: 2.52 kB │ map: 13.42 kB 2026-10-25T02:20:12.2828912Z dist/assets/plastic-DQwYfKfQ.js 9.33 kB │ gzip: 2.00 kB │ map: 12.50 kB 2026-10-25T02:20:12.2829836Z dist/assets/use-orchestration-command-q1gwxhQa.js 9.43 kB │ gzip: 3.01 kB │ map: 37.76 kB 2026-10-25T02:20:12.2830434Z dist/assets/XBNEOJTC-DF9emv2R.js 9.44 kB │ gzip: 4.24 kB │ map: 25.57 kB 2026-10-25T02:20:12.2830983Z dist/assets/slack-ochin-B2OO5cIa.js 9.47 kB │ gzip: 2.12 kB │ map: 13.13 kB 2026-10-25T02:20:12.2831525Z dist/assets/themes-D477uM9j.js 9.69 kB │ gzip: 2.93 kB │ map: 22.72 kB 2026-10-25T02:20:12.2832048Z dist/assets/tex-BtVHvWNR.js 9.71 kB │ gzip: 3.10 kB │ map: 12.45 kB 2026-10-25T02:20:12.2832813Z dist/assets/jison-C5fjf-e-.js 9.73 kB │ gzip: 1.90 kB │ map: 14.14 kB 2026-10-25T02:20:12.2833354Z dist/assets/cmake-Bj61d0ZC.js 9.89 kB │ gzip: 3.41 kB │ map: 11.27 kB 2026-10-25T02:20:12.2833893Z dist/assets/light-plus-DVQuIRkW.js 9.98 kB │ gzip: 2.31 kB │ map: 13.44 kB 2026-10-25T02:20:12.2834489Z dist/assets/settings.open-source-licenses-DlR3TcPR.js 10.04 kB │ gzip: 4.11 kB │ map: 46.85 kB 2026-10-25T02:20:12.2835067Z dist/assets/hcl-Dh228itO.js 10.08 kB │ gzip: 1.96 kB │ map: 14.80 kB 2026-10-25T02:20:12.2835586Z dist/assets/rst-BlU5ywpX.js 10.35 kB │ gzip: 2.28 kB │ map: 15.73 kB 2026-10-25T02:20:12.2836122Z dist/assets/synthwave-84-BJJFg-sc.js 10.36 kB │ gzip: 2.11 kB │ map: 28.15 kB 2026-10-25T02:20:12.2836656Z dist/assets/pkl-ot-7Btpt.js 10.40 kB │ gzip: 1.41 kB │ map: 15.48 kB 2026-10-25T02:20:12.2837196Z dist/assets/beancount-D-usSTwE.js 10.41 kB │ gzip: 1.46 kB │ map: 15.05 kB 2026-10-25T02:20:12.2837766Z dist/assets/nextflow-groovy-DJMQeKeT.js 10.48 kB │ gzip: 2.17 kB │ map: 15.26 kB 2026-10-25T02:20:12.2838423Z dist/assets/YURCZMG2-B4FVWSTq.js 10.49 kB │ gzip: 4.56 kB │ map: 25.28 kB 2026-10-25T02:20:12.2838961Z dist/assets/raku-B3gFvitq.js 10.50 kB │ gzip: 2.97 kB │ map: 12.92 kB 2026-10-25T02:20:12.2839546Z dist/assets/dream-maker-DW3nJb8Q.js 10.51 kB │ gzip: 2.29 kB │ map: 15.13 kB 2026-10-25T02:20:12.2840092Z dist/assets/_chat.new-BEtmgKTc.js 10.56 kB │ gzip: 4.54 kB │ map: 44.86 kB 2026-10-25T02:20:12.2840689Z dist/assets/browserHistoryStore-B8wZEjU6.js 10.58 kB │ gzip: 4.19 kB │ map: 55.29 kB 2026-10-25T02:20:12.2841290Z dist/assets/yaml-BtwsWWqX.js 10.61 kB │ gzip: 2.35 kB │ map: 14.93 kB 2026-10-25T02:20:12.2841835Z dist/assets/just-QtfrMdgj.js 10.85 kB │ gzip: 2.64 kB │ map: 15.45 kB 2026-10-25T02:20:12.2842369Z dist/assets/elm-rUi9A3mh.js 10.98 kB │ gzip: 2.13 kB │ map: 16.07 kB 2026-10-25T02:20:12.2842905Z dist/assets/phoneViewer-D-5FeFeE.js 11.04 kB │ gzip: 4.64 kB │ map: 49.75 kB 2026-10-25T02:20:12.2843449Z dist/assets/K7RP3OMA-q88a4cp3.js 11.18 kB │ gzip: 5.02 kB │ map: 29.89 kB 2026-10-25T02:20:12.2843973Z dist/assets/shiki-CHMbvHSD.js 11.22 kB │ gzip: 4.36 kB │ map: 47.67 kB 2026-10-25T02:20:12.2844504Z dist/assets/github-light-EUqPIrTm.js 11.23 kB │ gzip: 2.53 kB │ map: 15.44 kB 2026-10-25T02:20:12.2845042Z dist/assets/prolog-iXnhIJG7.js 11.39 kB │ gzip: 3.88 kB │ map: 13.31 kB 2026-10-25T02:20:12.2846072Z dist/assets/terraform-DswuEJGm.js 11.42 kB │ gzip: 2.54 kB │ map: 16.23 kB 2026-10-25T02:20:12.2846932Z dist/assets/github-dark-C-LZuMrd.js 11.45 kB │ gzip: 2.56 kB │ map: 15.70 kB 2026-10-25T02:20:12.2847467Z dist/assets/puppet-CDv2pdJW.js 11.47 kB │ gzip: 2.14 kB │ map: 16.33 kB 2026-10-25T02:20:12.2847996Z dist/assets/77XECAW3-Dak4s6WU.js 11.54 kB │ gzip: 5.35 kB │ map: 27.96 kB 2026-10-25T02:20:12.2848522Z dist/assets/laserwave-C_8bwKvT.js 11.54 kB │ gzip: 2.61 kB │ map: 14.72 kB 2026-10-25T02:20:12.2849055Z dist/assets/gherkin-DExj1W_8.js 11.98 kB │ gzip: 5.08 kB │ map: 13.13 kB 2026-10-25T02:20:12.2849632Z dist/assets/ProjectFavicon-DIW6ML2G.js 12.00 kB │ gzip: 5.28 kB │ map: 15.72 kB 2026-10-25T02:20:12.2850181Z dist/assets/wasm-ByWQv1Qj.js 12.04 kB │ gzip: 2.21 kB │ map: 16.85 kB 2026-10-25T02:20:12.2850698Z dist/assets/hjson-CxZEssPk.js 12.08 kB │ gzip: 1.67 kB │ map: 17.29 kB 2026-10-25T02:20:12.2851240Z dist/assets/YHV2MVVZ-BYU4Du48.js 12.09 kB │ gzip: 5.11 kB │ map: 36.55 kB 2026-10-25T02:20:12.2851772Z dist/assets/ABYRPUBD-MpiPAC7i.js 12.11 kB │ gzip: 3.24 kB │ map: 36.28 kB 2026-10-25T02:20:12.2852316Z dist/assets/handlebars-b_jooi20.js 12.21 kB │ gzip: 2.41 kB │ map: 17.46 kB 2026-10-25T02:20:12.2852889Z dist/assets/ProjectDefaultsSettings-CyKJYQC6.js 12.45 kB │ gzip: 4.48 kB │ map: 68.04 kB 2026-10-25T02:20:12.2853463Z dist/assets/apache-U0d_L8uA.js 12.49 kB │ gzip: 3.74 kB │ map: 15.96 kB 2026-10-25T02:20:12.2854590Z dist/assets/vesper-DdrHHSXu.js 12.77 kB │ gzip: 2.03 kB │ map: 16.24 kB 2026-10-25T02:20:12.2854912Z dist/assets/bat-Bo4NYOV-.js 12.92 kB │ gzip: 3.26 kB │ map: 17.40 kB 2026-10-25T02:20:12.2855248Z dist/assets/ProviderSettingsForm-D5qj9KqS.js 12.96 kB │ gzip: 4.92 kB │ map: 60.05 kB 2026-10-25T02:20:12.2855588Z dist/assets/fish-BJitypiv.js 13.07 kB │ gzip: 1.76 kB │ map: 16.86 kB 2026-10-25T02:20:12.2855973Z dist/assets/qr-code-BWQ3g0-g.js 13.23 kB │ gzip: 5.04 kB │ map: 49.52 kB 2026-10-25T02:20:12.2856287Z dist/assets/v-DETTlOr0.js 13.24 kB │ gzip: 2.76 kB │ map: 19.27 kB 2026-10-25T02:20:12.2856605Z dist/assets/NUIALGQ3-BxYKJdsD.js 13.25 kB │ gzip: 5.62 kB │ map: 40.22 kB 2026-10-25T02:20:12.2856932Z dist/assets/OFQON5FD-BDniyrmS.js 13.49 kB │ gzip: 5.51 kB │ map: 34.02 kB 2026-10-25T02:20:12.2857271Z dist/assets/vitesse-light-VbXTXTou.js 13.66 kB │ gzip: 3.06 kB │ map: 18.57 kB 2026-10-25T02:20:12.2857612Z dist/assets/aurora-x-CDeNXAV0.js 13.70 kB │ gzip: 2.32 kB │ map: 17.59 kB 2026-10-25T02:20:12.2857943Z dist/assets/vitesse-black-fwtXNY1n.js 13.72 kB │ gzip: 3.09 kB │ map: 18.66 kB 2026-10-25T02:20:12.2858283Z dist/assets/vitesse-dark-BZCL-v6S.js 13.80 kB │ gzip: 3.10 kB │ map: 18.73 kB 2026-10-25T02:20:12.2858621Z dist/assets/DeviceSetup-B9HU9rRu.js 13.86 kB │ gzip: 5.14 kB │ map: 59.86 kB 2026-10-25T02:20:12.2858950Z dist/assets/pug-BnzN1bHX.js 13.89 kB │ gzip: 2.62 kB │ map: 20.57 kB 2026-10-25T02:20:12.2859274Z dist/assets/synthwave-84-nFMaYfgc.js 14.08 kB │ gzip: 2.88 kB │ map: 19.12 kB 2026-10-25T02:20:12.2859944Z dist/assets/PJQHF43J-WqzNchxI.js 14.12 kB │ gzip: 5.87 kB │ map: 39.03 kB 2026-10-25T02:20:12.2860491Z dist/assets/github-light-default-BXViO-2h.js 14.21 kB │ gzip: 3.05 kB │ map: 19.30 kB 2026-10-25T02:20:12.2861131Z dist/assets/clarity-SemFz856.js 14.31 kB │ gzip: 2.50 kB │ map: 19.95 kB 2026-10-25T02:20:12.2861641Z dist/assets/github-light-high-contrast-B68TUdTA.js 14.33 kB │ gzip: 3.03 kB │ map: 19.48 kB 2026-10-25T02:20:12.2862015Z dist/assets/github-dark-dimmed-Bx1FflLF.js 14.48 kB │ gzip: 3.15 kB │ map: 19.67 kB 2026-10-25T02:20:12.2862375Z dist/assets/github-dark-default-DXG-b-1a.js 14.48 kB │ gzip: 3.15 kB │ map: 19.68 kB 2026-10-25T02:20:12.2862718Z dist/assets/X62E3GBT-DJQ__I5j.js 14.54 kB │ gzip: 6.34 kB │ map: 39.30 kB 2026-10-25T02:20:12.2863068Z dist/assets/github-dark-high-contrast-B_tTalzw.js 14.65 kB │ gzip: 3.11 kB │ map: 19.91 kB 2026-10-25T02:20:12.2863422Z dist/assets/gnuplot-7GGW24-e.js 14.82 kB │ gzip: 3.31 kB │ map: 20.83 kB 2026-10-25T02:20:12.2863740Z dist/assets/rust-Cfkwpbl8.js 15.10 kB │ gzip: 2.75 kB │ map: 21.47 kB 2026-10-25T02:20:12.2864063Z dist/assets/FNOVOB4O-C4eX2L6l.js 15.14 kB │ gzip: 5.88 kB │ map: 38.44 kB 2026-10-25T02:20:12.2864384Z dist/assets/kusto-C7mF5XQf.js 15.20 kB │ gzip: 3.96 kB │ map: 19.63 kB 2026-10-25T02:20:12.2864721Z dist/assets/actionscript-3--17pq3dv.js 15.25 kB │ gzip: 2.71 kB │ map: 21.47 kB 2026-10-25T02:20:12.2865062Z dist/assets/duoViewer-BmobyIWR.js 15.46 kB │ gzip: 6.05 kB │ map: 65.30 kB 2026-10-25T02:20:12.2865391Z dist/assets/nix-IvuFDN5E.js 15.54 kB │ gzip: 2.51 kB │ map: 22.93 kB 2026-10-25T02:20:12.2865849Z dist/assets/lua-BDnDZ8k4.js 15.64 kB │ gzip: 3.23 kB │ map: 22.17 kB 2026-10-25T02:20:12.2866374Z dist/assets/luau-FMPmPwt6.js 15.66 kB │ gzip: 3.42 kB │ map: 21.88 kB 2026-10-25T02:20:12.2866724Z dist/assets/usePullRequestActions-CUn8dk1N.js 15.67 kB │ gzip: 5.30 kB │ map: 65.22 kB 2026-10-25T02:20:12.2867070Z dist/assets/abap-CLvhMVsD.js 15.88 kB │ gzip: 5.96 kB │ map: 18.85 kB 2026-10-25T02:20:12.2867394Z dist/assets/solidity-CKzVLygQ.js 16.11 kB │ gzip: 3.13 kB │ map: 23.46 kB 2026-10-25T02:20:12.2867724Z dist/assets/matlab-D7qyCx1q.js 16.12 kB │ gzip: 3.10 kB │ map: 23.37 kB 2026-10-25T02:20:12.2868039Z dist/assets/cue-CE9AQfxI.js 16.23 kB │ gzip: 2.08 kB │ map: 23.80 kB 2026-10-25T02:20:12.2868358Z dist/assets/elixir-BwoyTLIZ.js 16.30 kB │ gzip: 2.80 kB │ map: 23.18 kB 2026-10-25T02:20:12.2868696Z dist/assets/rightPanelStore-BdMqOl9O.js 16.38 kB │ gzip: 4.66 kB │ map: 77.85 kB 2026-10-25T02:20:12.2869033Z dist/assets/dialog-DpsmyKum.js 16.41 kB │ gzip: 5.62 kB │ map: 77.01 kB 2026-10-25T02:20:12.2869353Z dist/assets/odin-B1RWQWA5.js 16.54 kB │ gzip: 2.96 kB │ map: 23.80 kB 2026-10-25T02:20:12.2869712Z dist/assets/X5RFHQXM-C-Zp8Qdy.js 16.59 kB │ gzip: 7.04 kB │ map: 42.63 kB 2026-10-25T02:20:12.2870039Z dist/assets/ts-tags-BBifqPDW.js 16.59 kB │ gzip: 2.09 kB │ map: 24.94 kB 2026-10-25T02:20:12.2870371Z dist/assets/scroll-area-gT1X0OYz.js 16.82 kB │ gzip: 6.01 kB │ map: 85.84 kB 2026-10-25T02:20:12.2871098Z dist/assets/kanagawa-wave-CTweb8Dz.js 17.17 kB │ gzip: 2.94 kB │ map: 22.30 kB 2026-10-25T02:20:12.2871974Z dist/assets/kanagawa-lotus-BN08jTvb.js 17.17 kB │ gzip: 2.94 kB │ map: 22.30 kB 2026-10-25T02:20:12.2872445Z dist/assets/kanagawa-dragon-CXtmUGW6.js 17.17 kB │ gzip: 2.96 kB │ map: 22.31 kB 2026-10-25T02:20:12.2872789Z dist/assets/popover-Dul46R04.js 17.18 kB │ gzip: 6.47 kB │ map: 89.58 kB 2026-10-25T02:20:12.2873130Z dist/assets/projectScriptEditor-BZvvdK_K.js 17.43 kB │ gzip: 6.69 kB │ map: 99.94 kB 2026-10-25T02:20:12.2873473Z dist/assets/move-B1IS1UjX.js 17.54 kB │ gzip: 3.10 kB │ map: 26.27 kB 2026-10-25T02:20:12.2873791Z dist/assets/command-Q3_sA01H.js 17.84 kB │ gzip: 4.82 kB │ map: 70.49 kB 2026-10-25T02:20:12.2874129Z dist/assets/pullRequests-DU-TgBtQ.js 17.98 kB │ gzip: 6.24 kB │ map: 86.01 kB 2026-10-25T02:20:12.2874457Z dist/assets/link-Cx0GWDFR.js 17.99 kB │ gzip: 6.76 kB │ map: 91.88 kB 2026-10-25T02:20:12.2874781Z dist/assets/graphql-CGfn61tl.js 18.13 kB │ gzip: 2.57 kB │ map: 25.58 kB 2026-10-25T02:20:12.2875102Z dist/assets/liquid-C9nV_0iS.js 18.14 kB │ gzip: 3.18 kB │ map: 25.31 kB 2026-10-25T02:20:12.2875422Z dist/assets/svelte-BJW-uQDc.js 18.29 kB │ gzip: 3.17 kB │ map: 25.82 kB 2026-10-25T02:20:12.2875768Z dist/assets/T3ConnectAccountPages-Wxm94bHu.js 18.30 kB │ gzip: 6.39 kB │ map: 80.94 kB 2026-10-25T02:20:12.2876126Z dist/assets/material-theme-Bm3Qr25_.js 18.66 kB │ gzip: 3.14 kB │ map: 24.14 kB 2026-10-25T02:20:12.2876492Z dist/assets/pullRequestDetail.logic-CGo2rYSj.js 18.67 kB │ gzip: 6.69 kB │ map: 75.43 kB 2026-10-25T02:20:12.2876866Z dist/assets/material-theme-ocean-CHQ94UKr.js 18.68 kB │ gzip: 3.16 kB │ map: 24.18 kB 2026-10-25T02:20:12.2877239Z dist/assets/material-theme-darker-2IIEA8gg.js 18.68 kB │ gzip: 3.13 kB │ map: 24.18 kB 2026-10-25T02:20:12.2877604Z dist/assets/material-theme-lighter-uhdI0v04.js 18.69 kB │ gzip: 3.14 kB │ map: 24.19 kB 2026-10-25T02:20:12.2878110Z dist/assets/material-theme-palenight-B5W6OYN7.js 18.69 kB │ gzip: 3.15 kB │ map: 24.20 kB 2026-10-25T02:20:12.2878461Z dist/assets/gdscript-Cp2uCuqX.js 19.03 kB │ gzip: 3.78 kB │ map: 26.26 kB 2026-10-25T02:20:12.2878792Z dist/assets/USNYFO5S-BtZQsI8k.js 19.10 kB │ gzip: 7.42 kB │ map: 47.26 kB 2026-10-25T02:20:12.2879113Z dist/assets/groovy-CacY0gHj.js 19.21 kB │ gzip: 3.63 kB │ map: 27.53 kB 2026-10-25T02:20:12.2879911Z dist/assets/settings.storage-CNPMD4IP.js 19.44 kB │ gzip: 6.99 kB │ map: 104.74 kB 2026-10-25T02:20:12.2880457Z dist/assets/mdc-DGFGijh8.js 19.58 kB │ gzip: 6.70 kB │ map: 23.16 kB 2026-10-25T02:20:12.2880847Z dist/assets/server-1QMbq_Yg.js 19.93 kB │ gzip: 6.14 kB │ map: 115.39 kB 2026-10-25T02:20:12.2881247Z dist/assets/ayu-dark-DluEY0Gj.js 20.12 kB │ gzip: 3.96 kB │ map: 27.06 kB 2026-10-25T02:20:12.2881779Z dist/assets/ayu-mirage-Bqwy1Gya.js 20.13 kB │ gzip: 3.95 kB │ map: 27.08 kB 2026-10-25T02:20:12.2882281Z dist/assets/glimmer-js-DplSBK3B.js 20.13 kB │ gzip: 2.98 kB │ map: 28.69 kB 2026-10-25T02:20:12.2882617Z dist/assets/glimmer-ts-8WDPTOMH.js 20.13 kB │ gzip: 2.97 kB │ map: 28.69 kB 2026-10-25T02:20:12.2882956Z dist/assets/powershell-DshXNtvi.js 20.19 kB │ gzip: 4.09 kB │ map: 26.60 kB 2026-10-25T02:20:12.2883299Z dist/assets/ayu-light-C3h-C4tm.js 20.19 kB │ gzip: 3.93 kB │ map: 27.14 kB 2026-10-25T02:20:12.2883621Z dist/assets/viml-DvXPmvsu.js 20.40 kB │ gzip: 6.77 kB │ map: 23.51 kB 2026-10-25T02:20:12.2883943Z dist/assets/DRLTVNUE-BimHR62W.js 20.40 kB │ gzip: 7.66 kB │ map: 50.95 kB 2026-10-25T02:20:12.2884265Z dist/assets/nushell-DcLAeLz5.js 20.45 kB │ gzip: 5.25 kB │ map: 27.67 kB 2026-10-25T02:20:12.2884593Z dist/assets/HSJLKHB7-DB1hCizo.js 20.80 kB │ gzip: 8.63 kB │ map: 57.03 kB 2026-10-25T02:20:12.2884922Z dist/assets/snazzy-light-4G7pJPwS.js 20.82 kB │ gzip: 3.84 kB │ map: 28.03 kB 2026-10-25T02:20:12.2885260Z dist/assets/entities-DKzCb4n3.js 20.90 kB │ gzip: 7.08 kB │ map: 136.60 kB 2026-10-25T02:20:12.2885582Z dist/assets/twig-BW8ZkR0X.js 20.94 kB │ gzip: 3.70 kB │ map: 29.33 kB 2026-10-25T02:20:12.2885906Z dist/assets/dracula-BHWKrbxM.js 21.10 kB │ gzip: 4.03 kB │ map: 27.51 kB 2026-10-25T02:20:12.2886237Z dist/assets/dracula-soft-5eyTD99u.js 21.12 kB │ gzip: 4.06 kB │ map: 27.54 kB 2026-10-25T02:20:12.2886575Z dist/assets/number-field-Cr5HVhPD.js 21.17 kB │ gzip: 8.06 kB │ map: 104.64 kB 2026-10-25T02:20:12.2886898Z dist/assets/wit-DdvCle-K.js 21.50 kB │ gzip: 2.91 kB │ map: 30.11 kB 2026-10-25T02:20:12.2887245Z dist/assets/rose-pine-BthvhNj6.js 21.78 kB │ gzip: 3.90 kB │ map: 28.78 kB 2026-10-25T02:20:12.2887583Z dist/assets/rose-pine-moon-hon4tzzS.js 21.80 kB │ gzip: 3.91 kB │ map: 28.81 kB 2026-10-25T02:20:12.2887936Z dist/assets/rose-pine-dawn-Dg85fqjY.js 21.80 kB │ gzip: 3.92 kB │ map: 28.81 kB 2026-10-25T02:20:12.2888353Z dist/assets/useStableCallback-Bj84Ftwi.js 22.30 kB │ gzip: 9.27 kB │ map: 690.39 kB 2026-10-25T02:20:12.2888839Z dist/assets/nim-HlOw23RC.js 22.49 kB │ gzip: 3.19 kB │ map: 32.88 kB 2026-10-25T02:20:12.2889162Z dist/assets/common-lisp-Cv5bFMCO.js 22.62 kB │ gzip: 6.11 kB │ map: 26.69 kB 2026-10-25T02:20:12.2889536Z dist/assets/surrealql-4o2MRSZF.js 22.63 kB │ gzip: 4.35 kB │ map: 32.51 kB 2026-10-25T02:20:12.2889894Z dist/assets/gruvbox-dark-hard-C820rvS2.js 22.68 kB │ gzip: 4.19 kB │ map: 30.59 kB 2026-10-25T02:20:12.2890249Z dist/assets/gruvbox-dark-soft-MrdJrrXF.js 22.68 kB │ gzip: 4.19 kB │ map: 30.59 kB 2026-10-25T02:20:12.2890914Z dist/assets/gruvbox-light-hard-BC_s9l72.js 22.68 kB │ gzip: 4.19 kB │ map: 30.59 kB 2026-10-25T02:20:12.2891433Z dist/assets/gruvbox-light-soft-BSMLrYjP.js 22.68 kB │ gzip: 4.19 kB │ map: 30.59 kB 2026-10-25T02:20:12.2891865Z dist/assets/gruvbox-dark-medium-BPjhmG05.js 22.69 kB │ gzip: 4.19 kB │ map: 30.60 kB 2026-10-25T02:20:12.2892230Z dist/assets/gruvbox-light-medium-BAWPOn9u.js 22.69 kB │ gzip: 4.20 kB │ map: 30.61 kB 2026-10-25T02:20:12.2892573Z dist/assets/bird2-C6vDhewU.js 22.97 kB │ gzip: 4.69 kB │ map: 31.06 kB 2026-10-25T02:20:12.2892898Z dist/assets/5OC2THR4-Bak2LyNi.js 23.28 kB │ gzip: 9.39 kB │ map: 61.59 kB 2026-10-25T02:20:12.2893211Z dist/assets/sql-D8wVSt_b.js 23.53 kB │ gzip: 7.55 kB │ map: 27.96 kB 2026-10-25T02:20:12.2893530Z dist/assets/cadence-CQ2zXKGN.js 23.70 kB │ gzip: 3.69 kB │ map: 33.59 kB 2026-10-25T02:20:12.2893850Z dist/assets/astro-PukTAyfI.js 24.06 kB │ gzip: 7.63 kB │ map: 29.26 kB 2026-10-25T02:20:12.2894169Z dist/assets/apl-BJNs3x7q.js 24.07 kB │ gzip: 4.20 kB │ map: 33.43 kB 2026-10-25T02:20:12.2894483Z dist/assets/templ-BU7lWAHX.js 24.10 kB │ gzip: 5.45 kB │ map: 30.96 kB 2026-10-25T02:20:12.2894813Z dist/assets/SLD4V6NK-B3lwlDRG.js 24.20 kB │ gzip: 10.11 kB │ map: 66.35 kB 2026-10-25T02:20:12.2895141Z dist/assets/angular-html-DfMowAlN.js 24.29 kB │ gzip: 4.03 kB │ map: 35.88 kB 2026-10-25T02:20:12.2895470Z dist/assets/vhdl-BroJfC0k.js 24.29 kB │ gzip: 3.90 kB │ map: 33.38 kB 2026-10-25T02:20:12.2895782Z dist/assets/vue-B2oXTvyI.js 24.53 kB │ gzip: 2.99 kB │ map: 36.98 kB 2026-10-25T02:20:12.2896109Z dist/assets/purescript-9MfHhQsQ.js 24.72 kB │ gzip: 3.27 kB │ map: 34.90 kB 2026-10-25T02:20:12.2896435Z dist/assets/typespec-BRdr0IET.js 25.08 kB │ gzip: 2.66 kB │ map: 34.70 kB 2026-10-25T02:20:12.2896765Z dist/assets/one-light-D7Lr4KcI.js 25.34 kB │ gzip: 3.67 kB │ map: 33.81 kB 2026-10-25T02:20:12.2897086Z dist/assets/fsharp-D13ZGOAj.js 25.34 kB │ gzip: 4.16 kB │ map: 35.90 kB 2026-10-25T02:20:12.2897404Z dist/assets/guest-DWb7M_9X.js 25.38 kB │ gzip: 10.17 kB │ map: 114.28 kB 2026-10-25T02:20:12.2897719Z dist/assets/marko-CqVo2f7G.js 25.52 kB │ gzip: 3.63 kB │ map: 35.92 kB 2026-10-25T02:20:12.2898058Z dist/assets/night-owl-light-eJ-hLW7d.js 25.95 kB │ gzip: 4.27 kB │ map: 35.17 kB 2026-10-25T02:20:12.2898415Z dist/assets/useHandleNewThread-CPFTbc2s.js 26.20 kB │ gzip: 9.09 kB │ map: 139.04 kB 2026-10-25T02:20:12.2898771Z dist/assets/system-verilog-DJ5XKQeo.js 26.24 kB │ gzip: 4.86 kB │ map: 36.27 kB 2026-10-25T02:20:12.2899115Z dist/assets/useThreadActions-Dt4RO_jE.js 26.70 kB │ gzip: 8.62 kB │ map: 131.45 kB 2026-10-25T02:20:12.2899443Z dist/assets/langs-BBB_7LgH.js 26.73 kB │ gzip: 6.95 kB │ map: 48.07 kB 2026-10-25T02:20:12.2899793Z dist/assets/nord-Cb4Vim4T.js 26.76 kB │ gzip: 4.39 kB │ map: 35.36 kB 2026-10-25T02:20:12.2900115Z dist/assets/codeql-oeQT6MSM.js 26.92 kB │ gzip: 3.83 kB │ map: 36.02 kB 2026-10-25T02:20:12.2900430Z dist/assets/c3-BFHwR3_K.js 27.00 kB │ gzip: 3.96 kB │ map: 39.15 kB 2026-10-25T02:20:12.2900955Z dist/assets/T3PCR2KE-Bf3lKeif.js 27.06 kB │ gzip: 11.16 kB │ map: 74.49 kB 2026-10-25T02:20:12.2901475Z dist/assets/scss-CFf_7i28.js 27.31 kB │ gzip: 4.27 kB │ map: 38.39 kB 2026-10-25T02:20:12.2901853Z dist/assets/java-DGv6_9mf.js 27.32 kB │ gzip: 4.35 kB │ map: 38.66 kB 2026-10-25T02:20:12.2902169Z dist/assets/coffee-B1WQFatZ.js 27.46 kB │ gzip: 6.38 kB │ map: 36.12 kB 2026-10-25T02:20:12.2902493Z dist/assets/razor-zt1N93I2.js 27.49 kB │ gzip: 3.58 kB │ map: 38.35 kB 2026-10-25T02:20:12.2902812Z dist/assets/BB2UYUI2-FSBoX9ua.js 28.18 kB │ gzip: 10.96 kB │ map: 75.19 kB 2026-10-25T02:20:12.2903135Z dist/assets/scala-DKOlJaKm.js 28.92 kB │ gzip: 3.96 kB │ map: 40.12 kB 2026-10-25T02:20:12.2903464Z dist/assets/night-owl-DhmEMT88.js 28.95 kB │ gzip: 5.18 kB │ map: 39.06 kB 2026-10-25T02:20:12.2903792Z dist/assets/select-bzFkyOqJ.js 29.05 kB │ gzip: 10.89 kB │ map: 139.91 kB 2026-10-25T02:20:12.2904114Z dist/assets/crystal-BMvvsbqw.js 29.45 kB │ gzip: 4.47 kB │ map: 41.29 kB 2026-10-25T02:20:12.2904438Z dist/assets/mermaid-Bk4SNUv9.js 29.54 kB │ gzip: 3.68 kB │ map: 44.12 kB 2026-10-25T02:20:12.2904768Z dist/assets/applescript-CCn79oCD.js 29.61 kB │ gzip: 5.98 kB │ map: 39.35 kB 2026-10-25T02:20:12.2905102Z dist/assets/BUM34MOA-PmMwXvQE.js 30.12 kB │ gzip: 11.45 kB │ map: 75.42 kB 2026-10-25T02:20:12.2905428Z dist/assets/75O6YZUN-DArEN--1.js 30.19 kB │ gzip: 11.64 kB │ map: 77.70 kB 2026-10-25T02:20:12.2905765Z dist/assets/pierre-dark-CpLgRqie.js 30.59 kB │ gzip: 4.77 kB │ map: 34.24 kB 2026-10-25T02:20:12.2906108Z dist/assets/pierre-light-CoaEpmwp.js 30.59 kB │ gzip: 4.77 kB │ map: 34.25 kB 2026-10-25T02:20:12.2906453Z dist/assets/pierre-dark-soft-kZQmAZld.js 30.61 kB │ gzip: 4.81 kB │ map: 34.27 kB 2026-10-25T02:20:12.2906805Z dist/assets/pierre-light-soft-lWLdNTOI.js 30.61 kB │ gzip: 4.77 kB │ map: 34.27 kB 2026-10-25T02:20:12.2907168Z dist/assets/pierre-dark-tritanopia-CpjhbsIL.js 30.62 kB │ gzip: 4.72 kB │ map: 34.30 kB 2026-10-25T02:20:12.2907544Z dist/assets/pierre-light-tritanopia-CEbqgOJL.js 30.63 kB │ gzip: 4.73 kB │ map: 34.30 kB 2026-10-25T02:20:12.2907942Z dist/assets/pierre-dark-protanopia-deuteranopia-B35FxJx-.js 30.66 kB │ gzip: 4.80 kB │ map: 34.36 kB 2026-10-25T02:20:12.2908356Z dist/assets/pierre-light-protanopia-deuteranopia-0fSaH845.js 30.67 kB │ gzip: 4.76 kB │ map: 34.37 kB 2026-10-25T02:20:12.2908803Z dist/assets/julia-UgAEAqaq.js 31.05 kB │ gzip: 4.34 kB │ map: 40.65 kB 2026-10-25T02:20:12.2909231Z dist/assets/stylus-B6D30XZt.js 31.11 kB │ gzip: 8.05 kB │ map: 38.88 kB 2026-10-25T02:20:12.2909778Z dist/assets/lib-DfMYLu1s.js 31.82 kB │ gzip: 11.77 kB │ map: 134.07 kB 2026-10-25T02:20:12.2910274Z dist/assets/N3JZAHOW-Ck3Dbw8M.js 32.62 kB │ gzip: 13.28 kB │ map: 101.23 kB 2026-10-25T02:20:12.2910814Z dist/assets/DiffWorkerPoolProvider-CnnKx32c.js 33.03 kB │ gzip: 9.52 kB │ map: 109.16 kB 2026-10-25T02:20:12.2911359Z dist/assets/poimandres-DRFjx7u4.js 33.53 kB │ gzip: 5.53 kB │ map: 43.07 kB 2026-10-25T02:20:12.2911870Z dist/assets/one-dark-pro-CLwyXe_n.js 33.83 kB │ gzip: 5.54 kB │ map: 44.51 kB 2026-10-25T02:20:12.2912650Z dist/assets/bsl-BkkzgIyY.js 33.90 kB │ gzip: 8.38 kB │ map: 37.63 kB 2026-10-25T02:20:12.2913435Z dist/assets/O65XPQGZ-DqmHvItj.js 34.10 kB │ gzip: 12.69 kB │ map: 86.95 kB 2026-10-25T02:20:12.2913958Z dist/assets/UsageLimits-RfVVRRhR.js 34.31 kB │ gzip: 11.88 kB │ map: 148.25 kB 2026-10-25T02:20:12.2914454Z dist/assets/haxe-OTjmBuCE.js 35.19 kB │ gzip: 5.94 kB │ map: 49.52 kB 2026-10-25T02:20:12.2914935Z dist/assets/nginx-DoalMtUh.js 35.39 kB │ gzip: 4.49 kB │ map: 48.50 kB 2026-10-25T02:20:12.2915426Z dist/assets/houston-CsvMBhTu.js 35.46 kB │ gzip: 5.80 kB │ map: 46.40 kB 2026-10-25T02:20:12.2915941Z dist/assets/tokyo-night-oM2G3aXe.js 35.71 kB │ gzip: 6.26 kB │ map: 45.35 kB 2026-10-25T02:20:12.2916489Z dist/assets/CodexSetupSection.logic-DupjqdGk.js 36.08 kB │ gzip: 12.93 kB │ map: 164.01 kB 2026-10-25T02:20:12.2917083Z dist/assets/contextPresentationRegistry-CJUw2UB4.js 36.92 kB │ gzip: 14.17 kB │ map: 128.35 kB 2026-10-25T02:20:12.2917657Z dist/assets/settings.keybindings-Dfx5k7vd.js 37.19 kB │ gzip: 12.46 kB │ map: 164.44 kB 2026-10-25T02:20:12.2918264Z dist/assets/erlang-Cphh6RMH.js 37.52 kB │ gzip: 4.39 kB │ map: 51.59 kB 2026-10-25T02:20:12.2918757Z dist/assets/lazy-BWBqigwA.js 38.38 kB │ gzip: 16.02 kB │ map: 81.90 kB 2026-10-25T02:20:12.2919260Z dist/assets/runtime-iPW4DWj3.js 38.55 kB │ gzip: 13.25 kB │ map: 195.63 kB 2026-10-25T02:20:12.2919812Z dist/assets/PullRequestCodeTab-BvNPw1Om.js 39.01 kB │ gzip: 14.41 kB │ map: 175.78 kB 2026-10-25T02:20:12.2920349Z dist/assets/cobol-D8zEYdzG.js 39.11 kB │ gzip: 10.92 kB │ map: 47.39 kB 2026-10-25T02:20:12.2920872Z dist/assets/settings.projects-z63KT2Zd.js 39.23 kB │ gzip: 15.37 kB │ map: 163.21 kB 2026-10-25T02:20:12.2921412Z dist/assets/useSettings-C0BJSuJ2.js 39.32 kB │ gzip: 13.49 kB │ map: 172.79 kB 2026-10-25T02:20:12.2921925Z dist/assets/TKWO2OVW-BoeSVkSK.js 39.43 kB │ gzip: 14.77 kB │ map: 97.94 kB 2026-10-25T02:20:12.2922449Z dist/assets/ThemeEditorPanel-CyG2RdHn.js 40.19 kB │ gzip: 14.50 kB │ map: 187.61 kB 2026-10-25T02:20:12.2922957Z dist/assets/asm-Cmm7eHzH.js 40.75 kB │ gzip: 8.20 kB │ map: 53.00 kB 2026-10-25T02:20:12.2923451Z dist/assets/RHNBAITX-DlqKE9WE.js 41.31 kB │ gzip: 15.53 kB │ map: 105.33 kB 2026-10-25T02:20:12.2923953Z dist/assets/haskell-D8IpX4py.js 41.52 kB │ gzip: 6.44 kB │ map: 57.85 kB 2026-10-25T02:20:12.2924473Z dist/assets/shellscript-DUxm18QR.js 41.59 kB │ gzip: 6.17 kB │ map: 56.57 kB 2026-10-25T02:20:12.2924988Z dist/assets/combobox-BkJ-HTh9.js 42.00 kB │ gzip: 14.25 kB │ map: 212.64 kB 2026-10-25T02:20:12.2925533Z dist/assets/DiffCommentAnnotation-Dkg1pmt3.js 43.09 kB │ gzip: 15.25 kB │ map: 114.80 kB 2026-10-25T02:20:12.2926084Z dist/assets/perl-BSMHP4d4.js 43.18 kB │ gzip: 4.68 kB │ map: 60.84 kB 2026-10-25T02:20:12.2926592Z dist/assets/DiffPanel-BVbkAEo2.js 43.35 kB │ gzip: 16.78 kB │ map: 242.48 kB 2026-10-25T02:20:12.2927102Z dist/assets/queries-C34z6QQr.js 43.49 kB │ gzip: 16.16 kB │ map: 233.27 kB 2026-10-25T02:20:12.2927592Z dist/assets/d-qD-0Kul2.js 43.82 kB │ gzip: 8.46 kB │ map: 62.69 kB 2026-10-25T02:20:12.2928429Z dist/assets/LHDIQX7Q-DR-E07jN.js 44.04 kB │ gzip: 16.12 kB │ map: 107.24 kB 2026-10-25T02:20:12.2929245Z dist/assets/ProviderModelPicker-DYT1nK0z.js 44.80 kB │ gzip: 16.00 kB │ map: 232.43 kB 2026-10-25T02:20:12.2929829Z dist/assets/pierre-dark-vibrant-CpQYzh95.js 44.81 kB │ gzip: 5.33 kB │ map: 48.48 kB 2026-10-25T02:20:12.2930396Z dist/assets/pierre-light-vibrant-D80Fkn33.js 44.81 kB │ gzip: 5.31 kB │ map: 48.48 kB 2026-10-25T02:20:12.2930948Z dist/assets/settingsLayout-UcJeZVjN.js 45.06 kB │ gzip: 15.82 kB │ map: 226.85 kB 2026-10-25T02:20:12.2931481Z dist/assets/session-logic-w2YtsDy5.js 45.10 kB │ gzip: 14.08 kB │ map: 191.90 kB 2026-10-25T02:20:12.2932005Z dist/assets/sortable.esm-Cuvdu9Xw.js 45.26 kB │ gzip: 14.81 kB │ map: 213.35 kB 2026-10-25T02:20:12.2932534Z dist/assets/DevicePanel-BSyaUfjm.js 46.08 kB │ gzip: 15.62 kB │ map: 246.29 kB 2026-10-25T02:20:12.2933090Z dist/assets/settings.source-control-DK3Me5DD.js 46.29 kB │ gzip: 15.12 kB │ map: 261.83 kB 2026-10-25T02:20:12.2933628Z dist/assets/toast-BxDYn7OG.js 46.42 kB │ gzip: 15.40 kB │ map: 271.59 kB 2026-10-25T02:20:12.2934119Z dist/assets/ruby-DsbvT1g-.js 46.64 kB │ gzip: 5.75 kB │ map: 66.38 kB 2026-10-25T02:20:12.2934609Z dist/assets/go-rLFTqkRN.js 46.85 kB │ gzip: 5.18 kB │ map: 66.61 kB 2026-10-25T02:20:12.2935123Z dist/assets/settings.snap-shot-C7Z5UM8B.js 47.00 kB │ gzip: 16.62 kB │ map: 252.71 kB 2026-10-25T02:20:12.2935676Z dist/assets/catppuccin-mocha-DYhrFGRu.js 47.30 kB │ gzip: 8.02 kB │ map: 62.03 kB 2026-10-25T02:20:12.2936228Z dist/assets/catppuccin-latte-DwIHMF0Q.js 47.30 kB │ gzip: 8.02 kB │ map: 62.03 kB 2026-10-25T02:20:12.2936780Z dist/assets/catppuccin-frappe-3VR1Za6u.js 47.31 kB │ gzip: 8.03 kB │ map: 62.04 kB 2026-10-25T02:20:12.2937333Z dist/assets/catppuccin-macchiato-DYnBP6_5.js 47.31 kB │ gzip: 8.03 kB │ map: 62.06 kB 2026-10-25T02:20:12.2937882Z dist/assets/PreviewPanel-cCWjNtuf.js 47.36 kB │ gzip: 17.25 kB │ map: 253.64 kB 2026-10-25T02:20:12.2938401Z dist/assets/apex-VAyPSnFM.js 47.80 kB │ gzip: 6.85 kB │ map: 66.78 kB 2026-10-25T02:20:12.2938899Z dist/assets/ada-C5qYipkI.js 48.11 kB │ gzip: 6.00 kB │ map: 70.96 kB 2026-10-25T02:20:12.2939383Z dist/assets/css-DwBvL60a.js 49.14 kB │ gzip: 11.99 kB │ map: 60.67 kB 2026-10-25T02:20:12.2939908Z dist/assets/welcome-BynUzfDR.js 49.74 kB │ gzip: 17.05 kB │ map: 266.11 kB 2026-10-25T02:20:12.2940440Z dist/assets/imba-DsUTQ-LC.js 49.96 kB │ gzip: 9.51 kB │ map: 68.08 kB 2026-10-25T02:20:12.2940818Z dist/assets/everforest-dark-sB-x3p7T.js 53.79 kB │ gzip: 8.41 kB │ map: 68.28 kB 2026-10-25T02:20:12.2941167Z dist/assets/everforest-light-Df2xbC6M.js 53.79 kB │ gzip: 8.41 kB │ map: 68.29 kB 2026-10-25T02:20:12.2941525Z dist/assets/useNextRenderData-DfnVObxZ.js 55.51 kB │ gzip: 14.32 kB │ map: 176.45 kB 2026-10-25T02:20:12.2941866Z dist/assets/wikitext-ClFFjSW2.js 55.92 kB │ gzip: 4.85 kB │ map: 77.64 kB 2026-10-25T02:20:12.2942219Z dist/assets/ScheduledTasksSettings-C6YuJ6r6.js 56.60 kB │ gzip: 19.22 kB │ map: 343.44 kB 2026-10-25T02:20:12.2942563Z dist/assets/stata-Cadl4xfJ.js 57.03 kB │ gzip: 12.43 kB │ map: 74.20 kB 2026-10-25T02:20:12.2943129Z dist/assets/html-BsSWTkE7.js 57.36 kB │ gzip: 11.82 kB │ map: 73.07 kB 2026-10-25T02:20:12.2943627Z dist/assets/engine-javascript-Bq4eYitL.js 57.36 kB │ gzip: 20.13 kB │ map: 201.01 kB 2026-10-25T02:20:12.2944033Z dist/assets/ballerina-B7ZEbQpA.js 58.73 kB │ gzip: 8.14 kB │ map: 81.54 kB 2026-10-25T02:20:12.2944363Z dist/assets/markdown-BYOwaDjH.js 59.37 kB │ gzip: 5.70 kB │ map: 82.33 kB 2026-10-25T02:20:12.2944705Z dist/assets/renderFileChildren-DEuhAcoP.js 59.57 kB │ gzip: 15.62 kB │ map: 184.16 kB 2026-10-25T02:20:12.2945054Z dist/assets/pierre-icons-CDwBGlQt.js 60.69 kB │ gzip: 22.05 kB │ map: 82.50 kB 2026-10-25T02:20:12.2945390Z dist/assets/Icons-C6y2ctlG.js 61.83 kB │ gzip: 30.42 kB │ map: 165.88 kB 2026-10-25T02:20:12.2945711Z dist/assets/ocaml-O90oeIOV.js 62.48 kB │ gzip: 5.08 kB │ map: 81.11 kB 2026-10-25T02:20:12.2946035Z dist/assets/mojo-BgCJLMeH.js 69.83 kB │ gzip: 9.25 kB │ map: 94.94 kB 2026-10-25T02:20:12.2946359Z dist/assets/python-gzcpVVnB.js 69.98 kB │ gzip: 9.13 kB │ map: 95.24 kB 2026-10-25T02:20:12.2946678Z dist/assets/c-CiNtTPN_.js 72.21 kB │ gzip: 10.59 kB │ map: 95.41 kB 2026-10-25T02:20:12.2946989Z dist/assets/latex-CSTr7slW.js 72.91 kB │ gzip: 6.78 kB │ map: 100.96 kB 2026-10-25T02:20:12.2947305Z dist/assets/vyper-CgoNMtux.js 74.68 kB │ gzip: 10.73 kB │ map: 100.71 kB 2026-10-25T02:20:12.2947618Z dist/assets/core-BOVGhPP9.js 79.97 kB │ gzip: 23.72 kB │ map: 300.26 kB 2026-10-25T02:20:12.2947940Z dist/assets/hack-D90RSL9t.js 81.09 kB │ gzip: 26.47 kB │ map: 98.63 kB 2026-10-25T02:20:12.2948272Z dist/assets/SettingsPanels-Bl9JqHn1.js 81.62 kB │ gzip: 25.51 kB │ map: 500.96 kB 2026-10-25T02:20:12.2948617Z dist/assets/themePalette-DeXhU618.js 83.31 kB │ gzip: 23.89 kB │ map: 283.22 kB 2026-10-25T02:20:12.2948943Z dist/assets/swift-DonLKvLd.js 86.72 kB │ gzip: 14.72 kB │ map: 114.51 kB 2026-10-25T02:20:12.2949280Z dist/assets/fortran-free-form-CYNrtFtB.js 89.01 kB │ gzip: 11.23 kB │ map: 124.06 kB 2026-10-25T02:20:12.2949659Z dist/assets/csharp-oqKa8noW.js 90.22 kB │ gzip: 10.75 kB │ map: 126.35 kB 2026-10-25T02:20:12.2949996Z dist/assets/_chat.pull-requests-Cl1EVb7t.js 91.35 kB │ gzip: 32.70 kB │ map: 452.14 kB 2026-10-25T02:20:12.2950356Z dist/assets/racket-DcIDlBhZ.js 92.42 kB │ gzip: 15.11 kB │ map: 106.19 kB 2026-10-25T02:20:12.2950700Z dist/assets/settings.diagnostics-yxnrEwzV.js 93.85 kB │ gzip: 27.32 kB │ map: 499.18 kB 2026-10-25T02:20:12.2951047Z dist/assets/FileDiff-k4Lizgez.js 94.00 kB │ gzip: 24.08 kB │ map: 315.70 kB 2026-10-25T02:20:12.2951384Z dist/assets/embeddedScripts-7VEt5Sv9.js 94.06 kB │ gzip: 24.28 kB │ map: 399.40 kB 2026-10-25T02:20:12.2951721Z dist/assets/usage-BaW2Q5sX.js 96.01 kB │ gzip: 32.10 kB │ map: 558.40 kB 2026-10-25T02:20:12.2952060Z dist/assets/settings.integrations-DNa3HO1q.js 96.61 kB │ gzip: 31.43 kB │ map: 565.47 kB 2026-10-25T02:20:12.2952399Z dist/assets/less-DVTAwKKz.js 97.66 kB │ gzip: 14.88 kB │ map: 131.85 kB 2026-10-25T02:20:12.2952717Z dist/assets/blade-B5ADY48e.js 105.01 kB │ gzip: 28.34 kB │ map: 131.09 kB 2026-10-25T02:20:12.2953247Z dist/assets/objective-c-D1A_Heim.js 105.45 kB │ gzip: 23.67 kB │ map: 129.66 kB 2026-10-25T02:20:12.2953753Z dist/assets/settings.connections-BjAHovcD.js 107.44 kB │ gzip: 36.23 kB │ map: 613.24 kB 2026-10-25T02:20:12.2954183Z dist/assets/ThreadTerminalDrawer-B6vZE2he.js 111.45 kB │ gzip: 32.76 kB │ map: 442.24 kB 2026-10-25T02:20:12.2954522Z dist/assets/php-Be40ZDjL.js 113.12 kB │ gzip: 28.89 kB │ map: 142.15 kB 2026-10-25T02:20:12.2954859Z dist/assets/getDiffFileInput-AcEW-WmU.js 121.50 kB │ gzip: 29.88 kB │ map: 336.43 kB 2026-10-25T02:20:12.2955198Z dist/assets/asciidoc-DE70LPWp.js 131.56 kB │ gzip: 9.35 kB │ map: 189.11 kB 2026-10-25T02:20:12.2955520Z dist/assets/mdx-DQZ5AkYe.js 136.14 kB │ gzip: 23.57 kB │ map: 176.72 kB 2026-10-25T02:20:12.2955860Z dist/assets/AttachmentImage-Cd9Ku7hm.js 159.96 kB │ gzip: 48.32 kB │ map: 963.15 kB 2026-10-25T02:20:12.2956214Z dist/assets/settings.providers-CH7mJIpX.js 161.75 kB │ gzip: 53.48 kB │ map: 825.38 kB 2026-10-25T02:20:12.2956563Z dist/assets/objective-cpp-BsSzOQcm.js 172.01 kB │ gzip: 31.02 kB │ map: 218.54 kB 2026-10-25T02:20:12.2956907Z dist/assets/javascript-wyDA4Fnk.js 174.94 kB │ gzip: 16.73 kB │ map: 236.10 kB 2026-10-25T02:20:12.2957225Z dist/assets/tsx-D2H2cqPj.js 175.64 kB │ gzip: 16.72 kB │ map: 236.76 kB 2026-10-25T02:20:12.2957538Z dist/assets/jsx-Ba8EQqYd.js 177.89 kB │ gzip: 16.81 kB │ map: 239.02 kB 2026-10-25T02:20:12.2957862Z dist/assets/typescript-DVfyLS1i.js 181.19 kB │ gzip: 16.33 kB │ map: 244.44 kB 2026-10-25T02:20:12.2958338Z dist/assets/angular-ts-Ca8VxLRD.js 183.77 kB │ gzip: 16.82 kB │ map: 249.70 kB 2026-10-25T02:20:12.2958667Z dist/assets/runtime-Bfz7xC7J.js 184.20 kB │ gzip: 53.09 kB │ map: 856.49 kB 2026-10-25T02:20:12.2958994Z dist/assets/vue-vine-DHF2iv3V.js 190.10 kB │ gzip: 18.11 kB │ map: 255.27 kB 2026-10-25T02:20:12.2959333Z dist/assets/FilePreviewPanel-DQMFBinj.js 197.65 kB │ gzip: 64.78 kB │ map: 908.88 kB 2026-10-25T02:20:12.2959722Z dist/assets/fileTreeExpansion-B9txXW6r.js 199.40 kB │ gzip: 54.51 kB │ map: 731.80 kB 2026-10-25T02:20:12.2960079Z dist/assets/settings.appearance-DffW47rZ.js 214.02 kB │ gzip: 68.31 kB │ map: 893.80 kB 2026-10-25T02:20:12.2960420Z dist/assets/katex-DJhrJSbw.js 258.63 kB │ gzip: 77.46 kB │ map: 969.65 kB 2026-10-25T02:20:12.2960741Z dist/assets/wolfram-DLL8P-h_.js 262.42 kB │ gzip: 77.67 kB │ map: 279.66 kB 2026-10-25T02:20:12.2961079Z dist/assets/highlights-pHfNPLCZ.js 275.85 kB │ gzip: 121.32 kB │ map: 377.86 kB 2026-10-25T02:20:12.2961410Z dist/assets/dist-DzCZm7WI.js 332.38 kB │ gzip: 97.21 kB │ map: 1,652.92 kB 2026-10-25T02:20:12.2961752Z dist/assets/PanelLayoutControls-DXnSxs6m.js 386.14 kB │ gzip: 120.56 kB │ map: 1,802.79 kB 2026-10-25T02:20:12.2962111Z dist/assets/useTimelineFollow--dPbuyaC.js 397.33 kB │ gzip: 130.61 kB │ map: 1,747.51 kB 2026-10-25T02:20:12.2962461Z dist/assets/ChatMarkdown-DX9X8BsS.js 432.82 kB │ gzip: 144.66 kB │ map: 1,837.38 kB 2026-10-25T02:20:12.2962815Z dist/assets/ComposerPromptEditor-B1LPXkO-.js 483.76 kB │ gzip: 154.80 kB │ map: 2,232.94 kB 2026-10-25T02:20:12.2963179Z dist/assets/lucideIconByName-CaaJXh8m.js 553.61 kB │ gzip: 141.20 kB │ map: 2,034.58 kB 2026-10-25T02:20:12.2963777Z dist/assets/renderScheduler-BRRP7GYW.js 608.04 kB │ gzip: 156.03 kB │ map: 3,048.60 kB 2026-10-25T02:20:12.2964288Z dist/assets/wasm-BnjxR4X6.js 622.36 kB │ gzip: 232.13 kB │ map: 622.90 kB 2026-10-25T02:20:12.2964664Z dist/assets/cpp-_OkNZJqn.js 626.17 kB │ gzip: 48.13 kB │ map: 816.28 kB 2026-10-25T02:20:12.2964993Z dist/assets/emacs-lisp-B4R74twV.js 779.92 kB │ gzip: 197.59 kB │ map: 789.85 kB 2026-10-25T02:20:12.2965320Z dist/assets/_chat-DvOUXrSN.js 928.93 kB │ gzip: 312.84 kB │ map: 4,789.21 kB 2026-10-25T02:20:12.2965647Z dist/assets/utils-Be4NsUGU.js 1,163.80 kB │ gzip: 361.38 kB │ map: 8,577.10 kB 2026-10-25T02:20:12.2965964Z dist/assets/main-D2D8mHkF.js 1,173.62 kB │ gzip: 384.56 kB │ map: 5,535.03 kB 2026-10-25T02:20:12.2966288Z dist/assets/heic-to-DeD09f__.js 2,995.22 kB │ gzip: 750.97 kB │ map: 2,998.72 kB 2026-10-25T02:20:12.2966461Z 2026-10-25T02:20:12.2966600Z [plugin builtin:vite-reporter] 2026-10-25T02:20:12.2966797Z (!) Some chunks are larger than 500 kB after minification. Consider: 2026-10-25T02:20:12.2967010Z - Using dynamic import() to code-split the application 2026-10-25T02:20:12.2967372Z - Use build.rolldownOptions.output.codeSplitting to improve chunking: https://rolldown.rs/reference/OutputOptions.codeSplitting 2026-10-25T02:20:12.2967774Z - Adjust chunk size limit for this warning via build.chunkSizeWarningLimit. 2026-10-25T02:20:12.2968470Z ✓ built in 5.06s 2026-10-25T02:20:12.3848953Z 2026-10-25T02:20:12.3849701Z ~/apps/server$ node scripts/cli.ts build ⊘ cache disabled 2026-10-25T02:20:12.6477917Z [02:20:12.647] INFO (#1): [cli] Running tsdown... 2026-10-25T02:20:14.2889008Z [02:20:14.288] INFO (#1): [cli] Applied development icon overrides to dist/client 2026-10-25T02:20:14.2889407Z [02:20:14.288] INFO (#1): [cli] Bundled web app into dist/client 2026-10-25T02:20:14.2967909Z 2026-10-25T02:20:14.2968427Z ~/apps/desktop$ node scripts/build-browser-secret.mjs ⊘ cache disabled 2026-10-25T02:20:14.4011648Z 2026-10-25T02:20:14.4012198Z ~/apps/desktop$ node scripts/build-preview-annotation-css.mjs ⊘ cache disabled 2026-10-25T02:20:14.4423417Z 2026-10-25T02:20:14.4423936Z ~/apps/desktop$ vp pack ⊘ cache disabled 2026-10-25T02:20:14.5477275Z ℹ entry: src/main.ts 2026-10-25T02:20:14.5478130Z ℹ tsconfig: tsconfig.json 2026-10-25T02:20:14.5484180Z ℹ entry: src/electron/WindowsForegroundFocusWorker.ts, src/snapShot/GlobalShiftShortcutWorker.ts, src/snapShot/RegionSnapShotWorker.ts, src/snapShot/SnapShotAccessibilityWorker.ts 2026-10-25T02:20:14.5484571Z ℹ tsconfig: tsconfig.json 2026-10-25T02:20:14.5487293Z ℹ entry: src/boot.ts, src/compileCache.ts 2026-10-25T02:20:14.5487488Z ℹ tsconfig: tsconfig.json 2026-10-25T02:20:14.5490252Z ℹ entry: src/preload.ts 2026-10-25T02:20:14.5490596Z ℹ tsconfig: tsconfig.json 2026-10-25T02:20:14.5492879Z ℹ entry: src/preview-pick-preload.ts 2026-10-25T02:20:14.5493161Z ℹ tsconfig: tsconfig.json 2026-10-25T02:20:14.5495626Z ℹ entry: src/preview-pip-preload.ts 2026-10-25T02:20:14.5495815Z ℹ tsconfig: tsconfig.json 2026-10-25T02:20:14.5498188Z ℹ entry: src/mac-permission-preload.ts 2026-10-25T02:20:14.5498344Z ℹ tsconfig: tsconfig.json 2026-10-25T02:20:14.5501006Z ℹ Build start 2026-10-25T02:20:14.5703522Z ℹ dist-electron/preview-pip-preload.cjs 0.68 kB │ gzip: 0.36 kB 2026-10-25T02:20:14.5737809Z ℹ dist-electron/preview-pip-preload.cjs.map 10.93 kB │ gzip: 2.83 kB 2026-10-25T02:20:14.5741923Z ℹ 2 files, total: 11.61 kB 2026-10-25T02:20:14.5742288Z ℹ dist-electron/mac-permission-preload.cjs 0.79 kB │ gzip: 0.38 kB 2026-10-25T02:20:14.5745022Z ℹ dist-electron/mac-permission-preload.cjs.map 11.01 kB │ gzip: 2.80 kB 2026-10-25T02:20:14.5745246Z ℹ 2 files, total: 11.80 kB 2026-10-25T02:20:14.5844385Z ✔ Build complete in 34ms 2026-10-25T02:20:14.5845837Z ✔ Build complete in 34ms 2026-10-25T02:20:14.5848613Z ℹ Hint: consider adding deps.onlyBundle option to avoid unintended bundling of dependencies, or set deps.onlyBundle: false to disable this hint. 2026-10-25T02:20:14.5849137Z See more at https://tsdown.dev/options/dependencies#deps-onlybundle 2026-10-25T02:20:14.5849334Z Detected dependencies in bundle: 2026-10-25T02:20:14.5849496Z - @clerk/electron 2026-10-25T02:20:14.5942185Z ℹ Hint: consider adding deps.onlyBundle option to avoid unintended bundling of dependencies, or set deps.onlyBundle: false to disable this hint. 2026-10-25T02:20:14.5942754Z See more at https://tsdown.dev/options/dependencies#deps-onlybundle 2026-10-25T02:20:14.5942983Z Detected dependencies in bundle: 2026-10-25T02:20:14.5943172Z - react-grab 2026-10-25T02:20:14.6027038Z ℹ dist-electron/compileCache.cjs 1.61 kB │ gzip: 0.75 kB 2026-10-25T02:20:14.6027389Z ℹ dist-electron/boot.cjs 0.12 kB │ gzip: 0.12 kB 2026-10-25T02:20:14.6027637Z ℹ dist-electron/compileCache.cjs.map 1.15 kB │ gzip: 0.66 kB 2026-10-25T02:20:14.6027922Z ℹ dist-electron/boot.cjs.map 0.20 kB │ gzip: 0.16 kB 2026-10-25T02:20:14.6028130Z ℹ 4 files, total: 3.08 kB 2026-10-25T02:20:14.6044932Z ℹ dist-electron/preload.cjs 32.04 kB │ gzip: 7.35 kB 2026-10-25T02:20:14.6045233Z ℹ dist-electron/preload.cjs.map 58.67 kB │ gzip: 13.09 kB 2026-10-25T02:20:14.6045427Z ℹ 2 files, total: 90.71 kB 2026-10-25T02:20:14.6184840Z ✔ Build complete in 68ms 2026-10-25T02:20:14.6185053Z ✔ Build complete in 68ms 2026-10-25T02:20:14.6397598Z ℹ dist-electron/preview-pick-preload.cjs 136.09 kB │ gzip: 36.03 kB 2026-10-25T02:20:14.6419132Z ℹ dist-electron/preview-pick-preload.cjs.map 241.75 kB │ gzip: 61.84 kB 2026-10-25T02:20:14.6422614Z ℹ 2 files, total: 377.84 kB 2026-10-25T02:20:14.6501031Z ✔ Build complete in 99ms 2026-10-25T02:20:14.7599495Z ℹ dist-electron/snapShot/SnapShotAccessibilityWorker.cjs 6.35 kB │ gzip: 1.97 kB 2026-10-25T02:20:14.7599874Z ℹ dist-electron/snapShot/GlobalShiftShortcutWorker.cjs 5.71 kB │ gzip: 1.60 kB 2026-10-25T02:20:14.7600247Z ℹ dist-electron/electron/WindowsForegroundFocusWorker.cjs 2.32 kB │ gzip: 0.89 kB 2026-10-25T02:20:14.7600578Z ℹ dist-electron/snapShot/RegionSnapShotWorker.cjs 0.77 kB │ gzip: 0.43 kB 2026-10-25T02:20:14.7600878Z ℹ dist-electron/snapShot-D1yGyAZE.cjs.map 4.58 MB 2026-10-25T02:20:14.7601142Z ℹ dist-electron/snapShot-D1yGyAZE.cjs 1.19 MB 2026-10-25T02:20:14.7601437Z ℹ dist-electron/snapShot/SnapShotAccessibilityWorker.cjs.map 13.79 kB │ gzip: 4.07 kB 2026-10-25T02:20:14.7601759Z ℹ dist-electron/snapShot/GlobalShiftShortcutWorker.cjs.map 13.29 kB │ gzip: 3.40 kB 2026-10-25T02:20:14.7602082Z ℹ dist-electron/electron/WindowsForegroundFocusWorker.cjs.map 5.07 kB │ gzip: 1.69 kB 2026-10-25T02:20:14.7602398Z ℹ dist-electron/snapShot/RegionSnapShotWorker.cjs.map 1.69 kB │ gzip: 0.81 kB 2026-10-25T02:20:14.7602712Z ℹ dist-electron/rolldown-runtime-VH7oDXx4.cjs 1.13 kB │ gzip: 0.54 kB 2026-10-25T02:20:14.7603345Z ℹ 11 files, total: 5.82 MB 2026-10-25T02:20:14.7603596Z ✔ Build complete in 210ms 2026-10-25T02:20:15.0954351Z ℹ dist-electron/main.cjs 5.47 MB 2026-10-25T02:20:15.0954647Z ℹ dist-electron/main.cjs.map 13.86 MB 2026-10-25T02:20:15.0954854Z ℹ 2 files, total: 19.33 MB 2026-10-25T02:20:15.0960722Z ../../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-25T02:20:15.0961854Z ╭─[ ../../node_modules/.pnpm/dbus-next@0.10.2_patch_hash=cfff57561b0ee59b5addb3b2e6c6f20906e967507a530ab67e8db8108e520ba4/node_modules/dbus-next/lib/address-x11.js:7:23 ] 2026-10-25T02:20:15.0962386Z │ 2026-10-25T02:20:15.0963042Z 7 │   const x11 = require('x11'); 2026-10-25T02:20:15.0963579Z  │ ──┬── 2026-10-25T02:20:15.0963842Z  │ ╰──── Module not found, treating it as an external dependency 2026-10-25T02:20:15.0964054Z ───╯ 2026-10-25T02:20:15.0964128Z 2026-10-25T02:20:15.0964467Z ../../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-25T02:20:15.0965012Z ╭─[ ../../node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/ConfigProvider.js:725:8 ] 2026-10-25T02:20:15.0965305Z │ 2026-10-25T02:20:15.0965688Z 725 │     ...import.meta?.env 2026-10-25T02:20:15.0966032Z  │ ─────┬───── 2026-10-25T02:20:15.0966612Z  │ ╰─────── 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-25T02:20:15.0967104Z ─────╯ 2026-10-25T02:20:15.0967173Z 2026-10-25T02:20:15.0967247Z ✔ Build complete in 546ms 2026-10-25T02:20:15.1102494Z 2026-10-25T02:20:15.1103973Z --- 2026-10-25T02:20:15.1104279Z vp run: 5/5 successful. (Run `vp run --last-details` for full details) 2026-10-25T02:20:15.1204333Z ##[group]Run node apps/desktop/scripts/verify-preload-bundle.mjs 2026-10-25T02:20:15.1204609Z node apps/desktop/scripts/verify-preload-bundle.mjs 2026-10-25T02:20:15.1214176Z shell: /usr/bin/bash -e {0} 2026-10-25T02:20:15.1214319Z env: 2026-10-25T02:20:15.1214437Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 145 2026-10-25T02:20:15.1214594Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 404 2026-10-25T02:20:15.1214741Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-25T02:20:15.1214882Z ##[endgroup] 2026-10-25T02:20:15.1553972Z ##[group]Run until test -s "$RUNNER_TEMP/typecheck-status"; do sleep 1; done 2026-10-25T02:20:15.1554262Z until test -s "$RUNNER_TEMP/typecheck-status"; do sleep 1; done 2026-10-25T02:20:15.1554456Z cat "$RUNNER_TEMP/typecheck.log" 2026-10-25T02:20:15.1554626Z exit "$(cat "$RUNNER_TEMP/typecheck-status")" 2026-10-25T02:20:15.1562872Z shell: /usr/bin/bash -e {0} 2026-10-25T02:20:15.1563115Z env: 2026-10-25T02:20:15.1563229Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 145 2026-10-25T02:20:15.1563378Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 404 2026-10-25T02:20:15.1563520Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-25T02:20:15.1563656Z ##[endgroup] 2026-10-25T02:20:15.1584604Z ~/packages/effect-acp$ tsc --noEmit 2026-10-25T02:20:15.1584774Z ~/packages/effect-codex-app-server$ tsc --noEmit 2026-10-25T02:20:15.1584944Z ~/oxlint-plugin-t3code$ tsc --noEmit 2026-10-25T02:20:15.1585089Z ~/packages/contracts$ tsc --noEmit 2026-10-25T02:20:15.1585183Z 2026-10-25T02:20:15.1585539Z 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-25T02:20:15.1585910Z 2026-10-25T02:20:15.1585969Z 40 error: Schema.Struct({ 2026-10-25T02:20:15.1586092Z ~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1586225Z 41 _tag: Schema.Literal("Cause"), 2026-10-25T02:20:15.1586370Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1586558Z 42 data: Schema.Tuple([Schema.Struct({ _tag: Schema.Literal("Die") })]), 2026-10-25T02:20:15.1586774Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1586942Z 43 }), 2026-10-25T02:20:15.1587042Z ~~~~ 2026-10-25T02:20:15.1587099Z 2026-10-25T02:20:15.1587430Z 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-25T02:20:15.1587794Z 2026-10-25T02:20:15.1587973Z 42 data: Schema.Tuple([Schema.Struct({ _tag: Schema.Literal("Die") })]), 2026-10-25T02:20:15.1588182Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1588296Z 2026-10-25T02:20:15.1588575Z 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-25T02:20:15.1588889Z 2026-10-25T02:20:15.1588952Z 422 handleInitialize: (handler) => 2026-10-25T02:20:15.1589091Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1589165Z 2026-10-25T02:20:15.1589482Z 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-25T02:20:15.1589798Z 2026-10-25T02:20:15.1589855Z 427 handleAuthenticate: (handler) => 2026-10-25T02:20:15.1589999Z ~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1590073Z 2026-10-25T02:20:15.1590334Z 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-25T02:20:15.1590642Z 2026-10-25T02:20:15.1590699Z 432 handleLogout: (handler) => 2026-10-25T02:20:15.1590834Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.1590905Z 2026-10-25T02:20:15.1591182Z 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-25T02:20:15.1591498Z 2026-10-25T02:20:15.1591555Z 437 handleCreateSession: (handler) => 2026-10-25T02:20:15.1591700Z ~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1591776Z 2026-10-25T02:20:15.1592168Z 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-25T02:20:15.1592482Z 2026-10-25T02:20:15.1592539Z 442 handleLoadSession: (handler) => 2026-10-25T02:20:15.1592678Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1592755Z 2026-10-25T02:20:15.1593033Z 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-25T02:20:15.1593411Z 2026-10-25T02:20:15.1593467Z 447 handleListSessions: (handler) => 2026-10-25T02:20:15.1593606Z ~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1593684Z 2026-10-25T02:20:15.1593949Z 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-25T02:20:15.1594263Z 2026-10-25T02:20:15.1594322Z 452 handleForkSession: (handler) => 2026-10-25T02:20:15.1594481Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1594555Z 2026-10-25T02:20:15.1594831Z 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-25T02:20:15.1595150Z 2026-10-25T02:20:15.1595209Z 457 handleResumeSession: (handler) => 2026-10-25T02:20:15.1595349Z ~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1595424Z 2026-10-25T02:20:15.1595691Z 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-25T02:20:15.1596009Z 2026-10-25T02:20:15.1596065Z 462 handleCloseSession: (handler) => 2026-10-25T02:20:15.1596204Z ~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1596279Z 2026-10-25T02:20:15.1596556Z 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-25T02:20:15.1596873Z 2026-10-25T02:20:15.1596933Z 467 handleDeleteSession: (handler) => 2026-10-25T02:20:15.1597072Z ~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1597150Z 2026-10-25T02:20:15.1597422Z 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-25T02:20:15.1597737Z 2026-10-25T02:20:15.1597796Z 472 handleListProviders: (handler) => 2026-10-25T02:20:15.1597950Z ~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1598022Z 2026-10-25T02:20:15.1598362Z 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-25T02:20:15.1598674Z 2026-10-25T02:20:15.1598730Z 477 handleSetProvider: (handler) => 2026-10-25T02:20:15.1598866Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1598938Z 2026-10-25T02:20:15.1599217Z 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-25T02:20:15.1599556Z 2026-10-25T02:20:15.1599619Z 482 handleDisableProvider: (handler) => 2026-10-25T02:20:15.1599769Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1599845Z 2026-10-25T02:20:15.1600141Z 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-25T02:20:15.1600475Z 2026-10-25T02:20:15.1600545Z 487 handleSetSessionConfigOption: (handler) => 2026-10-25T02:20:15.1600703Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1600861Z 2026-10-25T02:20:15.1601127Z 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-25T02:20:15.1601428Z 2026-10-25T02:20:15.1601485Z 492 handlePrompt: (handler) => 2026-10-25T02:20:15.1601615Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.1601681Z 2026-10-25T02:20:15.1601999Z 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-25T02:20:15.1602301Z 2026-10-25T02:20:15.1602354Z 497 handleCancel: (handler) => 2026-10-25T02:20:15.1602483Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.1602552Z 2026-10-25T02:20:15.1602913Z 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-25T02:20:15.1603240Z 2026-10-25T02:20:15.1603303Z 502 handleUnknownExtRequest: (handler) => 2026-10-25T02:20:15.1603455Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1603534Z 2026-10-25T02:20:15.1603827Z 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-25T02:20:15.1604163Z 2026-10-25T02:20:15.1604233Z 507 handleUnknownExtNotification: (handler) => 2026-10-25T02:20:15.1604388Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1604473Z 2026-10-25T02:20:15.1604772Z 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-25T02:20:15.1605110Z 2026-10-25T02:20:15.1605181Z 512 handleExtRequest: (method, payload, handler) => 2026-10-25T02:20:15.1605357Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1605428Z 2026-10-25T02:20:15.1605734Z 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-25T02:20:15.1606083Z 2026-10-25T02:20:15.1606165Z 517 handleExtNotification: (method, payload, handler) => 2026-10-25T02:20:15.1606340Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1606420Z 2026-10-25T02:20:15.1606745Z 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-25T02:20:15.1607113Z 2026-10-25T02:20:15.1607165Z 56 error: Schema.Struct({ 2026-10-25T02:20:15.1607286Z ~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1607414Z 57 _tag: Schema.Literal("Cause"), 2026-10-25T02:20:15.1607557Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1607738Z 58 data: Schema.Tuple([Schema.Struct({ _tag: Schema.Literal("Die") })]), 2026-10-25T02:20:15.1607950Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1608110Z 59 }), 2026-10-25T02:20:15.1608207Z ~~~~ 2026-10-25T02:20:15.1608259Z 2026-10-25T02:20:15.1608585Z 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-25T02:20:15.1608950Z 2026-10-25T02:20:15.1609047Z 58 data: Schema.Tuple([Schema.Struct({ _tag: Schema.Literal("Die") })]), 2026-10-25T02:20:15.1609250Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1609384Z 2026-10-25T02:20:15.1609699Z 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-25T02:20:15.1609998Z 2026-10-25T02:20:15.1610057Z 1071 yield* Effect.all( 2026-10-25T02:20:15.1610195Z ~~~~~~~~~~ 2026-10-25T02:20:15.1610275Z 2026-10-25T02:20:15.1610590Z src/client.ts:1245:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleRequestPermission")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1610984Z 2026-10-25T02:20:15.1611052Z 1245 handleRequestPermission: (handler) => 2026-10-25T02:20:15.1611202Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1611286Z 2026-10-25T02:20:15.1611564Z src/client.ts:1250:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleElicitation")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1611882Z 2026-10-25T02:20:15.1611937Z 1250 handleElicitation: (handler) => 2026-10-25T02:20:15.1612082Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1612156Z 2026-10-25T02:20:15.1612424Z src/client.ts:1255:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleMcpConnect")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1612741Z 2026-10-25T02:20:15.1612796Z 1255 handleMcpConnect: (handler) => 2026-10-25T02:20:15.1612936Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1613012Z 2026-10-25T02:20:15.1613283Z src/client.ts:1259:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleMcpMessage")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1613597Z 2026-10-25T02:20:15.1613649Z 1259 handleMcpMessage: (handler) => 2026-10-25T02:20:15.1613789Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1613861Z 2026-10-25T02:20:15.1614139Z src/client.ts:1263:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleMcpDisconnect")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1614461Z 2026-10-25T02:20:15.1614522Z 1263 handleMcpDisconnect: (handler) => 2026-10-25T02:20:15.1614665Z ~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1614742Z 2026-10-25T02:20:15.1615025Z src/client.ts:1267:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleMcpNotification")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1615351Z 2026-10-25T02:20:15.1615411Z 1267 handleMcpNotification: (handler) => 2026-10-25T02:20:15.1615562Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1615642Z 2026-10-25T02:20:15.1615916Z src/client.ts:1276:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleReadTextFile")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1616232Z 2026-10-25T02:20:15.1616292Z 1276 handleReadTextFile: (handler) => 2026-10-25T02:20:15.1616431Z ~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1616507Z 2026-10-25T02:20:15.1616786Z src/client.ts:1280:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleWriteTextFile")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1617107Z 2026-10-25T02:20:15.1617165Z 1280 handleWriteTextFile: (handler) => 2026-10-25T02:20:15.1617316Z ~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1617399Z 2026-10-25T02:20:15.1617681Z src/client.ts:1284:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleCreateTerminal")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1618007Z 2026-10-25T02:20:15.1618069Z 1284 handleCreateTerminal: (handler) => 2026-10-25T02:20:15.1618217Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1618300Z 2026-10-25T02:20:15.1618627Z src/client.ts:1288:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleTerminalOutput")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1618956Z 2026-10-25T02:20:15.1619014Z 1288 handleTerminalOutput: (handler) => 2026-10-25T02:20:15.1619164Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1619245Z 2026-10-25T02:20:15.1619560Z src/client.ts:1292:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleTerminalWaitForExit")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1619950Z 2026-10-25T02:20:15.1620018Z 1292 handleTerminalWaitForExit: (handler) => 2026-10-25T02:20:15.1620175Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1620263Z 2026-10-25T02:20:15.1620542Z src/client.ts:1296:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleTerminalKill")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1620864Z 2026-10-25T02:20:15.1620923Z 1296 handleTerminalKill: (handler) => 2026-10-25T02:20:15.1621062Z ~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1621142Z 2026-10-25T02:20:15.1621427Z src/client.ts:1300:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleTerminalRelease")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1621753Z 2026-10-25T02:20:15.1621817Z 1300 handleTerminalRelease: (handler) => 2026-10-25T02:20:15.1621965Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1622043Z 2026-10-25T02:20:15.1622324Z src/client.ts:1304:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleSessionUpdate")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1622648Z 2026-10-25T02:20:15.1622709Z 1304 handleSessionUpdate: (handler) => 2026-10-25T02:20:15.1622852Z ~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1622931Z 2026-10-25T02:20:15.1623227Z src/client.ts:1309:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleElicitationComplete")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1623564Z 2026-10-25T02:20:15.1623634Z 1309 handleElicitationComplete: (handler) => 2026-10-25T02:20:15.1623791Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1623874Z 2026-10-25T02:20:15.1624165Z src/client.ts:1314:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleUnknownExtRequest")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1624501Z 2026-10-25T02:20:15.1624567Z 1314 handleUnknownExtRequest: (handler) => 2026-10-25T02:20:15.1624722Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1624805Z 2026-10-25T02:20:15.1625111Z src/client.ts:1319:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleUnknownExtNotification")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1625454Z 2026-10-25T02:20:15.1625527Z 1319 handleUnknownExtNotification: (handler) => 2026-10-25T02:20:15.1625688Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1625773Z 2026-10-25T02:20:15.1626083Z src/client.ts:1324:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleExtRequest")((method, payload, handler) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1626433Z 2026-10-25T02:20:15.1626509Z 1324 handleExtRequest: (method, payload, handler) => 2026-10-25T02:20:15.1626674Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1626748Z 2026-10-25T02:20:15.1627113Z src/client.ts:1329:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleExtNotification")((method, payload, handler) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1627475Z 2026-10-25T02:20:15.1627560Z 1329 handleExtNotification: (method, payload, handler) => 2026-10-25T02:20:15.1627741Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1627821Z 2026-10-25T02:20:15.1628229Z 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-25T02:20:15.1628727Z 2026-10-25T02:20:15.1628811Z 500 const response = yield* Schema.decodeUnknownEffect( 2026-10-25T02:20:15.1628994Z ~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1629103Z 2026-10-25T02:20:15.1629398Z src/protocol.ts:872:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("RpcClient.Protocol.run")((_clientId, f) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1629753Z 2026-10-25T02:20:15.1629805Z 872 run: (_clientId, f) => 2026-10-25T02:20:15.1629938Z ~~~ 2026-10-25T02:20:15.1630001Z 2026-10-25T02:20:15.1630292Z src/protocol.ts:877:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("RpcClient.Protocol.send")((_clientId, request) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1630628Z 2026-10-25T02:20:15.1630688Z 877 send: (_clientId, request) => 2026-10-25T02:20:15.1630822Z ~~~~ 2026-10-25T02:20:15.1630886Z 2026-10-25T02:20:15.1631155Z src/protocol.ts:895:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("RpcServer.Protocol.run")((f) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1631462Z 2026-10-25T02:20:15.1631507Z 895 run: (f) => 2026-10-25T02:20:15.1631621Z ~~~ 2026-10-25T02:20:15.1631683Z 2026-10-25T02:20:15.1631973Z src/protocol.ts:901:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("RpcServer.Protocol.send")((_clientId, response) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1632310Z 2026-10-25T02:20:15.1632368Z 901 send: (_clientId, response) => 2026-10-25T02:20:15.1632504Z ~~~~ 2026-10-25T02:20:15.1632567Z 2026-10-25T02:20:15.1632840Z src/protocol.ts:910:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("RpcServer.Protocol.end")((_clientId) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1633159Z 2026-10-25T02:20:15.1633209Z 910 end: (_clientId) => 2026-10-25T02:20:15.1633331Z ~~~ 2026-10-25T02:20:15.1633390Z 2026-10-25T02:20:15.1633392Z 2026-10-25T02:20:15.1633774Z 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-25T02:20:15.1634198Z 2026-10-25T02:20:15.1634355Z 17 expect(Schema.decodeUnknownSync(AuthEnvironmentScopes)(["review:write"])).toEqual([ 2026-10-25T02:20:15.1634577Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1634666Z 2026-10-25T02:20:15.1634668Z 2026-10-25T02:20:15.1634726Z ~/packages/shared$ tsc --noEmit 2026-10-25T02:20:15.1635079Z src/HostProcess.ts:80:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("defaultValue")(function*() { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1635407Z 2026-10-25T02:20:15.1635462Z 80 defaultValue: () => 2026-10-25T02:20:15.1635582Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.1635648Z 2026-10-25T02:20:15.1635907Z 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-25T02:20:15.1636209Z 2026-10-25T02:20:15.1636257Z 121 onNone: () => 2026-10-25T02:20:15.1636428Z ~~~~~~ 2026-10-25T02:20:15.1636493Z 2026-10-25T02:20:15.1636774Z src/nodeSqliteClient.ts:134:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("checkNodeSqliteCompat")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1637110Z 2026-10-25T02:20:15.1637173Z 134 const checkNodeSqliteCompat = () => { 2026-10-25T02:20:15.1637320Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1637456Z 2026-10-25T02:20:15.1637728Z src/nodeSqliteClient.ts:448:31 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-25T02:20:15.1638129Z 2026-10-25T02:20:15.1638214Z 448 if (unavailable) return Effect.succeed(undefined); 2026-10-25T02:20:15.1638398Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1638503Z 2026-10-25T02:20:15.1638912Z src/nodeSqliteClient.ts:455: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-25T02:20:15.1639371Z 2026-10-25T02:20:15.1639478Z 455 return Effect.suspend((): Effect.Effect => { 2026-10-25T02:20:15.1639673Z ~~~~~~ 2026-10-25T02:20:15.1639733Z 2026-10-25T02:20:15.1640006Z src/nodeSqliteClient.ts:456:29 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-25T02:20:15.1640314Z 2026-10-25T02:20:15.1640394Z 456 if (unavailable) return Effect.succeed(undefined); 2026-10-25T02:20:15.1640575Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1640681Z 2026-10-25T02:20:15.1640948Z src/nodeSqliteClient.ts:476:13 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-25T02:20:15.1641253Z 2026-10-25T02:20:15.1641315Z 476 ? Effect.succeed(undefined) 2026-10-25T02:20:15.1641468Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1641557Z 2026-10-25T02:20:15.1641943Z src/nodeSqliteClient.ts:641: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-25T02:20:15.1642366Z 2026-10-25T02:20:15.1642412Z 641 try { 2026-10-25T02:20:15.1642512Z ~~~~~ 2026-10-25T02:20:15.1642681Z 642 worker = new NodeWorkerThreads.Worker(checkpointWorkerSource, { 2026-10-25T02:20:15.1642897Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1643074Z ... 2026-10-25T02:20:15.1643180Z 653 return undefined; 2026-10-25T02:20:15.1643301Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1643421Z 654 } 2026-10-25T02:20:15.1643520Z ~~~ 2026-10-25T02:20:15.1643576Z 2026-10-25T02:20:15.1643791Z src/symlink.ts:28:7 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-25T02:20:15.1644045Z 2026-10-25T02:20:15.1644101Z 28 Effect.map(Option.some), 2026-10-25T02:20:15.1644237Z ~~~~~~~~~~ 2026-10-25T02:20:15.1644303Z 2026-10-25T02:20:15.1644306Z 2026-10-25T02:20:15.1644362Z ~/apps/marketing$ astro check 2026-10-25T02:20:15.1644516Z ~/packages/source-control-core$ tsc --noEmit 2026-10-25T02:20:15.1644681Z ~/packages/tailscale$ tsc --noEmit 2026-10-25T02:20:15.1645110Z 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-25T02:20:15.1645478Z 2026-10-25T02:20:15.1645549Z 243 handleServerRequest: (method, handler) => 2026-10-25T02:20:15.1645778Z ~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1645855Z 2026-10-25T02:20:15.1646188Z 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-25T02:20:15.1646563Z 2026-10-25T02:20:15.1646641Z 247 handleServerNotification: (method, handler) => 2026-10-25T02:20:15.1646863Z ~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1646947Z 2026-10-25T02:20:15.1647275Z 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-25T02:20:15.1647639Z 2026-10-25T02:20:15.1647710Z 253 handleUnknownServerRequest: (handler) => 2026-10-25T02:20:15.1647872Z ~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1647955Z 2026-10-25T02:20:15.1648290Z 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-25T02:20:15.1648672Z 2026-10-25T02:20:15.1648761Z 257 handleUnknownServerNotification: (handler) => 2026-10-25T02:20:15.1648928Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1649018Z 2026-10-25T02:20:15.1649022Z 2026-10-25T02:20:15.1649078Z ~/packages/ssh$ tsc --noEmit 2026-10-25T02:20:15.1649161Z 2026-10-25T02:20:15.1649223Z ~/packages/provider-core$ tsc --noEmit 2026-10-25T02:20:15.1649344Z 2026-10-25T02:20:15.1649403Z ~/scripts$ tsc --noEmit 2026-10-25T02:20:15.1649751Z 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-25T02:20:15.1650064Z 2026-10-25T02:20:15.1650132Z 51 request: () => Effect.succeed(null), 2026-10-25T02:20:15.1650277Z ~~~~~~~ 2026-10-25T02:20:15.1650343Z 2026-10-25T02:20:15.1650596Z 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-25T02:20:15.1650883Z 2026-10-25T02:20:15.1650936Z 311 onNone: () => 2026-10-25T02:20:15.1651062Z ~~~~~~ 2026-10-25T02:20:15.1651129Z 2026-10-25T02:20:15.1651131Z 2026-10-25T02:20:15.1651207Z ~/packages/source-control-testing$ tsc --noEmit 2026-10-25T02:20:15.1651635Z 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-25T02:20:15.1651992Z 2026-10-25T02:20:15.1652127Z 95 read: (threadId) => Ref.get(sessions).pipe(Effect.map((current) => current.get(threadId))), 2026-10-25T02:20:15.1652355Z ~~~~ 2026-10-25T02:20:15.1652416Z 2026-10-25T02:20:15.1652731Z 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-25T02:20:15.1653090Z 2026-10-25T02:20:15.1653142Z 96 clear: (threadId) => 2026-10-25T02:20:15.1653264Z ~~~~~ 2026-10-25T02:20:15.1653326Z 2026-10-25T02:20:15.1653697Z 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-25T02:20:15.1654109Z 2026-10-25T02:20:15.1654185Z 110 recordHtmlRender: (threadId, input, reference) => 2026-10-25T02:20:15.1654355Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1654426Z 2026-10-25T02:20:15.1654832Z 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-25T02:20:15.1655238Z 2026-10-25T02:20:15.1655313Z 130 takeHtmlRender: (threadId, input, reported) => 2026-10-25T02:20:15.1655475Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1655546Z 2026-10-25T02:20:15.1655905Z src/server/ProviderContinuationRequests.ts:48:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderContinuationRequests.offer")((request) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1656340Z 2026-10-25T02:20:15.1656415Z 48 offer: (request: ProviderContinuationRequest) => 2026-10-25T02:20:15.1656581Z ~~~~~ 2026-10-25T02:20:15.1656644Z 2026-10-25T02:20:15.1656978Z 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-25T02:20:15.1657353Z 2026-10-25T02:20:15.1657405Z 53 invalidate: (key) => 2026-10-25T02:20:15.1657527Z ~~~~~~~~~~ 2026-10-25T02:20:15.1657595Z 2026-10-25T02:20:15.1657881Z src/server/snapshotProbe.test.ts:139:9 - suggestion TS377124: `Effect.provideService` provides this inline single-service layer directly. effect(provideLayerSucceedToProvideService) 2026-10-25T02:20:15.1658203Z 2026-10-25T02:20:15.1658345Z 139 Effect.provide(Layer.succeed(ChildProcessSpawner.ChildProcessSpawner, spawner)), 2026-10-25T02:20:15.1658576Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1658653Z 2026-10-25T02:20:15.1658655Z 2026-10-25T02:20:15.1658714Z ~/packages/provider-acp$ tsc --noEmit 2026-10-25T02:20:15.1658815Z 2026-10-25T02:20:15.1658880Z ~/packages/provider-testing$ tsc --noEmit 2026-10-25T02:20:15.1659033Z 02:20:00 [types] Generated 152ms 2026-10-25T02:20:15.1659277Z 02:20:00 [check] Getting diagnostics for Astro files in /home/runner/_work/t3code/t3code/apps/marketing... 2026-10-25T02:20:15.1659502Z 2026-10-25T02:20:15.1659569Z ~/packages/source-control-gitlab$ tsc --noEmit 2026-10-25T02:20:15.1660076Z src/server/AcpSessionRuntime.ts:485: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-25T02:20:15.1660509Z 2026-10-25T02:20:15.1660555Z 485 try { 2026-10-25T02:20:15.1660666Z ~~~~~ 2026-10-25T02:20:15.1660778Z 486 lease.kill(); 2026-10-25T02:20:15.1660902Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1661016Z ... 2026-10-25T02:20:15.1661124Z 492 continue; 2026-10-25T02:20:15.1661239Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1661350Z 493 } 2026-10-25T02:20:15.1661455Z ~~~~~~~ 2026-10-25T02:20:15.1661516Z 2026-10-25T02:20:15.1661908Z src/server/AcpSessionRuntime.ts:495: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-25T02:20:15.1662337Z 2026-10-25T02:20:15.1662383Z 495 try { 2026-10-25T02:20:15.1662489Z ~~~~~ 2026-10-25T02:20:15.1662615Z 496 populated = lease.populated(); 2026-10-25T02:20:15.1662765Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1662904Z ... 2026-10-25T02:20:15.1663036Z 504 return yield* failure("read state for", cause); 2026-10-25T02:20:15.1663221Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1663368Z 505 } 2026-10-25T02:20:15.1663466Z ~~~~~~~ 2026-10-25T02:20:15.1663525Z 2026-10-25T02:20:15.1663956Z 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-25T02:20:15.1664384Z 2026-10-25T02:20:15.1664430Z 511 try { 2026-10-25T02:20:15.1664533Z ~~~~~ 2026-10-25T02:20:15.1664641Z 512 lease.remove(); 2026-10-25T02:20:15.1664769Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1664883Z ... 2026-10-25T02:20:15.1664999Z 520 lastRemovalFailure = { cause }; 2026-10-25T02:20:15.1665148Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1665324Z 521 } 2026-10-25T02:20:15.1665422Z ~~~~~~~ 2026-10-25T02:20:15.1665479Z 2026-10-25T02:20:15.1665808Z src/server/AcpSessionRuntime.ts:1961: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-25T02:20:15.1666182Z 2026-10-25T02:20:15.1666242Z 1961 Option.match(result, { 2026-10-25T02:20:15.1666383Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.1666468Z 2026-10-25T02:20:15.1666787Z src/server/AcpSessionRuntime.ts:2008:7 - suggestion TS377132: `Effect.andThen` expresses this sequencing more directly than `Effect.flatMap` with a zero-parameter callback. effect(flatMapIgnoredParamToAndThen) 2026-10-25T02:20:15.1667148Z 2026-10-25T02:20:15.1667217Z 2008 Effect.flatMap(() => getStartedState), 2026-10-25T02:20:15.1667372Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1667449Z 2026-10-25T02:20:15.1667791Z src/server/AcpSessionRuntime.ts:2225:7 - suggestion TS377116: `Effect.catchIf` expresses selective recovery more directly than `Effect.catch` with a conditional `Effect.fail` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-25T02:20:15.1668168Z 2026-10-25T02:20:15.1668229Z 2225 Effect.catch((error) => 2026-10-25T02:20:15.1668367Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.1668437Z 2026-10-25T02:20:15.1668809Z src/server/AcpSessionRuntime.ts:2582:15 - suggestion TS377116: `Effect.catchCauseIf` expresses selective recovery more directly than `Effect.catchCause` with a conditional `Effect.failCause` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-25T02:20:15.1669219Z 2026-10-25T02:20:15.1669284Z 2582 Effect.catchCause((cause) => 2026-10-25T02:20:15.1669473Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1669565Z 2026-10-25T02:20:15.1669901Z src/server/adapter.ts:1357:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.getCapabilities")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1670278Z 2026-10-25T02:20:15.1670374Z 1357 getCapabilities: () => Effect.succeed(flavor.capabilities), 2026-10-25T02:20:15.1670562Z ~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1670633Z 2026-10-25T02:20:15.1670999Z src/server/adapter.ts:1358:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.planSelectionTransition")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1671405Z 2026-10-25T02:20:15.1671540Z 1358 planSelectionTransition: (input) => Effect.succeed(acpSelectionTransition(input)), 2026-10-25T02:20:15.1671766Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1671854Z 2026-10-25T02:20:15.1672046Z src/server/adapter.ts:5337:23 - suggestion TS377017: This Effect.gen contains a single return statement. effect(unnecessaryEffectGen) 2026-10-25T02:20:15.1672278Z 2026-10-25T02:20:15.1672345Z 5337 Effect.gen(function* () { 2026-10-25T02:20:15.1672510Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1672708Z 5338 yield* Ref.update(pendingRuntimeRequests, (current) => { 2026-10-25T02:20:15.1672935Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1673102Z ... 2026-10-25T02:20:15.1673210Z 5342 }); 2026-10-25T02:20:15.1673337Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1673515Z 5343 }), 2026-10-25T02:20:15.1673648Z ~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1673727Z 2026-10-25T02:20:15.1673914Z src/server/adapter.ts:6030:21 - suggestion TS377017: This Effect.gen contains a single return statement. effect(unnecessaryEffectGen) 2026-10-25T02:20:15.1674146Z 2026-10-25T02:20:15.1674209Z 6030 Effect.gen(function* () { 2026-10-25T02:20:15.1674366Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1674605Z 6031 yield* Ref.update(pendingRuntimeRequests, (current) => { 2026-10-25T02:20:15.1674821Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1674990Z ... 2026-10-25T02:20:15.1675093Z 6035 }); 2026-10-25T02:20:15.1675224Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1675349Z 6036 }), 2026-10-25T02:20:15.1675471Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1675550Z 2026-10-25T02:20:15.1675862Z src/server/adapter.ts:7060:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("scheduleDeferredFinalize")(function*(context) { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1676209Z 2026-10-25T02:20:15.1676282Z 7060 scheduleDeferredFinalize = (context) => 2026-10-25T02:20:15.1676444Z ~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1676535Z 2026-10-25T02:20:15.1676827Z src/server/clientTerminals.test.ts:364:32 - suggestion TS377113: `Effect.forEach` expresses this effectful array mapping more directly than `Effect.all` over `Array#map`. effect(allOfMapToForEach) 2026-10-25T02:20:15.1677161Z 2026-10-25T02:20:15.1677224Z 364 const results = yield* Effect.all( 2026-10-25T02:20:15.1677378Z ~~~~~~~~~~ 2026-10-25T02:20:15.1677477Z 2026-10-25T02:20:15.1677479Z 2026-10-25T02:20:15.1677547Z ~/packages/source-control-github$ tsc --noEmit 2026-10-25T02:20:15.1678052Z 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-25T02:20:15.1678437Z 2026-10-25T02:20:15.1678570Z 59 shouldRunBackgroundWork: () => Effect.succeed(options.runBackgroundWork ?? true), 2026-10-25T02:20:15.1678796Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1678882Z 2026-10-25T02:20:15.1679228Z 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-25T02:20:15.1679637Z 2026-10-25T02:20:15.1679706Z 61 credentials: (namespace, bindingId) => 2026-10-25T02:20:15.1679859Z ~~~~~~~~~~~ 2026-10-25T02:20:15.1679933Z 2026-10-25T02:20:15.1679936Z 2026-10-25T02:20:15.1680017Z ~/packages/source-control-azure-devops$ tsc --noEmit 2026-10-25T02:20:15.1680433Z 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-25T02:20:15.1680772Z 2026-10-25T02:20:15.1680833Z 470 listMergeRequests: (input) => 2026-10-25T02:20:15.1680975Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1681051Z 2026-10-25T02:20:15.1681343Z 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-25T02:20:15.1681676Z 2026-10-25T02:20:15.1681735Z 507 getMergeRequest: (input) => 2026-10-25T02:20:15.1681875Z ~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1681945Z 2026-10-25T02:20:15.1682306Z 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-25T02:20:15.1682656Z 2026-10-25T02:20:15.1682721Z 534 getRepositoryCloneUrls: (input) => 2026-10-25T02:20:15.1682869Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1682951Z 2026-10-25T02:20:15.1683244Z 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-25T02:20:15.1683634Z 2026-10-25T02:20:15.1683694Z 556 createRepository: (input) => { 2026-10-25T02:20:15.1683838Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1683909Z 2026-10-25T02:20:15.1684207Z 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-25T02:20:15.1684546Z 2026-10-25T02:20:15.1684606Z 621 createMergeRequest: (input) => { 2026-10-25T02:20:15.1684750Z ~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1684830Z 2026-10-25T02:20:15.1685122Z 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-25T02:20:15.1685454Z 2026-10-25T02:20:15.1685510Z 642 getDefaultBranch: (input) => 2026-10-25T02:20:15.1685654Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1685723Z 2026-10-25T02:20:15.1686025Z 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-25T02:20:15.1686370Z 2026-10-25T02:20:15.1686430Z 663 checkoutMergeRequest: (input) => 2026-10-25T02:20:15.1686575Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1686653Z 2026-10-25T02:20:15.1687002Z src/server/GitLabPullRequestCli.ts:1123:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.listMergeRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1687388Z 2026-10-25T02:20:15.1687443Z 1123 listMergeRequests: (input) => { 2026-10-25T02:20:15.1687588Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1687665Z 2026-10-25T02:20:15.1687988Z src/server/GitLabPullRequestCli.ts:1131:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.listNotes")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1688355Z 2026-10-25T02:20:15.1688465Z 1131 listNotes: (input) => notesPage({ ...input, page: 1, collected: [] }), 2026-10-25T02:20:15.1688663Z ~~~~~~~~~ 2026-10-25T02:20:15.1688733Z 2026-10-25T02:20:15.1689066Z src/server/GitLabPullRequestCli.ts:1133:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.listReactions")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1727860Z 2026-10-25T02:20:15.1728011Z 1133 listReactions: (input) => awardsPage({ ...input, cursor: null, page: 1, collected: null }), 2026-10-25T02:20:15.1728235Z ~~~~~~~~~~~~~ 2026-10-25T02:20:15.1728309Z 2026-10-25T02:20:15.1728646Z src/server/GitLabPullRequestCli.ts:1171:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.listCommits")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1729036Z 2026-10-25T02:20:15.1729111Z 1171 listCommits: (input) => 2026-10-25T02:20:15.1729236Z ~~~~~~~~~~~ 2026-10-25T02:20:15.1729304Z 2026-10-25T02:20:15.1729680Z src/server/GitLabPullRequestCli.ts:1196:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.getMergeRequestDiff")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1730057Z 2026-10-25T02:20:15.1730119Z 1196 getMergeRequestDiff: (input) => { 2026-10-25T02:20:15.1730389Z ~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1730463Z 2026-10-25T02:20:15.1730815Z src/server/GitLabPullRequestCli.ts:1267:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.getProjectMergeCapabilities")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1731207Z 2026-10-25T02:20:15.1731275Z 1267 getProjectMergeCapabilities: (input) => 2026-10-25T02:20:15.1731493Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1731578Z 2026-10-25T02:20:15.1731907Z src/server/GitLabPullRequestCli.ts:1287:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.listProjectLabels")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1732275Z 2026-10-25T02:20:15.1732333Z 1287 listProjectLabels: (input) => 2026-10-25T02:20:15.1732471Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1732541Z 2026-10-25T02:20:15.1732873Z src/server/GitLabPullRequestCli.ts:1313:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.listProjectUsers")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1733238Z 2026-10-25T02:20:15.1733292Z 1313 listProjectUsers: (input) => 2026-10-25T02:20:15.1733425Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1733498Z 2026-10-25T02:20:15.1733839Z src/server/GitLabPullRequestCli.ts:1321:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.listReviewerCandidates")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1734220Z 2026-10-25T02:20:15.1734277Z 1321 listReviewerCandidates: (input) => 2026-10-25T02:20:15.1734423Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1734499Z 2026-10-25T02:20:15.1734833Z src/server/GitLabPullRequestCli.ts:1338:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.setReviewerRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1735205Z 2026-10-25T02:20:15.1735260Z 1338 setReviewerRequest: (input) => 2026-10-25T02:20:15.1735396Z ~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1735471Z 2026-10-25T02:20:15.1735801Z src/server/GitLabPullRequestCli.ts:1389:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.updateMergeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1736174Z 2026-10-25T02:20:15.1736226Z 1389 updateMergeRequest: (input) => 2026-10-25T02:20:15.1736363Z ~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1736435Z 2026-10-25T02:20:15.1736770Z src/server/GitLabPullRequestCli.ts:1401:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.commentOnMergeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1737150Z 2026-10-25T02:20:15.1737209Z 1401 commentOnMergeRequest: (input) => 2026-10-25T02:20:15.1737350Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1737428Z 2026-10-25T02:20:15.1737751Z src/server/GitLabPullRequestCli.ts:1410:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.updateNote")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1738111Z 2026-10-25T02:20:15.1738161Z 1410 updateNote: (input) => 2026-10-25T02:20:15.1738286Z ~~~~~~~~~~ 2026-10-25T02:20:15.1738350Z 2026-10-25T02:20:15.1738672Z src/server/GitLabPullRequestCli.ts:1420:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.listDiscussions")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1739039Z 2026-10-25T02:20:15.1739162Z 1420 listDiscussions: (input) => discussionsPage({ ...input, page: 1, collected: [] }), 2026-10-25T02:20:15.1739436Z ~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1739512Z 2026-10-25T02:20:15.1739951Z src/server/GitLabPullRequestCli.ts:1471:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.replyToDiscussion")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1740320Z 2026-10-25T02:20:15.1740376Z 1471 replyToDiscussion: (input) => 2026-10-25T02:20:15.1740554Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1740625Z 2026-10-25T02:20:15.1740964Z src/server/GitLabPullRequestCli.ts:1481:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.setDiscussionResolution")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1741346Z 2026-10-25T02:20:15.1741407Z 1481 setDiscussionResolution: (input) => 2026-10-25T02:20:15.1741551Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1741627Z 2026-10-25T02:20:15.1742034Z 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-25T02:20:15.1742484Z 2026-10-25T02:20:15.1742561Z 211 readChangeRequestTemplate: ({ cwd, treeish }) => 2026-10-25T02:20:15.1742724Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1742808Z 2026-10-25T02:20:15.1743201Z 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-25T02:20:15.1743635Z 2026-10-25T02:20:15.1743692Z 226 listChangeRequests: (input) => { 2026-10-25T02:20:15.1743829Z ~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1743898Z 2026-10-25T02:20:15.1744288Z 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-25T02:20:15.1744717Z 2026-10-25T02:20:15.1744771Z 254 getChangeRequest: (input) => 2026-10-25T02:20:15.1744901Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1744970Z 2026-10-25T02:20:15.1745364Z 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-25T02:20:15.1745797Z 2026-10-25T02:20:15.1745854Z 272 createChangeRequest: (input) => { 2026-10-25T02:20:15.1745992Z ~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1746067Z 2026-10-25T02:20:15.1746468Z 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-25T02:20:15.1746912Z 2026-10-25T02:20:15.1746971Z 301 getRepositoryCloneUrls: (input) => 2026-10-25T02:20:15.1747110Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1747187Z 2026-10-25T02:20:15.1747575Z 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-25T02:20:15.1748010Z 2026-10-25T02:20:15.1748061Z 318 createRepository: (input) => 2026-10-25T02:20:15.1748197Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1748266Z 2026-10-25T02:20:15.1748699Z 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-25T02:20:15.1749136Z 2026-10-25T02:20:15.1749192Z 335 getDefaultBranch: (input) => 2026-10-25T02:20:15.1749337Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1749408Z 2026-10-25T02:20:15.1749840Z 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-25T02:20:15.1750326Z 2026-10-25T02:20:15.1750385Z 349 checkoutChangeRequest: (input) => 2026-10-25T02:20:15.1750525Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1750603Z 2026-10-25T02:20:15.1750605Z 2026-10-25T02:20:15.1750679Z ~/packages/source-control-bitbucket$ tsc --noEmit 2026-10-25T02:20:15.1751100Z 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-25T02:20:15.1751452Z 2026-10-25T02:20:15.1751504Z 403 listPullRequests: (input) => 2026-10-25T02:20:15.1751633Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1751702Z 2026-10-25T02:20:15.1752004Z 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-25T02:20:15.1752347Z 2026-10-25T02:20:15.1752400Z 443 getPullRequest: (input) => 2026-10-25T02:20:15.1752530Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1752595Z 2026-10-25T02:20:15.1752916Z 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-25T02:20:15.1753277Z 2026-10-25T02:20:15.1753336Z 477 getRepositoryCloneUrls: (input) => 2026-10-25T02:20:15.1753479Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1753557Z 2026-10-25T02:20:15.1753863Z 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-25T02:20:15.1754207Z 2026-10-25T02:20:15.1754262Z 493 createRepository: (input) => { 2026-10-25T02:20:15.1754396Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1754465Z 2026-10-25T02:20:15.1754771Z src/server/AzureDevOpsCli.ts:515:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsCli.createPullRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1755118Z 2026-10-25T02:20:15.1755175Z 515 createPullRequest: (input) => 2026-10-25T02:20:15.1755308Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1755380Z 2026-10-25T02:20:15.1755687Z src/server/AzureDevOpsCli.ts:535:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsCli.getDefaultBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1756030Z 2026-10-25T02:20:15.1756082Z 535 getDefaultBranch: (input) => 2026-10-25T02:20:15.1756214Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1756280Z 2026-10-25T02:20:15.1756592Z src/server/AzureDevOpsCli.ts:546:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsCli.checkoutPullRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1756951Z 2026-10-25T02:20:15.1757007Z 546 checkoutPullRequest: (input) => 2026-10-25T02:20:15.1757141Z ~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1757214Z 2026-10-25T02:20:15.1757548Z src/server/AzureDevOpsPullRequestCli.ts:448:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsPullRequestCli.getViewer")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1758040Z 2026-10-25T02:20:15.1758091Z 448 getViewer: (input) => 2026-10-25T02:20:15.1758214Z ~~~~~~~~~ 2026-10-25T02:20:15.1758275Z 2026-10-25T02:20:15.1758625Z src/server/AzureDevOpsPullRequestCli.ts:500:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsPullRequestCli.listPullRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1759081Z 2026-10-25T02:20:15.1759135Z 500 listPullRequests: (input) => 2026-10-25T02:20:15.1759266Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1759362Z 2026-10-25T02:20:15.1759710Z src/server/AzureDevOpsPullRequestCli.ts:514:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsPullRequestCli.getPullRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1760097Z 2026-10-25T02:20:15.1760149Z 514 getPullRequest: (input) => 2026-10-25T02:20:15.1760282Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1760349Z 2026-10-25T02:20:15.1760687Z src/server/AzureDevOpsPullRequestCli.ts:545:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsPullRequestCli.listThreads")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1761077Z 2026-10-25T02:20:15.1761127Z 545 listThreads: (input) => 2026-10-25T02:20:15.1761250Z ~~~~~~~~~~~ 2026-10-25T02:20:15.1761316Z 2026-10-25T02:20:15.1761660Z src/server/AzureDevOpsPullRequestCli.ts:555:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsPullRequestCli.listIterations")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1762045Z 2026-10-25T02:20:15.1762096Z 555 listIterations: (input) => 2026-10-25T02:20:15.1762225Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1762292Z 2026-10-25T02:20:15.1762651Z src/server/AzureDevOpsPullRequestCli.ts:565:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsPullRequestCli.listIterationChanges")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1763053Z 2026-10-25T02:20:15.1763113Z 565 listIterationChanges: (input) => { 2026-10-25T02:20:15.1763251Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1763328Z 2026-10-25T02:20:15.1763676Z src/server/AzureDevOpsPullRequestCli.ts:592:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsPullRequestCli.readItemContent")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1764067Z 2026-10-25T02:20:15.1764122Z 592 readItemContent: (input) => 2026-10-25T02:20:15.1764253Z ~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1764321Z 2026-10-25T02:20:15.1764688Z src/server/AzureDevOpsPullRequestCli.ts:612:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsPullRequestCli.setPullRequestReviewers")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1765099Z 2026-10-25T02:20:15.1765160Z 612 setPullRequestReviewers: (input) => 2026-10-25T02:20:15.1765303Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1765380Z 2026-10-25T02:20:15.1765741Z src/server/AzureDevOpsPullRequestCli.ts:636:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsPullRequestCli.runPullRequestAction")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1766142Z 2026-10-25T02:20:15.1766200Z 636 runPullRequestAction: (input) => 2026-10-25T02:20:15.1766339Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1766415Z 2026-10-25T02:20:15.1766770Z src/server/AzureDevOpsPullRequestCli.ts:655:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsPullRequestCli.updatePullRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1767163Z 2026-10-25T02:20:15.1767265Z 655 updatePullRequest: (input) => 2026-10-25T02:20:15.1767400Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1767471Z 2026-10-25T02:20:15.1767881Z src/server/AzureDevOpsSourceControlProvider.ts:79:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.listChangeRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1768393Z 2026-10-25T02:20:15.1768451Z 79 listChangeRequests: (input) => { 2026-10-25T02:20:15.1768588Z ~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1768660Z 2026-10-25T02:20:15.1769068Z src/server/AzureDevOpsSourceControlProvider.ts:107:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1769772Z 2026-10-25T02:20:15.1769860Z 107 getChangeRequest: (input) => 2026-10-25T02:20:15.1770039Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1770118Z 2026-10-25T02:20:15.1770566Z src/server/AzureDevOpsSourceControlProvider.ts:125:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.createChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1771045Z 2026-10-25T02:20:15.1771107Z 125 createChangeRequest: (input) => { 2026-10-25T02:20:15.1771254Z ~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1771335Z 2026-10-25T02:20:15.1771764Z src/server/AzureDevOpsSourceControlProvider.ts:154:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getRepositoryCloneUrls")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1772231Z 2026-10-25T02:20:15.1772293Z 154 getRepositoryCloneUrls: (input) => 2026-10-25T02:20:15.1772441Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1772522Z 2026-10-25T02:20:15.1772938Z src/server/AzureDevOpsSourceControlProvider.ts:171:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.createRepository")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1773396Z 2026-10-25T02:20:15.1773451Z 171 createRepository: (input) => 2026-10-25T02:20:15.1773586Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1773660Z 2026-10-25T02:20:15.1774070Z src/server/AzureDevOpsSourceControlProvider.ts:188:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getDefaultBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1774523Z 2026-10-25T02:20:15.1774575Z 188 getDefaultBranch: (input) => 2026-10-25T02:20:15.1774707Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1774779Z 2026-10-25T02:20:15.1775199Z src/server/AzureDevOpsSourceControlProvider.ts:202:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.checkoutChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1775666Z 2026-10-25T02:20:15.1775724Z 202 checkoutChangeRequest: (input) => 2026-10-25T02:20:15.1775874Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1775954Z 2026-10-25T02:20:15.1775956Z 2026-10-25T02:20:15.1776033Z ~/packages/source-control-gitcafe$ tsc --noEmit 2026-10-25T02:20:15.1776466Z src/server/GitHubCredentials.ts:240:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubCredentials.invalidate")((rawHost) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1776824Z 2026-10-25T02:20:15.1776881Z 240 invalidate: (rawHost) => { 2026-10-25T02:20:15.1777012Z ~~~~~~~~~~ 2026-10-25T02:20:15.1777075Z 2026-10-25T02:20:15.1777549Z src/server/GitHubPullRequestApi.ts:963:21 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubApiResponseError")(function*(error) { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1777911Z 2026-10-25T02:20:15.1777982Z 963 GitHubApiResponseError: (error) => 2026-10-25T02:20:15.1778156Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1778254Z 2026-10-25T02:20:15.1778629Z src/server/GitHubPullRequestApi.ts:1580:13 - suggestion TS377120: `Effect.filterOrFail` expresses this conditional validation more directly than `Effect.flatMap` with an identity `Effect.succeed` branch. effect(flatMapConditionalToFilterOrFail) 2026-10-25T02:20:15.1779096Z 2026-10-25T02:20:15.1779151Z 1580 Effect.flatMap((runs) => 2026-10-25T02:20:15.1779294Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1779399Z 2026-10-25T02:20:15.1779744Z src/server/GitHubPullRequestApi.ts:1712:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.getViewerLogin")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1780124Z 2026-10-25T02:20:15.1780179Z 1712 getViewerLogin: (input) => 2026-10-25T02:20:15.1780311Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1780380Z 2026-10-25T02:20:15.1780720Z src/server/GitHubPullRequestApi.ts:1715:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.listPullRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1781106Z 2026-10-25T02:20:15.1781163Z 1715 listPullRequests: (input) => { 2026-10-25T02:20:15.1781306Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1781379Z 2026-10-25T02:20:15.1781744Z src/server/GitHubPullRequestApi.ts:1838:9 - suggestion TS377120: `Effect.filterOrElse` expresses this conditional validation more directly than `Effect.flatMap` with an identity `Effect.succeed` branch. effect(flatMapConditionalToFilterOrFail) 2026-10-25T02:20:15.1782149Z 2026-10-25T02:20:15.1782206Z 1838 Effect.flatMap((batch) => { 2026-10-25T02:20:15.1782345Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1782422Z 2026-10-25T02:20:15.1782767Z src/server/GitHubPullRequestApi.ts:1875:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.searchPullRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1783149Z 2026-10-25T02:20:15.1783206Z 1875 searchPullRequests: (input) => { 2026-10-25T02:20:15.1783348Z ~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1783423Z 2026-10-25T02:20:15.1783774Z src/server/GitHubPullRequestApi.ts:1946:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.getPullRequestPreview")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1784162Z 2026-10-25T02:20:15.1784226Z 1946 getPullRequestPreview: (input) => { 2026-10-25T02:20:15.1784374Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1784455Z 2026-10-25T02:20:15.1784798Z src/server/GitHubPullRequestApi.ts:1959:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.getPullRequestStack")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1785180Z 2026-10-25T02:20:15.1785240Z 1959 getPullRequestStack: (input) => { 2026-10-25T02:20:15.1785381Z ~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1785460Z 2026-10-25T02:20:15.1785797Z src/server/GitHubPullRequestApi.ts:2035:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.getPullRequestDiff")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1786177Z 2026-10-25T02:20:15.1786237Z 2035 getPullRequestDiff: (input) => { 2026-10-25T02:20:15.1786377Z ~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1786450Z 2026-10-25T02:20:15.1786848Z src/server/GitHubPullRequestApi.ts:2082:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.getReviewThreadComments")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1787242Z 2026-10-25T02:20:15.1787307Z 2082 getReviewThreadComments: (input) => { 2026-10-25T02:20:15.1787459Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1787543Z 2026-10-25T02:20:15.1787881Z src/server/GitHubPullRequestApi.ts:2224:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.listActorAvatars")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1788300Z 2026-10-25T02:20:15.1788357Z 2224 listActorAvatars: (input) => { 2026-10-25T02:20:15.1788497Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1788568Z 2026-10-25T02:20:15.1788908Z src/server/GitHubPullRequestApi.ts:2233:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.getViewerAccess")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1789279Z 2026-10-25T02:20:15.1789364Z 2233 getViewerAccess: (input) => { 2026-10-25T02:20:15.1789501Z ~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1789570Z 2026-10-25T02:20:15.1789916Z src/server/GitHubPullRequestApi.ts:2245:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.listReviewerCandidates")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1790301Z 2026-10-25T02:20:15.1790363Z 2245 listReviewerCandidates: (input) => { 2026-10-25T02:20:15.1790509Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1790584Z 2026-10-25T02:20:15.1790919Z src/server/GitHubPullRequestApi.ts:2257:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.setReviewerRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1791292Z 2026-10-25T02:20:15.1791350Z 2257 setReviewerRequest: (input) => { 2026-10-25T02:20:15.1791485Z ~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1791558Z 2026-10-25T02:20:15.1791893Z src/server/GitHubPullRequestApi.ts:2270:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.listLabelCandidates")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1792269Z 2026-10-25T02:20:15.1792325Z 2270 listLabelCandidates: (input) => { 2026-10-25T02:20:15.1792465Z ~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1792540Z 2026-10-25T02:20:15.1792878Z src/server/GitHubPullRequestApi.ts:2282:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.listRepositoryLabels")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1793262Z 2026-10-25T02:20:15.1793320Z 2282 listRepositoryLabels: (input) => { 2026-10-25T02:20:15.1793462Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1793539Z 2026-10-25T02:20:15.1793886Z src/server/GitHubPullRequestApi.ts:2294:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.searchRepositoryAuthors")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1794272Z 2026-10-25T02:20:15.1794333Z 2294 searchRepositoryAuthors: (input) => { 2026-10-25T02:20:15.1794480Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1794561Z 2026-10-25T02:20:15.1794876Z src/server/GitHubPullRequestApi.ts:2306:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.setLabels")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1795230Z 2026-10-25T02:20:15.1795280Z 2306 setLabels: (input) => { 2026-10-25T02:20:15.1795401Z ~~~~~~~~~ 2026-10-25T02:20:15.1795464Z 2026-10-25T02:20:15.1795846Z src/server/GitHubPullRequestApi.ts:2333:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.runPullRequestAction")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1796224Z 2026-10-25T02:20:15.1796282Z 2333 runPullRequestAction: (input) => { 2026-10-25T02:20:15.1796421Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1796502Z 2026-10-25T02:20:15.1796835Z src/server/GitHubPullRequestApi.ts:2589:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.commentOnPullRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1797253Z 2026-10-25T02:20:15.1797310Z 2589 commentOnPullRequest: (input) => 2026-10-25T02:20:15.1797445Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1797523Z 2026-10-25T02:20:15.1797848Z src/server/GitHubPullRequestApi.ts:2599:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.submitReview")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1798312Z 2026-10-25T02:20:15.1798364Z 2599 submitReview: (input) => { 2026-10-25T02:20:15.1798492Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.1798559Z 2026-10-25T02:20:15.1798893Z src/server/GitHubPullRequestApi.ts:2616:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.replyToReviewThread")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1799268Z 2026-10-25T02:20:15.1799352Z 2616 replyToReviewThread: (input) => 2026-10-25T02:20:15.1799490Z ~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1799564Z 2026-10-25T02:20:15.1799916Z src/server/GitHubPullRequestApi.ts:2621:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.getPullRequestFilesViewed")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1800310Z 2026-10-25T02:20:15.1800376Z 2621 getPullRequestFilesViewed: (input) => { 2026-10-25T02:20:15.1800530Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1800613Z 2026-10-25T02:20:15.1800961Z src/server/GitHubPullRequestApi.ts:2649:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.getPullRequestFileStats")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1801351Z 2026-10-25T02:20:15.1801414Z 2649 getPullRequestFileStats: (input) => { 2026-10-25T02:20:15.1801562Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1801640Z 2026-10-25T02:20:15.1801995Z src/server/GitHubPullRequestApi.ts:2677:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.setPullRequestFilesViewed")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1802387Z 2026-10-25T02:20:15.1802453Z 2677 setPullRequestFilesViewed: (input) => { 2026-10-25T02:20:15.1802603Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1802691Z 2026-10-25T02:20:15.1803041Z src/server/GitHubPullRequestApi.ts:2697:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.setReviewThreadResolution")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1803431Z 2026-10-25T02:20:15.1803493Z 2697 setReviewThreadResolution: (input) => 2026-10-25T02:20:15.1803644Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1803725Z 2026-10-25T02:20:15.1804048Z src/server/GitHubPullRequestApi.ts:2703:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.setReaction")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1804411Z 2026-10-25T02:20:15.1804461Z 2703 setReaction: (input) => { 2026-10-25T02:20:15.1804585Z ~~~~~~~~~~~ 2026-10-25T02:20:15.1804651Z 2026-10-25T02:20:15.1805064Z src/server/GitHubPullRequestApi.ts:2736:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.updatePullRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1805436Z 2026-10-25T02:20:15.1805491Z 2736 updatePullRequest: (input) => 2026-10-25T02:20:15.1805628Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1805699Z 2026-10-25T02:20:15.1806025Z src/server/GitHubPullRequestApi.ts:2750:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.updateComment")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1806443Z 2026-10-25T02:20:15.1806496Z 2750 updateComment: (input) => 2026-10-25T02:20:15.1806620Z ~~~~~~~~~~~~~ 2026-10-25T02:20:15.1806688Z 2026-10-25T02:20:15.1807105Z src/server/GitHubSourceControlProvider.ts:847:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.readChangeRequestTemplate")((_) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1807560Z 2026-10-25T02:20:15.1807637Z 847 readChangeRequestTemplate: ({ cwd, treeish }) => 2026-10-25T02:20:15.1808037Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1808118Z 2026-10-25T02:20:15.1808504Z src/server/GitHubSourceControlProvider.ts:885:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.recordBranchBase")((_) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1808934Z 2026-10-25T02:20:15.1809008Z 885 recordBranchBase: ({ cwd, branch, baseBranch }) => 2026-10-25T02:20:15.1809166Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1809234Z 2026-10-25T02:20:15.1809670Z src/server/GitHubSourceControlProvider.ts:907:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.listChangeRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1810107Z 2026-10-25T02:20:15.1810163Z 907 listChangeRequests: (input) => 2026-10-25T02:20:15.1810298Z ~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1810369Z 2026-10-25T02:20:15.1810761Z src/server/GitHubSourceControlProvider.ts:925:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1811198Z 2026-10-25T02:20:15.1811252Z 925 getChangeRequest: (input) => 2026-10-25T02:20:15.1811384Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1811450Z 2026-10-25T02:20:15.1811852Z src/server/GitHubSourceControlProvider.ts:1036:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.checkoutChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1812296Z 2026-10-25T02:20:15.1812355Z 1036 checkoutChangeRequest: (input) => 2026-10-25T02:20:15.1812496Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1812571Z 2026-10-25T02:20:15.1812928Z src/server/gitHubGraphQlClient.ts:106: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-25T02:20:15.1813369Z 2026-10-25T02:20:15.1813424Z 106 return yield* Effect.fail(error); 2026-10-25T02:20:15.1813560Z ~~~~~ 2026-10-25T02:20:15.1813625Z 2026-10-25T02:20:15.1813934Z src/server/BitbucketApi.ts:1002:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketApi.listPullRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1814279Z 2026-10-25T02:20:15.1814338Z 1002 listPullRequests: (input) => 2026-10-25T02:20:15.1814488Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1814565Z 2026-10-25T02:20:15.1814911Z src/server/BitbucketApi.ts:1029:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketApi.getPullRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1815249Z 2026-10-25T02:20:15.1815303Z 1029 getPullRequest: (input) => 2026-10-25T02:20:15.1815435Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1815503Z 2026-10-25T02:20:15.1815819Z src/server/BitbucketApi.ts:1031:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketApi.getRepositoryCloneUrls")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1816219Z 2026-10-25T02:20:15.1816280Z 1031 getRepositoryCloneUrls: (input) => 2026-10-25T02:20:15.1816424Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1816501Z 2026-10-25T02:20:15.1816799Z src/server/BitbucketApi.ts:1033:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketApi.createRepository")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1817147Z 2026-10-25T02:20:15.1817203Z 1033 createRepository: (input) => 2026-10-25T02:20:15.1817336Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1817408Z 2026-10-25T02:20:15.1817711Z src/server/BitbucketApi.ts:1098:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketApi.getDefaultBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1818060Z 2026-10-25T02:20:15.1818112Z 1098 getDefaultBranch: (input) => 2026-10-25T02:20:15.1818244Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1818315Z 2026-10-25T02:20:15.1818733Z src/server/BitbucketPullRequestApi.ts:529:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.getViewer")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1819097Z 2026-10-25T02:20:15.1819145Z 529 getViewer: () => 2026-10-25T02:20:15.1819258Z ~~~~~~~~~ 2026-10-25T02:20:15.1819322Z 2026-10-25T02:20:15.1819699Z src/server/BitbucketPullRequestApi.ts:544:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.listPullRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1820082Z 2026-10-25T02:20:15.1820135Z 544 listPullRequests: (input) => 2026-10-25T02:20:15.1820269Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1820340Z 2026-10-25T02:20:15.1820677Z src/server/BitbucketPullRequestApi.ts:568:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.getPullRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1821052Z 2026-10-25T02:20:15.1821106Z 568 getPullRequest: (input) => 2026-10-25T02:20:15.1821235Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1821304Z 2026-10-25T02:20:15.1821667Z src/server/BitbucketPullRequestApi.ts:579:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.getRepositoryPermission")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1822064Z 2026-10-25T02:20:15.1822126Z 579 getRepositoryPermission: (input) => 2026-10-25T02:20:15.1822270Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1822347Z 2026-10-25T02:20:15.1822688Z src/server/BitbucketPullRequestApi.ts:592:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.getFileRevisions")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1823069Z 2026-10-25T02:20:15.1823124Z 592 getFileRevisions: (input) => 2026-10-25T02:20:15.1823254Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1823322Z 2026-10-25T02:20:15.1823658Z src/server/BitbucketPullRequestApi.ts:608:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.getDiffStat")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1824075Z 2026-10-25T02:20:15.1824126Z 608 getDiffStat: (input) => 2026-10-25T02:20:15.1824246Z ~~~~~~~~~~~ 2026-10-25T02:20:15.1824310Z 2026-10-25T02:20:15.1824644Z src/server/BitbucketPullRequestApi.ts:616:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.getMergeability")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1825064Z 2026-10-25T02:20:15.1825118Z 616 getMergeability: (input) => 2026-10-25T02:20:15.1825254Z ~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1825320Z 2026-10-25T02:20:15.1825657Z src/server/BitbucketPullRequestApi.ts:625:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.listComments")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1826031Z 2026-10-25T02:20:15.1826083Z 625 listComments: (input) => 2026-10-25T02:20:15.1826209Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.1826277Z 2026-10-25T02:20:15.1826605Z src/server/BitbucketPullRequestApi.ts:635:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.listCommits")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1826972Z 2026-10-25T02:20:15.1827022Z 635 listCommits: (input) => 2026-10-25T02:20:15.1827142Z ~~~~~~~~~~~ 2026-10-25T02:20:15.1827206Z 2026-10-25T02:20:15.1827532Z src/server/BitbucketPullRequestApi.ts:646:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.listChecks")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1827899Z 2026-10-25T02:20:15.1827951Z 646 listChecks: (input) => 2026-10-25T02:20:15.1828072Z ~~~~~~~~~~ 2026-10-25T02:20:15.1828136Z 2026-10-25T02:20:15.1828491Z src/server/BitbucketPullRequestApi.ts:657:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.listReviewerCandidates")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1828887Z 2026-10-25T02:20:15.1828945Z 657 listReviewerCandidates: (input) => 2026-10-25T02:20:15.1829090Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1829165Z 2026-10-25T02:20:15.1829542Z src/server/BitbucketPullRequestApi.ts:690:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.setReviewerRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1829930Z 2026-10-25T02:20:15.1829986Z 690 setReviewerRequest: (input) => 2026-10-25T02:20:15.1830122Z ~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1830194Z 2026-10-25T02:20:15.1830518Z src/server/BitbucketPullRequestApi.ts:715:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.runAction")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1830887Z 2026-10-25T02:20:15.1830936Z 715 runAction: (input) => 2026-10-25T02:20:15.1831058Z ~~~~~~~~~ 2026-10-25T02:20:15.1831121Z 2026-10-25T02:20:15.1831467Z src/server/BitbucketPullRequestApi.ts:732:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.updateChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1831856Z 2026-10-25T02:20:15.1831913Z 732 updateChangeRequest: (input) => 2026-10-25T02:20:15.1832051Z ~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1832124Z 2026-10-25T02:20:15.1832448Z src/server/BitbucketPullRequestApi.ts:747:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.comment")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1832808Z 2026-10-25T02:20:15.1832854Z 747 comment: (input) => 2026-10-25T02:20:15.1832972Z ~~~~~~~ 2026-10-25T02:20:15.1833083Z 2026-10-25T02:20:15.1833420Z src/server/BitbucketPullRequestApi.ts:758:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.updateComment")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1833798Z 2026-10-25T02:20:15.1833852Z 758 updateComment: (input) => 2026-10-25T02:20:15.1833983Z ~~~~~~~~~~~~~ 2026-10-25T02:20:15.1834052Z 2026-10-25T02:20:15.1834428Z src/server/BitbucketPullRequestApi.ts:771:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.submitReview")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1834805Z 2026-10-25T02:20:15.1834855Z 771 submitReview: (input) => 2026-10-25T02:20:15.1834981Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.1835049Z 2026-10-25T02:20:15.1835388Z src/server/BitbucketPullRequestApi.ts:809:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.replyToComment")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1835770Z 2026-10-25T02:20:15.1835824Z 809 replyToComment: (input) => 2026-10-25T02:20:15.1835954Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1836022Z 2026-10-25T02:20:15.1836377Z src/server/BitbucketPullRequestApi.ts:823:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.setCommentResolution")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1836775Z 2026-10-25T02:20:15.1836835Z 823 setCommentResolution: (input) => 2026-10-25T02:20:15.1836976Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1837054Z 2026-10-25T02:20:15.1837462Z 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-25T02:20:15.1837908Z 2026-10-25T02:20:15.1838015Z 47 listChangeRequests: (input) => { 2026-10-25T02:20:15.1838156Z ~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1838227Z 2026-10-25T02:20:15.1838626Z 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-25T02:20:15.1839069Z 2026-10-25T02:20:15.1839122Z 75 getChangeRequest: (input) => 2026-10-25T02:20:15.1839254Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1839349Z 2026-10-25T02:20:15.1839753Z 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-25T02:20:15.1840196Z 2026-10-25T02:20:15.1840255Z 92 createChangeRequest: (input) => { 2026-10-25T02:20:15.1840396Z ~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1840468Z 2026-10-25T02:20:15.1840881Z 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-25T02:20:15.1841338Z 2026-10-25T02:20:15.1841399Z 121 getRepositoryCloneUrls: (input) => 2026-10-25T02:20:15.1841541Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1841617Z 2026-10-25T02:20:15.1842022Z 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-25T02:20:15.1842464Z 2026-10-25T02:20:15.1842517Z 137 createRepository: (input) => 2026-10-25T02:20:15.1842709Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1842780Z 2026-10-25T02:20:15.1843173Z 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-25T02:20:15.1843608Z 2026-10-25T02:20:15.1843660Z 153 getDefaultBranch: (input) => 2026-10-25T02:20:15.1843842Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1843913Z 2026-10-25T02:20:15.1844322Z 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-25T02:20:15.1844770Z 2026-10-25T02:20:15.1844827Z 171 checkoutChangeRequest: (input) => 2026-10-25T02:20:15.1844970Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1845048Z 2026-10-25T02:20:15.1845051Z 2026-10-25T02:20:15.1845120Z ~/packages/source-control-forgejo$ tsc --noEmit 2026-10-25T02:20:15.1845234Z 2026-10-25T02:20:15.1845291Z ~/packages/provider-grok$ tsc --noEmit 2026-10-25T02:20:15.1845683Z src/server/GitCafeCredentials.ts:163:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitCafeCredentials.get")((host) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1846022Z 2026-10-25T02:20:15.1846067Z 163 get: (host) => 2026-10-25T02:20:15.1846177Z ~~~ 2026-10-25T02:20:15.1846235Z 2026-10-25T02:20:15.1846542Z src/server/GitCafeCredentials.ts:176:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitCafeCredentials.invalidate")((host) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1846891Z 2026-10-25T02:20:15.1846989Z 176 invalidate: (host) => Cache.invalidate(cache, normalizeHost(host)), 2026-10-25T02:20:15.1847174Z ~~~~~~~~~~ 2026-10-25T02:20:15.1847240Z 2026-10-25T02:20:15.1847541Z src/server/GitCafeCredentials.ts:177:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitCafeCredentials.cliEnv")((host) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1847882Z 2026-10-25T02:20:15.1847931Z 177 cliEnv: (host) => 2026-10-25T02:20:15.1848043Z ~~~~~~ 2026-10-25T02:20:15.1848104Z 2026-10-25T02:20:15.1848363Z src/server/GitCafePullRequestProvider.ts:414:9 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-25T02:20:15.1848656Z 2026-10-25T02:20:15.1848708Z 414 Effect.map(Option.some), 2026-10-25T02:20:15.1848840Z ~~~~~~~~~~ 2026-10-25T02:20:15.1848908Z 2026-10-25T02:20:15.1849159Z src/server/GitCafePullRequestProvider.ts:419:17 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1849481Z 2026-10-25T02:20:15.1849545Z 419 : Effect.succeed(Option.none()), 2026-10-25T02:20:15.1849698Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1849782Z 2026-10-25T02:20:15.1850040Z src/server/GitCafePullRequestProvider.ts:727:13 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-25T02:20:15.1850338Z 2026-10-25T02:20:15.1850394Z 727 Effect.map(Option.some), 2026-10-25T02:20:15.1850533Z ~~~~~~~~~~ 2026-10-25T02:20:15.1850606Z 2026-10-25T02:20:15.1850854Z src/server/GitCafePullRequestProvider.ts:732:21 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1851143Z 2026-10-25T02:20:15.1851210Z 732 : Effect.succeed(Option.none()), 2026-10-25T02:20:15.1851361Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1851448Z 2026-10-25T02:20:15.1851798Z src/server/GitCafePullRequestProvider.ts:745:15 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("readPage")((rows, after) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1852136Z 2026-10-25T02:20:15.1852221Z 745 const readPage = (rows: number, after: string | null) => { 2026-10-25T02:20:15.1852392Z ~~~~~~~~ 2026-10-25T02:20:15.1852466Z 2026-10-25T02:20:15.1852866Z src/server/GitCafePullRequestProvider.ts:862:13 - suggestion TS377116: `Effect.catchIf` expresses selective recovery more directly than `Effect.catch` with a conditional `Effect.fail` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-25T02:20:15.1853254Z 2026-10-25T02:20:15.1853307Z 862 Effect.catch((error) => 2026-10-25T02:20:15.1853444Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.1853519Z 2026-10-25T02:20:15.1853868Z src/server/GitCafePullRequestProvider.ts:944:19 - suggestion TS377116: `Effect.catchIf` expresses selective recovery more directly than `Effect.catch` with a conditional `Effect.fail` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-25T02:20:15.1854255Z 2026-10-25T02:20:15.1854313Z 944 Effect.catch((error) => 2026-10-25T02:20:15.1854458Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.1854541Z 2026-10-25T02:20:15.1854543Z 2026-10-25T02:20:15.1854599Z ~/packages/provider-pi$ tsc --noEmit 2026-10-25T02:20:15.1855093Z src/server/ForgejoSourceControlProvider.ts:359:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1855535Z 2026-10-25T02:20:15.1855589Z 359 getChangeRequest: (input) => 2026-10-25T02:20:15.1855719Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1855790Z 2026-10-25T02:20:15.1855792Z 2026-10-25T02:20:15.1855850Z ~/packages/provider-muse$ tsc --noEmit 2026-10-25T02:20:15.1856277Z src/server/driver.ts:171:7 - suggestion TS377120: `Effect.filterOrElse` expresses this conditional validation more directly than `Effect.flatMap` with an identity `Effect.succeed` branch. effect(flatMapConditionalToFilterOrFail) 2026-10-25T02:20:15.1856653Z 2026-10-25T02:20:15.1856707Z 171 Effect.flatMap((snapshot) => 2026-10-25T02:20:15.1856839Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1856910Z 2026-10-25T02:20:15.1857157Z src/server/xaiAcpExtension.ts:1446:15 - suggestion TS377009: The previous Effect does not fail, so this error-handling branch will never run. effect(catchUnfailableEffect) 2026-10-25T02:20:15.1857442Z 2026-10-25T02:20:15.1857511Z 1446 }).pipe(Effect.catch(() => Effect.void)); 2026-10-25T02:20:15.1857667Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.1857745Z 2026-10-25T02:20:15.1858015Z src/server/xaiAcpExtension.ts:1446:15 - suggestion TS377099: `Effect.ignore` expresses ignored failure more directly than `Effect.catch` returning `Effect.void`. effect(catchToIgnore) 2026-10-25T02:20:15.1858319Z 2026-10-25T02:20:15.1858386Z 1446 }).pipe(Effect.catch(() => Effect.void)); 2026-10-25T02:20:15.1858535Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.1858613Z 2026-10-25T02:20:15.1858971Z src/server/xaiAcpExtension.ts:1527:13 - suggestion TS377116: `Effect.catchCauseIf` expresses selective recovery more directly than `Effect.catchCause` with a conditional `Effect.failCause` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-25T02:20:15.1859554Z 2026-10-25T02:20:15.1859663Z 1527 Effect.catchCause((cause) => 2026-10-25T02:20:15.1859834Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1859920Z 2026-10-25T02:20:15.1859922Z 2026-10-25T02:20:15.1859993Z ~/packages/provider-opencode$ tsc --noEmit 2026-10-25T02:20:15.1860440Z src/server/adapter.ts:434:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.getCapabilities")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1860944Z 2026-10-25T02:20:15.1861078Z 434 getCapabilities: () => Effect.succeed(PiProviderCapabilitiesV2), 2026-10-25T02:20:15.1861266Z ~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1861334Z 2026-10-25T02:20:15.1861690Z src/server/adapter.ts:435:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.planSelectionTransition")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1862219Z 2026-10-25T02:20:15.1862347Z 435 planSelectionTransition: () => Effect.succeed(turnScopedSelectionTransition()), 2026-10-25T02:20:15.1862558Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1862636Z 2026-10-25T02:20:15.1862861Z src/server/adapter.ts:1662:31 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-25T02:20:15.1863121Z 2026-10-25T02:20:15.1863189Z 1662 Effect.map(Option.some), 2026-10-25T02:20:15.1863354Z ~~~~~~~~~~ 2026-10-25T02:20:15.1863448Z 2026-10-25T02:20:15.1863661Z src/server/adapter.ts:1665:29 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1863920Z 2026-10-25T02:20:15.1863989Z 1665 : Effect.succeed(Option.none()), 2026-10-25T02:20:15.1864153Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1864252Z 2026-10-25T02:20:15.1864504Z src/server/rpc.ts:318:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("onSuccess")(function*() { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1864795Z 2026-10-25T02:20:15.1864842Z 318 onSuccess: () => 2026-10-25T02:20:15.1864960Z ~~~~~~~~~ 2026-10-25T02:20:15.1865022Z 2026-10-25T02:20:15.1865233Z src/server/rpc.ts:325:17 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-25T02:20:15.1865482Z 2026-10-25T02:20:15.1865539Z 325 Effect.map(Option.some), 2026-10-25T02:20:15.1865682Z ~~~~~~~~~~ 2026-10-25T02:20:15.1865759Z 2026-10-25T02:20:15.1865761Z 2026-10-25T02:20:15.1865821Z ~/packages/provider-cursor$ tsc --noEmit 2026-10-25T02:20:15.1866247Z src/server/adapter.ts:280:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.getCapabilities")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1866624Z 2026-10-25T02:20:15.1866725Z 280 getCapabilities: () => Effect.succeed(MuseProviderCapabilitiesV2), 2026-10-25T02:20:15.1866911Z ~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1866980Z 2026-10-25T02:20:15.1867326Z src/server/adapter.ts:281:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.planSelectionTransition")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1867714Z 2026-10-25T02:20:15.1867835Z 281 planSelectionTransition: () => Effect.succeed(turnScopedSelectionTransition()), 2026-10-25T02:20:15.1868045Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1868122Z 2026-10-25T02:20:15.1868397Z src/server/adapter.ts:382:13 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("TimeoutError")(function*(cause) { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1868712Z 2026-10-25T02:20:15.1868764Z 382 TimeoutError: (cause) => 2026-10-25T02:20:15.1868899Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.1868974Z 2026-10-25T02:20:15.1869194Z src/server/adapter.ts:1359:35 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-25T02:20:15.1869487Z 2026-10-25T02:20:15.1869659Z 1359 wake === held ? Effect.map(dispatch, Option.some) : Effect.succeed(Option.none()), 2026-10-25T02:20:15.1869919Z ~~~~~~~~~~ 2026-10-25T02:20:15.1870013Z 2026-10-25T02:20:15.1870226Z src/server/adapter.ts:1359:71 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1870485Z 2026-10-25T02:20:15.1870607Z 1359 wake === held ? Effect.map(dispatch, Option.some) : Effect.succeed(Option.none()), 2026-10-25T02:20:15.1870963Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1871075Z 2026-10-25T02:20:15.1871077Z 2026-10-25T02:20:15.1871145Z ~/packages/provider-acp-registry$ tsc --noEmit 2026-10-25T02:20:15.1871533Z 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-25T02:20:15.1871854Z 2026-10-25T02:20:15.1871913Z 147 return Effect.succeed(undefined); 2026-10-25T02:20:15.1872050Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1872134Z 2026-10-25T02:20:15.1872543Z 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-25T02:20:15.1872981Z 2026-10-25T02:20:15.1873041Z 188 if (!recordable) return Effect.void; 2026-10-25T02:20:15.1873185Z ~~~~~~ 2026-10-25T02:20:15.1873267Z 2026-10-25T02:20:15.1873661Z src/server/OpenCodeServerLedger.ts:206: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-25T02:20:15.1874095Z 2026-10-25T02:20:15.1874144Z 206 return Effect.void; 2026-10-25T02:20:15.1874266Z ~~~~~~ 2026-10-25T02:20:15.1874327Z 2026-10-25T02:20:15.1874717Z src/server/OpenCodeServerLedger.ts:226: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-25T02:20:15.1875151Z 2026-10-25T02:20:15.1875198Z 226 return fs 2026-10-25T02:20:15.1875302Z ~~~~~~ 2026-10-25T02:20:15.1875365Z 2026-10-25T02:20:15.1875674Z src/server/OpenCodeServerLedger.ts:309:29 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OpenCodeServerLedger.track")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1876024Z 2026-10-25T02:20:15.1876130Z 309 OpenCodeServerLedger.of({ track: () => Effect.succeed(Effect.void) }), 2026-10-25T02:20:15.1876327Z ~~~~~ 2026-10-25T02:20:15.1876412Z 2026-10-25T02:20:15.1876728Z 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-25T02:20:15.1877082Z 2026-10-25T02:20:15.1877135Z 169 withServer: (use) => 2026-10-25T02:20:15.1877255Z ~~~~~~~~~~ 2026-10-25T02:20:15.1877321Z 2026-10-25T02:20:15.1877722Z 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-25T02:20:15.1878259Z 2026-10-25T02:20:15.1878384Z 103 const OPENCODE_TEST_SETTINGS = Schema.decodeUnknownSync(OpenCodeSettings)({}); 2026-10-25T02:20:15.1878604Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1878707Z 2026-10-25T02:20:15.1879125Z src/server/adapter.ts:918:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.getCapabilities")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1879539Z 2026-10-25T02:20:15.1879650Z 918 getCapabilities: () => Effect.succeed(OpenCodeProviderCapabilitiesV2), 2026-10-25T02:20:15.1879844Z ~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1879910Z 2026-10-25T02:20:15.1880307Z src/server/adapter.ts:919:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.planSelectionTransition")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1880689Z 2026-10-25T02:20:15.1880811Z 919 planSelectionTransition: () => Effect.succeed(turnScopedSelectionTransition()), 2026-10-25T02:20:15.1881020Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1881100Z 2026-10-25T02:20:15.1881394Z src/server/adapter.ts:987:33 - suggestion TS377111: `AbortController` is manually constructed inside Effect code. Use `Effect.abortSignal` for Effect-managed cancellation. effect(abortControllerInEffect) 2026-10-25T02:20:15.1881725Z 2026-10-25T02:20:15.1881800Z 987 const abortController = new AbortController(); 2026-10-25T02:20:15.1881972Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1882069Z 2026-10-25T02:20:15.1882398Z src/server/adapter.ts:1064: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-25T02:20:15.1882765Z 2026-10-25T02:20:15.1882842Z 1064 if (failure) return yield* Effect.fail(failure); 2026-10-25T02:20:15.1883007Z ~~~~~ 2026-10-25T02:20:15.1883094Z 2026-10-25T02:20:15.1883376Z src/server/adapter.ts:1560:15 - suggestion TS377095: `Effect.orElseSucceed` expresses the same recovery more directly than `Effect.catch` followed by `Effect.succeed`. effect(catchToOrElseSucceed) 2026-10-25T02:20:15.1883693Z 2026-10-25T02:20:15.1883771Z 1560 Effect.catch(() => Effect.succeed(undefined)), 2026-10-25T02:20:15.1883933Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.1884010Z 2026-10-25T02:20:15.1884264Z src/server/adapter.ts:1560:34 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-25T02:20:15.1884564Z 2026-10-25T02:20:15.1884641Z 1560 Effect.catch(() => Effect.succeed(undefined)), 2026-10-25T02:20:15.1884813Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1884916Z 2026-10-25T02:20:15.1885214Z src/server/adapter.ts:3160:43 - suggestion TS377111: `AbortController` is manually constructed inside Effect code. Use `Effect.abortSignal` for Effect-managed cancellation. effect(abortControllerInEffect) 2026-10-25T02:20:15.1885547Z 2026-10-25T02:20:15.1885631Z 3160 admissionAbortController: new AbortController(), 2026-10-25T02:20:15.1885817Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1885921Z 2026-10-25T02:20:15.1886208Z src/server/adapter.ts:3320:47 - suggestion TS377111: `AbortController` is manually constructed inside Effect code. Use `Effect.abortSignal` for Effect-managed cancellation. effect(abortControllerInEffect) 2026-10-25T02:20:15.1886542Z 2026-10-25T02:20:15.1886634Z 3320 turn.admissionAbortController = new AbortController(); 2026-10-25T02:20:15.1886826Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1886931Z 2026-10-25T02:20:15.1887236Z src/server/v2/OpenCode2Client.ts:149:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OpenCode2Client.connect")((_) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1887567Z 2026-10-25T02:20:15.1887672Z 149 connect: ({ baseUrl, password }) => { 2026-10-25T02:20:15.1887813Z ~~~~~~~ 2026-10-25T02:20:15.1887875Z 2026-10-25T02:20:15.1888183Z src/server/v2/OpenCode2Server.ts:142:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OpenCode2Server.withConnection")((use) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1888527Z 2026-10-25T02:20:15.1888582Z 142 withConnection: (use) => 2026-10-25T02:20:15.1888755Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1888825Z 2026-10-25T02:20:15.1889130Z src/server/v2/OpenCode2Server.ts:157:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OpenCode2Server.withConnection")((use) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1889519Z 2026-10-25T02:20:15.1889570Z 157 withConnection: (use) => 2026-10-25T02:20:15.1889692Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1889760Z 2026-10-25T02:20:15.1889980Z src/server/v2/adapter.ts:1507:26 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1890237Z 2026-10-25T02:20:15.1890363Z 1507 wake.dropped ? Effect.succeed(Option.none()) : Effect.map(dispatch, Option.some), 2026-10-25T02:20:15.1890573Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1890660Z 2026-10-25T02:20:15.1890883Z src/server/v2/adapter.ts:1507:58 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-25T02:20:15.1891146Z 2026-10-25T02:20:15.1891269Z 1507 wake.dropped ? Effect.succeed(Option.none()) : Effect.map(dispatch, Option.some), 2026-10-25T02:20:15.1891491Z ~~~~~~~~~~ 2026-10-25T02:20:15.1891597Z 2026-10-25T02:20:15.1891928Z src/server/v2/adapter.ts:4018:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.getCapabilities")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1892298Z 2026-10-25T02:20:15.1892405Z 4018 getCapabilities: () => Effect.succeed(OpenCode2ProviderCapabilities), 2026-10-25T02:20:15.1892597Z ~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1892666Z 2026-10-25T02:20:15.1893011Z src/server/v2/adapter.ts:4019:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.planSelectionTransition")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1893401Z 2026-10-25T02:20:15.1893521Z 4019 planSelectionTransition: () => Effect.succeed(turnScopedSelectionTransition()), 2026-10-25T02:20:15.1893727Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1893806Z 2026-10-25T02:20:15.1893808Z 2026-10-25T02:20:15.1893882Z ~/packages/source-control-definitions$ tsc --noEmit 2026-10-25T02:20:15.1894256Z src/server/AcpRegistryRuntimeCoordinator.ts:153:52 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-25T02:20:15.1894554Z 2026-10-25T02:20:15.1894690Z 153 return yield* Effect.raceFirst(effect.pipe(Effect.map(Option.some)), foregroundStarted); 2026-10-25T02:20:15.1894921Z ~~~~~~~~~~ 2026-10-25T02:20:15.1895024Z 2026-10-25T02:20:15.1895363Z src/server/AcpRegistrySupport.ts:1297:9 - suggestion TS377116: `Effect.catchIf` expresses selective recovery more directly than `Effect.catch` with a conditional `Effect.fail` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-25T02:20:15.1895736Z 2026-10-25T02:20:15.1895785Z 1297 Effect.catch((error) => 2026-10-25T02:20:15.1895914Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.1895986Z 2026-10-25T02:20:15.1896319Z src/server/auth.ts:145: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-25T02:20:15.1896653Z 2026-10-25T02:20:15.1896704Z 145 Option.isSome(result) 2026-10-25T02:20:15.1896836Z ~~~~~~~~~~~~~ 2026-10-25T02:20:15.1896915Z 2026-10-25T02:20:15.1897172Z src/server/driver.ts:632:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("enrichSnapshot")((_) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1897517Z 2026-10-25T02:20:15.1897615Z 632 enrichSnapshot: ({ snapshot, getSnapshot, publishSnapshot }) => { 2026-10-25T02:20:15.1897801Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1897871Z 2026-10-25T02:20:15.1898083Z src/server/driver.ts:642:51 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-25T02:20:15.1898340Z 2026-10-25T02:20:15.1898438Z 642 : enrichProviderCached(snapshot).pipe(Effect.map(Option.some)) 2026-10-25T02:20:15.1898637Z ~~~~~~~~~~ 2026-10-25T02:20:15.1898738Z 2026-10-25T02:20:15.1898741Z 2026-10-25T02:20:15.1899089Z 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-25T02:20:15.1899520Z 2026-10-25T02:20:15.1899589Z 31 read: (credentialSource, sinceMs, untilMs) => 2026-10-25T02:20:15.1899737Z ~~~~ 2026-10-25T02:20:15.1899795Z 2026-10-25T02:20:15.1900084Z 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-25T02:20:15.1900408Z 2026-10-25T02:20:15.1900457Z 82 read: (apiKey) => 2026-10-25T02:20:15.1900568Z ~~~~ 2026-10-25T02:20:15.1900623Z 2026-10-25T02:20:15.1900906Z src/server/accountUsage.ts:358:5 - suggestion TS377095: `Effect.orElseSucceed` expresses the same recovery more directly than `Effect.catch` followed by `Effect.succeed`. effect(catchToOrElseSucceed) 2026-10-25T02:20:15.1901225Z 2026-10-25T02:20:15.1901273Z 358 Effect.catch(() => 2026-10-25T02:20:15.1901387Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.1901453Z 2026-10-25T02:20:15.1901774Z src/server/adapter.ts:897:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.getCapabilities")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1902134Z 2026-10-25T02:20:15.1902239Z 897 getCapabilities: () => Effect.succeed(CursorProviderCapabilitiesV2), 2026-10-25T02:20:15.1902426Z ~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1902492Z 2026-10-25T02:20:15.1902837Z src/server/adapter.ts:898:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.planSelectionTransition")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1903217Z 2026-10-25T02:20:15.1903335Z 898 planSelectionTransition: () => Effect.succeed(turnScopedSelectionTransition()), 2026-10-25T02:20:15.1903541Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1903618Z 2026-10-25T02:20:15.1904073Z 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-25T02:20:15.1904562Z 2026-10-25T02:20:15.1904610Z 55 Effect.runPromise( 2026-10-25T02:20:15.1904733Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1904803Z 2026-10-25T02:20:15.1905065Z 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-25T02:20:15.1905414Z 2026-10-25T02:20:15.1905478Z 59 onNone: () => Effect.succeed(undefined), 2026-10-25T02:20:15.1905636Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1905733Z 2026-10-25T02:20:15.1906177Z 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-25T02:20:15.1906708Z 2026-10-25T02:20:15.1906755Z 69 Effect.runPromise( 2026-10-25T02:20:15.1906877Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1906949Z 2026-10-25T02:20:15.1907393Z 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-25T02:20:15.1907879Z 2026-10-25T02:20:15.1907952Z 82 clear: () => Effect.runPromise(credentials.remove), 2026-10-25T02:20:15.1908114Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1908196Z 2026-10-25T02:20:15.1908527Z 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-25T02:20:15.1908897Z 2026-10-25T02:20:15.1908954Z 228 Effect.flatMap((snapshot) => 2026-10-25T02:20:15.1909091Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1909165Z 2026-10-25T02:20:15.1909368Z src/server/usageLimits.test.ts:74:5 - suggestion TS377017: This Effect.gen contains a single return statement. effect(unnecessaryEffectGen) 2026-10-25T02:20:15.1909621Z 2026-10-25T02:20:15.1909672Z 74 Effect.gen(function* () { 2026-10-25T02:20:15.1909801Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1909928Z 75 yield* withNodeServices( 2026-10-25T02:20:15.1910056Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1910174Z ... 2026-10-25T02:20:15.1910262Z 115 ); 2026-10-25T02:20:15.1910357Z ~~~~~~~~ 2026-10-25T02:20:15.1910449Z 116 }), 2026-10-25T02:20:15.1910541Z ~~~~~~ 2026-10-25T02:20:15.1910593Z 2026-10-25T02:20:15.1910595Z 2026-10-25T02:20:15.1910597Z 2026-10-25T02:20:15.1910655Z ~/packages/client-runtime$ tsc --noEmit 2026-10-25T02:20:15.1910790Z Result (22 files): 2026-10-25T02:20:15.1910900Z - 0 errors 2026-10-25T02:20:15.1910992Z - 0 warnings 2026-10-25T02:20:15.1911088Z - 0 hints 2026-10-25T02:20:15.1911142Z 2026-10-25T02:20:15.1911144Z 2026-10-25T02:20:15.1911376Z src/authorization/remote.test.ts:334:25 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1911649Z 2026-10-25T02:20:15.1911758Z 334 identity: Effect.succeed(Option.some({ accountId: "user_connect" })), 2026-10-25T02:20:15.1911953Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1912040Z 2026-10-25T02:20:15.1912265Z src/authorization/remote.test.ts:339:17 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1912530Z 2026-10-25T02:20:15.1912604Z 339 id: Effect.succeed(Option.some("device-1")), 2026-10-25T02:20:15.1912764Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1912845Z 2026-10-25T02:20:15.1913176Z src/authorization/service.ts:547:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("RemoteEnvironmentAuthorization.authorizeDpop")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1913549Z 2026-10-25T02:20:15.1913601Z 547 authorizeDpop: (input) => 2026-10-25T02:20:15.1913725Z ~~~~~~~~~~~~~ 2026-10-25T02:20:15.1913795Z 2026-10-25T02:20:15.1914180Z src/authorization/service.ts:549:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("RemoteEnvironmentAuthorization.authorizeDpopHttp")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1914558Z 2026-10-25T02:20:15.1914612Z 549 authorizeDpopHttp: (input) => 2026-10-25T02:20:15.1914746Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1914816Z 2026-10-25T02:20:15.1915126Z 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-25T02:20:15.1915517Z 2026-10-25T02:20:15.1915570Z 298 registerPairing: (input) => 2026-10-25T02:20:15.1915697Z ~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1915766Z 2026-10-25T02:20:15.1916076Z 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-25T02:20:15.1916423Z 2026-10-25T02:20:15.1916472Z 304 registerSsh: (input) => 2026-10-25T02:20:15.1916591Z ~~~~~~~~~~~ 2026-10-25T02:20:15.1916655Z 2026-10-25T02:20:15.1916960Z 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-25T02:20:15.1917313Z 2026-10-25T02:20:15.1917366Z 309 updateBearer: (input) => 2026-10-25T02:20:15.1917490Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.1917558Z 2026-10-25T02:20:15.1917904Z 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-25T02:20:15.1923429Z 2026-10-25T02:20:15.1923487Z 138 get: (entry) => 2026-10-25T02:20:15.1923616Z ~~~ 2026-10-25T02:20:15.1923674Z 2026-10-25T02:20:15.1924040Z 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-25T02:20:15.1924443Z 2026-10-25T02:20:15.1924497Z 143 set: (entry, permission) => { 2026-10-25T02:20:15.1924631Z ~~~ 2026-10-25T02:20:15.1924689Z 2026-10-25T02:20:15.1925054Z 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-25T02:20:15.1925459Z 2026-10-25T02:20:15.1925510Z 159 forget: (environmentId) => 2026-10-25T02:20:15.1925636Z ~~~~~~ 2026-10-25T02:20:15.1925697Z 2026-10-25T02:20:15.1925970Z 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-25T02:20:15.1926279Z 2026-10-25T02:20:15.1926337Z 1392 ? Effect.succeed(undefined) 2026-10-25T02:20:15.1926480Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1926568Z 2026-10-25T02:20:15.1926831Z 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-25T02:20:15.1927141Z 2026-10-25T02:20:15.1927196Z 1476 ? Effect.succeed(undefined) 2026-10-25T02:20:15.1927332Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1927417Z 2026-10-25T02:20:15.1927680Z 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-25T02:20:15.1928093Z 2026-10-25T02:20:15.1928160Z 1489 : Effect.succeed(undefined), 2026-10-25T02:20:15.1928314Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1928408Z 2026-10-25T02:20:15.1928659Z src/platform/orchestrationCache.test.ts:110:15 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-25T02:20:15.1929007Z 2026-10-25T02:20:15.1929065Z 110 }).pipe(Effect.map(Option.some)); 2026-10-25T02:20:15.1929204Z ~~~~~~~~~~ 2026-10-25T02:20:15.1929280Z 2026-10-25T02:20:15.1929700Z 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-25T02:20:15.1930109Z 2026-10-25T02:20:15.1930202Z 72 load: (prepared: PreparedConnection, threadId: ThreadId) => { 2026-10-25T02:20:15.1930377Z ~~~~ 2026-10-25T02:20:15.1930433Z 2026-10-25T02:20:15.1930732Z 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-25T02:20:15.1931074Z 2026-10-25T02:20:15.1931175Z 56 Effect.catch(() => Effect.succeed(Option.none())), 2026-10-25T02:20:15.1931360Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.1931434Z 2026-10-25T02:20:15.1931773Z 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-25T02:20:15.1932146Z 2026-10-25T02:20:15.1932198Z 62 return yield* Effect.fail( 2026-10-25T02:20:15.1932334Z ~~~~~ 2026-10-25T02:20:15.1932405Z 2026-10-25T02:20:15.1932703Z 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-25T02:20:15.1933034Z 2026-10-25T02:20:15.1933130Z 57 execute: (target: OutdatedServerUpdateTarget, atomRegistry) => { 2026-10-25T02:20:15.1933306Z ~~~~~~~ 2026-10-25T02:20:15.1933366Z 2026-10-25T02:20:15.1933688Z 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-25T02:20:15.1934043Z 2026-10-25T02:20:15.1934094Z 90 load: (prepared, input) => 2026-10-25T02:20:15.1934219Z ~~~~ 2026-10-25T02:20:15.1934276Z 2026-10-25T02:20:15.1934675Z 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-25T02:20:15.1935112Z 2026-10-25T02:20:15.1935215Z 34 return yield* Schema.decodeUnknownEffect(codec)(stored.value).pipe( 2026-10-25T02:20:15.1935408Z ~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1935503Z 2026-10-25T02:20:15.1935730Z src/state/queryPersistence.ts:35:9 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-25T02:20:15.1936000Z 2026-10-25T02:20:15.1936051Z 35 Effect.map(Option.some), 2026-10-25T02:20:15.1936179Z ~~~~~~~~~~ 2026-10-25T02:20:15.1936246Z 2026-10-25T02:20:15.1936511Z 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-25T02:20:15.1936816Z 2026-10-25T02:20:15.1936931Z 680 execute: (target, atomRegistry) => { 2026-10-25T02:20:15.1937064Z ~~~~~~~ 2026-10-25T02:20:15.1937125Z 2026-10-25T02:20:15.1937453Z 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-25T02:20:15.1937820Z 2026-10-25T02:20:15.1937873Z 1125 Effect.flatMap((summary) => 2026-10-25T02:20:15.1938059Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1938136Z 2026-10-25T02:20:15.1938356Z src/state/shell-sync.test.ts:90:26 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1938615Z 2026-10-25T02:20:15.1938686Z 90 loadShell: () => Effect.succeed(Option.none()), 2026-10-25T02:20:15.1938844Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1938931Z 2026-10-25T02:20:15.1939154Z src/state/shell-sync.test.ts:96:27 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1939446Z 2026-10-25T02:20:15.1939517Z 96 loadThread: () => Effect.succeed(Option.none()), 2026-10-25T02:20:15.1939677Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1939765Z 2026-10-25T02:20:15.1939980Z src/state/shell-sync.test.ts:99:33 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1940238Z 2026-10-25T02:20:15.1940319Z 99 loadServerConfig: () => Effect.succeed(Option.none()), 2026-10-25T02:20:15.1940489Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1940582Z 2026-10-25T02:20:15.1940803Z src/state/shell-sync.test.ts:101:28 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1941062Z 2026-10-25T02:20:15.1941140Z 101 loadVcsRefs: () => Effect.succeed(Option.none()), 2026-10-25T02:20:15.1941302Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1941395Z 2026-10-25T02:20:15.1941616Z src/state/shell-sync.test.ts:108:21 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1941877Z 2026-10-25T02:20:15.1941943Z 108 load: () => Effect.succeed(Option.none()), 2026-10-25T02:20:15.1942098Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1942183Z 2026-10-25T02:20:15.1942403Z src/state/shell-sync.test.ts:229:26 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1942663Z 2026-10-25T02:20:15.1942735Z 229 loadShell: () => Effect.succeed(Option.none()), 2026-10-25T02:20:15.1942893Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1942980Z 2026-10-25T02:20:15.1943200Z src/state/shell-sync.test.ts:238:27 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1943458Z 2026-10-25T02:20:15.1943531Z 238 loadThread: () => Effect.succeed(Option.none()), 2026-10-25T02:20:15.1943688Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1943776Z 2026-10-25T02:20:15.1943995Z src/state/shell-sync.test.ts:241:33 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1944258Z 2026-10-25T02:20:15.1944342Z 241 loadServerConfig: () => Effect.succeed(Option.none()), 2026-10-25T02:20:15.1944513Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1944608Z 2026-10-25T02:20:15.1944828Z src/state/shell-sync.test.ts:243:28 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1945087Z 2026-10-25T02:20:15.1945209Z 243 loadVcsRefs: () => Effect.succeed(Option.none()), 2026-10-25T02:20:15.1945373Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1945462Z 2026-10-25T02:20:15.1945679Z src/state/shell-sync.test.ts:250:21 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1945937Z 2026-10-25T02:20:15.1946002Z 250 load: () => Effect.succeed(Option.none()), 2026-10-25T02:20:15.1946093Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1946095Z 2026-10-25T02:20:15.1946311Z src/state/shell-sync.test.ts:349:26 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1946313Z 2026-10-25T02:20:15.1946383Z 349 loadShell: () => Effect.succeed(Option.none()), 2026-10-25T02:20:15.1946431Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1946433Z 2026-10-25T02:20:15.1946649Z src/state/shell-sync.test.ts:355:27 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1946653Z 2026-10-25T02:20:15.1946724Z 355 loadThread: () => Effect.succeed(Option.none()), 2026-10-25T02:20:15.1946773Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1946775Z 2026-10-25T02:20:15.1946990Z src/state/shell-sync.test.ts:358:33 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1946994Z 2026-10-25T02:20:15.1947076Z 358 loadServerConfig: () => Effect.succeed(Option.none()), 2026-10-25T02:20:15.1947126Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1947128Z 2026-10-25T02:20:15.1947343Z src/state/shell-sync.test.ts:360:28 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1947346Z 2026-10-25T02:20:15.1947420Z 360 loadVcsRefs: () => Effect.succeed(Option.none()), 2026-10-25T02:20:15.1947469Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1947472Z 2026-10-25T02:20:15.1947686Z src/state/shell-sync.test.ts:367:21 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1947688Z 2026-10-25T02:20:15.1947750Z 367 load: () => Effect.succeed(Option.none()), 2026-10-25T02:20:15.1947798Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1947800Z 2026-10-25T02:20:15.1948017Z src/state/shell-sync.test.ts:446:26 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1948019Z 2026-10-25T02:20:15.1948106Z 446 loadShell: () => Effect.succeed(Option.some(cachedSnapshot)), 2026-10-25T02:20:15.1948156Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1948158Z 2026-10-25T02:20:15.1948373Z src/state/shell-sync.test.ts:448:27 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1948375Z 2026-10-25T02:20:15.1948447Z 448 loadThread: () => Effect.succeed(Option.none()), 2026-10-25T02:20:15.1948494Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1948497Z 2026-10-25T02:20:15.1948713Z src/state/shell-sync.test.ts:451:33 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1948718Z 2026-10-25T02:20:15.1948798Z 451 loadServerConfig: () => Effect.succeed(Option.none()), 2026-10-25T02:20:15.1948848Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1948850Z 2026-10-25T02:20:15.1949064Z src/state/shell-sync.test.ts:453:28 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1949107Z 2026-10-25T02:20:15.1949181Z 453 loadVcsRefs: () => Effect.succeed(Option.none()), 2026-10-25T02:20:15.1949230Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1949232Z 2026-10-25T02:20:15.1949474Z src/state/shell-sync.test.ts:460:21 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1949476Z 2026-10-25T02:20:15.1949595Z 460 load: () => Effect.succeed(Option.some(httpSnapshot)), 2026-10-25T02:20:15.1949640Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1949642Z 2026-10-25T02:20:15.1949856Z src/state/shell-sync.test.ts:509:26 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1949858Z 2026-10-25T02:20:15.1949929Z 509 loadShell: () => Effect.succeed(Option.none()), 2026-10-25T02:20:15.1949974Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1949976Z 2026-10-25T02:20:15.1950195Z src/state/shell-sync.test.ts:511:27 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1950197Z 2026-10-25T02:20:15.1950268Z 511 loadThread: () => Effect.succeed(Option.none()), 2026-10-25T02:20:15.1950316Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1950319Z 2026-10-25T02:20:15.1950533Z src/state/shell-sync.test.ts:514:33 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1950538Z 2026-10-25T02:20:15.1950616Z 514 loadServerConfig: () => Effect.succeed(Option.none()), 2026-10-25T02:20:15.1950668Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1950670Z 2026-10-25T02:20:15.1950889Z src/state/shell-sync.test.ts:516:28 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1950893Z 2026-10-25T02:20:15.1950965Z 516 loadVcsRefs: () => Effect.succeed(Option.none()), 2026-10-25T02:20:15.1951012Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1951015Z 2026-10-25T02:20:15.1951333Z src/state/shellSnapshotHttp.ts:104:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ShellSnapshotLoader.load")((prepared, options) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1951337Z 2026-10-25T02:20:15.1951387Z 104 load: (prepared, options) => 2026-10-25T02:20:15.1951429Z ~~~~ 2026-10-25T02:20:15.1951432Z 2026-10-25T02:20:15.1951795Z 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-25T02:20:15.1951797Z 2026-10-25T02:20:15.1951867Z 52 register: (environmentId, threadId, handler) => 2026-10-25T02:20:15.1951909Z ~~~~~~~~ 2026-10-25T02:20:15.1951912Z 2026-10-25T02:20:15.1952244Z 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-25T02:20:15.1952246Z 2026-10-25T02:20:15.1952297Z 64 unregister: (registration) => 2026-10-25T02:20:15.1952339Z ~~~~~~~~~~ 2026-10-25T02:20:15.1952341Z 2026-10-25T02:20:15.1952712Z 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-25T02:20:15.1952714Z 2026-10-25T02:20:15.1952800Z 79 loadEarlier: (environmentId, threadId, throughEntryId) => 2026-10-25T02:20:15.1952842Z ~~~~~~~~~~~ 2026-10-25T02:20:15.1952884Z 2026-10-25T02:20:15.1953255Z 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-25T02:20:15.1953258Z 2026-10-25T02:20:15.1953334Z 89 reconcilePendingWork: (environmentId, threadId) => 2026-10-25T02:20:15.1953377Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1953428Z 2026-10-25T02:20:15.1953832Z src/state/threads-sync.test.ts:374:18 - 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-25T02:20:15.1953834Z 2026-10-25T02:20:15.1953911Z 374 Schema.decodeUnknownEffect(schema)(stale).pipe( 2026-10-25T02:20:15.1953959Z ~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1953963Z 2026-10-25T02:20:15.1954190Z src/state/threads-sync.test.ts:1520:29 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1954193Z 2026-10-25T02:20:15.1954274Z 1520 : { loadCached: Effect.succeed(Option.some(saved!)) }, 2026-10-25T02:20:15.1954326Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1954329Z 2026-10-25T02:20:15.1954590Z 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-25T02:20:15.1954592Z 2026-10-25T02:20:15.1954681Z 447 execute: (input: RunVcsStackedActionInput, registry) => { 2026-10-25T02:20:15.1954721Z ~~~~~~~ 2026-10-25T02:20:15.1954723Z 2026-10-25T02:20:15.1954725Z 2026-10-25T02:20:15.1954775Z ~/apps/mobile$ tsc --noEmit 2026-10-25T02:20:15.1954824Z ~/infra/relay$ tsc --noEmit 2026-10-25T02:20:15.1954873Z ~/apps/web$ tsc --noEmit 2026-10-25T02:20:15.1954924Z ~/apps/desktop$ tsc --noEmit 2026-10-25T02:20:15.1955236Z src/app/DesktopAppActivation.ts:385:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppActivation.complete")((response) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1955238Z 2026-10-25T02:20:15.1955340Z 385 complete: (response) => Effect.sync(() => broker.complete(response)), 2026-10-25T02:20:15.1955384Z ~~~~~~~~ 2026-10-25T02:20:15.1955386Z 2026-10-25T02:20:15.1955612Z src/app/DesktopClerk.test.ts:300:27 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1955615Z 2026-10-25T02:20:15.1955698Z 300 currentMainOrFirst: Effect.succeed(Option.some(window)), 2026-10-25T02:20:15.1955748Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1955750Z 2026-10-25T02:20:15.1956028Z src/app/DesktopObservability.ts:459:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("onSome")(function*(logFile) { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1956031Z 2026-10-25T02:20:15.1956078Z 459 onSome: (logFile) => 2026-10-25T02:20:15.1956121Z ~~~~~~ 2026-10-25T02:20:15.1956123Z 2026-10-25T02:20:15.1956450Z src/app/DesktopObservability.ts:589:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBackendOutputLogFactory.forInstance")((id) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1956456Z 2026-10-25T02:20:15.1956511Z 589 forInstance: (id) => makeForId(id), 2026-10-25T02:20:15.1956554Z ~~~~~~~~~~~ 2026-10-25T02:20:15.1956556Z 2026-10-25T02:20:15.1956783Z src/app/DesktopWebLinks.test.ts:29:31 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.1956785Z 2026-10-25T02:20:15.1956911Z 29 currentMainOrFirst: Effect.succeed(Option.some(window)), 2026-10-25T02:20:15.1956961Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1956964Z 2026-10-25T02:20:15.1957241Z 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-25T02:20:15.1957286Z 2026-10-25T02:20:15.1957341Z 72 receive: (url) => 2026-10-25T02:20:15.1957382Z ~~~~~~~ 2026-10-25T02:20:15.1957384Z 2026-10-25T02:20:15.1957681Z 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-25T02:20:15.1957684Z 2026-10-25T02:20:15.1957735Z 77 setRendererReady: (ready) => 2026-10-25T02:20:15.1957779Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1957781Z 2026-10-25T02:20:15.1958198Z src/backend/DesktopBackendManager.ts:1046:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("onSome")(function*(run) { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1958201Z 2026-10-25T02:20:15.1958248Z 1046 onSome: (run) => 2026-10-25T02:20:15.1958287Z ~~~~~~ 2026-10-25T02:20:15.1958289Z 2026-10-25T02:20:15.1958580Z src/backend/DesktopBackendPool.ts:294:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBackendPool.get")((id) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1958584Z 2026-10-25T02:20:15.1958627Z 294 get: (id) => 2026-10-25T02:20:15.1958669Z ~~~ 2026-10-25T02:20:15.1958671Z 2026-10-25T02:20:15.1958957Z src/backend/DesktopBackendPool.ts:329:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBackendPool.get")((id) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1958961Z 2026-10-25T02:20:15.1959052Z 329 get: (id) => Effect.succeed(Option.fromNullishOr(byId.get(id))), 2026-10-25T02:20:15.1959094Z ~~~ 2026-10-25T02:20:15.1959096Z 2026-10-25T02:20:15.1959421Z src/backend/DesktopBackendPool.ts:332:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBackendPool.register")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1959425Z 2026-10-25T02:20:15.1959555Z 332 register: () => Effect.die("DesktopBackendPool.layerTest does not support register"), 2026-10-25T02:20:15.1959596Z ~~~~~~~~ 2026-10-25T02:20:15.1959598Z 2026-10-25T02:20:15.1959893Z src/backend/DesktopBackendPool.ts:333:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBackendPool.unregister")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1959896Z 2026-10-25T02:20:15.1960029Z 333 unregister: () => Effect.die("DesktopBackendPool.layerTest does not support unregister"), 2026-10-25T02:20:15.1960070Z ~~~~~~~~~~ 2026-10-25T02:20:15.1960072Z 2026-10-25T02:20:15.1960340Z src/electron/ElectronApp.ts:138:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.exit")((code) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1960343Z 2026-10-25T02:20:15.1960385Z 138 exit: (code) => 2026-10-25T02:20:15.1960425Z ~~~~ 2026-10-25T02:20:15.1960427Z 2026-10-25T02:20:15.1960707Z src/electron/ElectronApp.ts:142:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.relaunch")((options) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1960709Z 2026-10-25T02:20:15.1960759Z 142 relaunch: (options) => 2026-10-25T02:20:15.1960802Z ~~~~~~~~ 2026-10-25T02:20:15.1960804Z 2026-10-25T02:20:15.1961141Z src/electron/ElectronApp.ts:146:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.setPath")((name, path) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1961146Z 2026-10-25T02:20:15.1961195Z 146 setPath: (name, path) => 2026-10-25T02:20:15.1961234Z ~~~~~~~ 2026-10-25T02:20:15.1961236Z 2026-10-25T02:20:15.1961508Z src/electron/ElectronApp.ts:150:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.setName")((name) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1961561Z 2026-10-25T02:20:15.1961608Z 150 setName: (name) => 2026-10-25T02:20:15.1961646Z ~~~~~~~ 2026-10-25T02:20:15.1961648Z 2026-10-25T02:20:15.1961950Z src/electron/ElectronApp.ts:154:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.setAboutPanelOptions")((options) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1961953Z 2026-10-25T02:20:15.1962013Z 154 setAboutPanelOptions: (options) => 2026-10-25T02:20:15.1962057Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1962059Z 2026-10-25T02:20:15.1962349Z src/electron/ElectronApp.ts:158:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.setAppUserModelId")((id) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1962351Z 2026-10-25T02:20:15.1962401Z 158 setAppUserModelId: (id) => 2026-10-25T02:20:15.1962445Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1962447Z 2026-10-25T02:20:15.1962780Z src/electron/ElectronApp.ts:163:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.setAsDefaultProtocolClient")((protocol, path, args) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1962782Z 2026-10-25T02:20:15.1962865Z 163 setAsDefaultProtocolClient: (protocol, path, args) => 2026-10-25T02:20:15.1962909Z ~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1962912Z 2026-10-25T02:20:15.1963207Z src/electron/ElectronApp.ts:170:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.setDesktopName")((desktopName) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1963209Z 2026-10-25T02:20:15.1963264Z 170 setDesktopName: (desktopName) => 2026-10-25T02:20:15.1963308Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1963310Z 2026-10-25T02:20:15.1963594Z src/electron/ElectronApp.ts:177:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.setDockIcon")((iconPath) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1963598Z 2026-10-25T02:20:15.1963647Z 177 setDockIcon: (iconPath) => 2026-10-25T02:20:15.1963687Z ~~~~~~~~~~~ 2026-10-25T02:20:15.1963689Z 2026-10-25T02:20:15.1964012Z src/electron/ElectronApp.ts:181:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.appendCommandLineSwitch")((switchName, value) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1964015Z 2026-10-25T02:20:15.1964087Z 181 appendCommandLineSwitch: (switchName, value) => 2026-10-25T02:20:15.1964130Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1964132Z 2026-10-25T02:20:15.1964437Z src/electron/ElectronApp.ts:189:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.onBeforeQuitForUpdate")((listener) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1964441Z 2026-10-25T02:20:15.1964499Z 189 onBeforeQuitForUpdate: (listener) => 2026-10-25T02:20:15.1964543Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1964545Z 2026-10-25T02:20:15.1964855Z src/electron/ElectronApp.ts:199:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.removeCommandLineSwitch")((switchName) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1964859Z 2026-10-25T02:20:15.1964965Z 199 removeCommandLineSwitch: (switchName) => 2026-10-25T02:20:15.1965011Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1965013Z 2026-10-25T02:20:15.1965330Z 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-25T02:20:15.1965333Z 2026-10-25T02:20:15.1965388Z 169 showMessageBox: (options, owner) => 2026-10-25T02:20:15.1965472Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1965474Z 2026-10-25T02:20:15.1965784Z 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-25T02:20:15.1965786Z 2026-10-25T02:20:15.1965841Z 185 showErrorBox: (title, content) => 2026-10-25T02:20:15.1965881Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.1965883Z 2026-10-25T02:20:15.1966188Z src/electron/ElectronMenu.ts:190:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronMenu.setApplicationMenu")((template) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1966190Z 2026-10-25T02:20:15.1966244Z 190 setApplicationMenu: (template) => 2026-10-25T02:20:15.1966289Z ~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1966291Z 2026-10-25T02:20:15.1966579Z src/electron/ElectronMenu.ts:204:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronMenu.popupTemplate")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1966582Z 2026-10-25T02:20:15.1966634Z 204 popupTemplate: (input) => 2026-10-25T02:20:15.1966675Z ~~~~~~~~~~~~~ 2026-10-25T02:20:15.1966677Z 2026-10-25T02:20:15.1966967Z src/electron/ElectronMenu.ts:222:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronMenu.showContextMenu")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1966969Z 2026-10-25T02:20:15.1967021Z 222 showContextMenu: (input) => 2026-10-25T02:20:15.1967066Z ~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1967068Z 2026-10-25T02:20:15.1967423Z 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-25T02:20:15.1967428Z 2026-10-25T02:20:15.1967496Z 82 getSystemIdleState: (idleThresholdSeconds) => 2026-10-25T02:20:15.1967536Z ~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1967538Z 2026-10-25T02:20:15.1967857Z 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-25T02:20:15.1967860Z 2026-10-25T02:20:15.1967909Z 77 encryptString: (value) => 2026-10-25T02:20:15.1967951Z ~~~~~~~~~~~~~ 2026-10-25T02:20:15.1967953Z 2026-10-25T02:20:15.1968264Z 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-25T02:20:15.1968269Z 2026-10-25T02:20:15.1968315Z 82 decryptString: (value) => 2026-10-25T02:20:15.1968355Z ~~~~~~~~~~~~~ 2026-10-25T02:20:15.1968359Z 2026-10-25T02:20:15.1968651Z src/electron/ElectronShell.ts:66:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronShell.openExternal")((rawUrl) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1968653Z 2026-10-25T02:20:15.1968702Z 66 openExternal: (rawUrl) => 2026-10-25T02:20:15.1968741Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.1968743Z 2026-10-25T02:20:15.1969090Z src/electron/ElectronShell.ts:77:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronShell.openSystemSettings")((pane) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1969092Z 2026-10-25T02:20:15.1969144Z 77 openSystemSettings: (pane) => 2026-10-25T02:20:15.1969186Z ~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1969189Z 2026-10-25T02:20:15.1969501Z src/electron/ElectronShell.ts:84:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronShell.copyText")((text) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1969547Z 2026-10-25T02:20:15.1969593Z 84 copyText: (text) => 2026-10-25T02:20:15.1969633Z ~~~~~~~~ 2026-10-25T02:20:15.1969636Z 2026-10-25T02:20:15.1969918Z 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-25T02:20:15.1969921Z 2026-10-25T02:20:15.1969968Z 34 setSource: (theme) => 2026-10-25T02:20:15.1970008Z ~~~~~~~~~ 2026-10-25T02:20:15.1970011Z 2026-10-25T02:20:15.1970299Z 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-25T02:20:15.1970302Z 2026-10-25T02:20:15.1970350Z 41 onUpdated: (listener) => 2026-10-25T02:20:15.1970390Z ~~~~~~~~~ 2026-10-25T02:20:15.1970393Z 2026-10-25T02:20:15.1970690Z 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-25T02:20:15.1970692Z 2026-10-25T02:20:15.1970739Z 85 setFeedURL: (options) => 2026-10-25T02:20:15.1970780Z ~~~~~~~~~~ 2026-10-25T02:20:15.1970782Z 2026-10-25T02:20:15.1971087Z 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-25T02:20:15.1971090Z 2026-10-25T02:20:15.1971139Z 90 setAutoDownload: (value) => 2026-10-25T02:20:15.1971178Z ~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1971181Z 2026-10-25T02:20:15.1971498Z 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-25T02:20:15.1971501Z 2026-10-25T02:20:15.1971559Z 95 setAutoInstallOnAppQuit: (value) => 2026-10-25T02:20:15.1971603Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1971605Z 2026-10-25T02:20:15.1971901Z 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-25T02:20:15.1971903Z 2026-10-25T02:20:15.1971952Z 100 setChannel: (channel) => 2026-10-25T02:20:15.1971991Z ~~~~~~~~~~ 2026-10-25T02:20:15.1971993Z 2026-10-25T02:20:15.1972301Z 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-25T02:20:15.1972304Z 2026-10-25T02:20:15.1972355Z 105 setAllowPrerelease: (value) => 2026-10-25T02:20:15.1972401Z ~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1972403Z 2026-10-25T02:20:15.1972711Z 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-25T02:20:15.1972714Z 2026-10-25T02:20:15.1972763Z 111 setAllowDowngrade: (value) => 2026-10-25T02:20:15.1972805Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1972808Z 2026-10-25T02:20:15.1973161Z 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-25T02:20:15.1973163Z 2026-10-25T02:20:15.1973216Z 116 setFullChangelog: (value) => 2026-10-25T02:20:15.1973256Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1973258Z 2026-10-25T02:20:15.1973589Z 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-25T02:20:15.1973635Z 2026-10-25T02:20:15.1973703Z 121 setDisableDifferentialDownload: (value) => 2026-10-25T02:20:15.1973748Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1973750Z 2026-10-25T02:20:15.1974047Z 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-25T02:20:15.1974049Z 2026-10-25T02:20:15.1974122Z 140 quitAndInstall: ({ isSilent, isForceRunAfter }) => 2026-10-25T02:20:15.1974163Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1974165Z 2026-10-25T02:20:15.1974462Z 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-25T02:20:15.1974466Z 2026-10-25T02:20:15.1974516Z 154 on: (eventName, listener) => { 2026-10-25T02:20:15.1974555Z ~~ 2026-10-25T02:20:15.1974558Z 2026-10-25T02:20:15.1974841Z src/electron/ElectronWindow.ts:210:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronWindow.create")((options) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1974843Z 2026-10-25T02:20:15.1974891Z 210 create: (options) => { 2026-10-25T02:20:15.1974931Z ~~~~~~ 2026-10-25T02:20:15.1974933Z 2026-10-25T02:20:15.1975216Z src/electron/ElectronWindow.ts:242:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronWindow.setMain")((window) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1975219Z 2026-10-25T02:20:15.1975311Z 242 setMain: (window) => Ref.set(mainWindowRef, Option.some(window)), 2026-10-25T02:20:15.1975352Z ~~~~~~~ 2026-10-25T02:20:15.1975354Z 2026-10-25T02:20:15.1975646Z src/electron/ElectronWindow.ts:243:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronWindow.clearMain")((window) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1975648Z 2026-10-25T02:20:15.1975694Z 243 clearMain: (window) => 2026-10-25T02:20:15.1975734Z ~~~~~~~~~ 2026-10-25T02:20:15.1975737Z 2026-10-25T02:20:15.1976034Z src/electron/ElectronWindow.ts:253:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronWindow.prepareReveal")((window) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1976038Z 2026-10-25T02:20:15.1976086Z 253 prepareReveal: (window) => 2026-10-25T02:20:15.1976127Z ~~~~~~~~~~~~~ 2026-10-25T02:20:15.1976129Z 2026-10-25T02:20:15.1976412Z src/electron/ElectronWindow.ts:263:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronWindow.reveal")((window) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1976415Z 2026-10-25T02:20:15.1976462Z 263 reveal: (window) => 2026-10-25T02:20:15.1976501Z ~~~~~~ 2026-10-25T02:20:15.1976503Z 2026-10-25T02:20:15.1976860Z src/settings/DesktopAppSettings.ts:524:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setMainWindowBounds")((bounds, isMaximized) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1976862Z 2026-10-25T02:20:15.1976975Z 524 setMainWindowBounds: (bounds, isMaximized) => 2026-10-25T02:20:15.1977019Z ~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1977021Z 2026-10-25T02:20:15.1977349Z src/settings/DesktopAppSettings.ts:536:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setServerExposureMode")((mode) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1977352Z 2026-10-25T02:20:15.1977451Z 536 setServerExposureMode: (mode) => 2026-10-25T02:20:15.1977495Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1977497Z 2026-10-25T02:20:15.1977823Z src/settings/DesktopAppSettings.ts:540:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setTailscaleServe")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1977826Z 2026-10-25T02:20:15.1977878Z 540 setTailscaleServe: (input) => 2026-10-25T02:20:15.1977920Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1977926Z 2026-10-25T02:20:15.1978252Z src/settings/DesktopAppSettings.ts:544:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setUpdateChannel")((channel) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1978255Z 2026-10-25T02:20:15.1978308Z 544 setUpdateChannel: (channel) => 2026-10-25T02:20:15.1978351Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1978355Z 2026-10-25T02:20:15.1978687Z src/settings/DesktopAppSettings.ts:548:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setWslBackendEnabled")((enabled) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1978689Z 2026-10-25T02:20:15.1978745Z 548 setWslBackendEnabled: (enabled) => 2026-10-25T02:20:15.1978791Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1978793Z 2026-10-25T02:20:15.1979111Z src/settings/DesktopAppSettings.ts:552:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setWslDistro")((distro) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1979114Z 2026-10-25T02:20:15.1979163Z 552 setWslDistro: (distro) => 2026-10-25T02:20:15.1979204Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.1979206Z 2026-10-25T02:20:15.1979543Z src/settings/DesktopAppSettings.ts:558:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setWslOnly")((enabled) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1979548Z 2026-10-25T02:20:15.1979595Z 558 setWslOnly: (enabled) => 2026-10-25T02:20:15.1979637Z ~~~~~~~~~~ 2026-10-25T02:20:15.1979639Z 2026-10-25T02:20:15.1979981Z src/settings/DesktopAppSettings.ts:562:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setLocalEnvironmentEnabled")((enabled) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1979985Z 2026-10-25T02:20:15.1980051Z 562 setLocalEnvironmentEnabled: (enabled) => 2026-10-25T02:20:15.1980093Z ~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1980096Z 2026-10-25T02:20:15.1980440Z src/settings/DesktopAppSettings.ts:597:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setMainWindowBounds")((bounds, isMaximized) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1980444Z 2026-10-25T02:20:15.1980517Z 597 setMainWindowBounds: (bounds, isMaximized) => 2026-10-25T02:20:15.1980561Z ~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1980563Z 2026-10-25T02:20:15.1980890Z src/settings/DesktopAppSettings.ts:599:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setServerExposureMode")((mode) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1980892Z 2026-10-25T02:20:15.1980948Z 599 setServerExposureMode: (mode) => 2026-10-25T02:20:15.1981031Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1981034Z 2026-10-25T02:20:15.1981356Z src/settings/DesktopAppSettings.ts:601:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setTailscaleServe")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1981358Z 2026-10-25T02:20:15.1981486Z 601 setTailscaleServe: (input) => update((settings) => setTailscaleServe(settings, input)), 2026-10-25T02:20:15.1981578Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1981580Z 2026-10-25T02:20:15.1981903Z src/settings/DesktopAppSettings.ts:602:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setUpdateChannel")((channel) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1981905Z 2026-10-25T02:20:15.1982033Z 602 setUpdateChannel: (channel) => update((settings) => setUpdateChannel(settings, channel)), 2026-10-25T02:20:15.1982079Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1982081Z 2026-10-25T02:20:15.1982412Z src/settings/DesktopAppSettings.ts:603:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setWslBackendEnabled")((enabled) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1982414Z 2026-10-25T02:20:15.1982472Z 603 setWslBackendEnabled: (enabled) => 2026-10-25T02:20:15.1982516Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1982518Z 2026-10-25T02:20:15.1982832Z src/settings/DesktopAppSettings.ts:605:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setWslDistro")((distro) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1982834Z 2026-10-25T02:20:15.1982948Z 605 setWslDistro: (distro) => update((settings) => setWslDistro(settings, distro)), 2026-10-25T02:20:15.1982991Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.1982993Z 2026-10-25T02:20:15.1983306Z src/settings/DesktopAppSettings.ts:606:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setWslOnly")((enabled) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1983308Z 2026-10-25T02:20:15.1983416Z 606 setWslOnly: (enabled) => update((settings) => setWslOnly(settings, enabled)), 2026-10-25T02:20:15.1983457Z ~~~~~~~~~~ 2026-10-25T02:20:15.1983461Z 2026-10-25T02:20:15.1983804Z src/settings/DesktopAppSettings.ts:607:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setLocalEnvironmentEnabled")((enabled) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1983806Z 2026-10-25T02:20:15.1983879Z 607 setLocalEnvironmentEnabled: (enabled) => 2026-10-25T02:20:15.1983929Z ~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1983931Z 2026-10-25T02:20:15.1984242Z 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-25T02:20:15.1984245Z 2026-10-25T02:20:15.1984292Z 197 set: (settings) => 2026-10-25T02:20:15.1984333Z ~~~ 2026-10-25T02:20:15.1984335Z 2026-10-25T02:20:15.1984645Z 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-25T02:20:15.1984649Z 2026-10-25T02:20:15.1984739Z 231 set: (settings) => Ref.set(settingsRef, Option.some(settings)), 2026-10-25T02:20:15.1984776Z ~~~ 2026-10-25T02:20:15.1984778Z 2026-10-25T02:20:15.1985163Z src/snapShot/DesktopSnapShot.ts:1720:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopSnapShot.setAnimationDestination")((id, destination) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1985165Z 2026-10-25T02:20:15.1985238Z 1720 setAnimationDestination: (id, destination) => 2026-10-25T02:20:15.1985281Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1985284Z 2026-10-25T02:20:15.1985585Z src/snapShot/DesktopSnapShot.ts:1731:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopSnapShot.dismissAnimation")((id) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1985630Z 2026-10-25T02:20:15.1985679Z 1731 dismissAnimation: (id) => 2026-10-25T02:20:15.1985722Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1985724Z 2026-10-25T02:20:15.1986017Z src/snapShot/DesktopSnapShot.ts:1736:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopSnapShot.acknowledge")((id) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1986020Z 2026-10-25T02:20:15.1986066Z 1736 acknowledge: (id) => 2026-10-25T02:20:15.1986106Z ~~~~~~~~~~~ 2026-10-25T02:20:15.1986108Z 2026-10-25T02:20:15.1986427Z 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-25T02:20:15.1986429Z 2026-10-25T02:20:15.1986479Z 136 discoverHosts: (input) => 2026-10-25T02:20:15.1986522Z ~~~~~~~~~~~~~ 2026-10-25T02:20:15.1986524Z 2026-10-25T02:20:15.1986835Z 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-25T02:20:15.1986837Z 2026-10-25T02:20:15.1986884Z 141 resolveHost: (alias) => 2026-10-25T02:20:15.1986925Z ~~~~~~~~~~~ 2026-10-25T02:20:15.1986927Z 2026-10-25T02:20:15.1987275Z 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-25T02:20:15.1987277Z 2026-10-25T02:20:15.1987347Z 146 ensureEnvironment: (target, ensureOptions) => 2026-10-25T02:20:15.1987389Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1987391Z 2026-10-25T02:20:15.1987721Z 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-25T02:20:15.1987725Z 2026-10-25T02:20:15.1987782Z 154 disconnectEnvironment: (target) => 2026-10-25T02:20:15.1987827Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1987829Z 2026-10-25T02:20:15.1988147Z src/updates/DesktopUpdates.ts:1162:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopUpdates.installPrepared")((expectedVersion) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1988150Z 2026-10-25T02:20:15.1988279Z 1162 installPrepared: (expectedVersion) => installWithExpectedVersion(expectedVersion), 2026-10-25T02:20:15.1988319Z ~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1988321Z 2026-10-25T02:20:15.1988624Z src/wsl/DesktopWslEnvironment.ts:1073:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.preWarm")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1988628Z 2026-10-25T02:20:15.1988679Z 1073 preWarm: () => Effect.void, 2026-10-25T02:20:15.1988719Z ~~~~~~~ 2026-10-25T02:20:15.1988721Z 2026-10-25T02:20:15.1989067Z src/wsl/DesktopWslEnvironment.ts:1074:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.windowsToWslPath")((distro, windowsPath) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1989071Z 2026-10-25T02:20:15.1989177Z 1074 windowsToWslPath: (distro, windowsPath) => 2026-10-25T02:20:15.1989220Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1989222Z 2026-10-25T02:20:15.1989562Z src/wsl/DesktopWslEnvironment.ts:1076:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.getUserHome")((distro) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1989606Z 2026-10-25T02:20:15.1989745Z 1076 getUserHome: (distro) => Effect.succeed(stub.getUserHome?.(distro) ?? Option.none()), 2026-10-25T02:20:15.1989785Z ~~~~~~~~~~~ 2026-10-25T02:20:15.1989789Z 2026-10-25T02:20:15.1990102Z src/wsl/DesktopWslEnvironment.ts:1077:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.getDistroIp")((distro) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1990104Z 2026-10-25T02:20:15.1990240Z 1077 getDistroIp: (distro) => Effect.succeed(stub.getDistroIp?.(distro) ?? Option.none()), 2026-10-25T02:20:15.1990281Z ~~~~~~~~~~~ 2026-10-25T02:20:15.1990283Z 2026-10-25T02:20:15.1990619Z src/wsl/DesktopWslEnvironment.ts:1078:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.prepareRuntime")((distro, archive) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1990621Z 2026-10-25T02:20:15.1990682Z 1078 prepareRuntime: (distro, archive) => 2026-10-25T02:20:15.1990724Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1990726Z 2026-10-25T02:20:15.1991061Z src/wsl/DesktopWslEnvironment.ts:1085:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.pruneRuntimes")((distro, runtimeId) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1991063Z 2026-10-25T02:20:15.1991197Z 1085 pruneRuntimes: (distro, runtimeId) => stub.pruneRuntimes?.(distro, runtimeId) ?? Effect.void, 2026-10-25T02:20:15.1991239Z ~~~~~~~~~~~~~ 2026-10-25T02:20:15.1991241Z 2026-10-25T02:20:15.1991584Z src/wsl/DesktopWslEnvironment.ts:1086:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.invalidateRuntime")((distro, runtimeId) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1991587Z 2026-10-25T02:20:15.1991651Z 1086 invalidateRuntime: (distro, runtimeId) => 2026-10-25T02:20:15.1991697Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1991699Z 2026-10-25T02:20:15.1992035Z src/wsl/DesktopWslEnvironment.ts:1088:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.probeRuntime")((distro, linuxAppRoot) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1992038Z 2026-10-25T02:20:15.1992101Z 1088 probeRuntime: (distro, linuxAppRoot) => 2026-10-25T02:20:15.1992141Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.1992144Z 2026-10-25T02:20:15.1992500Z src/wsl/DesktopWslEnvironment.ts:1092:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.ensureNodePty")((distro, linuxAppRoot, options) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1992502Z 2026-10-25T02:20:15.1992579Z 1092 ensureNodePty: (distro, linuxAppRoot, options) => 2026-10-25T02:20:15.1992622Z ~~~~~~~~~~~~~ 2026-10-25T02:20:15.1992625Z 2026-10-25T02:20:15.1992933Z src/wsl/DesktopWslEnvironment.ts:1154:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.preWarm")((distro) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1992935Z 2026-10-25T02:20:15.1992982Z 1154 preWarm: (distro) => 2026-10-25T02:20:15.1993022Z ~~~~~~~ 2026-10-25T02:20:15.1993024Z 2026-10-25T02:20:15.1993397Z src/wsl/DesktopWslEnvironment.ts:1159:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.prepareRuntime")((distro, archive) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1993399Z 2026-10-25T02:20:15.1993459Z 1159 prepareRuntime: (distro, archive) => 2026-10-25T02:20:15.1993512Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1993514Z 2026-10-25T02:20:15.1993847Z src/wsl/DesktopWslEnvironment.ts:1163:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.pruneRuntimes")((distro, runtimeId) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1993897Z 2026-10-25T02:20:15.1993956Z 1163 pruneRuntimes: (distro, runtimeId) => 2026-10-25T02:20:15.1993998Z ~~~~~~~~~~~~~ 2026-10-25T02:20:15.1994000Z 2026-10-25T02:20:15.1994343Z src/wsl/DesktopWslEnvironment.ts:1167:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.invalidateRuntime")((distro, runtimeId) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1994345Z 2026-10-25T02:20:15.1994410Z 1167 invalidateRuntime: (distro, runtimeId) => 2026-10-25T02:20:15.1994451Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1994453Z 2026-10-25T02:20:15.1994793Z src/wsl/DesktopWslEnvironment.ts:1171:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.probeRuntime")((distro, linuxAppRoot) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1994797Z 2026-10-25T02:20:15.1994860Z 1171 probeRuntime: (distro, linuxAppRoot) => 2026-10-25T02:20:15.1994901Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.1994903Z 2026-10-25T02:20:15.1995258Z src/wsl/DesktopWslEnvironment.ts:1175:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.ensureNodePty")((distro, linuxAppRoot, options) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1995261Z 2026-10-25T02:20:15.1995335Z 1175 ensureNodePty: (distro, linuxAppRoot, options) => 2026-10-25T02:20:15.1995379Z ~~~~~~~~~~~~~ 2026-10-25T02:20:15.1995381Z 2026-10-25T02:20:15.1995383Z 2026-10-25T02:20:15.1995701Z 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-25T02:20:15.1995705Z 2026-10-25T02:20:15.1995751Z 220 send: (body) => 2026-10-25T02:20:15.1995792Z ~~~~ 2026-10-25T02:20:15.1995794Z 2026-10-25T02:20:15.1996094Z 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-25T02:20:15.1996096Z 2026-10-25T02:20:15.1996145Z 12 onFailure: (error) => 2026-10-25T02:20:15.1996185Z ~~~~~~~~~ 2026-10-25T02:20:15.1996187Z 2026-10-25T02:20:15.1996514Z src/environments/CloudflareApiPause.ts:59:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("CloudflareApiPause.pauseUntil")((untilMillis) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1996516Z 2026-10-25T02:20:15.1996570Z 59 pauseUntil: (untilMillis) => 2026-10-25T02:20:15.1996608Z ~~~~~~~~~~ 2026-10-25T02:20:15.1996610Z 2026-10-25T02:20:15.1996852Z src/http/Api.ts:190:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("onNone")(function*() { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1996854Z 2026-10-25T02:20:15.1996899Z 190 onNone: () => 2026-10-25T02:20:15.1996938Z ~~~~~~ 2026-10-25T02:20:15.1996940Z 2026-10-25T02:20:15.1997208Z src/previewTunnelSweep.test.ts:53:11 - suggestion TS377124: `Effect.provideService` provides this inline single-service layer directly. effect(provideLayerSucceedToProvideService) 2026-10-25T02:20:15.1997252Z 2026-10-25T02:20:15.1997371Z 53 }).pipe(Effect.provide(Layer.succeed(HttpClient.HttpClient, cloudflare.client))); 2026-10-25T02:20:15.1997414Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1997417Z 2026-10-25T02:20:15.1997702Z 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-25T02:20:15.1997747Z 2026-10-25T02:20:15.1997857Z 92 fileResponse: () => Effect.die("Relay API does not serve filesystem responses"), 2026-10-25T02:20:15.1997895Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.1997897Z 2026-10-25T02:20:15.1998310Z 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-25T02:20:15.1998312Z 2026-10-25T02:20:15.1998424Z 93 fileWebResponse: () => Effect.die("Relay API does not serve file responses"), 2026-10-25T02:20:15.1998464Z ~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.1998466Z 2026-10-25T02:20:15.1998721Z src/worker.ts:238:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("HookInbox.HookInbox.hold")((_) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1998724Z 2026-10-25T02:20:15.1998785Z 238 hold: ({ endpointKey, baseUrl, hook }) => 2026-10-25T02:20:15.1998826Z ~~~~ 2026-10-25T02:20:15.1998828Z 2026-10-25T02:20:15.1999080Z src/worker.ts:240:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("HookInbox.HookInbox.wake")((_) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1999082Z 2026-10-25T02:20:15.1999139Z 240 wake: ({ endpointKey, baseUrl }) => 2026-10-25T02:20:15.1999179Z ~~~~ 2026-10-25T02:20:15.1999181Z 2026-10-25T02:20:15.1999468Z src/worker.ts:242:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("HookInbox.HookInbox.clear")((_) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1999471Z 2026-10-25T02:20:15.1999523Z 242 clear: ({ endpointKey }) => 2026-10-25T02:20:15.1999562Z ~~~~~ 2026-10-25T02:20:15.1999564Z 2026-10-25T02:20:15.1999881Z src/worker.ts:271:15 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("FcmDeliveryQueueSender.FcmDeliveryQueueSender.send")((body) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.1999885Z 2026-10-25T02:20:15.1999931Z 271 send: (body) => 2026-10-25T02:20:15.1999972Z ~~~~ 2026-10-25T02:20:15.1999974Z 2026-10-25T02:20:15.1999976Z 2026-10-25T02:20:15.1999978Z 2026-10-25T02:20:15.2000315Z src/connection/platform.ts:794:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.EnvironmentOwnedDataCleanup.clear")((environmentId) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2000317Z 2026-10-25T02:20:15.2000366Z 794 clear: (environmentId) => 2026-10-25T02:20:15.2000408Z ~~~~~ 2026-10-25T02:20:15.2000410Z 2026-10-25T02:20:15.2000708Z src/connection/platform.ts:804:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("EnvironmentRpcRequestObserver.observe")((_) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2000713Z 2026-10-25T02:20:15.2000798Z 804 observe: ({ environmentId, environmentLabel, method }) => 2026-10-25T02:20:15.2000839Z ~~~~~~~ 2026-10-25T02:20:15.2000841Z 2026-10-25T02:20:15.2001138Z src/connection/storage.ts:546:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("PullRequestRoutingPermissions.get")((entry) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2001140Z 2026-10-25T02:20:15.2001183Z 546 get: (entry) => 2026-10-25T02:20:15.2001221Z ~~~ 2026-10-25T02:20:15.2001223Z 2026-10-25T02:20:15.2001596Z src/connection/storage.ts:573:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("PullRequestRoutingPermissions.set")((entry, permission) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2001599Z 2026-10-25T02:20:15.2001649Z 573 set: (entry, permission) => { 2026-10-25T02:20:15.2001689Z ~~~ 2026-10-25T02:20:15.2001691Z 2026-10-25T02:20:15.2002060Z src/connection/storage.ts:593:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("PullRequestRoutingPermissions.forget")((environmentId) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2002063Z 2026-10-25T02:20:15.2002143Z 593 forget: (environmentId) => write(environmentId, null), 2026-10-25T02:20:15.2002183Z ~~~~~~ 2026-10-25T02:20:15.2002185Z 2026-10-25T02:20:15.2002540Z src/connection/storage.ts:638:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.ConnectionRegistrationStore.register")((registration, routes) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2002542Z 2026-10-25T02:20:15.2002600Z 638 register: (registration, routes) => 2026-10-25T02:20:15.2002640Z ~~~~~~~~ 2026-10-25T02:20:15.2002642Z 2026-10-25T02:20:15.2002999Z src/connection/storage.ts:642:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.ConnectionRegistrationStore.setRoutes")((environmentId, routes) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2003002Z 2026-10-25T02:20:15.2003063Z 642 setRoutes: (environmentId, routes) => 2026-10-25T02:20:15.2003104Z ~~~~~~~~~ 2026-10-25T02:20:15.2003106Z 2026-10-25T02:20:15.2003447Z src/connection/storage.ts:646:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.ConnectionRegistrationStore.remove")((environmentId) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2003449Z 2026-10-25T02:20:15.2003499Z 646 remove: (environmentId) => 2026-10-25T02:20:15.2003537Z ~~~~~~ 2026-10-25T02:20:15.2003539Z 2026-10-25T02:20:15.2003906Z src/connection/storage.ts:650:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.ConnectionRegistrationStore.setEnabled")((environmentId, enabled) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2003910Z 2026-10-25T02:20:15.2003971Z 650 setEnabled: (environmentId, enabled) => 2026-10-25T02:20:15.2004013Z ~~~~~~~~~~ 2026-10-25T02:20:15.2004015Z 2026-10-25T02:20:15.2004344Z src/connection/storage.ts:727:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.EnvironmentCacheStore.loadShell")((environmentId) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2004346Z 2026-10-25T02:20:15.2004397Z 727 loadShell: (environmentId) => 2026-10-25T02:20:15.2004440Z ~~~~~~~~~ 2026-10-25T02:20:15.2004442Z 2026-10-25T02:20:15.2004785Z src/connection/storage.ts:763:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.EnvironmentCacheStore.loadServerConfig")((environmentId) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2004787Z 2026-10-25T02:20:15.2004846Z 763 loadServerConfig: (environmentId) => 2026-10-25T02:20:15.2004892Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2004896Z 2026-10-25T02:20:15.2005239Z src/connection/storage.ts:797:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.EnvironmentCacheStore.loadThread")((environmentId, threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2005241Z 2026-10-25T02:20:15.2005303Z 797 loadThread: (environmentId, threadId) => 2026-10-25T02:20:15.2005345Z ~~~~~~~~~~ 2026-10-25T02:20:15.2005347Z 2026-10-25T02:20:15.2005725Z src/connection/storage.ts:846:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.EnvironmentCacheStore.loadVcsRefs")((environmentId, cwd) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2005727Z 2026-10-25T02:20:15.2005785Z 846 loadVcsRefs: (environmentId, cwd) => 2026-10-25T02:20:15.2005825Z ~~~~~~~~~~~ 2026-10-25T02:20:15.2005827Z 2026-10-25T02:20:15.2006212Z src/connection/storage.ts:888:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.EnvironmentCacheStore.removeVcsRefs")((environmentId, cwd) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2006214Z 2026-10-25T02:20:15.2006276Z 888 removeVcsRefs: (environmentId, cwd) => 2026-10-25T02:20:15.2006317Z ~~~~~~~~~~~~~ 2026-10-25T02:20:15.2006319Z 2026-10-25T02:20:15.2006654Z src/connection/storage.ts:894:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.EnvironmentCacheStore.clearVcsRefs")((environmentId) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2006658Z 2026-10-25T02:20:15.2006713Z 894 clearVcsRefs: (environmentId) => 2026-10-25T02:20:15.2006756Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.2006758Z 2026-10-25T02:20:15.2007107Z src/connection/storage.ts:900:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.EnvironmentCacheStore.removeThread")((environmentId, threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2007111Z 2026-10-25T02:20:15.2007179Z 900 removeThread: (environmentId, threadId) => 2026-10-25T02:20:15.2007218Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.2007220Z 2026-10-25T02:20:15.2007542Z src/connection/storage.ts:906:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.EnvironmentCacheStore.clear")((environmentId) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2007544Z 2026-10-25T02:20:15.2007595Z 906 clear: (environmentId) => 2026-10-25T02:20:15.2007635Z ~~~~~ 2026-10-25T02:20:15.2007637Z 2026-10-25T02:20:15.2007639Z 2026-10-25T02:20:15.2007687Z ~/apps/server$ tsc --noEmit 2026-10-25T02:20:15.2007938Z scripts/acp-mock-agent.ts:939:16 - suggestion TS377015: This expression contains chained `pipe` calls that can be simplified to a single `pipe` call. effect(unnecessaryPipeChain) 2026-10-25T02:20:15.2007942Z 2026-10-25T02:20:15.2008001Z 939 yield* Effect.sleep("1200 millis") 2026-10-25T02:20:15.2008050Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2008092Z 940 .pipe( 2026-10-25T02:20:15.2008136Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2008175Z ... 2026-10-25T02:20:15.2008216Z 952 ) 2026-10-25T02:20:15.2008256Z ~~~~~~~~~~~ 2026-10-25T02:20:15.2008308Z 953 .pipe(Effect.forkDetach); 2026-10-25T02:20:15.2008356Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2008359Z 2026-10-25T02:20:15.2008667Z scripts/record-codex-app-server-replay-fixture.ts:1167:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("logger")((event) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2008669Z 2026-10-25T02:20:15.2008717Z 1167 logger: (event) => { 2026-10-25T02:20:15.2008756Z ~~~~~~ 2026-10-25T02:20:15.2008758Z 2026-10-25T02:20:15.2009186Z scripts/record-grok-acp-replay-fixture.ts:370: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-25T02:20:15.2009188Z 2026-10-25T02:20:15.2009296Z 370 const DEFAULT_GROK_SETTINGS = Schema.decodeUnknownSync(GrokSettings)({}); 2026-10-25T02:20:15.2009367Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2009369Z 2026-10-25T02:20:15.2009834Z 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-25T02:20:15.2009837Z 2026-10-25T02:20:15.2009952Z 975 const { resource } = yield* Schema.decodeUnknownEffect(AssetCreateUrlInput)({ 2026-10-25T02:20:15.2010059Z ~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2010062Z 2026-10-25T02:20:15.2010359Z src/auth/EnvironmentAuth.ts:1377:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("EnvironmentAuth.getDescriptor")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2010361Z 2026-10-25T02:20:15.2010410Z 1377 getDescriptor: () => 2026-10-25T02:20:15.2010451Z ~~~~~~~~~~~~~ 2026-10-25T02:20:15.2010453Z 2026-10-25T02:20:15.2010765Z 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-25T02:20:15.2010770Z 2026-10-25T02:20:15.2010816Z 55 getDescriptor: () => 2026-10-25T02:20:15.2010856Z ~~~~~~~~~~~~~ 2026-10-25T02:20:15.2010859Z 2026-10-25T02:20:15.2011187Z src/auth/McpOAuth.ts:530:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("McpHttpServer.McpClientAuthenticator.authenticate")((request) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2011191Z 2026-10-25T02:20:15.2011241Z 530 authenticate: (request) => 2026-10-25T02:20:15.2011281Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.2011283Z 2026-10-25T02:20:15.2011531Z 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-25T02:20:15.2011535Z 2026-10-25T02:20:15.2011589Z 468 : Effect.succeed(undefined), 2026-10-25T02:20:15.2011636Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2011639Z 2026-10-25T02:20:15.2011923Z src/cloud/CliTokenManager.ts:326:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("HttpClientError")(function*(cause) { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2011927Z 2026-10-25T02:20:15.2011979Z 326 HttpClientError: (cause) => 2026-10-25T02:20:15.2012022Z ~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2012024Z 2026-10-25T02:20:15.2012264Z src/cloud/CloudLink.lifecycle.test.ts:166:21 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2012266Z 2026-10-25T02:20:15.2012332Z 166 latest: Effect.succeed(Option.none()), 2026-10-25T02:20:15.2012377Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2012379Z 2026-10-25T02:20:15.2012602Z src/cloud/CloudLink.test.ts:99:17 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2012605Z 2026-10-25T02:20:15.2012666Z 99 latest: Effect.succeed(Option.none()), 2026-10-25T02:20:15.2012710Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2012712Z 2026-10-25T02:20:15.2013056Z src/cloud/ManagedEndpointRuntime.ts:762:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("CloudManagedEndpointRuntime.requestRecovery")((config) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2013060Z 2026-10-25T02:20:15.2013189Z 762 requestRecovery: (config) => Queue.offer(recoveryRequests, config).pipe(Effect.asVoid), 2026-10-25T02:20:15.2013232Z ~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2013234Z 2026-10-25T02:20:15.2013482Z src/cloud/http.test.ts:81:67 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2013485Z 2026-10-25T02:20:15.2013634Z 81 Layer.mock(ConnectReachability.ConnectReachability)({ latest: Effect.succeed(Option.none()) }), 2026-10-25T02:20:15.2013704Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2013706Z 2026-10-25T02:20:15.2014046Z 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-25T02:20:15.2014095Z 2026-10-25T02:20:15.2014179Z 371 commitDesktopUpdate: (requestId, onHandoffAccepted) => 2026-10-25T02:20:15.2014225Z ~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2014227Z 2026-10-25T02:20:15.2014514Z src/device/DeviceService.ts:807:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DeviceService.updateTool")((tool) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2014516Z 2026-10-25T02:20:15.2014567Z 807 updateTool: (tool) => 2026-10-25T02:20:15.2014607Z ~~~~~~~~~~ 2026-10-25T02:20:15.2014609Z 2026-10-25T02:20:15.2014885Z src/device/DeviceService.ts:822:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DeviceService.easAccount")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2014889Z 2026-10-25T02:20:15.2014936Z 822 easAccount: () => 2026-10-25T02:20:15.2014977Z ~~~~~~~~~~ 2026-10-25T02:20:15.2014979Z 2026-10-25T02:20:15.2015297Z src/device/EasDeviceHost.ts:865:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DeviceHost.DeviceHost.ensureAgentReady")((onPhase) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2015300Z 2026-10-25T02:20:15.2015352Z 865 ensureAgentReady: (onPhase) => 2026-10-25T02:20:15.2015395Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2015398Z 2026-10-25T02:20:15.2015623Z src/device/easProjectId.ts:181:7 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-25T02:20:15.2015626Z 2026-10-25T02:20:15.2015677Z 181 Effect.map(Option.some), 2026-10-25T02:20:15.2015716Z ~~~~~~~~~~ 2026-10-25T02:20:15.2015718Z 2026-10-25T02:20:15.2016009Z src/environment/DirectEndpoints.ts:158:31 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DirectEndpoints.resolve")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2016013Z 2026-10-25T02:20:15.2016094Z 158 return DirectEndpoints.of({ resolve: () => resolve }); 2026-10-25T02:20:15.2016142Z ~~~~~~~ 2026-10-25T02:20:15.2016144Z 2026-10-25T02:20:15.2016459Z src/environment/RemoteOpenTargets.ts:81:33 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("RemoteOpenTargets.resolveTargets")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2016461Z 2026-10-25T02:20:15.2016563Z 81 return RemoteOpenTargets.of({ resolveTargets: () => resolveTargets }); 2026-10-25T02:20:15.2016616Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2016619Z 2026-10-25T02:20:15.2016925Z 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-25T02:20:15.2016929Z 2026-10-25T02:20:15.2016980Z 302 isRepository: (cwd) => 2026-10-25T02:20:15.2017020Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.2017022Z 2026-10-25T02:20:15.2017319Z 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-25T02:20:15.2017321Z 2026-10-25T02:20:15.2017411Z 315 hasCommit: (input) => 2026-10-25T02:20:15.2017452Z ~~~~~~~~~ 2026-10-25T02:20:15.2017454Z 2026-10-25T02:20:15.2017755Z 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-25T02:20:15.2017757Z 2026-10-25T02:20:15.2017806Z 327 hasRefNamed: (input) => 2026-10-25T02:20:15.2017890Z ~~~~~~~~~~~ 2026-10-25T02:20:15.2017892Z 2026-10-25T02:20:15.2018187Z 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-25T02:20:15.2018189Z 2026-10-25T02:20:15.2018237Z 346 status: (input) => 2026-10-25T02:20:15.2018279Z ~~~~~~ 2026-10-25T02:20:15.2018281Z 2026-10-25T02:20:15.2018583Z 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-25T02:20:15.2018586Z 2026-10-25T02:20:15.2018634Z 352 localStatus: (input) => 2026-10-25T02:20:15.2018675Z ~~~~~~~~~~~ 2026-10-25T02:20:15.2018677Z 2026-10-25T02:20:15.2018999Z 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-25T02:20:15.2019004Z 2026-10-25T02:20:15.2019059Z 360 remoteStatus: (input, options) => 2026-10-25T02:20:15.2019098Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.2019101Z 2026-10-25T02:20:15.2019435Z 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-25T02:20:15.2019439Z 2026-10-25T02:20:15.2019491Z 369 pullCurrentBranch: (cwd) => 2026-10-25T02:20:15.2019535Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2019537Z 2026-10-25T02:20:15.2019860Z 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-25T02:20:15.2019865Z 2026-10-25T02:20:15.2019921Z 373 runStackedAction: (input, options) => 2026-10-25T02:20:15.2019965Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2019967Z 2026-10-25T02:20:15.2020294Z 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-25T02:20:15.2020296Z 2026-10-25T02:20:15.2020357Z 388 preparePullRequestThread: (input) => 2026-10-25T02:20:15.2020405Z ~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2020407Z 2026-10-25T02:20:15.2020699Z 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-25T02:20:15.2020701Z 2026-10-25T02:20:15.2020749Z 399 listRefs: (input) => 2026-10-25T02:20:15.2020789Z ~~~~~~~~ 2026-10-25T02:20:15.2020793Z 2026-10-25T02:20:15.2021110Z 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-25T02:20:15.2021112Z 2026-10-25T02:20:15.2021168Z 405 createWorktree: (input, options) => 2026-10-25T02:20:15.2021208Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2021210Z 2026-10-25T02:20:15.2021581Z 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-25T02:20:15.2021583Z 2026-10-25T02:20:15.2021638Z 409 listLocalBranchNames: (cwd) => 2026-10-25T02:20:15.2021683Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2021685Z 2026-10-25T02:20:15.2021987Z 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-25T02:20:15.2022032Z 2026-10-25T02:20:15.2022080Z 413 fetchRemote: (input) => 2026-10-25T02:20:15.2022121Z ~~~~~~~~~~~ 2026-10-25T02:20:15.2022123Z 2026-10-25T02:20:15.2022424Z 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-25T02:20:15.2022426Z 2026-10-25T02:20:15.2022480Z 417 remoteExists: (input) => 2026-10-25T02:20:15.2022520Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.2022523Z 2026-10-25T02:20:15.2022837Z 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-25T02:20:15.2022840Z 2026-10-25T02:20:15.2022892Z 421 remoteBranchExists: (input) => 2026-10-25T02:20:15.2022939Z ~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2022941Z 2026-10-25T02:20:15.2023273Z 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-25T02:20:15.2023276Z 2026-10-25T02:20:15.2023339Z 425 resolveRemoteTrackingCommit: (input) => 2026-10-25T02:20:15.2023385Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2023389Z 2026-10-25T02:20:15.2023715Z 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-25T02:20:15.2023717Z 2026-10-25T02:20:15.2023777Z 429 resolveWorktreeBaseRemote: (input) => 2026-10-25T02:20:15.2023820Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2023826Z 2026-10-25T02:20:15.2024152Z 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-25T02:20:15.2024154Z 2026-10-25T02:20:15.2024212Z 433 fetchWorktreeBaseCommit: (input) => 2026-10-25T02:20:15.2024255Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2024257Z 2026-10-25T02:20:15.2024569Z 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-25T02:20:15.2024572Z 2026-10-25T02:20:15.2024622Z 437 removeWorktree: (input) => 2026-10-25T02:20:15.2024662Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2024664Z 2026-10-25T02:20:15.2024970Z 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-25T02:20:15.2024974Z 2026-10-25T02:20:15.2025025Z 441 pruneWorktrees: (input) => 2026-10-25T02:20:15.2025067Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2025069Z 2026-10-25T02:20:15.2025381Z 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-25T02:20:15.2025385Z 2026-10-25T02:20:15.2025475Z 445 deleteLocalBranch: (input) => 2026-10-25T02:20:15.2025519Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2025521Z 2026-10-25T02:20:15.2025820Z 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-25T02:20:15.2025823Z 2026-10-25T02:20:15.2025916Z 449 createRef: (input) => 2026-10-25T02:20:15.2025955Z ~~~~~~~~~ 2026-10-25T02:20:15.2025957Z 2026-10-25T02:20:15.2026255Z 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-25T02:20:15.2026257Z 2026-10-25T02:20:15.2026304Z 457 switchRef: (input) => 2026-10-25T02:20:15.2026343Z ~~~~~~~~~ 2026-10-25T02:20:15.2026345Z 2026-10-25T02:20:15.2026649Z 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-25T02:20:15.2026651Z 2026-10-25T02:20:15.2026699Z 463 renameBranch: (input) => 2026-10-25T02:20:15.2026742Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.2026744Z 2026-10-25T02:20:15.2027142Z src/guest/GuestShareService.test.ts:598: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-25T02:20:15.2027146Z 2026-10-25T02:20:15.2027199Z 598 return guestShares.submit( 2026-10-25T02:20:15.2027238Z ~~~~~~ 2026-10-25T02:20:15.2027242Z 2026-10-25T02:20:15.2027505Z src/htmlRender/headlessChrome.ts:268:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("receive")((raw) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2027507Z 2026-10-25T02:20:15.2027561Z 268 const receive = (raw: string) => { 2026-10-25T02:20:15.2027601Z ~~~~~~~ 2026-10-25T02:20:15.2027603Z 2026-10-25T02:20:15.2027976Z src/mcp/AcpMcpStdioBridge.ts:277: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-25T02:20:15.2027980Z 2026-10-25T02:20:15.2028019Z 277 try { 2026-10-25T02:20:15.2028059Z ~~~~~ 2026-10-25T02:20:15.2028111Z 278 parsed = JSON.parse(line); 2026-10-25T02:20:15.2028156Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2028194Z ... 2026-10-25T02:20:15.2028299Z 280 return yield* respondWithError(null, "Parse error", -32700); 2026-10-25T02:20:15.2028368Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2028410Z 281 } 2026-10-25T02:20:15.2028450Z ~~~~~~~ 2026-10-25T02:20:15.2028453Z 2026-10-25T02:20:15.2028728Z src/mcp/AcpMcpStdioBridge.ts:317:7 - suggestion TS377099: `Effect.ignoreCause` expresses ignored failure more directly than `Effect.catchCause` returning `Effect.void`. effect(catchToIgnore) 2026-10-25T02:20:15.2028731Z 2026-10-25T02:20:15.2028790Z 317 Effect.catchCause(() => Effect.void), 2026-10-25T02:20:15.2028836Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2028839Z 2026-10-25T02:20:15.2029072Z src/mcp/McpDeviceToolkit.test.ts:105:18 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2029075Z 2026-10-25T02:20:15.2029141Z 105 getById: () => Effect.succeed(Option.none()), 2026-10-25T02:20:15.2029186Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2029189Z 2026-10-25T02:20:15.2029554Z src/mcp/McpHttpServer.ts:403:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("previewSnapshotFailure")((cause) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2029557Z 2026-10-25T02:20:15.2029653Z 403 const previewSnapshotFailure = (cause: Cause.Cause) => { 2026-10-25T02:20:15.2029698Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2029700Z 2026-10-25T02:20:15.2029992Z src/mcp/McpHttpServer.ts:906:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("McpServer.McpServer.addTool")((options) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2030040Z 2026-10-25T02:20:15.2030088Z 906 addTool: (options) => 2026-10-25T02:20:15.2030127Z ~~~~~~~ 2026-10-25T02:20:15.2030130Z 2026-10-25T02:20:15.2030412Z 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-25T02:20:15.2030414Z 2026-10-25T02:20:15.2030475Z 22 resolve: () => Effect.succeed(undefined), 2026-10-25T02:20:15.2030527Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2030529Z 2026-10-25T02:20:15.2030820Z src/mcp/McpToolAccess.ts:105:7 - suggestion TS377132: `Effect.andThen` expresses this sequencing more directly than `Effect.flatMap` with a zero-parameter callback. effect(flatMapIgnoredParamToAndThen) 2026-10-25T02:20:15.2030823Z 2026-10-25T02:20:15.2030883Z 105 Effect.flatMap(() => writingCaller), 2026-10-25T02:20:15.2030926Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2030928Z 2026-10-25T02:20:15.2031433Z src/mcp/OrchestratorMcpService.ts:2435: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-25T02:20:15.2031437Z 2026-10-25T02:20:15.2031511Z 2435 const cancelOrphan = Effect.gen(function* () { 2026-10-25T02:20:15.2031565Z ~~~~~~~~~ 2026-10-25T02:20:15.2031567Z 2026-10-25T02:20:15.2031808Z src/mcp/OrchestratorMcpService.ts:2450:17 - This repeated `Effect.mapError(...)` site participates in the hoistable generator-wide mapping. effect(redundantMapError) 2026-10-25T02:20:15.2031894Z 2450 .pipe(Effect.mapError(threadManagementFailure)); 2026-10-25T02:20:15.2031941Z ~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2031944Z 2026-10-25T02:20:15.2032180Z src/mcp/OrchestratorMcpService.ts:2453:17 - This repeated `Effect.mapError(...)` site participates in the hoistable generator-wide mapping. effect(redundantMapError) 2026-10-25T02:20:15.2032261Z 2453 .pipe(Effect.mapError(threadManagementFailure)); 2026-10-25T02:20:15.2032306Z ~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2032308Z 2026-10-25T02:20:15.2032597Z src/mcp/PreviewAutomationBroker.ts:650:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("onNone")(function*() { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2032601Z 2026-10-25T02:20:15.2032645Z 650 onNone: () => 2026-10-25T02:20:15.2032685Z ~~~~~~ 2026-10-25T02:20:15.2032688Z 2026-10-25T02:20:15.2032937Z src/mcp/WorktreeMcpService.test.ts:353:3 - suggestion TS377017: This Effect.gen contains a single return statement. effect(unnecessaryEffectGen) 2026-10-25T02:20:15.2032942Z 2026-10-25T02:20:15.2033014Z 353 Effect.gen(function* () { 2026-10-25T02:20:15.2033080Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2033188Z 354 return yield* WorktreeMcpService.WorktreeMcpService; 2026-10-25T02:20:15.2033285Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2033380Z 355 }).pipe(Effect.provide(harness.layer)); 2026-10-25T02:20:15.2033442Z ~~~~ 2026-10-25T02:20:15.2033445Z 2026-10-25T02:20:15.2033911Z src/mcp/toolkits/pullRequests/handlers.ts:223:27 - suggestion TS377015: This expression contains chained `pipe` calls that can be simplified to a single `pipe` call. effect(unnecessaryPipeChain) 2026-10-25T02:20:15.2033914Z 2026-10-25T02:20:15.2033966Z 223 const thread = yield* engine 2026-10-25T02:20:15.2034011Z ~~~~~~ 2026-10-25T02:20:15.2034060Z 224 .getThreadShell(threadId) 2026-10-25T02:20:15.2034149Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2034214Z 225 .pipe(Effect.map(Option.fromNullishOr)) 2026-10-25T02:20:15.2034268Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2034356Z 226 .pipe(Effect.mapError((cause) => new Failure({ cause }))); 2026-10-25T02:20:15.2034436Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2034438Z 2026-10-25T02:20:15.2034737Z src/mcpApps/McpAppModelContext.ts:94:27 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("McpAppModelContext.set")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2034740Z 2026-10-25T02:20:15.2034865Z 94 McpAppModelContext.of({ set: () => Effect.void, forThread: () => Effect.succeed([]) }), 2026-10-25T02:20:15.2034914Z ~~~ 2026-10-25T02:20:15.2034916Z 2026-10-25T02:20:15.2035216Z src/mcpApps/McpAppModelContext.ts:94:51 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("McpAppModelContext.forThread")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2035220Z 2026-10-25T02:20:15.2035340Z 94 McpAppModelContext.of({ set: () => Effect.void, forThread: () => Effect.succeed([]) }), 2026-10-25T02:20:15.2035401Z ~~~~~~~~~ 2026-10-25T02:20:15.2035404Z 2026-10-25T02:20:15.2035730Z 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-25T02:20:15.2035733Z 2026-10-25T02:20:15.2035780Z 16 record: (records) => 2026-10-25T02:20:15.2035821Z ~~~~~~ 2026-10-25T02:20:15.2035823Z 2026-10-25T02:20:15.2036101Z src/observability/EventLoopMonitor.ts:38:49 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-25T02:20:15.2036105Z 2026-10-25T02:20:15.2036213Z 38 defaultValue: () => ({ latestNoticeableStall: Effect.succeed(undefined) }), 2026-10-25T02:20:15.2036276Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2036279Z 2026-10-25T02:20:15.2036731Z 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-25T02:20:15.2036733Z 2026-10-25T02:20:15.2036836Z 30 const REPLAY_SETTINGS = Schema.decodeUnknownSync(AcpRegistrySettings)({ 2026-10-25T02:20:15.2036890Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2036893Z 2026-10-25T02:20:15.2037209Z 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-25T02:20:15.2037214Z 2026-10-25T02:20:15.2037273Z 48 defaultModel: Effect.succeed(undefined), 2026-10-25T02:20:15.2037323Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2037325Z 2026-10-25T02:20:15.2037638Z 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-25T02:20:15.2037681Z 2026-10-25T02:20:15.2037750Z 169 defaultModel: Effect.succeed(undefined), 2026-10-25T02:20:15.2037802Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2037804Z 2026-10-25T02:20:15.2038222Z 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-25T02:20:15.2038283Z 2026-10-25T02:20:15.2038348Z 306 defaultModel: Effect.succeed(undefined), 2026-10-25T02:20:15.2038398Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2038401Z 2026-10-25T02:20:15.2038708Z 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-25T02:20:15.2038711Z 2026-10-25T02:20:15.2038775Z 542 defaultModel: Effect.succeed(undefined), 2026-10-25T02:20:15.2038824Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2038826Z 2026-10-25T02:20:15.2039168Z src/orchestration-v2/Adapters/ClaudeAdapterV2.test.ts:976:26 - suggestion TS377111: `AbortController` is manually constructed inside Effect code. Use `Effect.abortSignal` for Effect-managed cancellation. effect(abortControllerInEffect) 2026-10-25T02:20:15.2039171Z 2026-10-25T02:20:15.2039234Z 976 const controller = new AbortController(); 2026-10-25T02:20:15.2039287Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2039289Z 2026-10-25T02:20:15.2039607Z src/orchestration-v2/Adapters/ClaudeAdapterV2.test.ts:1327:37 - suggestion TS377015: This expression contains chained `pipe` calls that can be simplified to a single `pipe` call. effect(unnecessaryPipeChain) 2026-10-25T02:20:15.2039610Z 2026-10-25T02:20:15.2039677Z 1327 const requestEvent = yield* runtime.events 2026-10-25T02:20:15.2039733Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2039777Z 1328 .pipe( 2026-10-25T02:20:15.2039819Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2039858Z ... 2026-10-25T02:20:15.2039899Z 1331 ) 2026-10-25T02:20:15.2039939Z ~~~~~~~~~~~ 2026-10-25T02:20:15.2039991Z 1332 .pipe(Effect.forkScoped); 2026-10-25T02:20:15.2040038Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2040040Z 2026-10-25T02:20:15.2040381Z src/orchestration-v2/Adapters/ClaudeAdapterV2.test.ts:1333:28 - suggestion TS377111: `AbortController` is manually constructed inside Effect code. Use `Effect.abortSignal` for Effect-managed cancellation. effect(abortControllerInEffect) 2026-10-25T02:20:15.2040383Z 2026-10-25T02:20:15.2040450Z 1333 const controller = new AbortController(); 2026-10-25T02:20:15.2040504Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2040506Z 2026-10-25T02:20:15.2040843Z src/orchestration-v2/Adapters/ClaudeAdapterV2.test.ts:1356:37 - suggestion TS377111: `AbortController` is manually constructed inside Effect code. Use `Effect.abortSignal` for Effect-managed cancellation. effect(abortControllerInEffect) 2026-10-25T02:20:15.2040848Z 2026-10-25T02:20:15.2040927Z 1356 const cancelledController = new AbortController(); 2026-10-25T02:20:15.2040986Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2040988Z 2026-10-25T02:20:15.2041360Z src/orchestration-v2/Adapters/ClaudeAdapterV2.ts:3970:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.getCapabilities")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2041363Z 2026-10-25T02:20:15.2041469Z 3970 getCapabilities: () => Effect.succeed(ClaudeProviderCapabilitiesV2), 2026-10-25T02:20:15.2041513Z ~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2041515Z 2026-10-25T02:20:15.2041951Z src/orchestration-v2/Adapters/ClaudeAdapterV2.ts:3971:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.planSelectionTransition")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2041954Z 2026-10-25T02:20:15.2042079Z 3971 planSelectionTransition: () => Effect.succeed(turnScopedSelectionTransition()), 2026-10-25T02:20:15.2042126Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2042128Z 2026-10-25T02:20:15.2042489Z src/orchestration-v2/Adapters/ClaudeAgentSdkQueryRunner.test.ts:199:17 - suggestion TS377111: `AbortController` is manually constructed inside Effect code. Use `Effect.abortSignal` for Effect-managed cancellation. effect(abortControllerInEffect) 2026-10-25T02:20:15.2042532Z 2026-10-25T02:20:15.2042593Z 199 signal: new AbortController().signal, 2026-10-25T02:20:15.2042640Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2042642Z 2026-10-25T02:20:15.2043038Z src/orchestration-v2/Adapters/ClaudeTaskOutputTail.ts:59: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-25T02:20:15.2043041Z 2026-10-25T02:20:15.2043098Z 59 const pause = Effect.raceFirst( 2026-10-25T02:20:15.2043144Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2043146Z 2026-10-25T02:20:15.2043439Z src/orchestration-v2/Adapters/CodexAdapterV2.ts:1718:25 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-25T02:20:15.2043444Z 2026-10-25T02:20:15.2043551Z 1718 threadId === null ? Effect.succeed(undefined) : mcpSessions.read(threadId); 2026-10-25T02:20:15.2043605Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2043607Z 2026-10-25T02:20:15.2043971Z src/orchestration-v2/Adapters/CodexAdapterV2.ts:1725:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.getCapabilities")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2043973Z 2026-10-25T02:20:15.2044080Z 1725 getCapabilities: () => Effect.succeed(CodexProviderCapabilitiesV2), 2026-10-25T02:20:15.2044123Z ~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2044126Z 2026-10-25T02:20:15.2044506Z src/orchestration-v2/Adapters/CodexAdapterV2.ts:1726:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.planSelectionTransition")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2044510Z 2026-10-25T02:20:15.2044632Z 1726 planSelectionTransition: () => Effect.succeed(turnScopedSelectionTransition()), 2026-10-25T02:20:15.2044677Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2044679Z 2026-10-25T02:20:15.2045000Z src/orchestration-v2/Adapters/CodexAdapterV2.ts:3002:19 - suggestion TS377095: `Effect.orElseSucceed` expresses the same recovery more directly than `Effect.catch` followed by `Effect.succeed`. effect(catchToOrElseSucceed) 2026-10-25T02:20:15.2045003Z 2026-10-25T02:20:15.2045076Z 3002 Effect.catch(() => Effect.succeed(null)), 2026-10-25T02:20:15.2045120Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.2045123Z 2026-10-25T02:20:15.2045501Z src/orchestration-v2/Adapters/CodexAdapterV2.ts:3003:19 - suggestion TS377120: `Effect.filterOrElse` expresses this conditional validation more directly than `Effect.flatMap` with an identity `Effect.succeed` branch. effect(flatMapConditionalToFilterOrFail) 2026-10-25T02:20:15.2045504Z 2026-10-25T02:20:15.2045566Z 3003 Effect.flatMap((response) => 2026-10-25T02:20:15.2045613Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2045615Z 2026-10-25T02:20:15.2045941Z src/orchestration-v2/Adapters/CodexAdapterV2.ts:3025:19 - suggestion TS377099: `Effect.ignore` expresses ignored failure more directly than `Effect.catch` returning `Effect.void`. effect(catchToIgnore) 2026-10-25T02:20:15.2045945Z 2026-10-25T02:20:15.2046007Z 3025 Effect.catch(() => Effect.void), 2026-10-25T02:20:15.2046052Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.2046054Z 2026-10-25T02:20:15.2046422Z src/orchestration-v2/Adapters/CodexAdapterV2.ts:7192: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-25T02:20:15.2046467Z 2026-10-25T02:20:15.2046552Z 7192 return yield* Effect.fail(failedTermination.error); 2026-10-25T02:20:15.2046595Z ~~~~~ 2026-10-25T02:20:15.2046601Z 2026-10-25T02:20:15.2047037Z 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-25T02:20:15.2047039Z 2026-10-25T02:20:15.2047145Z 33 const DEFAULT_GROK_SETTINGS = Schema.decodeUnknownSync(GrokSettings)({}); 2026-10-25T02:20:15.2047204Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2047206Z 2026-10-25T02:20:15.2047636Z src/orchestration-v2/Adapters/MuseAdapterV2.testkit.ts:409: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-25T02:20:15.2047640Z 2026-10-25T02:20:15.2047767Z 409 const DEFAULT_MUSE_SETTINGS = Schema.decodeUnknownSync(MuseSettings)({ enabled: true }); 2026-10-25T02:20:15.2047823Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2047825Z 2026-10-25T02:20:15.2048176Z src/orchestration-v2/CheckpointCaptureService.ts:235:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("CheckpointCaptureServiceV2.execute")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2048179Z 2026-10-25T02:20:15.2048228Z 235 execute: (input) => 2026-10-25T02:20:15.2048268Z ~~~~~~~ 2026-10-25T02:20:15.2048271Z 2026-10-25T02:20:15.2048535Z src/orchestration-v2/CheckpointRestoreSafety.test.ts:104:24 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2048539Z 2026-10-25T02:20:15.2048645Z 104 get: () => Effect.succeed(Option.some({ workspaceRoot: parent } as never)), 2026-10-25T02:20:15.2048694Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2048697Z 2026-10-25T02:20:15.2049067Z src/orchestration-v2/CheckpointRestoreSafety.ts:40:13 - suggestion TS377116: `Effect.catchIf` expresses selective recovery more directly than `Effect.catch` with a conditional `Effect.fail` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-25T02:20:15.2049070Z 2026-10-25T02:20:15.2049122Z 40 Effect.catch((error) => 2026-10-25T02:20:15.2049166Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.2049168Z 2026-10-25T02:20:15.2049548Z src/orchestration-v2/CheckpointRestoreSafety.ts:80:17 - suggestion TS377116: `Effect.catchIf` expresses selective recovery more directly than `Effect.catch` with a conditional `Effect.fail` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-25T02:20:15.2049552Z 2026-10-25T02:20:15.2049606Z 80 Effect.catch((error) => 2026-10-25T02:20:15.2049653Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.2049655Z 2026-10-25T02:20:15.2049925Z src/orchestration-v2/CheckpointRollbackService.test.ts:232:22 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2049927Z 2026-10-25T02:20:15.2050025Z 232 return Effect.succeed(Option.some({ workspaceRoot } as never)); 2026-10-25T02:20:15.2050105Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2050108Z 2026-10-25T02:20:15.2050472Z 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-25T02:20:15.2050474Z 2026-10-25T02:20:15.2050541Z 142 const batchAbort = new AbortController(); 2026-10-25T02:20:15.2050635Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2050637Z 2026-10-25T02:20:15.2051008Z src/orchestration-v2/CommandOutputHub.test.ts:166:5 - suggestion TS377120: `Effect.filterOrElse` expresses this conditional validation more directly than `Effect.flatMap` with an identity `Effect.succeed` branch. effect(flatMapConditionalToFilterOrFail) 2026-10-25T02:20:15.2051010Z 2026-10-25T02:20:15.2051060Z 166 Effect.flatMap((frame) => 2026-10-25T02:20:15.2051105Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2051107Z 2026-10-25T02:20:15.2051354Z src/orchestration-v2/CommandReceiptStore.ts:164:29 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2051357Z 2026-10-25T02:20:15.2051428Z 164 onNone: () => Effect.succeed(Option.none()), 2026-10-25T02:20:15.2051477Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2051481Z 2026-10-25T02:20:15.2051729Z src/orchestration-v2/CommandReceiptStore.ts:167:21 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2051731Z 2026-10-25T02:20:15.2051794Z 167 ? Effect.succeed(Option.none()) 2026-10-25T02:20:15.2051840Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2051842Z 2026-10-25T02:20:15.2052094Z src/orchestration-v2/CommandReceiptStore.ts:168:58 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-25T02:20:15.2052096Z 2026-10-25T02:20:15.2052197Z 168 : fromApplicationReceipt(receipt).pipe(Effect.map(Option.some)), 2026-10-25T02:20:15.2052262Z ~~~~~~~~~~ 2026-10-25T02:20:15.2052265Z 2026-10-25T02:20:15.2052512Z src/orchestration-v2/CommandReceiptStore.ts:183:17 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2052516Z 2026-10-25T02:20:15.2052575Z 183 ? Effect.succeed(Option.none()) 2026-10-25T02:20:15.2052622Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2052624Z 2026-10-25T02:20:15.2052871Z src/orchestration-v2/CommandReceiptStore.ts:192:25 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-25T02:20:15.2052873Z 2026-10-25T02:20:15.2052936Z 192 }).pipe(Effect.map(Option.some)), 2026-10-25T02:20:15.2052982Z ~~~~~~~~~~ 2026-10-25T02:20:15.2052984Z 2026-10-25T02:20:15.2053218Z src/orchestration-v2/EffectOutbox.ts:423:17 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2053220Z 2026-10-25T02:20:15.2053278Z 423 ? Effect.succeed(Option.none()) 2026-10-25T02:20:15.2053324Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2053326Z 2026-10-25T02:20:15.2053563Z src/orchestration-v2/EffectOutbox.ts:424:39 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-25T02:20:15.2053565Z 2026-10-25T02:20:15.2053643Z 424 : rowToEffect(row).pipe(Effect.map(Option.some)); 2026-10-25T02:20:15.2053697Z ~~~~~~~~~~ 2026-10-25T02:20:15.2053699Z 2026-10-25T02:20:15.2053979Z src/orchestration-v2/EffectWorker.test.ts:109:20 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2053983Z 2026-10-25T02:20:15.2054046Z 109 get: () => Effect.succeed(Option.none()), 2026-10-25T02:20:15.2054093Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2054095Z 2026-10-25T02:20:15.2054333Z src/orchestration-v2/EffectWorker.test.ts:342:24 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2054373Z 2026-10-25T02:20:15.2054460Z 342 claimNext: () => Effect.succeed(Option.some(claimedEffect)), 2026-10-25T02:20:15.2054507Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2054509Z 2026-10-25T02:20:15.2054750Z src/orchestration-v2/EffectWorker.test.ts:409:24 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2054752Z 2026-10-25T02:20:15.2054843Z 409 claimNext: () => Effect.succeed(Option.some(claimedEffect)), 2026-10-25T02:20:15.2054891Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2054893Z 2026-10-25T02:20:15.2055131Z src/orchestration-v2/EffectWorker.test.ts:476:24 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2055134Z 2026-10-25T02:20:15.2055216Z 476 claimNext: () => Effect.succeed(Option.some(claimedEffect)), 2026-10-25T02:20:15.2055262Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2055264Z 2026-10-25T02:20:15.2055503Z src/orchestration-v2/EffectWorker.test.ts:477:18 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2055505Z 2026-10-25T02:20:15.2055593Z 477 get: () => Effect.succeed(Option.some(claimedEffect)), 2026-10-25T02:20:15.2055641Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2055645Z 2026-10-25T02:20:15.2055988Z 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-25T02:20:15.2055990Z 2026-10-25T02:20:15.2056044Z 98 execute: (effect, options) => { 2026-10-25T02:20:15.2056086Z ~~~~~~~ 2026-10-25T02:20:15.2056089Z 2026-10-25T02:20:15.2056420Z 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-25T02:20:15.2056423Z 2026-10-25T02:20:15.2056476Z 180 Effect.catch((cause) => 2026-10-25T02:20:15.2056520Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.2056522Z 2026-10-25T02:20:15.2056814Z 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-25T02:20:15.2056817Z 2026-10-25T02:20:15.2056867Z 110 append: (input) => 2026-10-25T02:20:15.2056909Z ~~~~~~ 2026-10-25T02:20:15.2056911Z 2026-10-25T02:20:15.2057221Z 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-25T02:20:15.2057226Z 2026-10-25T02:20:15.2057282Z 120 appendProjectEvent: (event) => 2026-10-25T02:20:15.2057325Z ~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2057328Z 2026-10-25T02:20:15.2057630Z 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-25T02:20:15.2057672Z 2026-10-25T02:20:15.2057725Z 131 latestSequence: (input) => 2026-10-25T02:20:15.2057769Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2057771Z 2026-10-25T02:20:15.2058034Z src/orchestration-v2/FoundationPersistence.test.ts:1788:26 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2058036Z 2026-10-25T02:20:15.2058125Z 1788 claimNext: () => Effect.succeed(Option.some(claimedEffect)), 2026-10-25T02:20:15.2058220Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2058223Z 2026-10-25T02:20:15.2058483Z src/orchestration-v2/FoundationPersistence.test.ts:1790:11 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2058485Z 2026-10-25T02:20:15.2058533Z 1790 Effect.succeed( 2026-10-25T02:20:15.2058579Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2058581Z 2026-10-25T02:20:15.2058842Z src/orchestration-v2/FoundationPersistence.test.ts:2660:30 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2058844Z 2026-10-25T02:20:15.2058923Z 2660 nextClaimableAt: Effect.succeed(Option.none()), 2026-10-25T02:20:15.2058975Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2058978Z 2026-10-25T02:20:15.2059235Z src/orchestration-v2/FoundationPersistence.test.ts:2877:30 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2059237Z 2026-10-25T02:20:15.2059314Z 2877 nextClaimableAt: Effect.succeed(Option.none()), 2026-10-25T02:20:15.2059395Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2059398Z 2026-10-25T02:20:15.2059758Z src/orchestration-v2/Orchestrator.ts:11970:7 - suggestion TS377120: `Effect.filterOrFail` expresses this conditional validation more directly than `Effect.flatMap` with an identity `Effect.succeed` branch. effect(flatMapConditionalToFilterOrFail) 2026-10-25T02:20:15.2059761Z 2026-10-25T02:20:15.2059815Z 11970 Effect.flatMap((planned) => 2026-10-25T02:20:15.2059857Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2059860Z 2026-10-25T02:20:15.2060195Z src/orchestration-v2/Orchestrator.ts:12391:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.restartContinuationPending")((run) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2060199Z 2026-10-25T02:20:15.2060261Z 12391 restartContinuationPending: (run) => 2026-10-25T02:20:15.2060308Z ~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2060310Z 2026-10-25T02:20:15.2060638Z src/orchestration-v2/Orchestrator.ts:12393:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.awaitRestartContinuation")((run) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2060644Z 2026-10-25T02:20:15.2060703Z 12393 awaitRestartContinuation: (run) => 2026-10-25T02:20:15.2060749Z ~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2060752Z 2026-10-25T02:20:15.2061072Z src/orchestration-v2/Orchestrator.ts:12396:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.autoArmLimitRecovery")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2061076Z 2026-10-25T02:20:15.2061133Z 12396 autoArmLimitRecovery: (input) => 2026-10-25T02:20:15.2061175Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2061177Z 2026-10-25T02:20:15.2061483Z src/orchestration-v2/Orchestrator.ts:12424:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.searchThread")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2061485Z 2026-10-25T02:20:15.2061534Z 12424 searchThread: (input) => 2026-10-25T02:20:15.2061625Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.2061628Z 2026-10-25T02:20:15.2062027Z src/orchestration-v2/Orchestrator.ts:12432: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-25T02:20:15.2062029Z 2026-10-25T02:20:15.2062151Z 12432 getThreadHistoryPage: (threadId, cursor, throughEntryId, conversationOnly) => 2026-10-25T02:20:15.2062238Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2062241Z 2026-10-25T02:20:15.2062570Z src/orchestration-v2/Orchestrator.ts:12436:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getTimelinePage")((threadId, options) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2062573Z 2026-10-25T02:20:15.2062637Z 12436 getTimelinePage: (threadId, options) => 2026-10-25T02:20:15.2062683Z ~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2062685Z 2026-10-25T02:20:15.2062997Z src/orchestration-v2/Orchestrator.ts:12440:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getMessageCount")((threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2063001Z 2026-10-25T02:20:15.2063054Z 12440 getMessageCount: (threadId) => 2026-10-25T02:20:15.2063097Z ~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2063101Z 2026-10-25T02:20:15.2063407Z src/orchestration-v2/Orchestrator.ts:12444:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getTurnItem")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2063409Z 2026-10-25T02:20:15.2063458Z 12444 getTurnItem: (input) => 2026-10-25T02:20:15.2063499Z ~~~~~~~~~~~ 2026-10-25T02:20:15.2063501Z 2026-10-25T02:20:15.2063848Z src/orchestration-v2/Orchestrator.ts:12452:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getThreadRecords")((threadId, fields, filter) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2063850Z 2026-10-25T02:20:15.2063924Z 12452 getThreadRecords: (threadId, fields, filter) => 2026-10-25T02:20:15.2063968Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2063970Z 2026-10-25T02:20:15.2064297Z src/orchestration-v2/Orchestrator.ts:12456:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getThreadProjection")((threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2064301Z 2026-10-25T02:20:15.2064359Z 12456 getThreadProjection: (threadId) => 2026-10-25T02:20:15.2064404Z ~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2064406Z 2026-10-25T02:20:15.2064739Z src/orchestration-v2/Orchestrator.ts:12460:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getCheckpointContext")((threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2064741Z 2026-10-25T02:20:15.2064800Z 12460 getCheckpointContext: (threadId) => 2026-10-25T02:20:15.2064844Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2064847Z 2026-10-25T02:20:15.2065167Z src/orchestration-v2/Orchestrator.ts:12464:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getThreadSnapshot")((threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2065170Z 2026-10-25T02:20:15.2065228Z 12464 getThreadSnapshot: (threadId) => 2026-10-25T02:20:15.2065273Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2065275Z 2026-10-25T02:20:15.2065625Z src/orchestration-v2/Orchestrator.ts:12468:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getThreadSnapshotWindow")((threadId, options) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2065627Z 2026-10-25T02:20:15.2065755Z 12468 getThreadSnapshotWindow: (threadId, options) => 2026-10-25T02:20:15.2065801Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2065803Z 2026-10-25T02:20:15.2066120Z src/orchestration-v2/Orchestrator.ts:12472:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getShellSnapshot")((options) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2066122Z 2026-10-25T02:20:15.2066220Z 12472 getShellSnapshot: (options) => 2026-10-25T02:20:15.2066265Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2066267Z 2026-10-25T02:20:15.2066594Z src/orchestration-v2/Orchestrator.ts:12474:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.listActiveSubagentThreadIds")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2066599Z 2026-10-25T02:20:15.2066658Z 12474 listActiveSubagentThreadIds: () => 2026-10-25T02:20:15.2066708Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2066710Z 2026-10-25T02:20:15.2067030Z src/orchestration-v2/Orchestrator.ts:12476:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.readShellSnapshot")((options) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2067032Z 2026-10-25T02:20:15.2067086Z 12476 readShellSnapshot: (options) => 2026-10-25T02:20:15.2067129Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2067132Z 2026-10-25T02:20:15.2067447Z src/orchestration-v2/Orchestrator.ts:12483:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getThreadShell")((threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2067449Z 2026-10-25T02:20:15.2067503Z 12483 getThreadShell: (threadId) => 2026-10-25T02:20:15.2067547Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2067549Z 2026-10-25T02:20:15.2067881Z src/orchestration-v2/Orchestrator.ts:12487:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.findGuestShareThreadId")((shareId) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2067883Z 2026-10-25T02:20:15.2067943Z 12487 findGuestShareThreadId: (shareId) => 2026-10-25T02:20:15.2067989Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2067991Z 2026-10-25T02:20:15.2068320Z src/orchestration-v2/Orchestrator.ts:12489:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getThreadEventSequence")((threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2068324Z 2026-10-25T02:20:15.2068387Z 12489 getThreadEventSequence: (threadId) => 2026-10-25T02:20:15.2068431Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2068433Z 2026-10-25T02:20:15.2068762Z 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-25T02:20:15.2068764Z 2026-10-25T02:20:15.2068835Z 160 getInstance: () => Effect.succeed(undefined), 2026-10-25T02:20:15.2068890Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2068892Z 2026-10-25T02:20:15.2069199Z 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-25T02:20:15.2069203Z 2026-10-25T02:20:15.2069325Z 269 getShell: (projectId) => get(projectId).pipe(Effect.map(Option.map(toShell))), 2026-10-25T02:20:15.2069364Z ~~~~~~~~ 2026-10-25T02:20:15.2069367Z 2026-10-25T02:20:15.2069702Z 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-25T02:20:15.2069743Z 2026-10-25T02:20:15.2069792Z 270 listShells: (options) => 2026-10-25T02:20:15.2069834Z ~~~~~~~~~~ 2026-10-25T02:20:15.2069836Z 2026-10-25T02:20:15.2070100Z src/orchestration-v2/ProjectionControlReads.test.ts:279:11 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2070103Z 2026-10-25T02:20:15.2070149Z 279 Effect.succeed( 2026-10-25T02:20:15.2070242Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2070244Z 2026-10-25T02:20:15.2070583Z 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-25T02:20:15.2070585Z 2026-10-25T02:20:15.2070632Z 78 get: (instanceId) => 2026-10-25T02:20:15.2070671Z ~~~ 2026-10-25T02:20:15.2070673Z 2026-10-25T02:20:15.2070997Z 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-25T02:20:15.2071000Z 2026-10-25T02:20:15.2071042Z 135 list: () => 2026-10-25T02:20:15.2071083Z ~~~~ 2026-10-25T02:20:15.2071085Z 2026-10-25T02:20:15.2071423Z src/orchestration-v2/ProviderEventIngestor.ts:117:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderTurnAnalytics.record")((properties) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2071427Z 2026-10-25T02:20:15.2071513Z 117 record: (properties: Readonly>) => 2026-10-25T02:20:15.2071553Z ~~~~~~ 2026-10-25T02:20:15.2071555Z 2026-10-25T02:20:15.2071931Z src/orchestration-v2/ProviderEventIngestor.ts:833:15 - suggestion TS377120: `Effect.filterOrElse` expresses this conditional validation more directly than `Effect.flatMap` with an identity `Effect.succeed` branch. effect(flatMapConditionalToFilterOrFail) 2026-10-25T02:20:15.2071933Z 2026-10-25T02:20:15.2071995Z 833 Effect.flatMap((storedEvents) => 2026-10-25T02:20:15.2072038Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2072040Z 2026-10-25T02:20:15.2072301Z src/orchestration-v2/ProviderSessionManager.test.ts:1153:19 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2072305Z 2026-10-25T02:20:15.2072429Z 1153 : Effect.succeed(Option.some(makeBrowserAccessProject(requestedProjectId))), 2026-10-25T02:20:15.2072476Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2072479Z 2026-10-25T02:20:15.2072744Z src/orchestration-v2/ProviderTurnStartService.test.ts:148:13 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2072746Z 2026-10-25T02:20:15.2072795Z 148 Effect.succeed( 2026-10-25T02:20:15.2072838Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2072840Z 2026-10-25T02:20:15.2073103Z src/orchestration-v2/ProviderTurnStartService.test.ts:701:13 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2073105Z 2026-10-25T02:20:15.2073239Z 701 Effect.succeed(Option.some({ workspaceRoot: "/tmp/native-account-project" } as never)), 2026-10-25T02:20:15.2073284Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2073286Z 2026-10-25T02:20:15.2073552Z src/orchestration-v2/ProviderTurnStartService.testkit.ts:14:20 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2073554Z 2026-10-25T02:20:15.2073621Z 14 getById: () => Effect.succeed(Option.none()), 2026-10-25T02:20:15.2073668Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2073670Z 2026-10-25T02:20:15.2074012Z src/orchestration-v2/ProviderTurnStartService.ts:204:39 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-25T02:20:15.2074014Z 2026-10-25T02:20:15.2074097Z 204 Effect.catchCause(() => Effect.succeed(undefined)), 2026-10-25T02:20:15.2074158Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2074208Z 2026-10-25T02:20:15.2074591Z src/orchestration-v2/ProviderTurnStartService.ts:510:15 - suggestion TS377116: `Effect.catchCauseIf` expresses selective recovery more directly than `Effect.catchCause` with a conditional `Effect.failCause` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-25T02:20:15.2074593Z 2026-10-25T02:20:15.2074651Z 510 Effect.catchCause((cause) => 2026-10-25T02:20:15.2074698Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2074700Z 2026-10-25T02:20:15.2075116Z src/orchestration-v2/ProviderTurnStartService.ts:1291: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-25T02:20:15.2075119Z 2026-10-25T02:20:15.2075184Z 1291 return runExecution.startRootRun({ 2026-10-25T02:20:15.2075222Z ~~~~~~ 2026-10-25T02:20:15.2075226Z 2026-10-25T02:20:15.2075484Z src/orchestration-v2/PullRequestWatchReactor.ts:467:53 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-25T02:20:15.2075486Z 2026-10-25T02:20:15.2075589Z 467 ? pullRequests.activity(reference).pipe(Effect.map(Option.some)) 2026-10-25T02:20:15.2075649Z ~~~~~~~~~~ 2026-10-25T02:20:15.2075652Z 2026-10-25T02:20:15.2076019Z 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-25T02:20:15.2076022Z 2026-10-25T02:20:15.2076092Z 49 cleanupScheduledTasks: (threadId: ThreadId) => 2026-10-25T02:20:15.2076136Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2076138Z 2026-10-25T02:20:15.2076491Z 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-25T02:20:15.2076494Z 2026-10-25T02:20:15.2076556Z 58 cleanupTerminals: (threadId: string) => 2026-10-25T02:20:15.2076598Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2076604Z 2026-10-25T02:20:15.2076952Z 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-25T02:20:15.2076954Z 2026-10-25T02:20:15.2077017Z 66 cleanupPreviews: (threadId: string) => 2026-10-25T02:20:15.2077060Z ~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2077062Z 2026-10-25T02:20:15.2077426Z 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-25T02:20:15.2077430Z 2026-10-25T02:20:15.2077522Z 74 cleanupAttachments: (attachmentIds: ReadonlyArray) => 2026-10-25T02:20:15.2077565Z ~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2077567Z 2026-10-25T02:20:15.2077831Z src/orchestration-v2/RunExecutionService.test.ts:1836:16 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-25T02:20:15.2077873Z 2026-10-25T02:20:15.2077950Z 1836 ).pipe(Effect.map(Option.some)), 2026-10-25T02:20:15.2077994Z ~~~~~~~~~~ 2026-10-25T02:20:15.2077997Z 2026-10-25T02:20:15.2078429Z src/orchestration-v2/RunExecutionService.ts:929:15 - suggestion TS377116: `Effect.catchCauseIf` expresses selective recovery more directly than `Effect.catchCause` with a conditional `Effect.failCause` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-25T02:20:15.2078492Z 2026-10-25T02:20:15.2078548Z 929 Effect.catchCause((cause) => 2026-10-25T02:20:15.2078594Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2078596Z 2026-10-25T02:20:15.2078836Z src/orchestration-v2/RuntimePolicy.test.ts:90:9 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2078838Z 2026-10-25T02:20:15.2078885Z 90 Effect.succeed( 2026-10-25T02:20:15.2078926Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2078930Z 2026-10-25T02:20:15.2079229Z 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-25T02:20:15.2079232Z 2026-10-25T02:20:15.2079278Z 54 resolve: (input) => 2026-10-25T02:20:15.2079351Z ~~~~~~~ 2026-10-25T02:20:15.2079353Z 2026-10-25T02:20:15.2079626Z src/orchestration-v2/RuntimeRequestService.test.ts:29:7 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2079629Z 2026-10-25T02:20:15.2079673Z 29 Effect.succeed( 2026-10-25T02:20:15.2079715Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2079718Z 2026-10-25T02:20:15.2079973Z src/orchestration-v2/ThreadLaunchService.test.ts:189:33 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2079977Z 2026-10-25T02:20:15.2080072Z 189 getByWorkspaceRoot: () => Effect.succeed(Option.some(project)), 2026-10-25T02:20:15.2080123Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2080127Z 2026-10-25T02:20:15.2080377Z src/orchestration-v2/ThreadLaunchService.test.ts:220:32 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2080381Z 2026-10-25T02:20:15.2080466Z 220 folderForThread: () => Effect.succeed(Option.none()), 2026-10-25T02:20:15.2080518Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2080521Z 2026-10-25T02:20:15.2080852Z 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-25T02:20:15.2080854Z 2026-10-25T02:20:15.2080901Z 91 archive: (input) => 2026-10-25T02:20:15.2080943Z ~~~~~~~ 2026-10-25T02:20:15.2080945Z 2026-10-25T02:20:15.2081279Z 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-25T02:20:15.2081281Z 2026-10-25T02:20:15.2081330Z 97 unarchive: (input) => 2026-10-25T02:20:15.2081372Z ~~~~~~~~~ 2026-10-25T02:20:15.2081376Z 2026-10-25T02:20:15.2081703Z 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-25T02:20:15.2081705Z 2026-10-25T02:20:15.2081752Z 103 delete: (input) => 2026-10-25T02:20:15.2081793Z ~~~~~~ 2026-10-25T02:20:15.2081795Z 2026-10-25T02:20:15.2082188Z 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-25T02:20:15.2082191Z 2026-10-25T02:20:15.2082244Z 109 updateMetadata: (input) => 2026-10-25T02:20:15.2082284Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2082286Z 2026-10-25T02:20:15.2082633Z 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-25T02:20:15.2082678Z 2026-10-25T02:20:15.2082728Z 118 setRuntimeMode: (input) => 2026-10-25T02:20:15.2082769Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2082771Z 2026-10-25T02:20:15.2083123Z 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-25T02:20:15.2083125Z 2026-10-25T02:20:15.2083179Z 125 setInteractionMode: (input) => 2026-10-25T02:20:15.2083224Z ~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2083226Z 2026-10-25T02:20:15.2083573Z 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-25T02:20:15.2083577Z 2026-10-25T02:20:15.2083630Z 132 setModelSelection: (input) => 2026-10-25T02:20:15.2083671Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2083675Z 2026-10-25T02:20:15.2084051Z src/orchestration-v2/ThreadManagementService.ts:709:7 - suggestion TS377120: `Effect.filterOrFail` expresses this conditional validation more directly than `Effect.flatMap` with an identity `Effect.succeed` branch. effect(flatMapConditionalToFilterOrFail) 2026-10-25T02:20:15.2084053Z 2026-10-25T02:20:15.2084111Z 709 Effect.flatMap((projection) => 2026-10-25T02:20:15.2084156Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2084158Z 2026-10-25T02:20:15.2084440Z src/orchestration-v2/ThreadManagementService.ts:726:5 - suggestion TS377015: This expression contains chained `pipe` calls that can be simplified to a single `pipe` call. effect(unnecessaryPipeChain) 2026-10-25T02:20:15.2084442Z 2026-10-25T02:20:15.2084511Z 726 ensureProjectionTranscript(input.threadId) 2026-10-25T02:20:15.2084565Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2084697Z 727 .pipe(Effect.andThen(orchestrator.getThreadRecords(input.threadId, fields, filter))) 2026-10-25T02:20:15.2084782Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2084820Z ... 2026-10-25T02:20:15.2084861Z 746 ), 2026-10-25T02:20:15.2084900Z ~~~~~~~~~~ 2026-10-25T02:20:15.2084941Z 747 ); 2026-10-25T02:20:15.2084980Z ~~~~~~~ 2026-10-25T02:20:15.2084982Z 2026-10-25T02:20:15.2085369Z src/orchestration-v2/ThreadManagementService.ts:737:9 - suggestion TS377120: `Effect.filterOrFail` expresses this conditional validation more directly than `Effect.flatMap` with an identity `Effect.succeed` branch. effect(flatMapConditionalToFilterOrFail) 2026-10-25T02:20:15.2085372Z 2026-10-25T02:20:15.2085429Z 737 Effect.flatMap((projection) => 2026-10-25T02:20:15.2085474Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2085478Z 2026-10-25T02:20:15.2085848Z src/orchestration-v2/ThreadManagementService.ts:1198: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-25T02:20:15.2085850Z 2026-10-25T02:20:15.2085949Z 1198 if (failures[0] !== undefined) return yield* Effect.fail(failures[0]); 2026-10-25T02:20:15.2086006Z ~~~~~ 2026-10-25T02:20:15.2086009Z 2026-10-25T02:20:15.2086405Z src/orchestration-v2/ThreadManagementService.ts:1209:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadManagementService.searchThread")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2086408Z 2026-10-25T02:20:15.2086461Z 1209 searchThread: (input) => 2026-10-25T02:20:15.2088671Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.2088674Z 2026-10-25T02:20:15.2089209Z src/orchestration-v2/ThreadManagementService.ts:1214: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-25T02:20:15.2089211Z 2026-10-25T02:20:15.2089371Z 1214 getThreadHistoryPage: (threadId, cursor, throughEntryId, conversationOnly) => 2026-10-25T02:20:15.2089417Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2089419Z 2026-10-25T02:20:15.2089797Z src/orchestration-v2/ThreadManagementService.ts:1220:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadManagementService.getTimelinePage")((threadId, options) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2089799Z 2026-10-25T02:20:15.2089863Z 1220 getTimelinePage: (threadId, options) => 2026-10-25T02:20:15.2089906Z ~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2089908Z 2026-10-25T02:20:15.2090274Z src/orchestration-v2/ThreadManagementService.ts:1224:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadManagementService.getMessageCount")((threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2090276Z 2026-10-25T02:20:15.2090329Z 1224 getMessageCount: (threadId) => 2026-10-25T02:20:15.2090374Z ~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2090376Z 2026-10-25T02:20:15.2090727Z src/orchestration-v2/ThreadManagementService.ts:1228:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadManagementService.getTurnItem")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2090729Z 2026-10-25T02:20:15.2090779Z 1228 getTurnItem: (input) => 2026-10-25T02:20:15.2090824Z ~~~~~~~~~~~ 2026-10-25T02:20:15.2090828Z 2026-10-25T02:20:15.2091211Z src/orchestration-v2/ThreadManagementService.ts:1233:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadManagementService.getThreadRecords")((threadId, fields, filter) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2091214Z 2026-10-25T02:20:15.2091287Z 1233 getThreadRecords: (threadId, fields, filter) => 2026-10-25T02:20:15.2091332Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2091334Z 2026-10-25T02:20:15.2091735Z src/orchestration-v2/ThreadManagementService.ts:1274:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("LegacyV1ThreadImporter.LegacyV1ThreadImporter.ensureTranscript")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2091737Z 2026-10-25T02:20:15.2091876Z 1274 ensureTranscript: () => Effect.succeed({ importedThreadCount: 0, importedMessageCount: 0 }), 2026-10-25T02:20:15.2091918Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2091921Z 2026-10-25T02:20:15.2092195Z src/orchestration-v2/ThreadPullRequestService.test.ts:118:29 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2092199Z 2026-10-25T02:20:15.2092282Z 118 getShell: () => Effect.succeed(Option.some(project)), 2026-10-25T02:20:15.2092334Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2092336Z 2026-10-25T02:20:15.2092605Z src/orchestration-v2/ThreadPullRequestService.test.ts:237:31 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2092608Z 2026-10-25T02:20:15.2092736Z 237 getShell: () => Effect.succeed(Option.some(project)), 2026-10-25T02:20:15.2092789Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2092791Z 2026-10-25T02:20:15.2093181Z src/orchestration-v2/ThreadPullRequestService.ts:322:17 - suggestion TS377116: `Effect.catchCauseIf` expresses selective recovery more directly than `Effect.catchCause` with a conditional `Effect.failCause` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-25T02:20:15.2093233Z 2026-10-25T02:20:15.2093292Z 322 Effect.catchCause((cause) => 2026-10-25T02:20:15.2093339Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2093341Z 2026-10-25T02:20:15.2093721Z src/orchestration-v2/ThreadSettlementService.ts:344:11 - suggestion TS377116: `Effect.catchCauseIf` expresses selective recovery more directly than `Effect.catchCause` with a conditional `Effect.failCause` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-25T02:20:15.2093724Z 2026-10-25T02:20:15.2093781Z 344 Effect.catchCause((cause) => 2026-10-25T02:20:15.2093826Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2093828Z 2026-10-25T02:20:15.2094205Z src/orchestration-v2/ThreadSettlementService.ts:500:11 - suggestion TS377116: `Effect.catchCauseIf` expresses selective recovery more directly than `Effect.catchCause` with a conditional `Effect.failCause` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-25T02:20:15.2094209Z 2026-10-25T02:20:15.2094262Z 500 Effect.catchCause((cause) => 2026-10-25T02:20:15.2094306Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2094308Z 2026-10-25T02:20:15.2094685Z src/orchestration-v2/ThreadSettlementService.ts:518:7 - suggestion TS377116: `Effect.catchCauseIf` expresses selective recovery more directly than `Effect.catchCause` with a conditional `Effect.failCause` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-25T02:20:15.2094687Z 2026-10-25T02:20:15.2094741Z 518 Effect.catchCause((cause) => 2026-10-25T02:20:15.2094787Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2094789Z 2026-10-25T02:20:15.2095166Z src/orchestration-v2/ThreadSettlementService.ts:557:9 - suggestion TS377116: `Effect.catchCauseIf` expresses selective recovery more directly than `Effect.catchCause` with a conditional `Effect.failCause` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-25T02:20:15.2095169Z 2026-10-25T02:20:15.2095221Z 557 Effect.catchCause((cause) => 2026-10-25T02:20:15.2095269Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2095272Z 2026-10-25T02:20:15.2095630Z 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-25T02:20:15.2095632Z 2026-10-25T02:20:15.2095687Z 106 normalize: (item, runOrdinal) => 2026-10-25T02:20:15.2095727Z ~~~~~~~~~ 2026-10-25T02:20:15.2095729Z 2026-10-25T02:20:15.2096135Z 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-25T02:20:15.2096137Z 2026-10-25T02:20:15.2096240Z 54 const thread = Schema.decodeUnknownSync(OrchestrationV2AppThread)({ 2026-10-25T02:20:15.2096289Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2096291Z 2026-10-25T02:20:15.2096663Z src/orchestration-v2/http.ts:240: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-25T02:20:15.2096665Z 2026-10-25T02:20:15.2096704Z 240 try { 2026-10-25T02:20:15.2096745Z ~~~~~ 2026-10-25T02:20:15.2096866Z 241 decodeThreadHistoryCursor(args.query.cursor); 2026-10-25T02:20:15.2096932Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2096971Z ... 2026-10-25T02:20:15.2097103Z 245 return yield* failEnvironmentInternal("orchestration_thread_history_failed", cause); 2026-10-25T02:20:15.2097191Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2097232Z 246 } 2026-10-25T02:20:15.2097314Z ~~~~~~~~~~~ 2026-10-25T02:20:15.2097317Z 2026-10-25T02:20:15.2097564Z src/orchestration-v2/runtimeLayer.test.ts:120:18 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2097566Z 2026-10-25T02:20:15.2097635Z 120 getById: () => Effect.succeed(Option.none()), 2026-10-25T02:20:15.2097682Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2097684Z 2026-10-25T02:20:15.2097933Z src/orchestration-v2/runtimeLayer.test.ts:997:11 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2097935Z 2026-10-25T02:20:15.2097982Z 997 Effect.succeed( 2026-10-25T02:20:15.2098027Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2098029Z 2026-10-25T02:20:15.2098402Z src/orchestration-v2/testkit/CommandOutputRecorder.ts:37:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("CommandOutputHub.CommandOutputHub.append")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2098406Z 2026-10-25T02:20:15.2098454Z 37 append: (input) => 2026-10-25T02:20:15.2098493Z ~~~~~~ 2026-10-25T02:20:15.2098497Z 2026-10-25T02:20:15.2098818Z src/orchestration-v2/testkit/OrchestratorScenario.ts:282:13 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("awaitDispatch")(function*(key) { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2098820Z 2026-10-25T02:20:15.2098882Z 282 const awaitDispatch = (key: string) => 2026-10-25T02:20:15.2098925Z ~~~~~~~~~~~~~ 2026-10-25T02:20:15.2098928Z 2026-10-25T02:20:15.2099360Z src/orchestration-v2/testkit/ProviderReplayHarness.ts:445:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadTitleRegenerationService.ThreadTitleRegenerationService.execute")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2099364Z 2026-10-25T02:20:15.2099415Z 445 execute: () => Effect.void, 2026-10-25T02:20:15.2099483Z ~~~~~~~ 2026-10-25T02:20:15.2099485Z 2026-10-25T02:20:15.2099826Z src/persistence/PullRequestFilesViewed.ts:87:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("PullRequestFilesViewedRepository.list")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2099828Z 2026-10-25T02:20:15.2099873Z 87 list: (input) => 2026-10-25T02:20:15.2099913Z ~~~~ 2026-10-25T02:20:15.2099916Z 2026-10-25T02:20:15.2100248Z src/persistence/PullRequestFilesViewed.ts:97:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("PullRequestFilesViewedRepository.set")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2100252Z 2026-10-25T02:20:15.2100294Z 97 set: (input) => 2026-10-25T02:20:15.2100334Z ~~~ 2026-10-25T02:20:15.2100336Z 2026-10-25T02:20:15.2100671Z 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-25T02:20:15.2100674Z 2026-10-25T02:20:15.2100716Z 54 get: (key) => 2026-10-25T02:20:15.2100754Z ~~~ 2026-10-25T02:20:15.2100756Z 2026-10-25T02:20:15.2101147Z 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-25T02:20:15.2101150Z 2026-10-25T02:20:15.2101202Z 64 put: (key, guide) => 2026-10-25T02:20:15.2101242Z ~~~ 2026-10-25T02:20:15.2101244Z 2026-10-25T02:20:15.2101583Z 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-25T02:20:15.2101628Z 2026-10-25T02:20:15.2101678Z 45 Effect.catch((error) => 2026-10-25T02:20:15.2101721Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.2101723Z 2026-10-25T02:20:15.2102043Z src/preview/DesktopBrowserChannel.ts:67:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBrowserChannel.awaitAttached")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2102046Z 2026-10-25T02:20:15.2102112Z 67 awaitAttached: () => Effect.succeed(false), 2026-10-25T02:20:15.2102152Z ~~~~~~~~~~~~~ 2026-10-25T02:20:15.2102156Z 2026-10-25T02:20:15.2102468Z src/preview/DesktopBrowserChannel.ts:70:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBrowserChannel.isAttached")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2102471Z 2026-10-25T02:20:15.2102531Z 70 isAttached: () => Effect.succeed(false), 2026-10-25T02:20:15.2102574Z ~~~~~~~~~~ 2026-10-25T02:20:15.2102576Z 2026-10-25T02:20:15.2102883Z src/preview/DesktopBrowserChannel.ts:71:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBrowserChannel.endpoint")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2102885Z 2026-10-25T02:20:15.2102987Z 71 endpoint: () => Effect.die("No desktop app is attached to this server."), 2026-10-25T02:20:15.2103026Z ~~~~~~~~ 2026-10-25T02:20:15.2103028Z 2026-10-25T02:20:15.2103334Z src/preview/DesktopBrowserChannel.ts:72:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBrowserChannel.pointer")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2103336Z 2026-10-25T02:20:15.2103387Z 72 pointer: () => Effect.void, 2026-10-25T02:20:15.2103427Z ~~~~~~~ 2026-10-25T02:20:15.2103429Z 2026-10-25T02:20:15.2103764Z src/preview/DesktopBrowserChannel.ts:185:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBrowserChannel.awaitAttached")((key, timeout) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2103770Z 2026-10-25T02:20:15.2103822Z 185 awaitAttached: (key, timeout) => 2026-10-25T02:20:15.2103863Z ~~~~~~~~~~~~~ 2026-10-25T02:20:15.2103866Z 2026-10-25T02:20:15.2104184Z src/preview/DesktopBrowserChannel.ts:207:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBrowserChannel.isAttached")((key) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2104186Z 2026-10-25T02:20:15.2104287Z 207 isAttached: (key) => Effect.sync(() => attachedTabs.has(keyOf(key))), 2026-10-25T02:20:15.2104326Z ~~~~~~~~~~ 2026-10-25T02:20:15.2104329Z 2026-10-25T02:20:15.2104651Z src/preview/DesktopBrowserChannel.ts:209:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBrowserChannel.pointer")((key, pointer) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2104655Z 2026-10-25T02:20:15.2104759Z 209 pointer: (key, pointer) => command({ type: "pointer", ...key, ...pointer }), 2026-10-25T02:20:15.2104798Z ~~~~~~~ 2026-10-25T02:20:15.2104800Z 2026-10-25T02:20:15.2105304Z src/preview/ServerBrowser.ts:472: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-25T02:20:15.2105307Z 2026-10-25T02:20:15.2105401Z 472 executable: () => Effect.runPromise(previewBrowser.executable), 2026-10-25T02:20:15.2105455Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2105457Z 2026-10-25T02:20:15.2105903Z src/preview/ServerBrowser.ts:678: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-25T02:20:15.2105949Z 2026-10-25T02:20:15.2106000Z 678 ? Effect.runPromise( 2026-10-25T02:20:15.2106045Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2106047Z 2026-10-25T02:20:15.2106487Z src/preview/ServerBrowser.ts:687: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-25T02:20:15.2106491Z 2026-10-25T02:20:15.2106569Z 687 const scope = await Effect.runPromise(Scope.make()); 2026-10-25T02:20:15.2106621Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2106623Z 2026-10-25T02:20:15.2107065Z src/preview/ServerBrowser.ts:689: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-25T02:20:15.2107068Z 2026-10-25T02:20:15.2107132Z 689 const endpoint = await Effect.runPromise( 2026-10-25T02:20:15.2107183Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2107186Z 2026-10-25T02:20:15.2107628Z src/preview/ServerBrowser.ts:699: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-25T02:20:15.2107630Z 2026-10-25T02:20:15.2107714Z 699 await Effect.runPromise(Scope.close(scope, Exit.void)); 2026-10-25T02:20:15.2107763Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2107765Z 2026-10-25T02:20:15.2108206Z src/preview/ServerBrowser.ts:703: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-25T02:20:15.2108208Z 2026-10-25T02:20:15.2108293Z 703 await Effect.runPromise(Scope.close(scope, Exit.void)); 2026-10-25T02:20:15.2108339Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2108342Z 2026-10-25T02:20:15.2108789Z src/preview/ServerBrowser.ts:1185: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-25T02:20:15.2108792Z 2026-10-25T02:20:15.2108844Z 1185 await Effect.runPromise( 2026-10-25T02:20:15.2108889Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2108891Z 2026-10-25T02:20:15.2109342Z src/preview/ServerBrowser.ts:1678: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-25T02:20:15.2109344Z 2026-10-25T02:20:15.2109396Z 1678 : await Effect.runPromise( 2026-10-25T02:20:15.2109509Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2109512Z 2026-10-25T02:20:15.2109953Z src/preview/ServerBrowser.ts:1742: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-25T02:20:15.2109998Z 2026-10-25T02:20:15.2110054Z 1742 ? await Effect.runPromise( 2026-10-25T02:20:15.2110102Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2110105Z 2026-10-25T02:20:15.2110369Z src/preview/ServerBrowser.ts:1745:58 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-25T02:20:15.2110373Z 2026-10-25T02:20:15.2110481Z 1745 ServerBrowserTabNotFoundError: () => Effect.succeed(undefined), 2026-10-25T02:20:15.2110551Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2110553Z 2026-10-25T02:20:15.2111005Z src/preview/ServerBrowser.ts:1751: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-25T02:20:15.2111009Z 2026-10-25T02:20:15.2111081Z 1751 const { sessions } = await Effect.runPromise( 2026-10-25T02:20:15.2111140Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2111142Z 2026-10-25T02:20:15.2111587Z src/preview/ServerBrowser.ts:1778: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-25T02:20:15.2111589Z 2026-10-25T02:20:15.2111645Z 1778 await Effect.runPromise( 2026-10-25T02:20:15.2111691Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2111693Z 2026-10-25T02:20:15.2112135Z src/preview/ServerBrowser.ts:1809: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-25T02:20:15.2112138Z 2026-10-25T02:20:15.2112193Z 1809 await Effect.runPromise( 2026-10-25T02:20:15.2112239Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2112241Z 2026-10-25T02:20:15.2112684Z src/preview/ServerBrowser.ts:1873: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-25T02:20:15.2112686Z 2026-10-25T02:20:15.2112817Z 1873 await Effect.runPromise(manager.close({ threadId: tab.threadId, tabId: tab.tabId })); 2026-10-25T02:20:15.2112863Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2112865Z 2026-10-25T02:20:15.2113305Z src/preview/ServerBrowser.ts:1940: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-25T02:20:15.2113309Z 2026-10-25T02:20:15.2113360Z 1940 await Effect.runPromise( 2026-10-25T02:20:15.2113405Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2113407Z 2026-10-25T02:20:15.2113891Z src/preview/ServerBrowser.ts:1952: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-25T02:20:15.2113893Z 2026-10-25T02:20:15.2113964Z 1952 const snapshot = await Effect.runPromise( 2026-10-25T02:20:15.2114019Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2114062Z 2026-10-25T02:20:15.2114504Z src/preview/ServerBrowser.ts:2198: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-25T02:20:15.2114506Z 2026-10-25T02:20:15.2114555Z 2198 await Effect.runPromise( 2026-10-25T02:20:15.2114601Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2114604Z 2026-10-25T02:20:15.2114882Z 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-25T02:20:15.2114884Z 2026-10-25T02:20:15.2114956Z 179 const receive = (chunk: Uint8Array | string) => { 2026-10-25T02:20:15.2114998Z ~~~~~~~ 2026-10-25T02:20:15.2115001Z 2026-10-25T02:20:15.2115298Z 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-25T02:20:15.2115302Z 2026-10-25T02:20:15.2115396Z 209 Effect.catch(() => Effect.succeed(HttpServerResponse.empty())), 2026-10-25T02:20:15.2115437Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.2115439Z 2026-10-25T02:20:15.2115765Z src/process/externalLauncher.ts:822:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ExternalLauncher.resolveAvailableEditors")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2115768Z 2026-10-25T02:20:15.2115855Z 822 resolveAvailableEditors: () => cachedAvailableEditors, 2026-10-25T02:20:15.2115899Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2115901Z 2026-10-25T02:20:15.2116232Z src/process/externalLauncher.ts:823:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ExternalLauncher.resolveFileManagerRevealKind")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2116236Z 2026-10-25T02:20:15.2116296Z 823 resolveFileManagerRevealKind: () => 2026-10-25T02:20:15.2116341Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2116343Z 2026-10-25T02:20:15.2116651Z src/process/externalLauncher.ts:827:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ExternalLauncher.launchBrowser")((target) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2116655Z 2026-10-25T02:20:15.2116705Z 827 launchBrowser: (target) => 2026-10-25T02:20:15.2116746Z ~~~~~~~~~~~~~ 2026-10-25T02:20:15.2116748Z 2026-10-25T02:20:15.2117054Z src/process/externalLauncher.ts:831:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ExternalLauncher.launchEditor")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2117056Z 2026-10-25T02:20:15.2117107Z 831 launchEditor: (input) => 2026-10-25T02:20:15.2117147Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.2117149Z 2026-10-25T02:20:15.2117399Z src/project/AgentSessionImporter.test.ts:212:15 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2117401Z 2026-10-25T02:20:15.2117449Z 212 Effect.succeed( 2026-10-25T02:20:15.2117493Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2117495Z 2026-10-25T02:20:15.2117771Z src/project/ManagedProjectFolders.ts:333:13 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2117773Z 2026-10-25T02:20:15.2117857Z 333 ? Effect.succeed(Option.some(folderFor(id.slice(-8)))) 2026-10-25T02:20:15.2117902Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2117904Z 2026-10-25T02:20:15.2118274Z src/project/ManagedProjectFolders.ts:335:15 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2118333Z 2026-10-25T02:20:15.2118403Z 335 ? Effect.succeed(Option.some(fullFolder)) 2026-10-25T02:20:15.2118446Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2118448Z 2026-10-25T02:20:15.2118766Z src/project/ProjectCloneTracker.ts:421:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProjectCloneTracker.start")((input, hooks) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2118768Z 2026-10-25T02:20:15.2118848Z 421 start: (input, hooks) => locked(start(input, hooks)), 2026-10-25T02:20:15.2118889Z ~~~~~ 2026-10-25T02:20:15.2118892Z 2026-10-25T02:20:15.2119204Z src/project/ProjectCloneTracker.ts:422:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProjectCloneTracker.cancel")((projectId) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2119208Z 2026-10-25T02:20:15.2119278Z 422 cancel: (projectId) => locked(cancel(projectId)), 2026-10-25T02:20:15.2119321Z ~~~~~~ 2026-10-25T02:20:15.2119357Z 2026-10-25T02:20:15.2119681Z src/project/ProjectCloneTracker.ts:423:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProjectCloneTracker.retry")((projectId) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2119683Z 2026-10-25T02:20:15.2119751Z 423 retry: (projectId) => locked(retry(projectId)), 2026-10-25T02:20:15.2119791Z ~~~~~ 2026-10-25T02:20:15.2119795Z 2026-10-25T02:20:15.2120104Z src/project/ProjectCloneTracker.ts:424:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProjectCloneTracker.discard")((projectId) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2120106Z 2026-10-25T02:20:15.2120180Z 424 discard: (projectId) => locked(discard(projectId)), 2026-10-25T02:20:15.2120222Z ~~~~~~~ 2026-10-25T02:20:15.2120226Z 2026-10-25T02:20:15.2120556Z 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-25T02:20:15.2120558Z 2026-10-25T02:20:15.2120658Z 21 get: (key) => Effect.sync(() => Option.fromUndefinedOr(bytes.get(key))), 2026-10-25T02:20:15.2120697Z ~~~ 2026-10-25T02:20:15.2120699Z 2026-10-25T02:20:15.2121036Z 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-25T02:20:15.2121038Z 2026-10-25T02:20:15.2121085Z 22 set: (key, value) => 2026-10-25T02:20:15.2121124Z ~~~ 2026-10-25T02:20:15.2121126Z 2026-10-25T02:20:15.2121460Z 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-25T02:20:15.2121464Z 2026-10-25T02:20:15.2121510Z 26 remove: (key) => 2026-10-25T02:20:15.2121551Z ~~~~~~ 2026-10-25T02:20:15.2121553Z 2026-10-25T02:20:15.2121931Z 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-25T02:20:15.2121934Z 2026-10-25T02:20:15.2122031Z 30 create: () => Effect.die("Handoff does not create persistent secrets."), 2026-10-25T02:20:15.2122070Z ~~~~~~ 2026-10-25T02:20:15.2122074Z 2026-10-25T02:20:15.2122424Z 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-25T02:20:15.2122471Z 2026-10-25T02:20:15.2122602Z 31 getOrCreateRandom: () => Effect.die("Handoff uses the destination environment identity."), 2026-10-25T02:20:15.2122647Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2122649Z 2026-10-25T02:20:15.2123064Z 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-25T02:20:15.2123067Z 2026-10-25T02:20:15.2123179Z 205 return yield* Schema.decodeUnknownEffect(Schema.fromJsonString(schema))( 2026-10-25T02:20:15.2123230Z ~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2123232Z 2026-10-25T02:20:15.2123504Z src/provider/CodexProvider.ts:559:11 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-25T02:20:15.2123509Z 2026-10-25T02:20:15.2123561Z 559 ? Effect.succeed(undefined) 2026-10-25T02:20:15.2123607Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2123609Z 2026-10-25T02:20:15.2123926Z src/provider/ModelManifest.ts:270:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ModelCatalog.ModelCatalog.current")((driverKind) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2123928Z 2026-10-25T02:20:15.2123980Z 270 current: (driverKind) => 2026-10-25T02:20:15.2124020Z ~~~~~~~ 2026-10-25T02:20:15.2124023Z 2026-10-25T02:20:15.2124384Z 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-25T02:20:15.2124386Z 2026-10-25T02:20:15.2124443Z 284 return yield* Effect.fail( 2026-10-25T02:20:15.2124487Z ~~~~~ 2026-10-25T02:20:15.2124491Z 2026-10-25T02:20:15.2124811Z src/provider/ProviderAuthService.ts:209:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAuthService.importProfile")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2124813Z 2026-10-25T02:20:15.2124864Z 209 importProfile: (input) => 2026-10-25T02:20:15.2124904Z ~~~~~~~~~~~~~ 2026-10-25T02:20:15.2124906Z 2026-10-25T02:20:15.2125252Z 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-25T02:20:15.2125254Z 2026-10-25T02:20:15.2125313Z 39 credentials: (namespace, bindingId) => 2026-10-25T02:20:15.2125356Z ~~~~~~~~~~~ 2026-10-25T02:20:15.2125358Z 2026-10-25T02:20:15.2125736Z src/pullRequest/PullRequestService.ts:2933:7 - suggestion TS377116: `Effect.catchCauseIf` expresses selective recovery more directly than `Effect.catchCause` with a conditional `Effect.failCause` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-25T02:20:15.2125739Z 2026-10-25T02:20:15.2125792Z 2933 Effect.catchCause((cause) => 2026-10-25T02:20:15.2125835Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2125837Z 2026-10-25T02:20:15.2126244Z src/pullRequest/PullRequestService.ts:3327:7 - suggestion TS377116: `Effect.catchCauseIf` expresses selective recovery more directly than `Effect.catchCause` with a conditional `Effect.failCause` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-25T02:20:15.2126248Z 2026-10-25T02:20:15.2126300Z 3327 Effect.catchCause((cause) => 2026-10-25T02:20:15.2126343Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2126345Z 2026-10-25T02:20:15.2126661Z src/pullRequest/PullRequestService.ts:3538:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("PullRequestService.listStats")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2126707Z 2026-10-25T02:20:15.2126756Z 3538 listStats: (input) => 2026-10-25T02:20:15.2126796Z ~~~~~~~~~ 2026-10-25T02:20:15.2126799Z 2026-10-25T02:20:15.2127036Z src/relay/AgentAwarenessRelay.test.ts:272:9 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-25T02:20:15.2127039Z 2026-10-25T02:20:15.2127089Z 272 Effect.succeed( 2026-10-25T02:20:15.2127133Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2127135Z 2026-10-25T02:20:15.2127445Z src/relay/AgentAwarenessRelay.ts:809:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AgentAwarenessRelay.requestCatchUp")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2127447Z 2026-10-25T02:20:15.2127566Z 809 requestCatchUp: () => Queue.offer(catchUpRequests, undefined).pipe(Effect.asVoid), 2026-10-25T02:20:15.2127610Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2127612Z 2026-10-25T02:20:15.2127994Z src/resourceTelemetry/DesktopTelemetryReceiver.ts:640:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopTelemetryReceiver.requestDesktopUpdate")((requestId) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2127997Z 2026-10-25T02:20:15.2128057Z 640 requestDesktopUpdate: (requestId) => 2026-10-25T02:20:15.2128100Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2128104Z 2026-10-25T02:20:15.2128476Z src/resourceTelemetry/DesktopTelemetryReceiver.ts:646:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopTelemetryReceiver.commitDesktopUpdate")((requestId) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2128478Z 2026-10-25T02:20:15.2128536Z 646 commitDesktopUpdate: (requestId) => 2026-10-25T02:20:15.2128580Z ~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2128582Z 2026-10-25T02:20:15.2128953Z src/resourceTelemetry/DesktopTelemetryReceiver.ts:648:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopTelemetryReceiver.cancelDesktopUpdate")((requestId) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2128955Z 2026-10-25T02:20:15.2129011Z 648 cancelDesktopUpdate: (requestId) => 2026-10-25T02:20:15.2129053Z ~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2129055Z 2026-10-25T02:20:15.2129455Z src/resourceTelemetry/DesktopTelemetryReceiver.ts:697:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopTelemetryReceiver.setDiagnosticsDemand")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2129458Z 2026-10-25T02:20:15.2129520Z 697 setDiagnosticsDemand: () => Effect.void, 2026-10-25T02:20:15.2129564Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2129568Z 2026-10-25T02:20:15.2129926Z src/resourceTelemetry/DesktopTelemetryReceiver.ts:698:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopTelemetryReceiver.requestDesktopUpdate")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2129929Z 2026-10-25T02:20:15.2129992Z 698 requestDesktopUpdate: () => Effect.void, 2026-10-25T02:20:15.2130036Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2130039Z 2026-10-25T02:20:15.2130436Z src/resourceTelemetry/DesktopTelemetryReceiver.ts:699:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopTelemetryReceiver.commitDesktopUpdate")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2130439Z 2026-10-25T02:20:15.2130500Z 699 commitDesktopUpdate: () => Effect.void, 2026-10-25T02:20:15.2130543Z ~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2130545Z 2026-10-25T02:20:15.2130907Z src/resourceTelemetry/DesktopTelemetryReceiver.ts:700:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopTelemetryReceiver.cancelDesktopUpdate")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2130964Z 2026-10-25T02:20:15.2131026Z 700 cancelDesktopUpdate: () => Effect.void, 2026-10-25T02:20:15.2131070Z ~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2131072Z 2026-10-25T02:20:15.2131408Z 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-25T02:20:15.2131411Z 2026-10-25T02:20:15.2131455Z 1091 readHistory: () => 2026-10-25T02:20:15.2131496Z ~~~~~~~~~~~ 2026-10-25T02:20:15.2131499Z 2026-10-25T02:20:15.2131853Z 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-25T02:20:15.2131857Z 2026-10-25T02:20:15.2131921Z 1097 setExternalProcesses: () => Effect.void, 2026-10-25T02:20:15.2131964Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2131966Z 2026-10-25T02:20:15.2132310Z 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-25T02:20:15.2132314Z 2026-10-25T02:20:15.2132373Z 1098 setHostPowerState: () => Effect.void, 2026-10-25T02:20:15.2132417Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2132419Z 2026-10-25T02:20:15.2132717Z src/scheduledTasks/ScheduledTaskService.ts:1112:31 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-25T02:20:15.2132719Z 2026-10-25T02:20:15.2132788Z 1112 ? Effect.succeed(undefined) 2026-10-25T02:20:15.2132843Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2132845Z 2026-10-25T02:20:15.2133127Z 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-25T02:20:15.2133129Z 2026-10-25T02:20:15.2133186Z 166 const results = yield* Effect.all( 2026-10-25T02:20:15.2133234Z ~~~~~~~~~~ 2026-10-25T02:20:15.2133236Z 2026-10-25T02:20:15.2133595Z src/server.ts:489: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-25T02:20:15.2133598Z 2026-10-25T02:20:15.2133650Z 489 return Effect.gen(function* () { 2026-10-25T02:20:15.2133692Z ~~~~~~ 2026-10-25T02:20:15.2133694Z 2026-10-25T02:20:15.2133967Z 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-25T02:20:15.2133969Z 2026-10-25T02:20:15.2134036Z 209 prepareTrial: Effect.succeed(undefined), 2026-10-25T02:20:15.2134089Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2134091Z 2026-10-25T02:20:15.2134397Z 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-25T02:20:15.2134399Z 2026-10-25T02:20:15.2134455Z 413 const results = yield* Effect.all( 2026-10-25T02:20:15.2134501Z ~~~~~~~~~~ 2026-10-25T02:20:15.2134504Z 2026-10-25T02:20:15.2134919Z src/sourceControl/SourceControlProviderRegistry.ts:199:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.listChangeRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2134969Z 2026-10-25T02:20:15.2135030Z 199 listChangeRequests: (input) => 2026-10-25T02:20:15.2135073Z ~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2135075Z 2026-10-25T02:20:15.2135485Z src/sourceControl/SourceControlProviderRegistry.ts:204:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2135487Z 2026-10-25T02:20:15.2135539Z 204 getChangeRequest: (input) => 2026-10-25T02:20:15.2135582Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2135584Z 2026-10-25T02:20:15.2135996Z src/sourceControl/SourceControlProviderRegistry.ts:209:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.createChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2136000Z 2026-10-25T02:20:15.2136055Z 209 createChangeRequest: (input) => 2026-10-25T02:20:15.2136098Z ~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2136100Z 2026-10-25T02:20:15.2136517Z src/sourceControl/SourceControlProviderRegistry.ts:214:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getRepositoryCloneUrls")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2136522Z 2026-10-25T02:20:15.2136578Z 214 getRepositoryCloneUrls: (input) => 2026-10-25T02:20:15.2136622Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2136624Z 2026-10-25T02:20:15.2137026Z src/sourceControl/SourceControlProviderRegistry.ts:219:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.createRepository")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2137030Z 2026-10-25T02:20:15.2137127Z 219 createRepository: (input) => provider.createRepository(input), 2026-10-25T02:20:15.2137168Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2137172Z 2026-10-25T02:20:15.2137575Z src/sourceControl/SourceControlProviderRegistry.ts:220:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getDefaultBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2137577Z 2026-10-25T02:20:15.2137628Z 220 getDefaultBranch: (input) => 2026-10-25T02:20:15.2137670Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2137672Z 2026-10-25T02:20:15.2138089Z src/sourceControl/SourceControlProviderRegistry.ts:225:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.checkoutChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2138093Z 2026-10-25T02:20:15.2138148Z 225 checkoutChangeRequest: (input) => 2026-10-25T02:20:15.2138190Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2138192Z 2026-10-25T02:20:15.2138549Z src/sourceControl/SourceControlProviderRegistry.ts:340:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProviderRegistry.resolve")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2138552Z 2026-10-25T02:20:15.2138724Z 340 resolve: (input) => resolveHandle(input).pipe(Effect.map((handle) => handle.provider)), 2026-10-25T02:20:15.2138765Z ~~~~~~~ 2026-10-25T02:20:15.2138767Z 2026-10-25T02:20:15.2139132Z src/sourceControl/SourceControlRepositoryService.ts:385:7 - suggestion TS377116: `Effect.catchIf` expresses selective recovery more directly than `Effect.catch` with a conditional `Effect.fail` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-25T02:20:15.2139184Z 2026-10-25T02:20:15.2139233Z 385 Effect.catch((sshError) => 2026-10-25T02:20:15.2139274Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.2139277Z 2026-10-25T02:20:15.2139826Z src/sourceControl/SourceControlRepositoryService.ts:524:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlRepositoryService.lookupRepository")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2139828Z 2026-10-25T02:20:15.2139881Z 524 lookupRepository: (input) => 2026-10-25T02:20:15.2139922Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2139924Z 2026-10-25T02:20:15.2140294Z src/sourceControl/SourceControlRepositoryService.ts:526:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlRepositoryService.prepareClone")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2140296Z 2026-10-25T02:20:15.2140347Z 526 prepareClone: (input) => 2026-10-25T02:20:15.2140390Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.2140392Z 2026-10-25T02:20:15.2140782Z src/sourceControl/SourceControlRepositoryService.ts:533:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlRepositoryService.cloneRepository")((input, options) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2140785Z 2026-10-25T02:20:15.2140841Z 533 cloneRepository: (input, options) => 2026-10-25T02:20:15.2140882Z ~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2140885Z 2026-10-25T02:20:15.2141272Z src/sourceControl/SourceControlRepositoryService.ts:540:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlRepositoryService.discardClone")((destinationPath) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2141274Z 2026-10-25T02:20:15.2141330Z 540 discardClone: (destinationPath) => 2026-10-25T02:20:15.2141370Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.2141373Z 2026-10-25T02:20:15.2141753Z src/sourceControl/SourceControlRepositoryService.ts:544:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlRepositoryService.publishRepository")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2141757Z 2026-10-25T02:20:15.2141809Z 544 publishRepository: (input) => 2026-10-25T02:20:15.2141852Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2141855Z 2026-10-25T02:20:15.2142180Z src/storageCleanup.ts:695: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-25T02:20:15.2142182Z 2026-10-25T02:20:15.2142235Z 695 return yield* Effect.fail( 2026-10-25T02:20:15.2142275Z ~~~~~ 2026-10-25T02:20:15.2142277Z 2026-10-25T02:20:15.2142568Z src/telemetry/AnalyticsService.ts:102:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AnalyticsService.record")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2142572Z 2026-10-25T02:20:15.2142619Z 102 record: () => Effect.void, 2026-10-25T02:20:15.2142659Z ~~~~~~ 2026-10-25T02:20:15.2142661Z 2026-10-25T02:20:15.2142961Z src/telemetry/AnalyticsService.ts:104:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AnalyticsService.recordOwners")(() => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2143005Z 2026-10-25T02:20:15.2143059Z 104 recordOwners: () => Effect.void, 2026-10-25T02:20:15.2143099Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.2143101Z 2026-10-25T02:20:15.2143407Z src/telemetry/AnalyticsService.ts:316:62 - suggestion TS377132: `Effect.andThen` expresses this sequencing more directly than `Effect.flatMap` with a zero-parameter callback. effect(flatMapIgnoredParamToAndThen) 2026-10-25T02:20:15.2143410Z 2026-10-25T02:20:15.2143677Z 316 yield* Effect.forever(Effect.sleep(FLUSH_INTERVAL_MS).pipe(Effect.flatMap(() => flushWhenDue)), { 2026-10-25T02:20:15.2143746Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2143748Z 2026-10-25T02:20:15.2144028Z src/textGeneration/CodexTextGeneration.ts:85:13 - suggestion TS377099: `Effect.ignore` expresses ignored failure more directly than `Effect.catch` returning `Effect.void`. effect(catchToIgnore) 2026-10-25T02:20:15.2144030Z 2026-10-25T02:20:15.2144091Z 85 .pipe(Effect.catch(() => Effect.void)); 2026-10-25T02:20:15.2144134Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.2144136Z 2026-10-25T02:20:15.2144464Z 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-25T02:20:15.2144466Z 2026-10-25T02:20:15.2144521Z 60 generateCommitMessage: (input) => 2026-10-25T02:20:15.2144565Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2144567Z 2026-10-25T02:20:15.2144884Z 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-25T02:20:15.2144886Z 2026-10-25T02:20:15.2144938Z 64 generatePrContent: (input) => 2026-10-25T02:20:15.2144980Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2144983Z 2026-10-25T02:20:15.2145300Z 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-25T02:20:15.2145304Z 2026-10-25T02:20:15.2145355Z 68 generateBranchName: (input) => 2026-10-25T02:20:15.2145399Z ~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2145401Z 2026-10-25T02:20:15.2145720Z 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-25T02:20:15.2145724Z 2026-10-25T02:20:15.2145778Z 72 generateReviewGuide: (input) => 2026-10-25T02:20:15.2145820Z ~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2145822Z 2026-10-25T02:20:15.2146145Z 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-25T02:20:15.2146147Z 2026-10-25T02:20:15.2146200Z 76 generateThreadTitle: (input) => 2026-10-25T02:20:15.2146245Z ~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2146247Z 2026-10-25T02:20:15.2146533Z src/usage/UsageService.ts:165:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("UsageService.readSummary")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2146537Z 2026-10-25T02:20:15.2146588Z 165 readSummary: (input) => 2026-10-25T02:20:15.2146629Z ~~~~~~~~~~~ 2026-10-25T02:20:15.2146631Z 2026-10-25T02:20:15.2146877Z src/usage/UsageService.ts:626:9 - suggestion TS377015: This expression contains chained `pipe` calls that can be simplified to a single `pipe` call. effect(unnecessaryPipeChain) 2026-10-25T02:20:15.2146880Z 2026-10-25T02:20:15.2146936Z 626 usageInstances(driver, settings) 2026-10-25T02:20:15.2147026Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2147070Z 627 .pipe( 2026-10-25T02:20:15.2147111Z ~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2147148Z ... 2026-10-25T02:20:15.2147214Z 648 Effect.provideContext(readerContext), 2026-10-25T02:20:15.2147272Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2147313Z 649 ), 2026-10-25T02:20:15.2147352Z ~~~~~~~~~~~ 2026-10-25T02:20:15.2147354Z 2026-10-25T02:20:15.2147743Z src/vcs/GitVcsDriverCore.ts:3964:9 - suggestion TS377120: `Effect.filterOrElse` expresses this conditional validation more directly than `Effect.flatMap` with an identity `Effect.succeed` branch. effect(flatMapConditionalToFilterOrFail) 2026-10-25T02:20:15.2147747Z 2026-10-25T02:20:15.2147797Z 3964 Effect.flatMap((result) => 2026-10-25T02:20:15.2147839Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2147842Z 2026-10-25T02:20:15.2148179Z src/vcs/GitVcsDriverCore.ts:4448: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-25T02:20:15.2148181Z 2026-10-25T02:20:15.2148242Z 4448 commit: (cwd, subject, body, options) => 2026-10-25T02:20:15.2148279Z ~~~~~~ 2026-10-25T02:20:15.2148282Z 2026-10-25T02:20:15.2148646Z src/vcs/GitVcsDriverCore.ts:4450: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-25T02:20:15.2148650Z 2026-10-25T02:20:15.2148734Z 4450 pushCurrentBranch: (cwd, fallbackBranch, options) => 2026-10-25T02:20:15.2148776Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2148779Z 2026-10-25T02:20:15.2149106Z src/vcs/GitVcsDriverCore.ts:4452:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.pullCurrentBranch")((cwd) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2149108Z 2026-10-25T02:20:15.2149235Z 4452 pullCurrentBranch: (cwd) => withListRefsInvalidation(cwd, pullCurrentBranch(cwd)), 2026-10-25T02:20:15.2149278Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2149280Z 2026-10-25T02:20:15.2149642Z src/vcs/GitVcsDriverCore.ts:4460:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.createWorktree")((input, options) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2149646Z 2026-10-25T02:20:15.2149703Z 4460 createWorktree: (input, options) => 2026-10-25T02:20:15.2149745Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2149747Z 2026-10-25T02:20:15.2150072Z src/vcs/GitVcsDriverCore.ts:4462:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.fetchRefIntoBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2150074Z 2026-10-25T02:20:15.2150221Z 4462 fetchRefIntoBranch: (input) => withListRefsInvalidation(input.cwd, fetchRefIntoBranch(input)), 2026-10-25T02:20:15.2150266Z ~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2150268Z 2026-10-25T02:20:15.2150608Z src/vcs/GitVcsDriverCore.ts:4465:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.refreshCheckedOutBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2150612Z 2026-10-25T02:20:15.2150671Z 4465 refreshCheckedOutBranch: (input) => 2026-10-25T02:20:15.2150715Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2150717Z 2026-10-25T02:20:15.2151034Z src/vcs/GitVcsDriverCore.ts:4467:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.ensureRemote")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2151036Z 2026-10-25T02:20:15.2151208Z 4467 ensureRemote: (input) => withListRefsInvalidation(input.cwd, ensureRemote(input)), 2026-10-25T02:20:15.2151250Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.2151252Z 2026-10-25T02:20:15.2151569Z src/vcs/GitVcsDriverCore.ts:4470:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.fetchRemote")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2151571Z 2026-10-25T02:20:15.2151662Z 4470 fetchRemote: (input) => 2026-10-25T02:20:15.2151702Z ~~~~~~~~~~~ 2026-10-25T02:20:15.2151705Z 2026-10-25T02:20:15.2152041Z src/vcs/GitVcsDriverCore.ts:4485:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.fetchWorktreeBaseCommit")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2152043Z 2026-10-25T02:20:15.2152101Z 4485 fetchWorktreeBaseCommit: (input) => 2026-10-25T02:20:15.2152143Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2152148Z 2026-10-25T02:20:15.2152476Z src/vcs/GitVcsDriverCore.ts:4487:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.fetchRemoteBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2152479Z 2026-10-25T02:20:15.2152619Z 4487 fetchRemoteBranch: (input) => withListRefsInvalidation(input.cwd, fetchRemoteBranch(input)), 2026-10-25T02:20:15.2152663Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2152665Z 2026-10-25T02:20:15.2153007Z src/vcs/GitVcsDriverCore.ts:4488:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.fetchRemoteTrackingBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2153010Z 2026-10-25T02:20:15.2153071Z 4488 fetchRemoteTrackingBranch: (input) => 2026-10-25T02:20:15.2153117Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2153119Z 2026-10-25T02:20:15.2153446Z src/vcs/GitVcsDriverCore.ts:4490:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.setBranchUpstream")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2153449Z 2026-10-25T02:20:15.2153589Z 4490 setBranchUpstream: (input) => withListRefsInvalidation(input.cwd, setBranchUpstream(input)), 2026-10-25T02:20:15.2153633Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2153637Z 2026-10-25T02:20:15.2153961Z src/vcs/GitVcsDriverCore.ts:4491:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.removeWorktree")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2153963Z 2026-10-25T02:20:15.2154092Z 4491 removeWorktree: (input) => withListRefsInvalidation(input.cwd, removeWorktree(input)), 2026-10-25T02:20:15.2154135Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2154137Z 2026-10-25T02:20:15.2154462Z src/vcs/GitVcsDriverCore.ts:4492:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.pruneWorktrees")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2154464Z 2026-10-25T02:20:15.2154593Z 4492 pruneWorktrees: (input) => withListRefsInvalidation(input.cwd, pruneWorktrees(input)), 2026-10-25T02:20:15.2154634Z ~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2154637Z 2026-10-25T02:20:15.2154964Z src/vcs/GitVcsDriverCore.ts:4493:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.deleteLocalBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2154967Z 2026-10-25T02:20:15.2155106Z 4493 deleteLocalBranch: (input) => withListRefsInvalidation(input.cwd, deleteLocalBranch(input)), 2026-10-25T02:20:15.2155149Z ~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2155151Z 2026-10-25T02:20:15.2155510Z src/vcs/GitVcsDriverCore.ts:4494:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.renameBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2155513Z 2026-10-25T02:20:15.2155635Z 4494 renameBranch: (input) => withListRefsInvalidation(input.cwd, renameBranch(input)), 2026-10-25T02:20:15.2155675Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.2155678Z 2026-10-25T02:20:15.2155989Z src/vcs/GitVcsDriverCore.ts:4495:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.createRef")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2156035Z 2026-10-25T02:20:15.2156145Z 4495 createRef: (input) => withListRefsInvalidation(input.cwd, createRef(input)), 2026-10-25T02:20:15.2156187Z ~~~~~~~~~ 2026-10-25T02:20:15.2156190Z 2026-10-25T02:20:15.2156502Z src/vcs/GitVcsDriverCore.ts:4496:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.switchRef")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-25T02:20:15.2156504Z 2026-10-25T02:20:15.2156611Z 4496 switchRef: (input) => withListRefsInvalidation(input.cwd, switchRef(input)), 2026-10-25T02:20:15.2156651Z ~~~~~~~~~ 2026-10-25T02:20:15.2156654Z 2026-10-25T02:20:15.2157046Z 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-25T02:20:15.2157050Z 2026-10-25T02:20:15.2157117Z 153 return serverSettings.getSettings.pipe( 2026-10-25T02:20:15.2157155Z ~~~~~~ 2026-10-25T02:20:15.2157159Z 2026-10-25T02:20:15.2157464Z src/workspace/WorkspaceFileSystem.ts:170:15 - suggestion TS377095: `Effect.orElseSucceed` expresses the same recovery more directly than `Effect.catch` followed by `Effect.succeed`. effect(catchToOrElseSucceed) 2026-10-25T02:20:15.2157468Z 2026-10-25T02:20:15.2157550Z 170 }).pipe(Effect.catch(() => Effect.succeed(undefined))); 2026-10-25T02:20:15.2157594Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.2157596Z 2026-10-25T02:20:15.2157880Z src/workspace/WorkspaceFileSystem.ts:170:34 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-25T02:20:15.2157884Z 2026-10-25T02:20:15.2157980Z 170 }).pipe(Effect.catch(() => Effect.succeed(undefined))); 2026-10-25T02:20:15.2158108Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2158110Z 2026-10-25T02:20:15.2158349Z src/ws.test.ts:469:47 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-25T02:20:15.2158352Z 2026-10-25T02:20:15.2158454Z 469 resolveFileManagerRevealKind: () => Effect.succeed(undefined), 2026-10-25T02:20:15.2158517Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-25T02:20:15.2158520Z 2026-10-25T02:20:15.2158803Z src/ws.ts:1394: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-25T02:20:15.2158806Z 2026-10-25T02:20:15.2158867Z 1394 return yield* Option.match(project, { 2026-10-25T02:20:15.2158917Z ~~~~~~~~~~~~ 2026-10-25T02:20:15.2158920Z 2026-10-25T02:20:15.2159222Z src/ws.ts:2369: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-25T02:20:15.2159225Z 2026-10-25T02:20:15.2159280Z 2369 return yield* Effect.fail( 2026-10-25T02:20:15.2159373Z ~~~~~ 2026-10-25T02:20:15.2159432Z 2026-10-25T02:20:15.2159731Z src/ws.ts:2378: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-25T02:20:15.2159733Z 2026-10-25T02:20:15.2159788Z 2378 return yield* Effect.fail( 2026-10-25T02:20:15.2159833Z ~~~~~ 2026-10-25T02:20:15.2159888Z 2026-10-25T02:20:15.2160184Z src/ws.ts:2386: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-25T02:20:15.2160186Z 2026-10-25T02:20:15.2160240Z 2386 return yield* Effect.fail( 2026-10-25T02:20:15.2160284Z ~~~~~ 2026-10-25T02:20:15.2160286Z 2026-10-25T02:20:15.2160288Z 2026-10-25T02:20:15.2160327Z --- 2026-10-25T02:20:15.2160613Z 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-25T02:20:15.2591686Z Post job cleanup. 2026-10-25T02:20:15.3208362Z Cache hit occurred on the primary key electron-Linux-X64-854e11ddd491bd4f350eebb67a74265df119376a3984c8e153cfe5fc8ced6309, not saving cache. 2026-10-25T02:20:15.3270873Z Post job cleanup. 2026-10-25T02:20:15.3284930Z ##[start-action display=Cache full pnpm store;id=__f92ac6bc-94a5-4216-ba70-c5e77871f292.__actions_cache] 2026-10-25T02:20:15.4005852Z Post job cleanup. 2026-10-25T02:20:15.4677193Z [command]/usr/bin/tar --posix -cf cache.tzst --exclude cache.tzst -P -C /home/runner/_work/t3code/t3code --files-from manifest.txt --use-compress-program zstdmt 2026-10-25T02:20:19.0881816Z Failed to save: Unable to reserve cache with key pnpm-full-v1-Linux-X64-67727b77004e0e6799b7f8587a750813c0ad4460c623edf0becc280ccb581251, another job may be creating this cache. 2026-10-25T02:20:19.1348049Z ##[end-action id=__f92ac6bc-94a5-4216-ba70-c5e77871f292.__actions_cache;outcome=success;conclusion=success;duration_ms=3806] 2026-10-25T02:20:19.1350081Z ##[start-action display=Cache Vite+;id=__f92ac6bc-94a5-4216-ba70-c5e77871f292.vp_cache] 2026-10-25T02:20:19.1371778Z Post job cleanup. 2026-10-25T02:20:19.1988911Z 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-25T02:20:19.2015825Z ##[end-action id=__f92ac6bc-94a5-4216-ba70-c5e77871f292.vp_cache;outcome=success;conclusion=success;duration_ms=66] 2026-10-25T02:20:19.2049537Z Post job cleanup. 2026-10-25T02:20:19.2470048Z [command]/usr/local/bin/git version 2026-10-25T02:20:19.2496083Z git version 2.55.0 2026-10-25T02:20:19.2512555Z Temporarily overriding HOME='/home/runner/_work/_temp/96931028-f8e8-4ebd-9045-82831918ba56' before making global git config changes 2026-10-25T02:20:19.2512914Z Adding repository directory to the temporary git global config as a safe directory 2026-10-25T02:20:19.2515433Z [command]/usr/local/bin/git config --global --add safe.directory /home/runner/_work/t3code/t3code 2026-10-25T02:20:19.2536459Z Removing SSH command configuration 2026-10-25T02:20:19.2539322Z [command]/usr/local/bin/git config --local --name-only --get-regexp core\.sshCommand 2026-10-25T02:20:19.2560033Z [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-25T02:20:19.2673583Z fatal: No url found for submodule path '.repos/alchemy-effect/submodules/distilled' in .gitmodules 2026-10-25T02:20:19.2695150Z ##[warning]The process '/usr/local/bin/git' failed with exit code 128 2026-10-25T02:20:19.2728060Z A job completed hook has been configured by the self-hosted runner administrator 2026-10-25T02:20:19.2741751Z ##[group]Run '/job_completed.sh' 2026-10-25T02:20:19.2747777Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2026-10-25T02:20:19.2747952Z env: 2026-10-25T02:20:19.2748080Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 145 2026-10-25T02:20:19.2748231Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 404 2026-10-25T02:20:19.2748374Z BLACKSMITH_CHECK_RUN_ID: 121051349043 2026-10-25T02:20:19.2748533Z BLACKSMITH_JOB_DISPLAY_NAME: Build and Typecheck 2026-10-25T02:20:19.2748695Z GITHUB_ACTIONS_CACHE_MODE: write 2026-10-25T02:20:19.2748832Z ##[endgroup] 2026-10-25T02:20:19.2818244Z Docker container cache not activated, skipping hash computation. 2026-10-25T02:20:19.3077174Z No active SSH sessions detected. Proceeding with shutdown immediately. 2026-10-25T02:20:19.3786294Z Cleaning up orphan processes