2026-10-23T01:50:04.5910082Z Current runner version: '2.337.0' 2026-10-23T01:50:04.5913615Z Runner name: 'blacksmith-8vcpu-ubuntu-2404-phsimbf3h5x22xfx' 2026-10-23T01:50:04.5914344Z Runner group name: 'blacksmith scale sets - blacksmith-8vcpu-ubuntu-2404' 2026-10-23T01:50:04.5915086Z Machine name: 'ip-172-31-73-130' 2026-10-23T01:50:04.5916775Z ##[group]GITHUB_TOKEN Permissions 2026-10-23T01:50:04.5918334Z Contents: read 2026-10-23T01:50:04.5918748Z Metadata: read 2026-10-23T01:50:04.5919212Z ##[endgroup] 2026-10-23T01:50:04.5920661Z Secret source: Actions 2026-10-23T01:50:04.5921349Z Cache mode: write 2026-10-23T01:50:04.5921970Z Prepare workflow directory 2026-10-23T01:50:04.6108377Z Prepare all required actions 2026-10-23T01:50:04.6135411Z Getting action download info 2026-10-23T01:50:04.7255856Z Download action repository 'actions/checkout@v6' (SHA:d23441a48e516b6c34aea4fa41551a30e30af803) 2026-10-23T01:50:04.7624291Z Download action repository 'actions/cache@v6' (SHA:55cc8345863c7cc4c66a329aec7e433d2d1c52a9) 2026-10-23T01:50:04.8714063Z Setting BLACKSMITH_ACTIONS_RESULTS_URL to https://results-receiver.actions.githubusercontent.com/ 2026-10-23T01:50:04.8754885Z Complete job name: Build and Typecheck 2026-10-23T01:50:04.9092996Z A job started hook has been configured by the self-hosted runner administrator 2026-10-23T01:50:04.9183525Z ##[group]Run '/setup.sh' 2026-10-23T01:50:04.9200664Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2026-10-23T01:50:04.9201089Z env: 2026-10-23T01:50:04.9201316Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 172 2026-10-23T01:50:04.9201627Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 465 2026-10-23T01:50:04.9201918Z BLACKSMITH_CHECK_RUN_ID: 120194868845 2026-10-23T01:50:04.9202238Z BLACKSMITH_JOB_DISPLAY_NAME: Build and Typecheck 2026-10-23T01:50:04.9202559Z GITHUB_ACTIONS_CACHE_MODE: write 2026-10-23T01:50:04.9202828Z ##[endgroup] 2026-10-23T01:50:04.9417413Z Logging daemon started (blacksmithd for logs) 2026-10-23T01:50:04.9531749Z Results daemon started (blacksmithd for results) 2026-10-23T01:50:04.9644846Z Background adoption and SSH setup started (PID: 3139) 2026-10-23T01:50:04.9645294Z 2026-10-23T01:50:04.9645466Z ---------------------------------------- 2026-10-23T01:50:04.9646259Z View this job: https://app.blacksmith.sh/pingdotgg/runs/39886192373/jobs/120194868845 2026-10-23T01:50:04.9646970Z SSH Access (using your GitHub SSH key): 2026-10-23T01:50:04.9647681Z ssh -p 64000 runner@blacksmith-8vcpu-ubuntu-2404-phsimbf3h5x22xfx.vm.blacksmith.sh 2026-10-23T01:50:04.9648212Z 2026-10-23T01:50:04.9648382Z No GitHub SSH key? Add one at: 2026-10-23T01:50:04.9649219Z https://docs.github.com/en/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account 2026-10-23T01:50:04.9649932Z 2026-10-23T01:50:04.9650104Z ---------------------------------------- 2026-10-23T01:50:04.9650408Z 2026-10-23T01:50:04.9650639Z VM ID: blacksmith-8vcpu-ubuntu-2404-phsimbf3h5x22xfx 2026-10-23T01:50:04.9651285Z Host: production-152.236.39.232-x8664 2026-10-23T01:50:04.9651736Z Host Agent PID: 3059871 2026-10-23T01:50:04.9652152Z Host Agent Git SHA: af74fd76b 2026-10-23T01:50:04.9652595Z Host CPU Manufacturer: AuthenticAMD 2026-10-23T01:50:04.9653073Z Blacksmith Host Generation: gen 2 2026-10-23T01:50:04.9653575Z Petname: production-relative-crawdad-7c47b506 2026-10-23T01:50:04.9654134Z Region: us-east 2026-10-23T01:50:04.9654527Z Rootfs Version: ubuntu24-full-x64-081926 2026-10-23T01:50:04.9655201Z OS Version: Ubuntu 24.04.4 LTS 2026-10-23T01:50:04.9655768Z 2026-10-23T01:50:04.9655991Z Enabling Blacksmith transparent cache 2026-10-23T01:50:04.9931879Z ##[group]Run actions/checkout@v6 2026-10-23T01:50:04.9932204Z with: 2026-10-23T01:50:04.9932548Z sparse-checkout: /* !/.repos/ !/apps/mobile/modules/t3-terminal/Vendor/**/*.a 2026-10-23T01:50:04.9932984Z sparse-checkout-cone-mode: false 2026-10-23T01:50:04.9933281Z repository: pingdotgg/t3code 2026-10-23T01:50:04.9935162Z token: *** 2026-10-23T01:50:04.9935387Z ssh-strict: true 2026-10-23T01:50:04.9935613Z ssh-user: git 2026-10-23T01:50:04.9936062Z persist-credentials: true 2026-10-23T01:50:04.9936316Z clean: true 2026-10-23T01:50:04.9936537Z fetch-depth: 1 2026-10-23T01:50:04.9936764Z fetch-tags: false 2026-10-23T01:50:04.9937000Z show-progress: true 2026-10-23T01:50:04.9937235Z lfs: false 2026-10-23T01:50:04.9937449Z submodules: false 2026-10-23T01:50:04.9937686Z set-safe-directory: true 2026-10-23T01:50:04.9937952Z allow-unsafe-pr-checkout: false 2026-10-23T01:50:04.9938224Z env: 2026-10-23T01:50:04.9938476Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 172 2026-10-23T01:50:04.9938776Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 465 2026-10-23T01:50:04.9939074Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-23T01:50:04.9939347Z ##[endgroup] 2026-10-23T01:50:05.1142605Z Syncing repository: pingdotgg/t3code 2026-10-23T01:50:05.1143569Z ##[group]Getting Git version info 2026-10-23T01:50:05.1143975Z Working directory is '/home/runner/_work/t3code/t3code' 2026-10-23T01:50:05.1144477Z [command]/usr/local/bin/git version 2026-10-23T01:50:05.1206854Z git version 2.55.0 2026-10-23T01:50:05.1219483Z ##[endgroup] 2026-10-23T01:50:05.1226841Z Temporarily overriding HOME='/home/runner/_work/_temp/91eb63f9-dda3-43cf-a111-98066373977e' before making global git config changes 2026-10-23T01:50:05.1227535Z Adding repository directory to the temporary git global config as a safe directory 2026-10-23T01:50:05.1230325Z [command]/usr/local/bin/git config --global --add safe.directory /home/runner/_work/t3code/t3code 2026-10-23T01:50:05.1260578Z Deleting the contents of '/home/runner/_work/t3code/t3code' 2026-10-23T01:50:05.1262357Z ##[group]Determining repository object format 2026-10-23T01:50:05.1263483Z ##[endgroup] 2026-10-23T01:50:05.1263877Z ##[group]Initializing the repository 2026-10-23T01:50:05.1265824Z [command]/usr/local/bin/git init /home/runner/_work/t3code/t3code 2026-10-23T01:50:05.1299480Z hint: Using 'master' as the name for the initial branch. This default branch name 2026-10-23T01:50:05.1299969Z hint: will change to "main" in Git 3.0. To configure the initial branch name 2026-10-23T01:50:05.1300451Z hint: to use in all of your new repositories, which will suppress this warning, 2026-10-23T01:50:05.1300865Z hint: call: 2026-10-23T01:50:05.1301075Z hint: 2026-10-23T01:50:05.1301352Z hint: git config --global init.defaultBranch 2026-10-23T01:50:05.1301672Z hint: 2026-10-23T01:50:05.1301971Z hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 2026-10-23T01:50:05.1302446Z hint: 'development'. The just-created branch can be renamed via this command: 2026-10-23T01:50:05.1302825Z hint: 2026-10-23T01:50:05.1303045Z hint: git branch -m 2026-10-23T01:50:05.1303288Z hint: 2026-10-23T01:50:05.1303611Z hint: Disable this message with "git config set advice.defaultBranchName false" 2026-10-23T01:50:05.1304148Z Initialized empty Git repository in /home/runner/_work/t3code/t3code/.git/ 2026-10-23T01:50:05.1304958Z [command]/usr/local/bin/git remote add origin https://github.com/pingdotgg/t3code 2026-10-23T01:50:05.1331453Z ##[endgroup] 2026-10-23T01:50:05.1331845Z ##[group]Disabling automatic garbage collection 2026-10-23T01:50:05.1334019Z [command]/usr/local/bin/git config --local gc.auto 0 2026-10-23T01:50:05.1355405Z ##[endgroup] 2026-10-23T01:50:05.1355760Z ##[group]Setting up auth 2026-10-23T01:50:05.1356113Z Removing SSH command configuration 2026-10-23T01:50:05.1359479Z [command]/usr/local/bin/git config --local --name-only --get-regexp core\.sshCommand 2026-10-23T01:50:05.1382560Z [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-23T01:50:05.1514700Z Removing HTTP extra header 2026-10-23T01:50:05.1517917Z [command]/usr/local/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader 2026-10-23T01:50:05.1539204Z [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-23T01:50:05.1634566Z Removing includeIf entries pointing to credentials config files 2026-10-23T01:50:05.1637896Z [command]/usr/local/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: 2026-10-23T01:50:05.1659201Z [command]/usr/local/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url 2026-10-23T01:50:05.1760768Z [command]/usr/local/bin/git config --file /home/runner/_work/_temp/git-credentials-42d20ace-f8e4-45dc-9b4b-6f95b2190022.config http.https://github.com/.extraheader AUTHORIZATION: basic *** 2026-10-23T01:50:05.1788483Z [command]/usr/local/bin/git config --local includeIf.gitdir:/home/runner/_work/t3code/t3code/.git.path /home/runner/_work/_temp/git-credentials-42d20ace-f8e4-45dc-9b4b-6f95b2190022.config 2026-10-23T01:50:05.1806808Z [command]/usr/local/bin/git config --local includeIf.gitdir:/home/runner/_work/t3code/t3code/.git/worktrees/*.path /home/runner/_work/_temp/git-credentials-42d20ace-f8e4-45dc-9b4b-6f95b2190022.config 2026-10-23T01:50:05.1826951Z [command]/usr/local/bin/git config --local includeIf.gitdir:/github/workspace/.git.path /github/runner_temp/git-credentials-42d20ace-f8e4-45dc-9b4b-6f95b2190022.config 2026-10-23T01:50:05.1846753Z [command]/usr/local/bin/git config --local includeIf.gitdir:/github/workspace/.git/worktrees/*.path /github/runner_temp/git-credentials-42d20ace-f8e4-45dc-9b4b-6f95b2190022.config 2026-10-23T01:50:05.1864780Z ##[endgroup] 2026-10-23T01:50:05.1865157Z ##[group]Fetching the repository 2026-10-23T01:50:05.1869625Z [command]/usr/local/bin/git -c protocol.version=2 fetch --no-tags --prune --no-recurse-submodules --filter=blob:none --depth=1 origin +2344261df247c44b749f49021ac06ad367c99b1f:refs/remotes/pull/23913/merge 2026-10-23T01:50:05.4720711Z From https://github.com/pingdotgg/t3code 2026-10-23T01:50:05.4721969Z * [new ref] 2344261df247c44b749f49021ac06ad367c99b1f -> pull/23913/merge 2026-10-23T01:50:05.4742125Z ##[endgroup] 2026-10-23T01:50:05.4742919Z ##[group]Determining the checkout info 2026-10-23T01:50:05.4743789Z ##[endgroup] 2026-10-23T01:50:05.4744482Z ##[group]Setting up sparse checkout 2026-10-23T01:50:05.4745774Z [command]/usr/local/bin/git config core.sparseCheckout true 2026-10-23T01:50:05.4771711Z [command]/usr/local/bin/git rev-parse --git-path info/sparse-checkout 2026-10-23T01:50:05.4788563Z .git/info/sparse-checkout 2026-10-23T01:50:05.4793481Z ##[endgroup] 2026-10-23T01:50:05.4794339Z ##[group]Checking out the ref 2026-10-23T01:50:05.4796224Z [command]/usr/local/bin/git checkout --progress --force refs/remotes/pull/23913/merge 2026-10-23T01:50:12.1189120Z Updating files: 0% (1/6310) 2026-10-23T01:50:12.1217452Z Updating files: 1% (64/6310) 2026-10-23T01:50:12.1235835Z Updating files: 2% (127/6310) 2026-10-23T01:50:12.1257685Z Updating files: 3% (190/6310) 2026-10-23T01:50:12.1278839Z Updating files: 4% (253/6310) 2026-10-23T01:50:12.1310186Z Updating files: 5% (316/6310) 2026-10-23T01:50:12.1331386Z Updating files: 6% (379/6310) 2026-10-23T01:50:12.1389801Z Updating files: 7% (442/6310) 2026-10-23T01:50:12.1421424Z Updating files: 8% (505/6310) 2026-10-23T01:50:12.1443982Z Updating files: 9% (568/6310) 2026-10-23T01:50:12.1732467Z Updating files: 10% (631/6310) 2026-10-23T01:50:12.1748819Z Updating files: 11% (695/6310) 2026-10-23T01:50:12.1759844Z Updating files: 12% (758/6310) 2026-10-23T01:50:12.1775415Z Updating files: 13% (821/6310) 2026-10-23T01:50:12.1791299Z Updating files: 14% (884/6310) 2026-10-23T01:50:12.1809459Z Updating files: 15% (947/6310) 2026-10-23T01:50:12.1828352Z Updating files: 16% (1010/6310) 2026-10-23T01:50:12.1843247Z Updating files: 17% (1073/6310) 2026-10-23T01:50:12.1862896Z Updating files: 18% (1136/6310) 2026-10-23T01:50:12.1877966Z Updating files: 19% (1199/6310) 2026-10-23T01:50:12.1902512Z Updating files: 20% (1262/6310) 2026-10-23T01:50:12.1920525Z Updating files: 21% (1326/6310) 2026-10-23T01:50:12.1939618Z Updating files: 22% (1389/6310) 2026-10-23T01:50:12.1953447Z Updating files: 23% (1452/6310) 2026-10-23T01:50:12.1966471Z Updating files: 24% (1515/6310) 2026-10-23T01:50:12.1982701Z Updating files: 25% (1578/6310) 2026-10-23T01:50:12.1997006Z Updating files: 26% (1641/6310) 2026-10-23T01:50:12.2010324Z Updating files: 27% (1704/6310) 2026-10-23T01:50:12.2030243Z Updating files: 28% (1767/6310) 2026-10-23T01:50:12.2065273Z Updating files: 29% (1830/6310) 2026-10-23T01:50:12.2085331Z Updating files: 30% (1893/6310) 2026-10-23T01:50:12.2109074Z Updating files: 31% (1957/6310) 2026-10-23T01:50:12.2139364Z Updating files: 32% (2020/6310) 2026-10-23T01:50:12.2168676Z Updating files: 33% (2083/6310) 2026-10-23T01:50:12.2237874Z Updating files: 34% (2146/6310) 2026-10-23T01:50:12.2305480Z Updating files: 35% (2209/6310) 2026-10-23T01:50:12.2339800Z Updating files: 36% (2272/6310) 2026-10-23T01:50:12.2375130Z Updating files: 37% (2335/6310) 2026-10-23T01:50:12.2422353Z Updating files: 38% (2398/6310) 2026-10-23T01:50:12.2448413Z Updating files: 39% (2461/6310) 2026-10-23T01:50:12.2480221Z Updating files: 40% (2524/6310) 2026-10-23T01:50:12.2512400Z Updating files: 41% (2588/6310) 2026-10-23T01:50:12.2528973Z Updating files: 42% (2651/6310) 2026-10-23T01:50:12.2540538Z Updating files: 43% (2714/6310) 2026-10-23T01:50:12.2560714Z Updating files: 44% (2777/6310) 2026-10-23T01:50:12.2590876Z Updating files: 45% (2840/6310) 2026-10-23T01:50:12.2614974Z Updating files: 46% (2903/6310) 2026-10-23T01:50:12.2643428Z Updating files: 47% (2966/6310) 2026-10-23T01:50:12.2673506Z Updating files: 48% (3029/6310) 2026-10-23T01:50:12.2704548Z Updating files: 49% (3092/6310) 2026-10-23T01:50:12.2743601Z Updating files: 50% (3155/6310) 2026-10-23T01:50:12.2759139Z Updating files: 51% (3219/6310) 2026-10-23T01:50:12.2792946Z Updating files: 52% (3282/6310) 2026-10-23T01:50:12.2819916Z Updating files: 53% (3345/6310) 2026-10-23T01:50:12.2840555Z Updating files: 54% (3408/6310) 2026-10-23T01:50:12.2864574Z Updating files: 55% (3471/6310) 2026-10-23T01:50:12.2882482Z Updating files: 56% (3534/6310) 2026-10-23T01:50:12.2899327Z Updating files: 57% (3597/6310) 2026-10-23T01:50:12.2918303Z Updating files: 58% (3660/6310) 2026-10-23T01:50:12.3295553Z Updating files: 59% (3723/6310) 2026-10-23T01:50:12.3309793Z Updating files: 60% (3786/6310) 2026-10-23T01:50:12.3326714Z Updating files: 61% (3850/6310) 2026-10-23T01:50:12.3345332Z Updating files: 62% (3913/6310) 2026-10-23T01:50:12.3366604Z Updating files: 63% (3976/6310) 2026-10-23T01:50:12.3393887Z Updating files: 64% (4039/6310) 2026-10-23T01:50:12.3415714Z Updating files: 65% (4102/6310) 2026-10-23T01:50:12.3431943Z Updating files: 66% (4165/6310) 2026-10-23T01:50:12.3456824Z Updating files: 67% (4228/6310) 2026-10-23T01:50:12.3469787Z Updating files: 68% (4291/6310) 2026-10-23T01:50:12.3488892Z Updating files: 69% (4354/6310) 2026-10-23T01:50:12.3501608Z Updating files: 70% (4417/6310) 2026-10-23T01:50:12.3518072Z Updating files: 71% (4481/6310) 2026-10-23T01:50:12.3536062Z Updating files: 72% (4544/6310) 2026-10-23T01:50:12.3561480Z Updating files: 73% (4607/6310) 2026-10-23T01:50:12.3824503Z Updating files: 74% (4670/6310) 2026-10-23T01:50:12.4016200Z Updating files: 75% (4733/6310) 2026-10-23T01:50:12.4038009Z Updating files: 76% (4796/6310) 2026-10-23T01:50:12.4058420Z Updating files: 77% (4859/6310) 2026-10-23T01:50:12.4084394Z Updating files: 78% (4922/6310) 2026-10-23T01:50:12.4104526Z Updating files: 79% (4985/6310) 2026-10-23T01:50:12.4124331Z Updating files: 80% (5048/6310) 2026-10-23T01:50:12.4141264Z Updating files: 81% (5112/6310) 2026-10-23T01:50:12.4160850Z Updating files: 82% (5175/6310) 2026-10-23T01:50:12.4179405Z Updating files: 83% (5238/6310) 2026-10-23T01:50:12.4200821Z Updating files: 84% (5301/6310) 2026-10-23T01:50:12.4220282Z Updating files: 85% (5364/6310) 2026-10-23T01:50:12.4243943Z Updating files: 86% (5427/6310) 2026-10-23T01:50:12.4313378Z Updating files: 87% (5490/6310) 2026-10-23T01:50:12.4345893Z Updating files: 88% (5553/6310) 2026-10-23T01:50:12.4364559Z Updating files: 89% (5616/6310) 2026-10-23T01:50:12.4389749Z Updating files: 90% (5679/6310) 2026-10-23T01:50:12.4423808Z Updating files: 91% (5743/6310) 2026-10-23T01:50:12.4439122Z Updating files: 92% (5806/6310) 2026-10-23T01:50:12.4456498Z Updating files: 93% (5869/6310) 2026-10-23T01:50:12.4477575Z Updating files: 94% (5932/6310) 2026-10-23T01:50:12.4501488Z Updating files: 95% (5995/6310) 2026-10-23T01:50:12.4555500Z Updating files: 96% (6058/6310) 2026-10-23T01:50:12.4581357Z Updating files: 97% (6121/6310) 2026-10-23T01:50:12.4629834Z Updating files: 98% (6184/6310) 2026-10-23T01:50:12.4648998Z Updating files: 99% (6247/6310) 2026-10-23T01:50:12.4649167Z Updating files: 100% (6310/6310) 2026-10-23T01:50:12.4649374Z Updating files: 100% (6310/6310), done. 2026-10-23T01:50:12.4803471Z Note: switching to 'refs/remotes/pull/23913/merge'. 2026-10-23T01:50:12.4803614Z 2026-10-23T01:50:12.4803746Z You are in 'detached HEAD' state. You can look around, make experimental 2026-10-23T01:50:12.4803994Z changes and commit them, and you can discard any commits you make in this 2026-10-23T01:50:12.4804233Z state without impacting any branches by switching back to a branch. 2026-10-23T01:50:12.4804374Z 2026-10-23T01:50:12.4804468Z If you want to create a new branch to retain commits you create, you may 2026-10-23T01:50:12.4804706Z do so (now or later) by using -c with the switch command. Example: 2026-10-23T01:50:12.4804838Z 2026-10-23T01:50:12.4804899Z git switch -c 2026-10-23T01:50:12.4804994Z 2026-10-23T01:50:12.4805053Z Or undo this operation with: 2026-10-23T01:50:12.4805138Z 2026-10-23T01:50:12.4805187Z git switch - 2026-10-23T01:50:12.4805278Z 2026-10-23T01:50:12.4805397Z Turn off this advice by setting config variable advice.detachedHead to false 2026-10-23T01:50:12.4805551Z 2026-10-23T01:50:12.4805735Z HEAD is now at 2344261 Merge 74c4ffc4ca044c6bfb63cb203237a6aacb3b238c into 51273020db3245f4ec29514a419d29b5dcb012dc 2026-10-23T01:50:12.4816360Z ##[endgroup] 2026-10-23T01:50:12.4847189Z [command]/usr/local/bin/git log -1 --format=%H 2026-10-23T01:50:12.4864434Z 2344261df247c44b749f49021ac06ad367c99b1f 2026-10-23T01:50:12.4986315Z Prepare all required actions 2026-10-23T01:50:12.5008811Z ##[group]Run ./.github/actions/setup-apt-mirrors 2026-10-23T01:50:12.5008978Z env: 2026-10-23T01:50:12.5009095Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 172 2026-10-23T01:50:12.5009244Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 465 2026-10-23T01:50:12.5009393Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-23T01:50:12.5009526Z ##[endgroup] 2026-10-23T01:50:12.5052809Z ##[start-action display=Run # Replace the existing Blacksmith mirror list as well as direct sources.;id=__self.__run] 2026-10-23T01:50:12.5071654Z ##[group]Run # Replace the existing Blacksmith mirror list as well as direct sources. 2026-10-23T01:50:12.5071996Z # Replace the existing Blacksmith mirror list as well as direct sources. 2026-10-23T01:50:12.5072218Z printf '%s\tpriority:%s\n' \ 2026-10-23T01:50:12.5072398Z  https://archive.ubuntu.com/ubuntu 1 \ 2026-10-23T01:50:12.5072625Z  https://mirrors.edge.kernel.org/ubuntu 2 \ 2026-10-23T01:50:12.5072831Z  https://mirror.math.princeton.edu/pub/ubuntu 3 \ 2026-10-23T01:50:12.5073062Z  | sudo tee /etc/apt/blacksmith-ubuntu-mirrors.txt > /dev/null 2026-10-23T01:50:12.5073358Z  2026-10-23T01:50:12.5073621Z # APT's mirror transport retries each file against the next server. 2026-10-23T01:50:12.5074091Z sudo find /etc/apt -maxdepth 2 -type f \( -name '*.list' -o -name '*.sources' \) \ 2026-10-23T01:50:12.5074453Z  -exec sed -i -E \ 2026-10-23T01:50:12.5074845Z  's#https?://(([^/]+\.)?archive|security)\.ubuntu\.com/ubuntu/?#mirror+file:/etc/apt/blacksmith-ubuntu-mirrors.txt#g' {} + 2026-10-23T01:50:12.5075302Z  2026-10-23T01:50:12.5075466Z # Move on to a fallback before an unreachable server exhausts the job. 2026-10-23T01:50:12.5075729Z printf '%s\n' 'Acquire::http::Timeout "15";' 'Acquire::https::Timeout "15";' \ 2026-10-23T01:50:12.5075983Z  | sudo tee /etc/apt/apt.conf.d/80-mirror-timeouts > /dev/null 2026-10-23T01:50:12.5098468Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2026-10-23T01:50:12.5098761Z env: 2026-10-23T01:50:12.5098913Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 172 2026-10-23T01:50:12.5099069Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 465 2026-10-23T01:50:12.5099216Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-23T01:50:12.5099361Z ##[endgroup] 2026-10-23T01:50:12.5347278Z ##[end-action id=__self.__run;outcome=success;conclusion=success;duration_ms=29] 2026-10-23T01:50:12.5370509Z ##[group]Run sudo sed -i 's|http://|https://|g' /etc/apt/blacksmith-ubuntu-mirrors.txt /etc/apt/sources.list.d/ubuntu.sources 2026-10-23T01:50:12.5371350Z sudo sed -i 's|http://|https://|g' /etc/apt/blacksmith-ubuntu-mirrors.txt /etc/apt/sources.list.d/ubuntu.sources 2026-10-23T01:50:12.5371656Z ( 2026-10-23T01:50:12.5371759Z  set +e 2026-10-23T01:50:12.5371939Z  sudo apt-get update && sudo apt-get install -y libsecret-1-dev pkg-config 2026-10-23T01:50:12.5372165Z  echo "$?" > "$RUNNER_TEMP/apt-status" 2026-10-23T01:50:12.5372339Z ) > "$RUNNER_TEMP/apt.log" 2>&1 < /dev/null & 2026-10-23T01:50:12.5388811Z shell: /usr/bin/bash -e {0} 2026-10-23T01:50:12.5388944Z env: 2026-10-23T01:50:12.5389062Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 172 2026-10-23T01:50:12.5389212Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 465 2026-10-23T01:50:12.5389362Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-23T01:50:12.5389499Z ##[endgroup] 2026-10-23T01:50:12.5528930Z Prepare all required actions 2026-10-23T01:50:12.5529356Z Getting action download info 2026-10-23T01:50:12.6330678Z Download action repository 'voidzero-dev/setup-vp@v1' (SHA:250f29ce396baf5e8f24498e17c0dfdebabc26eb) 2026-10-23T01:50:12.7395406Z ##[group]Run ./.github/actions/setup-ci-deps 2026-10-23T01:50:12.7395587Z env: 2026-10-23T01:50:12.7395714Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 172 2026-10-23T01:50:12.7395982Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 465 2026-10-23T01:50:12.7396222Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-23T01:50:12.7396376Z ##[endgroup] 2026-10-23T01:50:12.7469806Z ##[start-action display=Resolve Vite+ version;id=__self_2.vp] 2026-10-23T01:50:12.7484312Z ##[group]Run echo "version=$(sed -nE 's/^ vite-plus: ([0-9][^ ]*)$/\1/p' pnpm-workspace.yaml)" >> "$GITHUB_OUTPUT" 2026-10-23T01:50:12.7484736Z echo "version=$(sed -nE 's/^ vite-plus: ([0-9][^ ]*)$/\1/p' pnpm-workspace.yaml)" >> "$GITHUB_OUTPUT" 2026-10-23T01:50:12.7485084Z echo "node=$(jq -r '.engines.node' package.json)" >> "$GITHUB_OUTPUT" 2026-10-23T01:50:12.7485354Z echo "pnpm=$(jq -r '.packageManager' package.json)" >> "$GITHUB_OUTPUT" 2026-10-23T01:50:12.7508166Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2026-10-23T01:50:12.7508350Z env: 2026-10-23T01:50:12.7508479Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 172 2026-10-23T01:50:12.7508636Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 465 2026-10-23T01:50:12.7508786Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-23T01:50:12.7508933Z ##[endgroup] 2026-10-23T01:50:12.7600978Z ##[end-action id=__self_2.vp;outcome=success;conclusion=success;duration_ms=13] 2026-10-23T01:50:12.7603052Z ##[start-action display=Cache Vite+;id=__self_2.vp_cache] 2026-10-23T01:50:12.7671890Z ##[group]Run actions/cache@v6 2026-10-23T01:50:12.7672120Z with: 2026-10-23T01:50:12.7672297Z path: ~/.vite-plus 2026-10-23T01:50:12.7672571Z key: vite-plus-home-v2-Linux-X64-1.3.0-node26.12.1-pnpm@12.14.0 2026-10-23T01:50:12.7672901Z enableCrossOsArchive: false 2026-10-23T01:50:12.7673128Z fail-on-cache-miss: false 2026-10-23T01:50:12.7673512Z lookup-only: false 2026-10-23T01:50:12.7673702Z save-always: false 2026-10-23T01:50:12.7673886Z env: 2026-10-23T01:50:12.7674072Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 172 2026-10-23T01:50:12.7674323Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 465 2026-10-23T01:50:12.7674568Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-23T01:50:12.7674799Z ##[endgroup] 2026-10-23T01:50:13.3043933Z Cache hit for: vite-plus-home-v2-Linux-X64-1.3.0-node26.12.1-pnpm@12.14.0 2026-10-23T01:50:13.7027485Z Received 170349591 of 170349591 (100.0%), 429.8 MBs/sec 2026-10-23T01:50:13.7027856Z Cache Size: ~162 MB (170349591 B) 2026-10-23T01:50:13.7050957Z [command]/usr/bin/tar -xf /home/runner/_work/_temp/4ef1378d-134e-48c4-8c81-5d678009316a/cache.tzst -P -C /home/runner/_work/t3code/t3code --use-compress-program unzstd 2026-10-23T01:50:14.4027958Z Cache restored successfully 2026-10-23T01:50:14.4171970Z Cache restored from key: vite-plus-home-v2-Linux-X64-1.3.0-node26.12.1-pnpm@12.14.0 2026-10-23T01:50:14.4253622Z ##[end-action id=__self_2.vp_cache;outcome=success;conclusion=success;duration_ms=1664] 2026-10-23T01:50:14.4256400Z ##[start-action display=Use cached Vite+;id=__self_2.__run] 2026-10-23T01:50:14.4278822Z ##[group]Run echo "$HOME/.vite-plus/bin" >> "$GITHUB_PATH" 2026-10-23T01:50:14.4279166Z echo "$HOME/.vite-plus/bin" >> "$GITHUB_PATH" 2026-10-23T01:50:14.4279455Z "$HOME/.vite-plus/bin/vp" env use "26.12.1" 2026-10-23T01:50:14.4299519Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2026-10-23T01:50:14.4299698Z env: 2026-10-23T01:50:14.4299824Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 172 2026-10-23T01:50:14.4299977Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 465 2026-10-23T01:50:14.4300135Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-23T01:50:14.4300336Z ##[endgroup] 2026-10-23T01:50:14.4347259Z Using Node.js v26.12.1 (resolved from 26.12.1) 2026-10-23T01:50:14.4356517Z ##[end-action id=__self_2.__run;outcome=success;conclusion=success;duration_ms=9] 2026-10-23T01:50:14.4358397Z ##[start-action display=Setup Vite+;id=__self_2.__voidzero-dev_setup-vp] 2026-10-23T01:50:14.4363612Z ##[end-action id=__self_2.__voidzero-dev_setup-vp;outcome=skipped;conclusion=skipped;duration_ms=0] 2026-10-23T01:50:14.4365228Z ##[start-action display=Resolve pnpm store path;id=__self_2.pnpm_store] 2026-10-23T01:50:14.4380607Z ##[group]Run store_path="$(vp pm cache dir)" 2026-10-23T01:50:14.4380890Z store_path="$(vp pm cache dir)" 2026-10-23T01:50:14.4381170Z echo "path=$store_path" >> "$GITHUB_OUTPUT" 2026-10-23T01:50:14.4403251Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2026-10-23T01:50:14.4403555Z env: 2026-10-23T01:50:14.4403757Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 172 2026-10-23T01:50:14.4404025Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 465 2026-10-23T01:50:14.4404283Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-23T01:50:14.4404528Z ##[endgroup] 2026-10-23T01:50:14.4559439Z ##[end-action id=__self_2.pnpm_store;outcome=success;conclusion=success;duration_ms=19] 2026-10-23T01:50:14.4560689Z ##[start-action display=Cache full pnpm store;id=__self_2.__actions_cache] 2026-10-23T01:50:14.5099294Z ##[group]Run actions/cache@v6 2026-10-23T01:50:14.5099456Z with: 2026-10-23T01:50:14.5099593Z path: /home/runner/.local/share/pnpm/store/v11 2026-10-23T01:50:14.5099876Z key: pnpm-full-v1-Linux-X64-00e587c1edf31fe669c96bc4768c0e07a969fff8e8228235fb75ec6c0abf4161 2026-10-23T01:50:14.5100147Z restore-keys: pnpm-full-v1-Linux-X64- 2026-10-23T01:50:14.5100305Z enableCrossOsArchive: false 2026-10-23T01:50:14.5100448Z fail-on-cache-miss: false 2026-10-23T01:50:14.5100579Z lookup-only: false 2026-10-23T01:50:14.5100695Z save-always: false 2026-10-23T01:50:14.5100815Z env: 2026-10-23T01:50:14.5100930Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 172 2026-10-23T01:50:14.5101089Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 465 2026-10-23T01:50:14.5101240Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-23T01:50:14.5101396Z ##[endgroup] 2026-10-23T01:50:14.7084572Z Cache hit for: pnpm-full-v1-Linux-X64-00e587c1edf31fe669c96bc4768c0e07a969fff8e8228235fb75ec6c0abf4161 2026-10-23T01:50:15.7253998Z Received 570425344 of 995198885 (57.3%), 542.9 MBs/sec 2026-10-23T01:50:16.3639477Z Received 995198885 of 995198885 (100.0%), 578.7 MBs/sec 2026-10-23T01:50:16.3640327Z Cache Size: ~949 MB (995198885 B) 2026-10-23T01:50:16.3675461Z [command]/usr/bin/tar -xf /home/runner/_work/_temp/bf6afae0-79cd-4570-97f3-2bbfd36ad853/cache.tzst -P -C /home/runner/_work/t3code/t3code --use-compress-program unzstd 2026-10-23T01:50:21.6476125Z Cache restored successfully 2026-10-23T01:50:21.6992287Z Cache restored from key: pnpm-full-v1-Linux-X64-00e587c1edf31fe669c96bc4768c0e07a969fff8e8228235fb75ec6c0abf4161 2026-10-23T01:50:21.7064897Z ##[end-action id=__self_2.__actions_cache;outcome=success;conclusion=success;duration_ms=7250] 2026-10-23T01:50:21.7067305Z ##[start-action display=Install dependencies;id=__self_2.__run_2] 2026-10-23T01:50:21.7079663Z ##[group]Run vp install 2026-10-23T01:50:21.7079815Z vp install 2026-10-23T01:50:21.7100436Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2026-10-23T01:50:21.7100616Z env: 2026-10-23T01:50:21.7100741Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 172 2026-10-23T01:50:21.7100900Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 465 2026-10-23T01:50:21.7101052Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-23T01:50:21.7101223Z ##[endgroup] 2026-10-23T01:50:21.7614086Z Scope: all 33 workspace projects 2026-10-23T01:50:21.8642072Z ? Verifying lockfile against supply-chain policies (2088 entries)... 2026-10-23T01:50:22.1358836Z Packages are hard linked from the content-addressable store to the virtual store. 2026-10-23T01:50:22.1359218Z Content-addressable store is at: /home/runner/.local/share/pnpm/store/v11 2026-10-23T01:50:22.1359488Z Virtual store is at: node_modules/.pnpm 2026-10-23T01:50:24.6538942Z ✓ Lockfile passes supply-chain policies (2088 entries in 2.8s) 2026-10-23T01:50:24.6539228Z Lockfile is up to date, resolution step is skipped 2026-10-23T01:50:24.6727210Z Packages: +1721 2026-10-23T01:50:24.6727433Z ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2026-10-23T01:50:24.7111625Z Progress: resolved 1721, reused 1718, downloaded 0, added 1721, done 2026-10-23T01:50:25.6413361Z . prepare$ vp config --no-agent 2026-10-23T01:50:25.7381378Z . prepare: Done 2026-10-23T01:50:25.7394172Z 2026-10-23T01:50:25.7394280Z devDependencies: 2026-10-23T01:50:25.7394493Z + @coderabbitai/config 1.1.0 2026-10-23T01:50:25.7394705Z + @shadcn/lint 0.1.5 2026-10-23T01:50:25.7394929Z + @types/node 24.12.4 2026-10-23T01:50:25.7395118Z + knip 6.34.0 2026-10-23T01:50:25.7395321Z + typescript <- @tsc-rs/typescript 0.8.0 2026-10-23T01:50:25.7395555Z + vite-plus 1.3.0 2026-10-23T01:50:25.7395665Z 2026-10-23T01:50:25.7410088Z Done in 4s using pnpm v12.14.0 2026-10-23T01:50:25.7563050Z ##[end-action id=__self_2.__run_2;outcome=success;conclusion=success;duration_ms=4049] 2026-10-23T01:50:25.8309909Z ##[group]Run actions/cache@v6 2026-10-23T01:50:25.8310164Z with: 2026-10-23T01:50:25.8310338Z path: ~/.cache/electron 2026-10-23T01:50:25.8310721Z key: electron-Linux-X64-854e11ddd491bd4f350eebb67a74265df119376a3984c8e153cfe5fc8ced6309 2026-10-23T01:50:25.8311167Z enableCrossOsArchive: false 2026-10-23T01:50:25.8311391Z fail-on-cache-miss: false 2026-10-23T01:50:25.8311602Z lookup-only: false 2026-10-23T01:50:25.8311793Z save-always: false 2026-10-23T01:50:25.8311977Z env: 2026-10-23T01:50:25.8312157Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 172 2026-10-23T01:50:25.8312401Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 465 2026-10-23T01:50:25.8312659Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-23T01:50:25.8312887Z ##[endgroup] 2026-10-23T01:50:26.0345491Z Cache hit for: electron-Linux-X64-854e11ddd491bd4f350eebb67a74265df119376a3984c8e153cfe5fc8ced6309 2026-10-23T01:50:26.2004864Z Received 122906203 of 122906203 (100.0%), 781.4 MBs/sec 2026-10-23T01:50:26.2005365Z Cache Size: ~117 MB (122906203 B) 2026-10-23T01:50:26.2055079Z [command]/usr/bin/tar -xf /home/runner/_work/_temp/61fbb055-afc5-4aea-9dfa-c98f53524ec5/cache.tzst -P -C /home/runner/_work/t3code/t3code --use-compress-program unzstd 2026-10-23T01:50:26.2730276Z Cache restored successfully 2026-10-23T01:50:26.2889699Z Cache restored from key: electron-Linux-X64-854e11ddd491bd4f350eebb67a74265df119376a3984c8e153cfe5fc8ced6309 2026-10-23T01:50:26.3034740Z ##[group]Run vp run --filter @t3tools/desktop ensure:electron 2026-10-23T01:50:26.3035009Z vp run --filter @t3tools/desktop ensure:electron 2026-10-23T01:50:26.3058360Z shell: /usr/bin/bash -e {0} 2026-10-23T01:50:26.3058538Z env: 2026-10-23T01:50:26.3058918Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 172 2026-10-23T01:50:26.3059096Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 465 2026-10-23T01:50:26.3059253Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-23T01:50:26.3059406Z ##[endgroup] 2026-10-23T01:50:26.4897245Z ~/apps/desktop$ node scripts/ensure-electron-runtime.mjs ⊘ cache disabled 2026-10-23T01:50:27.0694480Z /home/runner/_work/t3code/t3code/node_modules/.pnpm/electron@44.9.3_supports-color@8.1.1/node_modules/electron/dist/electron 2026-10-23T01:50:27.0709923Z 2026-10-23T01:50:27.0792802Z ##[group]Run ( 2026-10-23T01:50:27.0792976Z ( 2026-10-23T01:50:27.0793083Z  set +e 2026-10-23T01:50:27.0793208Z  vpr typecheck 2026-10-23T01:50:27.0793367Z  echo "$?" > "$RUNNER_TEMP/typecheck-status" 2026-10-23T01:50:27.0793563Z ) > "$RUNNER_TEMP/typecheck.log" 2>&1 < /dev/null & 2026-10-23T01:50:27.0811930Z shell: /usr/bin/bash -e {0} 2026-10-23T01:50:27.0812066Z env: 2026-10-23T01:50:27.0812183Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 172 2026-10-23T01:50:27.0812330Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 465 2026-10-23T01:50:27.0812479Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-23T01:50:27.0812615Z ##[endgroup] 2026-10-23T01:50:27.0855663Z ##[group]Run until test -s "$RUNNER_TEMP/apt-status"; do sleep 1; done 2026-10-23T01:50:27.0855921Z until test -s "$RUNNER_TEMP/apt-status"; do sleep 1; done 2026-10-23T01:50:27.0856106Z cat "$RUNNER_TEMP/apt.log" 2026-10-23T01:50:27.0856265Z exit "$(cat "$RUNNER_TEMP/apt-status")" 2026-10-23T01:50:27.0868942Z shell: /usr/bin/bash -e {0} 2026-10-23T01:50:27.0869073Z env: 2026-10-23T01:50:27.0869184Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 172 2026-10-23T01:50:27.0869335Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 465 2026-10-23T01:50:27.0869477Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-23T01:50:27.0869615Z ##[endgroup] 2026-10-23T01:50:34.1255200Z blacksmith: the apt mirror lists changed since the package indexes were staged; discarding the staged indexes 2026-10-23T01:50:34.1291547Z Get:1 file:/etc/apt/blacksmith-ubuntu-mirrors.txt Mirrorlist [151 B] 2026-10-23T01:50:34.1292572Z Hit:6 https://packages.microsoft.com/repos/azure-cli noble InRelease 2026-10-23T01:50:34.1321826Z Get:7 https://packages.microsoft.com/ubuntu/24.04/prod noble InRelease [3600 B] 2026-10-23T01:50:34.1352757Z Hit:8 https://dl.google.com/linux/chrome-stable/deb stable InRelease 2026-10-23T01:50:34.1371384Z Get:9 https://packages.microsoft.com/ubuntu/24.04/prod noble/main amd64 Packages [635 kB] 2026-10-23T01:50:34.1371732Z Get:10 https://packages.microsoft.com/ubuntu/24.04/prod noble/main arm64 Packages [572 kB] 2026-10-23T01:50:34.1372026Z Get:2 https://archive.ubuntu.com/ubuntu noble InRelease [256 kB] 2026-10-23T01:50:34.1372275Z Get:3 https://archive.ubuntu.com/ubuntu noble-updates InRelease [126 kB] 2026-10-23T01:50:34.1372535Z Get:4 https://archive.ubuntu.com/ubuntu noble-backports InRelease [126 kB] 2026-10-23T01:50:34.1372825Z Get:5 https://archive.ubuntu.com/ubuntu noble-security InRelease [126 kB] 2026-10-23T01:50:34.1373099Z Get:11 https://archive.ubuntu.com/ubuntu noble/main amd64 Packages [1401 kB] 2026-10-23T01:50:34.1373393Z Get:12 https://archive.ubuntu.com/ubuntu noble/main Translation-en [513 kB] 2026-10-23T01:50:34.1373662Z Get:13 https://archive.ubuntu.com/ubuntu noble/main amd64 Components [464 kB] 2026-10-23T01:50:34.1373938Z Get:14 https://archive.ubuntu.com/ubuntu noble/main amd64 c-n-f Metadata [30.5 kB] 2026-10-23T01:50:34.1374222Z Get:15 https://archive.ubuntu.com/ubuntu noble/universe amd64 Packages [15.0 MB] 2026-10-23T01:50:34.1374493Z Get:16 https://archive.ubuntu.com/ubuntu noble/universe Translation-en [5982 kB] 2026-10-23T01:50:34.1374768Z Get:17 https://archive.ubuntu.com/ubuntu noble/universe amd64 Components [3871 kB] 2026-10-23T01:50:34.1375049Z Get:18 https://archive.ubuntu.com/ubuntu noble/universe amd64 c-n-f Metadata [301 kB] 2026-10-23T01:50:34.1375338Z Get:19 https://archive.ubuntu.com/ubuntu noble/restricted amd64 Packages [93.9 kB] 2026-10-23T01:50:34.1375620Z Get:20 https://archive.ubuntu.com/ubuntu noble/restricted Translation-en [18.7 kB] 2026-10-23T01:50:34.1375914Z Get:21 https://archive.ubuntu.com/ubuntu noble/restricted amd64 c-n-f Metadata [416 B] 2026-10-23T01:50:34.1376200Z Get:22 https://archive.ubuntu.com/ubuntu noble/multiverse amd64 Packages [269 kB] 2026-10-23T01:50:34.1376488Z Get:23 https://archive.ubuntu.com/ubuntu noble/multiverse Translation-en [118 kB] 2026-10-23T01:50:34.1376768Z Get:24 https://archive.ubuntu.com/ubuntu noble/multiverse amd64 Components [35.0 kB] 2026-10-23T01:50:34.1377062Z Get:25 https://archive.ubuntu.com/ubuntu noble/multiverse amd64 c-n-f Metadata [8328 B] 2026-10-23T01:50:34.1377353Z Get:26 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 Packages [1400 kB] 2026-10-23T01:50:34.1377642Z Get:27 https://archive.ubuntu.com/ubuntu noble-updates/main Translation-en [310 kB] 2026-10-23T01:50:34.1377928Z Get:28 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 Components [181 kB] 2026-10-23T01:50:34.1378231Z Get:29 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 c-n-f Metadata [17.7 kB] 2026-10-23T01:50:34.1378537Z Get:30 https://archive.ubuntu.com/ubuntu noble-updates/universe amd64 Packages [1706 kB] 2026-10-23T01:50:34.1378836Z Get:31 https://archive.ubuntu.com/ubuntu noble-updates/universe Translation-en [342 kB] 2026-10-23T01:50:34.1379136Z Get:32 https://archive.ubuntu.com/ubuntu noble-updates/universe amd64 Components [388 kB] 2026-10-23T01:50:34.1379453Z Get:33 https://archive.ubuntu.com/ubuntu noble-updates/universe amd64 c-n-f Metadata [34.9 kB] 2026-10-23T01:50:34.1379767Z Get:34 https://archive.ubuntu.com/ubuntu noble-updates/restricted amd64 Packages [1805 kB] 2026-10-23T01:50:34.1380068Z Get:35 https://archive.ubuntu.com/ubuntu noble-updates/restricted Translation-en [411 kB] 2026-10-23T01:50:34.1380370Z Get:36 https://archive.ubuntu.com/ubuntu noble-updates/restricted amd64 Components [212 B] 2026-10-23T01:50:34.1380728Z Get:37 https://archive.ubuntu.com/ubuntu noble-updates/restricted amd64 c-n-f Metadata [456 B] 2026-10-23T01:50:34.1381050Z Get:38 https://archive.ubuntu.com/ubuntu noble-updates/multiverse amd64 Packages [50.7 kB] 2026-10-23T01:50:34.1381353Z Get:39 https://archive.ubuntu.com/ubuntu noble-updates/multiverse Translation-en [14.0 kB] 2026-10-23T01:50:34.1411561Z Get:40 https://archive.ubuntu.com/ubuntu noble-updates/multiverse amd64 Components [940 B] 2026-10-23T01:50:34.1451461Z Get:41 https://archive.ubuntu.com/ubuntu noble-updates/multiverse amd64 c-n-f Metadata [656 B] 2026-10-23T01:50:34.1451817Z Get:42 https://archive.ubuntu.com/ubuntu noble-backports/main amd64 Packages [40.6 kB] 2026-10-23T01:50:34.1452141Z Get:43 https://archive.ubuntu.com/ubuntu noble-backports/main Translation-en [9172 B] 2026-10-23T01:50:34.1452447Z Get:44 https://archive.ubuntu.com/ubuntu noble-backports/main amd64 Components [5764 B] 2026-10-23T01:50:34.1452760Z Get:45 https://archive.ubuntu.com/ubuntu noble-backports/main amd64 c-n-f Metadata [368 B] 2026-10-23T01:50:34.1453404Z Get:46 https://archive.ubuntu.com/ubuntu noble-backports/universe amd64 Packages [31.0 kB] 2026-10-23T01:50:34.1453836Z Get:47 https://archive.ubuntu.com/ubuntu noble-backports/universe Translation-en [18.6 kB] 2026-10-23T01:50:34.1454200Z Get:48 https://archive.ubuntu.com/ubuntu noble-backports/universe amd64 Components [12.6 kB] 2026-10-23T01:50:34.1454529Z Get:49 https://archive.ubuntu.com/ubuntu noble-backports/universe amd64 c-n-f Metadata [1588 B] 2026-10-23T01:50:34.1454852Z Get:50 https://archive.ubuntu.com/ubuntu noble-backports/restricted amd64 Components [212 B] 2026-10-23T01:50:34.1455179Z Get:51 https://archive.ubuntu.com/ubuntu noble-backports/restricted amd64 c-n-f Metadata [116 B] 2026-10-23T01:50:34.1455495Z Get:52 https://archive.ubuntu.com/ubuntu noble-backports/multiverse amd64 Packages [748 B] 2026-10-23T01:50:34.1455807Z Get:53 https://archive.ubuntu.com/ubuntu noble-backports/multiverse Translation-en [340 B] 2026-10-23T01:50:34.1456119Z Get:54 https://archive.ubuntu.com/ubuntu noble-backports/multiverse amd64 Components [212 B] 2026-10-23T01:50:34.1456445Z Get:55 https://archive.ubuntu.com/ubuntu noble-backports/multiverse amd64 c-n-f Metadata [116 B] 2026-10-23T01:50:34.1456755Z Get:56 https://archive.ubuntu.com/ubuntu noble-security/main amd64 Packages [1146 kB] 2026-10-23T01:50:34.1457050Z Get:57 https://archive.ubuntu.com/ubuntu noble-security/main Translation-en [231 kB] 2026-10-23T01:50:34.1457346Z Get:58 https://archive.ubuntu.com/ubuntu noble-security/main amd64 Components [46.4 kB] 2026-10-23T01:50:34.1457656Z Get:59 https://archive.ubuntu.com/ubuntu noble-security/main amd64 c-n-f Metadata [11.9 kB] 2026-10-23T01:50:34.1457966Z Get:60 https://archive.ubuntu.com/ubuntu noble-security/universe amd64 Packages [1222 kB] 2026-10-23T01:50:34.1458273Z Get:61 https://archive.ubuntu.com/ubuntu noble-security/universe Translation-en [246 kB] 2026-10-23T01:50:34.1458578Z Get:62 https://archive.ubuntu.com/ubuntu noble-security/universe amd64 Components [76.2 kB] 2026-10-23T01:50:34.1458905Z Get:63 https://archive.ubuntu.com/ubuntu noble-security/universe amd64 c-n-f Metadata [24.2 kB] 2026-10-23T01:50:34.1459227Z Get:64 https://archive.ubuntu.com/ubuntu noble-security/restricted amd64 Packages [1713 kB] 2026-10-23T01:50:34.1459544Z Get:65 https://archive.ubuntu.com/ubuntu noble-security/restricted Translation-en [392 kB] 2026-10-23T01:50:34.1459859Z Get:66 https://archive.ubuntu.com/ubuntu noble-security/restricted amd64 Components [212 B] 2026-10-23T01:50:34.1460184Z Get:67 https://archive.ubuntu.com/ubuntu noble-security/restricted amd64 c-n-f Metadata [444 B] 2026-10-23T01:50:34.1460545Z Get:68 https://archive.ubuntu.com/ubuntu noble-security/multiverse amd64 Packages [45.4 kB] 2026-10-23T01:50:34.1460860Z Get:69 https://archive.ubuntu.com/ubuntu noble-security/multiverse Translation-en [12.1 kB] 2026-10-23T01:50:34.1461175Z Get:70 https://archive.ubuntu.com/ubuntu noble-security/multiverse amd64 Components [208 B] 2026-10-23T01:50:34.1461501Z Get:71 https://archive.ubuntu.com/ubuntu noble-security/multiverse amd64 c-n-f Metadata [468 B] 2026-10-23T01:50:34.1461757Z Fetched 41.9 MB in 8s (5230 kB/s) 2026-10-23T01:50:34.1461908Z Reading package lists... 2026-10-23T01:50:34.1462044Z Reading package lists... 2026-10-23T01:50:34.1462177Z Building dependency tree... 2026-10-23T01:50:34.1462320Z Reading state information... 2026-10-23T01:50:34.1462490Z pkg-config is already the newest version (1.8.1-2build1). 2026-10-23T01:50:34.1462697Z The following additional packages will be installed: 2026-10-23T01:50:34.1462922Z bsdextrautils bsdutils eject fdisk gir1.2-glib-2.0 gir1.2-secret-1 2026-10-23T01:50:34.1463161Z libblkid-dev libblkid1 libfdisk1 libgcrypt20 libgcrypt20-dev 2026-10-23T01:50:34.1463411Z libgirepository-2.0-0 libglib2.0-0t64 libglib2.0-bin libglib2.0-data 2026-10-23T01:50:34.1463677Z libglib2.0-dev libglib2.0-dev-bin libgpg-error-dev libmount-dev libmount1 2026-10-23T01:50:34.1463953Z libsecret-1-0 libsecret-common libselinux1-dev libsepol-dev libsmartcols1 2026-10-23T01:50:34.1464288Z libuuid1 mount util-linux uuid-dev uuid-runtime 2026-10-23T01:50:34.1464511Z Suggested packages: 2026-10-23T01:50:34.1464685Z rng-tools libgcrypt20-doc low-memory-monitor gir1.2-glib-2.0-dev 2026-10-23T01:50:34.1464943Z libglib2.0-doc libxml2-utils nfs-common util-linux-extra util-linux-locales 2026-10-23T01:50:34.1465168Z The following NEW packages will be installed: 2026-10-23T01:50:34.1465384Z gir1.2-secret-1 libblkid-dev libgcrypt20-dev libgirepository-2.0-0 2026-10-23T01:50:34.1465636Z libglib2.0-dev libglib2.0-dev-bin libgpg-error-dev libmount-dev 2026-10-23T01:50:34.1465892Z libsecret-1-0 libsecret-1-dev libsecret-common libselinux1-dev libsepol-dev 2026-10-23T01:50:34.1466102Z uuid-dev 2026-10-23T01:50:34.1466224Z The following packages will be upgraded: 2026-10-23T01:50:34.1466435Z bsdextrautils bsdutils eject fdisk gir1.2-glib-2.0 libblkid1 libfdisk1 2026-10-23T01:50:34.1466684Z libgcrypt20 libglib2.0-0t64 libglib2.0-bin libglib2.0-data libmount1 2026-10-23T01:50:34.1466919Z libsmartcols1 libuuid1 mount util-linux uuid-runtime 2026-10-23T01:50:34.1467144Z 17 upgraded, 14 newly installed, 0 to remove and 240 not upgraded. 2026-10-23T01:50:34.1467347Z Need to get 8378 kB of archives. 2026-10-23T01:50:34.1467542Z After this operation, 23.0 MB of additional disk space will be used. 2026-10-23T01:50:34.1467798Z Get:1 file:/etc/apt/blacksmith-ubuntu-mirrors.txt Mirrorlist [151 B] 2026-10-23T01:50:34.1468130Z Get:2 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 bsdutils amd64 1:2.39.3-9ubuntu6.6 [96.4 kB] 2026-10-23T01:50:34.1468516Z Get:3 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 util-linux amd64 2.39.3-9ubuntu6.6 [1128 kB] 2026-10-23T01:50:34.1468893Z Get:4 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 mount amd64 2.39.3-9ubuntu6.6 [118 kB] 2026-10-23T01:50:34.1469278Z Get:5 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libsmartcols1 amd64 2.39.3-9ubuntu6.6 [66.3 kB] 2026-10-23T01:50:34.1469664Z Get:6 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libuuid1 amd64 2.39.3-9ubuntu6.6 [36.6 kB] 2026-10-23T01:50:34.1470046Z Get:7 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 uuid-runtime amd64 2.39.3-9ubuntu6.6 [33.1 kB] 2026-10-23T01:50:34.1470468Z Get:8 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libblkid1 amd64 2.39.3-9ubuntu6.6 [124 kB] 2026-10-23T01:50:34.1470847Z Get:9 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libgcrypt20 amd64 1.10.3-2ubuntu0.2 [536 kB] 2026-10-23T01:50:34.1471228Z Get:10 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libmount1 amd64 2.39.3-9ubuntu6.6 [134 kB] 2026-10-23T01:50:34.1471596Z Get:11 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 eject amd64 2.39.3-9ubuntu6.6 [26.3 kB] 2026-10-23T01:50:34.1471983Z 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-23T01:50:34.1472388Z 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-23T01:50:34.1472790Z 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-23T01:50:34.1473192Z Get:15 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libglib2.0-0t64 amd64 2.80.0-6ubuntu3.10 [1548 kB] 2026-10-23T01:50:34.1473582Z Get:16 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libfdisk1 amd64 2.39.3-9ubuntu6.6 [146 kB] 2026-10-23T01:50:34.1473964Z Get:17 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 bsdextrautils amd64 2.39.3-9ubuntu6.6 [73.7 kB] 2026-10-23T01:50:34.1474342Z Get:18 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 fdisk amd64 2.39.3-9ubuntu6.6 [122 kB] 2026-10-23T01:50:34.1474703Z Get:19 https://archive.ubuntu.com/ubuntu noble/main amd64 libsecret-common all 0.21.4-1build3 [4962 B] 2026-10-23T01:50:34.1475057Z Get:20 https://archive.ubuntu.com/ubuntu noble/main amd64 libsecret-1-0 amd64 0.21.4-1build3 [116 kB] 2026-10-23T01:50:34.1475507Z Get:21 https://archive.ubuntu.com/ubuntu noble/main amd64 gir1.2-secret-1 amd64 0.21.4-1build3 [9424 B] 2026-10-23T01:50:34.1475919Z Get:22 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libgpg-error-dev amd64 1.47-3build2.1 [128 kB] 2026-10-23T01:50:34.1476313Z Get:23 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libgcrypt20-dev amd64 1.10.3-2ubuntu0.2 [596 kB] 2026-10-23T01:50:34.1476731Z 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-23T01:50:34.1477164Z 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-23T01:50:34.1477588Z Get:26 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 uuid-dev amd64 2.39.3-9ubuntu6.6 [33.5 kB] 2026-10-23T01:50:34.1477993Z Get:27 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libblkid-dev amd64 2.39.3-9ubuntu6.6 [205 kB] 2026-10-23T01:50:34.1478375Z Get:28 https://archive.ubuntu.com/ubuntu noble/main amd64 libsepol-dev amd64 3.5-2build1 [384 kB] 2026-10-23T01:50:34.1478751Z Get:29 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libselinux1-dev amd64 3.5-2ubuntu2.1 [164 kB] 2026-10-23T01:50:34.1479333Z Get:30 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libmount-dev amd64 2.39.3-9ubuntu6.6 [14.9 kB] 2026-10-23T01:50:34.1479769Z Get:31 https://archive.ubuntu.com/ubuntu noble-updates/main amd64 libglib2.0-dev amd64 2.80.0-6ubuntu3.10 [1861 kB] 2026-10-23T01:50:34.1480168Z Get:32 https://archive.ubuntu.com/ubuntu noble/universe amd64 libsecret-1-dev amd64 0.21.4-1build3 [129 kB] 2026-10-23T01:50:34.1480480Z Fetched 8378 kB in 3s (2461 kB/s) 2026-10-23T01:50:34.1480642Z (Reading database ... 2026-10-23T01:50:34.1480785Z (Reading database ... 5% 2026-10-23T01:50:34.1480927Z (Reading database ... 10% 2026-10-23T01:50:34.1481068Z (Reading database ... 15% 2026-10-23T01:50:34.1481210Z (Reading database ... 20% 2026-10-23T01:50:34.1481348Z (Reading database ... 25% 2026-10-23T01:50:34.1481487Z (Reading database ... 30% 2026-10-23T01:50:34.1481624Z (Reading database ... 35% 2026-10-23T01:50:34.1481762Z (Reading database ... 40% 2026-10-23T01:50:34.1481895Z (Reading database ... 45% 2026-10-23T01:50:34.1482030Z (Reading database ... 50% 2026-10-23T01:50:34.1482285Z (Reading database ... 55% 2026-10-23T01:50:34.1482418Z (Reading database ... 60% 2026-10-23T01:50:34.1482555Z (Reading database ... 65% 2026-10-23T01:50:34.1482688Z (Reading database ... 70% 2026-10-23T01:50:34.1482827Z (Reading database ... 75% 2026-10-23T01:50:34.1482958Z (Reading database ... 80% 2026-10-23T01:50:34.1483099Z (Reading database ... 85% 2026-10-23T01:50:34.1483234Z (Reading database ... 90% 2026-10-23T01:50:34.1483369Z (Reading database ... 95% 2026-10-23T01:50:34.1483510Z (Reading database ... 100% 2026-10-23T01:50:34.1483709Z (Reading database ... 207973 files and directories currently installed.) 2026-10-23T01:50:34.1484015Z Preparing to unpack .../bsdutils_1%3a2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-23T01:50:34.1484279Z Unpacking bsdutils (1:2.39.3-9ubuntu6.6) over (1:2.39.3-9ubuntu6.5) ... 2026-10-23T01:50:34.1484504Z Setting up bsdutils (1:2.39.3-9ubuntu6.6) ... 2026-10-23T01:50:34.1484675Z (Reading database ... 2026-10-23T01:50:34.1484812Z (Reading database ... 5% 2026-10-23T01:50:34.1484953Z (Reading database ... 10% 2026-10-23T01:50:34.1485093Z (Reading database ... 15% 2026-10-23T01:50:34.1485239Z (Reading database ... 20% 2026-10-23T01:50:34.1485375Z (Reading database ... 25% 2026-10-23T01:50:34.1485517Z (Reading database ... 30% 2026-10-23T01:50:34.1485654Z (Reading database ... 35% 2026-10-23T01:50:34.1485793Z (Reading database ... 40% 2026-10-23T01:50:34.1485927Z (Reading database ... 45% 2026-10-23T01:50:34.1486064Z (Reading database ... 50% 2026-10-23T01:50:34.1486207Z (Reading database ... 55% 2026-10-23T01:50:34.1486346Z (Reading database ... 60% 2026-10-23T01:50:34.1486491Z (Reading database ... 65% 2026-10-23T01:50:34.1486625Z (Reading database ... 70% 2026-10-23T01:50:34.1486858Z (Reading database ... 75% 2026-10-23T01:50:34.1487047Z (Reading database ... 80% 2026-10-23T01:50:34.1487189Z (Reading database ... 85% 2026-10-23T01:50:34.1487330Z (Reading database ... 90% 2026-10-23T01:50:34.1487527Z (Reading database ... 95% 2026-10-23T01:50:34.1487962Z (Reading database ... 100% 2026-10-23T01:50:34.1544511Z (Reading database ... 207973 files and directories currently installed.) 2026-10-23T01:50:34.1544946Z Preparing to unpack .../util-linux_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-23T01:50:34.1545199Z Unpacking util-linux (2.39.3-9ubuntu6.6) over (2.39.3-9ubuntu6.5) ... 2026-10-23T01:50:34.1545419Z Setting up util-linux (2.39.3-9ubuntu6.6) ... 2026-10-23T01:50:34.1545720Z update-alternatives: warning: forcing reinstallation of alternative /usr/bin/less because link group pager is broken 2026-10-23T01:50:34.1546234Z 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-23T01:50:34.1546657Z fstrim.service is a disabled or a static unit not running, not starting it. 2026-10-23T01:50:34.1546872Z (Reading database ... 2026-10-23T01:50:34.1547004Z (Reading database ... 5% 2026-10-23T01:50:34.1547146Z (Reading database ... 10% 2026-10-23T01:50:34.1547285Z (Reading database ... 15% 2026-10-23T01:50:34.1547414Z (Reading database ... 20% 2026-10-23T01:50:34.1547541Z (Reading database ... 25% 2026-10-23T01:50:34.1547667Z (Reading database ... 30% 2026-10-23T01:50:34.1547796Z (Reading database ... 35% 2026-10-23T01:50:34.1547920Z (Reading database ... 40% 2026-10-23T01:50:34.1548044Z (Reading database ... 45% 2026-10-23T01:50:34.1548175Z (Reading database ... 50% 2026-10-23T01:50:34.1548301Z (Reading database ... 55% 2026-10-23T01:50:34.1548430Z (Reading database ... 60% 2026-10-23T01:50:34.1548558Z (Reading database ... 65% 2026-10-23T01:50:34.1548691Z (Reading database ... 70% 2026-10-23T01:50:34.1548822Z (Reading database ... 75% 2026-10-23T01:50:34.1548949Z (Reading database ... 80% 2026-10-23T01:50:34.1549082Z (Reading database ... 85% 2026-10-23T01:50:34.1549208Z (Reading database ... 90% 2026-10-23T01:50:34.1549336Z (Reading database ... 95% 2026-10-23T01:50:34.1549467Z (Reading database ... 100% 2026-10-23T01:50:34.1549657Z (Reading database ... 207973 files and directories currently installed.) 2026-10-23T01:50:34.1549897Z Preparing to unpack .../mount_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-23T01:50:34.1550125Z Unpacking mount (2.39.3-9ubuntu6.6) over (2.39.3-9ubuntu6.5) ... 2026-10-23T01:50:34.1550357Z Preparing to unpack .../libsmartcols1_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-23T01:50:34.1550643Z Unpacking libsmartcols1:amd64 (2.39.3-9ubuntu6.6) over (2.39.3-9ubuntu6.5) ... 2026-10-23T01:50:34.1550880Z Setting up libsmartcols1:amd64 (2.39.3-9ubuntu6.6) ... 2026-10-23T01:50:34.1551048Z (Reading database ... 2026-10-23T01:50:34.1551179Z (Reading database ... 5% 2026-10-23T01:50:34.1551309Z (Reading database ... 10% 2026-10-23T01:50:34.1551443Z (Reading database ... 15% 2026-10-23T01:50:34.1551571Z (Reading database ... 20% 2026-10-23T01:50:34.1551699Z (Reading database ... 25% 2026-10-23T01:50:34.1551822Z (Reading database ... 30% 2026-10-23T01:50:34.1551945Z (Reading database ... 35% 2026-10-23T01:50:34.1552070Z (Reading database ... 40% 2026-10-23T01:50:34.1552194Z (Reading database ... 45% 2026-10-23T01:50:34.1552328Z (Reading database ... 50% 2026-10-23T01:50:34.1552456Z (Reading database ... 55% 2026-10-23T01:50:34.1552582Z (Reading database ... 60% 2026-10-23T01:50:34.1552711Z (Reading database ... 65% 2026-10-23T01:50:34.1552843Z (Reading database ... 70% 2026-10-23T01:50:34.1552974Z (Reading database ... 75% 2026-10-23T01:50:34.1553099Z (Reading database ... 80% 2026-10-23T01:50:34.1553233Z (Reading database ... 85% 2026-10-23T01:50:34.1553360Z (Reading database ... 90% 2026-10-23T01:50:34.1553489Z (Reading database ... 95% 2026-10-23T01:50:34.1553618Z (Reading database ... 100% 2026-10-23T01:50:34.1557715Z (Reading database ... 207973 files and directories currently installed.) 2026-10-23T01:50:34.1558404Z Preparing to unpack .../libuuid1_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-23T01:50:34.1558649Z Unpacking libuuid1:amd64 (2.39.3-9ubuntu6.6) over (2.39.3-9ubuntu6.5) ... 2026-10-23T01:50:34.1558874Z Setting up libuuid1:amd64 (2.39.3-9ubuntu6.6) ... 2026-10-23T01:50:34.1559035Z (Reading database ... 2026-10-23T01:50:34.1559165Z (Reading database ... 5% 2026-10-23T01:50:34.1559296Z (Reading database ... 10% 2026-10-23T01:50:34.1559427Z (Reading database ... 15% 2026-10-23T01:50:34.1559552Z (Reading database ... 20% 2026-10-23T01:50:34.1559681Z (Reading database ... 25% 2026-10-23T01:50:34.1559811Z (Reading database ... 30% 2026-10-23T01:50:34.1559937Z (Reading database ... 35% 2026-10-23T01:50:34.1560066Z (Reading database ... 40% 2026-10-23T01:50:34.1560193Z (Reading database ... 45% 2026-10-23T01:50:34.1560321Z (Reading database ... 50% 2026-10-23T01:50:34.1560494Z (Reading database ... 55% 2026-10-23T01:50:34.1560625Z (Reading database ... 60% 2026-10-23T01:50:34.1560756Z (Reading database ... 65% 2026-10-23T01:50:34.1560883Z (Reading database ... 70% 2026-10-23T01:50:34.1561011Z (Reading database ... 75% 2026-10-23T01:50:34.1561136Z (Reading database ... 80% 2026-10-23T01:50:34.1561263Z (Reading database ... 85% 2026-10-23T01:50:34.1561392Z (Reading database ... 90% 2026-10-23T01:50:34.1561516Z (Reading database ... 95% 2026-10-23T01:50:34.1561645Z (Reading database ... 100% 2026-10-23T01:50:34.1561824Z (Reading database ... 207973 files and directories currently installed.) 2026-10-23T01:50:34.1562072Z Preparing to unpack .../uuid-runtime_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-23T01:50:34.1562315Z Unpacking uuid-runtime (2.39.3-9ubuntu6.6) over (2.39.3-9ubuntu6.5) ... 2026-10-23T01:50:34.1562557Z Preparing to unpack .../libblkid1_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-23T01:50:34.1562796Z Unpacking libblkid1:amd64 (2.39.3-9ubuntu6.6) over (2.39.3-9ubuntu6.5) ... 2026-10-23T01:50:34.1563020Z Setting up libblkid1:amd64 (2.39.3-9ubuntu6.6) ... 2026-10-23T01:50:34.1563188Z (Reading database ... 2026-10-23T01:50:34.1563319Z (Reading database ... 5% 2026-10-23T01:50:34.1563450Z (Reading database ... 10% 2026-10-23T01:50:34.1563578Z (Reading database ... 15% 2026-10-23T01:50:34.1563709Z (Reading database ... 20% 2026-10-23T01:50:34.1563834Z (Reading database ... 25% 2026-10-23T01:50:34.1563964Z (Reading database ... 30% 2026-10-23T01:50:34.1564090Z (Reading database ... 35% 2026-10-23T01:50:34.1564222Z (Reading database ... 40% 2026-10-23T01:50:34.1564348Z (Reading database ... 45% 2026-10-23T01:50:34.1564472Z (Reading database ... 50% 2026-10-23T01:50:34.1564600Z (Reading database ... 55% 2026-10-23T01:50:34.1564725Z (Reading database ... 60% 2026-10-23T01:50:34.1564855Z (Reading database ... 65% 2026-10-23T01:50:34.1564980Z (Reading database ... 70% 2026-10-23T01:50:34.1565112Z (Reading database ... 75% 2026-10-23T01:50:34.1565237Z (Reading database ... 80% 2026-10-23T01:50:34.1565361Z (Reading database ... 85% 2026-10-23T01:50:34.1565491Z (Reading database ... 90% 2026-10-23T01:50:34.1565623Z (Reading database ... 95% 2026-10-23T01:50:34.1565759Z (Reading database ... 100% 2026-10-23T01:50:34.1565941Z (Reading database ... 207973 files and directories currently installed.) 2026-10-23T01:50:34.1566188Z Preparing to unpack .../libgcrypt20_1.10.3-2ubuntu0.2_amd64.deb ... 2026-10-23T01:50:34.1566441Z Unpacking libgcrypt20:amd64 (1.10.3-2ubuntu0.2) over (1.10.3-2ubuntu0.1) ... 2026-10-23T01:50:34.1566673Z Setting up libgcrypt20:amd64 (1.10.3-2ubuntu0.2) ... 2026-10-23T01:50:34.1566839Z (Reading database ... 2026-10-23T01:50:34.1566965Z (Reading database ... 5% 2026-10-23T01:50:34.1567097Z (Reading database ... 10% 2026-10-23T01:50:34.1567221Z (Reading database ... 15% 2026-10-23T01:50:34.1567351Z (Reading database ... 20% 2026-10-23T01:50:34.1567479Z (Reading database ... 25% 2026-10-23T01:50:34.1567608Z (Reading database ... 30% 2026-10-23T01:50:34.1567735Z (Reading database ... 35% 2026-10-23T01:50:34.1567860Z (Reading database ... 40% 2026-10-23T01:50:34.1568409Z (Reading database ... 45% 2026-10-23T01:50:34.1568704Z (Reading database ... 50% 2026-10-23T01:50:34.1568854Z (Reading database ... 55% 2026-10-23T01:50:34.1568985Z (Reading database ... 60% 2026-10-23T01:50:34.1569120Z (Reading database ... 65% 2026-10-23T01:50:34.1569253Z (Reading database ... 70% 2026-10-23T01:50:34.1569386Z (Reading database ... 75% 2026-10-23T01:50:34.1569513Z (Reading database ... 80% 2026-10-23T01:50:34.1569641Z (Reading database ... 85% 2026-10-23T01:50:34.1569772Z (Reading database ... 90% 2026-10-23T01:50:34.1569898Z (Reading database ... 95% 2026-10-23T01:50:34.1570028Z (Reading database ... 100% 2026-10-23T01:50:34.1570213Z (Reading database ... 207973 files and directories currently installed.) 2026-10-23T01:50:34.1570502Z Preparing to unpack .../libmount1_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-23T01:50:34.1570742Z Unpacking libmount1:amd64 (2.39.3-9ubuntu6.6) over (2.39.3-9ubuntu6.5) ... 2026-10-23T01:50:34.1571149Z Setting up libmount1:amd64 (2.39.3-9ubuntu6.6) ... 2026-10-23T01:50:34.1571314Z (Reading database ... 2026-10-23T01:50:34.1571442Z (Reading database ... 5% 2026-10-23T01:50:34.1571576Z (Reading database ... 10% 2026-10-23T01:50:34.1571703Z (Reading database ... 15% 2026-10-23T01:50:34.1571838Z (Reading database ... 20% 2026-10-23T01:50:34.1571963Z (Reading database ... 25% 2026-10-23T01:50:34.1572092Z (Reading database ... 30% 2026-10-23T01:50:34.1572218Z (Reading database ... 35% 2026-10-23T01:50:34.1572346Z (Reading database ... 40% 2026-10-23T01:50:34.1572481Z (Reading database ... 45% 2026-10-23T01:50:34.1572603Z (Reading database ... 50% 2026-10-23T01:50:34.1572731Z (Reading database ... 55% 2026-10-23T01:50:34.1572858Z (Reading database ... 60% 2026-10-23T01:50:34.1572986Z (Reading database ... 65% 2026-10-23T01:50:34.1573111Z (Reading database ... 70% 2026-10-23T01:50:34.1573232Z (Reading database ... 75% 2026-10-23T01:50:34.1573358Z (Reading database ... 80% 2026-10-23T01:50:34.1573479Z (Reading database ... 85% 2026-10-23T01:50:34.1573603Z (Reading database ... 90% 2026-10-23T01:50:34.1573727Z (Reading database ... 95% 2026-10-23T01:50:34.1573857Z (Reading database ... 100% 2026-10-23T01:50:34.1574039Z (Reading database ... 207973 files and directories currently installed.) 2026-10-23T01:50:34.1574273Z Preparing to unpack .../00-eject_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-23T01:50:34.1574497Z Unpacking eject (2.39.3-9ubuntu6.6) over (2.39.3-9ubuntu6.5) ... 2026-10-23T01:50:34.1574731Z Preparing to unpack .../01-libglib2.0-data_2.80.0-6ubuntu3.10_all.deb ... 2026-10-23T01:50:34.1574991Z Unpacking libglib2.0-data (2.80.0-6ubuntu3.10) over (2.80.0-6ubuntu3.8) ... 2026-10-23T01:50:34.1575244Z Preparing to unpack .../02-libglib2.0-bin_2.80.0-6ubuntu3.10_amd64.deb ... 2026-10-23T01:50:34.1575501Z Unpacking libglib2.0-bin (2.80.0-6ubuntu3.10) over (2.80.0-6ubuntu3.8) ... 2026-10-23T01:50:34.1575747Z Preparing to unpack .../03-gir1.2-glib-2.0_2.80.0-6ubuntu3.10_amd64.deb ... 2026-10-23T01:50:34.1576019Z Unpacking gir1.2-glib-2.0:amd64 (2.80.0-6ubuntu3.10) over (2.80.0-6ubuntu3.8) ... 2026-10-23T01:50:34.1576278Z Preparing to unpack .../04-libglib2.0-0t64_2.80.0-6ubuntu3.10_amd64.deb ... 2026-10-23T01:50:34.1576546Z Unpacking libglib2.0-0t64:amd64 (2.80.0-6ubuntu3.10) over (2.80.0-6ubuntu3.8) ... 2026-10-23T01:50:34.1576802Z Preparing to unpack .../05-libfdisk1_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-23T01:50:34.1577053Z Unpacking libfdisk1:amd64 (2.39.3-9ubuntu6.6) over (2.39.3-9ubuntu6.5) ... 2026-10-23T01:50:34.1577312Z Preparing to unpack .../06-bsdextrautils_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-23T01:50:34.1577568Z Unpacking bsdextrautils (2.39.3-9ubuntu6.6) over (2.39.3-9ubuntu6.5) ... 2026-10-23T01:50:34.1577809Z Preparing to unpack .../07-fdisk_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-23T01:50:34.1578040Z Unpacking fdisk (2.39.3-9ubuntu6.6) over (2.39.3-9ubuntu6.5) ... 2026-10-23T01:50:34.1578272Z Selecting previously unselected package libsecret-common. 2026-10-23T01:50:34.1578506Z Preparing to unpack .../08-libsecret-common_0.21.4-1build3_all.deb ... 2026-10-23T01:50:34.1611252Z Unpacking libsecret-common (0.21.4-1build3) ... 2026-10-23T01:50:34.1611735Z Selecting previously unselected package libsecret-1-0:amd64. 2026-10-23T01:50:34.1611992Z Preparing to unpack .../09-libsecret-1-0_0.21.4-1build3_amd64.deb ... 2026-10-23T01:50:34.1612217Z Unpacking libsecret-1-0:amd64 (0.21.4-1build3) ... 2026-10-23T01:50:34.1612437Z Selecting previously unselected package gir1.2-secret-1:amd64. 2026-10-23T01:50:34.1612683Z Preparing to unpack .../10-gir1.2-secret-1_0.21.4-1build3_amd64.deb ... 2026-10-23T01:50:34.1612907Z Unpacking gir1.2-secret-1:amd64 (0.21.4-1build3) ... 2026-10-23T01:50:34.1613115Z Selecting previously unselected package libgpg-error-dev. 2026-10-23T01:50:34.1613352Z Preparing to unpack .../11-libgpg-error-dev_1.47-3build2.1_amd64.deb ... 2026-10-23T01:50:34.1613581Z Unpacking libgpg-error-dev (1.47-3build2.1) ... 2026-10-23T01:50:34.1613780Z Selecting previously unselected package libgcrypt20-dev. 2026-10-23T01:50:34.1614017Z Preparing to unpack .../12-libgcrypt20-dev_1.10.3-2ubuntu0.2_amd64.deb ... 2026-10-23T01:50:34.1614240Z Unpacking libgcrypt20-dev (1.10.3-2ubuntu0.2) ... 2026-10-23T01:50:34.1614467Z Selecting previously unselected package libgirepository-2.0-0:amd64. 2026-10-23T01:50:34.1614735Z Preparing to unpack .../13-libgirepository-2.0-0_2.80.0-6ubuntu3.10_amd64.deb ... 2026-10-23T01:50:34.1614996Z Unpacking libgirepository-2.0-0:amd64 (2.80.0-6ubuntu3.10) ... 2026-10-23T01:50:34.1615228Z Selecting previously unselected package libglib2.0-dev-bin. 2026-10-23T01:50:34.1615479Z Preparing to unpack .../14-libglib2.0-dev-bin_2.80.0-6ubuntu3.10_amd64.deb ... 2026-10-23T01:50:34.1615714Z Unpacking libglib2.0-dev-bin (2.80.0-6ubuntu3.10) ... 2026-10-23T01:50:34.1615919Z Selecting previously unselected package uuid-dev:amd64. 2026-10-23T01:50:34.1616140Z Preparing to unpack .../15-uuid-dev_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-23T01:50:34.1616349Z Unpacking uuid-dev:amd64 (2.39.3-9ubuntu6.6) ... 2026-10-23T01:50:34.1616556Z Selecting previously unselected package libblkid-dev:amd64. 2026-10-23T01:50:34.1616791Z Preparing to unpack .../16-libblkid-dev_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-23T01:50:34.1617012Z Unpacking libblkid-dev:amd64 (2.39.3-9ubuntu6.6) ... 2026-10-23T01:50:34.1617213Z Selecting previously unselected package libsepol-dev:amd64. 2026-10-23T01:50:34.1617450Z Preparing to unpack .../17-libsepol-dev_3.5-2build1_amd64.deb ... 2026-10-23T01:50:34.1617657Z Unpacking libsepol-dev:amd64 (3.5-2build1) ... 2026-10-23T01:50:34.1617866Z Selecting previously unselected package libselinux1-dev:amd64. 2026-10-23T01:50:34.1618106Z Preparing to unpack .../18-libselinux1-dev_3.5-2ubuntu2.1_amd64.deb ... 2026-10-23T01:50:34.1618379Z Unpacking libselinux1-dev:amd64 (3.5-2ubuntu2.1) ... 2026-10-23T01:50:34.1618581Z Selecting previously unselected package libmount-dev:amd64. 2026-10-23T01:50:34.1618808Z Preparing to unpack .../19-libmount-dev_2.39.3-9ubuntu6.6_amd64.deb ... 2026-10-23T01:50:34.1619023Z Unpacking libmount-dev:amd64 (2.39.3-9ubuntu6.6) ... 2026-10-23T01:50:34.1619226Z Selecting previously unselected package libglib2.0-dev:amd64. 2026-10-23T01:50:34.1619467Z Preparing to unpack .../20-libglib2.0-dev_2.80.0-6ubuntu3.10_amd64.deb ... 2026-10-23T01:50:34.1619693Z Unpacking libglib2.0-dev:amd64 (2.80.0-6ubuntu3.10) ... 2026-10-23T01:50:34.1619905Z Selecting previously unselected package libsecret-1-dev:amd64. 2026-10-23T01:50:34.1620136Z Preparing to unpack .../21-libsecret-1-dev_0.21.4-1build3_amd64.deb ... 2026-10-23T01:50:34.1620352Z Unpacking libsecret-1-dev:amd64 (0.21.4-1build3) ... 2026-10-23T01:50:34.1620575Z Setting up bsdextrautils (2.39.3-9ubuntu6.6) ... 2026-10-23T01:50:34.1620747Z Setting up eject (2.39.3-9ubuntu6.6) ... 2026-10-23T01:50:34.1620924Z Setting up libglib2.0-0t64:amd64 (2.80.0-6ubuntu3.10) ... 2026-10-23T01:50:34.1621117Z Setting up libglib2.0-data (2.80.0-6ubuntu3.10) ... 2026-10-23T01:50:34.1621302Z Setting up libgpg-error-dev (1.47-3build2.1) ... 2026-10-23T01:50:34.1621483Z Setting up uuid-dev:amd64 (2.39.3-9ubuntu6.6) ... 2026-10-23T01:50:34.1621787Z Setting up libsepol-dev:amd64 (3.5-2build1) ... 2026-10-23T01:50:34.1622047Z Setting up gir1.2-glib-2.0:amd64 (2.80.0-6ubuntu3.10) ... 2026-10-23T01:50:34.1622237Z Setting up libfdisk1:amd64 (2.39.3-9ubuntu6.6) ... 2026-10-23T01:50:34.1622406Z Setting up mount (2.39.3-9ubuntu6.6) ... 2026-10-23T01:50:34.1622576Z Setting up uuid-runtime (2.39.3-9ubuntu6.6) ... 2026-10-23T01:50:34.1622792Z uuidd.service is a disabled or a static unit not running, not starting it. 2026-10-23T01:50:34.1623024Z Setting up libsecret-common (0.21.4-1build3) ... 2026-10-23T01:50:34.1623209Z Setting up libglib2.0-dev-bin (2.80.0-6ubuntu3.10) ... 2026-10-23T01:50:34.1623401Z Setting up libblkid-dev:amd64 (2.39.3-9ubuntu6.6) ... 2026-10-23T01:50:34.1623611Z Setting up libgirepository-2.0-0:amd64 (2.80.0-6ubuntu3.10) ... 2026-10-23T01:50:34.1623821Z Setting up libselinux1-dev:amd64 (3.5-2ubuntu2.1) ... 2026-10-23T01:50:34.1624010Z Setting up libglib2.0-bin (2.80.0-6ubuntu3.10) ... 2026-10-23T01:50:34.1624179Z Setting up fdisk (2.39.3-9ubuntu6.6) ... 2026-10-23T01:50:34.1624353Z Setting up libsecret-1-0:amd64 (0.21.4-1build3) ... 2026-10-23T01:50:34.1624537Z Setting up gir1.2-secret-1:amd64 (0.21.4-1build3) ... 2026-10-23T01:50:34.1624724Z Setting up libgcrypt20-dev (1.10.3-2ubuntu0.2) ... 2026-10-23T01:50:34.1624906Z Setting up libmount-dev:amd64 (2.39.3-9ubuntu6.6) ... 2026-10-23T01:50:34.1625096Z Setting up libglib2.0-dev:amd64 (2.80.0-6ubuntu3.10) ... 2026-10-23T01:50:34.1625289Z Setting up libsecret-1-dev:amd64 (0.21.4-1build3) ... 2026-10-23T01:50:34.1625478Z Processing triggers for libc-bin (2.39-0ubuntu8.8) ... 2026-10-23T01:50:34.1625675Z Processing triggers for man-db (2.12.0-4build2) ... 2026-10-23T01:50:34.1625870Z Not building database; man-db/auto-update is not 'true'. 2026-10-23T01:50:34.1626077Z Processing triggers for install-info (7.1-3build2) ... 2026-10-23T01:50:34.1626206Z 2026-10-23T01:50:34.1626261Z Restarting services... 2026-10-23T01:50:34.1626811Z 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-23T01:50:34.1627488Z Failed to restart systemd-manager.service: Unit systemd-manager.service not found. 2026-10-23T01:50:34.1627671Z 2026-10-23T01:50:34.1627734Z Service restarts being deferred: 2026-10-23T01:50:34.1627890Z systemctl restart ModemManager.service 2026-10-23T01:50:34.1628055Z systemctl restart dbus.service 2026-10-23T01:50:34.1628206Z systemctl restart getty@tty1.service 2026-10-23T01:50:34.1628381Z systemctl restart networkd-dispatcher.service 2026-10-23T01:50:34.1628563Z systemctl restart serial-getty@ttyS0.service 2026-10-23T01:50:34.1628747Z systemctl restart setup_and_run_blacksmith.service 2026-10-23T01:50:34.1628936Z systemctl restart systemd-logind.service 2026-10-23T01:50:34.1629044Z 2026-10-23T01:50:34.1629103Z No containers need to be restarted. 2026-10-23T01:50:34.1629204Z 2026-10-23T01:50:34.1629269Z User sessions running outdated binaries: 2026-10-23T01:50:34.1629437Z runner @ user manager service: systemd[1907] 2026-10-23T01:50:34.1629551Z 2026-10-23T01:50:34.1629659Z No VM guests are running outdated hypervisor (qemu) binaries on this host. 2026-10-23T01:50:34.1697101Z ##[group]Run vp run build:desktop 2026-10-23T01:50:34.1697418Z vp run build:desktop 2026-10-23T01:50:34.1719739Z shell: /usr/bin/bash -e {0} 2026-10-23T01:50:34.1719892Z env: 2026-10-23T01:50:34.1720022Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 172 2026-10-23T01:50:34.1720190Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 465 2026-10-23T01:50:34.1731327Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-23T01:50:34.1731491Z ##[endgroup] 2026-10-23T01:50:34.8012237Z ~/apps/web$ vp build ⊘ cache disabled 2026-10-23T01:50:35.8531714Z transforming... 2026-10-23T01:50:38.9107349Z ✓ 6658 modules transformed. 2026-10-23T01:50:39.3608123Z rendering chunks... 2026-10-23T01:50:41.2770665Z computing gzip size... 2026-10-23T01:50:41.3462842Z dist/assets/ghostty-write-pty-hgyAvVbe.wasm 0.11 kB │ gzip: 0.12 kB 2026-10-23T01:50:41.3463197Z dist/assets/KaTeX_Size3-Regular-CTq5MqoE.woff 4.42 kB 2026-10-23T01:50:41.3463468Z dist/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 4.92 kB 2026-10-23T01:50:41.3463729Z dist/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 5.20 kB 2026-10-23T01:50:41.3464050Z dist/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 5.46 kB 2026-10-23T01:50:41.3464355Z dist/assets/KaTeX_Size4-Regular-BF-4gkZK.woff 5.98 kB 2026-10-23T01:50:41.3464978Z dist/assets/KaTeX_Size2-Regular-oD1tc_U0.woff 6.18 kB 2026-10-23T01:50:41.3465426Z dist/assets/snap-shot-click-CJiuxMEv.mp3 6.38 kB 2026-10-23T01:50:41.3465864Z dist/assets/KaTeX_Size1-Regular-C195tn64.woff 6.49 kB 2026-10-23T01:50:41.3466317Z dist/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 6.90 kB 2026-10-23T01:50:41.3466613Z dist/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 6.91 kB 2026-10-23T01:50:41.3466862Z dist/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf 7.58 kB 2026-10-23T01:50:41.3467109Z dist/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff 7.65 kB 2026-10-23T01:50:41.3467361Z dist/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff 7.71 kB 2026-10-23T01:50:41.3467611Z dist/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 9.64 kB 2026-10-23T01:50:41.3467865Z dist/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 10.34 kB 2026-10-23T01:50:41.3468116Z dist/assets/KaTeX_Size4-Regular-DWFBv043.ttf 10.36 kB 2026-10-23T01:50:41.3468360Z dist/assets/KaTeX_Script-Regular-D5yQViql.woff 10.58 kB 2026-10-23T01:50:41.3468633Z dist/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 11.31 kB 2026-10-23T01:50:41.3468882Z dist/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 11.34 kB 2026-10-23T01:50:41.3469130Z dist/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf 11.50 kB 2026-10-23T01:50:41.3469381Z dist/assets/notification-input-BJS4voY1.mp3 11.63 kB 2026-10-23T01:50:41.3469639Z dist/assets/notification-completion-vyCCbYsz.mp3 11.94 kB 2026-10-23T01:50:41.3469895Z dist/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 12.02 kB 2026-10-23T01:50:41.3470271Z dist/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 12.21 kB 2026-10-23T01:50:41.3470518Z dist/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf 12.22 kB 2026-10-23T01:50:41.3470769Z dist/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff 12.31 kB 2026-10-23T01:50:41.3471018Z dist/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf 12.34 kB 2026-10-23T01:50:41.3471271Z dist/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf 12.36 kB 2026-10-23T01:50:41.3471529Z dist/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff 13.20 kB 2026-10-23T01:50:41.3471783Z dist/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff 13.29 kB 2026-10-23T01:50:41.3472033Z dist/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 13.56 kB 2026-10-23T01:50:41.3472284Z dist/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff 14.11 kB 2026-10-23T01:50:41.3472536Z dist/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff 14.40 kB 2026-10-23T01:50:41.3472781Z dist/assets/snap-shot-whoosh-CQZ59XJc.mp3 15.02 kB 2026-10-23T01:50:41.3473038Z dist/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff 16.02 kB 2026-10-23T01:50:41.3473290Z dist/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 16.40 kB 2026-10-23T01:50:41.3473559Z dist/assets/KaTeX_Math-Italic-t53AETM-.woff2 16.44 kB 2026-10-23T01:50:41.3473804Z dist/assets/KaTeX_Script-Regular-C5JkGWo-.ttf 16.64 kB 2026-10-23T01:50:41.3474737Z dist/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 16.78 kB 2026-10-23T01:50:41.3475171Z dist/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 16.98 kB 2026-10-23T01:50:41.3475426Z dist/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff 18.66 kB 2026-10-23T01:50:41.3475675Z dist/assets/KaTeX_Math-Italic-DA0__PXp.woff 18.74 kB 2026-10-23T01:50:41.3475927Z dist/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff 19.41 kB 2026-10-23T01:50:41.3476183Z dist/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf 19.43 kB 2026-10-23T01:50:41.3476577Z dist/index.html 19.49 kB │ gzip: 5.03 kB 2026-10-23T01:50:41.3476827Z dist/assets/KaTeX_Fraktur-Regular-CB_wures.ttf 19.57 kB 2026-10-23T01:50:41.3477077Z dist/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf 19.58 kB 2026-10-23T01:50:41.3477333Z dist/assets/KaTeX_Main-Italic-BMLOBm91.woff 19.67 kB 2026-10-23T01:50:41.3477583Z dist/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf 22.36 kB 2026-10-23T01:50:41.3477836Z dist/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf 24.50 kB 2026-10-23T01:50:41.3478082Z dist/assets/KaTeX_Main-Bold-Cx986IdX.woff2 25.32 kB 2026-10-23T01:50:41.3478329Z dist/assets/KaTeX_Main-Regular-B22Nviop.woff2 26.27 kB 2026-10-23T01:50:41.3478574Z dist/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf 27.55 kB 2026-10-23T01:50:41.3481149Z dist/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 28.07 kB 2026-10-23T01:50:41.3481534Z dist/assets/KaTeX_Main-Bold-Jm3AIy58.woff 29.91 kB 2026-10-23T01:50:41.3481928Z dist/assets/KaTeX_Main-Regular-Dr94JaBh.woff 30.77 kB 2026-10-23T01:50:41.3482320Z dist/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf 31.19 kB 2026-10-23T01:50:41.3482709Z dist/assets/KaTeX_Math-Italic-flOr_0UB.ttf 31.30 kB 2026-10-23T01:50:41.3483166Z dist/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf 32.96 kB 2026-10-23T01:50:41.3483570Z dist/assets/KaTeX_AMS-Regular-DMm9YOAa.woff 33.51 kB 2026-10-23T01:50:41.3483962Z dist/assets/KaTeX_Main-Italic-3WenGoN9.ttf 33.58 kB 2026-10-23T01:50:41.3484435Z dist/assets/KaTeX_Main-Bold-waoOVXN0.ttf 51.33 kB 2026-10-23T01:50:41.3484822Z dist/assets/KaTeX_Main-Regular-ypZvNtVU.ttf 53.58 kB 2026-10-23T01:50:41.3485248Z dist/assets/KaTeX_AMS-Regular-DRggAlZN.ttf 63.63 kB 2026-10-23T01:50:41.3485852Z dist/.vite/manifest.json 297.09 kB │ gzip: 30.97 kB 2026-10-23T01:50:41.3486366Z dist/assets/ghostty-vt-DdA0Zryv.wasm 630.93 kB │ gzip: 187.91 kB 2026-10-23T01:50:41.3486822Z dist/assets/worker-3-uhxiAg.js 836.41 kB 2026-10-23T01:50:41.3487345Z dist/third-party-licenses.json 852.62 kB │ gzip: 102.38 kB 2026-10-23T01:50:41.3487829Z dist/assets/SymbolsNerdFontMono-Regular-aK5vsLov.woff2 1,177.57 kB 2026-10-23T01:50:41.3488274Z dist/assets/ipad-pro-13-m5-DCWznkpd.glb 1,815.87 kB 2026-10-23T01:50:41.3488717Z dist/assets/ipad-pro-13-m5-magic-keyboard-l8da3bBi.glb 2,341.88 kB 2026-10-23T01:50:41.3489146Z dist/assets/iphone-18-pro-max-B3H2Zbeg.glb 2,399.02 kB 2026-10-23T01:50:41.3489408Z dist/assets/iphone-18-pro-Crheuaz9.glb 2,422.54 kB 2026-10-23T01:50:41.3489660Z dist/assets/iphone-duo-Cu4Xx1NH.glb 3,097.72 kB 2026-10-23T01:50:41.3490039Z dist/assets/MathTypeset-DEcVZfaU.css 28.83 kB │ gzip: 7.92 kB 2026-10-23T01:50:41.3490377Z dist/assets/main-CScHHNkr.css 527.63 kB │ gzip: 70.77 kB 2026-10-23T01:50:41.3491272Z dist/assets/JZOYTAAL-Dn2Motqw.js 0.05 kB │ gzip: 0.07 kB 2026-10-23T01:50:41.3491778Z dist/assets/_chat.draft._draftId-DJ7LAi8J.js 0.09 kB │ gzip: 0.11 kB │ map: 0.55 kB 2026-10-23T01:50:41.3492286Z dist/assets/legalLinks-BaIJY52l.js 0.10 kB │ gzip: 0.12 kB │ map: 0.24 kB 2026-10-23T01:50:41.3492678Z dist/assets/_chat._environmentId._threadId-DJ7LAi8J.js 0.10 kB │ gzip: 0.12 kB │ map: 0.57 kB 2026-10-23T01:50:41.3493060Z dist/assets/minus-DKH4hjj6.js 0.15 kB │ gzip: 0.16 kB │ map: 0.79 kB 2026-10-23T01:50:41.3493410Z dist/assets/circle-CaCHYqvF.js 0.17 kB │ gzip: 0.16 kB │ map: 0.84 kB 2026-10-23T01:50:41.3493770Z dist/assets/chevron-up-Bb8vaQ3u.js 0.17 kB │ gzip: 0.17 kB │ map: 0.83 kB 2026-10-23T01:50:41.3494137Z dist/assets/chevron-left-DHLa5DiV.js 0.17 kB │ gzip: 0.17 kB │ map: 0.84 kB 2026-10-23T01:50:41.3494501Z dist/assets/x-C6h0h8O_.js 0.19 kB │ gzip: 0.18 kB │ map: 0.87 kB 2026-10-23T01:50:41.3494861Z dist/assets/loader-circle-BbME6w-x.js 0.19 kB │ gzip: 0.18 kB │ map: 0.87 kB 2026-10-23T01:50:41.3495227Z dist/assets/plus-CKiABgGf.js 0.19 kB │ gzip: 0.18 kB │ map: 0.89 kB 2026-10-23T01:50:41.3495595Z dist/assets/FieldItemContext-D7F7CWCg.js 0.19 kB │ gzip: 0.18 kB │ map: 0.88 kB 2026-10-23T01:50:41.3495971Z dist/assets/itemRows-DNgi4sqO.js 0.20 kB │ gzip: 0.17 kB │ map: 0.43 kB 2026-10-23T01:50:41.3496341Z dist/assets/RVARI57O-CgA1WoRv.js 0.20 kB │ gzip: 0.19 kB │ map: 0.64 kB 2026-10-23T01:50:41.3496702Z dist/assets/arrow-up-iBwWdwXz.js 0.20 kB │ gzip: 0.19 kB │ map: 0.92 kB 2026-10-23T01:50:41.3497065Z dist/assets/terminal-N1ttVNM9.js 0.20 kB │ gzip: 0.18 kB │ map: 0.92 kB 2026-10-23T01:50:41.3497436Z dist/assets/arrow-down-BpAp1H7y.js 0.21 kB │ gzip: 0.19 kB │ map: 0.93 kB 2026-10-23T01:50:41.3497806Z dist/assets/arrow-right-JjDqycuq.js 0.21 kB │ gzip: 0.19 kB │ map: 0.94 kB 2026-10-23T01:50:41.3498170Z dist/assets/gauge-BpqJvaWG.js 0.21 kB │ gzip: 0.20 kB │ map: 0.92 kB 2026-10-23T01:50:41.3498522Z dist/assets/play-ZOfoiINU.js 0.22 kB │ gzip: 0.21 kB │ map: 0.90 kB 2026-10-23T01:50:41.3498890Z dist/assets/smartphone-UhtwfBhN.js 0.24 kB │ gzip: 0.21 kB │ map: 1.04 kB 2026-10-23T01:50:41.3499253Z dist/assets/undo-2-DGh3CBmO.js 0.24 kB │ gzip: 0.21 kB │ map: 0.96 kB 2026-10-23T01:50:41.3499616Z dist/assets/circle-x-B0qjd8cM.js 0.25 kB │ gzip: 0.21 kB │ map: 1.05 kB 2026-10-23T01:50:41.3500042Z dist/assets/authRedirect-DWE5a_T9.js 0.25 kB │ gzip: 0.18 kB │ map: 1.23 kB 2026-10-23T01:50:41.3500415Z dist/assets/useNavigate-ChO2psB_.js 0.26 kB │ gzip: 0.22 kB │ map: 2.30 kB 2026-10-23T01:50:41.3500785Z dist/assets/useSearch-XFOeAsW8.js 0.26 kB │ gzip: 0.21 kB │ map: 1.53 kB 2026-10-23T01:50:41.3501160Z dist/assets/circle-arrow-up-Cii4Wrnf.js 0.26 kB │ gzip: 0.22 kB │ map: 1.11 kB 2026-10-23T01:50:41.3501537Z dist/assets/ellipsis-KoBCGSaG.js 0.26 kB │ gzip: 0.19 kB │ map: 1.13 kB 2026-10-23T01:50:41.3501893Z dist/assets/log-in-eAb76HDx.js 0.27 kB │ gzip: 0.22 kB │ map: 1.04 kB 2026-10-23T01:50:41.3502468Z dist/assets/cloneFileDiffMetadata-zVRGqYgv.js 0.27 kB │ gzip: 0.19 kB │ map: 1.23 kB 2026-10-23T01:50:41.3503035Z dist/assets/copy-D8I86qNy.js 0.27 kB │ gzip: 0.24 kB │ map: 1.04 kB 2026-10-23T01:50:41.3503428Z dist/assets/ellipsis-vertical-lNAaDwyH.js 0.28 kB │ gzip: 0.20 kB │ map: 1.19 kB 2026-10-23T01:50:41.3503874Z dist/assets/square-terminal-BHOQFwzj.js 0.29 kB │ gzip: 0.24 kB │ map: 1.18 kB 2026-10-23T01:50:41.3504244Z dist/assets/eye-BkpvNL6R.js 0.29 kB │ gzip: 0.23 kB │ map: 1.05 kB 2026-10-23T01:50:41.3504606Z dist/assets/circle-alert-D2xd10fD.js 0.29 kB │ gzip: 0.22 kB │ map: 1.20 kB 2026-10-23T01:50:41.3504983Z dist/assets/external-link-DFt3Pjuk.js 0.29 kB │ gzip: 0.23 kB │ map: 1.10 kB 2026-10-23T01:50:41.3505369Z dist/assets/mouse-pointer-2-BYXo2nSz.js 0.30 kB │ gzip: 0.25 kB │ map: 1.02 kB 2026-10-23T01:50:41.3505754Z dist/assets/pencil-BWMy7xyN.js 0.31 kB │ gzip: 0.26 kB │ map: 1.06 kB 2026-10-23T01:50:41.3506116Z dist/assets/pen-line-C1_pNRsL.js 0.32 kB │ gzip: 0.25 kB │ map: 1.07 kB 2026-10-23T01:50:41.3506476Z dist/assets/plug-2-BdbiiMxs.js 0.32 kB │ gzip: 0.24 kB │ map: 1.21 kB 2026-10-23T01:50:41.3506842Z dist/assets/list-checks-CTA5KhK9.js 0.32 kB │ gzip: 0.22 kB │ map: 1.24 kB 2026-10-23T01:50:41.3507221Z dist/assets/FormContext-DbECJBm5.js 0.33 kB │ gzip: 0.26 kB │ map: 1.13 kB 2026-10-23T01:50:41.3507585Z dist/assets/search-De3drblR.js 0.33 kB │ gzip: 0.25 kB │ map: 1.80 kB 2026-10-23T01:50:41.3507950Z dist/assets/archive-x-D6HEmZMr.js 0.34 kB │ gzip: 0.26 kB │ map: 1.24 kB 2026-10-23T01:50:41.3508328Z dist/assets/settings.general-CHAbFDh4.js 0.36 kB │ gzip: 0.28 kB │ map: 0.84 kB 2026-10-23T01:50:41.3508726Z dist/assets/message-square-off-BXuqxzYn.js 0.36 kB │ gzip: 0.27 kB │ map: 1.22 kB 2026-10-23T01:50:41.3509110Z dist/assets/refresh-cw-DCz0BQm-.js 0.36 kB │ gzip: 0.26 kB │ map: 1.22 kB 2026-10-23T01:50:41.3509478Z dist/assets/trash-2-CRN78Gcr.js 0.37 kB │ gzip: 0.24 kB │ map: 1.27 kB 2026-10-23T01:50:41.3509841Z dist/assets/camera-DT3TYDgL.js 0.37 kB │ gzip: 0.28 kB │ map: 1.15 kB 2026-10-23T01:50:41.3510261Z dist/assets/server-_j08gBzE.js 0.37 kB │ gzip: 0.24 kB │ map: 1.43 kB 2026-10-23T01:50:41.3510627Z dist/assets/unlink-2-KSjeGNrS.js 0.39 kB │ gzip: 0.27 kB │ map: 1.83 kB 2026-10-23T01:50:41.3511006Z dist/assets/useLocation-BKJVczYb.js 0.39 kB │ gzip: 0.28 kB │ map: 2.27 kB 2026-10-23T01:50:41.3511396Z dist/assets/lock-pjiXDZmE.js 0.40 kB │ gzip: 0.25 kB │ map: 1.93 kB 2026-10-23T01:50:41.3511791Z dist/assets/settings.scheduled-tasks-C_KwC5UI.js 0.40 kB │ gzip: 0.30 kB │ map: 1.24 kB 2026-10-23T01:50:41.3512187Z dist/assets/toastHelpers-CSQRKo4F.js 0.40 kB │ gzip: 0.26 kB │ map: 2.12 kB 2026-10-23T01:50:41.3512596Z dist/assets/useT3ConnectAuthPrompt-Cl0OBff0.js 0.41 kB │ gzip: 0.31 kB │ map: 0.95 kB 2026-10-23T01:50:41.3512993Z dist/assets/grip-vertical-B5Aftk_r.js 0.41 kB │ gzip: 0.23 kB │ map: 1.57 kB 2026-10-23T01:50:41.3513377Z dist/assets/previewBridge-yrXHywZZ.js 0.42 kB │ gzip: 0.29 kB │ map: 1.92 kB 2026-10-23T01:50:41.3513749Z dist/assets/K3MD6TGW-D1wGF6lE.js 0.42 kB │ gzip: 0.33 kB │ map: 1.02 kB 2026-10-23T01:50:41.3514282Z dist/assets/hammer-B7EFjYlp.js 0.43 kB │ gzip: 0.31 kB │ map: 1.24 kB 2026-10-23T01:50:41.3514853Z dist/assets/inbox-CN3ya0vW.js 0.44 kB │ gzip: 0.32 kB │ map: 1.89 kB 2026-10-23T01:50:41.3515347Z dist/assets/mouse-pointer-click-Cj6AcOdh.js 0.46 kB │ gzip: 0.31 kB │ map: 1.46 kB 2026-10-23T01:50:41.3515747Z dist/assets/eye-off-CoD5Qb_C.js 0.47 kB │ gzip: 0.30 kB │ map: 1.37 kB 2026-10-23T01:50:41.3516139Z dist/assets/sliders-horizontal-DsxPTnDn.js 0.47 kB │ gzip: 0.27 kB │ map: 1.68 kB 2026-10-23T01:50:41.3516523Z dist/assets/folder-DJ3YbjP0.js 0.48 kB │ gzip: 0.32 kB │ map: 1.87 kB 2026-10-23T01:50:41.3516922Z dist/assets/fileCommentAnnotations-BgdL_7u9.js 0.48 kB │ gzip: 0.30 kB │ map: 2.48 kB 2026-10-23T01:50:41.3517322Z dist/assets/redirect-D3L17tzd.js 0.49 kB │ gzip: 0.32 kB │ map: 3.46 kB 2026-10-23T01:50:41.3517702Z dist/assets/radio-tower-BjpCdYTW.js 0.50 kB │ gzip: 0.33 kB │ map: 1.58 kB 2026-10-23T01:50:41.3518074Z dist/assets/star-B3-Y5zhu.js 0.51 kB │ gzip: 0.32 kB │ map: 1.18 kB 2026-10-23T01:50:41.3518443Z dist/assets/file-braces-C39X6fyK.js 0.51 kB │ gzip: 0.30 kB │ map: 1.44 kB 2026-10-23T01:50:41.3518817Z dist/assets/5THPTBWS-Ce_hS451.js 0.52 kB │ gzip: 0.34 kB │ map: 1.60 kB 2026-10-23T01:50:41.3519192Z dist/assets/folder-tree-EiJK-cbZ.js 0.52 kB │ gzip: 0.30 kB │ map: 1.45 kB 2026-10-23T01:50:41.3519574Z dist/assets/ScopedSwitch-CEeyGEOj.js 0.53 kB │ gzip: 0.39 kB │ map: 1.47 kB 2026-10-23T01:50:41.3519960Z dist/assets/sparkles-Cx2EeeLK.js 0.53 kB │ gzip: 0.31 kB │ map: 1.44 kB 2026-10-23T01:50:41.3520397Z dist/assets/browserLinkTarget-Cix4K86L.js 0.53 kB │ gzip: 0.36 kB │ map: 2.48 kB 2026-10-23T01:50:41.3520787Z dist/assets/TSHNXIZL-BBTVsTIS.js 0.53 kB │ gzip: 0.39 kB │ map: 1.34 kB 2026-10-23T01:50:41.3521162Z dist/assets/onboarding-wUSuYk-c.js 0.54 kB │ gzip: 0.32 kB │ map: 2.20 kB 2026-10-23T01:50:41.3521535Z dist/assets/rows-3-BNRz_a7U.js 0.54 kB │ gzip: 0.32 kB │ map: 2.87 kB 2026-10-23T01:50:41.3521930Z dist/assets/triangle-alert-wgg9zXpD.js 0.58 kB │ gzip: 0.33 kB │ map: 2.93 kB 2026-10-23T01:50:41.3522326Z dist/assets/useAriaLabelledBy-CgrqH_6l.js 0.58 kB │ gzip: 0.40 kB │ map: 3.53 kB 2026-10-23T01:50:41.3522717Z dist/assets/paintbrush-ByEmbEIN.js 0.58 kB │ gzip: 0.37 kB │ map: 1.44 kB 2026-10-23T01:50:41.3523106Z dist/assets/codeowners-C8r90Shi.js 0.58 kB │ gzip: 0.34 kB │ map: 1.09 kB 2026-10-23T01:50:41.3523486Z dist/assets/G3MDBVQH-BZmnMkFw.js 0.60 kB │ gzip: 0.38 kB │ map: 1.76 kB 2026-10-23T01:50:41.3523867Z dist/assets/trending-up-Zar6-H_A.js 0.60 kB │ gzip: 0.34 kB │ map: 2.90 kB 2026-10-23T01:50:41.3524259Z dist/assets/use-atom-command-Cx0ms0pK.js 0.60 kB │ gzip: 0.39 kB │ map: 1.86 kB 2026-10-23T01:50:41.3524653Z dist/assets/usageAccess-m9zjfTrB.js 0.62 kB │ gzip: 0.33 kB │ map: 2.05 kB 2026-10-23T01:50:41.3525030Z dist/assets/square-BInYzWOk.js 0.63 kB │ gzip: 0.39 kB │ map: 3.08 kB 2026-10-23T01:50:41.3525421Z dist/assets/composerTrigger-BP81K-4K.js 0.63 kB │ gzip: 0.38 kB │ map: 6.62 kB 2026-10-23T01:50:41.3525984Z dist/assets/jsx-runtime-DVMLLmEC.js 0.64 kB │ gzip: 0.44 kB │ map: 3.54 kB 2026-10-23T01:50:41.3526522Z dist/assets/5GK6JWQ2-BBLHfs12.js 0.64 kB │ gzip: 0.47 kB │ map: 1.68 kB 2026-10-23T01:50:41.3526996Z dist/assets/runtimeModeConfig-Dc5Vc3VA.js 0.64 kB │ gzip: 0.38 kB │ map: 1.52 kB 2026-10-23T01:50:41.3527394Z dist/assets/monitor-CdfAZHdn.js 0.64 kB │ gzip: 0.42 kB │ map: 2.90 kB 2026-10-23T01:50:41.3527768Z dist/assets/upload-DBysyaE6.js 0.67 kB │ gzip: 0.40 kB │ map: 2.48 kB 2026-10-23T01:50:41.3528175Z dist/assets/WorkspacePageContainer-Cv7vuDZ0.js 0.67 kB │ gzip: 0.48 kB │ map: 2.06 kB 2026-10-23T01:50:41.3528581Z dist/assets/CSPContext-L0FF4knb.js 0.71 kB │ gzip: 0.47 kB │ map: 4.09 kB 2026-10-23T01:50:41.3528988Z dist/assets/use-atom-query-runner-jEgaNEwB.js 0.71 kB │ gzip: 0.44 kB │ map: 2.46 kB 2026-10-23T01:50:41.3529393Z dist/assets/skeleton-B2MkDX2-.js 0.72 kB │ gzip: 0.48 kB │ map: 1.79 kB 2026-10-23T01:50:41.3529776Z dist/assets/layers-BMVCHmYY.js 0.73 kB │ gzip: 0.39 kB │ map: 2.42 kB 2026-10-23T01:50:41.3530206Z dist/assets/pullRequestIcons-CQ83H8cW.js 0.75 kB │ gzip: 0.39 kB │ map: 2.40 kB 2026-10-23T01:50:41.3530605Z dist/assets/shellsession-B6LP6YJG.js 0.76 kB │ gzip: 0.46 kB │ map: 1.37 kB 2026-10-23T01:50:41.3531087Z dist/assets/usageShortcuts-DSwZF02V.js 0.76 kB │ gzip: 0.44 kB │ map: 2.41 kB 2026-10-23T01:50:41.3531470Z dist/assets/tsv-sltzmVWM.js 0.77 kB │ gzip: 0.37 kB │ map: 1.38 kB 2026-10-23T01:50:41.3531980Z dist/assets/MathTypeset-Cy7VqxFZ.js 0.82 kB │ gzip: 0.57 kB │ map: 26.87 kB 2026-10-23T01:50:41.3532523Z dist/assets/DKTLEL5E-DciMwFJ1.js 0.87 kB │ gzip: 0.43 kB │ map: 2.42 kB 2026-10-23T01:50:41.3552272Z dist/assets/useNavigateBack-CAibNuvN.js 0.88 kB │ gzip: 0.56 kB │ map: 3.67 kB 2026-10-23T01:50:41.3552953Z dist/assets/pair-PenrglJd.js 0.88 kB │ gzip: 0.55 kB │ map: 3.77 kB 2026-10-23T01:50:41.3553592Z dist/assets/html-derivative-QfWcQxux.js 0.89 kB │ gzip: 0.49 kB │ map: 1.46 kB 2026-10-23T01:50:41.3554292Z dist/assets/useRelativeTimeState-B8Lvd7C7.js 0.90 kB │ gzip: 0.54 kB │ map: 3.30 kB 2026-10-23T01:50:41.3554980Z dist/assets/SecretInput-_udJl1Bf.js 0.90 kB │ gzip: 0.59 kB │ map: 2.97 kB 2026-10-23T01:50:41.3555607Z dist/assets/linkedPrompt-Dc5smIgR.js 0.91 kB │ gzip: 0.53 kB │ map: 2.66 kB 2026-10-23T01:50:41.3556258Z dist/assets/kbd-CuuMwVL5.js 0.99 kB │ gzip: 0.51 kB │ map: 2.57 kB 2026-10-23T01:50:41.3556933Z dist/assets/useScopedModelAvailability-BRPscAWD.js 0.99 kB │ gzip: 0.60 kB │ map: 4.94 kB 2026-10-23T01:50:41.3557618Z dist/assets/74OO7NKP-Dqkb1V8h.js 1.01 kB │ gzip: 0.62 kB │ map: 2.78 kB 2026-10-23T01:50:41.3558242Z dist/assets/draft-input-ZQ4OtrqY.js 1.02 kB │ gzip: 0.66 kB │ map: 4.35 kB 2026-10-23T01:50:41.3558881Z dist/assets/git-rebase-Bl-U2xaZ.js 1.03 kB │ gzip: 0.47 kB │ map: 1.72 kB 2026-10-23T01:50:41.3559501Z dist/assets/qmldir-DCQb3MpD.js 1.03 kB │ gzip: 0.48 kB │ map: 1.74 kB 2026-10-23T01:50:41.3560157Z dist/assets/WEVWDWVA-4tfI649D.js 1.07 kB │ gzip: 0.57 kB │ map: 2.98 kB 2026-10-23T01:50:41.3561255Z dist/assets/type-Ekh0FF1c.js 1.08 kB │ gzip: 0.53 kB │ map: 4.84 kB 2026-10-23T01:50:41.3562066Z dist/assets/git-pull-request-draft-xsTIjZxi.js 1.09 kB │ gzip: 0.45 kB │ map: 5.05 kB 2026-10-23T01:50:41.3562703Z dist/assets/user-lock-CLWgU1JP.js 1.09 kB │ gzip: 0.50 kB │ map: 4.74 kB 2026-10-23T01:50:41.3563321Z dist/assets/sun-CAihxMFD.js 1.12 kB │ gzip: 0.53 kB │ map: 4.01 kB 2026-10-23T01:50:41.3563916Z dist/assets/route-BbU3-y4j.js 1.13 kB │ gzip: 0.51 kB │ map: 4.41 kB 2026-10-23T01:50:41.3564572Z dist/assets/pullRequestReviewStore-Coon9rCy.js 1.15 kB │ gzip: 0.57 kB │ map: 5.66 kB 2026-10-23T01:50:41.3565218Z dist/assets/wrench-Cxir1Ryg.js 1.15 kB │ gzip: 0.57 kB │ map: 3.90 kB 2026-10-23T01:50:41.3565824Z dist/assets/csv-Dx-8-gkx.js 1.17 kB │ gzip: 0.40 kB │ map: 2.00 kB 2026-10-23T01:50:41.3566450Z dist/assets/observeResize-DlwPoBvA.js 1.19 kB │ gzip: 0.64 kB │ map: 5.33 kB 2026-10-23T01:50:41.3567106Z dist/assets/minimize-2-CaoxtzFK.js 1.21 kB │ gzip: 0.60 kB │ map: 5.47 kB 2026-10-23T01:50:41.3567742Z dist/assets/ExpandableText-BBHey1_T.js 1.23 kB │ gzip: 0.77 kB │ map: 5.16 kB 2026-10-23T01:50:41.3568386Z dist/assets/git-commit-BSykSTBG.js 1.27 kB │ gzip: 0.56 kB │ map: 2.07 kB 2026-10-23T01:50:41.3569037Z dist/assets/WorkspacePageHeader-CnJBvVUY.js 1.30 kB │ gzip: 0.69 kB │ map: 4.15 kB 2026-10-23T01:50:41.3569709Z dist/assets/discovery-list-B2Nkc9ye.js 1.39 kB │ gzip: 0.76 kB │ map: 4.07 kB 2026-10-23T01:50:41.3570500Z dist/assets/xsl-Bqr2UbU6.js 1.40 kB │ gzip: 0.53 kB │ map: 2.22 kB 2026-10-23T01:50:41.3571902Z dist/assets/AuthSurfaceShell-CF_6Xhax.js 1.42 kB │ gzip: 0.75 kB │ map: 5.23 kB 2026-10-23T01:50:41.3572546Z dist/assets/semver-CFbvOQKc.js 1.42 kB │ gzip: 0.64 kB │ map: 9.55 kB 2026-10-23T01:50:41.3573194Z dist/assets/6IMQ5BUJ-C8iMlMJN.js 1.43 kB │ gzip: 0.79 kB │ map: 3.49 kB 2026-10-23T01:50:41.3573804Z dist/assets/dotenv-_5a1GRtc.js 1.45 kB │ gzip: 0.56 kB │ map: 2.34 kB 2026-10-23T01:50:41.3574431Z dist/assets/CommandBlock-DdglsmuJ.js 1.48 kB │ gzip: 0.89 kB │ map: 4.75 kB 2026-10-23T01:50:41.3575054Z dist/assets/sparql-D_iOobhT.js 1.52 kB │ gzip: 0.84 kB │ map: 2.14 kB 2026-10-23T01:50:41.3575668Z dist/assets/ini-B5eOa1yu.js 1.55 kB │ gzip: 0.52 kB │ map: 2.47 kB 2026-10-23T01:50:41.3576307Z dist/assets/sourceControl-DsQMYSUV.js 1.56 kB │ gzip: 0.52 kB │ map: 5.30 kB 2026-10-23T01:50:41.3577001Z dist/assets/RedactedSensitiveText-SrnV9z2b.js 1.56 kB │ gzip: 0.96 kB │ map: 6.24 kB 2026-10-23T01:50:41.3577712Z dist/assets/previewMiniPlayerStore-CEkoE5Wv.js 1.56 kB │ gzip: 0.70 kB │ map: 8.23 kB 2026-10-23T01:50:41.3578410Z dist/assets/FieldControl-DuU1RWHh.js 1.63 kB │ gzip: 0.92 kB │ map: 9.07 kB 2026-10-23T01:50:41.3579097Z dist/assets/EnvironmentMachineIcon-Dp3r1iLE.js 1.66 kB │ gzip: 0.80 kB │ map: 4.92 kB 2026-10-23T01:50:41.3579775Z dist/assets/5N7A7DKN-BeukRFIO.js 1.67 kB │ gzip: 0.95 kB │ map: 4.05 kB 2026-10-23T01:50:41.3580442Z dist/assets/preview-D5Ox_8Pg.js 1.71 kB │ gzip: 0.60 kB │ map: 6.09 kB 2026-10-23T01:50:41.3581092Z dist/assets/fortran-fixed-form-DEKoE2YW.js 1.71 kB │ gzip: 0.72 kB │ map: 2.77 kB 2026-10-23T01:50:41.3582070Z dist/assets/ConnectionStatusDot-B2HCLIj5.js 1.73 kB │ gzip: 0.92 kB │ map: 5.60 kB 2026-10-23T01:50:41.3582958Z dist/assets/T3ConnectSidebarSignIn-CQ1VhQ_a.js 1.75 kB │ gzip: 0.81 kB │ map: 5.39 kB 2026-10-23T01:50:41.3583616Z dist/assets/docker-IyjqRm3v.js 1.77 kB │ gzip: 0.63 kB │ map: 2.65 kB 2026-10-23T01:50:41.3584236Z dist/assets/hxml-B0Qn7Nwc.js 1.78 kB │ gzip: 0.91 kB │ map: 2.51 kB 2026-10-23T01:50:41.3584882Z dist/assets/WorkspaceBreadcrumb-DvE-QJhP.js 1.80 kB │ gzip: 0.90 kB │ map: 5.93 kB 2026-10-23T01:50:41.3585306Z dist/assets/session-C7V3R1jR.js 1.81 kB │ gzip: 0.90 kB │ map: 8.91 kB 2026-10-23T01:50:41.3585670Z dist/assets/query-BE4Om0hb.js 1.81 kB │ gzip: 0.97 kB │ map: 8.50 kB 2026-10-23T01:50:41.3586054Z dist/assets/mediaSource-B5cvy__I.js 1.84 kB │ gzip: 0.91 kB │ map: 9.78 kB 2026-10-23T01:50:41.3586433Z dist/assets/desktop-Dlh5hvp9.js 1.87 kB │ gzip: 0.78 kB │ map: 2.76 kB 2026-10-23T01:50:41.3586811Z dist/assets/user-round-D5TN81PF.js 1.87 kB │ gzip: 0.76 kB │ map: 8.43 kB 2026-10-23T01:50:41.3587190Z dist/assets/memory-stick-DaULCuUd.js 1.89 kB │ gzip: 0.78 kB │ map: 7.67 kB 2026-10-23T01:50:41.3587581Z dist/assets/chevron-right-DaKszrrm.js 1.96 kB │ gzip: 1.04 kB │ map: 11.56 kB 2026-10-23T01:50:41.3588111Z dist/assets/7WLXJQOR-D6QVYUu9.js 1.99 kB │ gzip: 1.00 kB │ map: 2.80 kB 2026-10-23T01:50:41.3588626Z dist/assets/spinner-CsYTMtfD.js 2.00 kB │ gzip: 0.98 kB │ map: 6.25 kB 2026-10-23T01:50:41.3589139Z dist/assets/attachments-DlWXn2FN.js 2.05 kB │ gzip: 0.89 kB │ map: 10.19 kB 2026-10-23T01:50:41.3589679Z dist/assets/NoProjectsHero-CzHABk-S.js 2.05 kB │ gzip: 1.06 kB │ map: 8.31 kB 2026-10-23T01:50:41.3590254Z dist/assets/textarea-DtNmO7Z-.js 2.09 kB │ gzip: 1.04 kB │ map: 7.13 kB 2026-10-23T01:50:41.3590807Z dist/assets/ProviderAuthTerminal-BS8IdlOk.js 2.13 kB │ gzip: 1.14 kB │ map: 8.51 kB 2026-10-23T01:50:41.3591326Z dist/assets/erb-C0PT2tVJ.js 2.17 kB │ gzip: 0.65 kB │ map: 3.34 kB 2026-10-23T01:50:41.3591807Z dist/assets/5B3SVYGG-ammfvw4q.js 2.17 kB │ gzip: 1.10 kB │ map: 5.94 kB 2026-10-23T01:50:41.3592302Z dist/assets/wenyan-C8pVoKbM.js 2.19 kB │ gzip: 1.13 kB │ map: 3.19 kB 2026-10-23T01:50:41.3592813Z dist/assets/AnimatedHeight-CcJDtOE6.js 2.20 kB │ gzip: 1.11 kB │ map: 10.50 kB 2026-10-23T01:50:41.3593325Z dist/assets/assetUrls-Dp6pYwRt.js 2.23 kB │ gzip: 1.16 kB │ map: 8.60 kB 2026-10-23T01:50:41.3593813Z dist/assets/jssm-DXw9l8Rf.js 2.27 kB │ gzip: 0.64 kB │ map: 3.39 kB 2026-10-23T01:50:41.3594313Z dist/assets/EnvironmentRow-fSJEvk4h.js 2.29 kB │ gzip: 1.22 kB │ map: 8.55 kB 2026-10-23T01:50:41.3594817Z dist/assets/fileLinks-CauR3z6x.js 2.33 kB │ gzip: 1.11 kB │ map: 11.00 kB 2026-10-23T01:50:41.3595310Z dist/assets/edge-DbocH-4h.js 2.34 kB │ gzip: 0.70 kB │ map: 3.63 kB 2026-10-23T01:50:41.3595796Z dist/assets/reg-CRGYupPL.js 2.37 kB │ gzip: 0.72 kB │ map: 3.51 kB 2026-10-23T01:50:41.3596315Z dist/assets/usePermissionStatus-4N5gQLeR.js 2.41 kB │ gzip: 1.26 kB │ map: 10.74 kB 2026-10-23T01:50:41.3597026Z dist/assets/useResizeDrag-K16rNICO.js 2.52 kB │ gzip: 1.17 kB │ map: 10.38 kB 2026-10-23T01:50:41.3598486Z dist/assets/square-pen-CLoWAxJ0.js 2.54 kB │ gzip: 1.08 kB │ map: 11.16 kB 2026-10-23T01:50:41.3598998Z dist/assets/FTXIJQGB-CggtIYAM.js 2.58 kB │ gzip: 1.15 kB │ map: 4.98 kB 2026-10-23T01:50:41.3599497Z dist/assets/diff-woXpYk--.js 2.60 kB │ gzip: 0.72 kB │ map: 3.86 kB 2026-10-23T01:50:41.3600019Z dist/assets/gleam-CSRkHgEL.js 2.61 kB │ gzip: 0.85 kB │ map: 3.99 kB 2026-10-23T01:50:41.3600524Z dist/assets/connect-B0FJkXIv.js 2.63 kB │ gzip: 1.41 kB │ map: 10.10 kB 2026-10-23T01:50:41.3601017Z dist/assets/hy-CZbG8q4J.js 2.68 kB │ gzip: 1.21 kB │ map: 3.69 kB 2026-10-23T01:50:41.3601567Z dist/assets/sidebarProjectGrouping-617dHCAy.js 2.75 kB │ gzip: 1.00 kB │ map: 11.52 kB 2026-10-23T01:50:41.3602113Z dist/assets/openscad-BUDT5pXO.js 2.86 kB │ gzip: 1.04 kB │ map: 4.23 kB 2026-10-23T01:50:41.3602611Z dist/assets/log-BNLmms1o.js 2.88 kB │ gzip: 0.93 kB │ map: 4.35 kB 2026-10-23T01:50:41.3603115Z dist/assets/standalone-page-BuwC2fNh.js 2.89 kB │ gzip: 1.25 kB │ map: 10.07 kB 2026-10-23T01:50:41.3603628Z dist/assets/json-CU5hZXC7.js 2.92 kB │ gzip: 0.85 kB │ map: 4.35 kB 2026-10-23T01:50:41.3604118Z dist/assets/preview-CcOO4fNM.js 2.95 kB │ gzip: 1.40 kB │ map: 11.90 kB 2026-10-23T01:50:41.3604613Z dist/assets/cairo-DLTphjLi.js 2.97 kB │ gzip: 0.83 kB │ map: 4.57 kB 2026-10-23T01:50:41.3605106Z dist/assets/berry-DKpUyyne.js 3.04 kB │ gzip: 0.84 kB │ map: 4.85 kB 2026-10-23T01:50:41.3605613Z dist/assets/jsonl-CmCQp5Yx.js 3.04 kB │ gzip: 0.82 kB │ map: 4.51 kB 2026-10-23T01:50:41.3606101Z dist/assets/jsonc-CYpm1nAK.js 3.14 kB │ gzip: 0.82 kB │ map: 4.61 kB 2026-10-23T01:50:41.3606596Z dist/assets/logo-Cluzi2Zq.js 3.16 kB │ gzip: 1.50 kB │ map: 3.82 kB 2026-10-23T01:50:41.3607097Z dist/assets/textDirection-DQopOKT8.js 3.22 kB │ gzip: 1.47 kB │ map: 9.42 kB 2026-10-23T01:50:41.3607608Z dist/assets/device-BKg8RXEs.js 3.24 kB │ gzip: 1.43 kB │ map: 15.42 kB 2026-10-23T01:50:41.3608101Z dist/assets/po-BiJDBrnU.js 3.27 kB │ gzip: 0.94 kB │ map: 5.09 kB 2026-10-23T01:50:41.3608592Z dist/assets/json5-BR5RXkoi.js 3.29 kB │ gzip: 0.86 kB │ map: 4.96 kB 2026-10-23T01:50:41.3609094Z dist/assets/mipsasm-BMqwQI7S.js 3.29 kB │ gzip: 1.21 kB │ map: 4.68 kB 2026-10-23T01:50:41.3609603Z dist/assets/tasl-DMoTqEGO.js 3.32 kB │ gzip: 0.88 kB │ map: 5.13 kB 2026-10-23T01:50:41.3610122Z dist/assets/genie-CV2tkWYe.js 3.39 kB │ gzip: 1.24 kB │ map: 4.87 kB 2026-10-23T01:50:41.3610617Z dist/assets/rel-BtDbiS_P.js 3.40 kB │ gzip: 1.14 kB │ map: 4.88 kB 2026-10-23T01:50:41.3611591Z dist/assets/vala-zf12oZj6.js 3.40 kB │ gzip: 1.22 kB │ map: 4.90 kB 2026-10-23T01:50:41.3612224Z dist/assets/6OLKWJ4F-D-NVTED7.js 3.47 kB │ gzip: 1.65 kB │ map: 8.16 kB 2026-10-23T01:50:41.3612875Z dist/assets/splunk-BC2Px7Mm.js 3.47 kB │ gzip: 1.55 kB │ map: 4.45 kB 2026-10-23T01:50:41.3613744Z dist/assets/FoldedSettingsSection-DfHVDQif.js 3.52 kB │ gzip: 1.63 kB │ map: 18.85 kB 2026-10-23T01:50:41.3614453Z dist/assets/users-PmXY7jSh.js 3.53 kB │ gzip: 1.35 kB │ map: 15.98 kB 2026-10-23T01:50:41.3614942Z dist/assets/hurl-Bjvvc9lj.js 3.55 kB │ gzip: 1.13 kB │ map: 5.48 kB 2026-10-23T01:50:41.3615575Z dist/assets/input-CAJJnBjn.js 3.59 kB │ gzip: 1.63 kB │ map: 12.70 kB 2026-10-23T01:50:41.3616165Z dist/assets/panel-tab-close-button-H3HFAHHg.js 3.63 kB │ gzip: 1.89 kB │ map: 15.33 kB 2026-10-23T01:50:41.3616697Z dist/assets/usageFormat-CEew3LU_.js 3.63 kB │ gzip: 1.47 kB │ map: 14.84 kB 2026-10-23T01:50:41.3617558Z dist/assets/fluent-C03EYrpw.js 3.64 kB │ gzip: 0.93 kB │ map: 5.21 kB 2026-10-23T01:50:41.3618103Z dist/assets/jsonnet-CJTPZ8u_.js 3.65 kB │ gzip: 1.07 kB │ map: 5.43 kB 2026-10-23T01:50:41.3618558Z dist/assets/ssh-config-BgfXC-Er.js 3.65 kB │ gzip: 1.63 kB │ map: 4.50 kB 2026-10-23T01:50:41.3619147Z dist/assets/kdl-CsD5j6eV.js 3.66 kB │ gzip: 1.07 kB │ map: 5.51 kB 2026-10-23T01:50:41.3619547Z dist/assets/narrat-_X_XdTYD.js 3.70 kB │ gzip: 1.13 kB │ map: 5.43 kB 2026-10-23T01:50:41.3620171Z dist/assets/glsl-B3Z4Qj6t.js 3.73 kB │ gzip: 1.48 kB │ map: 4.44 kB 2026-10-23T01:50:41.3620649Z dist/assets/t3ProjectFile-B2U-9dMu.js 3.73 kB │ gzip: 1.54 kB │ map: 21.81 kB 2026-10-23T01:50:41.3621160Z dist/assets/turtle-ByJddavk.js 3.73 kB │ gzip: 1.00 kB │ map: 5.50 kB 2026-10-23T01:50:41.3621732Z dist/assets/lazyRouteComponent-Bi5As3UJ.js 3.80 kB │ gzip: 1.38 kB │ map: 25.98 kB 2026-10-23T01:50:41.3622216Z dist/assets/ProjectMonogram-DFhW2jDG.js 3.83 kB │ gzip: 1.57 kB │ map: 12.77 kB 2026-10-23T01:50:41.3622851Z dist/assets/ron-VUp2lXgN.js 3.94 kB │ gzip: 1.01 kB │ map: 6.03 kB 2026-10-23T01:50:41.3623274Z dist/assets/zenscript-BnlCZFoB.js 3.95 kB │ gzip: 1.31 kB │ map: 5.76 kB 2026-10-23T01:50:41.3623836Z dist/assets/toggle-group-CNuD49eQ.js 3.98 kB │ gzip: 1.70 kB │ map: 17.27 kB 2026-10-23T01:50:41.3624344Z dist/assets/workflow-C9sa_Qaa.js 4.00 kB │ gzip: 1.44 kB │ map: 18.04 kB 2026-10-23T01:50:41.3624810Z dist/assets/gn-ilITqXS6.js 4.03 kB │ gzip: 1.52 kB │ map: 5.28 kB 2026-10-23T01:50:41.3625364Z dist/assets/SettingsPanels.logic-DUn0DVte.js 4.08 kB │ gzip: 1.35 kB │ map: 14.38 kB 2026-10-23T01:50:41.3625816Z dist/assets/alert-BMj5PJ82.js 4.12 kB │ gzip: 1.62 kB │ map: 13.51 kB 2026-10-23T01:50:41.3626414Z dist/assets/CompositeRoot-BF16S3_u.js 4.13 kB │ gzip: 1.93 kB │ map: 20.99 kB 2026-10-23T01:50:41.3626880Z dist/assets/toggle-DyPOlF9Q.js 4.13 kB │ gzip: 1.72 kB │ map: 11.55 kB 2026-10-23T01:50:41.3627421Z dist/assets/SettingsScopeNotice-CJAs3ThX.js 4.15 kB │ gzip: 1.92 kB │ map: 19.31 kB 2026-10-23T01:50:41.3627993Z dist/assets/CXAC5362-DoKeJs9b.js 4.17 kB │ gzip: 1.97 kB │ map: 10.66 kB 2026-10-23T01:50:41.3628413Z dist/assets/pascal-4ZHwLPI5.js 4.18 kB │ gzip: 1.71 kB │ map: 5.54 kB 2026-10-23T01:50:41.3628788Z dist/assets/empty-f-5k15Nm.js 4.19 kB │ gzip: 1.46 kB │ map: 11.56 kB 2026-10-23T01:50:41.3631662Z dist/assets/desktopUpdate.logic-DY6QwDTf.js 4.20 kB │ gzip: 1.69 kB │ map: 15.14 kB 2026-10-23T01:50:41.3632433Z dist/assets/vcsRefInvalidation-5YJpvP6x.js 4.23 kB │ gzip: 2.06 kB │ map: 30.70 kB 2026-10-23T01:50:41.3632909Z dist/assets/http-Dz--gbJ7.js 4.45 kB │ gzip: 1.09 kB │ map: 6.78 kB 2026-10-23T01:50:41.3633404Z dist/assets/tcl-CZd0xW_V.js 4.46 kB │ gzip: 1.54 kB │ map: 6.48 kB 2026-10-23T01:50:41.3633927Z dist/assets/timestampFormat-BBUHLb6E.js 4.46 kB │ gzip: 1.58 kB │ map: 20.84 kB 2026-10-23T01:50:41.3634395Z dist/assets/useParams-DuVZI-39.js 4.53 kB │ gzip: 2.00 kB │ map: 26.30 kB 2026-10-23T01:50:41.3634997Z dist/assets/nextflow-BJtWHP5T.js 4.55 kB │ gzip: 1.20 kB │ map: 6.87 kB 2026-10-23T01:50:41.3635421Z dist/assets/rosmsg-CAekHB0j.js 4.56 kB │ gzip: 1.09 kB │ map: 6.76 kB 2026-10-23T01:50:41.3635993Z dist/assets/projectFilesQueryState-CFsB0YcO.js 4.59 kB │ gzip: 2.23 kB │ map: 20.24 kB 2026-10-23T01:50:41.3636561Z dist/assets/polar-C7UOKdEL.js 4.70 kB │ gzip: 1.16 kB │ map: 7.26 kB 2026-10-23T01:50:41.3636979Z dist/assets/assets-WfawBMfF.js 4.72 kB │ gzip: 2.11 kB │ map: 22.56 kB 2026-10-23T01:50:41.3637567Z dist/assets/sdbl-bTVj8UrX.js 4.73 kB │ gzip: 2.04 kB │ map: 5.90 kB 2026-10-23T01:50:41.3637965Z dist/assets/fennel-DQxkIbk2.js 4.80 kB │ gzip: 1.57 kB │ map: 6.43 kB 2026-10-23T01:50:41.3638554Z dist/assets/bibtex-Ci_nEsc7.js 4.83 kB │ gzip: 0.86 kB │ map: 7.03 kB 2026-10-23T01:50:41.3639021Z dist/assets/settings.archived-DndFiGUj.js 5.05 kB │ gzip: 2.18 kB │ map: 31.79 kB 2026-10-23T01:50:41.3639540Z dist/assets/llvm-Cm23YOpf.js 5.08 kB │ gzip: 2.04 kB │ map: 6.68 kB 2026-10-23T01:50:41.3640126Z dist/assets/HDGCDEEZ-ChlYy_5y.js 5.17 kB │ gzip: 2.48 kB │ map: 13.05 kB 2026-10-23T01:50:41.3640568Z dist/assets/wgsl-BsKzXJz4.js 5.17 kB │ gzip: 1.42 kB │ map: 7.51 kB 2026-10-23T01:50:41.3641166Z dist/assets/keybindings-DCoAwwOy.js 5.29 kB │ gzip: 2.11 kB │ map: 28.22 kB 2026-10-23T01:50:41.3641602Z dist/assets/gdresource-C0sCabJj.js 5.33 kB │ gzip: 1.36 kB │ map: 7.81 kB 2026-10-23T01:50:41.3642154Z dist/assets/5S6HY5KT-DflsCstH.js 5.35 kB │ gzip: 2.67 kB │ map: 13.95 kB 2026-10-23T01:50:41.3642643Z dist/assets/zig-CMLA9XwU.js 5.37 kB │ gzip: 1.59 kB │ map: 7.87 kB 2026-10-23T01:50:41.3643228Z dist/assets/qml-DyjGyXLX.js 5.37 kB │ gzip: 1.41 kB │ map: 8.17 kB 2026-10-23T01:50:41.3643887Z dist/assets/dax-BkyTk9wS.js 5.39 kB │ gzip: 2.25 kB │ map: 6.77 kB 2026-10-23T01:50:41.3644331Z dist/assets/bicep-CUHmPFLl.js 5.41 kB │ gzip: 1.18 kB │ map: 7.92 kB 2026-10-23T01:50:41.3644865Z dist/assets/ReadOnlySourcePreview-D1FjeCAi.js 5.45 kB │ gzip: 2.21 kB │ map: 19.88 kB 2026-10-23T01:50:41.3645464Z dist/assets/xml-D1Mu8RCW.js 5.47 kB │ gzip: 1.27 kB │ map: 7.90 kB 2026-10-23T01:50:41.3646108Z dist/assets/awk-BWXHIvNe.js 5.49 kB │ gzip: 1.41 kB │ map: 8.00 kB 2026-10-23T01:50:41.3646577Z dist/assets/coq-BrsZFFmf.js 5.58 kB │ gzip: 1.95 kB │ map: 7.52 kB 2026-10-23T01:50:41.3647082Z dist/assets/jinja-C4P3y_qB.js 5.67 kB │ gzip: 1.39 kB │ map: 8.57 kB 2026-10-23T01:50:41.3647537Z dist/assets/guideRunStore-B5W4EraU.js 5.75 kB │ gzip: 2.56 kB │ map: 26.93 kB 2026-10-23T01:50:41.3648154Z dist/assets/mediaReference-CCyOeANL.js 5.76 kB │ gzip: 2.53 kB │ map: 26.43 kB 2026-10-23T01:50:41.3648588Z dist/assets/UQJE5E4I-XadlsklV.js 5.77 kB │ gzip: 2.88 kB │ map: 16.01 kB 2026-10-23T01:50:41.3649122Z dist/assets/settings-B_AB-YTy.js 5.78 kB │ gzip: 2.48 kB │ map: 23.03 kB 2026-10-23T01:50:41.3649617Z dist/assets/primary-Cy9tWTxK.js 5.80 kB │ gzip: 2.27 kB │ map: 25.91 kB 2026-10-23T01:50:41.3650137Z dist/assets/lean-CewbzKMR.js 5.81 kB │ gzip: 1.95 kB │ map: 7.88 kB 2026-10-23T01:50:41.3650672Z dist/assets/moonbit-CaWjb8XO.js 5.93 kB │ gzip: 1.71 kB │ map: 8.68 kB 2026-10-23T01:50:41.3651725Z dist/assets/powerquery-DNMTfnFr.js 5.94 kB │ gzip: 1.54 kB │ map: 8.52 kB 2026-10-23T01:50:41.3652322Z dist/assets/shaderlab-TOUzSsQk.js 5.96 kB │ gzip: 2.11 kB │ map: 7.73 kB 2026-10-23T01:50:41.3652843Z dist/assets/verilog-CiiDBU1e.js 5.96 kB │ gzip: 1.93 kB │ map: 8.03 kB 2026-10-23T01:50:41.3653346Z dist/assets/cypher-ClKdZ_lG.js 5.99 kB │ gzip: 1.75 kB │ map: 8.44 kB 2026-10-23T01:50:41.3653792Z dist/assets/vb-Djn5o6TS.js 6.12 kB │ gzip: 2.37 kB │ map: 8.05 kB 2026-10-23T01:50:41.3654316Z dist/assets/zap-DXxGVTLZ.js 6.13 kB │ gzip: 2.29 kB │ map: 26.87 kB 2026-10-23T01:50:41.3654767Z dist/assets/input-group-DHh2K2P_.js 6.18 kB │ gzip: 1.95 kB │ map: 11.42 kB 2026-10-23T01:50:41.3655384Z dist/assets/color-picker-B2bBncWB.js 6.27 kB │ gzip: 2.94 kB │ map: 27.68 kB 2026-10-23T01:50:41.3655857Z dist/assets/KeybindingsSettings.logic-DZ5nnStl.js 6.28 kB │ gzip: 2.54 kB │ map: 27.02 kB 2026-10-23T01:50:41.3656441Z dist/assets/red-CJ3rzSJv.js 6.30 kB │ gzip: 1.63 kB │ map: 8.89 kB 2026-10-23T01:50:41.3656807Z dist/assets/min-dark-BSWPekZh.js 6.33 kB │ gzip: 1.74 kB │ map: 8.63 kB 2026-10-23T01:50:41.3657185Z dist/assets/gdshader-CBce3t8t.js 6.36 kB │ gzip: 1.75 kB │ map: 9.20 kB 2026-10-23T01:50:41.3657768Z dist/assets/prisma-BsRQq5mF.js 6.36 kB │ gzip: 1.42 kB │ map: 9.28 kB 2026-10-23T01:50:41.3658264Z dist/assets/ara-4CJ0cIlV.js 6.39 kB │ gzip: 1.84 kB │ map: 9.26 kB 2026-10-23T01:50:41.3659088Z dist/assets/ConnectionDiagnosisDetails-C0j7f7ED.js 6.41 kB │ gzip: 2.82 kB │ map: 28.56 kB 2026-10-23T01:50:41.3659720Z dist/assets/DYY6UVD2-BRK3DM8S.js 6.44 kB │ gzip: 3.04 kB │ map: 16.52 kB 2026-10-23T01:50:41.3660408Z dist/assets/clojure-DqKBuwfJ.js 6.45 kB │ gzip: 1.45 kB │ map: 9.29 kB 2026-10-23T01:50:41.3661657Z dist/assets/postcss-BXeXVLqQ.js 6.45 kB │ gzip: 1.94 kB │ map: 9.12 kB 2026-10-23T01:50:41.3662277Z dist/assets/toml-CcmNWLt0.js 6.46 kB │ gzip: 1.31 kB │ map: 9.48 kB 2026-10-23T01:50:41.3662712Z dist/assets/solarized-light-DSh2HLQt.js 6.53 kB │ gzip: 1.75 kB │ map: 9.25 kB 2026-10-23T01:50:41.3663313Z dist/assets/scheduledTasksSettings.logic-EARv-utk.js 6.53 kB │ gzip: 2.67 kB │ map: 25.74 kB 2026-10-23T01:50:41.3663857Z dist/assets/proto-DB4EqR-F.js 6.58 kB │ gzip: 1.45 kB │ map: 9.91 kB 2026-10-23T01:50:41.3664341Z dist/assets/smalltalk-B16xEiuN.js 6.62 kB │ gzip: 1.65 kB │ map: 9.26 kB 2026-10-23T01:50:41.3664813Z dist/assets/r-D4tONY_S.js 6.63 kB │ gzip: 1.86 kB │ map: 10.16 kB 2026-10-23T01:50:41.3665334Z dist/assets/talonscript-CohzipZa.js 6.79 kB │ gzip: 1.52 kB │ map: 10.08 kB 2026-10-23T01:50:41.3665743Z dist/assets/solarized-dark-DV17i1UV.js 6.89 kB │ gzip: 1.81 kB │ map: 9.71 kB 2026-10-23T01:50:41.3666365Z dist/assets/riscv-Ckw8ddFX.js 6.95 kB │ gzip: 2.01 kB │ map: 9.60 kB 2026-10-23T01:50:41.3666731Z dist/assets/soy-BZidhfq9.js 6.96 kB │ gzip: 1.66 kB │ map: 10.74 kB 2026-10-23T01:50:41.3667215Z dist/assets/min-light-DDpmG2fV.js 7.01 kB │ gzip: 1.92 kB │ map: 9.56 kB 2026-10-23T01:50:41.3667764Z dist/assets/4UO7MD6I-CbYvrmrw.js 7.08 kB │ gzip: 3.24 kB │ map: 18.76 kB 2026-10-23T01:50:41.3668139Z dist/assets/scheme-DQCgrYNe.js 7.20 kB │ gzip: 2.08 kB │ map: 9.80 kB 2026-10-23T01:50:41.3668681Z dist/assets/O7XIQ6OM-qNHBHheH.js 7.27 kB │ gzip: 3.30 kB │ map: 19.44 kB 2026-10-23T01:50:41.3669156Z dist/assets/hlsl-Cvrh5tZx.js 7.29 kB │ gzip: 2.21 kB │ map: 9.25 kB 2026-10-23T01:50:41.3669622Z dist/assets/YVG2LODB-DCE050ln.js 7.34 kB │ gzip: 3.35 kB │ map: 18.98 kB 2026-10-23T01:50:41.3670251Z dist/assets/qss-Fe1Jh2GI.js 7.50 kB │ gzip: 2.60 kB │ map: 9.41 kB 2026-10-23T01:50:41.3670628Z dist/assets/collapsible-4sawIVe7.js 7.51 kB │ gzip: 3.04 kB │ map: 47.01 kB 2026-10-23T01:50:41.3671015Z dist/assets/CEQABKGZ-CY-TUuk2.js 7.59 kB │ gzip: 3.52 kB │ map: 19.22 kB 2026-10-23T01:50:41.3671425Z dist/assets/primaryCloudLinkState-CASiRAL2.js 7.66 kB │ gzip: 3.05 kB │ map: 32.29 kB 2026-10-23T01:50:41.3671828Z dist/assets/htmlRender-CoDmi6yu.js 7.71 kB │ gzip: 3.15 kB │ map: 30.90 kB 2026-10-23T01:50:41.3672214Z dist/assets/DiffFileTree-CxPWAXfa.js 7.75 kB │ gzip: 3.61 kB │ map: 42.65 kB 2026-10-23T01:50:41.3672595Z dist/assets/checkbox-BX9WhDwO.js 7.77 kB │ gzip: 3.41 kB │ map: 42.78 kB 2026-10-23T01:50:41.3672976Z dist/assets/radio-group-iuvlbXzT.js 7.86 kB │ gzip: 3.35 kB │ map: 38.48 kB 2026-10-23T01:50:41.3673357Z dist/assets/systemd-BxMlprV5.js 7.90 kB │ gzip: 2.57 kB │ map: 10.64 kB 2026-10-23T01:50:41.3673732Z dist/assets/monokai-CdkpiU2Y.js 7.92 kB │ gzip: 1.94 kB │ map: 11.12 kB 2026-10-23T01:50:41.3675164Z dist/assets/_chat.index-C0kM1jm6.js 7.93 kB │ gzip: 3.10 kB │ map: 31.56 kB 2026-10-23T01:50:41.3675737Z dist/assets/regexp-C160j5mr.js 8.08 kB │ gzip: 1.49 kB │ map: 11.23 kB 2026-10-23T01:50:41.3676198Z dist/assets/index-D7EryMVj.js 8.14 kB │ gzip: 3.94 kB │ map: 1.93 kB 2026-10-23T01:50:41.3676565Z dist/assets/LUXOKEGN-0dJmj4Uo.js 8.24 kB │ gzip: 3.73 kB │ map: 21.07 kB 2026-10-23T01:50:41.3676936Z dist/assets/haml-78M2RzJ5.js 8.36 kB │ gzip: 1.88 kB │ map: 12.45 kB 2026-10-23T01:50:41.3677302Z dist/assets/typst-DI99ib-x.js 8.42 kB │ gzip: 1.70 kB │ map: 12.31 kB 2026-10-23T01:50:41.3677672Z dist/assets/vue-html-_q5YSMOd.js 8.52 kB │ gzip: 1.72 kB │ map: 12.03 kB 2026-10-23T01:50:41.3678043Z dist/assets/plsql-DGHpHOYJ.js 8.54 kB │ gzip: 3.03 kB │ map: 10.90 kB 2026-10-23T01:50:41.3678414Z dist/assets/dart-CnvKMtbv.js 8.65 kB │ gzip: 2.03 kB │ map: 12.66 kB 2026-10-23T01:50:41.3678781Z dist/assets/horizon-CE9ld1lL.js 8.82 kB │ gzip: 1.98 kB │ map: 12.09 kB 2026-10-23T01:50:41.3679157Z dist/assets/kotlin-DhhofPvG.js 8.82 kB │ gzip: 2.16 kB │ map: 12.79 kB 2026-10-23T01:50:41.3679538Z dist/assets/horizon-bright-DSNQnXHK.js 8.83 kB │ gzip: 1.99 kB │ map: 12.14 kB 2026-10-23T01:50:41.3679955Z dist/assets/ProjectIconPickerDialog-BkfbKoqV.js 8.95 kB │ gzip: 3.74 kB │ map: 52.01 kB 2026-10-23T01:50:41.3680413Z dist/assets/react-beAb49SJ.js 8.97 kB │ gzip: 3.50 kB │ map: 31.05 kB 2026-10-23T01:50:41.3680784Z dist/assets/make-Dixweg8N.js 8.99 kB │ gzip: 1.79 kB │ map: 12.87 kB 2026-10-23T01:50:41.3681158Z dist/assets/andromeeda-vGVdxbeo.js 9.06 kB │ gzip: 2.39 kB │ map: 11.97 kB 2026-10-23T01:50:41.3681533Z dist/assets/sas-DNZ6OI-k.js 9.10 kB │ gzip: 3.85 kB │ map: 11.14 kB 2026-10-23T01:50:41.3681905Z dist/assets/dark-plus-Cs2F2srj.js 9.14 kB │ gzip: 2.13 kB │ map: 12.44 kB 2026-10-23T01:50:41.3682293Z dist/assets/slack-dark-DnToyrRv.js 9.16 kB │ gzip: 1.99 kB │ map: 12.54 kB 2026-10-23T01:50:41.3682691Z dist/assets/terminalSessions-BbqhDPZm.js 9.20 kB │ gzip: 3.20 kB │ map: 42.87 kB 2026-10-23T01:50:41.3683093Z dist/assets/connect-agent-CsGGtYao.js 9.23 kB │ gzip: 4.00 kB │ map: 39.84 kB 2026-10-23T01:50:41.3683474Z dist/assets/2NI2N5EU-DXsA1e2u.js 9.32 kB │ gzip: 4.19 kB │ map: 24.57 kB 2026-10-23T01:50:41.3683849Z dist/assets/sass-DXrisJhu.js 9.32 kB │ gzip: 2.52 kB │ map: 13.42 kB 2026-10-23T01:50:41.3684714Z dist/assets/plastic-DQwYfKfQ.js 9.33 kB │ gzip: 2.00 kB │ map: 12.50 kB 2026-10-23T01:50:41.3685088Z dist/assets/XBNEOJTC-zuMkmxjB.js 9.44 kB │ gzip: 4.24 kB │ map: 25.57 kB 2026-10-23T01:50:41.3685492Z dist/assets/use-orchestration-command-eRPqf2aF.js 9.47 kB │ gzip: 3.02 kB │ map: 38.41 kB 2026-10-23T01:50:41.3685903Z dist/assets/slack-ochin-B2OO5cIa.js 9.47 kB │ gzip: 2.12 kB │ map: 13.13 kB 2026-10-23T01:50:41.3686272Z dist/assets/tex-D4kYGkpD.js 9.71 kB │ gzip: 3.10 kB │ map: 12.45 kB 2026-10-23T01:50:41.3686634Z dist/assets/jison-Byt20Y-H.js 9.73 kB │ gzip: 1.90 kB │ map: 14.14 kB 2026-10-23T01:50:41.3687135Z dist/assets/cmake-Bj61d0ZC.js 9.89 kB │ gzip: 3.41 kB │ map: 11.27 kB 2026-10-23T01:50:41.3687700Z dist/assets/imageCompression-C5Y6JIp1.js 9.95 kB │ gzip: 3.99 kB │ map: 43.57 kB 2026-10-23T01:50:41.3688170Z dist/assets/light-plus-DVQuIRkW.js 9.98 kB │ gzip: 2.31 kB │ map: 13.44 kB 2026-10-23T01:50:41.3688584Z dist/assets/settings.open-source-licenses-APtHaboU.js 10.03 kB │ gzip: 4.10 kB │ map: 46.85 kB 2026-10-23T01:50:41.3688993Z dist/assets/hcl-Dh228itO.js 10.08 kB │ gzip: 1.96 kB │ map: 14.80 kB 2026-10-23T01:50:41.3689353Z dist/assets/rst-OA9zXOEF.js 10.35 kB │ gzip: 2.28 kB │ map: 15.73 kB 2026-10-23T01:50:41.3689708Z dist/assets/pkl-ot-7Btpt.js 10.40 kB │ gzip: 1.41 kB │ map: 15.48 kB 2026-10-23T01:50:41.3690118Z dist/assets/beancount-D-usSTwE.js 10.41 kB │ gzip: 1.46 kB │ map: 15.05 kB 2026-10-23T01:50:41.3690511Z dist/assets/nextflow-groovy-DJMQeKeT.js 10.48 kB │ gzip: 2.17 kB │ map: 15.26 kB 2026-10-23T01:50:41.3690981Z dist/assets/YURCZMG2-CYfD0XLv.js 10.49 kB │ gzip: 4.56 kB │ map: 25.28 kB 2026-10-23T01:50:41.3691345Z dist/assets/raku-B3gFvitq.js 10.50 kB │ gzip: 2.97 kB │ map: 12.92 kB 2026-10-23T01:50:41.3691719Z dist/assets/dream-maker-DW3nJb8Q.js 10.51 kB │ gzip: 2.29 kB │ map: 15.13 kB 2026-10-23T01:50:41.3692096Z dist/assets/_chat.new-Cz12U77C.js 10.58 kB │ gzip: 4.56 kB │ map: 45.07 kB 2026-10-23T01:50:41.3692470Z dist/assets/yaml-DqrBPYEo.js 10.60 kB │ gzip: 2.34 kB │ map: 14.93 kB 2026-10-23T01:50:41.3692856Z dist/assets/browserHistoryStore-DWgltGt9.js 10.61 kB │ gzip: 4.19 kB │ map: 55.77 kB 2026-10-23T01:50:41.3716990Z dist/assets/just-DDwlfhUt.js 10.85 kB │ gzip: 2.64 kB │ map: 15.45 kB 2026-10-23T01:50:41.3717378Z dist/assets/elm-ByOPkR8C.js 10.98 kB │ gzip: 2.13 kB │ map: 16.07 kB 2026-10-23T01:50:41.3717754Z dist/assets/phoneViewer--nMVJmgH.js 11.04 kB │ gzip: 4.64 kB │ map: 49.75 kB 2026-10-23T01:50:41.3718150Z dist/assets/K7RP3OMA-Cq3oKk97.js 11.18 kB │ gzip: 5.02 kB │ map: 29.89 kB 2026-10-23T01:50:41.3718518Z dist/assets/github-light-EUqPIrTm.js 11.23 kB │ gzip: 2.53 kB │ map: 15.44 kB 2026-10-23T01:50:41.3718878Z dist/assets/prolog-iXnhIJG7.js 11.39 kB │ gzip: 3.88 kB │ map: 13.31 kB 2026-10-23T01:50:41.3719231Z dist/assets/terraform-DswuEJGm.js 11.42 kB │ gzip: 2.54 kB │ map: 16.23 kB 2026-10-23T01:50:41.3719592Z dist/assets/github-dark-C-LZuMrd.js 11.45 kB │ gzip: 2.56 kB │ map: 15.70 kB 2026-10-23T01:50:41.3719953Z dist/assets/puppet-CDv2pdJW.js 11.47 kB │ gzip: 2.14 kB │ map: 16.33 kB 2026-10-23T01:50:41.3720350Z dist/assets/77XECAW3-BLdam7i-.js 11.54 kB │ gzip: 5.35 kB │ map: 27.96 kB 2026-10-23T01:50:41.3720710Z dist/assets/laserwave-C_8bwKvT.js 11.54 kB │ gzip: 2.61 kB │ map: 14.72 kB 2026-10-23T01:50:41.3721076Z dist/assets/ProjectFavicon-CV1m1p9Z.js 11.89 kB │ gzip: 5.25 kB │ map: 15.88 kB 2026-10-23T01:50:41.3721442Z dist/assets/gherkin-DExj1W_8.js 11.98 kB │ gzip: 5.08 kB │ map: 13.13 kB 2026-10-23T01:50:41.3721790Z dist/assets/wasm-ByWQv1Qj.js 12.04 kB │ gzip: 2.21 kB │ map: 16.85 kB 2026-10-23T01:50:41.3722546Z dist/assets/hjson-CxZEssPk.js 12.08 kB │ gzip: 1.67 kB │ map: 17.29 kB 2026-10-23T01:50:41.3723015Z dist/assets/YHV2MVVZ-i3v3rxid.js 12.09 kB │ gzip: 5.10 kB │ map: 36.55 kB 2026-10-23T01:50:41.3723363Z dist/assets/ABYRPUBD-CsSBlR4_.js 12.11 kB │ gzip: 3.25 kB │ map: 36.28 kB 2026-10-23T01:50:41.3723720Z dist/assets/handlebars-C2O4g9kv.js 12.21 kB │ gzip: 2.41 kB │ map: 17.46 kB 2026-10-23T01:50:41.3724107Z dist/assets/ProjectDefaultsSettings-CrAio-FZ.js 12.42 kB │ gzip: 4.47 kB │ map: 67.99 kB 2026-10-23T01:50:41.3724480Z dist/assets/apache-U0d_L8uA.js 12.49 kB │ gzip: 3.74 kB │ map: 15.96 kB 2026-10-23T01:50:41.3724820Z dist/assets/vesper-DdrHHSXu.js 12.77 kB │ gzip: 2.03 kB │ map: 16.24 kB 2026-10-23T01:50:41.3725198Z dist/assets/bat-Bo4NYOV-.js 12.92 kB │ gzip: 3.26 kB │ map: 17.40 kB 2026-10-23T01:50:41.3725558Z dist/assets/ProviderSettingsForm-0eWn53uY.js 12.95 kB │ gzip: 4.89 kB │ map: 60.05 kB 2026-10-23T01:50:41.3725923Z dist/assets/fish-BJitypiv.js 13.07 kB │ gzip: 1.76 kB │ map: 16.86 kB 2026-10-23T01:50:41.3726263Z dist/assets/qr-code-CmPFsYWt.js 13.19 kB │ gzip: 5.02 kB │ map: 49.58 kB 2026-10-23T01:50:41.3726604Z dist/assets/v-DETTlOr0.js 13.24 kB │ gzip: 2.76 kB │ map: 19.27 kB 2026-10-23T01:50:41.3726936Z dist/assets/NUIALGQ3-CD9R1MK-.js 13.25 kB │ gzip: 5.62 kB │ map: 40.22 kB 2026-10-23T01:50:41.3727278Z dist/assets/OFQON5FD-CV-SOQsx.js 13.49 kB │ gzip: 5.51 kB │ map: 34.02 kB 2026-10-23T01:50:41.3727622Z dist/assets/vitesse-light-VbXTXTou.js 13.66 kB │ gzip: 3.06 kB │ map: 18.57 kB 2026-10-23T01:50:41.3727978Z dist/assets/aurora-x-CDeNXAV0.js 13.70 kB │ gzip: 2.32 kB │ map: 17.59 kB 2026-10-23T01:50:41.3728324Z dist/assets/vitesse-black-fwtXNY1n.js 13.72 kB │ gzip: 3.09 kB │ map: 18.66 kB 2026-10-23T01:50:41.3728681Z dist/assets/vitesse-dark-BZCL-v6S.js 13.80 kB │ gzip: 3.10 kB │ map: 18.73 kB 2026-10-23T01:50:41.3729029Z dist/assets/DeviceSetup-Dgz_U1HQ.js 13.86 kB │ gzip: 5.14 kB │ map: 59.86 kB 2026-10-23T01:50:41.3729364Z dist/assets/pug-H48468vj.js 13.89 kB │ gzip: 2.62 kB │ map: 20.57 kB 2026-10-23T01:50:41.3729700Z dist/assets/synthwave-84-nFMaYfgc.js 14.08 kB │ gzip: 2.88 kB │ map: 19.12 kB 2026-10-23T01:50:41.3730063Z dist/assets/PJQHF43J-uv49f8cb.js 14.12 kB │ gzip: 5.87 kB │ map: 39.03 kB 2026-10-23T01:50:41.3730446Z dist/assets/github-light-default-BXViO-2h.js 14.21 kB │ gzip: 3.05 kB │ map: 19.30 kB 2026-10-23T01:50:41.3730808Z dist/assets/clarity-SemFz856.js 14.31 kB │ gzip: 2.50 kB │ map: 19.95 kB 2026-10-23T01:50:41.3731260Z dist/assets/github-light-high-contrast-B68TUdTA.js 14.33 kB │ gzip: 3.03 kB │ map: 19.48 kB 2026-10-23T01:50:41.3731645Z dist/assets/github-dark-dimmed-Bx1FflLF.js 14.48 kB │ gzip: 3.15 kB │ map: 19.67 kB 2026-10-23T01:50:41.3732014Z dist/assets/github-dark-default-DXG-b-1a.js 14.48 kB │ gzip: 3.15 kB │ map: 19.68 kB 2026-10-23T01:50:41.3732369Z dist/assets/X62E3GBT-C7lVQy0u.js 14.54 kB │ gzip: 6.34 kB │ map: 39.30 kB 2026-10-23T01:50:41.3732730Z dist/assets/github-dark-high-contrast-B_tTalzw.js 14.65 kB │ gzip: 3.11 kB │ map: 19.91 kB 2026-10-23T01:50:41.3733099Z dist/assets/gnuplot-7GGW24-e.js 14.82 kB │ gzip: 3.31 kB │ map: 20.83 kB 2026-10-23T01:50:41.3733596Z dist/assets/rust-Cfkwpbl8.js 15.10 kB │ gzip: 2.75 kB │ map: 21.47 kB 2026-10-23T01:50:41.3734027Z dist/assets/FNOVOB4O-BwqjUq2z.js 15.14 kB │ gzip: 5.88 kB │ map: 38.44 kB 2026-10-23T01:50:41.3734366Z dist/assets/threadSort-CuPGeCUG.js 15.17 kB │ gzip: 4.75 kB │ map: 61.83 kB 2026-10-23T01:50:41.3734708Z dist/assets/kusto-C7mF5XQf.js 15.20 kB │ gzip: 3.96 kB │ map: 19.63 kB 2026-10-23T01:50:41.3735057Z dist/assets/actionscript-3--17pq3dv.js 15.25 kB │ gzip: 2.71 kB │ map: 21.47 kB 2026-10-23T01:50:41.3735431Z dist/assets/usePullRequestActions-DLs9oIV9.js 15.39 kB │ gzip: 5.13 kB │ map: 64.20 kB 2026-10-23T01:50:41.3735789Z dist/assets/duoViewer-Cbf-XubB.js 15.46 kB │ gzip: 6.05 kB │ map: 65.43 kB 2026-10-23T01:50:41.3736129Z dist/assets/nix-IvuFDN5E.js 15.54 kB │ gzip: 2.51 kB │ map: 22.93 kB 2026-10-23T01:50:41.3736451Z dist/assets/lua-1Va2DEvn.js 15.63 kB │ gzip: 3.22 kB │ map: 22.17 kB 2026-10-23T01:50:41.3736774Z dist/assets/luau-FMPmPwt6.js 15.66 kB │ gzip: 3.42 kB │ map: 21.88 kB 2026-10-23T01:50:41.3737094Z dist/assets/abap-CLvhMVsD.js 15.88 kB │ gzip: 5.96 kB │ map: 18.85 kB 2026-10-23T01:50:41.3737424Z dist/assets/solidity-CKzVLygQ.js 16.11 kB │ gzip: 3.13 kB │ map: 23.46 kB 2026-10-23T01:50:41.3737753Z dist/assets/matlab-D7qyCx1q.js 16.12 kB │ gzip: 3.10 kB │ map: 23.37 kB 2026-10-23T01:50:41.3738076Z dist/assets/cue-CE9AQfxI.js 16.23 kB │ gzip: 2.08 kB │ map: 23.80 kB 2026-10-23T01:50:41.3738402Z dist/assets/elixir-CrKEldnf.js 16.30 kB │ gzip: 2.79 kB │ map: 23.18 kB 2026-10-23T01:50:41.3738733Z dist/assets/dialog-C7aFyz3H.js 16.37 kB │ gzip: 5.61 kB │ map: 77.01 kB 2026-10-23T01:50:41.3739076Z dist/assets/rightPanelStore-BxKrdpPG.js 16.38 kB │ gzip: 4.69 kB │ map: 78.50 kB 2026-10-23T01:50:41.3739434Z dist/assets/pullRequests-DL0gE5np.js 16.53 kB │ gzip: 5.87 kB │ map: 81.30 kB 2026-10-23T01:50:41.3739769Z dist/assets/odin-B1RWQWA5.js 16.54 kB │ gzip: 2.96 kB │ map: 23.80 kB 2026-10-23T01:50:41.3740132Z dist/assets/X5RFHQXM-BfwiBGlr.js 16.59 kB │ gzip: 7.04 kB │ map: 42.63 kB 2026-10-23T01:50:41.3740462Z dist/assets/ts-tags-iKEdjM6n.js 16.59 kB │ gzip: 2.09 kB │ map: 24.94 kB 2026-10-23T01:50:41.3740808Z dist/assets/scroll-area-CEhB9oFK.js 16.78 kB │ gzip: 5.99 kB │ map: 85.84 kB 2026-10-23T01:50:41.3741144Z dist/assets/popover-DLt2C_qF.js 17.13 kB │ gzip: 6.46 kB │ map: 90.10 kB 2026-10-23T01:50:41.3741486Z dist/assets/kanagawa-wave-CTweb8Dz.js 17.17 kB │ gzip: 2.94 kB │ map: 22.30 kB 2026-10-23T01:50:41.3741835Z dist/assets/kanagawa-lotus-BN08jTvb.js 17.17 kB │ gzip: 2.94 kB │ map: 22.30 kB 2026-10-23T01:50:41.3742192Z dist/assets/kanagawa-dragon-CXtmUGW6.js 17.17 kB │ gzip: 2.96 kB │ map: 22.31 kB 2026-10-23T01:50:41.3742553Z dist/assets/projectScriptEditor-B7pGok4b.js 17.42 kB │ gzip: 6.68 kB │ map: 100.01 kB 2026-10-23T01:50:41.3742897Z dist/assets/move-B1IS1UjX.js 17.54 kB │ gzip: 3.10 kB │ map: 26.27 kB 2026-10-23T01:50:41.3743224Z dist/assets/command-DdUSkj1h.js 17.79 kB │ gzip: 4.78 kB │ map: 70.69 kB 2026-10-23T01:50:41.3743738Z dist/assets/link-CplrvuvY.js 17.95 kB │ gzip: 6.74 kB │ map: 91.88 kB 2026-10-23T01:50:41.3744145Z dist/assets/graphql-f7MMklYv.js 18.12 kB │ gzip: 2.56 kB │ map: 25.58 kB 2026-10-23T01:50:41.3744481Z dist/assets/liquid-NR0kReLd.js 18.14 kB │ gzip: 3.18 kB │ map: 25.31 kB 2026-10-23T01:50:41.3744974Z dist/assets/T3ConnectAccountPages-Cima3bL8.js 18.25 kB │ gzip: 6.37 kB │ map: 80.99 kB 2026-10-23T01:50:41.3745332Z dist/assets/svelte-D_LLVCZp.js 18.29 kB │ gzip: 3.18 kB │ map: 25.82 kB 2026-10-23T01:50:41.3745676Z dist/assets/material-theme-Bm3Qr25_.js 18.66 kB │ gzip: 3.14 kB │ map: 24.14 kB 2026-10-23T01:50:41.3746047Z dist/assets/material-theme-ocean-CHQ94UKr.js 18.68 kB │ gzip: 3.16 kB │ map: 24.18 kB 2026-10-23T01:50:41.3746428Z dist/assets/material-theme-darker-2IIEA8gg.js 18.68 kB │ gzip: 3.13 kB │ map: 24.18 kB 2026-10-23T01:50:41.3746812Z dist/assets/material-theme-lighter-uhdI0v04.js 18.69 kB │ gzip: 3.14 kB │ map: 24.19 kB 2026-10-23T01:50:41.3747202Z dist/assets/material-theme-palenight-B5W6OYN7.js 18.69 kB │ gzip: 3.15 kB │ map: 24.20 kB 2026-10-23T01:50:41.3747591Z dist/assets/pullRequestDetail.logic-DulEPYIR.js 18.75 kB │ gzip: 6.68 kB │ map: 76.51 kB 2026-10-23T01:50:41.3747956Z dist/assets/gdscript-Cp2uCuqX.js 19.03 kB │ gzip: 3.78 kB │ map: 26.26 kB 2026-10-23T01:50:41.3748299Z dist/assets/USNYFO5S-CIjHJw5C.js 19.10 kB │ gzip: 7.42 kB │ map: 47.26 kB 2026-10-23T01:50:41.3748630Z dist/assets/groovy-CacY0gHj.js 19.21 kB │ gzip: 3.63 kB │ map: 27.53 kB 2026-10-23T01:50:41.3748981Z dist/assets/settings.storage-BlwmWU2J.js 19.46 kB │ gzip: 7.03 kB │ map: 104.83 kB 2026-10-23T01:50:41.3749323Z dist/assets/mdc-BszP3a5M.js 19.58 kB │ gzip: 6.70 kB │ map: 23.16 kB 2026-10-23T01:50:41.3749652Z dist/assets/server-CWxXtNvr.js 19.96 kB │ gzip: 6.16 kB │ map: 117.05 kB 2026-10-23T01:50:41.3750009Z dist/assets/ayu-dark-DluEY0Gj.js 20.12 kB │ gzip: 3.96 kB │ map: 27.06 kB 2026-10-23T01:50:41.3750351Z dist/assets/ayu-mirage-Bqwy1Gya.js 20.13 kB │ gzip: 3.95 kB │ map: 27.08 kB 2026-10-23T01:50:41.3750690Z dist/assets/glimmer-js-BDXa_Fyc.js 20.13 kB │ gzip: 2.97 kB │ map: 28.69 kB 2026-10-23T01:50:41.3751160Z dist/assets/glimmer-ts-Bj66Y8fi.js 20.13 kB │ gzip: 2.97 kB │ map: 28.69 kB 2026-10-23T01:50:41.3751524Z dist/assets/powershell-DshXNtvi.js 20.19 kB │ gzip: 4.09 kB │ map: 26.60 kB 2026-10-23T01:50:41.3751866Z dist/assets/ayu-light-C3h-C4tm.js 20.19 kB │ gzip: 3.93 kB │ map: 27.14 kB 2026-10-23T01:50:41.3752213Z dist/assets/entities-D11ggt_c.js 20.36 kB │ gzip: 6.89 kB │ map: 134.74 kB 2026-10-23T01:50:41.3752546Z dist/assets/viml-DvXPmvsu.js 20.40 kB │ gzip: 6.77 kB │ map: 23.51 kB 2026-10-23T01:50:41.3752878Z dist/assets/DRLTVNUE-R23B2FWF.js 20.40 kB │ gzip: 7.66 kB │ map: 50.95 kB 2026-10-23T01:50:41.3753210Z dist/assets/nushell-DcLAeLz5.js 20.45 kB │ gzip: 5.25 kB │ map: 27.67 kB 2026-10-23T01:50:41.3753546Z dist/assets/HSJLKHB7-BWj2lY8Z.js 20.80 kB │ gzip: 8.63 kB │ map: 57.03 kB 2026-10-23T01:50:41.3753891Z dist/assets/snazzy-light-4G7pJPwS.js 20.82 kB │ gzip: 3.84 kB │ map: 28.03 kB 2026-10-23T01:50:41.3754336Z dist/assets/twig-Ci9rMG4p.js 20.94 kB │ gzip: 3.70 kB │ map: 29.33 kB 2026-10-23T01:50:41.3754747Z dist/assets/dracula-BHWKrbxM.js 21.10 kB │ gzip: 4.03 kB │ map: 27.51 kB 2026-10-23T01:50:41.3755090Z dist/assets/dracula-soft-5eyTD99u.js 21.12 kB │ gzip: 4.06 kB │ map: 27.54 kB 2026-10-23T01:50:41.3755440Z dist/assets/number-field-D6BsM8Bv.js 21.17 kB │ gzip: 8.06 kB │ map: 104.64 kB 2026-10-23T01:50:41.3755785Z dist/assets/wit-DdvCle-K.js 21.50 kB │ gzip: 2.91 kB │ map: 30.11 kB 2026-10-23T01:50:41.3756123Z dist/assets/rose-pine-BthvhNj6.js 21.78 kB │ gzip: 3.90 kB │ map: 28.78 kB 2026-10-23T01:50:41.3756484Z dist/assets/rose-pine-moon-hon4tzzS.js 21.80 kB │ gzip: 3.91 kB │ map: 28.81 kB 2026-10-23T01:50:41.3756847Z dist/assets/rose-pine-dawn-Dg85fqjY.js 21.80 kB │ gzip: 3.92 kB │ map: 28.81 kB 2026-10-23T01:50:41.3757218Z dist/assets/useStableCallback-z_SONSIp.js 22.26 kB │ gzip: 9.25 kB │ map: 690.61 kB 2026-10-23T01:50:41.3757565Z dist/assets/nim-BM9Yvas0.js 22.49 kB │ gzip: 3.19 kB │ map: 32.88 kB 2026-10-23T01:50:41.3757906Z dist/assets/common-lisp-Cv5bFMCO.js 22.62 kB │ gzip: 6.11 kB │ map: 26.69 kB 2026-10-23T01:50:41.3758254Z dist/assets/surrealql-BhXwxFwT.js 22.63 kB │ gzip: 4.34 kB │ map: 32.51 kB 2026-10-23T01:50:41.3758618Z dist/assets/gruvbox-dark-hard-C820rvS2.js 22.68 kB │ gzip: 4.19 kB │ map: 30.59 kB 2026-10-23T01:50:41.3758986Z dist/assets/gruvbox-dark-soft-MrdJrrXF.js 22.68 kB │ gzip: 4.19 kB │ map: 30.59 kB 2026-10-23T01:50:41.3759354Z dist/assets/gruvbox-light-hard-BC_s9l72.js 22.68 kB │ gzip: 4.19 kB │ map: 30.59 kB 2026-10-23T01:50:41.3759727Z dist/assets/gruvbox-light-soft-BSMLrYjP.js 22.68 kB │ gzip: 4.19 kB │ map: 30.59 kB 2026-10-23T01:50:41.3760157Z dist/assets/gruvbox-dark-medium-BPjhmG05.js 22.69 kB │ gzip: 4.19 kB │ map: 30.60 kB 2026-10-23T01:50:41.3760536Z dist/assets/gruvbox-light-medium-BAWPOn9u.js 22.69 kB │ gzip: 4.20 kB │ map: 30.61 kB 2026-10-23T01:50:41.3760901Z dist/assets/bird2-C6vDhewU.js 22.97 kB │ gzip: 4.69 kB │ map: 31.06 kB 2026-10-23T01:50:41.3761243Z dist/assets/5OC2THR4-B9a9nmGO.js 23.28 kB │ gzip: 9.39 kB │ map: 61.59 kB 2026-10-23T01:50:41.3761589Z dist/assets/sql-DJtPbMSQ.js 23.52 kB │ gzip: 7.54 kB │ map: 27.96 kB 2026-10-23T01:50:41.3761927Z dist/assets/cadence-CQ2zXKGN.js 23.70 kB │ gzip: 3.69 kB │ map: 33.59 kB 2026-10-23T01:50:41.3762272Z dist/assets/astro-BmmE1wns.js 24.06 kB │ gzip: 7.63 kB │ map: 29.26 kB 2026-10-23T01:50:41.3762609Z dist/assets/apl-Dbn5QvGU.js 24.07 kB │ gzip: 4.20 kB │ map: 33.43 kB 2026-10-23T01:50:41.3762950Z dist/assets/templ-ChNxr6tm.js 24.10 kB │ gzip: 5.45 kB │ map: 30.96 kB 2026-10-23T01:50:41.3763292Z dist/assets/SLD4V6NK-Cmi8ibhv.js 24.20 kB │ gzip: 10.11 kB │ map: 66.35 kB 2026-10-23T01:50:41.3763651Z dist/assets/angular-html-CHSubNNg.js 24.28 kB │ gzip: 4.02 kB │ map: 35.88 kB 2026-10-23T01:50:41.3763996Z dist/assets/vhdl-BroJfC0k.js 24.29 kB │ gzip: 3.90 kB │ map: 33.38 kB 2026-10-23T01:50:41.3764335Z dist/assets/vue-DhtZA_zP.js 24.53 kB │ gzip: 2.99 kB │ map: 36.98 kB 2026-10-23T01:50:41.3764774Z dist/assets/purescript-9MfHhQsQ.js 24.72 kB │ gzip: 3.27 kB │ map: 34.90 kB 2026-10-23T01:50:41.3765198Z dist/assets/typespec-BRdr0IET.js 25.08 kB │ gzip: 2.66 kB │ map: 34.70 kB 2026-10-23T01:50:41.3765550Z dist/assets/one-light-D7Lr4KcI.js 25.34 kB │ gzip: 3.67 kB │ map: 33.81 kB 2026-10-23T01:50:41.3765911Z dist/assets/fsharp-D13ZGOAj.js 25.34 kB │ gzip: 4.16 kB │ map: 35.90 kB 2026-10-23T01:50:41.3766259Z dist/assets/marko-BaagTwf0.js 25.52 kB │ gzip: 3.62 kB │ map: 35.92 kB 2026-10-23T01:50:41.3766633Z dist/assets/night-owl-light-eJ-hLW7d.js 25.95 kB │ gzip: 4.27 kB │ map: 35.17 kB 2026-10-23T01:50:41.3767005Z dist/assets/system-verilog-DJ5XKQeo.js 26.24 kB │ gzip: 4.86 kB │ map: 36.27 kB 2026-10-23T01:50:41.3767385Z dist/assets/useThreadActions-Ch8OmhxT.js 26.35 kB │ gzip: 8.51 kB │ map: 129.82 kB 2026-10-23T01:50:41.3767748Z dist/assets/nord-Cb4Vim4T.js 26.76 kB │ gzip: 4.39 kB │ map: 35.36 kB 2026-10-23T01:50:41.3768095Z dist/assets/codeql-oeQT6MSM.js 26.92 kB │ gzip: 3.83 kB │ map: 36.02 kB 2026-10-23T01:50:41.3768435Z dist/assets/c3-BFHwR3_K.js 27.00 kB │ gzip: 3.96 kB │ map: 39.15 kB 2026-10-23T01:50:41.3768779Z dist/assets/T3PCR2KE-DadRVKZ1.js 27.06 kB │ gzip: 11.16 kB │ map: 74.49 kB 2026-10-23T01:50:41.3769121Z dist/assets/scss-DQyDwCYy.js 27.30 kB │ gzip: 4.26 kB │ map: 38.39 kB 2026-10-23T01:50:41.3769462Z dist/assets/java-CF-jL4AX.js 27.31 kB │ gzip: 4.34 kB │ map: 38.66 kB 2026-10-23T01:50:41.3769803Z dist/assets/coffee-BHyBL9L1.js 27.46 kB │ gzip: 6.39 kB │ map: 36.12 kB 2026-10-23T01:50:41.3770184Z dist/assets/razor-CRS4rNJT.js 27.49 kB │ gzip: 3.58 kB │ map: 38.35 kB 2026-10-23T01:50:41.3770532Z dist/assets/BB2UYUI2-BbcutQ6y.js 28.18 kB │ gzip: 10.96 kB │ map: 75.19 kB 2026-10-23T01:50:41.3770980Z dist/assets/sidebar-ONHg1mNF.js 28.36 kB │ gzip: 9.12 kB │ map: 123.41 kB 2026-10-23T01:50:41.3771330Z dist/assets/scala-DKOlJaKm.js 28.92 kB │ gzip: 3.96 kB │ map: 40.12 kB 2026-10-23T01:50:41.3771680Z dist/assets/night-owl-DhmEMT88.js 28.95 kB │ gzip: 5.18 kB │ map: 39.06 kB 2026-10-23T01:50:41.3772028Z dist/assets/select-BoWB8yge.js 29.05 kB │ gzip: 10.90 kB │ map: 139.91 kB 2026-10-23T01:50:41.3772377Z dist/assets/crystal-xgOldvWp.js 29.45 kB │ gzip: 4.47 kB │ map: 41.29 kB 2026-10-23T01:50:41.3772849Z dist/assets/mermaid-Bk4SNUv9.js 29.54 kB │ gzip: 3.68 kB │ map: 44.12 kB 2026-10-23T01:50:41.3773280Z dist/assets/applescript-CCn79oCD.js 29.61 kB │ gzip: 5.98 kB │ map: 39.35 kB 2026-10-23T01:50:41.3773638Z dist/assets/BUM34MOA-B0NGG0v3.js 30.12 kB │ gzip: 11.45 kB │ map: 75.42 kB 2026-10-23T01:50:41.3773988Z dist/assets/75O6YZUN-CCWs2Ipl.js 30.19 kB │ gzip: 11.64 kB │ map: 77.70 kB 2026-10-23T01:50:41.3774344Z dist/assets/pierre-dark-CpLgRqie.js 30.59 kB │ gzip: 4.77 kB │ map: 34.24 kB 2026-10-23T01:50:41.3774710Z dist/assets/pierre-light-CoaEpmwp.js 30.59 kB │ gzip: 4.77 kB │ map: 34.25 kB 2026-10-23T01:50:41.3775087Z dist/assets/pierre-dark-soft-kZQmAZld.js 30.61 kB │ gzip: 4.81 kB │ map: 34.27 kB 2026-10-23T01:50:41.3775470Z dist/assets/pierre-light-soft-lWLdNTOI.js 30.61 kB │ gzip: 4.77 kB │ map: 34.27 kB 2026-10-23T01:50:41.3775870Z dist/assets/pierre-dark-tritanopia-CpjhbsIL.js 30.62 kB │ gzip: 4.72 kB │ map: 34.30 kB 2026-10-23T01:50:41.3776278Z dist/assets/pierre-light-tritanopia-CEbqgOJL.js 30.63 kB │ gzip: 4.73 kB │ map: 34.30 kB 2026-10-23T01:50:41.3776710Z dist/assets/pierre-dark-protanopia-deuteranopia-B35FxJx-.js 30.66 kB │ gzip: 4.80 kB │ map: 34.36 kB 2026-10-23T01:50:41.3777163Z dist/assets/pierre-light-protanopia-deuteranopia-0fSaH845.js 30.67 kB │ gzip: 4.76 kB │ map: 34.37 kB 2026-10-23T01:50:41.3777590Z dist/assets/ChatGptUsageButton-PAHQYqOd.js 30.79 kB │ gzip: 12.00 kB │ map: 117.44 kB 2026-10-23T01:50:41.3777996Z dist/assets/julia-BAkj-Grs.js 31.05 kB │ gzip: 4.34 kB │ map: 40.65 kB 2026-10-23T01:50:41.3778345Z dist/assets/stylus-B6D30XZt.js 31.11 kB │ gzip: 8.05 kB │ map: 38.88 kB 2026-10-23T01:50:41.3778702Z dist/assets/N3JZAHOW-CywCfBgz.js 32.62 kB │ gzip: 13.28 kB │ map: 101.23 kB 2026-10-23T01:50:41.3779061Z dist/assets/queries-DMVMEKd-.js 32.75 kB │ gzip: 12.07 kB │ map: 163.38 kB 2026-10-23T01:50:41.3779424Z dist/assets/poimandres-DRFjx7u4.js 33.53 kB │ gzip: 5.53 kB │ map: 43.07 kB 2026-10-23T01:50:41.3779792Z dist/assets/one-dark-pro-CLwyXe_n.js 33.83 kB │ gzip: 5.54 kB │ map: 44.51 kB 2026-10-23T01:50:41.3780193Z dist/assets/bsl-BkkzgIyY.js 33.90 kB │ gzip: 8.38 kB │ map: 37.63 kB 2026-10-23T01:50:41.3780542Z dist/assets/O65XPQGZ-CCjTfXv7.js 34.10 kB │ gzip: 12.69 kB │ map: 86.95 kB 2026-10-23T01:50:41.3780901Z dist/assets/UsageLimits-D9iTVxhl.js 34.24 kB │ gzip: 11.85 kB │ map: 148.25 kB 2026-10-23T01:50:41.3781264Z dist/assets/haxe-OTjmBuCE.js 35.19 kB │ gzip: 5.94 kB │ map: 49.52 kB 2026-10-23T01:50:41.3781609Z dist/assets/nginx-Bunv6cTi.js 35.39 kB │ gzip: 4.49 kB │ map: 48.50 kB 2026-10-23T01:50:41.3781963Z dist/assets/houston-CsvMBhTu.js 35.46 kB │ gzip: 5.80 kB │ map: 46.40 kB 2026-10-23T01:50:41.3782322Z dist/assets/tokyo-night-oM2G3aXe.js 35.71 kB │ gzip: 6.26 kB │ map: 45.35 kB 2026-10-23T01:50:41.3782713Z dist/assets/CodexSetupSection.logic-DCDHj-3L.js 36.15 kB │ gzip: 12.96 kB │ map: 164.42 kB 2026-10-23T01:50:41.3783112Z dist/assets/settings.keybindings-DYfHuMwz.js 37.26 kB │ gzip: 12.50 kB │ map: 164.58 kB 2026-10-23T01:50:41.3783492Z dist/assets/erlang-Cphh6RMH.js 37.52 kB │ gzip: 4.39 kB │ map: 51.59 kB 2026-10-23T01:50:41.3783927Z dist/assets/lazy-Dm_Lp5z5.js 38.37 kB │ gzip: 16.01 kB │ map: 81.90 kB 2026-10-23T01:50:41.3784353Z dist/assets/useSettings-C-FGLvBd.js 39.05 kB │ gzip: 13.39 kB │ map: 176.26 kB 2026-10-23T01:50:41.3784734Z dist/assets/PullRequestCodeTab-DhC4oF7W.js 39.06 kB │ gzip: 14.39 kB │ map: 181.69 kB 2026-10-23T01:50:41.3785112Z dist/assets/cobol-DlmPKder.js 39.11 kB │ gzip: 10.92 kB │ map: 47.39 kB 2026-10-23T01:50:41.3787103Z dist/assets/settings.projects-BikrdtAO.js 39.20 kB │ gzip: 15.36 kB │ map: 163.46 kB 2026-10-23T01:50:41.3787494Z dist/assets/TKWO2OVW-CRBUvHEe.js 39.43 kB │ gzip: 14.77 kB │ map: 97.94 kB 2026-10-23T01:50:41.3787874Z dist/assets/ThemeEditorPanel-CHjbQKDF.js 40.17 kB │ gzip: 14.50 kB │ map: 189.10 kB 2026-10-23T01:50:41.3788250Z dist/assets/asm-Cmm7eHzH.js 40.75 kB │ gzip: 8.20 kB │ map: 53.00 kB 2026-10-23T01:50:41.3788614Z dist/assets/RHNBAITX-BFWsqBaK.js 41.31 kB │ gzip: 15.53 kB │ map: 105.33 kB 2026-10-23T01:50:41.3788989Z dist/assets/haskell-D8IpX4py.js 41.52 kB │ gzip: 6.44 kB │ map: 57.85 kB 2026-10-23T01:50:41.3789361Z dist/assets/shellscript-y5xaAa26.js 41.58 kB │ gzip: 6.16 kB │ map: 56.57 kB 2026-10-23T01:50:41.3789749Z dist/assets/combobox--IroC2DY.js 41.96 kB │ gzip: 14.24 kB │ map: 212.72 kB 2026-10-23T01:50:41.3790147Z dist/assets/perl-AhzhpTrP.js 43.18 kB │ gzip: 4.68 kB │ map: 60.84 kB 2026-10-23T01:50:41.3790515Z dist/assets/DiffPanel-D8N5Bbu-.js 43.27 kB │ gzip: 16.70 kB │ map: 244.00 kB 2026-10-23T01:50:41.3790872Z dist/assets/d-qD-0Kul2.js 43.82 kB │ gzip: 8.46 kB │ map: 62.69 kB 2026-10-23T01:50:41.3791236Z dist/assets/LHDIQX7Q-BZjQxiKg.js 44.04 kB │ gzip: 16.12 kB │ map: 107.24 kB 2026-10-23T01:50:41.3791633Z dist/assets/DiffCommentAnnotation-CfZv2d7l.js 44.48 kB │ gzip: 15.81 kB │ map: 120.50 kB 2026-10-23T01:50:41.3792042Z dist/assets/pierre-dark-vibrant-CpQYzh95.js 44.81 kB │ gzip: 5.33 kB │ map: 48.48 kB 2026-10-23T01:50:41.3792446Z dist/assets/pierre-light-vibrant-D80Fkn33.js 44.81 kB │ gzip: 5.31 kB │ map: 48.48 kB 2026-10-23T01:50:41.3792855Z dist/assets/ProviderModelPicker-RvDu24tS.js 44.82 kB │ gzip: 16.02 kB │ map: 233.46 kB 2026-10-23T01:50:41.3793249Z dist/assets/settingsLayout-wA20nTgf.js 45.05 kB │ gzip: 15.82 kB │ map: 227.20 kB 2026-10-23T01:50:41.3793633Z dist/assets/DevicePanel-pAWjadwD.js 46.10 kB │ gzip: 15.63 kB │ map: 246.51 kB 2026-10-23T01:50:41.3794000Z dist/assets/toast-B1y4UKAU.js 46.44 kB │ gzip: 15.38 kB │ map: 273.08 kB 2026-10-23T01:50:41.3794389Z dist/assets/settings.source-control-C2rqVVPn.js 46.45 kB │ gzip: 15.22 kB │ map: 259.47 kB 2026-10-23T01:50:41.3794772Z dist/assets/ruby-ubltFHEX.js 46.64 kB │ gzip: 5.74 kB │ map: 66.38 kB 2026-10-23T01:50:41.3795124Z dist/assets/go-rLFTqkRN.js 46.85 kB │ gzip: 5.18 kB │ map: 66.61 kB 2026-10-23T01:50:41.3795488Z dist/assets/settings.snap-shot-C_OkKGTm.js 46.98 kB │ gzip: 16.62 kB │ map: 252.93 kB 2026-10-23T01:50:41.3795882Z dist/assets/catppuccin-mocha-DYhrFGRu.js 47.30 kB │ gzip: 8.02 kB │ map: 62.03 kB 2026-10-23T01:50:41.3796274Z dist/assets/catppuccin-latte-DwIHMF0Q.js 47.30 kB │ gzip: 8.02 kB │ map: 62.03 kB 2026-10-23T01:50:41.3796671Z dist/assets/catppuccin-frappe-3VR1Za6u.js 47.31 kB │ gzip: 8.03 kB │ map: 62.04 kB 2026-10-23T01:50:41.3797272Z dist/assets/catppuccin-macchiato-DYnBP6_5.js 47.31 kB │ gzip: 8.03 kB │ map: 62.06 kB 2026-10-23T01:50:41.3797816Z dist/assets/PreviewPanel-KiJT3oW8.js 47.35 kB │ gzip: 17.22 kB │ map: 255.28 kB 2026-10-23T01:50:41.3798180Z dist/assets/apex-VAyPSnFM.js 47.80 kB │ gzip: 6.85 kB │ map: 66.78 kB 2026-10-23T01:50:41.3798531Z dist/assets/ada-C5qYipkI.js 48.11 kB │ gzip: 6.00 kB │ map: 70.96 kB 2026-10-23T01:50:41.3798877Z dist/assets/css-kzGS2ZwB.js 49.13 kB │ gzip: 11.99 kB │ map: 60.67 kB 2026-10-23T01:50:41.3799232Z dist/assets/welcome-Dz2Au_pH.js 49.80 kB │ gzip: 17.04 kB │ map: 266.54 kB 2026-10-23T01:50:41.3799588Z dist/assets/imba-DsUTQ-LC.js 49.96 kB │ gzip: 9.51 kB │ map: 68.08 kB 2026-10-23T01:50:41.3799958Z dist/assets/sortable.esm-BwSSVlM0.js 50.51 kB │ gzip: 16.26 kB │ map: 236.47 kB 2026-10-23T01:50:41.3800370Z dist/assets/everforest-dark-sB-x3p7T.js 53.79 kB │ gzip: 8.41 kB │ map: 68.28 kB 2026-10-23T01:50:41.3800759Z dist/assets/everforest-light-Df2xbC6M.js 53.79 kB │ gzip: 8.41 kB │ map: 68.29 kB 2026-10-23T01:50:41.3801142Z dist/assets/Virtualizer-Dn2ENcRG.js 55.69 kB │ gzip: 14.32 kB │ map: 177.52 kB 2026-10-23T01:50:41.3801514Z dist/assets/wikitext-ClFFjSW2.js 55.92 kB │ gzip: 4.85 kB │ map: 77.64 kB 2026-10-23T01:50:41.3801897Z dist/assets/ScheduledTasksSettings-D_yRCqWC.js 56.63 kB │ gzip: 19.21 kB │ map: 343.58 kB 2026-10-23T01:50:41.3802275Z dist/assets/stata-Ciuk7_mY.js 57.03 kB │ gzip: 12.44 kB │ map: 74.20 kB 2026-10-23T01:50:41.3802630Z dist/assets/html-DIIndQnv.js 57.35 kB │ gzip: 11.82 kB │ map: 73.07 kB 2026-10-23T01:50:41.3802995Z dist/assets/ballerina-B7ZEbQpA.js 58.73 kB │ gzip: 8.14 kB │ map: 81.54 kB 2026-10-23T01:50:41.3803363Z dist/assets/markdown-BYOwaDjH.js 59.37 kB │ gzip: 5.70 kB │ map: 82.33 kB 2026-10-23T01:50:41.3803733Z dist/assets/pierre-icons-tC_F8o2a.js 60.69 kB │ gzip: 22.05 kB │ map: 82.50 kB 2026-10-23T01:50:41.3804097Z dist/assets/ocaml-O90oeIOV.js 62.48 kB │ gzip: 5.08 kB │ map: 81.11 kB 2026-10-23T01:50:41.3804450Z dist/assets/mojo-BgCJLMeH.js 69.83 kB │ gzip: 9.25 kB │ map: 94.94 kB 2026-10-23T01:50:41.3804805Z dist/assets/python-gzcpVVnB.js 69.98 kB │ gzip: 9.13 kB │ map: 95.24 kB 2026-10-23T01:50:41.3805186Z dist/assets/useHandleNewThread-ByVhHvD_.js 70.53 kB │ gzip: 22.44 kB │ map: 335.68 kB 2026-10-23T01:50:41.3805560Z dist/assets/c-esFkreWu.js 72.20 kB │ gzip: 10.58 kB │ map: 95.41 kB 2026-10-23T01:50:41.3805913Z dist/assets/latex-b0569jTU.js 72.91 kB │ gzip: 6.78 kB │ map: 100.96 kB 2026-10-23T01:50:41.3806263Z dist/assets/vyper-CgoNMtux.js 74.68 kB │ gzip: 10.73 kB │ map: 100.71 kB 2026-10-23T01:50:41.3806618Z dist/assets/Icons-AMQyMaC8.js 75.01 kB │ gzip: 33.97 kB │ map: 215.89 kB 2026-10-23T01:50:41.3806967Z dist/assets/hack-mYo6lwOk.js 81.09 kB │ gzip: 26.47 kB │ map: 98.63 kB 2026-10-23T01:50:41.3807335Z dist/assets/SettingsPanels-BODjoo5N.js 82.66 kB │ gzip: 25.85 kB │ map: 507.56 kB 2026-10-23T01:50:41.3807717Z dist/assets/themePalette-DLgkEwAD.js 83.31 kB │ gzip: 23.89 kB │ map: 284.11 kB 2026-10-23T01:50:41.3808281Z dist/assets/swift-DonLKvLd.js 86.72 kB │ gzip: 14.72 kB │ map: 114.51 kB 2026-10-23T01:50:41.3808837Z dist/assets/DiffWorkerPoolProvider-CqbF4ISb.js 87.11 kB │ gzip: 23.11 kB │ map: 273.90 kB 2026-10-23T01:50:41.3809241Z dist/assets/fortran-free-form-CYNrtFtB.js 89.01 kB │ gzip: 11.23 kB │ map: 124.06 kB 2026-10-23T01:50:41.3809636Z dist/assets/_chat.pull-requests-Cp5XWqaU.js 89.56 kB │ gzip: 32.25 kB │ map: 448.87 kB 2026-10-23T01:50:41.3810038Z dist/assets/csharp-oqKa8noW.js 90.22 kB │ gzip: 10.75 kB │ map: 126.35 kB 2026-10-23T01:50:41.3810403Z dist/assets/FileDiff-Cb689_AQ.js 91.16 kB │ gzip: 23.35 kB │ map: 307.03 kB 2026-10-23T01:50:41.3810764Z dist/assets/racket-DcIDlBhZ.js 92.42 kB │ gzip: 15.11 kB │ map: 106.19 kB 2026-10-23T01:50:41.3811203Z dist/assets/settings.diagnostics-EV0oY8bZ.js 93.27 kB │ gzip: 27.02 kB │ map: 497.41 kB 2026-10-23T01:50:41.3811602Z dist/assets/embeddedScripts-DDetrqm9.js 94.06 kB │ gzip: 24.28 kB │ map: 399.57 kB 2026-10-23T01:50:41.3811974Z dist/assets/usage-KQB2LkMu.js 96.02 kB │ gzip: 32.13 kB │ map: 559.16 kB 2026-10-23T01:50:41.3812355Z dist/assets/settings.integrations-CBmpxPnU.js 96.68 kB │ gzip: 31.48 kB │ map: 566.34 kB 2026-10-23T01:50:41.3812735Z dist/assets/less-DVTAwKKz.js 97.66 kB │ gzip: 14.88 kB │ map: 131.85 kB 2026-10-23T01:50:41.3813088Z dist/assets/blade-DBGhfhIu.js 105.01 kB │ gzip: 28.34 kB │ map: 131.09 kB 2026-10-23T01:50:41.3813453Z dist/assets/objective-c-D1A_Heim.js 105.45 kB │ gzip: 23.67 kB │ map: 129.66 kB 2026-10-23T01:50:41.3813838Z dist/assets/settings.connections-DKu6xHUs.js 107.29 kB │ gzip: 36.18 kB │ map: 612.56 kB 2026-10-23T01:50:41.3814225Z dist/assets/php-BrskDoCo.js 113.12 kB │ gzip: 28.89 kB │ map: 142.15 kB 2026-10-23T01:50:41.3814605Z dist/assets/ThreadTerminalDrawer-fcN6ipUk.js 113.83 kB │ gzip: 33.63 kB │ map: 458.91 kB 2026-10-23T01:50:41.3815001Z dist/assets/getDiffFileInput-CeWO_iwl.js 124.36 kB │ gzip: 30.75 kB │ map: 375.11 kB 2026-10-23T01:50:41.3815375Z dist/assets/asciidoc-DE70LPWp.js 131.56 kB │ gzip: 9.35 kB │ map: 189.11 kB 2026-10-23T01:50:41.3815736Z dist/assets/mdx-DQZ5AkYe.js 136.14 kB │ gzip: 23.57 kB │ map: 176.72 kB 2026-10-23T01:50:41.3816112Z dist/assets/RenderErrorBoundary-Dqqipmem.js 152.95 kB │ gzip: 45.59 kB │ map: 936.14 kB 2026-10-23T01:50:41.3816515Z dist/assets/settings.providers-CGKRIEaT.js 161.81 kB │ gzip: 53.50 kB │ map: 828.10 kB 2026-10-23T01:50:41.3816909Z dist/assets/objective-cpp-BsSzOQcm.js 172.01 kB │ gzip: 31.02 kB │ map: 218.54 kB 2026-10-23T01:50:41.3817296Z dist/assets/javascript-DM2jNGak.js 174.93 kB │ gzip: 16.72 kB │ map: 236.10 kB 2026-10-23T01:50:41.3817669Z dist/assets/runtime-CEsdiL62.js 175.43 kB │ gzip: 56.12 kB │ map: 1,084.00 kB 2026-10-23T01:50:41.3818030Z dist/assets/tsx-BeGYnVHn.js 175.63 kB │ gzip: 16.71 kB │ map: 236.76 kB 2026-10-23T01:50:41.3818384Z dist/assets/runtime-DfPE_U3v.js 175.65 kB │ gzip: 50.47 kB │ map: 810.65 kB 2026-10-23T01:50:41.3818742Z dist/assets/jsx-DQaT7vKh.js 177.88 kB │ gzip: 16.80 kB │ map: 239.02 kB 2026-10-23T01:50:41.3819103Z dist/assets/typescript-BEWCPeCr.js 181.18 kB │ gzip: 16.32 kB │ map: 244.44 kB 2026-10-23T01:50:41.3819637Z dist/assets/angular-ts-B9yvU4g3.js 183.77 kB │ gzip: 16.82 kB │ map: 249.70 kB 2026-10-23T01:50:41.3820135Z dist/assets/vue-vine-DBK802jz.js 190.10 kB │ gzip: 18.11 kB │ map: 255.27 kB 2026-10-23T01:50:41.3820522Z dist/assets/fileTreeExpansion-DT0WE7Qx.js 199.35 kB │ gzip: 54.49 kB │ map: 731.80 kB 2026-10-23T01:50:41.3820916Z dist/assets/FilePreviewPanel-vsEe6Kef.js 204.19 kB │ gzip: 67.03 kB │ map: 946.02 kB 2026-10-23T01:50:41.3821316Z dist/assets/settings.appearance-DiiJ-zRn.js 214.51 kB │ gzip: 68.41 kB │ map: 897.07 kB 2026-10-23T01:50:41.3821708Z dist/assets/diffRendering-bTaYz37p.js 254.85 kB │ gzip: 81.53 kB │ map: 946.66 kB 2026-10-23T01:50:41.3822081Z dist/assets/katex-DJhrJSbw.js 258.63 kB │ gzip: 77.46 kB │ map: 969.65 kB 2026-10-23T01:50:41.3822436Z dist/assets/wolfram-DLL8P-h_.js 262.42 kB │ gzip: 77.67 kB │ map: 279.66 kB 2026-10-23T01:50:41.3822798Z dist/assets/dist-bXeYtXCl.js 332.34 kB │ gzip: 97.19 kB │ map: 1,652.92 kB 2026-10-23T01:50:41.3823179Z dist/assets/PanelLayoutControls-B_YaFFh7.js 390.30 kB │ gzip: 122.32 kB │ map: 1,820.79 kB 2026-10-23T01:50:41.3823571Z dist/assets/ChatMarkdown-DE9JD7Pt.js 439.18 kB │ gzip: 146.38 kB │ map: 1,867.30 kB 2026-10-23T01:50:41.3823967Z dist/assets/ComposerPromptEditor-BPmjW4Kf.js 519.97 kB │ gzip: 167.92 kB │ map: 2,358.45 kB 2026-10-23T01:50:41.3824375Z dist/assets/lucideIconByName-Bb8xhpe8.js 553.55 kB │ gzip: 141.19 kB │ map: 2,035.78 kB 2026-10-23T01:50:41.3824769Z dist/assets/renderScheduler-6mPHdDUL.js 608.04 kB │ gzip: 156.03 kB │ map: 3,048.60 kB 2026-10-23T01:50:41.3825147Z dist/assets/wasm-BnjxR4X6.js 622.36 kB │ gzip: 232.13 kB │ map: 622.90 kB 2026-10-23T01:50:41.3825502Z dist/assets/cpp-5pYxG9nn.js 626.16 kB │ gzip: 48.12 kB │ map: 816.28 kB 2026-10-23T01:50:41.3825875Z dist/assets/emacs-lisp-B4R74twV.js 779.92 kB │ gzip: 197.59 kB │ map: 789.85 kB 2026-10-23T01:50:41.3826243Z dist/assets/utils-C3KgYm7y.js 977.29 kB │ gzip: 302.47 kB │ map: 7,658.85 kB 2026-10-23T01:50:41.3826605Z dist/assets/main-DNZ0U8Ku.js 1,048.11 kB │ gzip: 343.14 kB │ map: 5,077.68 kB 2026-10-23T01:50:41.3826962Z dist/assets/_chat-DNE-P9Mg.js 1,306.89 kB │ gzip: 435.26 kB │ map: 6,505.86 kB 2026-10-23T01:50:41.3827327Z dist/assets/heic-to-DeD09f__.js 2,995.22 kB │ gzip: 750.97 kB │ map: 2,998.72 kB 2026-10-23T01:50:41.3827520Z 2026-10-23T01:50:41.3827668Z [plugin builtin:vite-reporter] 2026-10-23T01:50:41.3827890Z (!) Some chunks are larger than 500 kB after minification. Consider: 2026-10-23T01:50:41.3828138Z - Using dynamic import() to code-split the application 2026-10-23T01:50:41.3828560Z - Use build.rolldownOptions.output.codeSplitting to improve chunking: https://rolldown.rs/reference/OutputOptions.codeSplitting 2026-10-23T01:50:41.3829009Z - Adjust chunk size limit for this warning via build.chunkSizeWarningLimit. 2026-10-23T01:50:41.3829605Z ✓ built in 5.56s 2026-10-23T01:50:41.4631047Z 2026-10-23T01:50:41.4631859Z ~/apps/server$ node scripts/cli.ts build ⊘ cache disabled 2026-10-23T01:50:41.7319574Z [01:50:41.731] INFO (#1): [cli] Running tsdown... 2026-10-23T01:50:43.3649273Z [01:50:43.364] INFO (#1): [cli] Applied development icon overrides to dist/client 2026-10-23T01:50:43.3649792Z [01:50:43.364] INFO (#1): [cli] Bundled web app into dist/client 2026-10-23T01:50:43.3736982Z 2026-10-23T01:50:43.3737507Z ~/apps/desktop$ node scripts/build-browser-secret.mjs ⊘ cache disabled 2026-10-23T01:50:43.4888571Z 2026-10-23T01:50:43.4890246Z ~/apps/desktop$ node scripts/build-preview-annotation-css.mjs ⊘ cache disabled 2026-10-23T01:50:43.5332853Z 2026-10-23T01:50:43.5333759Z ~/apps/desktop$ vp pack ⊘ cache disabled 2026-10-23T01:50:43.6475411Z ℹ entry: src/main.ts 2026-10-23T01:50:43.6476390Z ℹ tsconfig: tsconfig.json 2026-10-23T01:50:43.6482460Z ℹ entry: src/electron/WindowsForegroundFocusWorker.ts, src/snapShot/GlobalShiftShortcutWorker.ts, src/snapShot/RegionSnapShotWorker.ts, src/snapShot/SnapShotAccessibilityWorker.ts 2026-10-23T01:50:43.6482888Z ℹ tsconfig: tsconfig.json 2026-10-23T01:50:43.6485375Z ℹ entry: src/boot.ts, src/compileCache.ts 2026-10-23T01:50:43.6485859Z ℹ tsconfig: tsconfig.json 2026-10-23T01:50:43.6489003Z ℹ entry: src/preload.ts 2026-10-23T01:50:43.6489164Z ℹ tsconfig: tsconfig.json 2026-10-23T01:50:43.6491896Z ℹ entry: src/preview-pick-preload.ts 2026-10-23T01:50:43.6492244Z ℹ tsconfig: tsconfig.json 2026-10-23T01:50:43.6495034Z ℹ entry: src/preview-pip-preload.ts 2026-10-23T01:50:43.6495244Z ℹ tsconfig: tsconfig.json 2026-10-23T01:50:43.6500268Z ℹ entry: src/mac-permission-preload.ts 2026-10-23T01:50:43.6500499Z ℹ tsconfig: tsconfig.json 2026-10-23T01:50:43.6500833Z ℹ Build start 2026-10-23T01:50:43.6672424Z ℹ dist-electron/preview-pip-preload.cjs 0.68 kB │ gzip: 0.36 kB 2026-10-23T01:50:43.6672751Z ℹ dist-electron/preview-pip-preload.cjs.map 10.93 kB │ gzip: 2.83 kB 2026-10-23T01:50:43.6673007Z ℹ 2 files, total: 11.61 kB 2026-10-23T01:50:43.6688225Z ℹ dist-electron/mac-permission-preload.cjs 0.79 kB │ gzip: 0.38 kB 2026-10-23T01:50:43.6726999Z ℹ dist-electron/mac-permission-preload.cjs.map 11.01 kB │ gzip: 2.80 kB 2026-10-23T01:50:43.6728004Z ℹ 2 files, total: 11.80 kB 2026-10-23T01:50:43.6728716Z ℹ dist-electron/compileCache.cjs 1.61 kB │ gzip: 0.75 kB 2026-10-23T01:50:43.6729331Z ℹ dist-electron/boot.cjs 0.12 kB │ gzip: 0.12 kB 2026-10-23T01:50:43.6729681Z ℹ dist-electron/compileCache.cjs.map 1.29 kB │ gzip: 0.74 kB 2026-10-23T01:50:43.6730068Z ℹ dist-electron/boot.cjs.map 0.31 kB │ gzip: 0.22 kB 2026-10-23T01:50:43.6730399Z ℹ 4 files, total: 3.33 kB 2026-10-23T01:50:43.6804172Z ✔ Build complete in 30ms 2026-10-23T01:50:43.6889584Z ✔ Build complete in 36ms 2026-10-23T01:50:43.6890784Z ℹ Hint: consider adding deps.onlyBundle option to avoid unintended bundling of dependencies, or set deps.onlyBundle: false to disable this hint. 2026-10-23T01:50:43.6891632Z See more at https://tsdown.dev/options/dependencies#deps-onlybundle 2026-10-23T01:50:43.6891958Z Detected dependencies in bundle: 2026-10-23T01:50:43.6892778Z - @clerk/electron 2026-10-23T01:50:43.6938972Z ✔ Build complete in 44ms 2026-10-23T01:50:43.7100700Z ℹ Hint: consider adding deps.onlyBundle option to avoid unintended bundling of dependencies, or set deps.onlyBundle: false to disable this hint. 2026-10-23T01:50:43.7101143Z See more at https://tsdown.dev/options/dependencies#deps-onlybundle 2026-10-23T01:50:43.7101366Z Detected dependencies in bundle: 2026-10-23T01:50:43.7101511Z - react-grab 2026-10-23T01:50:43.7190585Z ℹ dist-electron/preload.cjs 32.04 kB │ gzip: 7.35 kB 2026-10-23T01:50:43.7203694Z ℹ dist-electron/preload.cjs.map 58.74 kB │ gzip: 13.13 kB 2026-10-23T01:50:43.7214251Z ℹ 2 files, total: 90.78 kB 2026-10-23T01:50:43.7290772Z ✔ Build complete in 79ms 2026-10-23T01:50:43.7464713Z ℹ dist-electron/preview-pick-preload.cjs 136.33 kB │ gzip: 36.31 kB 2026-10-23T01:50:43.7496649Z ℹ dist-electron/preview-pick-preload.cjs.map 241.89 kB │ gzip: 62.07 kB 2026-10-23T01:50:43.7517475Z ℹ 2 files, total: 378.22 kB 2026-10-23T01:50:43.7556083Z ✔ Build complete in 105ms 2026-10-23T01:50:43.8759526Z ℹ dist-electron/snapShot/SnapShotAccessibilityWorker.cjs 6.35 kB │ gzip: 1.97 kB 2026-10-23T01:50:43.8759945Z ℹ dist-electron/snapShot/GlobalShiftShortcutWorker.cjs 5.71 kB │ gzip: 1.60 kB 2026-10-23T01:50:43.8760294Z ℹ dist-electron/electron/WindowsForegroundFocusWorker.cjs 2.32 kB │ gzip: 0.89 kB 2026-10-23T01:50:43.8760625Z ℹ dist-electron/snapShot/RegionSnapShotWorker.cjs 0.77 kB │ gzip: 0.43 kB 2026-10-23T01:50:43.8761266Z ℹ dist-electron/snapShot-DKssYtEj.cjs.map 4.58 MB 2026-10-23T01:50:43.8761649Z ℹ dist-electron/snapShot-DKssYtEj.cjs 1.19 MB 2026-10-23T01:50:43.8761955Z ℹ dist-electron/snapShot/SnapShotAccessibilityWorker.cjs.map 13.86 kB │ gzip: 4.10 kB 2026-10-23T01:50:43.8762287Z ℹ dist-electron/snapShot/GlobalShiftShortcutWorker.cjs.map 13.29 kB │ gzip: 3.40 kB 2026-10-23T01:50:43.8762617Z ℹ dist-electron/electron/WindowsForegroundFocusWorker.cjs.map 5.07 kB │ gzip: 1.69 kB 2026-10-23T01:50:43.8762945Z ℹ dist-electron/snapShot/RegionSnapShotWorker.cjs.map 1.73 kB │ gzip: 0.82 kB 2026-10-23T01:50:43.8763270Z ℹ dist-electron/rolldown-runtime-VH7oDXx4.cjs 1.13 kB │ gzip: 0.54 kB 2026-10-23T01:50:43.8763524Z ℹ 11 files, total: 5.82 MB 2026-10-23T01:50:43.8763673Z ✔ Build complete in 226ms 2026-10-23T01:50:44.2264970Z ℹ dist-electron/main.cjs 5.48 MB 2026-10-23T01:50:44.2265243Z ℹ dist-electron/main.cjs.map 13.89 MB 2026-10-23T01:50:44.2265464Z ℹ 2 files, total: 19.36 MB 2026-10-23T01:50:44.2274915Z ../../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-23T01:50:44.2276392Z ╭─[ ../../node_modules/.pnpm/dbus-next@0.10.2_patch_hash=cfff57561b0ee59b5addb3b2e6c6f20906e967507a530ab67e8db8108e520ba4/node_modules/dbus-next/lib/address-x11.js:7:23 ] 2026-10-23T01:50:44.2277231Z │ 2026-10-23T01:50:44.2278345Z 7 │   const x11 = require('x11'); 2026-10-23T01:50:44.2279153Z  │ ──┬── 2026-10-23T01:50:44.2279433Z  │ ╰──── Module not found, treating it as an external dependency 2026-10-23T01:50:44.2279665Z ───╯ 2026-10-23T01:50:44.2279763Z 2026-10-23T01:50:44.2280261Z ../../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-23T01:50:44.2280984Z ╭─[ ../../node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/ConfigProvider.js:725:8 ] 2026-10-23T01:50:44.2281291Z │ 2026-10-23T01:50:44.2281706Z 725 │     ...import.meta?.env 2026-10-23T01:50:44.2282222Z  │ ─────┬───── 2026-10-23T01:50:44.2282835Z  │ ╰─────── 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-23T01:50:44.2283729Z ─────╯ 2026-10-23T01:50:44.2283836Z 2026-10-23T01:50:44.2283967Z ✔ Build complete in 577ms 2026-10-23T01:50:44.2548038Z 2026-10-23T01:50:44.2550043Z --- 2026-10-23T01:50:44.2550416Z vp run: 5/5 successful. (Run `vp run --last-details` for full details) 2026-10-23T01:50:44.2735524Z ##[group]Run node apps/desktop/scripts/verify-preload-bundle.mjs 2026-10-23T01:50:44.2735834Z node apps/desktop/scripts/verify-preload-bundle.mjs 2026-10-23T01:50:44.2760951Z shell: /usr/bin/bash -e {0} 2026-10-23T01:50:44.2761377Z env: 2026-10-23T01:50:44.2761568Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 172 2026-10-23T01:50:44.2761787Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 465 2026-10-23T01:50:44.2761949Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-23T01:50:44.2762123Z ##[endgroup] 2026-10-23T01:50:44.3252977Z ##[group]Run until test -s "$RUNNER_TEMP/typecheck-status"; do sleep 1; done 2026-10-23T01:50:44.3253485Z until test -s "$RUNNER_TEMP/typecheck-status"; do sleep 1; done 2026-10-23T01:50:44.3253810Z cat "$RUNNER_TEMP/typecheck.log" 2026-10-23T01:50:44.3254110Z exit "$(cat "$RUNNER_TEMP/typecheck-status")" 2026-10-23T01:50:44.3276270Z shell: /usr/bin/bash -e {0} 2026-10-23T01:50:44.3276417Z env: 2026-10-23T01:50:44.3276543Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 172 2026-10-23T01:50:44.3276736Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 465 2026-10-23T01:50:44.3276891Z GITHUB_REPO_NAME: pingdotgg/t3code 2026-10-23T01:50:44.3277073Z ##[endgroup] 2026-10-23T01:50:44.3313542Z ~/packages/effect-acp$ tsc --noEmit 2026-10-23T01:50:44.3313740Z ~/packages/effect-codex-app-server$ tsc --noEmit 2026-10-23T01:50:44.3313921Z ~/oxlint-plugin-t3code$ tsc --noEmit 2026-10-23T01:50:44.3314074Z ~/packages/contracts$ tsc --noEmit 2026-10-23T01:50:44.3314168Z 2026-10-23T01:50:44.3314560Z 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-23T01:50:44.3314964Z 2026-10-23T01:50:44.3315031Z 40 error: Schema.Struct({ 2026-10-23T01:50:44.3315162Z ~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3315292Z 41 _tag: Schema.Literal("Cause"), 2026-10-23T01:50:44.3315503Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3315818Z 42 data: Schema.Tuple([Schema.Struct({ _tag: Schema.Literal("Die") })]), 2026-10-23T01:50:44.3316182Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3316466Z 43 }), 2026-10-23T01:50:44.3316627Z ~~~~ 2026-10-23T01:50:44.3316722Z 2026-10-23T01:50:44.3317288Z 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-23T01:50:44.3317923Z 2026-10-23T01:50:44.3318083Z 42 data: Schema.Tuple([Schema.Struct({ _tag: Schema.Literal("Die") })]), 2026-10-23T01:50:44.3318396Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3318521Z 2026-10-23T01:50:44.3318814Z 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-23T01:50:44.3319144Z 2026-10-23T01:50:44.3319211Z 422 handleInitialize: (handler) => 2026-10-23T01:50:44.3319355Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3319440Z 2026-10-23T01:50:44.3319730Z 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-23T01:50:44.3320118Z 2026-10-23T01:50:44.3320179Z 427 handleAuthenticate: (handler) => 2026-10-23T01:50:44.3320333Z ~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3320411Z 2026-10-23T01:50:44.3320684Z 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-23T01:50:44.3321007Z 2026-10-23T01:50:44.3321066Z 432 handleLogout: (handler) => 2026-10-23T01:50:44.3321200Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3321271Z 2026-10-23T01:50:44.3321590Z 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-23T01:50:44.3322104Z 2026-10-23T01:50:44.3322162Z 437 handleCreateSession: (handler) => 2026-10-23T01:50:44.3322479Z ~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3322564Z 2026-10-23T01:50:44.3322944Z 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-23T01:50:44.3323267Z 2026-10-23T01:50:44.3323327Z 442 handleLoadSession: (handler) => 2026-10-23T01:50:44.3323474Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3323550Z 2026-10-23T01:50:44.3323832Z 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-23T01:50:44.3324155Z 2026-10-23T01:50:44.3324215Z 447 handleListSessions: (handler) => 2026-10-23T01:50:44.3324358Z ~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3324436Z 2026-10-23T01:50:44.3324713Z 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-23T01:50:44.3325039Z 2026-10-23T01:50:44.3325097Z 452 handleForkSession: (handler) => 2026-10-23T01:50:44.3325241Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3325312Z 2026-10-23T01:50:44.3325597Z 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-23T01:50:44.3325926Z 2026-10-23T01:50:44.3325992Z 457 handleResumeSession: (handler) => 2026-10-23T01:50:44.3326141Z ~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3326222Z 2026-10-23T01:50:44.3326500Z 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-23T01:50:44.3326824Z 2026-10-23T01:50:44.3326882Z 462 handleCloseSession: (handler) => 2026-10-23T01:50:44.3327028Z ~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3327100Z 2026-10-23T01:50:44.3327386Z 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-23T01:50:44.3327718Z 2026-10-23T01:50:44.3327780Z 467 handleDeleteSession: (handler) => 2026-10-23T01:50:44.3327923Z ~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3328000Z 2026-10-23T01:50:44.3328287Z 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-23T01:50:44.3328611Z 2026-10-23T01:50:44.3328671Z 472 handleListProviders: (handler) => 2026-10-23T01:50:44.3328825Z ~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3328903Z 2026-10-23T01:50:44.3329179Z 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-23T01:50:44.3329504Z 2026-10-23T01:50:44.3329565Z 477 handleSetProvider: (handler) => 2026-10-23T01:50:44.3329708Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3329784Z 2026-10-23T01:50:44.3330103Z 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-23T01:50:44.3330429Z 2026-10-23T01:50:44.3330494Z 482 handleDisableProvider: (handler) => 2026-10-23T01:50:44.3330657Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3330737Z 2026-10-23T01:50:44.3331173Z 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-23T01:50:44.3331646Z 2026-10-23T01:50:44.3331721Z 487 handleSetSessionConfigOption: (handler) => 2026-10-23T01:50:44.3331889Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3332077Z 2026-10-23T01:50:44.3332351Z 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-23T01:50:44.3332666Z 2026-10-23T01:50:44.3332721Z 492 handlePrompt: (handler) => 2026-10-23T01:50:44.3332865Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3332933Z 2026-10-23T01:50:44.3333210Z 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-23T01:50:44.3333527Z 2026-10-23T01:50:44.3333592Z 497 handleCancel: (handler) => 2026-10-23T01:50:44.3333728Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3333803Z 2026-10-23T01:50:44.3334100Z 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-23T01:50:44.3334439Z 2026-10-23T01:50:44.3334503Z 502 handleUnknownExtRequest: (handler) => 2026-10-23T01:50:44.3334667Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3334750Z 2026-10-23T01:50:44.3335053Z 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-23T01:50:44.3335401Z 2026-10-23T01:50:44.3335473Z 507 handleUnknownExtNotification: (handler) => 2026-10-23T01:50:44.3335631Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3335721Z 2026-10-23T01:50:44.3336030Z 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-23T01:50:44.3336383Z 2026-10-23T01:50:44.3336459Z 512 handleExtRequest: (method, payload, handler) => 2026-10-23T01:50:44.3336629Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3336706Z 2026-10-23T01:50:44.3337015Z 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-23T01:50:44.3337372Z 2026-10-23T01:50:44.3337457Z 517 handleExtNotification: (method, payload, handler) => 2026-10-23T01:50:44.3337633Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3337802Z 2026-10-23T01:50:44.3338153Z 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-23T01:50:44.3338540Z 2026-10-23T01:50:44.3338589Z 56 error: Schema.Struct({ 2026-10-23T01:50:44.3338720Z ~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3338853Z 57 _tag: Schema.Literal("Cause"), 2026-10-23T01:50:44.3339001Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3339190Z 58 data: Schema.Tuple([Schema.Struct({ _tag: Schema.Literal("Die") })]), 2026-10-23T01:50:44.3339416Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3339578Z 59 }), 2026-10-23T01:50:44.3339681Z ~~~~ 2026-10-23T01:50:44.3339738Z 2026-10-23T01:50:44.3340178Z 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-23T01:50:44.3340553Z 2026-10-23T01:50:44.3340659Z 58 data: Schema.Tuple([Schema.Struct({ _tag: Schema.Literal("Die") })]), 2026-10-23T01:50:44.3340945Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3341063Z 2026-10-23T01:50:44.3341388Z 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-23T01:50:44.3341691Z 2026-10-23T01:50:44.3341758Z 1071 yield* Effect.all( 2026-10-23T01:50:44.3341905Z ~~~~~~~~~~ 2026-10-23T01:50:44.3341987Z 2026-10-23T01:50:44.3342303Z src/client.ts:1244:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleRequestPermission")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3342651Z 2026-10-23T01:50:44.3342720Z 1244 handleRequestPermission: (handler) => 2026-10-23T01:50:44.3342878Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3342963Z 2026-10-23T01:50:44.3343261Z src/client.ts:1249:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleElicitation")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3343592Z 2026-10-23T01:50:44.3343652Z 1249 handleElicitation: (handler) => 2026-10-23T01:50:44.3343799Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3343873Z 2026-10-23T01:50:44.3344160Z src/client.ts:1254:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleMcpConnect")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3344494Z 2026-10-23T01:50:44.3344553Z 1254 handleMcpConnect: (handler) => 2026-10-23T01:50:44.3344694Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3344771Z 2026-10-23T01:50:44.3345056Z src/client.ts:1258:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleMcpMessage")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3345390Z 2026-10-23T01:50:44.3345443Z 1258 handleMcpMessage: (handler) => 2026-10-23T01:50:44.3345586Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3345658Z 2026-10-23T01:50:44.3345954Z src/client.ts:1262:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleMcpDisconnect")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3346293Z 2026-10-23T01:50:44.3346356Z 1262 handleMcpDisconnect: (handler) => 2026-10-23T01:50:44.3346507Z ~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3346591Z 2026-10-23T01:50:44.3346888Z src/client.ts:1266:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleMcpNotification")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3347230Z 2026-10-23T01:50:44.3347293Z 1266 handleMcpNotification: (handler) => 2026-10-23T01:50:44.3347455Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3347537Z 2026-10-23T01:50:44.3347828Z src/client.ts:1275:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleReadTextFile")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3348163Z 2026-10-23T01:50:44.3348224Z 1275 handleReadTextFile: (handler) => 2026-10-23T01:50:44.3348371Z ~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3348450Z 2026-10-23T01:50:44.3348741Z src/client.ts:1279:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleWriteTextFile")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3349080Z 2026-10-23T01:50:44.3349139Z 1279 handleWriteTextFile: (handler) => 2026-10-23T01:50:44.3349294Z ~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3349373Z 2026-10-23T01:50:44.3349667Z src/client.ts:1283:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleCreateTerminal")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3350402Z 2026-10-23T01:50:44.3350484Z 1283 handleCreateTerminal: (handler) => 2026-10-23T01:50:44.3350647Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3350737Z 2026-10-23T01:50:44.3351135Z src/client.ts:1287:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleTerminalOutput")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3351480Z 2026-10-23T01:50:44.3351559Z 1287 handleTerminalOutput: (handler) => 2026-10-23T01:50:44.3351716Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3351800Z 2026-10-23T01:50:44.3352119Z src/client.ts:1291:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleTerminalWaitForExit")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3352491Z 2026-10-23T01:50:44.3352567Z 1291 handleTerminalWaitForExit: (handler) => 2026-10-23T01:50:44.3352743Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3352845Z 2026-10-23T01:50:44.3353162Z src/client.ts:1295:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleTerminalKill")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3353515Z 2026-10-23T01:50:44.3353575Z 1295 handleTerminalKill: (handler) => 2026-10-23T01:50:44.3353730Z ~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3353815Z 2026-10-23T01:50:44.3354127Z src/client.ts:1299:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleTerminalRelease")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3354482Z 2026-10-23T01:50:44.3354555Z 1299 handleTerminalRelease: (handler) => 2026-10-23T01:50:44.3354713Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3354802Z 2026-10-23T01:50:44.3355109Z src/client.ts:1303:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleSessionUpdate")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3355466Z 2026-10-23T01:50:44.3355527Z 1303 handleSessionUpdate: (handler) => 2026-10-23T01:50:44.3355689Z ~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3355775Z 2026-10-23T01:50:44.3356088Z src/client.ts:1308:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleElicitationComplete")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3356450Z 2026-10-23T01:50:44.3356522Z 1308 handleElicitationComplete: (handler) => 2026-10-23T01:50:44.3356688Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3356779Z 2026-10-23T01:50:44.3357091Z src/client.ts:1313:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleUnknownExtRequest")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3357451Z 2026-10-23T01:50:44.3357521Z 1313 handleUnknownExtRequest: (handler) => 2026-10-23T01:50:44.3357681Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3357769Z 2026-10-23T01:50:44.3358128Z src/client.ts:1318:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleUnknownExtNotification")((handler) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3358496Z 2026-10-23T01:50:44.3358575Z 1318 handleUnknownExtNotification: (handler) => 2026-10-23T01:50:44.3358751Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3358846Z 2026-10-23T01:50:44.3359178Z src/client.ts:1323:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleExtRequest")((method, payload, handler) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3359550Z 2026-10-23T01:50:44.3359632Z 1323 handleExtRequest: (method, payload, handler) => 2026-10-23T01:50:44.3359930Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3360008Z 2026-10-23T01:50:44.3360416Z src/client.ts:1328:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AcpClient.handleExtNotification")((method, payload, handler) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3360804Z 2026-10-23T01:50:44.3360900Z 1328 handleExtNotification: (method, payload, handler) => 2026-10-23T01:50:44.3361084Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3361165Z 2026-10-23T01:50:44.3361608Z 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-23T01:50:44.3362097Z 2026-10-23T01:50:44.3362192Z 500 const response = yield* Schema.decodeUnknownEffect( 2026-10-23T01:50:44.3362405Z ~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3362525Z 2026-10-23T01:50:44.3362832Z src/protocol.ts:875:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("RpcClient.Protocol.run")((_clientId, f) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3363182Z 2026-10-23T01:50:44.3363239Z 875 run: (_clientId, f) => 2026-10-23T01:50:44.3363379Z ~~~ 2026-10-23T01:50:44.3363438Z 2026-10-23T01:50:44.3363745Z src/protocol.ts:880:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("RpcClient.Protocol.send")((_clientId, request) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3364098Z 2026-10-23T01:50:44.3364157Z 880 send: (_clientId, request) => 2026-10-23T01:50:44.3364303Z ~~~~ 2026-10-23T01:50:44.3364369Z 2026-10-23T01:50:44.3364655Z src/protocol.ts:898:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("RpcServer.Protocol.run")((f) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3364988Z 2026-10-23T01:50:44.3365035Z 898 run: (f) => 2026-10-23T01:50:44.3365158Z ~~~ 2026-10-23T01:50:44.3365218Z 2026-10-23T01:50:44.3365528Z src/protocol.ts:904:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("RpcServer.Protocol.send")((_clientId, response) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3365878Z 2026-10-23T01:50:44.3365937Z 904 send: (_clientId, response) => 2026-10-23T01:50:44.3366082Z ~~~~ 2026-10-23T01:50:44.3366147Z 2026-10-23T01:50:44.3366435Z src/protocol.ts:913:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("RpcServer.Protocol.end")((_clientId) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3366770Z 2026-10-23T01:50:44.3366821Z 913 end: (_clientId) => 2026-10-23T01:50:44.3366960Z ~~~ 2026-10-23T01:50:44.3367023Z 2026-10-23T01:50:44.3367034Z 2026-10-23T01:50:44.3367435Z 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-23T01:50:44.3367891Z 2026-10-23T01:50:44.3368037Z 17 expect(Schema.decodeUnknownSync(AuthEnvironmentScopes)(["review:write"])).toEqual([ 2026-10-23T01:50:44.3368279Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3368377Z 2026-10-23T01:50:44.3368380Z 2026-10-23T01:50:44.3368443Z ~/packages/shared$ tsc --noEmit 2026-10-23T01:50:44.3368819Z src/HostProcess.ts:91:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("defaultValue")(function*() { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3369159Z 2026-10-23T01:50:44.3369219Z 91 defaultValue: () => 2026-10-23T01:50:44.3369345Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3369507Z 2026-10-23T01:50:44.3369780Z 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-23T01:50:44.3370146Z 2026-10-23T01:50:44.3370195Z 121 onNone: () => 2026-10-23T01:50:44.3370374Z ~~~~~~ 2026-10-23T01:50:44.3370442Z 2026-10-23T01:50:44.3370732Z src/nodeSqliteClient.ts:105:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("checkNodeSqliteCompat")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3371259Z 2026-10-23T01:50:44.3371325Z 105 const checkNodeSqliteCompat = () => { 2026-10-23T01:50:44.3371482Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3371574Z 2026-10-23T01:50:44.3371863Z src/nodeSqliteClient.ts:433:31 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-23T01:50:44.3372192Z 2026-10-23T01:50:44.3372274Z 433 if (unavailable) return Effect.succeed(undefined); 2026-10-23T01:50:44.3372470Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3372581Z 2026-10-23T01:50:44.3373014Z src/nodeSqliteClient.ts:440: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-23T01:50:44.3373475Z 2026-10-23T01:50:44.3373586Z 440 return Effect.suspend((): Effect.Effect => { 2026-10-23T01:50:44.3373779Z ~~~~~~ 2026-10-23T01:50:44.3373848Z 2026-10-23T01:50:44.3374128Z src/nodeSqliteClient.ts:441:29 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-23T01:50:44.3374449Z 2026-10-23T01:50:44.3374534Z 441 if (unavailable) return Effect.succeed(undefined); 2026-10-23T01:50:44.3374719Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3374828Z 2026-10-23T01:50:44.3375110Z src/nodeSqliteClient.ts:462:13 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-23T01:50:44.3375428Z 2026-10-23T01:50:44.3375512Z 462 ? Effect.succeed(undefined) 2026-10-23T01:50:44.3375673Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3375766Z 2026-10-23T01:50:44.3376162Z src/nodeSqliteClient.ts:627: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-23T01:50:44.3376603Z 2026-10-23T01:50:44.3376650Z 627 try { 2026-10-23T01:50:44.3376755Z ~~~~~ 2026-10-23T01:50:44.3376922Z 628 worker = new NodeWorkerThreads.Worker(checkpointWorkerSource, { 2026-10-23T01:50:44.3377159Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3377322Z ... 2026-10-23T01:50:44.3377441Z 639 return undefined; 2026-10-23T01:50:44.3377572Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3377696Z 640 } 2026-10-23T01:50:44.3377803Z ~~~ 2026-10-23T01:50:44.3377865Z 2026-10-23T01:50:44.3378090Z src/symlink.ts:28:7 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-23T01:50:44.3378355Z 2026-10-23T01:50:44.3378421Z 28 Effect.map(Option.some), 2026-10-23T01:50:44.3378566Z ~~~~~~~~~~ 2026-10-23T01:50:44.3378634Z 2026-10-23T01:50:44.3378636Z 2026-10-23T01:50:44.3378694Z ~/apps/marketing$ astro check 2026-10-23T01:50:44.3378860Z ~/packages/source-control-core$ tsc --noEmit 2026-10-23T01:50:44.3379035Z ~/packages/tailscale$ tsc --noEmit 2026-10-23T01:50:44.3379475Z 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-23T01:50:44.3380015Z 2026-10-23T01:50:44.3380087Z 243 handleServerRequest: (method, handler) => 2026-10-23T01:50:44.3380323Z ~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3380410Z 2026-10-23T01:50:44.3380761Z 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-23T01:50:44.3381156Z 2026-10-23T01:50:44.3381239Z 247 handleServerNotification: (method, handler) => 2026-10-23T01:50:44.3381413Z ~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3381502Z 2026-10-23T01:50:44.3381844Z 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-23T01:50:44.3382224Z 2026-10-23T01:50:44.3382301Z 253 handleUnknownServerRequest: (handler) => 2026-10-23T01:50:44.3382468Z ~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3382559Z 2026-10-23T01:50:44.3382905Z 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-23T01:50:44.3383302Z 2026-10-23T01:50:44.3383384Z 257 handleUnknownServerNotification: (handler) => 2026-10-23T01:50:44.3383560Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3383656Z 2026-10-23T01:50:44.3383658Z 2026-10-23T01:50:44.3383716Z ~/packages/ssh$ tsc --noEmit 2026-10-23T01:50:44.3383801Z 2026-10-23T01:50:44.3383866Z ~/packages/provider-core$ tsc --noEmit 2026-10-23T01:50:44.3383970Z 2026-10-23T01:50:44.3384023Z ~/scripts$ tsc --noEmit 2026-10-23T01:50:44.3384381Z 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-23T01:50:44.3384704Z 2026-10-23T01:50:44.3384772Z 51 request: () => Effect.succeed(null), 2026-10-23T01:50:44.3384923Z ~~~~~~~ 2026-10-23T01:50:44.3384994Z 2026-10-23T01:50:44.3385252Z 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-23T01:50:44.3385554Z 2026-10-23T01:50:44.3385607Z 311 onNone: () => 2026-10-23T01:50:44.3385740Z ~~~~~~ 2026-10-23T01:50:44.3385808Z 2026-10-23T01:50:44.3385810Z 2026-10-23T01:50:44.3385884Z ~/packages/source-control-testing$ tsc --noEmit 2026-10-23T01:50:44.3386328Z 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-23T01:50:44.3386698Z 2026-10-23T01:50:44.3386848Z 95 read: (threadId) => Ref.get(sessions).pipe(Effect.map((current) => current.get(threadId))), 2026-10-23T01:50:44.3387076Z ~~~~ 2026-10-23T01:50:44.3387140Z 2026-10-23T01:50:44.3387469Z 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-23T01:50:44.3387839Z 2026-10-23T01:50:44.3387893Z 96 clear: (threadId) => 2026-10-23T01:50:44.3388024Z ~~~~~ 2026-10-23T01:50:44.3388098Z 2026-10-23T01:50:44.3388481Z 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-23T01:50:44.3388984Z 2026-10-23T01:50:44.3389068Z 110 recordHtmlRender: (threadId, input, reference) => 2026-10-23T01:50:44.3389252Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3389330Z 2026-10-23T01:50:44.3389756Z 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-23T01:50:44.3390307Z 2026-10-23T01:50:44.3390388Z 130 takeHtmlRender: (threadId, input, reported) => 2026-10-23T01:50:44.3390561Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3390635Z 2026-10-23T01:50:44.3391001Z src/server/ProviderContinuationRequests.ts:55:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderContinuationRequests.offer")((request) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3391413Z 2026-10-23T01:50:44.3391490Z 55 offer: (request: ProviderContinuationRequest) => 2026-10-23T01:50:44.3391668Z ~~~~~ 2026-10-23T01:50:44.3391731Z 2026-10-23T01:50:44.3392082Z 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-23T01:50:44.3392484Z 2026-10-23T01:50:44.3392539Z 53 invalidate: (key) => 2026-10-23T01:50:44.3392671Z ~~~~~~~~~~ 2026-10-23T01:50:44.3392740Z 2026-10-23T01:50:44.3393035Z src/server/snapshotProbe.test.ts:139:9 - suggestion TS377124: `Effect.provideService` provides this inline single-service layer directly. effect(provideLayerSucceedToProvideService) 2026-10-23T01:50:44.3393369Z 2026-10-23T01:50:44.3393511Z 139 Effect.provide(Layer.succeed(ChildProcessSpawner.ChildProcessSpawner, spawner)), 2026-10-23T01:50:44.3393750Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3393831Z 2026-10-23T01:50:44.3393833Z 2026-10-23T01:50:44.3393906Z ~/packages/source-control-bitbucket$ tsc --noEmit 2026-10-23T01:50:44.3394032Z 2026-10-23T01:50:44.3394102Z ~/packages/provider-acp$ tsc --noEmit 2026-10-23T01:50:44.3394257Z 01:50:29 [types] Generated 200ms 2026-10-23T01:50:44.3394512Z 01:50:29 [check] Getting diagnostics for Astro files in /home/runner/_work/t3code/t3code/apps/marketing... 2026-10-23T01:50:44.3395038Z src/server/BitbucketApi.ts:965:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketApi.listPullRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3395410Z 2026-10-23T01:50:44.3395470Z 965 listPullRequests: (input) => 2026-10-23T01:50:44.3395616Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3395693Z 2026-10-23T01:50:44.3396012Z src/server/BitbucketApi.ts:992:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketApi.getPullRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3396379Z 2026-10-23T01:50:44.3396437Z 992 getPullRequest: (input) => 2026-10-23T01:50:44.3396583Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3396655Z 2026-10-23T01:50:44.3396990Z src/server/BitbucketApi.ts:994:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketApi.getRepositoryCloneUrls")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3397371Z 2026-10-23T01:50:44.3397438Z 994 getRepositoryCloneUrls: (input) => 2026-10-23T01:50:44.3397595Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3397682Z 2026-10-23T01:50:44.3398005Z src/server/BitbucketApi.ts:996:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketApi.createRepository")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3398372Z 2026-10-23T01:50:44.3398430Z 996 createRepository: (input) => 2026-10-23T01:50:44.3398594Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3398671Z 2026-10-23T01:50:44.3399052Z src/server/BitbucketApi.ts:1061:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketApi.getDefaultBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3399423Z 2026-10-23T01:50:44.3399534Z 1061 getDefaultBranch: (input) => 2026-10-23T01:50:44.3399684Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3399765Z 2026-10-23T01:50:44.3400144Z src/server/BitbucketPullRequestApi.ts:547:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.getViewer")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3400533Z 2026-10-23T01:50:44.3400585Z 547 getViewer: () => 2026-10-23T01:50:44.3400713Z ~~~~~~~~~ 2026-10-23T01:50:44.3400783Z 2026-10-23T01:50:44.3401150Z src/server/BitbucketPullRequestApi.ts:562:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.listPullRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3401570Z 2026-10-23T01:50:44.3401632Z 562 listPullRequests: (input) => 2026-10-23T01:50:44.3401778Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3401856Z 2026-10-23T01:50:44.3402219Z src/server/BitbucketPullRequestApi.ts:584:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.getPullRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3402635Z 2026-10-23T01:50:44.3402693Z 584 getPullRequest: (input) => 2026-10-23T01:50:44.3402842Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3402921Z 2026-10-23T01:50:44.3403308Z src/server/BitbucketPullRequestApi.ts:599:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.getRepositoryPermission")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3403742Z 2026-10-23T01:50:44.3403814Z 599 getRepositoryPermission: (input) => 2026-10-23T01:50:44.3403982Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3404074Z 2026-10-23T01:50:44.3404450Z src/server/BitbucketPullRequestApi.ts:612:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.getFileRevisions")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3404866Z 2026-10-23T01:50:44.3404929Z 612 getFileRevisions: (input) => 2026-10-23T01:50:44.3405074Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3405152Z 2026-10-23T01:50:44.3405510Z src/server/BitbucketPullRequestApi.ts:629:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.getDiffStat")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3405911Z 2026-10-23T01:50:44.3405971Z 629 getDiffStat: (input) => 2026-10-23T01:50:44.3406115Z ~~~~~~~~~~~ 2026-10-23T01:50:44.3406185Z 2026-10-23T01:50:44.3406554Z src/server/BitbucketPullRequestApi.ts:637:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.getMergeability")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3406973Z 2026-10-23T01:50:44.3407036Z 637 getMergeability: (input) => 2026-10-23T01:50:44.3407186Z ~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3407266Z 2026-10-23T01:50:44.3407626Z src/server/BitbucketPullRequestApi.ts:646:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.listComments")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3408034Z 2026-10-23T01:50:44.3408101Z 646 listComments: (input) => 2026-10-23T01:50:44.3424386Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3424473Z 2026-10-23T01:50:44.3424859Z src/server/BitbucketPullRequestApi.ts:656:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.listCommits")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3425456Z 2026-10-23T01:50:44.3425515Z 656 listCommits: (input) => 2026-10-23T01:50:44.3425651Z ~~~~~~~~~~~ 2026-10-23T01:50:44.3425722Z 2026-10-23T01:50:44.3426161Z src/server/BitbucketPullRequestApi.ts:667:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.listChecks")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3426575Z 2026-10-23T01:50:44.3426630Z 667 listChecks: (input) => 2026-10-23T01:50:44.3426764Z ~~~~~~~~~~ 2026-10-23T01:50:44.3426832Z 2026-10-23T01:50:44.3427223Z src/server/BitbucketPullRequestApi.ts:678:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.listReviewerCandidates")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3427659Z 2026-10-23T01:50:44.3427726Z 678 listReviewerCandidates: (input) => 2026-10-23T01:50:44.3427884Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3427968Z 2026-10-23T01:50:44.3428351Z src/server/BitbucketPullRequestApi.ts:712:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.setReviewerRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3428778Z 2026-10-23T01:50:44.3428837Z 712 setReviewerRequest: (input) => 2026-10-23T01:50:44.3428988Z ~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3429066Z 2026-10-23T01:50:44.3429431Z src/server/BitbucketPullRequestApi.ts:739:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.runAction")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3429867Z 2026-10-23T01:50:44.3429922Z 739 runAction: (input) => 2026-10-23T01:50:44.3430061Z ~~~~~~~~~ 2026-10-23T01:50:44.3430129Z 2026-10-23T01:50:44.3430512Z src/server/BitbucketPullRequestApi.ts:756:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.updateChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3430944Z 2026-10-23T01:50:44.3431007Z 756 updateChangeRequest: (input) => 2026-10-23T01:50:44.3431159Z ~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3431241Z 2026-10-23T01:50:44.3431599Z src/server/BitbucketPullRequestApi.ts:774:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.comment")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3432005Z 2026-10-23T01:50:44.3432061Z 774 comment: (input) => 2026-10-23T01:50:44.3432190Z ~~~~~~~ 2026-10-23T01:50:44.3432256Z 2026-10-23T01:50:44.3432620Z src/server/BitbucketPullRequestApi.ts:785:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.updateComment")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3433036Z 2026-10-23T01:50:44.3433092Z 785 updateComment: (input) => 2026-10-23T01:50:44.3433232Z ~~~~~~~~~~~~~ 2026-10-23T01:50:44.3433307Z 2026-10-23T01:50:44.3433665Z src/server/BitbucketPullRequestApi.ts:798:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.submitReview")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3434066Z 2026-10-23T01:50:44.3434125Z 798 submitReview: (input) => 2026-10-23T01:50:44.3434262Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3434335Z 2026-10-23T01:50:44.3434696Z src/server/BitbucketPullRequestApi.ts:838:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.replyToComment")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3435102Z 2026-10-23T01:50:44.3435161Z 838 replyToComment: (input) => 2026-10-23T01:50:44.3435363Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3435437Z 2026-10-23T01:50:44.3435867Z src/server/BitbucketPullRequestApi.ts:852:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("BitbucketPullRequestApi.setCommentResolution")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3436283Z 2026-10-23T01:50:44.3436350Z 852 setCommentResolution: (input) => 2026-10-23T01:50:44.3436507Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3436587Z 2026-10-23T01:50:44.3437022Z src/server/BitbucketSourceControlProvider.ts:40:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.listChangeRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3437494Z 2026-10-23T01:50:44.3437557Z 40 listChangeRequests: (input) => { 2026-10-23T01:50:44.3437706Z ~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3437786Z 2026-10-23T01:50:44.3438212Z src/server/BitbucketSourceControlProvider.ts:68:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3438683Z 2026-10-23T01:50:44.3438742Z 68 getChangeRequest: (input) => 2026-10-23T01:50:44.3438888Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3438960Z 2026-10-23T01:50:44.3439389Z src/server/BitbucketSourceControlProvider.ts:85:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.createChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3439872Z 2026-10-23T01:50:44.3439957Z 85 createChangeRequest: (input) => { 2026-10-23T01:50:44.3440112Z ~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3440191Z 2026-10-23T01:50:44.3440639Z src/server/BitbucketSourceControlProvider.ts:114:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getRepositoryCloneUrls")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3441121Z 2026-10-23T01:50:44.3441185Z 114 getRepositoryCloneUrls: (input) => 2026-10-23T01:50:44.3441344Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3441428Z 2026-10-23T01:50:44.3441850Z src/server/BitbucketSourceControlProvider.ts:130:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.createRepository")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3442317Z 2026-10-23T01:50:44.3442377Z 130 createRepository: (input) => 2026-10-23T01:50:44.3442521Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3442597Z 2026-10-23T01:50:44.3443025Z src/server/BitbucketSourceControlProvider.ts:146:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getDefaultBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3443499Z 2026-10-23T01:50:44.3443557Z 146 getDefaultBranch: (input) => 2026-10-23T01:50:44.3443698Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3443778Z 2026-10-23T01:50:44.3444210Z src/server/BitbucketSourceControlProvider.ts:164:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.checkoutChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3444694Z 2026-10-23T01:50:44.3444761Z 164 checkoutChangeRequest: (input) => 2026-10-23T01:50:44.3444923Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3445004Z 2026-10-23T01:50:44.3445006Z 2026-10-23T01:50:44.3445080Z ~/packages/provider-testing$ tsc --noEmit 2026-10-23T01:50:44.3445187Z 2026-10-23T01:50:44.3445264Z ~/packages/source-control-gitlab$ tsc --noEmit 2026-10-23T01:50:44.3445878Z src/server/AcpSessionRuntime.ts:501:7 - suggestion TS377012: This Effect generator contains `try/catch`; in this context, error handling is expressed with Effect APIs such as Effect.try, Effect.tryPromise, Effect.catch, Effect.catchTag). effect(tryCatchInEffectGen) 2026-10-23T01:50:44.3446383Z 2026-10-23T01:50:44.3446431Z 501 try { 2026-10-23T01:50:44.3446546Z ~~~~~ 2026-10-23T01:50:44.3446663Z 502 lease.kill(); 2026-10-23T01:50:44.3446790Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3446910Z ... 2026-10-23T01:50:44.3447021Z 508 continue; 2026-10-23T01:50:44.3447139Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3447262Z 509 } 2026-10-23T01:50:44.3447367Z ~~~~~~~ 2026-10-23T01:50:44.3447430Z 2026-10-23T01:50:44.3447844Z 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-23T01:50:44.3448300Z 2026-10-23T01:50:44.3448347Z 511 try { 2026-10-23T01:50:44.3448456Z ~~~~~ 2026-10-23T01:50:44.3448583Z 512 populated = lease.populated(); 2026-10-23T01:50:44.3448744Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3448890Z ... 2026-10-23T01:50:44.3449027Z 520 return yield* failure("read state for", cause); 2026-10-23T01:50:44.3449228Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3449385Z 521 } 2026-10-23T01:50:44.3449493Z ~~~~~~~ 2026-10-23T01:50:44.3449551Z 2026-10-23T01:50:44.3449991Z src/server/AcpSessionRuntime.ts:527:7 - suggestion TS377012: This Effect generator contains `try/catch`; in this context, error handling is expressed with Effect APIs such as Effect.try, Effect.tryPromise, Effect.catch, Effect.catchTag). effect(tryCatchInEffectGen) 2026-10-23T01:50:44.3450447Z 2026-10-23T01:50:44.3450495Z 527 try { 2026-10-23T01:50:44.3450607Z ~~~~~ 2026-10-23T01:50:44.3450726Z 528 lease.remove(); 2026-10-23T01:50:44.3450855Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3451118Z ... 2026-10-23T01:50:44.3451238Z 536 lastRemovalFailure = { cause }; 2026-10-23T01:50:44.3451394Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3451540Z 537 } 2026-10-23T01:50:44.3451644Z ~~~~~~~ 2026-10-23T01:50:44.3451706Z 2026-10-23T01:50:44.3452065Z src/server/AcpSessionRuntime.ts:1977: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-23T01:50:44.3452466Z 2026-10-23T01:50:44.3452531Z 1977 Option.match(result, { 2026-10-23T01:50:44.3452688Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3452775Z 2026-10-23T01:50:44.3453121Z src/server/AcpSessionRuntime.ts:2024:7 - suggestion TS377132: `Effect.andThen` expresses this sequencing more directly than `Effect.flatMap` with a zero-parameter callback. effect(flatMapIgnoredParamToAndThen) 2026-10-23T01:50:44.3453516Z 2026-10-23T01:50:44.3453591Z 2024 Effect.flatMap(() => getStartedState), 2026-10-23T01:50:44.3453755Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3453836Z 2026-10-23T01:50:44.3454209Z src/server/AcpSessionRuntime.ts:2241:7 - suggestion TS377116: `Effect.catchIf` expresses selective recovery more directly than `Effect.catch` with a conditional `Effect.fail` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-23T01:50:44.3454624Z 2026-10-23T01:50:44.3454682Z 2241 Effect.catch((error) => 2026-10-23T01:50:44.3454828Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3454902Z 2026-10-23T01:50:44.3455306Z src/server/AcpSessionRuntime.ts:2598:15 - suggestion TS377116: `Effect.catchCauseIf` expresses selective recovery more directly than `Effect.catchCause` with a conditional `Effect.failCause` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-23T01:50:44.3455751Z 2026-10-23T01:50:44.3455909Z 2598 Effect.catchCause((cause) => 2026-10-23T01:50:44.3456074Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3456170Z 2026-10-23T01:50:44.3456598Z src/server/adapter.ts:1389:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.getCapabilities")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3457007Z 2026-10-23T01:50:44.3457107Z 1389 getCapabilities: () => Effect.succeed(flavor.capabilities), 2026-10-23T01:50:44.3457304Z ~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3457385Z 2026-10-23T01:50:44.3457773Z src/server/adapter.ts:1390:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.planSelectionTransition")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3458206Z 2026-10-23T01:50:44.3458355Z 1390 planSelectionTransition: (input) => Effect.succeed(acpSelectionTransition(input)), 2026-10-23T01:50:44.3458601Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3458691Z 2026-10-23T01:50:44.3458900Z src/server/adapter.ts:5398:23 - suggestion TS377017: This Effect.gen contains a single return statement. effect(unnecessaryEffectGen) 2026-10-23T01:50:44.3459151Z 2026-10-23T01:50:44.3459225Z 5398 Effect.gen(function* () { 2026-10-23T01:50:44.3459405Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3459620Z 5399 yield* Ref.update(pendingRuntimeRequests, (current) => { 2026-10-23T01:50:44.3459894Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3460090Z ... 2026-10-23T01:50:44.3460208Z 5403 }); 2026-10-23T01:50:44.3460348Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3460494Z 5404 }), 2026-10-23T01:50:44.3460634Z ~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3460721Z 2026-10-23T01:50:44.3460925Z src/server/adapter.ts:6092:21 - suggestion TS377017: This Effect.gen contains a single return statement. effect(unnecessaryEffectGen) 2026-10-23T01:50:44.3461174Z 2026-10-23T01:50:44.3461245Z 6092 Effect.gen(function* () { 2026-10-23T01:50:44.3461424Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3461633Z 6093 yield* Ref.update(pendingRuntimeRequests, (current) => { 2026-10-23T01:50:44.3461866Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3462046Z ... 2026-10-23T01:50:44.3462158Z 6097 }); 2026-10-23T01:50:44.3462298Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3462434Z 6098 }), 2026-10-23T01:50:44.3462571Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3462653Z 2026-10-23T01:50:44.3463006Z src/server/adapter.ts:7128:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("scheduleDeferredFinalize")(function*(context) { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3463401Z 2026-10-23T01:50:44.3463483Z 7128 scheduleDeferredFinalize = (context) => 2026-10-23T01:50:44.3463663Z ~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3463761Z 2026-10-23T01:50:44.3464089Z src/server/clientTerminals.test.ts:243:32 - suggestion TS377113: `Effect.forEach` expresses this effectful array mapping more directly than `Effect.all` over `Array#map`. effect(allOfMapToForEach) 2026-10-23T01:50:44.3464456Z 2026-10-23T01:50:44.3464531Z 243 const results = yield* Effect.all( 2026-10-23T01:50:44.3464708Z ~~~~~~~~~~ 2026-10-23T01:50:44.3464811Z 2026-10-23T01:50:44.3464814Z 2026-10-23T01:50:44.3464889Z ~/packages/source-control-github$ tsc --noEmit 2026-10-23T01:50:44.3465392Z 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-23T01:50:44.3465879Z 2026-10-23T01:50:44.3466023Z 59 shouldRunBackgroundWork: () => Effect.succeed(options.runBackgroundWork ?? true), 2026-10-23T01:50:44.3466271Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3466367Z 2026-10-23T01:50:44.3466797Z 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-23T01:50:44.3467224Z 2026-10-23T01:50:44.3467301Z 61 credentials: (namespace, bindingId) => 2026-10-23T01:50:44.3467467Z ~~~~~~~~~~~ 2026-10-23T01:50:44.3467546Z 2026-10-23T01:50:44.3467548Z 2026-10-23T01:50:44.3467635Z ~/packages/source-control-azure-devops$ tsc --noEmit 2026-10-23T01:50:44.3468095Z src/server/GitLabCli.ts:459:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabCli.listMergeRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3468476Z 2026-10-23T01:50:44.3468540Z 459 listMergeRequests: (input) => 2026-10-23T01:50:44.3468694Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3468780Z 2026-10-23T01:50:44.3469110Z src/server/GitLabCli.ts:496:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabCli.getMergeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3469485Z 2026-10-23T01:50:44.3469545Z 496 getMergeRequest: (input) => 2026-10-23T01:50:44.3469700Z ~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3469779Z 2026-10-23T01:50:44.3470154Z src/server/GitLabCli.ts:523:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabCli.getRepositoryCloneUrls")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3470551Z 2026-10-23T01:50:44.3470619Z 523 getRepositoryCloneUrls: (input) => 2026-10-23T01:50:44.3470788Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3470878Z 2026-10-23T01:50:44.3471204Z src/server/GitLabCli.ts:545:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabCli.createRepository")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3471580Z 2026-10-23T01:50:44.3471647Z 545 createRepository: (input) => { 2026-10-23T01:50:44.3471804Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3471886Z 2026-10-23T01:50:44.3472216Z src/server/GitLabCli.ts:610:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabCli.createMergeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3472596Z 2026-10-23T01:50:44.3472664Z 610 createMergeRequest: (input) => { 2026-10-23T01:50:44.3472821Z ~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3472910Z 2026-10-23T01:50:44.3473240Z src/server/GitLabCli.ts:631:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabCli.getDefaultBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3473620Z 2026-10-23T01:50:44.3473684Z 631 getDefaultBranch: (input) => 2026-10-23T01:50:44.3473838Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3473921Z 2026-10-23T01:50:44.3474260Z src/server/GitLabCli.ts:652:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabCli.checkoutMergeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3474642Z 2026-10-23T01:50:44.3474710Z 652 checkoutMergeRequest: (input) => 2026-10-23T01:50:44.3474875Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3474959Z 2026-10-23T01:50:44.3475341Z src/server/GitLabPullRequestCli.ts:1077:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.listMergeRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3475840Z 2026-10-23T01:50:44.3475907Z 1077 listMergeRequests: (input) => { 2026-10-23T01:50:44.3476064Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3476148Z 2026-10-23T01:50:44.3476576Z src/server/GitLabPullRequestCli.ts:1085:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.listNotes")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3476982Z 2026-10-23T01:50:44.3477105Z 1085 listNotes: (input) => notesPage({ ...input, page: 1, collected: [] }), 2026-10-23T01:50:44.3477322Z ~~~~~~~~~ 2026-10-23T01:50:44.3477401Z 2026-10-23T01:50:44.3477780Z src/server/GitLabPullRequestCli.ts:1087:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.listReactions")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3478202Z 2026-10-23T01:50:44.3478355Z 1087 listReactions: (input) => awardsPage({ ...input, cursor: null, page: 1, collected: null }), 2026-10-23T01:50:44.3478605Z ~~~~~~~~~~~~~ 2026-10-23T01:50:44.3478683Z 2026-10-23T01:50:44.3479056Z src/server/GitLabPullRequestCli.ts:1125:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.listCommits")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3479467Z 2026-10-23T01:50:44.3479525Z 1125 listCommits: (input) => 2026-10-23T01:50:44.3479675Z ~~~~~~~~~~~ 2026-10-23T01:50:44.3479748Z 2026-10-23T01:50:44.3480172Z src/server/GitLabPullRequestCli.ts:1150:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.getMergeRequestDiff")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3480602Z 2026-10-23T01:50:44.3480672Z 1150 getMergeRequestDiff: (input) => { 2026-10-23T01:50:44.3480835Z ~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3480924Z 2026-10-23T01:50:44.3481327Z src/server/GitLabPullRequestCli.ts:1221:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.getProjectMergeCapabilities")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3481781Z 2026-10-23T01:50:44.3481858Z 1221 getProjectMergeCapabilities: (input) => 2026-10-23T01:50:44.3482041Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3482136Z 2026-10-23T01:50:44.3482529Z src/server/GitLabPullRequestCli.ts:1241:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.listReviewerCandidates")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3482974Z 2026-10-23T01:50:44.3483044Z 1241 listReviewerCandidates: (input) => 2026-10-23T01:50:44.3483212Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3483306Z 2026-10-23T01:50:44.3483696Z src/server/GitLabPullRequestCli.ts:1259:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.setReviewerRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3484135Z 2026-10-23T01:50:44.3484198Z 1259 setReviewerRequest: (input) => 2026-10-23T01:50:44.3484366Z ~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3484455Z 2026-10-23T01:50:44.3484838Z src/server/GitLabPullRequestCli.ts:1312:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.updateMergeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3485275Z 2026-10-23T01:50:44.3485339Z 1312 updateMergeRequest: (input) => 2026-10-23T01:50:44.3485500Z ~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3485586Z 2026-10-23T01:50:44.3485980Z src/server/GitLabPullRequestCli.ts:1326:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.commentOnMergeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3486508Z 2026-10-23T01:50:44.3486578Z 1326 commentOnMergeRequest: (input) => 2026-10-23T01:50:44.3486743Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3486835Z 2026-10-23T01:50:44.3487250Z src/server/GitLabPullRequestCli.ts:1336:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.updateNote")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3487670Z 2026-10-23T01:50:44.3487732Z 1336 updateNote: (input) => 2026-10-23T01:50:44.3487876Z ~~~~~~~~~~ 2026-10-23T01:50:44.3487952Z 2026-10-23T01:50:44.3488334Z src/server/GitLabPullRequestCli.ts:1346:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.listDiscussions")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3488759Z 2026-10-23T01:50:44.3488901Z 1346 listDiscussions: (input) => discussionsPage({ ...input, page: 1, collected: [] }), 2026-10-23T01:50:44.3489142Z ~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3489228Z 2026-10-23T01:50:44.3489615Z src/server/GitLabPullRequestCli.ts:1397:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.replyToDiscussion")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3490081Z 2026-10-23T01:50:44.3490147Z 1397 replyToDiscussion: (input) => 2026-10-23T01:50:44.3490309Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3490389Z 2026-10-23T01:50:44.3490793Z src/server/GitLabPullRequestCli.ts:1407:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitLabPullRequestCli.setDiscussionResolution")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3491509Z 2026-10-23T01:50:44.3491621Z 1407 setDiscussionResolution: (input) => 2026-10-23T01:50:44.3491882Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3492024Z 2026-10-23T01:50:44.3492762Z src/server/GitLabSourceControlProvider.ts:209:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.readChangeRequestTemplate")((_) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3493284Z 2026-10-23T01:50:44.3493375Z 209 readChangeRequestTemplate: ({ cwd, treeish }) => 2026-10-23T01:50:44.3493566Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3493658Z 2026-10-23T01:50:44.3494110Z src/server/GitLabSourceControlProvider.ts:224:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.listChangeRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3494611Z 2026-10-23T01:50:44.3494676Z 224 listChangeRequests: (input) => { 2026-10-23T01:50:44.3494834Z ~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3494919Z 2026-10-23T01:50:44.3495372Z src/server/GitLabSourceControlProvider.ts:252:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3495868Z 2026-10-23T01:50:44.3495927Z 252 getChangeRequest: (input) => 2026-10-23T01:50:44.3496087Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3496168Z 2026-10-23T01:50:44.3496620Z src/server/GitLabSourceControlProvider.ts:270:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.createChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3497120Z 2026-10-23T01:50:44.3497187Z 270 createChangeRequest: (input) => { 2026-10-23T01:50:44.3497348Z ~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3497434Z 2026-10-23T01:50:44.3497898Z src/server/GitLabSourceControlProvider.ts:299:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getRepositoryCloneUrls")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3498497Z 2026-10-23T01:50:44.3498565Z 299 getRepositoryCloneUrls: (input) => 2026-10-23T01:50:44.3498727Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3498878Z 2026-10-23T01:50:44.3499321Z src/server/GitLabSourceControlProvider.ts:316:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.createRepository")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3499842Z 2026-10-23T01:50:44.3499920Z 316 createRepository: (input) => 2026-10-23T01:50:44.3500082Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3500159Z 2026-10-23T01:50:44.3500604Z src/server/GitLabSourceControlProvider.ts:333:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getDefaultBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3501105Z 2026-10-23T01:50:44.3501166Z 333 getDefaultBranch: (input) => 2026-10-23T01:50:44.3501318Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3501399Z 2026-10-23T01:50:44.3501865Z src/server/GitLabSourceControlProvider.ts:347:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.checkoutChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3502366Z 2026-10-23T01:50:44.3502433Z 347 checkoutChangeRequest: (input) => 2026-10-23T01:50:44.3502599Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3502687Z 2026-10-23T01:50:44.3502689Z 2026-10-23T01:50:44.3502770Z ~/packages/source-control-gitcafe$ tsc --noEmit 2026-10-23T01:50:44.3503250Z src/server/AzureDevOpsCli.ts:389:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsCli.listPullRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3503650Z 2026-10-23T01:50:44.3503712Z 389 listPullRequests: (input) => 2026-10-23T01:50:44.3503865Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3503942Z 2026-10-23T01:50:44.3504291Z src/server/AzureDevOpsCli.ts:429:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsCli.getPullRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3504683Z 2026-10-23T01:50:44.3504746Z 429 getPullRequest: (input) => 2026-10-23T01:50:44.3504896Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3504977Z 2026-10-23T01:50:44.3505342Z src/server/AzureDevOpsCli.ts:463:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsCli.getRepositoryCloneUrls")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3505756Z 2026-10-23T01:50:44.3505821Z 463 getRepositoryCloneUrls: (input) => 2026-10-23T01:50:44.3505986Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3506071Z 2026-10-23T01:50:44.3506422Z src/server/AzureDevOpsCli.ts:479:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsCli.createRepository")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3506818Z 2026-10-23T01:50:44.3506887Z 479 createRepository: (input) => { 2026-10-23T01:50:44.3507039Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3507120Z 2026-10-23T01:50:44.3507469Z src/server/AzureDevOpsCli.ts:504:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsCli.createPullRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3507864Z 2026-10-23T01:50:44.3507925Z 504 createPullRequest: (input) => 2026-10-23T01:50:44.3508084Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3508166Z 2026-10-23T01:50:44.3508515Z src/server/AzureDevOpsCli.ts:524:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsCli.getDefaultBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3508975Z 2026-10-23T01:50:44.3509037Z 524 getDefaultBranch: (input) => 2026-10-23T01:50:44.3509185Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3509310Z 2026-10-23T01:50:44.3509664Z src/server/AzureDevOpsCli.ts:535:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsCli.checkoutPullRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3510107Z 2026-10-23T01:50:44.3510169Z 535 checkoutPullRequest: (input) => 2026-10-23T01:50:44.3510327Z ~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3510412Z 2026-10-23T01:50:44.3510796Z src/server/AzureDevOpsPullRequestCli.ts:488:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsPullRequestCli.getViewer")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3511228Z 2026-10-23T01:50:44.3511287Z 488 getViewer: (input) => 2026-10-23T01:50:44.3511424Z ~~~~~~~~~ 2026-10-23T01:50:44.3511497Z 2026-10-23T01:50:44.3511902Z src/server/AzureDevOpsPullRequestCli.ts:542:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsPullRequestCli.listPullRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3512346Z 2026-10-23T01:50:44.3512405Z 542 listPullRequests: (input) => 2026-10-23T01:50:44.3512558Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3512638Z 2026-10-23T01:50:44.3513030Z src/server/AzureDevOpsPullRequestCli.ts:555:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsPullRequestCli.getPullRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3513476Z 2026-10-23T01:50:44.3513537Z 555 getPullRequest: (input) => 2026-10-23T01:50:44.3513687Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3513768Z 2026-10-23T01:50:44.3514155Z src/server/AzureDevOpsPullRequestCli.ts:586:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsPullRequestCli.listThreads")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3514596Z 2026-10-23T01:50:44.3514656Z 586 listThreads: (input) => 2026-10-23T01:50:44.3514796Z ~~~~~~~~~~~ 2026-10-23T01:50:44.3514871Z 2026-10-23T01:50:44.3515260Z src/server/AzureDevOpsPullRequestCli.ts:596:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsPullRequestCli.listIterations")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3515700Z 2026-10-23T01:50:44.3515761Z 596 listIterations: (input) => 2026-10-23T01:50:44.3515908Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3515987Z 2026-10-23T01:50:44.3516396Z src/server/AzureDevOpsPullRequestCli.ts:606:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsPullRequestCli.listIterationChanges")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3516857Z 2026-10-23T01:50:44.3516929Z 606 listIterationChanges: (input) => { 2026-10-23T01:50:44.3517090Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3517177Z 2026-10-23T01:50:44.3517575Z src/server/AzureDevOpsPullRequestCli.ts:633:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsPullRequestCli.readItemContent")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3518019Z 2026-10-23T01:50:44.3518087Z 633 readItemContent: (input) => 2026-10-23T01:50:44.3518243Z ~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3518320Z 2026-10-23T01:50:44.3518739Z src/server/AzureDevOpsPullRequestCli.ts:656:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsPullRequestCli.setPullRequestReviewers")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3519268Z 2026-10-23T01:50:44.3519342Z 656 setPullRequestReviewers: (input) => 2026-10-23T01:50:44.3519506Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3519594Z 2026-10-23T01:50:44.3520085Z src/server/AzureDevOpsPullRequestCli.ts:681:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsPullRequestCli.runPullRequestAction")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3520544Z 2026-10-23T01:50:44.3520609Z 681 runPullRequestAction: (input) => 2026-10-23T01:50:44.3520776Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3520859Z 2026-10-23T01:50:44.3521264Z src/server/AzureDevOpsPullRequestCli.ts:700:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AzureDevOpsPullRequestCli.updatePullRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3521717Z 2026-10-23T01:50:44.3521783Z 700 updatePullRequest: (input) => 2026-10-23T01:50:44.3521936Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3522020Z 2026-10-23T01:50:44.3522489Z src/server/AzureDevOpsSourceControlProvider.ts:81:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.listChangeRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3523005Z 2026-10-23T01:50:44.3523067Z 81 listChangeRequests: (input) => { 2026-10-23T01:50:44.3523228Z ~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3523309Z 2026-10-23T01:50:44.3523758Z src/server/AzureDevOpsSourceControlProvider.ts:109:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3524268Z 2026-10-23T01:50:44.3524335Z 109 getChangeRequest: (input) => 2026-10-23T01:50:44.3524485Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3524570Z 2026-10-23T01:50:44.3525035Z src/server/AzureDevOpsSourceControlProvider.ts:127:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.createChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3525547Z 2026-10-23T01:50:44.3525611Z 127 createChangeRequest: (input) => { 2026-10-23T01:50:44.3525777Z ~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3525868Z 2026-10-23T01:50:44.3526343Z src/server/AzureDevOpsSourceControlProvider.ts:156:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getRepositoryCloneUrls")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3526866Z 2026-10-23T01:50:44.3526935Z 156 getRepositoryCloneUrls: (input) => 2026-10-23T01:50:44.3527096Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3527187Z 2026-10-23T01:50:44.3527641Z src/server/AzureDevOpsSourceControlProvider.ts:173:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.createRepository")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3528153Z 2026-10-23T01:50:44.3528216Z 173 createRepository: (input) => 2026-10-23T01:50:44.3528365Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3528445Z 2026-10-23T01:50:44.3528903Z src/server/AzureDevOpsSourceControlProvider.ts:190:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getDefaultBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3529404Z 2026-10-23T01:50:44.3529467Z 190 getDefaultBranch: (input) => 2026-10-23T01:50:44.3529620Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3529699Z 2026-10-23T01:50:44.3530219Z src/server/AzureDevOpsSourceControlProvider.ts:204:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.checkoutChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3530823Z 2026-10-23T01:50:44.3531311Z 204 checkoutChangeRequest: (input) => 2026-10-23T01:50:44.3531470Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3531557Z 2026-10-23T01:50:44.3531560Z 2026-10-23T01:50:44.3531639Z ~/packages/source-control-forgejo$ tsc --noEmit 2026-10-23T01:50:44.3532114Z src/server/GitHubCredentials.ts:238:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubCredentials.invalidate")((rawHost) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3532512Z 2026-10-23T01:50:44.3532572Z 238 invalidate: (rawHost) => { 2026-10-23T01:50:44.3532722Z ~~~~~~~~~~ 2026-10-23T01:50:44.3532796Z 2026-10-23T01:50:44.3533161Z src/server/GitHubPullRequestApi.ts:969:21 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubApiResponseError")(function*(error) { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3533584Z 2026-10-23T01:50:44.3533664Z 969 GitHubApiResponseError: (error) => 2026-10-23T01:50:44.3533869Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3533976Z 2026-10-23T01:50:44.3534395Z src/server/GitHubPullRequestApi.ts:1606:13 - suggestion TS377120: `Effect.filterOrFail` expresses this conditional validation more directly than `Effect.flatMap` with an identity `Effect.succeed` branch. effect(flatMapConditionalToFilterOrFail) 2026-10-23T01:50:44.3534861Z 2026-10-23T01:50:44.3534926Z 1606 Effect.flatMap((runs) => 2026-10-23T01:50:44.3535084Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3535174Z 2026-10-23T01:50:44.3535554Z src/server/GitHubPullRequestApi.ts:1753:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.getViewerLogin")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3535980Z 2026-10-23T01:50:44.3536040Z 1753 getViewerLogin: (input) => 2026-10-23T01:50:44.3536193Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3536275Z 2026-10-23T01:50:44.3536657Z src/server/GitHubPullRequestApi.ts:1756:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.listPullRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3537089Z 2026-10-23T01:50:44.3537152Z 1756 listPullRequests: (input) => { 2026-10-23T01:50:44.3537304Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3537385Z 2026-10-23T01:50:44.3537797Z src/server/GitHubPullRequestApi.ts:1885:9 - suggestion TS377120: `Effect.filterOrElse` expresses this conditional validation more directly than `Effect.flatMap` with an identity `Effect.succeed` branch. effect(flatMapConditionalToFilterOrFail) 2026-10-23T01:50:44.3538253Z 2026-10-23T01:50:44.3538316Z 1885 Effect.flatMap((batch) => { 2026-10-23T01:50:44.3538472Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3538556Z 2026-10-23T01:50:44.3538944Z src/server/GitHubPullRequestApi.ts:1924:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.searchPullRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3539376Z 2026-10-23T01:50:44.3539447Z 1924 searchPullRequests: (input) => { 2026-10-23T01:50:44.3539600Z ~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3539684Z 2026-10-23T01:50:44.3540130Z src/server/GitHubPullRequestApi.ts:1998:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.getPullRequestPreview")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3540566Z 2026-10-23T01:50:44.3540636Z 1998 getPullRequestPreview: (input) => { 2026-10-23T01:50:44.3540801Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3540970Z 2026-10-23T01:50:44.3541354Z src/server/GitHubPullRequestApi.ts:2011:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.getPullRequestStack")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3541836Z 2026-10-23T01:50:44.3541904Z 2011 getPullRequestStack: (input) => { 2026-10-23T01:50:44.3542065Z ~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3542148Z 2026-10-23T01:50:44.3542530Z src/server/GitHubPullRequestApi.ts:2089:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.getPullRequestDiff")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3542958Z 2026-10-23T01:50:44.3543023Z 2089 getPullRequestDiff: (input) => { 2026-10-23T01:50:44.3543179Z ~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3543261Z 2026-10-23T01:50:44.3543657Z src/server/GitHubPullRequestApi.ts:2137:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.getReviewThreadComments")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3544100Z 2026-10-23T01:50:44.3544177Z 2137 getReviewThreadComments: (input) => { 2026-10-23T01:50:44.3544351Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3544441Z 2026-10-23T01:50:44.3544815Z src/server/GitHubPullRequestApi.ts:2279:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.listActorAvatars")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3545241Z 2026-10-23T01:50:44.3545305Z 2279 listActorAvatars: (input) => { 2026-10-23T01:50:44.3545456Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3545538Z 2026-10-23T01:50:44.3545909Z src/server/GitHubPullRequestApi.ts:2288:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.getViewerAccess")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3546329Z 2026-10-23T01:50:44.3546391Z 2288 getViewerAccess: (input) => { 2026-10-23T01:50:44.3546547Z ~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3546625Z 2026-10-23T01:50:44.3547020Z src/server/GitHubPullRequestApi.ts:2300:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.listReviewerCandidates")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3547467Z 2026-10-23T01:50:44.3547542Z 2300 listReviewerCandidates: (input) => { 2026-10-23T01:50:44.3547722Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3547808Z 2026-10-23T01:50:44.3548189Z src/server/GitHubPullRequestApi.ts:2312:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.setReviewerRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3548621Z 2026-10-23T01:50:44.3548682Z 2312 setReviewerRequest: (input) => { 2026-10-23T01:50:44.3548846Z ~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3548931Z 2026-10-23T01:50:44.3549318Z src/server/GitHubPullRequestApi.ts:2325:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.listLabelCandidates")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3549761Z 2026-10-23T01:50:44.3549849Z 2325 listLabelCandidates: (input) => { 2026-10-23T01:50:44.3550017Z ~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3550106Z 2026-10-23T01:50:44.3550467Z src/server/GitHubPullRequestApi.ts:2337:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.setLabels")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3550878Z 2026-10-23T01:50:44.3550934Z 2337 setLabels: (input) => { 2026-10-23T01:50:44.3551078Z ~~~~~~~~~ 2026-10-23T01:50:44.3551148Z 2026-10-23T01:50:44.3551533Z src/server/GitHubPullRequestApi.ts:2364:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.runPullRequestAction")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3552034Z 2026-10-23T01:50:44.3552151Z 2364 runPullRequestAction: (input) => { 2026-10-23T01:50:44.3552313Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3552404Z 2026-10-23T01:50:44.3552790Z src/server/GitHubPullRequestApi.ts:2623:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.commentOnPullRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3553228Z 2026-10-23T01:50:44.3553291Z 2623 commentOnPullRequest: (input) => 2026-10-23T01:50:44.3553454Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3553545Z 2026-10-23T01:50:44.3553917Z src/server/GitHubPullRequestApi.ts:2633:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.submitReview")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3554341Z 2026-10-23T01:50:44.3554406Z 2633 submitReview: (input) => { 2026-10-23T01:50:44.3554558Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3554638Z 2026-10-23T01:50:44.3555028Z src/server/GitHubPullRequestApi.ts:2650:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.replyToReviewThread")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3555468Z 2026-10-23T01:50:44.3555540Z 2650 replyToReviewThread: (input) => 2026-10-23T01:50:44.3555699Z ~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3555788Z 2026-10-23T01:50:44.3556199Z src/server/GitHubPullRequestApi.ts:2655:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.getPullRequestFilesViewed")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3556655Z 2026-10-23T01:50:44.3556738Z 2655 getPullRequestFilesViewed: (input) => { 2026-10-23T01:50:44.3556923Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3557017Z 2026-10-23T01:50:44.3557423Z src/server/GitHubPullRequestApi.ts:2683:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.getPullRequestFileStats")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3557870Z 2026-10-23T01:50:44.3557946Z 2683 getPullRequestFileStats: (input) => { 2026-10-23T01:50:44.3558118Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3558212Z 2026-10-23T01:50:44.3558615Z src/server/GitHubPullRequestApi.ts:2711:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.setPullRequestFilesViewed")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3559064Z 2026-10-23T01:50:44.3559142Z 2711 setPullRequestFilesViewed: (input) => { 2026-10-23T01:50:44.3559323Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3559417Z 2026-10-23T01:50:44.3559843Z src/server/GitHubPullRequestApi.ts:2732:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.setReviewThreadResolution")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3560304Z 2026-10-23T01:50:44.3560380Z 2732 setReviewThreadResolution: (input) => 2026-10-23T01:50:44.3560550Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3560644Z 2026-10-23T01:50:44.3561014Z src/server/GitHubPullRequestApi.ts:2738:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.setReaction")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3561434Z 2026-10-23T01:50:44.3561490Z 2738 setReaction: (input) => { 2026-10-23T01:50:44.3561640Z ~~~~~~~~~~~ 2026-10-23T01:50:44.3561717Z 2026-10-23T01:50:44.3562101Z src/server/GitHubPullRequestApi.ts:2771:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.updatePullRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3562608Z 2026-10-23T01:50:44.3562729Z 2771 updatePullRequest: (input) => 2026-10-23T01:50:44.3562889Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3562974Z 2026-10-23T01:50:44.3563351Z src/server/GitHubPullRequestApi.ts:2787:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubPullRequestApi.updateComment")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3563777Z 2026-10-23T01:50:44.3563836Z 2787 updateComment: (input) => 2026-10-23T01:50:44.3563986Z ~~~~~~~~~~~~~ 2026-10-23T01:50:44.3564067Z 2026-10-23T01:50:44.3564531Z src/server/GitHubSourceControlProvider.ts:894:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.readChangeRequestTemplate")((_) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3565049Z 2026-10-23T01:50:44.3565141Z 894 readChangeRequestTemplate: ({ cwd, treeish }) => 2026-10-23T01:50:44.3565329Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3565434Z 2026-10-23T01:50:44.3565893Z src/server/GitHubSourceControlProvider.ts:905:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.listChangeRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3566404Z 2026-10-23T01:50:44.3566465Z 905 listChangeRequests: (input) => 2026-10-23T01:50:44.3566624Z ~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3566708Z 2026-10-23T01:50:44.3567153Z src/server/GitHubSourceControlProvider.ts:923:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3567659Z 2026-10-23T01:50:44.3567727Z 923 getChangeRequest: (input) => 2026-10-23T01:50:44.3567880Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3567962Z 2026-10-23T01:50:44.3568421Z 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-23T01:50:44.3568931Z 2026-10-23T01:50:44.3569001Z 1036 checkoutChangeRequest: (input) => 2026-10-23T01:50:44.3569172Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3569263Z 2026-10-23T01:50:44.3569665Z src/server/gitHubGraphQlClient.ts:118:12 - suggestion TS377019: This `yield* Effect.fail(...)` passes a yieldable error value. `yield*` represents that value directly without wrapping it in `Effect.fail`. effect(unnecessaryFailYieldableError) 2026-10-23T01:50:44.3570148Z 2026-10-23T01:50:44.3570220Z 118 return yield* Effect.fail(error); 2026-10-23T01:50:44.3570381Z ~~~~~ 2026-10-23T01:50:44.3570459Z 2026-10-23T01:50:44.3570462Z 2026-10-23T01:50:44.3570530Z ~/packages/provider-grok$ tsc --noEmit 2026-10-23T01:50:44.3571139Z src/server/GitCafeCredentials.ts:170:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitCafeCredentials.get")((host) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3571526Z 2026-10-23T01:50:44.3571582Z 170 get: (host) => 2026-10-23T01:50:44.3571710Z ~~~ 2026-10-23T01:50:44.3571780Z 2026-10-23T01:50:44.3572134Z src/server/GitCafeCredentials.ts:183:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitCafeCredentials.invalidate")((host) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3572538Z 2026-10-23T01:50:44.3572660Z 183 invalidate: (host) => Cache.invalidate(cache, normalizeHost(host)), 2026-10-23T01:50:44.3572958Z ~~~~~~~~~~ 2026-10-23T01:50:44.3573034Z 2026-10-23T01:50:44.3573442Z src/server/GitCafeCredentials.ts:184:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitCafeCredentials.cliEnv")((host) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3573831Z 2026-10-23T01:50:44.3573891Z 184 cliEnv: (host) => 2026-10-23T01:50:44.3574034Z ~~~~~~ 2026-10-23T01:50:44.3574102Z 2026-10-23T01:50:44.3574401Z src/server/GitCafePullRequestProvider.ts:559:13 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-23T01:50:44.3574745Z 2026-10-23T01:50:44.3574813Z 559 Effect.map(Option.some), 2026-10-23T01:50:44.3574973Z ~~~~~~~~~~ 2026-10-23T01:50:44.3575059Z 2026-10-23T01:50:44.3575346Z src/server/GitCafePullRequestProvider.ts:564:21 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3575680Z 2026-10-23T01:50:44.3575757Z 564 : Effect.succeed(Option.none()), 2026-10-23T01:50:44.3575936Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3576032Z 2026-10-23T01:50:44.3576441Z src/server/GitCafePullRequestProvider.ts:656:13 - suggestion TS377116: `Effect.catchIf` expresses selective recovery more directly than `Effect.catch` with a conditional `Effect.fail` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-23T01:50:44.3576890Z 2026-10-23T01:50:44.3576950Z 656 Effect.catch((error) => 2026-10-23T01:50:44.3577106Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3577194Z 2026-10-23T01:50:44.3577593Z src/server/GitCafePullRequestProvider.ts:734:19 - suggestion TS377116: `Effect.catchIf` expresses selective recovery more directly than `Effect.catch` with a conditional `Effect.fail` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-23T01:50:44.3578039Z 2026-10-23T01:50:44.3578109Z 734 Effect.catch((error) => 2026-10-23T01:50:44.3578280Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3578372Z 2026-10-23T01:50:44.3578380Z 2026-10-23T01:50:44.3578442Z ~/packages/provider-pi$ tsc --noEmit 2026-10-23T01:50:44.3579004Z src/server/ForgejoSourceControlProvider.ts:340:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3579502Z 2026-10-23T01:50:44.3579561Z 340 getChangeRequest: (input) => 2026-10-23T01:50:44.3579713Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3579820Z 2026-10-23T01:50:44.3579822Z 2026-10-23T01:50:44.3579896Z ~/packages/provider-muse$ tsc --noEmit 2026-10-23T01:50:44.3580380Z src/server/adapter.ts:440:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.getCapabilities")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3580803Z 2026-10-23T01:50:44.3580914Z 440 getCapabilities: () => Effect.succeed(PiProviderCapabilitiesV2), 2026-10-23T01:50:44.3581126Z ~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3581205Z 2026-10-23T01:50:44.3581594Z src/server/adapter.ts:441:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.planSelectionTransition")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3582029Z 2026-10-23T01:50:44.3582175Z 441 planSelectionTransition: () => Effect.succeed(turnScopedSelectionTransition()), 2026-10-23T01:50:44.3582417Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3582507Z 2026-10-23T01:50:44.3582763Z src/server/adapter.ts:1682:31 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-23T01:50:44.3583069Z 2026-10-23T01:50:44.3583147Z 1682 Effect.map(Option.some), 2026-10-23T01:50:44.3583401Z ~~~~~~~~~~ 2026-10-23T01:50:44.3583507Z 2026-10-23T01:50:44.3583805Z src/server/adapter.ts:1685:29 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3584110Z 2026-10-23T01:50:44.3584198Z 1685 : Effect.succeed(Option.none()), 2026-10-23T01:50:44.3584394Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3584513Z 2026-10-23T01:50:44.3584809Z src/server/rpc.ts:334:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("onSuccess")(function*() { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3585152Z 2026-10-23T01:50:44.3585210Z 334 onSuccess: () => 2026-10-23T01:50:44.3585351Z ~~~~~~~~~ 2026-10-23T01:50:44.3585435Z 2026-10-23T01:50:44.3585681Z src/server/rpc.ts:342:17 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-23T01:50:44.3585975Z 2026-10-23T01:50:44.3586048Z 342 Effect.map(Option.some), 2026-10-23T01:50:44.3586215Z ~~~~~~~~~~ 2026-10-23T01:50:44.3586309Z 2026-10-23T01:50:44.3586311Z 2026-10-23T01:50:44.3586390Z ~/packages/provider-opencode$ tsc --noEmit 2026-10-23T01:50:44.3586887Z src/server/driver.ts:174:7 - suggestion TS377120: `Effect.filterOrElse` expresses this conditional validation more directly than `Effect.flatMap` with an identity `Effect.succeed` branch. effect(flatMapConditionalToFilterOrFail) 2026-10-23T01:50:44.3587316Z 2026-10-23T01:50:44.3587381Z 174 Effect.flatMap((snapshot) => 2026-10-23T01:50:44.3587536Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3587620Z 2026-10-23T01:50:44.3587903Z src/server/xaiAcpExtension.ts:1507:15 - suggestion TS377009: The previous Effect does not fail, so this error-handling branch will never run. effect(catchUnfailableEffect) 2026-10-23T01:50:44.3588232Z 2026-10-23T01:50:44.3588314Z 1507 }).pipe(Effect.catch(() => Effect.void)); 2026-10-23T01:50:44.3588496Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3588589Z 2026-10-23T01:50:44.3588889Z src/server/xaiAcpExtension.ts:1507:15 - suggestion TS377099: `Effect.ignore` expresses ignored failure more directly than `Effect.catch` returning `Effect.void`. effect(catchToIgnore) 2026-10-23T01:50:44.3589239Z 2026-10-23T01:50:44.3589318Z 1507 }).pipe(Effect.catch(() => Effect.void)); 2026-10-23T01:50:44.3589492Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3589584Z 2026-10-23T01:50:44.3590230Z src/server/xaiAcpExtension.ts:1588:13 - suggestion TS377116: `Effect.catchCauseIf` expresses selective recovery more directly than `Effect.catchCause` with a conditional `Effect.failCause` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-23T01:50:44.3590776Z 2026-10-23T01:50:44.3590861Z 1588 Effect.catchCause((cause) => 2026-10-23T01:50:44.3591037Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3591147Z 2026-10-23T01:50:44.3591150Z 2026-10-23T01:50:44.3591228Z ~/packages/provider-cursor$ tsc --noEmit 2026-10-23T01:50:44.3591737Z src/server/adapter.ts:284:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.getCapabilities")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3592166Z 2026-10-23T01:50:44.3592288Z 284 getCapabilities: () => Effect.succeed(MuseProviderCapabilitiesV2), 2026-10-23T01:50:44.3592507Z ~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3592594Z 2026-10-23T01:50:44.3592994Z src/server/adapter.ts:285:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.planSelectionTransition")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3593434Z 2026-10-23T01:50:44.3593580Z 285 planSelectionTransition: () => Effect.succeed(turnScopedSelectionTransition()), 2026-10-23T01:50:44.3594019Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3594107Z 2026-10-23T01:50:44.3594488Z src/server/adapter.ts:388:13 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("TimeoutError")(function*(cause) { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3594851Z 2026-10-23T01:50:44.3594916Z 388 TimeoutError: (cause) => 2026-10-23T01:50:44.3595076Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3595165Z 2026-10-23T01:50:44.3595425Z src/server/adapter.ts:1366:35 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-23T01:50:44.3595726Z 2026-10-23T01:50:44.3595881Z 1366 wake === held ? Effect.map(dispatch, Option.some) : Effect.succeed(Option.none()), 2026-10-23T01:50:44.3596137Z ~~~~~~~~~~ 2026-10-23T01:50:44.3596247Z 2026-10-23T01:50:44.3596498Z src/server/adapter.ts:1366:71 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3596797Z 2026-10-23T01:50:44.3596975Z 1366 wake === held ? Effect.map(dispatch, Option.some) : Effect.succeed(Option.none()), 2026-10-23T01:50:44.3597333Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3597471Z 2026-10-23T01:50:44.3597473Z 2026-10-23T01:50:44.3597555Z ~/packages/provider-acp-registry$ tsc --noEmit 2026-10-23T01:50:44.3598009Z 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-23T01:50:44.3598383Z 2026-10-23T01:50:44.3598454Z 147 return Effect.succeed(undefined); 2026-10-23T01:50:44.3598622Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3598723Z 2026-10-23T01:50:44.3599185Z 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-23T01:50:44.3599696Z 2026-10-23T01:50:44.3599768Z 188 if (!recordable) return Effect.void; 2026-10-23T01:50:44.3600018Z ~~~~~~ 2026-10-23T01:50:44.3600115Z 2026-10-23T01:50:44.3600565Z src/server/OpenCodeServerLedger.ts:208:9 - suggestion TS377014: This generator returns an Effect-able value directly, which produces a nested `Effect>`. If the intended result is the inner Effect value, `return yield*` represents that form. effect(returnEffectInGen) 2026-10-23T01:50:44.3601067Z 2026-10-23T01:50:44.3601131Z 208 return Effect.void; 2026-10-23T01:50:44.3601277Z ~~~~~~ 2026-10-23T01:50:44.3601355Z 2026-10-23T01:50:44.3601813Z src/server/OpenCodeServerLedger.ts:228:7 - suggestion TS377014: This generator returns an Effect-able value directly, which produces a nested `Effect>`. If the intended result is the inner Effect value, `return yield*` represents that form. effect(returnEffectInGen) 2026-10-23T01:50:44.3602314Z 2026-10-23T01:50:44.3602370Z 228 return fs 2026-10-23T01:50:44.3602496Z ~~~~~~ 2026-10-23T01:50:44.3602570Z 2026-10-23T01:50:44.3602917Z src/server/OpenCodeServerLedger.ts:311:29 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OpenCodeServerLedger.track")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3603314Z 2026-10-23T01:50:44.3603445Z 311 OpenCodeServerLedger.of({ track: () => Effect.succeed(Effect.void) }), 2026-10-23T01:50:44.3603675Z ~~~~~ 2026-10-23T01:50:44.3603773Z 2026-10-23T01:50:44.3604129Z 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-23T01:50:44.3604609Z 2026-10-23T01:50:44.3604670Z 169 withServer: (use) => 2026-10-23T01:50:44.3604803Z ~~~~~~~~~~ 2026-10-23T01:50:44.3604874Z 2026-10-23T01:50:44.3605368Z 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-23T01:50:44.3605853Z 2026-10-23T01:50:44.3605990Z 103 const OPENCODE_TEST_SETTINGS = Schema.decodeUnknownSync(OpenCodeSettings)({}); 2026-10-23T01:50:44.3606245Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3606358Z 2026-10-23T01:50:44.3606732Z src/server/adapter.ts:938:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.getCapabilities")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3607147Z 2026-10-23T01:50:44.3607271Z 938 getCapabilities: () => Effect.succeed(OpenCodeProviderCapabilitiesV2), 2026-10-23T01:50:44.3607497Z ~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3607578Z 2026-10-23T01:50:44.3607967Z src/server/adapter.ts:939:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.planSelectionTransition")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3608394Z 2026-10-23T01:50:44.3608615Z 939 planSelectionTransition: () => Effect.succeed(turnScopedSelectionTransition()), 2026-10-23T01:50:44.3608857Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3608947Z 2026-10-23T01:50:44.3609277Z src/server/adapter.ts:1011:33 - suggestion TS377111: `AbortController` is manually constructed inside Effect code. Use `Effect.abortSignal` for Effect-managed cancellation. effect(abortControllerInEffect) 2026-10-23T01:50:44.3609650Z 2026-10-23T01:50:44.3609737Z 1011 const abortController = new AbortController(); 2026-10-23T01:50:44.3609966Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3610090Z 2026-10-23T01:50:44.3610458Z src/server/adapter.ts:1088:31 - suggestion TS377019: This `yield* Effect.fail(...)` passes a yieldable error value. `yield*` represents that value directly without wrapping it in `Effect.fail`. effect(unnecessaryFailYieldableError) 2026-10-23T01:50:44.3610869Z 2026-10-23T01:50:44.3611093Z 1088 if (failure) return yield* Effect.fail(failure); 2026-10-23T01:50:44.3611302Z ~~~~~ 2026-10-23T01:50:44.3611405Z 2026-10-23T01:50:44.3611715Z src/server/adapter.ts:1584:15 - suggestion TS377095: `Effect.orElseSucceed` expresses the same recovery more directly than `Effect.catch` followed by `Effect.succeed`. effect(catchToOrElseSucceed) 2026-10-23T01:50:44.3612079Z 2026-10-23T01:50:44.3612168Z 1584 Effect.catch(() => Effect.succeed(undefined)), 2026-10-23T01:50:44.3612354Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3612443Z 2026-10-23T01:50:44.3612733Z src/server/adapter.ts:1584:34 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-23T01:50:44.3613062Z 2026-10-23T01:50:44.3613151Z 1584 Effect.catch(() => Effect.succeed(undefined)), 2026-10-23T01:50:44.3613351Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3613469Z 2026-10-23T01:50:44.3613807Z src/server/adapter.ts:3194:43 - suggestion TS377111: `AbortController` is manually constructed inside Effect code. Use `Effect.abortSignal` for Effect-managed cancellation. effect(abortControllerInEffect) 2026-10-23T01:50:44.3614158Z 2026-10-23T01:50:44.3614251Z 3194 admissionAbortController: new AbortController(), 2026-10-23T01:50:44.3614451Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3614560Z 2026-10-23T01:50:44.3614868Z src/server/adapter.ts:3354:47 - suggestion TS377111: `AbortController` is manually constructed inside Effect code. Use `Effect.abortSignal` for Effect-managed cancellation. effect(abortControllerInEffect) 2026-10-23T01:50:44.3615214Z 2026-10-23T01:50:44.3615407Z 3354 turn.admissionAbortController = new AbortController(); 2026-10-23T01:50:44.3615618Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3615732Z 2026-10-23T01:50:44.3616045Z src/server/v2/OpenCode2Client.ts:158:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OpenCode2Client.connect")((_) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3616392Z 2026-10-23T01:50:44.3616461Z 158 connect: ({ baseUrl, password }) => { 2026-10-23T01:50:44.3616624Z ~~~~~~~ 2026-10-23T01:50:44.3616688Z 2026-10-23T01:50:44.3617010Z src/server/v2/OpenCode2Server.ts:160:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OpenCode2Server.withConnection")((use) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3617381Z 2026-10-23T01:50:44.3617441Z 160 withConnection: (use) => 2026-10-23T01:50:44.3617584Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3617659Z 2026-10-23T01:50:44.3617981Z src/server/v2/OpenCode2Server.ts:175:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OpenCode2Server.withConnection")((use) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3618349Z 2026-10-23T01:50:44.3618402Z 175 withConnection: (use) => 2026-10-23T01:50:44.3618548Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3618618Z 2026-10-23T01:50:44.3618858Z src/server/v2/adapter.ts:1544:26 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3619141Z 2026-10-23T01:50:44.3619279Z 1544 wake.dropped ? Effect.succeed(Option.none()) : Effect.map(dispatch, Option.some), 2026-10-23T01:50:44.3619510Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3619617Z 2026-10-23T01:50:44.3619909Z src/server/v2/adapter.ts:1544:58 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-23T01:50:44.3620191Z 2026-10-23T01:50:44.3620320Z 1544 wake.dropped ? Effect.succeed(Option.none()) : Effect.map(dispatch, Option.some), 2026-10-23T01:50:44.3620562Z ~~~~~~~~~~ 2026-10-23T01:50:44.3620762Z 2026-10-23T01:50:44.3621109Z src/server/v2/adapter.ts:4137:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.getCapabilities")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3621506Z 2026-10-23T01:50:44.3621620Z 4137 getCapabilities: () => Effect.succeed(OpenCode2ProviderCapabilities), 2026-10-23T01:50:44.3621830Z ~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3621907Z 2026-10-23T01:50:44.3622275Z src/server/v2/adapter.ts:4138:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.planSelectionTransition")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3622677Z 2026-10-23T01:50:44.3622805Z 4138 planSelectionTransition: () => Effect.succeed(turnScopedSelectionTransition()), 2026-10-23T01:50:44.3623029Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3623115Z 2026-10-23T01:50:44.3623117Z 2026-10-23T01:50:44.3623177Z ~/packages/client-runtime$ tsc --noEmit 2026-10-23T01:50:44.3623562Z src/server/AcpRegistryRuntimeCoordinator.ts:154:52 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-23T01:50:44.3623883Z 2026-10-23T01:50:44.3624025Z 154 return yield* Effect.raceFirst(effect.pipe(Effect.map(Option.some)), foregroundStarted); 2026-10-23T01:50:44.3624278Z ~~~~~~~~~~ 2026-10-23T01:50:44.3624388Z 2026-10-23T01:50:44.3624790Z src/server/AcpRegistrySupport.ts:1301:9 - suggestion TS377116: `Effect.catchIf` expresses selective recovery more directly than `Effect.catch` with a conditional `Effect.fail` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-23T01:50:44.3625178Z 2026-10-23T01:50:44.3625240Z 1301 Effect.catch((error) => 2026-10-23T01:50:44.3625395Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3625473Z 2026-10-23T01:50:44.3625783Z src/server/auth.ts:146:13 - suggestion TS377118: `Effect.fromOption` expresses this Option-to-Effect conversion more directly than `Option.match` or an Option tag conditional. effect(optionMatchToFromOption) 2026-10-23T01:50:44.3626129Z 2026-10-23T01:50:44.3626188Z 146 Option.isSome(result) 2026-10-23T01:50:44.3626331Z ~~~~~~~~~~~~~ 2026-10-23T01:50:44.3626419Z 2026-10-23T01:50:44.3626694Z src/server/driver.ts:640:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("enrichSnapshot")((_) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3627005Z 2026-10-23T01:50:44.3627119Z 640 enrichSnapshot: ({ snapshot, getSnapshot, publishSnapshot }) => { 2026-10-23T01:50:44.3627326Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3627398Z 2026-10-23T01:50:44.3627626Z src/server/driver.ts:650:51 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-23T01:50:44.3627895Z 2026-10-23T01:50:44.3628003Z 650 : enrichProviderCached(snapshot).pipe(Effect.map(Option.some)) 2026-10-23T01:50:44.3628216Z ~~~~~~~~~~ 2026-10-23T01:50:44.3628332Z 2026-10-23T01:50:44.3628334Z 2026-10-23T01:50:44.3628698Z 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-23T01:50:44.3629100Z 2026-10-23T01:50:44.3629179Z 31 read: (credentialSource, sinceMs, untilMs) => 2026-10-23T01:50:44.3629341Z ~~~~ 2026-10-23T01:50:44.3629402Z 2026-10-23T01:50:44.3629706Z 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-23T01:50:44.3630146Z 2026-10-23T01:50:44.3630204Z 82 read: (apiKey) => 2026-10-23T01:50:44.3630326Z ~~~~ 2026-10-23T01:50:44.3630389Z 2026-10-23T01:50:44.3630689Z src/server/accountUsage.ts:360:5 - suggestion TS377095: `Effect.orElseSucceed` expresses the same recovery more directly than `Effect.catch` followed by `Effect.succeed`. effect(catchToOrElseSucceed) 2026-10-23T01:50:44.3631029Z 2026-10-23T01:50:44.3631078Z 360 Effect.catch(() => 2026-10-23T01:50:44.3631201Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3631270Z 2026-10-23T01:50:44.3631613Z src/server/adapter.ts:904:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.getCapabilities")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3631997Z 2026-10-23T01:50:44.3632107Z 904 getCapabilities: () => Effect.succeed(CursorProviderCapabilitiesV2), 2026-10-23T01:50:44.3632299Z ~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3632374Z 2026-10-23T01:50:44.3632725Z src/server/adapter.ts:905:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.planSelectionTransition")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3633120Z 2026-10-23T01:50:44.3633248Z 905 planSelectionTransition: () => Effect.succeed(turnScopedSelectionTransition()), 2026-10-23T01:50:44.3633477Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3633554Z 2026-10-23T01:50:44.3634091Z 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-23T01:50:44.3634599Z 2026-10-23T01:50:44.3634659Z 55 Effect.runPromise( 2026-10-23T01:50:44.3634790Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3634869Z 2026-10-23T01:50:44.3635159Z 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-23T01:50:44.3635484Z 2026-10-23T01:50:44.3635556Z 59 onNone: () => Effect.succeed(undefined), 2026-10-23T01:50:44.3635729Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3635829Z 2026-10-23T01:50:44.3636301Z 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-23T01:50:44.3636809Z 2026-10-23T01:50:44.3636863Z 69 Effect.runPromise( 2026-10-23T01:50:44.3636998Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3637069Z 2026-10-23T01:50:44.3637536Z 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-23T01:50:44.3643734Z 2026-10-23T01:50:44.3643832Z 82 clear: () => Effect.runPromise(credentials.remove), 2026-10-23T01:50:44.3644015Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3644105Z 2026-10-23T01:50:44.3644475Z 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-23T01:50:44.3644873Z 2026-10-23T01:50:44.3644933Z 228 Effect.flatMap((snapshot) => 2026-10-23T01:50:44.3645081Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3645161Z 2026-10-23T01:50:44.3645371Z src/server/usageLimits.test.ts:74:5 - suggestion TS377017: This Effect.gen contains a single return statement. effect(unnecessaryEffectGen) 2026-10-23T01:50:44.3645731Z 2026-10-23T01:50:44.3645785Z 74 Effect.gen(function* () { 2026-10-23T01:50:44.3645919Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3646054Z 75 yield* withNodeServices( 2026-10-23T01:50:44.3646187Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3646309Z ... 2026-10-23T01:50:44.3646407Z 115 ); 2026-10-23T01:50:44.3646505Z ~~~~~~~~ 2026-10-23T01:50:44.3646603Z 116 }), 2026-10-23T01:50:44.3646699Z ~~~~~~ 2026-10-23T01:50:44.3646757Z 2026-10-23T01:50:44.3646759Z 2026-10-23T01:50:44.3647007Z src/authorization/remote.test.ts:232:25 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3647296Z 2026-10-23T01:50:44.3647414Z 232 identity: Effect.succeed(Option.some({ accountId: "user_connect" })), 2026-10-23T01:50:44.3647628Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3647719Z 2026-10-23T01:50:44.3647962Z src/authorization/remote.test.ts:237:17 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3648256Z 2026-10-23T01:50:44.3648340Z 237 id: Effect.succeed(Option.some("device-1")), 2026-10-23T01:50:44.3648509Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3648600Z 2026-10-23T01:50:44.3648963Z src/authorization/service.ts:553:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("RemoteEnvironmentAuthorization.authorizeDpop")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3649413Z 2026-10-23T01:50:44.3649467Z 553 authorizeDpop: (input) => 2026-10-23T01:50:44.3649602Z ~~~~~~~~~~~~~ 2026-10-23T01:50:44.3649672Z 2026-10-23T01:50:44.3650063Z src/authorization/service.ts:555:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("RemoteEnvironmentAuthorization.authorizeDpopHttp")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3650475Z 2026-10-23T01:50:44.3650534Z 555 authorizeDpopHttp: (input) => 2026-10-23T01:50:44.3650685Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3650762Z 2026-10-23T01:50:44.3651247Z src/connection/githubRoutingPermissions.ts:138:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubRoutingPermissions.get")((entry) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3651644Z 2026-10-23T01:50:44.3651693Z 138 get: (entry) => 2026-10-23T01:50:44.3651818Z ~~~ 2026-10-23T01:50:44.3651884Z 2026-10-23T01:50:44.3652257Z src/connection/githubRoutingPermissions.ts:143:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubRoutingPermissions.set")((entry, permission) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3652678Z 2026-10-23T01:50:44.3652739Z 143 set: (entry, permission) => { 2026-10-23T01:50:44.3652888Z ~~~ 2026-10-23T01:50:44.3652953Z 2026-10-23T01:50:44.3653325Z src/connection/githubRoutingPermissions.ts:159:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubRoutingPermissions.forget")((environmentId) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3653742Z 2026-10-23T01:50:44.3653798Z 159 forget: (environmentId) => 2026-10-23T01:50:44.3653942Z ~~~~~~ 2026-10-23T01:50:44.3654010Z 2026-10-23T01:50:44.3654353Z 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-23T01:50:44.3654741Z 2026-10-23T01:50:44.3654801Z 298 registerPairing: (input) => 2026-10-23T01:50:44.3654943Z ~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3655106Z 2026-10-23T01:50:44.3655446Z 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-23T01:50:44.3655820Z 2026-10-23T01:50:44.3655872Z 304 registerSsh: (input) => 2026-10-23T01:50:44.3656008Z ~~~~~~~~~~~ 2026-10-23T01:50:44.3656083Z 2026-10-23T01:50:44.3656428Z 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-23T01:50:44.3656818Z 2026-10-23T01:50:44.3656880Z 309 updateBearer: (input) => 2026-10-23T01:50:44.3657025Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3657099Z 2026-10-23T01:50:44.3657402Z 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-23T01:50:44.3657748Z 2026-10-23T01:50:44.3657810Z 1392 ? Effect.succeed(undefined) 2026-10-23T01:50:44.3657975Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3658072Z 2026-10-23T01:50:44.3658362Z 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-23T01:50:44.3658699Z 2026-10-23T01:50:44.3658762Z 1476 ? Effect.succeed(undefined) 2026-10-23T01:50:44.3658915Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3659010Z 2026-10-23T01:50:44.3659359Z 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-23T01:50:44.3659695Z 2026-10-23T01:50:44.3659768Z 1489 : Effect.succeed(undefined), 2026-10-23T01:50:44.3660023Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3660130Z 2026-10-23T01:50:44.3660408Z src/platform/orchestrationCache.test.ts:104:15 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-23T01:50:44.3660723Z 2026-10-23T01:50:44.3660788Z 104 }).pipe(Effect.map(Option.some)); 2026-10-23T01:50:44.3660944Z ~~~~~~~~~~ 2026-10-23T01:50:44.3661027Z 2026-10-23T01:50:44.3661442Z 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-23T01:50:44.3661900Z 2026-10-23T01:50:44.3662002Z 72 load: (prepared: PreparedConnection, threadId: ThreadId) => { 2026-10-23T01:50:44.3662195Z ~~~~ 2026-10-23T01:50:44.3662259Z 2026-10-23T01:50:44.3662584Z 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-23T01:50:44.3662949Z 2026-10-23T01:50:44.3663065Z 56 Effect.catch(() => Effect.succeed(Option.none())), 2026-10-23T01:50:44.3663277Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3663356Z 2026-10-23T01:50:44.3663740Z 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-23T01:50:44.3664161Z 2026-10-23T01:50:44.3664223Z 62 return yield* Effect.fail( 2026-10-23T01:50:44.3664377Z ~~~~~ 2026-10-23T01:50:44.3664459Z 2026-10-23T01:50:44.3664792Z 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-23T01:50:44.3665230Z 2026-10-23T01:50:44.3665337Z 57 execute: (target: OutdatedServerUpdateTarget, atomRegistry) => { 2026-10-23T01:50:44.3665543Z ~~~~~~~ 2026-10-23T01:50:44.3665607Z 2026-10-23T01:50:44.3665965Z 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-23T01:50:44.3666365Z 2026-10-23T01:50:44.3666426Z 90 load: (prepared, input) => 2026-10-23T01:50:44.3666576Z ~~~~ 2026-10-23T01:50:44.3666643Z 2026-10-23T01:50:44.3667097Z 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-23T01:50:44.3667595Z 2026-10-23T01:50:44.3667713Z 34 return yield* Schema.decodeUnknownEffect(codec)(stored.value).pipe( 2026-10-23T01:50:44.3667937Z ~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3668046Z 2026-10-23T01:50:44.3668301Z src/state/queryPersistence.ts:35:9 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-23T01:50:44.3668606Z 2026-10-23T01:50:44.3668665Z 35 Effect.map(Option.some), 2026-10-23T01:50:44.3668806Z ~~~~~~~~~~ 2026-10-23T01:50:44.3668883Z 2026-10-23T01:50:44.3669235Z 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-23T01:50:44.3669578Z 2026-10-23T01:50:44.3669640Z 680 execute: (target, atomRegistry) => { 2026-10-23T01:50:44.3669824Z ~~~~~~~ 2026-10-23T01:50:44.3669899Z 2026-10-23T01:50:44.3670265Z 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-23T01:50:44.3670681Z 2026-10-23T01:50:44.3670744Z 1125 Effect.flatMap((summary) => 2026-10-23T01:50:44.3670898Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3670984Z 2026-10-23T01:50:44.3671232Z src/state/shell-sync.test.ts:90:26 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3671523Z 2026-10-23T01:50:44.3671604Z 90 loadShell: () => Effect.succeed(Option.none()), 2026-10-23T01:50:44.3671786Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3671883Z 2026-10-23T01:50:44.3672123Z src/state/shell-sync.test.ts:96:27 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3672414Z 2026-10-23T01:50:44.3672497Z 96 loadThread: () => Effect.succeed(Option.none()), 2026-10-23T01:50:44.3672675Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3672776Z 2026-10-23T01:50:44.3673021Z src/state/shell-sync.test.ts:99:33 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3673311Z 2026-10-23T01:50:44.3673401Z 99 loadServerConfig: () => Effect.succeed(Option.none()), 2026-10-23T01:50:44.3673597Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3673703Z 2026-10-23T01:50:44.3673950Z src/state/shell-sync.test.ts:101:28 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3674243Z 2026-10-23T01:50:44.3674330Z 101 loadVcsRefs: () => Effect.succeed(Option.none()), 2026-10-23T01:50:44.3674515Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3674680Z 2026-10-23T01:50:44.3674928Z src/state/shell-sync.test.ts:108:21 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3675226Z 2026-10-23T01:50:44.3675301Z 108 load: () => Effect.succeed(Option.none()), 2026-10-23T01:50:44.3675482Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3675581Z 2026-10-23T01:50:44.3675826Z src/state/shell-sync.test.ts:229:26 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3676121Z 2026-10-23T01:50:44.3676205Z 229 loadShell: () => Effect.succeed(Option.none()), 2026-10-23T01:50:44.3676387Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3676490Z 2026-10-23T01:50:44.3676738Z src/state/shell-sync.test.ts:238:27 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3677035Z 2026-10-23T01:50:44.3677122Z 238 loadThread: () => Effect.succeed(Option.none()), 2026-10-23T01:50:44.3677307Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3677407Z 2026-10-23T01:50:44.3677656Z src/state/shell-sync.test.ts:241:33 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3677951Z 2026-10-23T01:50:44.3678048Z 241 loadServerConfig: () => Effect.succeed(Option.none()), 2026-10-23T01:50:44.3678247Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3678355Z 2026-10-23T01:50:44.3678670Z src/state/shell-sync.test.ts:243:28 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3678966Z 2026-10-23T01:50:44.3679051Z 243 loadVcsRefs: () => Effect.succeed(Option.none()), 2026-10-23T01:50:44.3679236Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3679339Z 2026-10-23T01:50:44.3679588Z src/state/shell-sync.test.ts:250:21 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3679899Z 2026-10-23T01:50:44.3679980Z 250 load: () => Effect.succeed(Option.none()), 2026-10-23T01:50:44.3680158Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3680253Z 2026-10-23T01:50:44.3680500Z src/state/shell-sync.test.ts:349:26 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3680794Z 2026-10-23T01:50:44.3680878Z 349 loadShell: () => Effect.succeed(Option.none()), 2026-10-23T01:50:44.3681056Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3681155Z 2026-10-23T01:50:44.3681405Z src/state/shell-sync.test.ts:355:27 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3681698Z 2026-10-23T01:50:44.3681784Z 355 loadThread: () => Effect.succeed(Option.none()), 2026-10-23T01:50:44.3681967Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3682065Z 2026-10-23T01:50:44.3682315Z src/state/shell-sync.test.ts:358:33 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3682612Z 2026-10-23T01:50:44.3682707Z 358 loadServerConfig: () => Effect.succeed(Option.none()), 2026-10-23T01:50:44.3682905Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3683010Z 2026-10-23T01:50:44.3683258Z src/state/shell-sync.test.ts:360:28 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3683552Z 2026-10-23T01:50:44.3683640Z 360 loadVcsRefs: () => Effect.succeed(Option.none()), 2026-10-23T01:50:44.3683884Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3683984Z 2026-10-23T01:50:44.3684235Z src/state/shell-sync.test.ts:367:21 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3684530Z 2026-10-23T01:50:44.3684606Z 367 load: () => Effect.succeed(Option.none()), 2026-10-23T01:50:44.3684781Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3684875Z 2026-10-23T01:50:44.3685121Z src/state/shell-sync.test.ts:446:26 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3685412Z 2026-10-23T01:50:44.3685519Z 446 loadShell: () => Effect.succeed(Option.some(cachedSnapshot)), 2026-10-23T01:50:44.3685727Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3685730Z 2026-10-23T01:50:44.3685981Z src/state/shell-sync.test.ts:448:27 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3685986Z 2026-10-23T01:50:44.3686068Z 448 loadThread: () => Effect.succeed(Option.none()), 2026-10-23T01:50:44.3686125Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3686128Z 2026-10-23T01:50:44.3686376Z src/state/shell-sync.test.ts:451:33 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3686379Z 2026-10-23T01:50:44.3686471Z 451 loadServerConfig: () => Effect.succeed(Option.none()), 2026-10-23T01:50:44.3686529Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3686531Z 2026-10-23T01:50:44.3686839Z src/state/shell-sync.test.ts:453:28 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3686842Z 2026-10-23T01:50:44.3686928Z 453 loadVcsRefs: () => Effect.succeed(Option.none()), 2026-10-23T01:50:44.3686988Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3686990Z 2026-10-23T01:50:44.3687235Z src/state/shell-sync.test.ts:460:21 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3687244Z 2026-10-23T01:50:44.3687333Z 460 load: () => Effect.succeed(Option.some(httpSnapshot)), 2026-10-23T01:50:44.3687392Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3687394Z 2026-10-23T01:50:44.3687746Z src/state/shellSnapshotHttp.ts:98:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ShellSnapshotLoader.load")((prepared) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3687749Z 2026-10-23T01:50:44.3687822Z 98 load: (prepared: PreparedConnection) => 2026-10-23T01:50:44.3687867Z ~~~~ 2026-10-23T01:50:44.3687869Z 2026-10-23T01:50:44.3688288Z src/state/threadHistoryController.ts:47:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadHistoryController.register")((environmentId, threadId, handler) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3688292Z 2026-10-23T01:50:44.3688373Z 47 register: (environmentId, threadId, handler) => 2026-10-23T01:50:44.3688424Z ~~~~~~~~ 2026-10-23T01:50:44.3688426Z 2026-10-23T01:50:44.3688807Z src/state/threadHistoryController.ts:59:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadHistoryController.unregister")((registration) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3688810Z 2026-10-23T01:50:44.3688869Z 59 unregister: (registration) => 2026-10-23T01:50:44.3688919Z ~~~~~~~~~~ 2026-10-23T01:50:44.3688922Z 2026-10-23T01:50:44.3689355Z src/state/threadHistoryController.ts:74:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadHistoryController.loadEarlier")((environmentId, threadId, throughEntryId) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3689410Z 2026-10-23T01:50:44.3689506Z 74 loadEarlier: (environmentId, threadId, throughEntryId) => 2026-10-23T01:50:44.3689557Z ~~~~~~~~~~~ 2026-10-23T01:50:44.3689559Z 2026-10-23T01:50:44.3689831Z src/state/threads-sync.test.ts:1006:29 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3689834Z 2026-10-23T01:50:44.3689953Z 1006 : { loadCached: Effect.succeed(Option.some(saved!)) }, 2026-10-23T01:50:44.3690015Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3690017Z 2026-10-23T01:50:44.3690320Z 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-23T01:50:44.3690323Z 2026-10-23T01:50:44.3690422Z 447 execute: (input: RunVcsStackedActionInput, registry) => { 2026-10-23T01:50:44.3690471Z ~~~~~~~ 2026-10-23T01:50:44.3690474Z 2026-10-23T01:50:44.3690476Z 2026-10-23T01:50:44.3690534Z ~/apps/mobile$ tsc --noEmit 2026-10-23T01:50:44.3690591Z ~/infra/relay$ tsc --noEmit 2026-10-23T01:50:44.3690647Z ~/apps/web$ tsc --noEmit 2026-10-23T01:50:44.3690698Z Result (22 files): 2026-10-23T01:50:44.3690745Z - 0 errors 2026-10-23T01:50:44.3690794Z - 0 warnings 2026-10-23T01:50:44.3690841Z - 0 hints 2026-10-23T01:50:44.3690843Z 2026-10-23T01:50:44.3690846Z 2026-10-23T01:50:44.3690958Z ~/apps/desktop$ tsc --noEmit 2026-10-23T01:50:44.3691483Z 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-23T01:50:44.3691487Z 2026-10-23T01:50:44.3691543Z 220 send: (body) => 2026-10-23T01:50:44.3691591Z ~~~~ 2026-10-23T01:50:44.3691595Z 2026-10-23T01:50:44.3691943Z 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-23T01:50:44.3691946Z 2026-10-23T01:50:44.3691999Z 12 onFailure: (error) => 2026-10-23T01:50:44.3692047Z ~~~~~~~~~ 2026-10-23T01:50:44.3692049Z 2026-10-23T01:50:44.3692420Z src/environments/CloudflareApiPause.ts:64:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("CloudflareApiPause.pauseUntil")((untilMillis) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3692423Z 2026-10-23T01:50:44.3692486Z 64 pauseUntil: (untilMillis) => 2026-10-23T01:50:44.3692534Z ~~~~~~~~~~ 2026-10-23T01:50:44.3692537Z 2026-10-23T01:50:44.3692812Z src/http/Api.ts:198:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("onNone")(function*() { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3692817Z 2026-10-23T01:50:44.3692871Z 198 onNone: () => 2026-10-23T01:50:44.3692919Z ~~~~~~ 2026-10-23T01:50:44.3692921Z 2026-10-23T01:50:44.3693246Z 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-23T01:50:44.3693248Z 2026-10-23T01:50:44.3693378Z 92 fileResponse: () => Effect.die("Relay API does not serve filesystem responses"), 2026-10-23T01:50:44.3693422Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3693425Z 2026-10-23T01:50:44.3693758Z 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-23T01:50:44.3693761Z 2026-10-23T01:50:44.3693884Z 93 fileWebResponse: () => Effect.die("Relay API does not serve file responses"), 2026-10-23T01:50:44.3693996Z ~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3693999Z 2026-10-23T01:50:44.3694293Z src/worker.ts:242:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("HookInbox.HookInbox.hold")((_) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3694299Z 2026-10-23T01:50:44.3694370Z 242 hold: ({ endpointKey, baseUrl, hook }) => 2026-10-23T01:50:44.3694419Z ~~~~ 2026-10-23T01:50:44.3694422Z 2026-10-23T01:50:44.3694714Z src/worker.ts:244:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("HookInbox.HookInbox.wake")((_) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3694719Z 2026-10-23T01:50:44.3694787Z 244 wake: ({ endpointKey, baseUrl }) => 2026-10-23T01:50:44.3694833Z ~~~~ 2026-10-23T01:50:44.3694835Z 2026-10-23T01:50:44.3695135Z src/worker.ts:246:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("HookInbox.HookInbox.clear")((_) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3695139Z 2026-10-23T01:50:44.3695204Z 246 clear: ({ endpointKey }) => 2026-10-23T01:50:44.3695258Z ~~~~~ 2026-10-23T01:50:44.3695261Z 2026-10-23T01:50:44.3695627Z src/worker.ts:275:15 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("FcmDeliveryQueueSender.FcmDeliveryQueueSender.send")((body) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3695629Z 2026-10-23T01:50:44.3695683Z 275 send: (body) => 2026-10-23T01:50:44.3695735Z ~~~~ 2026-10-23T01:50:44.3695738Z 2026-10-23T01:50:44.3695740Z 2026-10-23T01:50:44.3696150Z src/app/DesktopAppActivation.ts:389:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppActivation.complete")((response) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3696153Z 2026-10-23T01:50:44.3696279Z 389 complete: (response) => Effect.sync(() => broker.complete(response)), 2026-10-23T01:50:44.3696330Z ~~~~~~~~ 2026-10-23T01:50:44.3696332Z 2026-10-23T01:50:44.3696589Z src/app/DesktopClerk.test.ts:300:27 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3696592Z 2026-10-23T01:50:44.3696693Z 300 currentMainOrFirst: Effect.succeed(Option.some(window)), 2026-10-23T01:50:44.3696754Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3696757Z 2026-10-23T01:50:44.3697088Z 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-23T01:50:44.3697091Z 2026-10-23T01:50:44.3697149Z 459 onSome: (logFile) => 2026-10-23T01:50:44.3697196Z ~~~~~~ 2026-10-23T01:50:44.3697198Z 2026-10-23T01:50:44.3697578Z 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-23T01:50:44.3697582Z 2026-10-23T01:50:44.3697649Z 589 forInstance: (id) => makeForId(id), 2026-10-23T01:50:44.3697699Z ~~~~~~~~~~~ 2026-10-23T01:50:44.3697701Z 2026-10-23T01:50:44.3697962Z src/app/DesktopWebLinks.test.ts:29:31 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3697965Z 2026-10-23T01:50:44.3698066Z 29 currentMainOrFirst: Effect.succeed(Option.some(window)), 2026-10-23T01:50:44.3698128Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3698131Z 2026-10-23T01:50:44.3698457Z 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-23T01:50:44.3698523Z 2026-10-23T01:50:44.3698579Z 72 receive: (url) => 2026-10-23T01:50:44.3698625Z ~~~~~~~ 2026-10-23T01:50:44.3698627Z 2026-10-23T01:50:44.3698976Z 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-23T01:50:44.3698979Z 2026-10-23T01:50:44.3699041Z 77 setRendererReady: (ready) => 2026-10-23T01:50:44.3699096Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3699098Z 2026-10-23T01:50:44.3699430Z src/backend/DesktopBackendManager.ts:1062:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("onSome")(function*(run) { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3699433Z 2026-10-23T01:50:44.3699487Z 1062 onSome: (run) => 2026-10-23T01:50:44.3699535Z ~~~~~~ 2026-10-23T01:50:44.3699537Z 2026-10-23T01:50:44.3699930Z src/backend/DesktopBackendPool.ts:307:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBackendPool.get")((id) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3699934Z 2026-10-23T01:50:44.3699987Z 307 get: (id) => 2026-10-23T01:50:44.3700032Z ~~~ 2026-10-23T01:50:44.3700034Z 2026-10-23T01:50:44.3700374Z src/backend/DesktopBackendPool.ts:342:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBackendPool.get")((id) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3700377Z 2026-10-23T01:50:44.3700535Z 342 get: (id) => Effect.succeed(Option.fromNullishOr(byId.get(id))), 2026-10-23T01:50:44.3700586Z ~~~ 2026-10-23T01:50:44.3700588Z 2026-10-23T01:50:44.3700927Z src/backend/DesktopBackendPool.ts:345:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBackendPool.register")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3700932Z 2026-10-23T01:50:44.3701077Z 345 register: () => Effect.die("DesktopBackendPool.layerTest does not support register"), 2026-10-23T01:50:44.3701129Z ~~~~~~~~ 2026-10-23T01:50:44.3701131Z 2026-10-23T01:50:44.3701477Z src/backend/DesktopBackendPool.ts:346:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBackendPool.unregister")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3701479Z 2026-10-23T01:50:44.3701635Z 346 unregister: () => Effect.die("DesktopBackendPool.layerTest does not support unregister"), 2026-10-23T01:50:44.3701689Z ~~~~~~~~~~ 2026-10-23T01:50:44.3701694Z 2026-10-23T01:50:44.3702008Z src/electron/ElectronApp.ts:145:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.exit")((code) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3702013Z 2026-10-23T01:50:44.3702069Z 145 exit: (code) => 2026-10-23T01:50:44.3702125Z ~~~~ 2026-10-23T01:50:44.3702128Z 2026-10-23T01:50:44.3702464Z src/electron/ElectronApp.ts:149:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.relaunch")((options) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3702466Z 2026-10-23T01:50:44.3702526Z 149 relaunch: (options) => 2026-10-23T01:50:44.3702572Z ~~~~~~~~ 2026-10-23T01:50:44.3702575Z 2026-10-23T01:50:44.3702905Z src/electron/ElectronApp.ts:153:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.setPath")((name, path) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3702908Z 2026-10-23T01:50:44.3702967Z 153 setPath: (name, path) => 2026-10-23T01:50:44.3703019Z ~~~~~~~ 2026-10-23T01:50:44.3703022Z 2026-10-23T01:50:44.3703337Z src/electron/ElectronApp.ts:157:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.setName")((name) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3703403Z 2026-10-23T01:50:44.3703457Z 157 setName: (name) => 2026-10-23T01:50:44.3703505Z ~~~~~~~ 2026-10-23T01:50:44.3703508Z 2026-10-23T01:50:44.3703864Z src/electron/ElectronApp.ts:161:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.setAboutPanelOptions")((options) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3703867Z 2026-10-23T01:50:44.3703939Z 161 setAboutPanelOptions: (options) => 2026-10-23T01:50:44.3703992Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3703994Z 2026-10-23T01:50:44.3704337Z src/electron/ElectronApp.ts:165:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.setAppUserModelId")((id) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3704339Z 2026-10-23T01:50:44.3704403Z 165 setAppUserModelId: (id) => 2026-10-23T01:50:44.3704457Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3704459Z 2026-10-23T01:50:44.3704846Z src/electron/ElectronApp.ts:170:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.setAsDefaultProtocolClient")((protocol, path, args) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3704849Z 2026-10-23T01:50:44.3704944Z 170 setAsDefaultProtocolClient: (protocol, path, args) => 2026-10-23T01:50:44.3705003Z ~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3705005Z 2026-10-23T01:50:44.3705408Z src/electron/ElectronApp.ts:177:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.setDesktopName")((desktopName) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3705411Z 2026-10-23T01:50:44.3705476Z 177 setDesktopName: (desktopName) => 2026-10-23T01:50:44.3705523Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3705530Z 2026-10-23T01:50:44.3705861Z src/electron/ElectronApp.ts:184:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.setDockIcon")((iconPath) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3705863Z 2026-10-23T01:50:44.3705922Z 184 setDockIcon: (iconPath) => 2026-10-23T01:50:44.3705972Z ~~~~~~~~~~~ 2026-10-23T01:50:44.3705975Z 2026-10-23T01:50:44.3706353Z src/electron/ElectronApp.ts:188:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.appendCommandLineSwitch")((switchName, value) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3706355Z 2026-10-23T01:50:44.3706444Z 188 appendCommandLineSwitch: (switchName, value) => 2026-10-23T01:50:44.3706495Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3706498Z 2026-10-23T01:50:44.3706853Z src/electron/ElectronApp.ts:196:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.onBeforeQuitForUpdate")((listener) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3706858Z 2026-10-23T01:50:44.3706932Z 196 onBeforeQuitForUpdate: (listener) => 2026-10-23T01:50:44.3706984Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3706987Z 2026-10-23T01:50:44.3707567Z src/electron/ElectronApp.ts:206:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronApp.removeCommandLineSwitch")((switchName) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3707573Z 2026-10-23T01:50:44.3707643Z 206 removeCommandLineSwitch: (switchName) => 2026-10-23T01:50:44.3707696Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3707698Z 2026-10-23T01:50:44.3708067Z 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-23T01:50:44.3708070Z 2026-10-23T01:50:44.3708187Z 169 showMessageBox: (options, owner) => 2026-10-23T01:50:44.3708233Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3708236Z 2026-10-23T01:50:44.3708592Z 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-23T01:50:44.3708595Z 2026-10-23T01:50:44.3708660Z 185 showErrorBox: (title, content) => 2026-10-23T01:50:44.3708710Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3708713Z 2026-10-23T01:50:44.3709068Z src/electron/ElectronMenu.ts:193:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronMenu.setApplicationMenu")((template) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3709071Z 2026-10-23T01:50:44.3709135Z 193 setApplicationMenu: (template) => 2026-10-23T01:50:44.3709192Z ~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3709194Z 2026-10-23T01:50:44.3709535Z src/electron/ElectronMenu.ts:207:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronMenu.popupTemplate")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3709538Z 2026-10-23T01:50:44.3709600Z 207 popupTemplate: (input) => 2026-10-23T01:50:44.3709648Z ~~~~~~~~~~~~~ 2026-10-23T01:50:44.3709651Z 2026-10-23T01:50:44.3710045Z src/electron/ElectronMenu.ts:225:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronMenu.showContextMenu")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3710048Z 2026-10-23T01:50:44.3710109Z 225 showContextMenu: (input) => 2026-10-23T01:50:44.3710205Z ~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3710208Z 2026-10-23T01:50:44.3710622Z 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-23T01:50:44.3710626Z 2026-10-23T01:50:44.3710705Z 82 getSystemIdleState: (idleThresholdSeconds) => 2026-10-23T01:50:44.3710752Z ~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3710754Z 2026-10-23T01:50:44.3711117Z 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-23T01:50:44.3711120Z 2026-10-23T01:50:44.3711179Z 77 encryptString: (value) => 2026-10-23T01:50:44.3711233Z ~~~~~~~~~~~~~ 2026-10-23T01:50:44.3711235Z 2026-10-23T01:50:44.3711598Z 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-23T01:50:44.3711605Z 2026-10-23T01:50:44.3711659Z 82 decryptString: (value) => 2026-10-23T01:50:44.3711711Z ~~~~~~~~~~~~~ 2026-10-23T01:50:44.3711714Z 2026-10-23T01:50:44.3712051Z src/electron/ElectronShell.ts:68:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronShell.openExternal")((rawUrl) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3712054Z 2026-10-23T01:50:44.3712111Z 68 openExternal: (rawUrl) => 2026-10-23T01:50:44.3712157Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3712159Z 2026-10-23T01:50:44.3712512Z src/electron/ElectronShell.ts:79:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronShell.openSystemSettings")((pane) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3712514Z 2026-10-23T01:50:44.3712578Z 79 openSystemSettings: (pane) => 2026-10-23T01:50:44.3712629Z ~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3712632Z 2026-10-23T01:50:44.3712957Z src/electron/ElectronShell.ts:86:3 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronShell.copyText")((text) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3713007Z 2026-10-23T01:50:44.3713062Z 86 copyText: (text) => 2026-10-23T01:50:44.3713113Z ~~~~~~~~ 2026-10-23T01:50:44.3713115Z 2026-10-23T01:50:44.3713443Z 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-23T01:50:44.3713445Z 2026-10-23T01:50:44.3713500Z 34 setSource: (theme) => 2026-10-23T01:50:44.3713546Z ~~~~~~~~~ 2026-10-23T01:50:44.3713552Z 2026-10-23T01:50:44.3713879Z 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-23T01:50:44.3713882Z 2026-10-23T01:50:44.3713943Z 41 onUpdated: (listener) => 2026-10-23T01:50:44.3713994Z ~~~~~~~~~ 2026-10-23T01:50:44.3713996Z 2026-10-23T01:50:44.3714344Z 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-23T01:50:44.3714347Z 2026-10-23T01:50:44.3714401Z 85 setFeedURL: (options) => 2026-10-23T01:50:44.3714451Z ~~~~~~~~~~ 2026-10-23T01:50:44.3714453Z 2026-10-23T01:50:44.3714803Z 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-23T01:50:44.3714852Z 2026-10-23T01:50:44.3714910Z 90 setAutoDownload: (value) => 2026-10-23T01:50:44.3714961Z ~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3714964Z 2026-10-23T01:50:44.3715324Z 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-23T01:50:44.3715328Z 2026-10-23T01:50:44.3715397Z 95 setAutoInstallOnAppQuit: (value) => 2026-10-23T01:50:44.3715449Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3715452Z 2026-10-23T01:50:44.3715793Z 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-23T01:50:44.3715795Z 2026-10-23T01:50:44.3715855Z 100 setChannel: (channel) => 2026-10-23T01:50:44.3715903Z ~~~~~~~~~~ 2026-10-23T01:50:44.3715905Z 2026-10-23T01:50:44.3716264Z 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-23T01:50:44.3716266Z 2026-10-23T01:50:44.3716333Z 105 setAllowPrerelease: (value) => 2026-10-23T01:50:44.3716387Z ~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3716389Z 2026-10-23T01:50:44.3716740Z 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-23T01:50:44.3716746Z 2026-10-23T01:50:44.3716803Z 111 setAllowDowngrade: (value) => 2026-10-23T01:50:44.3716854Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3716856Z 2026-10-23T01:50:44.3717207Z 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-23T01:50:44.3717210Z 2026-10-23T01:50:44.3717268Z 116 setFullChangelog: (value) => 2026-10-23T01:50:44.3717314Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3717317Z 2026-10-23T01:50:44.3717761Z 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-23T01:50:44.3717763Z 2026-10-23T01:50:44.3717842Z 121 setDisableDifferentialDownload: (value) => 2026-10-23T01:50:44.3717897Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3717900Z 2026-10-23T01:50:44.3718242Z 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-23T01:50:44.3718244Z 2026-10-23T01:50:44.3718327Z 140 quitAndInstall: ({ isSilent, isForceRunAfter }) => 2026-10-23T01:50:44.3718378Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3718380Z 2026-10-23T01:50:44.3718723Z 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-23T01:50:44.3718728Z 2026-10-23T01:50:44.3718786Z 154 on: (eventName, listener) => { 2026-10-23T01:50:44.3718836Z ~~ 2026-10-23T01:50:44.3718838Z 2026-10-23T01:50:44.3719164Z src/electron/ElectronWindow.ts:211:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronWindow.create")((options) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3719167Z 2026-10-23T01:50:44.3719226Z 211 create: (options) => { 2026-10-23T01:50:44.3719278Z ~~~~~~ 2026-10-23T01:50:44.3719281Z 2026-10-23T01:50:44.3719654Z src/electron/ElectronWindow.ts:243:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronWindow.setMain")((window) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3719657Z 2026-10-23T01:50:44.3719767Z 243 setMain: (window) => Ref.set(mainWindowRef, Option.some(window)), 2026-10-23T01:50:44.3719830Z ~~~~~~~ 2026-10-23T01:50:44.3719832Z 2026-10-23T01:50:44.3720188Z src/electron/ElectronWindow.ts:244:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronWindow.clearMain")((window) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3720191Z 2026-10-23T01:50:44.3720248Z 244 clearMain: (window) => 2026-10-23T01:50:44.3720299Z ~~~~~~~~~ 2026-10-23T01:50:44.3720301Z 2026-10-23T01:50:44.3720642Z src/electron/ElectronWindow.ts:254:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronWindow.prepareReveal")((window) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3720648Z 2026-10-23T01:50:44.3720704Z 254 prepareReveal: (window) => 2026-10-23T01:50:44.3720753Z ~~~~~~~~~~~~~ 2026-10-23T01:50:44.3720756Z 2026-10-23T01:50:44.3721079Z src/electron/ElectronWindow.ts:264:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ElectronWindow.reveal")((window) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3721083Z 2026-10-23T01:50:44.3721138Z 264 reveal: (window) => 2026-10-23T01:50:44.3721184Z ~~~~~~ 2026-10-23T01:50:44.3721186Z 2026-10-23T01:50:44.3721588Z src/settings/DesktopAppSettings.ts:526:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setMainWindowBounds")((bounds, isMaximized) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3721591Z 2026-10-23T01:50:44.3721673Z 526 setMainWindowBounds: (bounds, isMaximized) => 2026-10-23T01:50:44.3721725Z ~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3721728Z 2026-10-23T01:50:44.3722109Z src/settings/DesktopAppSettings.ts:538:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setServerExposureMode")((mode) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3722166Z 2026-10-23T01:50:44.3722231Z 538 setServerExposureMode: (mode) => 2026-10-23T01:50:44.3722283Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3722286Z 2026-10-23T01:50:44.3722655Z src/settings/DesktopAppSettings.ts:542:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setTailscaleServe")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3722658Z 2026-10-23T01:50:44.3722723Z 542 setTailscaleServe: (input) => 2026-10-23T01:50:44.3722773Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3722778Z 2026-10-23T01:50:44.3723145Z src/settings/DesktopAppSettings.ts:546:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setUpdateChannel")((channel) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3723148Z 2026-10-23T01:50:44.3723216Z 546 setUpdateChannel: (channel) => 2026-10-23T01:50:44.3723268Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3723270Z 2026-10-23T01:50:44.3723649Z src/settings/DesktopAppSettings.ts:550:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setWslBackendEnabled")((enabled) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3723652Z 2026-10-23T01:50:44.3723718Z 550 setWslBackendEnabled: (enabled) => 2026-10-23T01:50:44.3723770Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3723773Z 2026-10-23T01:50:44.3724185Z src/settings/DesktopAppSettings.ts:554:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setWslDistro")((distro) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3724188Z 2026-10-23T01:50:44.3724249Z 554 setWslDistro: (distro) => 2026-10-23T01:50:44.3724301Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3724303Z 2026-10-23T01:50:44.3724655Z src/settings/DesktopAppSettings.ts:560:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setWslOnly")((enabled) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3724663Z 2026-10-23T01:50:44.3724718Z 560 setWslOnly: (enabled) => 2026-10-23T01:50:44.3724767Z ~~~~~~~~~~ 2026-10-23T01:50:44.3724770Z 2026-10-23T01:50:44.3725165Z src/settings/DesktopAppSettings.ts:564:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setLocalEnvironmentEnabled")((enabled) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3725168Z 2026-10-23T01:50:44.3725245Z 564 setLocalEnvironmentEnabled: (enabled) => 2026-10-23T01:50:44.3725296Z ~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3725298Z 2026-10-23T01:50:44.3725705Z src/settings/DesktopAppSettings.ts:599:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setMainWindowBounds")((bounds, isMaximized) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3725709Z 2026-10-23T01:50:44.3725795Z 599 setMainWindowBounds: (bounds, isMaximized) => 2026-10-23T01:50:44.3725853Z ~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3725855Z 2026-10-23T01:50:44.3726240Z src/settings/DesktopAppSettings.ts:601:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setServerExposureMode")((mode) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3726242Z 2026-10-23T01:50:44.3726308Z 601 setServerExposureMode: (mode) => 2026-10-23T01:50:44.3726361Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3726363Z 2026-10-23T01:50:44.3726736Z src/settings/DesktopAppSettings.ts:603:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setTailscaleServe")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3726739Z 2026-10-23T01:50:44.3726941Z 603 setTailscaleServe: (input) => update((settings) => setTailscaleServe(settings, input)), 2026-10-23T01:50:44.3726996Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3726998Z 2026-10-23T01:50:44.3727368Z src/settings/DesktopAppSettings.ts:604:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setUpdateChannel")((channel) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3727370Z 2026-10-23T01:50:44.3727519Z 604 setUpdateChannel: (channel) => update((settings) => setUpdateChannel(settings, channel)), 2026-10-23T01:50:44.3727572Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3727575Z 2026-10-23T01:50:44.3727956Z src/settings/DesktopAppSettings.ts:605:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setWslBackendEnabled")((enabled) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3727959Z 2026-10-23T01:50:44.3728032Z 605 setWslBackendEnabled: (enabled) => 2026-10-23T01:50:44.3728082Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3728084Z 2026-10-23T01:50:44.3728503Z src/settings/DesktopAppSettings.ts:607:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setWslDistro")((distro) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3728507Z 2026-10-23T01:50:44.3728642Z 607 setWslDistro: (distro) => update((settings) => setWslDistro(settings, distro)), 2026-10-23T01:50:44.3728694Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3728696Z 2026-10-23T01:50:44.3729106Z src/settings/DesktopAppSettings.ts:608:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setWslOnly")((enabled) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3729109Z 2026-10-23T01:50:44.3729235Z 608 setWslOnly: (enabled) => update((settings) => setWslOnly(settings, enabled)), 2026-10-23T01:50:44.3729289Z ~~~~~~~~~~ 2026-10-23T01:50:44.3729292Z 2026-10-23T01:50:44.3729689Z src/settings/DesktopAppSettings.ts:609:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopAppSettings.setLocalEnvironmentEnabled")((enabled) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3729691Z 2026-10-23T01:50:44.3729770Z 609 setLocalEnvironmentEnabled: (enabled) => 2026-10-23T01:50:44.3729866Z ~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3729869Z 2026-10-23T01:50:44.3730242Z 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-23T01:50:44.3730244Z 2026-10-23T01:50:44.3730300Z 197 set: (settings) => 2026-10-23T01:50:44.3730350Z ~~~ 2026-10-23T01:50:44.3730353Z 2026-10-23T01:50:44.3730709Z 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-23T01:50:44.3730713Z 2026-10-23T01:50:44.3730817Z 231 set: (settings) => Ref.set(settingsRef, Option.some(settings)), 2026-10-23T01:50:44.3730863Z ~~~ 2026-10-23T01:50:44.3730865Z 2026-10-23T01:50:44.3731338Z src/snapShot/DesktopSnapShot.ts:1729:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopSnapShot.setAnimationDestination")((id, destination) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3731342Z 2026-10-23T01:50:44.3731429Z 1729 setAnimationDestination: (id, destination) => 2026-10-23T01:50:44.3731482Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3731484Z 2026-10-23T01:50:44.3731840Z src/snapShot/DesktopSnapShot.ts:1740:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopSnapShot.dismissAnimation")((id) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3731924Z 2026-10-23T01:50:44.3731982Z 1740 dismissAnimation: (id) => 2026-10-23T01:50:44.3732034Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3732038Z 2026-10-23T01:50:44.3732375Z src/snapShot/DesktopSnapShot.ts:1745:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopSnapShot.acknowledge")((id) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3732378Z 2026-10-23T01:50:44.3732431Z 1745 acknowledge: (id) => 2026-10-23T01:50:44.3732478Z ~~~~~~~~~~~ 2026-10-23T01:50:44.3732480Z 2026-10-23T01:50:44.3732843Z 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-23T01:50:44.3732845Z 2026-10-23T01:50:44.3732908Z 136 discoverHosts: (input) => 2026-10-23T01:50:44.3732959Z ~~~~~~~~~~~~~ 2026-10-23T01:50:44.3732962Z 2026-10-23T01:50:44.3733323Z 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-23T01:50:44.3733326Z 2026-10-23T01:50:44.3733381Z 141 resolveHost: (alias) => 2026-10-23T01:50:44.3733434Z ~~~~~~~~~~~ 2026-10-23T01:50:44.3733436Z 2026-10-23T01:50:44.3733911Z 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-23T01:50:44.3733915Z 2026-10-23T01:50:44.3733997Z 146 ensureEnvironment: (target, ensureOptions) => 2026-10-23T01:50:44.3734047Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3734049Z 2026-10-23T01:50:44.3734435Z 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-23T01:50:44.3734438Z 2026-10-23T01:50:44.3734506Z 154 disconnectEnvironment: (target) => 2026-10-23T01:50:44.3734559Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3734561Z 2026-10-23T01:50:44.3734938Z src/updates/DesktopUpdates.ts:1171:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopUpdates.installPrepared")((expectedVersion) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3734941Z 2026-10-23T01:50:44.3735094Z 1171 installPrepared: (expectedVersion) => installWithExpectedVersion(expectedVersion), 2026-10-23T01:50:44.3735144Z ~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3735146Z 2026-10-23T01:50:44.3735499Z src/wsl/DesktopWslEnvironment.ts:1101:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.preWarm")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3735505Z 2026-10-23T01:50:44.3735566Z 1101 preWarm: () => Effect.void, 2026-10-23T01:50:44.3735613Z ~~~~~~~ 2026-10-23T01:50:44.3735616Z 2026-10-23T01:50:44.3736011Z src/wsl/DesktopWslEnvironment.ts:1102:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.windowsToWslPath")((distro, windowsPath) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3736014Z 2026-10-23T01:50:44.3736091Z 1102 windowsToWslPath: (distro, windowsPath) => 2026-10-23T01:50:44.3736148Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3736150Z 2026-10-23T01:50:44.3736514Z src/wsl/DesktopWslEnvironment.ts:1104:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.getUserHome")((distro) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3736570Z 2026-10-23T01:50:44.3736732Z 1104 getUserHome: (distro) => Effect.succeed(stub.getUserHome?.(distro) ?? Option.none()), 2026-10-23T01:50:44.3736780Z ~~~~~~~~~~~ 2026-10-23T01:50:44.3736786Z 2026-10-23T01:50:44.3737147Z src/wsl/DesktopWslEnvironment.ts:1105:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.getDistroIp")((distro) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3737149Z 2026-10-23T01:50:44.3737307Z 1105 getDistroIp: (distro) => Effect.succeed(stub.getDistroIp?.(distro) ?? Option.none()), 2026-10-23T01:50:44.3737358Z ~~~~~~~~~~~ 2026-10-23T01:50:44.3737362Z 2026-10-23T01:50:44.3737755Z src/wsl/DesktopWslEnvironment.ts:1106:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.prepareRuntime")((distro, archive) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3737760Z 2026-10-23T01:50:44.3737832Z 1106 prepareRuntime: (distro, archive) => 2026-10-23T01:50:44.3737885Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3737888Z 2026-10-23T01:50:44.3738281Z src/wsl/DesktopWslEnvironment.ts:1113:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.pruneRuntimes")((distro, runtimeId) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3738283Z 2026-10-23T01:50:44.3738438Z 1113 pruneRuntimes: (distro, runtimeId) => stub.pruneRuntimes?.(distro, runtimeId) ?? Effect.void, 2026-10-23T01:50:44.3738486Z ~~~~~~~~~~~~~ 2026-10-23T01:50:44.3738488Z 2026-10-23T01:50:44.3738934Z src/wsl/DesktopWslEnvironment.ts:1114:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.invalidateRuntime")((distro, runtimeId) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3738936Z 2026-10-23T01:50:44.3739011Z 1114 invalidateRuntime: (distro, runtimeId) => 2026-10-23T01:50:44.3739064Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3739067Z 2026-10-23T01:50:44.3739456Z src/wsl/DesktopWslEnvironment.ts:1116:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.probeRuntime")((distro, linuxAppRoot) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3739459Z 2026-10-23T01:50:44.3739530Z 1116 probeRuntime: (distro, linuxAppRoot) => 2026-10-23T01:50:44.3739576Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3739580Z 2026-10-23T01:50:44.3740040Z src/wsl/DesktopWslEnvironment.ts:1120:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.ensureNodePty")((distro, linuxAppRoot, options) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3740043Z 2026-10-23T01:50:44.3740136Z 1120 ensureNodePty: (distro, linuxAppRoot, options) => 2026-10-23T01:50:44.3740190Z ~~~~~~~~~~~~~ 2026-10-23T01:50:44.3740192Z 2026-10-23T01:50:44.3740553Z src/wsl/DesktopWslEnvironment.ts:1187:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.preWarm")((distro) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3740555Z 2026-10-23T01:50:44.3740615Z 1187 preWarm: (distro) => 2026-10-23T01:50:44.3740660Z ~~~~~~~ 2026-10-23T01:50:44.3740662Z 2026-10-23T01:50:44.3741056Z src/wsl/DesktopWslEnvironment.ts:1192:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.prepareRuntime")((distro, archive) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3741059Z 2026-10-23T01:50:44.3741128Z 1192 prepareRuntime: (distro, archive) => 2026-10-23T01:50:44.3741179Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3741182Z 2026-10-23T01:50:44.3741564Z src/wsl/DesktopWslEnvironment.ts:1196:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.pruneRuntimes")((distro, runtimeId) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3741623Z 2026-10-23T01:50:44.3741692Z 1196 pruneRuntimes: (distro, runtimeId) => 2026-10-23T01:50:44.3741742Z ~~~~~~~~~~~~~ 2026-10-23T01:50:44.3741744Z 2026-10-23T01:50:44.3742139Z src/wsl/DesktopWslEnvironment.ts:1200:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.invalidateRuntime")((distro, runtimeId) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3742142Z 2026-10-23T01:50:44.3742220Z 1200 invalidateRuntime: (distro, runtimeId) => 2026-10-23T01:50:44.3742269Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3742271Z 2026-10-23T01:50:44.3742658Z src/wsl/DesktopWslEnvironment.ts:1204:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.probeRuntime")((distro, linuxAppRoot) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3742662Z 2026-10-23T01:50:44.3742734Z 1204 probeRuntime: (distro, linuxAppRoot) => 2026-10-23T01:50:44.3742784Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3742786Z 2026-10-23T01:50:44.3743193Z src/wsl/DesktopWslEnvironment.ts:1208:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopWslEnvironment.ensureNodePty")((distro, linuxAppRoot, options) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3743195Z 2026-10-23T01:50:44.3743279Z 1208 ensureNodePty: (distro, linuxAppRoot, options) => 2026-10-23T01:50:44.3743377Z ~~~~~~~~~~~~~ 2026-10-23T01:50:44.3743380Z 2026-10-23T01:50:44.3743382Z 2026-10-23T01:50:44.3743384Z 2026-10-23T01:50:44.3743781Z src/connection/platform.ts:805:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.EnvironmentOwnedDataCleanup.clear")((environmentId) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3743785Z 2026-10-23T01:50:44.3743849Z 805 clear: (environmentId) => 2026-10-23T01:50:44.3743896Z ~~~~~ 2026-10-23T01:50:44.3743899Z 2026-10-23T01:50:44.3744245Z src/connection/platform.ts:815:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("EnvironmentRpcRequestObserver.observe")((_) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3744250Z 2026-10-23T01:50:44.3744345Z 815 observe: ({ environmentId, environmentLabel, method }) => 2026-10-23T01:50:44.3744391Z ~~~~~~~ 2026-10-23T01:50:44.3744394Z 2026-10-23T01:50:44.3744727Z src/connection/storage.ts:549:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubRoutingPermissions.get")((entry) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3744730Z 2026-10-23T01:50:44.3744779Z 549 get: (entry) => 2026-10-23T01:50:44.3744826Z ~~~ 2026-10-23T01:50:44.3744829Z 2026-10-23T01:50:44.3745182Z src/connection/storage.ts:576:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubRoutingPermissions.set")((entry, permission) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3745185Z 2026-10-23T01:50:44.3745244Z 576 set: (entry, permission) => { 2026-10-23T01:50:44.3745291Z ~~~ 2026-10-23T01:50:44.3745293Z 2026-10-23T01:50:44.3745650Z src/connection/storage.ts:596:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitHubRoutingPermissions.forget")((environmentId) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3745654Z 2026-10-23T01:50:44.3745743Z 596 forget: (environmentId) => write(environmentId, null), 2026-10-23T01:50:44.3745791Z ~~~~~~ 2026-10-23T01:50:44.3745794Z 2026-10-23T01:50:44.3746193Z src/connection/storage.ts:643:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.ConnectionRegistrationStore.register")((registration, routes) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3746250Z 2026-10-23T01:50:44.3746314Z 643 register: (registration, routes) => 2026-10-23T01:50:44.3746359Z ~~~~~~~~ 2026-10-23T01:50:44.3746365Z 2026-10-23T01:50:44.3746768Z src/connection/storage.ts:647:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.ConnectionRegistrationStore.setRoutes")((environmentId, routes) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3746770Z 2026-10-23T01:50:44.3746838Z 647 setRoutes: (environmentId, routes) => 2026-10-23T01:50:44.3746885Z ~~~~~~~~~ 2026-10-23T01:50:44.3746887Z 2026-10-23T01:50:44.3747271Z src/connection/storage.ts:651:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.ConnectionRegistrationStore.remove")((environmentId) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3747276Z 2026-10-23T01:50:44.3747338Z 651 remove: (environmentId) => 2026-10-23T01:50:44.3747381Z ~~~~~~ 2026-10-23T01:50:44.3747383Z 2026-10-23T01:50:44.3747793Z src/connection/storage.ts:655:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.ConnectionRegistrationStore.setEnabled")((environmentId, enabled) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3747796Z 2026-10-23T01:50:44.3747867Z 655 setEnabled: (environmentId, enabled) => 2026-10-23T01:50:44.3747913Z ~~~~~~~~~~ 2026-10-23T01:50:44.3747916Z 2026-10-23T01:50:44.3748334Z src/connection/storage.ts:732:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.EnvironmentCacheStore.loadShell")((environmentId) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3748341Z 2026-10-23T01:50:44.3748402Z 732 loadShell: (environmentId) => 2026-10-23T01:50:44.3748451Z ~~~~~~~~~ 2026-10-23T01:50:44.3748454Z 2026-10-23T01:50:44.3748847Z src/connection/storage.ts:768:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.EnvironmentCacheStore.loadServerConfig")((environmentId) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3748850Z 2026-10-23T01:50:44.3748918Z 768 loadServerConfig: (environmentId) => 2026-10-23T01:50:44.3748968Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3748971Z 2026-10-23T01:50:44.3749371Z src/connection/storage.ts:802:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.EnvironmentCacheStore.loadThread")((environmentId, threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3749374Z 2026-10-23T01:50:44.3749446Z 802 loadThread: (environmentId, threadId) => 2026-10-23T01:50:44.3749492Z ~~~~~~~~~~ 2026-10-23T01:50:44.3749496Z 2026-10-23T01:50:44.3749928Z src/connection/storage.ts:851:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.EnvironmentCacheStore.loadVcsRefs")((environmentId, cwd) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3749931Z 2026-10-23T01:50:44.3749995Z 851 loadVcsRefs: (environmentId, cwd) => 2026-10-23T01:50:44.3750044Z ~~~~~~~~~~~ 2026-10-23T01:50:44.3750047Z 2026-10-23T01:50:44.3750445Z src/connection/storage.ts:893:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.EnvironmentCacheStore.removeVcsRefs")((environmentId, cwd) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3750447Z 2026-10-23T01:50:44.3750519Z 893 removeVcsRefs: (environmentId, cwd) => 2026-10-23T01:50:44.3750571Z ~~~~~~~~~~~~~ 2026-10-23T01:50:44.3750573Z 2026-10-23T01:50:44.3750951Z src/connection/storage.ts:899:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.EnvironmentCacheStore.clearVcsRefs")((environmentId) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3751016Z 2026-10-23T01:50:44.3751082Z 899 clearVcsRefs: (environmentId) => 2026-10-23T01:50:44.3751128Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3751130Z 2026-10-23T01:50:44.3751535Z src/connection/storage.ts:905:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.EnvironmentCacheStore.removeThread")((environmentId, threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3751538Z 2026-10-23T01:50:44.3751614Z 905 removeThread: (environmentId, threadId) => 2026-10-23T01:50:44.3751658Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3751661Z 2026-10-23T01:50:44.3752029Z src/connection/storage.ts:911:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("Persistence.EnvironmentCacheStore.clear")((environmentId) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3752033Z 2026-10-23T01:50:44.3752092Z 911 clear: (environmentId) => 2026-10-23T01:50:44.3752138Z ~~~~~ 2026-10-23T01:50:44.3752141Z 2026-10-23T01:50:44.3752144Z 2026-10-23T01:50:44.3752199Z ~/apps/server$ tsc --noEmit 2026-10-23T01:50:44.3752488Z scripts/acp-mock-agent.ts:941:16 - suggestion TS377015: This expression contains chained `pipe` calls that can be simplified to a single `pipe` call. effect(unnecessaryPipeChain) 2026-10-23T01:50:44.3752491Z 2026-10-23T01:50:44.3752556Z 941 yield* Effect.sleep("1200 millis") 2026-10-23T01:50:44.3752615Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3752718Z 942 .pipe( 2026-10-23T01:50:44.3752764Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3752811Z ... 2026-10-23T01:50:44.3752856Z 954 ) 2026-10-23T01:50:44.3752902Z ~~~~~~~~~~~ 2026-10-23T01:50:44.3752962Z 955 .pipe(Effect.forkDetach); 2026-10-23T01:50:44.3753017Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3753020Z 2026-10-23T01:50:44.3753374Z scripts/record-codex-app-server-replay-fixture.ts:1175:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("logger")((event) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3753377Z 2026-10-23T01:50:44.3753432Z 1175 logger: (event) => { 2026-10-23T01:50:44.3753474Z ~~~~~~ 2026-10-23T01:50:44.3753477Z 2026-10-23T01:50:44.3753969Z scripts/record-grok-acp-replay-fixture.ts:376:38 - suggestion TS377112: This input is already assignable to the schema's Encoded type. Use `decodeSync` to preserve compile-time type checking instead of discarding the input type through `decodeUnknownSync`. effect(preferTypedSchemaDecoder) 2026-10-23T01:50:44.3753973Z 2026-10-23T01:50:44.3754096Z 376 const DEFAULT_GROK_SETTINGS = Schema.decodeUnknownSync(GrokSettings)({}); 2026-10-23T01:50:44.3754162Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3754167Z 2026-10-23T01:50:44.3754508Z src/auth/EnvironmentAuth.ts:1346:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("EnvironmentAuth.getDescriptor")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3754511Z 2026-10-23T01:50:44.3754564Z 1346 getDescriptor: () => 2026-10-23T01:50:44.3754613Z ~~~~~~~~~~~~~ 2026-10-23T01:50:44.3754615Z 2026-10-23T01:50:44.3754976Z 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-23T01:50:44.3754980Z 2026-10-23T01:50:44.3755034Z 55 getDescriptor: () => 2026-10-23T01:50:44.3755078Z ~~~~~~~~~~~~~ 2026-10-23T01:50:44.3755083Z 2026-10-23T01:50:44.3755456Z src/auth/McpOAuth.ts:540:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("McpHttpServer.McpClientAuthenticator.authenticate")((request) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3755511Z 2026-10-23T01:50:44.3755568Z 540 authenticate: (request) => 2026-10-23T01:50:44.3755614Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3755616Z 2026-10-23T01:50:44.3755902Z 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-23T01:50:44.3755904Z 2026-10-23T01:50:44.3755963Z 468 : Effect.succeed(undefined), 2026-10-23T01:50:44.3756017Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3756020Z 2026-10-23T01:50:44.3756348Z src/cloud/CliTokenManager.ts:328:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("HttpClientError")(function*(cause) { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3756350Z 2026-10-23T01:50:44.3756412Z 328 HttpClientError: (cause) => 2026-10-23T01:50:44.3756468Z ~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3756470Z 2026-10-23T01:50:44.3756741Z src/cloud/CloudLink.lifecycle.test.ts:166:21 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3756743Z 2026-10-23T01:50:44.3756820Z 166 latest: Effect.succeed(Option.none()), 2026-10-23T01:50:44.3756873Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3756876Z 2026-10-23T01:50:44.3757127Z src/cloud/CloudLink.test.ts:99:17 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3757129Z 2026-10-23T01:50:44.3757246Z 99 latest: Effect.succeed(Option.none()), 2026-10-23T01:50:44.3757298Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3757301Z 2026-10-23T01:50:44.3757693Z src/cloud/ManagedEndpointRuntime.ts:791:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("CloudManagedEndpointRuntime.requestRecovery")((config) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3757698Z 2026-10-23T01:50:44.3757849Z 791 requestRecovery: (config) => Queue.offer(recoveryRequests, config).pipe(Effect.asVoid), 2026-10-23T01:50:44.3757901Z ~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3757904Z 2026-10-23T01:50:44.3758141Z src/cloud/http.test.ts:81:67 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3758145Z 2026-10-23T01:50:44.3758314Z 81 Layer.mock(ConnectReachability.ConnectReachability)({ latest: Effect.succeed(Option.none()) }), 2026-10-23T01:50:44.3758400Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3758403Z 2026-10-23T01:50:44.3758796Z 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-23T01:50:44.3758800Z 2026-10-23T01:50:44.3758900Z 371 commitDesktopUpdate: (requestId, onHandoffAccepted) => 2026-10-23T01:50:44.3758951Z ~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3758956Z 2026-10-23T01:50:44.3759287Z src/device/DeviceService.ts:808:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DeviceService.updateTool")((tool) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3759289Z 2026-10-23T01:50:44.3759353Z 808 updateTool: (tool) => 2026-10-23T01:50:44.3759404Z ~~~~~~~~~~ 2026-10-23T01:50:44.3759406Z 2026-10-23T01:50:44.3759733Z src/device/DeviceService.ts:823:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DeviceService.easAccount")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3759736Z 2026-10-23T01:50:44.3759798Z 823 easAccount: () => 2026-10-23T01:50:44.3759927Z ~~~~~~~~~~ 2026-10-23T01:50:44.3759929Z 2026-10-23T01:50:44.3760296Z src/device/EasDeviceHost.ts:868:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DeviceHost.DeviceHost.ensureAgentReady")((onPhase) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3760299Z 2026-10-23T01:50:44.3760363Z 868 ensureAgentReady: (onPhase) => 2026-10-23T01:50:44.3760414Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3760416Z 2026-10-23T01:50:44.3760672Z src/device/easProjectId.ts:201:7 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-23T01:50:44.3760676Z 2026-10-23T01:50:44.3760739Z 201 Effect.map(Option.some), 2026-10-23T01:50:44.3760788Z ~~~~~~~~~~ 2026-10-23T01:50:44.3760791Z 2026-10-23T01:50:44.3761130Z src/environment/DirectEndpoints.ts:141:31 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DirectEndpoints.resolve")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3761135Z 2026-10-23T01:50:44.3761228Z 141 return DirectEndpoints.of({ resolve: () => resolve }); 2026-10-23T01:50:44.3761281Z ~~~~~~~ 2026-10-23T01:50:44.3761284Z 2026-10-23T01:50:44.3761645Z src/environment/RemoteOpenTargets.ts:83:33 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("RemoteOpenTargets.resolveTargets")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3761647Z 2026-10-23T01:50:44.3761768Z 83 return RemoteOpenTargets.of({ resolveTargets: () => resolveTargets }); 2026-10-23T01:50:44.3761884Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3761887Z 2026-10-23T01:50:44.3762242Z 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-23T01:50:44.3762247Z 2026-10-23T01:50:44.3762304Z 302 isRepository: (cwd) => 2026-10-23T01:50:44.3762353Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3762355Z 2026-10-23T01:50:44.3762702Z 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-23T01:50:44.3762705Z 2026-10-23T01:50:44.3762765Z 315 hasCommit: (input) => 2026-10-23T01:50:44.3762811Z ~~~~~~~~~ 2026-10-23T01:50:44.3762813Z 2026-10-23T01:50:44.3763165Z 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-23T01:50:44.3763167Z 2026-10-23T01:50:44.3763226Z 327 hasRefNamed: (input) => 2026-10-23T01:50:44.3763276Z ~~~~~~~~~~~ 2026-10-23T01:50:44.3763281Z 2026-10-23T01:50:44.3763618Z 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-23T01:50:44.3763620Z 2026-10-23T01:50:44.3763673Z 346 status: (input) => 2026-10-23T01:50:44.3763723Z ~~~~~~ 2026-10-23T01:50:44.3763725Z 2026-10-23T01:50:44.3764076Z 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-23T01:50:44.3764079Z 2026-10-23T01:50:44.3764137Z 352 localStatus: (input) => 2026-10-23T01:50:44.3764184Z ~~~~~~~~~~~ 2026-10-23T01:50:44.3764189Z 2026-10-23T01:50:44.3764553Z 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-23T01:50:44.3764607Z 2026-10-23T01:50:44.3764674Z 360 remoteStatus: (input, options) => 2026-10-23T01:50:44.3764724Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3764727Z 2026-10-23T01:50:44.3765086Z 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-23T01:50:44.3765089Z 2026-10-23T01:50:44.3765153Z 369 pullCurrentBranch: (cwd) => 2026-10-23T01:50:44.3765203Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3765206Z 2026-10-23T01:50:44.3765583Z 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-23T01:50:44.3765586Z 2026-10-23T01:50:44.3765659Z 373 runStackedAction: (input, options) => 2026-10-23T01:50:44.3765713Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3765715Z 2026-10-23T01:50:44.3766091Z 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-23T01:50:44.3766097Z 2026-10-23T01:50:44.3766166Z 388 preparePullRequestThread: (input) => 2026-10-23T01:50:44.3766221Z ~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3766224Z 2026-10-23T01:50:44.3766612Z 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-23T01:50:44.3766615Z 2026-10-23T01:50:44.3766672Z 399 listRefs: (input) => 2026-10-23T01:50:44.3766718Z ~~~~~~~~ 2026-10-23T01:50:44.3766721Z 2026-10-23T01:50:44.3767090Z 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-23T01:50:44.3767094Z 2026-10-23T01:50:44.3767162Z 405 createWorktree: (input, options) => 2026-10-23T01:50:44.3767212Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3767215Z 2026-10-23T01:50:44.3767582Z 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-23T01:50:44.3767585Z 2026-10-23T01:50:44.3767647Z 409 listLocalBranchNames: (cwd) => 2026-10-23T01:50:44.3767704Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3767706Z 2026-10-23T01:50:44.3768054Z 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-23T01:50:44.3768058Z 2026-10-23T01:50:44.3768117Z 413 fetchRemote: (input) => 2026-10-23T01:50:44.3768162Z ~~~~~~~~~~~ 2026-10-23T01:50:44.3768167Z 2026-10-23T01:50:44.3768514Z 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-23T01:50:44.3768517Z 2026-10-23T01:50:44.3768579Z 417 remoteExists: (input) => 2026-10-23T01:50:44.3768628Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3768631Z 2026-10-23T01:50:44.3768998Z 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-23T01:50:44.3769000Z 2026-10-23T01:50:44.3769059Z 421 remoteBranchExists: (input) => 2026-10-23T01:50:44.3769112Z ~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3769170Z 2026-10-23T01:50:44.3769552Z 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-23T01:50:44.3769554Z 2026-10-23T01:50:44.3769629Z 425 resolveRemoteTrackingCommit: (input) => 2026-10-23T01:50:44.3769683Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3769686Z 2026-10-23T01:50:44.3770088Z 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-23T01:50:44.3770094Z 2026-10-23T01:50:44.3770163Z 429 resolveWorktreeBaseRemote: (input) => 2026-10-23T01:50:44.3770217Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3770219Z 2026-10-23T01:50:44.3770593Z 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-23T01:50:44.3770597Z 2026-10-23T01:50:44.3770665Z 433 fetchWorktreeBaseCommit: (input) => 2026-10-23T01:50:44.3770715Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3770718Z 2026-10-23T01:50:44.3771206Z 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-23T01:50:44.3771209Z 2026-10-23T01:50:44.3771268Z 437 removeWorktree: (input) => 2026-10-23T01:50:44.3771384Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3771387Z 2026-10-23T01:50:44.3771745Z 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-23T01:50:44.3771749Z 2026-10-23T01:50:44.3771806Z 441 pruneWorktrees: (input) => 2026-10-23T01:50:44.3771858Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3771860Z 2026-10-23T01:50:44.3772221Z 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-23T01:50:44.3772224Z 2026-10-23T01:50:44.3772286Z 445 deleteLocalBranch: (input) => 2026-10-23T01:50:44.3772336Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3772342Z 2026-10-23T01:50:44.3772685Z 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-23T01:50:44.3772688Z 2026-10-23T01:50:44.3772746Z 449 createRef: (input) => 2026-10-23T01:50:44.3772795Z ~~~~~~~~~ 2026-10-23T01:50:44.3772799Z 2026-10-23T01:50:44.3773142Z 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-23T01:50:44.3773144Z 2026-10-23T01:50:44.3773197Z 457 switchRef: (input) => 2026-10-23T01:50:44.3773246Z ~~~~~~~~~ 2026-10-23T01:50:44.3773248Z 2026-10-23T01:50:44.3773599Z 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-23T01:50:44.3773602Z 2026-10-23T01:50:44.3773661Z 463 renameBranch: (input) => 2026-10-23T01:50:44.3773712Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3773714Z 2026-10-23T01:50:44.3774020Z src/htmlRender/headlessChrome.ts:281:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("receive")((raw) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3774080Z 2026-10-23T01:50:44.3774144Z 281 const receive = (raw: string) => { 2026-10-23T01:50:44.3774194Z ~~~~~~~ 2026-10-23T01:50:44.3774197Z 2026-10-23T01:50:44.3774625Z src/mcp/AcpMcpStdioBridge.ts:282: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-23T01:50:44.3774627Z 2026-10-23T01:50:44.3774677Z 282 try { 2026-10-23T01:50:44.3774723Z ~~~~~ 2026-10-23T01:50:44.3774786Z 283 parsed = JSON.parse(line); 2026-10-23T01:50:44.3774840Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3774885Z ... 2026-10-23T01:50:44.3775006Z 285 return yield* respondWithError(null, "Parse error", -32700); 2026-10-23T01:50:44.3775087Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3775135Z 286 } 2026-10-23T01:50:44.3775182Z ~~~~~~~ 2026-10-23T01:50:44.3775184Z 2026-10-23T01:50:44.3775504Z src/mcp/AcpMcpStdioBridge.ts:322:7 - suggestion TS377099: `Effect.ignoreCause` expresses ignored failure more directly than `Effect.catchCause` returning `Effect.void`. effect(catchToIgnore) 2026-10-23T01:50:44.3775506Z 2026-10-23T01:50:44.3775579Z 322 Effect.catchCause(() => Effect.void), 2026-10-23T01:50:44.3775631Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3775634Z 2026-10-23T01:50:44.3775901Z src/mcp/McpDeviceToolkit.test.ts:105:18 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3775959Z 2026-10-23T01:50:44.3776034Z 105 getById: () => Effect.succeed(Option.none()), 2026-10-23T01:50:44.3776088Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3776091Z 2026-10-23T01:50:44.3776422Z src/mcp/McpHttpServer.ts:421:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("previewSnapshotFailure")((cause) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3776427Z 2026-10-23T01:50:44.3776539Z 421 const previewSnapshotFailure = (cause: Cause.Cause) => { 2026-10-23T01:50:44.3776592Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3776595Z 2026-10-23T01:50:44.3776925Z src/mcp/McpHttpServer.ts:933:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("McpServer.McpServer.addTool")((options) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3776927Z 2026-10-23T01:50:44.3776983Z 933 addTool: (options) => 2026-10-23T01:50:44.3777033Z ~~~~~~~ 2026-10-23T01:50:44.3777037Z 2026-10-23T01:50:44.3777362Z 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-23T01:50:44.3777367Z 2026-10-23T01:50:44.3777438Z 22 resolve: () => Effect.succeed(undefined), 2026-10-23T01:50:44.3777494Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3777497Z 2026-10-23T01:50:44.3777832Z src/mcp/McpToolAccess.ts:112:7 - suggestion TS377132: `Effect.andThen` expresses this sequencing more directly than `Effect.flatMap` with a zero-parameter callback. effect(flatMapIgnoredParamToAndThen) 2026-10-23T01:50:44.3777835Z 2026-10-23T01:50:44.3777902Z 112 Effect.flatMap(() => writingCaller), 2026-10-23T01:50:44.3777951Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3777954Z 2026-10-23T01:50:44.3778543Z src/mcp/OrchestratorMcpService.ts:2459: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-23T01:50:44.3778610Z 2026-10-23T01:50:44.3778695Z 2459 const cancelOrphan = Effect.gen(function* () { 2026-10-23T01:50:44.3778759Z ~~~~~~~~~ 2026-10-23T01:50:44.3778762Z 2026-10-23T01:50:44.3779035Z src/mcp/OrchestratorMcpService.ts:2474:17 - This repeated `Effect.mapError(...)` site participates in the hoistable generator-wide mapping. effect(redundantMapError) 2026-10-23T01:50:44.3779132Z 2474 .pipe(Effect.mapError(threadManagementFailure)); 2026-10-23T01:50:44.3779185Z ~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3779190Z 2026-10-23T01:50:44.3779458Z src/mcp/OrchestratorMcpService.ts:2477:17 - This repeated `Effect.mapError(...)` site participates in the hoistable generator-wide mapping. effect(redundantMapError) 2026-10-23T01:50:44.3779548Z 2477 .pipe(Effect.mapError(threadManagementFailure)); 2026-10-23T01:50:44.3779601Z ~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3779603Z 2026-10-23T01:50:44.3779970Z src/mcp/PreviewAutomationBroker.ts:651:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("onNone")(function*() { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3779973Z 2026-10-23T01:50:44.3780024Z 651 onNone: () => 2026-10-23T01:50:44.3780075Z ~~~~~~ 2026-10-23T01:50:44.3780078Z 2026-10-23T01:50:44.3780312Z src/mcp/WorktreeMcpService.test.ts:355:3 - suggestion TS377017: This Effect.gen contains a single return statement. effect(unnecessaryEffectGen) 2026-10-23T01:50:44.3780314Z 2026-10-23T01:50:44.3780371Z 355 Effect.gen(function* () { 2026-10-23T01:50:44.3780420Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3780562Z 356 return yield* WorktreeMcpService.WorktreeMcpService; 2026-10-23T01:50:44.3780638Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3780709Z 357 }).pipe(Effect.provide(harness.layer)); 2026-10-23T01:50:44.3780755Z ~~~~ 2026-10-23T01:50:44.3780757Z 2026-10-23T01:50:44.3781076Z src/mcp/toolkits/pullRequests/handlers.ts:222:27 - suggestion TS377015: This expression contains chained `pipe` calls that can be simplified to a single `pipe` call. effect(unnecessaryPipeChain) 2026-10-23T01:50:44.3781079Z 2026-10-23T01:50:44.3781141Z 222 const thread = yield* engine 2026-10-23T01:50:44.3781195Z ~~~~~~ 2026-10-23T01:50:44.3781251Z 223 .getThreadShell(threadId) 2026-10-23T01:50:44.3781306Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3781383Z 224 .pipe(Effect.map(Option.fromNullishOr)) 2026-10-23T01:50:44.3781448Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3781548Z 225 .pipe(Effect.mapError((cause) => new Failure({ cause }))); 2026-10-23T01:50:44.3781627Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3781629Z 2026-10-23T01:50:44.3781962Z src/mcpApps/McpAppModelContext.ts:95:27 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("McpAppModelContext.set")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3781966Z 2026-10-23T01:50:44.3782109Z 95 McpAppModelContext.of({ set: () => Effect.void, forThread: () => Effect.succeed([]) }), 2026-10-23T01:50:44.3782164Z ~~~ 2026-10-23T01:50:44.3782167Z 2026-10-23T01:50:44.3782509Z src/mcpApps/McpAppModelContext.ts:95:51 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("McpAppModelContext.forThread")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3782516Z 2026-10-23T01:50:44.3782649Z 95 McpAppModelContext.of({ set: () => Effect.void, forThread: () => Effect.succeed([]) }), 2026-10-23T01:50:44.3782724Z ~~~~~~~~~ 2026-10-23T01:50:44.3782727Z 2026-10-23T01:50:44.3783108Z 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-23T01:50:44.3783163Z 2026-10-23T01:50:44.3783221Z 16 record: (records) => 2026-10-23T01:50:44.3783268Z ~~~~~~ 2026-10-23T01:50:44.3783270Z 2026-10-23T01:50:44.3783593Z src/observability/EventLoopMonitor.ts:41:49 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-23T01:50:44.3783595Z 2026-10-23T01:50:44.3783718Z 41 defaultValue: () => ({ latestNoticeableStall: Effect.succeed(undefined) }), 2026-10-23T01:50:44.3783796Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3783801Z 2026-10-23T01:50:44.3784330Z 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-23T01:50:44.3784335Z 2026-10-23T01:50:44.3784455Z 30 const REPLAY_SETTINGS = Schema.decodeUnknownSync(AcpRegistrySettings)({ 2026-10-23T01:50:44.3784519Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3784522Z 2026-10-23T01:50:44.3784892Z 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-23T01:50:44.3784895Z 2026-10-23T01:50:44.3784968Z 48 defaultModel: Effect.succeed(undefined), 2026-10-23T01:50:44.3785075Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3785078Z 2026-10-23T01:50:44.3785443Z 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-23T01:50:44.3785452Z 2026-10-23T01:50:44.3785527Z 169 defaultModel: Effect.succeed(undefined), 2026-10-23T01:50:44.3785591Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3785594Z 2026-10-23T01:50:44.3785957Z 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-23T01:50:44.3785960Z 2026-10-23T01:50:44.3786035Z 306 defaultModel: Effect.succeed(undefined), 2026-10-23T01:50:44.3786092Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3786095Z 2026-10-23T01:50:44.3786466Z 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-23T01:50:44.3786469Z 2026-10-23T01:50:44.3786543Z 542 defaultModel: Effect.succeed(undefined), 2026-10-23T01:50:44.3786605Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3786608Z 2026-10-23T01:50:44.3787006Z src/orchestration-v2/Adapters/ClaudeAdapterV2.test.ts:971:26 - suggestion TS377111: `AbortController` is manually constructed inside Effect code. Use `Effect.abortSignal` for Effect-managed cancellation. effect(abortControllerInEffect) 2026-10-23T01:50:44.3787008Z 2026-10-23T01:50:44.3787079Z 971 const controller = new AbortController(); 2026-10-23T01:50:44.3787141Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3787143Z 2026-10-23T01:50:44.3787493Z src/orchestration-v2/Adapters/ClaudeAdapterV2.test.ts:1323:37 - suggestion TS377015: This expression contains chained `pipe` calls that can be simplified to a single `pipe` call. effect(unnecessaryPipeChain) 2026-10-23T01:50:44.3787496Z 2026-10-23T01:50:44.3787576Z 1323 const requestEvent = yield* runtime.events 2026-10-23T01:50:44.3787641Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3787745Z 1324 .pipe( 2026-10-23T01:50:44.3787795Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3787844Z ... 2026-10-23T01:50:44.3787891Z 1327 ) 2026-10-23T01:50:44.3787939Z ~~~~~~~~~~~ 2026-10-23T01:50:44.3788005Z 1328 .pipe(Effect.forkScoped); 2026-10-23T01:50:44.3788060Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3788063Z 2026-10-23T01:50:44.3788460Z src/orchestration-v2/Adapters/ClaudeAdapterV2.test.ts:1329:28 - suggestion TS377111: `AbortController` is manually constructed inside Effect code. Use `Effect.abortSignal` for Effect-managed cancellation. effect(abortControllerInEffect) 2026-10-23T01:50:44.3788465Z 2026-10-23T01:50:44.3788543Z 1329 const controller = new AbortController(); 2026-10-23T01:50:44.3788609Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3788611Z 2026-10-23T01:50:44.3789008Z src/orchestration-v2/Adapters/ClaudeAdapterV2.test.ts:1352:37 - suggestion TS377111: `AbortController` is manually constructed inside Effect code. Use `Effect.abortSignal` for Effect-managed cancellation. effect(abortControllerInEffect) 2026-10-23T01:50:44.3789013Z 2026-10-23T01:50:44.3789106Z 1352 const cancelledController = new AbortController(); 2026-10-23T01:50:44.3789175Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3789181Z 2026-10-23T01:50:44.3789614Z src/orchestration-v2/Adapters/ClaudeAdapterV2.ts:3999:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.getCapabilities")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3789617Z 2026-10-23T01:50:44.3789786Z 3999 getCapabilities: () => Effect.succeed(ClaudeProviderCapabilitiesV2), 2026-10-23T01:50:44.3789858Z ~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3789861Z 2026-10-23T01:50:44.3790313Z src/orchestration-v2/Adapters/ClaudeAdapterV2.ts:4000:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.planSelectionTransition")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3790318Z 2026-10-23T01:50:44.3790464Z 4000 planSelectionTransition: () => Effect.succeed(turnScopedSelectionTransition()), 2026-10-23T01:50:44.3790516Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3790519Z 2026-10-23T01:50:44.3790945Z src/orchestration-v2/Adapters/ClaudeAgentSdkQueryRunner.test.ts:184:17 - suggestion TS377111: `AbortController` is manually constructed inside Effect code. Use `Effect.abortSignal` for Effect-managed cancellation. effect(abortControllerInEffect) 2026-10-23T01:50:44.3790948Z 2026-10-23T01:50:44.3791022Z 184 signal: new AbortController().signal, 2026-10-23T01:50:44.3791081Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3791084Z 2026-10-23T01:50:44.3791549Z src/orchestration-v2/Adapters/ClaudeTaskOutputTail.ts:74:17 - suggestion TS377121: This Effect first-completion race has exactly one sleep- or delay-based timer arm. `Effect.timeoutOrElse` expresses the timeout and fallback directly. effect(raceFirstWithSleepToTimeout) 2026-10-23T01:50:44.3791554Z 2026-10-23T01:50:44.3791620Z 74 const pause = Effect.raceFirst( 2026-10-23T01:50:44.3791678Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3791681Z 2026-10-23T01:50:44.3792031Z src/orchestration-v2/Adapters/CodexAdapterV2.ts:1741:25 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-23T01:50:44.3792033Z 2026-10-23T01:50:44.3792163Z 1741 threadId === null ? Effect.succeed(undefined) : mcpSessions.read(threadId); 2026-10-23T01:50:44.3792229Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3792231Z 2026-10-23T01:50:44.3792656Z src/orchestration-v2/Adapters/CodexAdapterV2.ts:1748:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.getCapabilities")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3792714Z 2026-10-23T01:50:44.3792835Z 1748 getCapabilities: () => Effect.succeed(CodexProviderCapabilitiesV2), 2026-10-23T01:50:44.3792887Z ~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3792889Z 2026-10-23T01:50:44.3793331Z src/orchestration-v2/Adapters/CodexAdapterV2.ts:1749:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAdapter.ProviderAdapterV2.planSelectionTransition")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3793334Z 2026-10-23T01:50:44.3793477Z 1749 planSelectionTransition: () => Effect.succeed(turnScopedSelectionTransition()), 2026-10-23T01:50:44.3793529Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3793531Z 2026-10-23T01:50:44.3793906Z src/orchestration-v2/Adapters/CodexAdapterV2.ts:3045:19 - suggestion TS377095: `Effect.orElseSucceed` expresses the same recovery more directly than `Effect.catch` followed by `Effect.succeed`. effect(catchToOrElseSucceed) 2026-10-23T01:50:44.3793910Z 2026-10-23T01:50:44.3793996Z 3045 Effect.catch(() => Effect.succeed(null)), 2026-10-23T01:50:44.3794050Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3794052Z 2026-10-23T01:50:44.3794489Z src/orchestration-v2/Adapters/CodexAdapterV2.ts:3046:19 - suggestion TS377120: `Effect.filterOrElse` expresses this conditional validation more directly than `Effect.flatMap` with an identity `Effect.succeed` branch. effect(flatMapConditionalToFilterOrFail) 2026-10-23T01:50:44.3794491Z 2026-10-23T01:50:44.3794560Z 3046 Effect.flatMap((response) => 2026-10-23T01:50:44.3794666Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3794669Z 2026-10-23T01:50:44.3795003Z src/orchestration-v2/Adapters/CodexAdapterV2.ts:3068:19 - suggestion TS377099: `Effect.ignore` expresses ignored failure more directly than `Effect.catch` returning `Effect.void`. effect(catchToIgnore) 2026-10-23T01:50:44.3795007Z 2026-10-23T01:50:44.3795081Z 3068 Effect.catch(() => Effect.void), 2026-10-23T01:50:44.3795136Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3795139Z 2026-10-23T01:50:44.3795563Z src/orchestration-v2/Adapters/CodexAdapterV2.ts:7268:26 - suggestion TS377019: This `yield* Effect.fail(...)` passes a yieldable error value. `yield*` represents that value directly without wrapping it in `Effect.fail`. effect(unnecessaryFailYieldableError) 2026-10-23T01:50:44.3795565Z 2026-10-23T01:50:44.3795667Z 7268 return yield* Effect.fail(failedTermination.error); 2026-10-23T01:50:44.3795722Z ~~~~~ 2026-10-23T01:50:44.3795726Z 2026-10-23T01:50:44.3796243Z 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-23T01:50:44.3796247Z 2026-10-23T01:50:44.3796368Z 33 const DEFAULT_GROK_SETTINGS = Schema.decodeUnknownSync(GrokSettings)({}); 2026-10-23T01:50:44.3796436Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3796439Z 2026-10-23T01:50:44.3796945Z src/orchestration-v2/Adapters/MuseAdapterV2.testkit.ts:414:38 - suggestion TS377112: This input is already assignable to the schema's Encoded type. Use `decodeSync` to preserve compile-time type checking instead of discarding the input type through `decodeUnknownSync`. effect(preferTypedSchemaDecoder) 2026-10-23T01:50:44.3796948Z 2026-10-23T01:50:44.3797100Z 414 const DEFAULT_MUSE_SETTINGS = Schema.decodeUnknownSync(MuseSettings)({ enabled: true }); 2026-10-23T01:50:44.3797167Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3797170Z 2026-10-23T01:50:44.3797576Z src/orchestration-v2/CheckpointCaptureService.ts:242:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("CheckpointCaptureServiceV2.execute")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3797633Z 2026-10-23T01:50:44.3797692Z 242 execute: (input) => 2026-10-23T01:50:44.3797743Z ~~~~~~~ 2026-10-23T01:50:44.3797746Z 2026-10-23T01:50:44.3798054Z src/orchestration-v2/CheckpointRestoreSafety.test.ts:104:24 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3798057Z 2026-10-23T01:50:44.3798182Z 104 get: () => Effect.succeed(Option.some({ workspaceRoot: parent } as never)), 2026-10-23T01:50:44.3798245Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3798249Z 2026-10-23T01:50:44.3798660Z src/orchestration-v2/CheckpointRestoreSafety.ts:41:13 - suggestion TS377116: `Effect.catchIf` expresses selective recovery more directly than `Effect.catch` with a conditional `Effect.fail` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-23T01:50:44.3798667Z 2026-10-23T01:50:44.3798725Z 41 Effect.catch((error) => 2026-10-23T01:50:44.3798778Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3798781Z 2026-10-23T01:50:44.3799190Z src/orchestration-v2/CheckpointRestoreSafety.ts:83:17 - suggestion TS377116: `Effect.catchIf` expresses selective recovery more directly than `Effect.catch` with a conditional `Effect.fail` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-23T01:50:44.3799193Z 2026-10-23T01:50:44.3799258Z 83 Effect.catch((error) => 2026-10-23T01:50:44.3799309Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3799312Z 2026-10-23T01:50:44.3799670Z src/orchestration-v2/CheckpointRollbackService.test.ts:233:22 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3799673Z 2026-10-23T01:50:44.3799802Z 233 return Effect.succeed(Option.some({ workspaceRoot } as never)); 2026-10-23T01:50:44.3799861Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3799864Z 2026-10-23T01:50:44.3800318Z 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-23T01:50:44.3800321Z 2026-10-23T01:50:44.3800398Z 142 const batchAbort = new AbortController(); 2026-10-23T01:50:44.3800463Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3800465Z 2026-10-23T01:50:44.3800902Z src/orchestration-v2/CommandOutputHub.test.ts:168:5 - suggestion TS377120: `Effect.filterOrElse` expresses this conditional validation more directly than `Effect.flatMap` with an identity `Effect.succeed` branch. effect(flatMapConditionalToFilterOrFail) 2026-10-23T01:50:44.3800905Z 2026-10-23T01:50:44.3800965Z 168 Effect.flatMap((frame) => 2026-10-23T01:50:44.3801018Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3801021Z 2026-10-23T01:50:44.3801304Z src/orchestration-v2/CommandReceiptStore.ts:164:29 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3801306Z 2026-10-23T01:50:44.3801392Z 164 onNone: () => Effect.succeed(Option.none()), 2026-10-23T01:50:44.3801453Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3801456Z 2026-10-23T01:50:44.3801746Z src/orchestration-v2/CommandReceiptStore.ts:167:21 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3801749Z 2026-10-23T01:50:44.3801824Z 167 ? Effect.succeed(Option.none()) 2026-10-23T01:50:44.3801876Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3801879Z 2026-10-23T01:50:44.3802172Z src/orchestration-v2/CommandReceiptStore.ts:168:58 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-23T01:50:44.3802231Z 2026-10-23T01:50:44.3802355Z 168 : fromApplicationReceipt(receipt).pipe(Effect.map(Option.some)), 2026-10-23T01:50:44.3802430Z ~~~~~~~~~~ 2026-10-23T01:50:44.3802434Z 2026-10-23T01:50:44.3802714Z src/orchestration-v2/CommandReceiptStore.ts:183:17 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3802721Z 2026-10-23T01:50:44.3802787Z 183 ? Effect.succeed(Option.none()) 2026-10-23T01:50:44.3802844Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3802848Z 2026-10-23T01:50:44.3803140Z src/orchestration-v2/CommandReceiptStore.ts:192:25 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-23T01:50:44.3803142Z 2026-10-23T01:50:44.3803220Z 192 }).pipe(Effect.map(Option.some)), 2026-10-23T01:50:44.3803273Z ~~~~~~~~~~ 2026-10-23T01:50:44.3803275Z 2026-10-23T01:50:44.3803545Z src/orchestration-v2/EffectOutbox.ts:426:17 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3803547Z 2026-10-23T01:50:44.3803616Z 426 ? Effect.succeed(Option.none()) 2026-10-23T01:50:44.3803670Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3803673Z 2026-10-23T01:50:44.3803999Z src/orchestration-v2/EffectOutbox.ts:427:39 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-23T01:50:44.3804003Z 2026-10-23T01:50:44.3804093Z 427 : rowToEffect(row).pipe(Effect.map(Option.some)); 2026-10-23T01:50:44.3804160Z ~~~~~~~~~~ 2026-10-23T01:50:44.3804162Z 2026-10-23T01:50:44.3804442Z src/orchestration-v2/EffectWorker.test.ts:107:20 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3804445Z 2026-10-23T01:50:44.3804519Z 107 get: () => Effect.succeed(Option.none()), 2026-10-23T01:50:44.3804572Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3804578Z 2026-10-23T01:50:44.3804853Z src/orchestration-v2/EffectWorker.test.ts:302:24 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3804855Z 2026-10-23T01:50:44.3804956Z 302 claimNext: () => Effect.succeed(Option.some(claimedEffect)), 2026-10-23T01:50:44.3805016Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3805018Z 2026-10-23T01:50:44.3805295Z src/orchestration-v2/EffectWorker.test.ts:369:24 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3805300Z 2026-10-23T01:50:44.3805395Z 369 claimNext: () => Effect.succeed(Option.some(claimedEffect)), 2026-10-23T01:50:44.3805454Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3805456Z 2026-10-23T01:50:44.3805733Z src/orchestration-v2/EffectWorker.test.ts:436:24 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3805736Z 2026-10-23T01:50:44.3805835Z 436 claimNext: () => Effect.succeed(Option.some(claimedEffect)), 2026-10-23T01:50:44.3805892Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3805894Z 2026-10-23T01:50:44.3806168Z src/orchestration-v2/EffectWorker.test.ts:437:18 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3806170Z 2026-10-23T01:50:44.3806260Z 437 get: () => Effect.succeed(Option.some(claimedEffect)), 2026-10-23T01:50:44.3806317Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3806370Z 2026-10-23T01:50:44.3806768Z 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-23T01:50:44.3806770Z 2026-10-23T01:50:44.3806838Z 98 execute: (effect, options) => { 2026-10-23T01:50:44.3806885Z ~~~~~~~ 2026-10-23T01:50:44.3806888Z 2026-10-23T01:50:44.3807276Z 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-23T01:50:44.3807279Z 2026-10-23T01:50:44.3807343Z 180 Effect.catch((cause) => 2026-10-23T01:50:44.3807403Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3807405Z 2026-10-23T01:50:44.3807744Z 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-23T01:50:44.3807748Z 2026-10-23T01:50:44.3807805Z 110 append: (input) => 2026-10-23T01:50:44.3807857Z ~~~~~~ 2026-10-23T01:50:44.3807860Z 2026-10-23T01:50:44.3808223Z 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-23T01:50:44.3808226Z 2026-10-23T01:50:44.3808295Z 120 appendProjectEvent: (event) => 2026-10-23T01:50:44.3808394Z ~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3808401Z 2026-10-23T01:50:44.3808749Z 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-23T01:50:44.3808753Z 2026-10-23T01:50:44.3808817Z 131 latestSequence: (input) => 2026-10-23T01:50:44.3808871Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3808874Z 2026-10-23T01:50:44.3809183Z src/orchestration-v2/FoundationPersistence.test.ts:1791:26 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3809186Z 2026-10-23T01:50:44.3809288Z 1791 claimNext: () => Effect.succeed(Option.some(claimedEffect)), 2026-10-23T01:50:44.3809349Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3809352Z 2026-10-23T01:50:44.3809657Z src/orchestration-v2/FoundationPersistence.test.ts:1793:11 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3809660Z 2026-10-23T01:50:44.3809715Z 1793 Effect.succeed( 2026-10-23T01:50:44.3809771Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3809774Z 2026-10-23T01:50:44.3810100Z src/orchestration-v2/FoundationPersistence.test.ts:2663:30 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3810103Z 2026-10-23T01:50:44.3810197Z 2663 nextClaimableAt: Effect.succeed(Option.none()), 2026-10-23T01:50:44.3810259Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3810261Z 2026-10-23T01:50:44.3810562Z src/orchestration-v2/FoundationPersistence.test.ts:2880:30 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3810565Z 2026-10-23T01:50:44.3810657Z 2880 nextClaimableAt: Effect.succeed(Option.none()), 2026-10-23T01:50:44.3810717Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3810720Z 2026-10-23T01:50:44.3811201Z src/orchestration-v2/Orchestrator.ts:11653:7 - suggestion TS377120: `Effect.filterOrFail` expresses this conditional validation more directly than `Effect.flatMap` with an identity `Effect.succeed` branch. effect(flatMapConditionalToFilterOrFail) 2026-10-23T01:50:44.3811272Z 2026-10-23T01:50:44.3811340Z 11653 Effect.flatMap((planned) => 2026-10-23T01:50:44.3811396Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3811399Z 2026-10-23T01:50:44.3811796Z src/orchestration-v2/Orchestrator.ts:12076:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.restartContinuationPending")((run) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3811799Z 2026-10-23T01:50:44.3811870Z 12076 restartContinuationPending: (run) => 2026-10-23T01:50:44.3811928Z ~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3811931Z 2026-10-23T01:50:44.3812317Z src/orchestration-v2/Orchestrator.ts:12078:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.awaitRestartContinuation")((run) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3812322Z 2026-10-23T01:50:44.3812391Z 12078 awaitRestartContinuation: (run) => 2026-10-23T01:50:44.3812444Z ~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3812452Z 2026-10-23T01:50:44.3812832Z src/orchestration-v2/Orchestrator.ts:12081:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.autoArmLimitRecovery")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3812835Z 2026-10-23T01:50:44.3812903Z 12081 autoArmLimitRecovery: (input) => 2026-10-23T01:50:44.3812955Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3812958Z 2026-10-23T01:50:44.3813375Z src/orchestration-v2/Orchestrator.ts:12109:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.searchThread")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3813378Z 2026-10-23T01:50:44.3813436Z 12109 searchThread: (input) => 2026-10-23T01:50:44.3813491Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3813493Z 2026-10-23T01:50:44.3813954Z src/orchestration-v2/Orchestrator.ts:12117: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-23T01:50:44.3813956Z 2026-10-23T01:50:44.3814097Z 12117 getThreadHistoryPage: (threadId, cursor, throughEntryId, conversationOnly) => 2026-10-23T01:50:44.3814149Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3814154Z 2026-10-23T01:50:44.3814541Z src/orchestration-v2/Orchestrator.ts:12121:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getTimelinePage")((threadId, options) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3814547Z 2026-10-23T01:50:44.3814622Z 12121 getTimelinePage: (threadId, options) => 2026-10-23T01:50:44.3814678Z ~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3814681Z 2026-10-23T01:50:44.3815047Z src/orchestration-v2/Orchestrator.ts:12125:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getMessageCount")((threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3815049Z 2026-10-23T01:50:44.3815115Z 12125 getMessageCount: (threadId) => 2026-10-23T01:50:44.3815164Z ~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3815166Z 2026-10-23T01:50:44.3815527Z src/orchestration-v2/Orchestrator.ts:12129:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getTurnItem")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3815530Z 2026-10-23T01:50:44.3815593Z 12129 getTurnItem: (input) => 2026-10-23T01:50:44.3815647Z ~~~~~~~~~~~ 2026-10-23T01:50:44.3815650Z 2026-10-23T01:50:44.3816054Z src/orchestration-v2/Orchestrator.ts:12137:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getThreadRecords")((threadId, fields, filter) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3816113Z 2026-10-23T01:50:44.3816197Z 12137 getThreadRecords: (threadId, fields, filter) => 2026-10-23T01:50:44.3816253Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3816256Z 2026-10-23T01:50:44.3816631Z src/orchestration-v2/Orchestrator.ts:12141:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getThreadProjection")((threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3816634Z 2026-10-23T01:50:44.3816707Z 12141 getThreadProjection: (threadId) => 2026-10-23T01:50:44.3816769Z ~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3816772Z 2026-10-23T01:50:44.3817148Z src/orchestration-v2/Orchestrator.ts:12145:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getCheckpointContext")((threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3817152Z 2026-10-23T01:50:44.3817226Z 12145 getCheckpointContext: (threadId) => 2026-10-23T01:50:44.3817279Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3817282Z 2026-10-23T01:50:44.3817652Z src/orchestration-v2/Orchestrator.ts:12149:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getThreadSnapshot")((threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3817657Z 2026-10-23T01:50:44.3817722Z 12149 getThreadSnapshot: (threadId) => 2026-10-23T01:50:44.3817771Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3817773Z 2026-10-23T01:50:44.3818224Z src/orchestration-v2/Orchestrator.ts:12153:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getThreadSnapshotWindow")((threadId, options) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3818227Z 2026-10-23T01:50:44.3818318Z 12153 getThreadSnapshotWindow: (threadId, options) => 2026-10-23T01:50:44.3818372Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3818375Z 2026-10-23T01:50:44.3818742Z src/orchestration-v2/Orchestrator.ts:12157:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getShellSnapshot")((options) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3818745Z 2026-10-23T01:50:44.3818805Z 12157 getShellSnapshot: (options) => 2026-10-23T01:50:44.3818858Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3818860Z 2026-10-23T01:50:44.3819230Z src/orchestration-v2/Orchestrator.ts:12159:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.readShellSnapshot")((options) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3819233Z 2026-10-23T01:50:44.3819299Z 12159 readShellSnapshot: (options) => 2026-10-23T01:50:44.3819348Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3819354Z 2026-10-23T01:50:44.3819716Z src/orchestration-v2/Orchestrator.ts:12166:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getThreadShell")((threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3819719Z 2026-10-23T01:50:44.3819782Z 12166 getThreadShell: (threadId) => 2026-10-23T01:50:44.3819859Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3819862Z 2026-10-23T01:50:44.3820253Z src/orchestration-v2/Orchestrator.ts:12170:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("OrchestratorV2.getThreadEventSequence")((threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3820256Z 2026-10-23T01:50:44.3820328Z 12170 getThreadEventSequence: (threadId) => 2026-10-23T01:50:44.3820379Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3820382Z 2026-10-23T01:50:44.3820764Z 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-23T01:50:44.3820813Z 2026-10-23T01:50:44.3820894Z 160 getInstance: () => Effect.succeed(undefined), 2026-10-23T01:50:44.3820963Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3820966Z 2026-10-23T01:50:44.3821315Z src/orchestration-v2/ProjectStore.ts:266:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProjectStoreV2.getShell")((projectId) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3821322Z 2026-10-23T01:50:44.3821451Z 266 getShell: (projectId) => get(projectId).pipe(Effect.map(Option.map(toShell))), 2026-10-23T01:50:44.3821502Z ~~~~~~~~ 2026-10-23T01:50:44.3821505Z 2026-10-23T01:50:44.3821856Z src/orchestration-v2/ProjectStore.ts:267:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProjectStoreV2.listShells")((options) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3821861Z 2026-10-23T01:50:44.3821922Z 267 listShells: (options) => 2026-10-23T01:50:44.3821967Z ~~~~~~~~~~ 2026-10-23T01:50:44.3821970Z 2026-10-23T01:50:44.3822279Z src/orchestration-v2/ProjectionControlReads.test.ts:279:11 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3822282Z 2026-10-23T01:50:44.3822340Z 279 Effect.succeed( 2026-10-23T01:50:44.3822396Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3822399Z 2026-10-23T01:50:44.3822859Z 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-23T01:50:44.3822862Z 2026-10-23T01:50:44.3822916Z 78 get: (instanceId) => 2026-10-23T01:50:44.3822968Z ~~~ 2026-10-23T01:50:44.3822971Z 2026-10-23T01:50:44.3823348Z 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-23T01:50:44.3823351Z 2026-10-23T01:50:44.3823402Z 135 list: () => 2026-10-23T01:50:44.3823449Z ~~~~ 2026-10-23T01:50:44.3823455Z 2026-10-23T01:50:44.3823835Z src/orchestration-v2/ProviderEventIngestor.ts:93:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderTurnAnalytics.record")((properties) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3823837Z 2026-10-23T01:50:44.3823939Z 93 record: (properties: Readonly>) => 2026-10-23T01:50:44.3823990Z ~~~~~~ 2026-10-23T01:50:44.3823993Z 2026-10-23T01:50:44.3824427Z src/orchestration-v2/ProviderEventIngestor.ts:818:15 - suggestion TS377120: `Effect.filterOrElse` expresses this conditional validation more directly than `Effect.flatMap` with an identity `Effect.succeed` branch. effect(flatMapConditionalToFilterOrFail) 2026-10-23T01:50:44.3824431Z 2026-10-23T01:50:44.3824507Z 818 Effect.flatMap((storedEvents) => 2026-10-23T01:50:44.3824557Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3824560Z 2026-10-23T01:50:44.3824863Z src/orchestration-v2/ProviderSessionManager.test.ts:1155:19 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3824865Z 2026-10-23T01:50:44.3825012Z 1155 : Effect.succeed(Option.some(makeBrowserAccessProject(requestedProjectId))), 2026-10-23T01:50:44.3825073Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3825076Z 2026-10-23T01:50:44.3825381Z src/orchestration-v2/ProviderTurnStartService.test.ts:150:13 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3825443Z 2026-10-23T01:50:44.3825498Z 150 Effect.succeed( 2026-10-23T01:50:44.3825551Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3825554Z 2026-10-23T01:50:44.3825856Z src/orchestration-v2/ProviderTurnStartService.test.ts:703:13 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3825860Z 2026-10-23T01:50:44.3826019Z 703 Effect.succeed(Option.some({ workspaceRoot: "/tmp/native-account-project" } as never)), 2026-10-23T01:50:44.3826069Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3826071Z 2026-10-23T01:50:44.3826383Z src/orchestration-v2/ProviderTurnStartService.testkit.ts:14:20 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3826385Z 2026-10-23T01:50:44.3826465Z 14 getById: () => Effect.succeed(Option.none()), 2026-10-23T01:50:44.3826523Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3826527Z 2026-10-23T01:50:44.3826973Z src/orchestration-v2/ProviderTurnStartService.ts:499:15 - suggestion TS377116: `Effect.catchCauseIf` expresses selective recovery more directly than `Effect.catchCause` with a conditional `Effect.failCause` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-23T01:50:44.3826975Z 2026-10-23T01:50:44.3827040Z 499 Effect.catchCause((cause) => 2026-10-23T01:50:44.3827095Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3827098Z 2026-10-23T01:50:44.3827656Z src/orchestration-v2/ProviderTurnStartService.ts:1289: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-23T01:50:44.3827660Z 2026-10-23T01:50:44.3827734Z 1289 return runExecution.startRootRun({ 2026-10-23T01:50:44.3827784Z ~~~~~~ 2026-10-23T01:50:44.3827787Z 2026-10-23T01:50:44.3828080Z src/orchestration-v2/PullRequestWatchReactor.ts:477:53 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-23T01:50:44.3828083Z 2026-10-23T01:50:44.3828204Z 477 ? pullRequests.activity(reference).pipe(Effect.map(Option.some)) 2026-10-23T01:50:44.3828284Z ~~~~~~~~~~ 2026-10-23T01:50:44.3828286Z 2026-10-23T01:50:44.3828711Z 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-23T01:50:44.3828714Z 2026-10-23T01:50:44.3828797Z 49 cleanupScheduledTasks: (threadId: ThreadId) => 2026-10-23T01:50:44.3828847Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3828851Z 2026-10-23T01:50:44.3829257Z 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-23T01:50:44.3829259Z 2026-10-23T01:50:44.3829333Z 58 cleanupTerminals: (threadId: string) => 2026-10-23T01:50:44.3829387Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3829389Z 2026-10-23T01:50:44.3829818Z 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-23T01:50:44.3829821Z 2026-10-23T01:50:44.3829889Z 66 cleanupPreviews: (threadId: string) => 2026-10-23T01:50:44.3829941Z ~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3829944Z 2026-10-23T01:50:44.3830367Z 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-23T01:50:44.3830422Z 2026-10-23T01:50:44.3830532Z 74 cleanupAttachments: (attachmentIds: ReadonlyArray) => 2026-10-23T01:50:44.3830583Z ~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3830585Z 2026-10-23T01:50:44.3830885Z src/orchestration-v2/RunExecutionService.test.ts:1812:16 - suggestion TS377114: `Effect.asSome` expresses wrapping the success value in `Option.some` directly. effect(mapSomeToAsSome) 2026-10-23T01:50:44.3830887Z 2026-10-23T01:50:44.3830961Z 1812 ).pipe(Effect.map(Option.some)), 2026-10-23T01:50:44.3831016Z ~~~~~~~~~~ 2026-10-23T01:50:44.3831020Z 2026-10-23T01:50:44.3834947Z src/orchestration-v2/RunExecutionService.ts:919:15 - suggestion TS377116: `Effect.catchCauseIf` expresses selective recovery more directly than `Effect.catchCause` with a conditional `Effect.failCause` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-23T01:50:44.3834955Z 2026-10-23T01:50:44.3835030Z 919 Effect.catchCause((cause) => 2026-10-23T01:50:44.3835083Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3835086Z 2026-10-23T01:50:44.3835403Z src/orchestration-v2/RuntimePolicy.test.ts:90:9 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3835406Z 2026-10-23T01:50:44.3835462Z 90 Effect.succeed( 2026-10-23T01:50:44.3835510Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3835515Z 2026-10-23T01:50:44.3835953Z 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-23T01:50:44.3835956Z 2026-10-23T01:50:44.3836011Z 54 resolve: (input) => 2026-10-23T01:50:44.3836059Z ~~~~~~~ 2026-10-23T01:50:44.3836063Z 2026-10-23T01:50:44.3836360Z src/orchestration-v2/RuntimeRequestService.test.ts:27:5 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3836363Z 2026-10-23T01:50:44.3836412Z 27 Effect.succeed( 2026-10-23T01:50:44.3836460Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3836463Z 2026-10-23T01:50:44.3836760Z src/orchestration-v2/ThreadLaunchService.test.ts:189:33 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3836763Z 2026-10-23T01:50:44.3836877Z 189 getByWorkspaceRoot: () => Effect.succeed(Option.some(project)), 2026-10-23T01:50:44.3836940Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3836943Z 2026-10-23T01:50:44.3837234Z src/orchestration-v2/ThreadLaunchService.test.ts:220:32 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3837238Z 2026-10-23T01:50:44.3837337Z 220 folderForThread: () => Effect.succeed(Option.none()), 2026-10-23T01:50:44.3837397Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3837399Z 2026-10-23T01:50:44.3837789Z 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-23T01:50:44.3837791Z 2026-10-23T01:50:44.3837847Z 91 archive: (input) => 2026-10-23T01:50:44.3837892Z ~~~~~~~ 2026-10-23T01:50:44.3837894Z 2026-10-23T01:50:44.3838283Z 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-23T01:50:44.3838286Z 2026-10-23T01:50:44.3838400Z 97 unarchive: (input) => 2026-10-23T01:50:44.3838448Z ~~~~~~~~~ 2026-10-23T01:50:44.3838451Z 2026-10-23T01:50:44.3838831Z 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-23T01:50:44.3838836Z 2026-10-23T01:50:44.3838887Z 103 delete: (input) => 2026-10-23T01:50:44.3838933Z ~~~~~~ 2026-10-23T01:50:44.3838935Z 2026-10-23T01:50:44.3839339Z 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-23T01:50:44.3839342Z 2026-10-23T01:50:44.3839404Z 109 updateMetadata: (input) => 2026-10-23T01:50:44.3839451Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3839453Z 2026-10-23T01:50:44.3839881Z 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-23T01:50:44.3839886Z 2026-10-23T01:50:44.3839948Z 118 setRuntimeMode: (input) => 2026-10-23T01:50:44.3839996Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3839998Z 2026-10-23T01:50:44.3840412Z 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-23T01:50:44.3840415Z 2026-10-23T01:50:44.3840523Z 125 setInteractionMode: (input) => 2026-10-23T01:50:44.3840576Z ~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3840579Z 2026-10-23T01:50:44.3840988Z 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-23T01:50:44.3840992Z 2026-10-23T01:50:44.3841056Z 132 setModelSelection: (input) => 2026-10-23T01:50:44.3841106Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3841108Z 2026-10-23T01:50:44.3841550Z src/orchestration-v2/ThreadManagementService.ts:688:7 - suggestion TS377120: `Effect.filterOrFail` expresses this conditional validation more directly than `Effect.flatMap` with an identity `Effect.succeed` branch. effect(flatMapConditionalToFilterOrFail) 2026-10-23T01:50:44.3841553Z 2026-10-23T01:50:44.3841616Z 688 Effect.flatMap((projection) => 2026-10-23T01:50:44.3841667Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3841672Z 2026-10-23T01:50:44.3842002Z src/orchestration-v2/ThreadManagementService.ts:705:5 - suggestion TS377015: This expression contains chained `pipe` calls that can be simplified to a single `pipe` call. effect(unnecessaryPipeChain) 2026-10-23T01:50:44.3842004Z 2026-10-23T01:50:44.3842087Z 705 ensureProjectionTranscript(input.threadId) 2026-10-23T01:50:44.3842147Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3842303Z 706 .pipe(Effect.andThen(orchestrator.getThreadRecords(input.threadId, fields, filter))) 2026-10-23T01:50:44.3842404Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3842452Z ... 2026-10-23T01:50:44.3842498Z 725 ), 2026-10-23T01:50:44.3842546Z ~~~~~~~~~~ 2026-10-23T01:50:44.3842593Z 726 ); 2026-10-23T01:50:44.3842638Z ~~~~~~~ 2026-10-23T01:50:44.3842640Z 2026-10-23T01:50:44.3843079Z src/orchestration-v2/ThreadManagementService.ts:716:9 - suggestion TS377120: `Effect.filterOrFail` expresses this conditional validation more directly than `Effect.flatMap` with an identity `Effect.succeed` branch. effect(flatMapConditionalToFilterOrFail) 2026-10-23T01:50:44.3843082Z 2026-10-23T01:50:44.3843148Z 716 Effect.flatMap((projection) => 2026-10-23T01:50:44.3843264Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3843266Z 2026-10-23T01:50:44.3843697Z src/orchestration-v2/ThreadManagementService.ts:1129: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-23T01:50:44.3843700Z 2026-10-23T01:50:44.3843819Z 1129 if (failures[0] !== undefined) return yield* Effect.fail(failures[0]); 2026-10-23T01:50:44.3843883Z ~~~~~ 2026-10-23T01:50:44.3843886Z 2026-10-23T01:50:44.3844300Z src/orchestration-v2/ThreadManagementService.ts:1140:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadManagementService.searchThread")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3844303Z 2026-10-23T01:50:44.3844366Z 1140 searchThread: (input) => 2026-10-23T01:50:44.3844419Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3844423Z 2026-10-23T01:50:44.3844928Z src/orchestration-v2/ThreadManagementService.ts:1145: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-23T01:50:44.3844934Z 2026-10-23T01:50:44.3845069Z 1145 getThreadHistoryPage: (threadId, cursor, throughEntryId, conversationOnly) => 2026-10-23T01:50:44.3845123Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3845126Z 2026-10-23T01:50:44.3845604Z src/orchestration-v2/ThreadManagementService.ts:1151:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadManagementService.getTimelinePage")((threadId, options) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3845608Z 2026-10-23T01:50:44.3845685Z 1151 getTimelinePage: (threadId, options) => 2026-10-23T01:50:44.3845734Z ~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3845742Z 2026-10-23T01:50:44.3846150Z src/orchestration-v2/ThreadManagementService.ts:1155:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadManagementService.getMessageCount")((threadId) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3846153Z 2026-10-23T01:50:44.3846216Z 1155 getMessageCount: (threadId) => 2026-10-23T01:50:44.3846268Z ~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3846271Z 2026-10-23T01:50:44.3846671Z src/orchestration-v2/ThreadManagementService.ts:1159:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadManagementService.getTurnItem")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3846674Z 2026-10-23T01:50:44.3846734Z 1159 getTurnItem: (input) => 2026-10-23T01:50:44.3846782Z ~~~~~~~~~~~ 2026-10-23T01:50:44.3846784Z 2026-10-23T01:50:44.3847224Z src/orchestration-v2/ThreadManagementService.ts:1164:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadManagementService.getThreadRecords")((threadId, fields, filter) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3847228Z 2026-10-23T01:50:44.3847317Z 1164 getThreadRecords: (threadId, fields, filter) => 2026-10-23T01:50:44.3847371Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3847374Z 2026-10-23T01:50:44.3847827Z src/orchestration-v2/ThreadManagementService.ts:1203:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("LegacyV1ThreadImporter.LegacyV1ThreadImporter.ensureTranscript")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3847832Z 2026-10-23T01:50:44.3847992Z 1203 ensureTranscript: () => Effect.succeed({ importedThreadCount: 0, importedMessageCount: 0 }), 2026-10-23T01:50:44.3848044Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3848046Z 2026-10-23T01:50:44.3848355Z src/orchestration-v2/ThreadPullRequestService.test.ts:135:31 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3848410Z 2026-10-23T01:50:44.3848506Z 135 getShell: () => Effect.succeed(Option.some(project)), 2026-10-23T01:50:44.3848563Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3848566Z 2026-10-23T01:50:44.3849007Z src/orchestration-v2/ThreadPullRequestService.ts:327:17 - suggestion TS377116: `Effect.catchCauseIf` expresses selective recovery more directly than `Effect.catchCause` with a conditional `Effect.failCause` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-23T01:50:44.3849010Z 2026-10-23T01:50:44.3849078Z 327 Effect.catchCause((cause) => 2026-10-23T01:50:44.3849134Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3849137Z 2026-10-23T01:50:44.3849571Z src/orchestration-v2/ThreadSettlementService.ts:353:11 - suggestion TS377116: `Effect.catchCauseIf` expresses selective recovery more directly than `Effect.catchCause` with a conditional `Effect.failCause` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-23T01:50:44.3849575Z 2026-10-23T01:50:44.3849640Z 353 Effect.catchCause((cause) => 2026-10-23T01:50:44.3849692Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3849694Z 2026-10-23T01:50:44.3850155Z src/orchestration-v2/ThreadSettlementService.ts:516:11 - suggestion TS377116: `Effect.catchCauseIf` expresses selective recovery more directly than `Effect.catchCause` with a conditional `Effect.failCause` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-23T01:50:44.3850158Z 2026-10-23T01:50:44.3850222Z 516 Effect.catchCause((cause) => 2026-10-23T01:50:44.3850320Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3850323Z 2026-10-23T01:50:44.3850757Z src/orchestration-v2/ThreadSettlementService.ts:534:7 - suggestion TS377116: `Effect.catchCauseIf` expresses selective recovery more directly than `Effect.catchCause` with a conditional `Effect.failCause` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-23T01:50:44.3850764Z 2026-10-23T01:50:44.3850825Z 534 Effect.catchCause((cause) => 2026-10-23T01:50:44.3850879Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3850974Z 2026-10-23T01:50:44.3851412Z src/orchestration-v2/ThreadSettlementService.ts:576:9 - suggestion TS377116: `Effect.catchCauseIf` expresses selective recovery more directly than `Effect.catchCause` with a conditional `Effect.failCause` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-23T01:50:44.3851415Z 2026-10-23T01:50:44.3851477Z 576 Effect.catchCause((cause) => 2026-10-23T01:50:44.3851528Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3851530Z 2026-10-23T01:50:44.3851941Z 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-23T01:50:44.3851946Z 2026-10-23T01:50:44.3852011Z 106 normalize: (item, runOrdinal) => 2026-10-23T01:50:44.3852061Z ~~~~~~~~~ 2026-10-23T01:50:44.3852063Z 2026-10-23T01:50:44.3852526Z 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-23T01:50:44.3852528Z 2026-10-23T01:50:44.3852641Z 54 const thread = Schema.decodeUnknownSync(OrchestrationV2AppThread)({ 2026-10-23T01:50:44.3852698Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3852701Z 2026-10-23T01:50:44.3853127Z src/orchestration-v2/http.ts:231:11 - suggestion TS377012: This Effect generator contains `try/catch`; in this context, error handling is expressed with Effect APIs such as Effect.try, Effect.tryPromise, Effect.catch, Effect.catchTag). effect(tryCatchInEffectGen) 2026-10-23T01:50:44.3853201Z 2026-10-23T01:50:44.3853252Z 231 try { 2026-10-23T01:50:44.3853301Z ~~~~~ 2026-10-23T01:50:44.3853392Z 232 decodeThreadHistoryCursor(args.query.cursor); 2026-10-23T01:50:44.3853466Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3853513Z ... 2026-10-23T01:50:44.3853666Z 236 return yield* failEnvironmentInternal("orchestration_thread_history_failed", cause); 2026-10-23T01:50:44.3853766Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3853816Z 237 } 2026-10-23T01:50:44.3853864Z ~~~~~~~~~~~ 2026-10-23T01:50:44.3853867Z 2026-10-23T01:50:44.3854152Z src/orchestration-v2/runtimeLayer.test.ts:120:18 - suggestion TS377117: `Effect.succeedNone` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3854155Z 2026-10-23T01:50:44.3854228Z 120 getById: () => Effect.succeed(Option.none()), 2026-10-23T01:50:44.3854286Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3854288Z 2026-10-23T01:50:44.3854562Z src/orchestration-v2/runtimeLayer.test.ts:996:11 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3854565Z 2026-10-23T01:50:44.3854621Z 996 Effect.succeed( 2026-10-23T01:50:44.3854674Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3854677Z 2026-10-23T01:50:44.3855157Z src/orchestration-v2/testkit/CommandOutputRecorder.ts:40:9 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("CommandOutputHub.CommandOutputHub.append")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3855160Z 2026-10-23T01:50:44.3855216Z 40 append: (input) => 2026-10-23T01:50:44.3855265Z ~~~~~~ 2026-10-23T01:50:44.3855268Z 2026-10-23T01:50:44.3855641Z src/orchestration-v2/testkit/OrchestratorScenario.ts:283:13 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("awaitDispatch")(function*(key) { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3855646Z 2026-10-23T01:50:44.3855715Z 283 const awaitDispatch = (key: string) => 2026-10-23T01:50:44.3855763Z ~~~~~~~~~~~~~ 2026-10-23T01:50:44.3855766Z 2026-10-23T01:50:44.3856252Z src/orchestration-v2/testkit/ProviderReplayHarness.ts:447:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ThreadTitleRegenerationService.ThreadTitleRegenerationService.execute")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3856255Z 2026-10-23T01:50:44.3856322Z 447 execute: () => Effect.void, 2026-10-23T01:50:44.3856372Z ~~~~~~~ 2026-10-23T01:50:44.3856374Z 2026-10-23T01:50:44.3856766Z src/persistence/PullRequestFilesViewed.ts:91:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("PullRequestFilesViewedRepository.list")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3856773Z 2026-10-23T01:50:44.3856825Z 91 list: (input) => 2026-10-23T01:50:44.3856875Z ~~~~ 2026-10-23T01:50:44.3856878Z 2026-10-23T01:50:44.3857270Z src/persistence/PullRequestFilesViewed.ts:100:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("PullRequestFilesViewedRepository.set")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3857273Z 2026-10-23T01:50:44.3857328Z 100 set: (input) => 2026-10-23T01:50:44.3857374Z ~~~ 2026-10-23T01:50:44.3857377Z 2026-10-23T01:50:44.3857769Z src/persistence/PullRequestReviewGuides.ts:53:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("PullRequestReviewGuideRepository.get")((key) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3857772Z 2026-10-23T01:50:44.3857825Z 53 get: (key) => 2026-10-23T01:50:44.3857874Z ~~~ 2026-10-23T01:50:44.3857935Z 2026-10-23T01:50:44.3858331Z src/persistence/PullRequestReviewGuides.ts:62:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("PullRequestReviewGuideRepository.put")((key, guide) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3858334Z 2026-10-23T01:50:44.3858387Z 62 put: (key, guide) => 2026-10-23T01:50:44.3858434Z ~~~ 2026-10-23T01:50:44.3858437Z 2026-10-23T01:50:44.3858828Z 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-23T01:50:44.3858831Z 2026-10-23T01:50:44.3858892Z 45 Effect.catch((error) => 2026-10-23T01:50:44.3858940Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3858945Z 2026-10-23T01:50:44.3859310Z src/preview/DesktopBrowserChannel.ts:75:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBrowserChannel.awaitAttached")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3859314Z 2026-10-23T01:50:44.3859395Z 75 awaitAttached: () => Effect.succeed(false), 2026-10-23T01:50:44.3859446Z ~~~~~~~~~~~~~ 2026-10-23T01:50:44.3859448Z 2026-10-23T01:50:44.3859843Z src/preview/DesktopBrowserChannel.ts:78:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBrowserChannel.isAttached")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3859846Z 2026-10-23T01:50:44.3859921Z 78 isAttached: () => Effect.succeed(false), 2026-10-23T01:50:44.3859968Z ~~~~~~~~~~ 2026-10-23T01:50:44.3860019Z 2026-10-23T01:50:44.3860374Z src/preview/DesktopBrowserChannel.ts:79:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBrowserChannel.endpoint")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3860379Z 2026-10-23T01:50:44.3860499Z 79 endpoint: () => Effect.die("No desktop app is attached to this server."), 2026-10-23T01:50:44.3860548Z ~~~~~~~~ 2026-10-23T01:50:44.3860551Z 2026-10-23T01:50:44.3860896Z src/preview/DesktopBrowserChannel.ts:80:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBrowserChannel.pointer")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3860902Z 2026-10-23T01:50:44.3860960Z 80 pointer: () => Effect.void, 2026-10-23T01:50:44.3861012Z ~~~~~~~ 2026-10-23T01:50:44.3861015Z 2026-10-23T01:50:44.3861402Z src/preview/DesktopBrowserChannel.ts:194:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBrowserChannel.awaitAttached")((key, timeout) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3861404Z 2026-10-23T01:50:44.3861468Z 194 awaitAttached: (key, timeout) => 2026-10-23T01:50:44.3861515Z ~~~~~~~~~~~~~ 2026-10-23T01:50:44.3861519Z 2026-10-23T01:50:44.3861883Z src/preview/DesktopBrowserChannel.ts:216:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBrowserChannel.isAttached")((key) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3861885Z 2026-10-23T01:50:44.3862005Z 216 isAttached: (key) => Effect.sync(() => attachedTabs.has(keyOf(key))), 2026-10-23T01:50:44.3862060Z ~~~~~~~~~~ 2026-10-23T01:50:44.3862063Z 2026-10-23T01:50:44.3862439Z src/preview/DesktopBrowserChannel.ts:218:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopBrowserChannel.pointer")((key, pointer) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3862441Z 2026-10-23T01:50:44.3862560Z 218 pointer: (key, pointer) => command({ type: "pointer", ...key, ...pointer }), 2026-10-23T01:50:44.3862612Z ~~~~~~~ 2026-10-23T01:50:44.3862614Z 2026-10-23T01:50:44.3863139Z src/preview/ServerBrowser.ts:480: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-23T01:50:44.3863206Z 2026-10-23T01:50:44.3863318Z 480 executable: () => Effect.runPromise(previewBrowser.executable), 2026-10-23T01:50:44.3863378Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3863380Z 2026-10-23T01:50:44.3863896Z src/preview/ServerBrowser.ts:687: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-23T01:50:44.3863902Z 2026-10-23T01:50:44.3863959Z 687 ? Effect.runPromise( 2026-10-23T01:50:44.3864014Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3864018Z 2026-10-23T01:50:44.3864531Z src/preview/ServerBrowser.ts:696: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-23T01:50:44.3864534Z 2026-10-23T01:50:44.3864625Z 696 const scope = await Effect.runPromise(Scope.make()); 2026-10-23T01:50:44.3864682Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3864687Z 2026-10-23T01:50:44.3865243Z src/preview/ServerBrowser.ts:698: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-23T01:50:44.3865246Z 2026-10-23T01:50:44.3865327Z 698 const endpoint = await Effect.runPromise( 2026-10-23T01:50:44.3865395Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3865397Z 2026-10-23T01:50:44.3865910Z src/preview/ServerBrowser.ts:708: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-23T01:50:44.3865913Z 2026-10-23T01:50:44.3866016Z 708 await Effect.runPromise(Scope.close(scope, Exit.void)); 2026-10-23T01:50:44.3866069Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3866072Z 2026-10-23T01:50:44.3866588Z src/preview/ServerBrowser.ts:712: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-23T01:50:44.3866592Z 2026-10-23T01:50:44.3866692Z 712 await Effect.runPromise(Scope.close(scope, Exit.void)); 2026-10-23T01:50:44.3866748Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3866750Z 2026-10-23T01:50:44.3867263Z src/preview/ServerBrowser.ts:1199: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-23T01:50:44.3867266Z 2026-10-23T01:50:44.3867324Z 1199 await Effect.runPromise( 2026-10-23T01:50:44.3867380Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3867383Z 2026-10-23T01:50:44.3867894Z src/preview/ServerBrowser.ts:1688: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-23T01:50:44.3867950Z 2026-10-23T01:50:44.3868013Z 1688 : await Effect.runPromise( 2026-10-23T01:50:44.3868070Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3868072Z 2026-10-23T01:50:44.3868586Z src/preview/ServerBrowser.ts:1752: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-23T01:50:44.3868591Z 2026-10-23T01:50:44.3868656Z 1752 ? await Effect.runPromise( 2026-10-23T01:50:44.3868717Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3868720Z 2026-10-23T01:50:44.3869032Z src/preview/ServerBrowser.ts:1755:58 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-23T01:50:44.3869036Z 2026-10-23T01:50:44.3869162Z 1755 ServerBrowserTabNotFoundError: () => Effect.succeed(undefined), 2026-10-23T01:50:44.3869240Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3869246Z 2026-10-23T01:50:44.3869760Z src/preview/ServerBrowser.ts:1761: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-23T01:50:44.3869763Z 2026-10-23T01:50:44.3869939Z 1761 const { sessions } = await Effect.runPromise( 2026-10-23T01:50:44.3870009Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3870012Z 2026-10-23T01:50:44.3870529Z src/preview/ServerBrowser.ts:1789: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-23T01:50:44.3870534Z 2026-10-23T01:50:44.3870598Z 1789 await Effect.runPromise( 2026-10-23T01:50:44.3870651Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3870653Z 2026-10-23T01:50:44.3871177Z src/preview/ServerBrowser.ts:1820: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-23T01:50:44.3871180Z 2026-10-23T01:50:44.3871244Z 1820 await Effect.runPromise( 2026-10-23T01:50:44.3871301Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3871303Z 2026-10-23T01:50:44.3871823Z src/preview/ServerBrowser.ts:1884: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-23T01:50:44.3871825Z 2026-10-23T01:50:44.3871975Z 1884 await Effect.runPromise(manager.close({ threadId: tab.threadId, tabId: tab.tabId })); 2026-10-23T01:50:44.3872030Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3872032Z 2026-10-23T01:50:44.3872550Z src/preview/ServerBrowser.ts:1952: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-23T01:50:44.3872553Z 2026-10-23T01:50:44.3872614Z 1952 await Effect.runPromise( 2026-10-23T01:50:44.3872735Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3872738Z 2026-10-23T01:50:44.3873251Z src/preview/ServerBrowser.ts:1964: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-23T01:50:44.3873258Z 2026-10-23T01:50:44.3873337Z 1964 const snapshot = await Effect.runPromise( 2026-10-23T01:50:44.3873406Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3873408Z 2026-10-23T01:50:44.3873928Z src/preview/ServerBrowser.ts:2210: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-23T01:50:44.3873933Z 2026-10-23T01:50:44.3873995Z 2210 await Effect.runPromise( 2026-10-23T01:50:44.3874049Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3874052Z 2026-10-23T01:50:44.3874373Z 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-23T01:50:44.3874376Z 2026-10-23T01:50:44.3874465Z 179 const receive = (chunk: Uint8Array | string) => { 2026-10-23T01:50:44.3874520Z ~~~~~~~ 2026-10-23T01:50:44.3874523Z 2026-10-23T01:50:44.3874919Z 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-23T01:50:44.3874923Z 2026-10-23T01:50:44.3875036Z 209 Effect.catch(() => Effect.succeed(HttpServerResponse.empty())), 2026-10-23T01:50:44.3875083Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3875088Z 2026-10-23T01:50:44.3875471Z src/process/externalLauncher.ts:860:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ExternalLauncher.resolveAvailableEditors")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3875473Z 2026-10-23T01:50:44.3875573Z 860 resolveAvailableEditors: () => cachedAvailableEditors, 2026-10-23T01:50:44.3875629Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3875632Z 2026-10-23T01:50:44.3876017Z src/process/externalLauncher.ts:861:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ExternalLauncher.resolveFileManagerRevealKind")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3876027Z 2026-10-23T01:50:44.3876096Z 861 resolveFileManagerRevealKind: () => 2026-10-23T01:50:44.3876155Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3876158Z 2026-10-23T01:50:44.3876518Z src/process/externalLauncher.ts:865:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ExternalLauncher.launchBrowser")((target) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3876522Z 2026-10-23T01:50:44.3876581Z 865 launchBrowser: (target) => 2026-10-23T01:50:44.3876629Z ~~~~~~~~~~~~~ 2026-10-23T01:50:44.3876631Z 2026-10-23T01:50:44.3876986Z src/process/externalLauncher.ts:869:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ExternalLauncher.launchEditor")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3876988Z 2026-10-23T01:50:44.3877046Z 869 launchEditor: (input) => 2026-10-23T01:50:44.3877095Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3877100Z 2026-10-23T01:50:44.3877386Z src/project/AgentSessionImporter.test.ts:212:15 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3877389Z 2026-10-23T01:50:44.3877444Z 212 Effect.succeed( 2026-10-23T01:50:44.3877550Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3877552Z 2026-10-23T01:50:44.3877829Z src/project/ManagedProjectFolders.ts:346:13 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3877832Z 2026-10-23T01:50:44.3877932Z 346 ? Effect.succeed(Option.some(folderFor(id.slice(-8)))) 2026-10-23T01:50:44.3877983Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3877989Z 2026-10-23T01:50:44.3878260Z src/project/ManagedProjectFolders.ts:348:15 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3878264Z 2026-10-23T01:50:44.3878343Z 348 ? Effect.succeed(Option.some(fullFolder)) 2026-10-23T01:50:44.3878395Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3878397Z 2026-10-23T01:50:44.3878766Z src/project/ProjectCloneTracker.ts:432:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProjectCloneTracker.start")((input, hooks) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3878770Z 2026-10-23T01:50:44.3878859Z 432 start: (input, hooks) => locked(start(input, hooks)), 2026-10-23T01:50:44.3878909Z ~~~~~ 2026-10-23T01:50:44.3878912Z 2026-10-23T01:50:44.3879273Z src/project/ProjectCloneTracker.ts:433:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProjectCloneTracker.cancel")((projectId) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3879276Z 2026-10-23T01:50:44.3879360Z 433 cancel: (projectId) => locked(cancel(projectId)), 2026-10-23T01:50:44.3879462Z ~~~~~~ 2026-10-23T01:50:44.3879465Z 2026-10-23T01:50:44.3879848Z src/project/ProjectCloneTracker.ts:434:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProjectCloneTracker.retry")((projectId) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3879857Z 2026-10-23T01:50:44.3879940Z 434 retry: (projectId) => locked(retry(projectId)), 2026-10-23T01:50:44.3879988Z ~~~~~ 2026-10-23T01:50:44.3879991Z 2026-10-23T01:50:44.3880351Z src/project/ProjectCloneTracker.ts:435:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProjectCloneTracker.discard")((projectId) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3880353Z 2026-10-23T01:50:44.3880439Z 435 discard: (projectId) => locked(discard(projectId)), 2026-10-23T01:50:44.3880485Z ~~~~~~~ 2026-10-23T01:50:44.3880488Z 2026-10-23T01:50:44.3880870Z 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-23T01:50:44.3880873Z 2026-10-23T01:50:44.3880990Z 21 get: (key) => Effect.sync(() => Option.fromUndefinedOr(bytes.get(key))), 2026-10-23T01:50:44.3881040Z ~~~ 2026-10-23T01:50:44.3881043Z 2026-10-23T01:50:44.3881434Z 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-23T01:50:44.3881436Z 2026-10-23T01:50:44.3881491Z 22 set: (key, value) => 2026-10-23T01:50:44.3881540Z ~~~ 2026-10-23T01:50:44.3881542Z 2026-10-23T01:50:44.3881929Z 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-23T01:50:44.3881932Z 2026-10-23T01:50:44.3881989Z 26 remove: (key) => 2026-10-23T01:50:44.3882036Z ~~~~~~ 2026-10-23T01:50:44.3882042Z 2026-10-23T01:50:44.3882417Z 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-23T01:50:44.3882472Z 2026-10-23T01:50:44.3882587Z 30 create: () => Effect.die("Handoff does not create persistent secrets."), 2026-10-23T01:50:44.3882636Z ~~~~~~ 2026-10-23T01:50:44.3882638Z 2026-10-23T01:50:44.3883048Z 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-23T01:50:44.3883051Z 2026-10-23T01:50:44.3883204Z 31 getOrCreateRandom: () => Effect.die("Handoff uses the destination environment identity."), 2026-10-23T01:50:44.3883258Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3883260Z 2026-10-23T01:50:44.3883744Z 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-23T01:50:44.3883748Z 2026-10-23T01:50:44.3883875Z 205 return yield* Schema.decodeUnknownEffect(Schema.fromJsonString(schema))( 2026-10-23T01:50:44.3883937Z ~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3883940Z 2026-10-23T01:50:44.3884253Z src/provider/CodexProvider.ts:569:11 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-23T01:50:44.3884255Z 2026-10-23T01:50:44.3884365Z 569 ? Effect.succeed(undefined) 2026-10-23T01:50:44.3884422Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3884425Z 2026-10-23T01:50:44.3884794Z src/provider/ModelManifest.ts:284:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ModelCatalog.ModelCatalog.current")((driverKind) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3884799Z 2026-10-23T01:50:44.3884863Z 284 current: (driverKind) => 2026-10-23T01:50:44.3884908Z ~~~~~~~ 2026-10-23T01:50:44.3884915Z 2026-10-23T01:50:44.3885332Z 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-23T01:50:44.3885335Z 2026-10-23T01:50:44.3885406Z 284 return yield* Effect.fail( 2026-10-23T01:50:44.3885462Z ~~~~~ 2026-10-23T01:50:44.3885465Z 2026-10-23T01:50:44.3885845Z src/provider/ProviderAuthService.ts:211:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("ProviderAuthService.importProfile")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3885849Z 2026-10-23T01:50:44.3885915Z 211 importProfile: (input) => 2026-10-23T01:50:44.3885965Z ~~~~~~~~~~~~~ 2026-10-23T01:50:44.3885967Z 2026-10-23T01:50:44.3886370Z 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-23T01:50:44.3886373Z 2026-10-23T01:50:44.3886447Z 39 credentials: (namespace, bindingId) => 2026-10-23T01:50:44.3886495Z ~~~~~~~~~~~ 2026-10-23T01:50:44.3886498Z 2026-10-23T01:50:44.3886927Z src/pullRequest/PullRequestService.ts:2773:7 - suggestion TS377116: `Effect.catchCauseIf` expresses selective recovery more directly than `Effect.catchCause` with a conditional `Effect.failCause` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-23T01:50:44.3886934Z 2026-10-23T01:50:44.3886993Z 2773 Effect.catchCause((cause) => 2026-10-23T01:50:44.3887100Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3887103Z 2026-10-23T01:50:44.3887528Z src/pullRequest/PullRequestService.ts:3176:7 - suggestion TS377116: `Effect.catchCauseIf` expresses selective recovery more directly than `Effect.catchCause` with a conditional `Effect.failCause` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-23T01:50:44.3887531Z 2026-10-23T01:50:44.3887593Z 3176 Effect.catchCause((cause) => 2026-10-23T01:50:44.3887642Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3887645Z 2026-10-23T01:50:44.3888021Z src/pullRequest/PullRequestService.ts:3395:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("PullRequestService.listStats")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3888023Z 2026-10-23T01:50:44.3888082Z 3395 listStats: (input) => 2026-10-23T01:50:44.3888131Z ~~~~~~~~~ 2026-10-23T01:50:44.3888133Z 2026-10-23T01:50:44.3888413Z src/relay/AgentAwarenessRelay.test.ts:270:9 - suggestion TS377117: `Effect.succeedSome` expresses this Option success value directly. effect(preferSucceedSomeOrNone) 2026-10-23T01:50:44.3888418Z 2026-10-23T01:50:44.3888472Z 270 Effect.succeed( 2026-10-23T01:50:44.3888527Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3888529Z 2026-10-23T01:50:44.3888891Z src/relay/AgentAwarenessRelay.ts:822:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AgentAwarenessRelay.requestCatchUp")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3888894Z 2026-10-23T01:50:44.3889036Z 822 requestCatchUp: () => Queue.offer(catchUpRequests, undefined).pipe(Effect.asVoid), 2026-10-23T01:50:44.3889137Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3889140Z 2026-10-23T01:50:44.3889581Z src/resourceTelemetry/DesktopTelemetryReceiver.ts:641:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopTelemetryReceiver.requestDesktopUpdate")((requestId) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3889585Z 2026-10-23T01:50:44.3889657Z 641 requestDesktopUpdate: (requestId) => 2026-10-23T01:50:44.3889711Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3889713Z 2026-10-23T01:50:44.3890202Z src/resourceTelemetry/DesktopTelemetryReceiver.ts:647:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopTelemetryReceiver.commitDesktopUpdate")((requestId) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3890205Z 2026-10-23T01:50:44.3890274Z 647 commitDesktopUpdate: (requestId) => 2026-10-23T01:50:44.3890327Z ~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3890329Z 2026-10-23T01:50:44.3890763Z src/resourceTelemetry/DesktopTelemetryReceiver.ts:649:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopTelemetryReceiver.cancelDesktopUpdate")((requestId) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3890768Z 2026-10-23T01:50:44.3890837Z 649 cancelDesktopUpdate: (requestId) => 2026-10-23T01:50:44.3890956Z ~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3890959Z 2026-10-23T01:50:44.3891385Z src/resourceTelemetry/DesktopTelemetryReceiver.ts:698:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopTelemetryReceiver.setDiagnosticsDemand")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3891388Z 2026-10-23T01:50:44.3891460Z 698 setDiagnosticsDemand: () => Effect.void, 2026-10-23T01:50:44.3891519Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3891521Z 2026-10-23T01:50:44.3891948Z src/resourceTelemetry/DesktopTelemetryReceiver.ts:699:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopTelemetryReceiver.requestDesktopUpdate")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3891951Z 2026-10-23T01:50:44.3892029Z 699 requestDesktopUpdate: () => Effect.void, 2026-10-23T01:50:44.3892149Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3892155Z 2026-10-23T01:50:44.3892572Z src/resourceTelemetry/DesktopTelemetryReceiver.ts:700:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopTelemetryReceiver.commitDesktopUpdate")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3892575Z 2026-10-23T01:50:44.3892652Z 700 commitDesktopUpdate: () => Effect.void, 2026-10-23T01:50:44.3892711Z ~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3892714Z 2026-10-23T01:50:44.3893141Z src/resourceTelemetry/DesktopTelemetryReceiver.ts:701:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("DesktopTelemetryReceiver.cancelDesktopUpdate")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3893144Z 2026-10-23T01:50:44.3893217Z 701 cancelDesktopUpdate: () => Effect.void, 2026-10-23T01:50:44.3893268Z ~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3893273Z 2026-10-23T01:50:44.3893664Z 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-23T01:50:44.3893666Z 2026-10-23T01:50:44.3893723Z 1091 readHistory: () => 2026-10-23T01:50:44.3893779Z ~~~~~~~~~~~ 2026-10-23T01:50:44.3893782Z 2026-10-23T01:50:44.3894188Z 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-23T01:50:44.3894256Z 2026-10-23T01:50:44.3894329Z 1097 setExternalProcesses: () => Effect.void, 2026-10-23T01:50:44.3894386Z ~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3894388Z 2026-10-23T01:50:44.3894795Z 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-23T01:50:44.3894799Z 2026-10-23T01:50:44.3894869Z 1098 setHostPowerState: () => Effect.void, 2026-10-23T01:50:44.3894918Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3894921Z 2026-10-23T01:50:44.3895272Z src/scheduledTasks/ScheduledTaskService.ts:1132:31 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-23T01:50:44.3895275Z 2026-10-23T01:50:44.3895355Z 1132 ? Effect.succeed(undefined) 2026-10-23T01:50:44.3895428Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3895431Z 2026-10-23T01:50:44.3895755Z 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-23T01:50:44.3895760Z 2026-10-23T01:50:44.3895825Z 166 const results = yield* Effect.all( 2026-10-23T01:50:44.3895884Z ~~~~~~~~~~ 2026-10-23T01:50:44.3895886Z 2026-10-23T01:50:44.3896300Z src/server.ts:480: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-23T01:50:44.3896303Z 2026-10-23T01:50:44.3896367Z 480 return Effect.gen(function* () { 2026-10-23T01:50:44.3896416Z ~~~~~~ 2026-10-23T01:50:44.3896419Z 2026-10-23T01:50:44.3896734Z 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-23T01:50:44.3896737Z 2026-10-23T01:50:44.3896816Z 209 prepareTrial: Effect.succeed(undefined), 2026-10-23T01:50:44.3896941Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3896944Z 2026-10-23T01:50:44.3897249Z 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-23T01:50:44.3897252Z 2026-10-23T01:50:44.3897320Z 413 const results = yield* Effect.all( 2026-10-23T01:50:44.3897374Z ~~~~~~~~~~ 2026-10-23T01:50:44.3897377Z 2026-10-23T01:50:44.3897864Z src/sourceControl/SourceControlProviderRegistry.ts:204:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.listChangeRequests")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3897868Z 2026-10-23T01:50:44.3897933Z 204 listChangeRequests: (input) => 2026-10-23T01:50:44.3897986Z ~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3897990Z 2026-10-23T01:50:44.3898460Z src/sourceControl/SourceControlProviderRegistry.ts:209:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3898463Z 2026-10-23T01:50:44.3898523Z 209 getChangeRequest: (input) => 2026-10-23T01:50:44.3898575Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3898578Z 2026-10-23T01:50:44.3899122Z src/sourceControl/SourceControlProviderRegistry.ts:214:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.createChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3899125Z 2026-10-23T01:50:44.3899190Z 214 createChangeRequest: (input) => 2026-10-23T01:50:44.3899242Z ~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3899248Z 2026-10-23T01:50:44.3899727Z src/sourceControl/SourceControlProviderRegistry.ts:219:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getRepositoryCloneUrls")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3899731Z 2026-10-23T01:50:44.3899816Z 219 getRepositoryCloneUrls: (input) => 2026-10-23T01:50:44.3899873Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3899875Z 2026-10-23T01:50:44.3900372Z src/sourceControl/SourceControlProviderRegistry.ts:224:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.createRepository")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3900375Z 2026-10-23T01:50:44.3900496Z 224 createRepository: (input) => provider.createRepository(input), 2026-10-23T01:50:44.3900545Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3900547Z 2026-10-23T01:50:44.3901017Z src/sourceControl/SourceControlProviderRegistry.ts:225:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.getDefaultBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3901021Z 2026-10-23T01:50:44.3901087Z 225 getDefaultBranch: (input) => 2026-10-23T01:50:44.3901140Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3901142Z 2026-10-23T01:50:44.3901622Z src/sourceControl/SourceControlProviderRegistry.ts:230:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProvider.SourceControlProvider.checkoutChangeRequest")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3901626Z 2026-10-23T01:50:44.3901691Z 230 checkoutChangeRequest: (input) => 2026-10-23T01:50:44.3901744Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3901746Z 2026-10-23T01:50:44.3902162Z src/sourceControl/SourceControlProviderRegistry.ts:345:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlProviderRegistry.resolve")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3902220Z 2026-10-23T01:50:44.3902374Z 345 resolve: (input) => resolveHandle(input).pipe(Effect.map((handle) => handle.provider)), 2026-10-23T01:50:44.3902422Z ~~~~~~~ 2026-10-23T01:50:44.3902425Z 2026-10-23T01:50:44.3902852Z src/sourceControl/SourceControlRepositoryService.ts:405:7 - suggestion TS377116: `Effect.catchIf` expresses selective recovery more directly than `Effect.catch` with a conditional `Effect.fail` passthrough. effect(catchConditionalRefailToCatchIf) 2026-10-23T01:50:44.3902855Z 2026-10-23T01:50:44.3902917Z 405 Effect.catch((sshError) => 2026-10-23T01:50:44.3902968Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3902971Z 2026-10-23T01:50:44.3903424Z src/sourceControl/SourceControlRepositoryService.ts:552:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlRepositoryService.lookupRepository")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3903428Z 2026-10-23T01:50:44.3903494Z 552 lookupRepository: (input) => 2026-10-23T01:50:44.3903547Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3903549Z 2026-10-23T01:50:44.3903987Z src/sourceControl/SourceControlRepositoryService.ts:554:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlRepositoryService.prepareClone")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3903990Z 2026-10-23T01:50:44.3904049Z 554 prepareClone: (input) => 2026-10-23T01:50:44.3904099Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3904102Z 2026-10-23T01:50:44.3904598Z src/sourceControl/SourceControlRepositoryService.ts:561:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlRepositoryService.cloneRepository")((input, options) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3904609Z 2026-10-23T01:50:44.3904676Z 561 cloneRepository: (input, options) => 2026-10-23T01:50:44.3904729Z ~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3904731Z 2026-10-23T01:50:44.3905178Z src/sourceControl/SourceControlRepositoryService.ts:568:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlRepositoryService.discardClone")((destinationPath) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3905180Z 2026-10-23T01:50:44.3905246Z 568 discardClone: (destinationPath) => 2026-10-23T01:50:44.3905292Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3905295Z 2026-10-23T01:50:44.3905737Z src/sourceControl/SourceControlRepositoryService.ts:572:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("SourceControlRepositoryService.publishRepository")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3905740Z 2026-10-23T01:50:44.3905808Z 572 publishRepository: (input) => 2026-10-23T01:50:44.3905863Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3905866Z 2026-10-23T01:50:44.3906244Z src/storageCleanup.ts:706: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-23T01:50:44.3906247Z 2026-10-23T01:50:44.3906302Z 706 return yield* Effect.fail( 2026-10-23T01:50:44.3906353Z ~~~~~ 2026-10-23T01:50:44.3906355Z 2026-10-23T01:50:44.3906695Z src/telemetry/AnalyticsService.ts:113:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AnalyticsService.record")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3906697Z 2026-10-23T01:50:44.3906756Z 113 record: () => Effect.void, 2026-10-23T01:50:44.3906810Z ~~~~~~ 2026-10-23T01:50:44.3906813Z 2026-10-23T01:50:44.3907159Z src/telemetry/AnalyticsService.ts:115:7 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("AnalyticsService.recordOwners")(() => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3907216Z 2026-10-23T01:50:44.3907283Z 115 recordOwners: () => Effect.void, 2026-10-23T01:50:44.3907331Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3907334Z 2026-10-23T01:50:44.3907691Z src/telemetry/AnalyticsService.ts:329:62 - suggestion TS377132: `Effect.andThen` expresses this sequencing more directly than `Effect.flatMap` with a zero-parameter callback. effect(flatMapIgnoredParamToAndThen) 2026-10-23T01:50:44.3907694Z 2026-10-23T01:50:44.3907864Z 329 yield* Effect.forever(Effect.sleep(FLUSH_INTERVAL_MS).pipe(Effect.flatMap(() => flushWhenDue)), { 2026-10-23T01:50:44.3907942Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3907945Z 2026-10-23T01:50:44.3908273Z src/textGeneration/CodexTextGeneration.ts:90:13 - suggestion TS377099: `Effect.ignore` expresses ignored failure more directly than `Effect.catch` returning `Effect.void`. effect(catchToIgnore) 2026-10-23T01:50:44.3908277Z 2026-10-23T01:50:44.3908348Z 90 .pipe(Effect.catch(() => Effect.void)); 2026-10-23T01:50:44.3908400Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3908403Z 2026-10-23T01:50:44.3908785Z 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-23T01:50:44.3908788Z 2026-10-23T01:50:44.3908850Z 60 generateCommitMessage: (input) => 2026-10-23T01:50:44.3908907Z ~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3908955Z 2026-10-23T01:50:44.3909324Z 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-23T01:50:44.3909328Z 2026-10-23T01:50:44.3909395Z 64 generatePrContent: (input) => 2026-10-23T01:50:44.3909443Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3909450Z 2026-10-23T01:50:44.3909854Z 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-23T01:50:44.3909856Z 2026-10-23T01:50:44.3909925Z 68 generateBranchName: (input) => 2026-10-23T01:50:44.3909978Z ~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3909980Z 2026-10-23T01:50:44.3910355Z 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-23T01:50:44.3910358Z 2026-10-23T01:50:44.3910419Z 72 generateReviewGuide: (input) => 2026-10-23T01:50:44.3910476Z ~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3910481Z 2026-10-23T01:50:44.3910854Z 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-23T01:50:44.3910857Z 2026-10-23T01:50:44.3910921Z 76 generateThreadTitle: (input) => 2026-10-23T01:50:44.3910974Z ~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3910976Z 2026-10-23T01:50:44.3911309Z src/usage/UsageService.ts:172:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("UsageService.readSummary")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3911314Z 2026-10-23T01:50:44.3911375Z 172 readSummary: (input) => 2026-10-23T01:50:44.3911426Z ~~~~~~~~~~~ 2026-10-23T01:50:44.3911429Z 2026-10-23T01:50:44.3911715Z src/usage/UsageService.ts:642:9 - suggestion TS377015: This expression contains chained `pipe` calls that can be simplified to a single `pipe` call. effect(unnecessaryPipeChain) 2026-10-23T01:50:44.3911767Z 2026-10-23T01:50:44.3911834Z 642 usageInstances(driver, settings) 2026-10-23T01:50:44.3911891Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3911949Z 643 .pipe( 2026-10-23T01:50:44.3912003Z ~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3912057Z ... 2026-10-23T01:50:44.3912135Z 664 Effect.provideContext(readerContext), 2026-10-23T01:50:44.3912203Z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3912253Z 665 ), 2026-10-23T01:50:44.3912298Z ~~~~~~~~~~~ 2026-10-23T01:50:44.3912301Z 2026-10-23T01:50:44.3912706Z src/vcs/GitVcsDriverCore.ts:4005:9 - suggestion TS377120: `Effect.filterOrElse` expresses this conditional validation more directly than `Effect.flatMap` with an identity `Effect.succeed` branch. effect(flatMapConditionalToFilterOrFail) 2026-10-23T01:50:44.3912709Z 2026-10-23T01:50:44.3912771Z 4005 Effect.flatMap((result) => 2026-10-23T01:50:44.3912826Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3912828Z 2026-10-23T01:50:44.3913216Z src/vcs/GitVcsDriverCore.ts:4496: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-23T01:50:44.3913219Z 2026-10-23T01:50:44.3913292Z 4496 commit: (cwd, subject, body, options) => 2026-10-23T01:50:44.3913342Z ~~~~~~ 2026-10-23T01:50:44.3913345Z 2026-10-23T01:50:44.3913823Z src/vcs/GitVcsDriverCore.ts:4498: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-23T01:50:44.3913826Z 2026-10-23T01:50:44.3913927Z 4498 pushCurrentBranch: (cwd, fallbackBranch, options) => 2026-10-23T01:50:44.3913983Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3913985Z 2026-10-23T01:50:44.3914361Z src/vcs/GitVcsDriverCore.ts:4500:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.pullCurrentBranch")((cwd) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3914366Z 2026-10-23T01:50:44.3914511Z 4500 pullCurrentBranch: (cwd) => withListRefsInvalidation(cwd, pullCurrentBranch(cwd)), 2026-10-23T01:50:44.3914563Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3914566Z 2026-10-23T01:50:44.3914953Z src/vcs/GitVcsDriverCore.ts:4507:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.createWorktree")((input, options) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3914957Z 2026-10-23T01:50:44.3915025Z 4507 createWorktree: (input, options) => 2026-10-23T01:50:44.3915074Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3915076Z 2026-10-23T01:50:44.3915469Z src/vcs/GitVcsDriverCore.ts:4509:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.fetchPullRequestBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3915473Z 2026-10-23T01:50:44.3915543Z 4509 fetchPullRequestBranch: (input) => 2026-10-23T01:50:44.3915599Z ~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3915601Z 2026-10-23T01:50:44.3915998Z src/vcs/GitVcsDriverCore.ts:4513:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.refreshCheckedOutBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3916001Z 2026-10-23T01:50:44.3916067Z 4513 refreshCheckedOutBranch: (input) => 2026-10-23T01:50:44.3916124Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3916126Z 2026-10-23T01:50:44.3916499Z src/vcs/GitVcsDriverCore.ts:4515:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.ensureRemote")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3916562Z 2026-10-23T01:50:44.3916708Z 4515 ensureRemote: (input) => withListRefsInvalidation(input.cwd, ensureRemote(input)), 2026-10-23T01:50:44.3916763Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3916766Z 2026-10-23T01:50:44.3917139Z src/vcs/GitVcsDriverCore.ts:4518:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.fetchRemote")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3917142Z 2026-10-23T01:50:44.3917200Z 4518 fetchRemote: (input) => 2026-10-23T01:50:44.3917250Z ~~~~~~~~~~~ 2026-10-23T01:50:44.3917253Z 2026-10-23T01:50:44.3917656Z src/vcs/GitVcsDriverCore.ts:4533:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.fetchWorktreeBaseCommit")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3917659Z 2026-10-23T01:50:44.3917731Z 4533 fetchWorktreeBaseCommit: (input) => 2026-10-23T01:50:44.3917785Z ~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3917788Z 2026-10-23T01:50:44.3918172Z src/vcs/GitVcsDriverCore.ts:4535:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.fetchRemoteBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3918175Z 2026-10-23T01:50:44.3918342Z 4535 fetchRemoteBranch: (input) => withListRefsInvalidation(input.cwd, fetchRemoteBranch(input)), 2026-10-23T01:50:44.3918395Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3918397Z 2026-10-23T01:50:44.3918854Z src/vcs/GitVcsDriverCore.ts:4536:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.fetchRemoteTrackingBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3918857Z 2026-10-23T01:50:44.3918928Z 4536 fetchRemoteTrackingBranch: (input) => 2026-10-23T01:50:44.3918987Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3918990Z 2026-10-23T01:50:44.3919372Z src/vcs/GitVcsDriverCore.ts:4538:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.setBranchUpstream")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3919374Z 2026-10-23T01:50:44.3919539Z 4538 setBranchUpstream: (input) => withListRefsInvalidation(input.cwd, setBranchUpstream(input)), 2026-10-23T01:50:44.3919594Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3919597Z 2026-10-23T01:50:44.3920010Z src/vcs/GitVcsDriverCore.ts:4539:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.removeWorktree")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3920013Z 2026-10-23T01:50:44.3920169Z 4539 removeWorktree: (input) => withListRefsInvalidation(input.cwd, removeWorktree(input)), 2026-10-23T01:50:44.3920221Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3920224Z 2026-10-23T01:50:44.3920601Z src/vcs/GitVcsDriverCore.ts:4540:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.pruneWorktrees")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3920604Z 2026-10-23T01:50:44.3920755Z 4540 pruneWorktrees: (input) => withListRefsInvalidation(input.cwd, pruneWorktrees(input)), 2026-10-23T01:50:44.3920803Z ~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3920806Z 2026-10-23T01:50:44.3921188Z src/vcs/GitVcsDriverCore.ts:4541:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.deleteLocalBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3921190Z 2026-10-23T01:50:44.3921353Z 4541 deleteLocalBranch: (input) => withListRefsInvalidation(input.cwd, deleteLocalBranch(input)), 2026-10-23T01:50:44.3921404Z ~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3921473Z 2026-10-23T01:50:44.3921843Z src/vcs/GitVcsDriverCore.ts:4542:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.renameBranch")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3921845Z 2026-10-23T01:50:44.3921984Z 4542 renameBranch: (input) => withListRefsInvalidation(input.cwd, renameBranch(input)), 2026-10-23T01:50:44.3922035Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3922037Z 2026-10-23T01:50:44.3922407Z src/vcs/GitVcsDriverCore.ts:4543:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.createRef")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3922410Z 2026-10-23T01:50:44.3922540Z 4543 createRef: (input) => withListRefsInvalidation(input.cwd, createRef(input)), 2026-10-23T01:50:44.3922590Z ~~~~~~~~~ 2026-10-23T01:50:44.3922593Z 2026-10-23T01:50:44.3922960Z src/vcs/GitVcsDriverCore.ts:4544:5 - suggestion TS377047: This expression can be rewritten in the reusable function form `Effect.fn("GitVcsDriver.GitVcsDriver.switchRef")((input) => { ... })`. effect(effectFnOpportunity) 2026-10-23T01:50:44.3922963Z 2026-10-23T01:50:44.3923096Z 4544 switchRef: (input) => withListRefsInvalidation(input.cwd, switchRef(input)), 2026-10-23T01:50:44.3923146Z ~~~~~~~~~ 2026-10-23T01:50:44.3923150Z 2026-10-23T01:50:44.3923660Z 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-23T01:50:44.3923663Z 2026-10-23T01:50:44.3923747Z 153 return serverSettings.getSettings.pipe( 2026-10-23T01:50:44.3923794Z ~~~~~~ 2026-10-23T01:50:44.3923797Z 2026-10-23T01:50:44.3924159Z src/workspace/WorkspaceFileSystem.ts:171:15 - suggestion TS377095: `Effect.orElseSucceed` expresses the same recovery more directly than `Effect.catch` followed by `Effect.succeed`. effect(catchToOrElseSucceed) 2026-10-23T01:50:44.3924164Z 2026-10-23T01:50:44.3924266Z 171 }).pipe(Effect.catch(() => Effect.succeed(undefined))); 2026-10-23T01:50:44.3924325Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3924327Z 2026-10-23T01:50:44.3924653Z src/workspace/WorkspaceFileSystem.ts:171:34 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-23T01:50:44.3924659Z 2026-10-23T01:50:44.3924750Z 171 }).pipe(Effect.catch(() => Effect.succeed(undefined))); 2026-10-23T01:50:44.3924832Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3924835Z 2026-10-23T01:50:44.3925117Z src/ws.test.ts:400:47 - suggestion TS377016: `Effect.void` represents the same outcome as `Effect.succeed(undefined)` or `Effect.succeed(void 0)`. effect(effectSucceedWithVoid) 2026-10-23T01:50:44.3925122Z 2026-10-23T01:50:44.3925241Z 400 resolveFileManagerRevealKind: () => Effect.succeed(undefined), 2026-10-23T01:50:44.3925316Z ~~~~~~~~~~~~~~~~~~~~~~~~~ 2026-10-23T01:50:44.3925322Z 2026-10-23T01:50:44.3925653Z src/ws.ts:1389: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-23T01:50:44.3925656Z 2026-10-23T01:50:44.3925736Z 1389 return yield* Option.match(project, { 2026-10-23T01:50:44.3925799Z ~~~~~~~~~~~~ 2026-10-23T01:50:44.3925802Z 2026-10-23T01:50:44.3926166Z src/ws.ts:2324: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-23T01:50:44.3926169Z 2026-10-23T01:50:44.3926293Z 2324 return yield* Effect.fail( 2026-10-23T01:50:44.3926354Z ~~~~~ 2026-10-23T01:50:44.3926357Z 2026-10-23T01:50:44.3926707Z src/ws.ts:2333: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-23T01:50:44.3926710Z 2026-10-23T01:50:44.3926778Z 2333 return yield* Effect.fail( 2026-10-23T01:50:44.3926834Z ~~~~~ 2026-10-23T01:50:44.3926837Z 2026-10-23T01:50:44.3927184Z src/ws.ts:2341: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-23T01:50:44.3927189Z 2026-10-23T01:50:44.3927253Z 2341 return yield* Effect.fail( 2026-10-23T01:50:44.3927306Z ~~~~~ 2026-10-23T01:50:44.3927311Z 2026-10-23T01:50:44.3927313Z 2026-10-23T01:50:44.3927362Z --- 2026-10-23T01:50:44.3927695Z vp run: 0/32 cache hit (0%), 32/32 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-23T01:50:44.4468817Z Post job cleanup. 2026-10-23T01:50:44.5119916Z Cache hit occurred on the primary key electron-Linux-X64-854e11ddd491bd4f350eebb67a74265df119376a3984c8e153cfe5fc8ced6309, not saving cache. 2026-10-23T01:50:44.5185691Z Post job cleanup. 2026-10-23T01:50:44.5198751Z ##[start-action display=Cache full pnpm store;id=__406c4ed3-3c16-45b7-80fe-d319b02f00a6.__actions_cache] 2026-10-23T01:50:44.5510957Z Post job cleanup. 2026-10-23T01:50:44.6185797Z Cache hit occurred on the primary key pnpm-full-v1-Linux-X64-00e587c1edf31fe669c96bc4768c0e07a969fff8e8228235fb75ec6c0abf4161, not saving cache. 2026-10-23T01:50:44.6227841Z ##[end-action id=__406c4ed3-3c16-45b7-80fe-d319b02f00a6.__actions_cache;outcome=success;conclusion=success;duration_ms=102] 2026-10-23T01:50:44.6229503Z ##[start-action display=Cache Vite+;id=__406c4ed3-3c16-45b7-80fe-d319b02f00a6.vp_cache] 2026-10-23T01:50:44.6249189Z Post job cleanup. 2026-10-23T01:50:44.6877749Z 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-23T01:50:44.6907590Z ##[end-action id=__406c4ed3-3c16-45b7-80fe-d319b02f00a6.vp_cache;outcome=success;conclusion=success;duration_ms=67] 2026-10-23T01:50:44.6944979Z Post job cleanup. 2026-10-23T01:50:44.7348540Z [command]/usr/local/bin/git version 2026-10-23T01:50:44.7375495Z git version 2.55.0 2026-10-23T01:50:44.7392780Z Temporarily overriding HOME='/home/runner/_work/_temp/8c1b85f8-f975-4844-adff-cc826df4598b' before making global git config changes 2026-10-23T01:50:44.7393160Z Adding repository directory to the temporary git global config as a safe directory 2026-10-23T01:50:44.7395611Z [command]/usr/local/bin/git config --global --add safe.directory /home/runner/_work/t3code/t3code 2026-10-23T01:50:44.7417211Z Removing SSH command configuration 2026-10-23T01:50:44.7420179Z [command]/usr/local/bin/git config --local --name-only --get-regexp core\.sshCommand 2026-10-23T01:50:44.7442503Z [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-23T01:50:44.7561185Z fatal: No url found for submodule path '.repos/alchemy-effect/submodules/distilled' in .gitmodules 2026-10-23T01:50:44.7582927Z ##[warning]The process '/usr/local/bin/git' failed with exit code 128 2026-10-23T01:50:44.7619209Z A job completed hook has been configured by the self-hosted runner administrator 2026-10-23T01:50:44.7643723Z ##[group]Run '/job_completed.sh' 2026-10-23T01:50:44.7656601Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2026-10-23T01:50:44.7656778Z env: 2026-10-23T01:50:44.7656901Z BLACKSMITH_RUNNER_MESSAGE_WAIT_MS: 172 2026-10-23T01:50:44.7657179Z BLACKSMITH_RUNNER_ACQUIRE_JOB_MS: 465 2026-10-23T01:50:44.7657327Z BLACKSMITH_CHECK_RUN_ID: 120194868845 2026-10-23T01:50:44.7657488Z BLACKSMITH_JOB_DISPLAY_NAME: Build and Typecheck 2026-10-23T01:50:44.7657657Z GITHUB_ACTIONS_CACHE_MODE: write 2026-10-23T01:50:44.7657794Z ##[endgroup] 2026-10-23T01:50:44.7735378Z Docker container cache not activated, skipping hash computation. 2026-10-23T01:50:44.7947890Z No active SSH sessions detected. Proceeding with shutdown immediately. 2026-10-23T01:50:44.7989527Z Cleaning up orphan processes