sparkyfitness-server-1.7.3
checks.x86_64-linux.nixos-malt
· build #487
· raw
unpackPhase
1unpacking source archive /nix/store/mki2wwbvl80fnfpjp3khsz1cm4idwr4g-source2source root is sourceconfigurePhase
3no configure script, doing nothing4Executing pnpmConfigHook5~ /build/source6/build/source7Found 'pnpm' with version '10.34.5'8Using fetcherVersion: 39Configuring pnpm store10Installing dependencies11Final pnpm config:12@jsr:registry=https://npm.jsr.io/13arch=x6414globalconfig=/build/.home/.config/pnpm/rc15inject-workspace-packages=true16manage-package-manager-versions=false17minimum-release-age=432018minimum-release-age-exclude[]=assistant-cloud19minimum-release-age-exclude[]=@assistant-ui/*20minimum-release-age-exclude[]=expo21minimum-release-age-exclude[]=expo-*22minimum-release-age-exclude[]=@expo/*23minimum-release-age-exclude[]=babel-preset-expo24npm-globalconfig=/nix/store/z5piarlh57mjwr4c9w318ay97sxr6c9m-nodejs-slim-24.20.0/etc/npmrc25only-built-dependencies[]=@scarf/scarf26only-built-dependencies[]=@shopify/react-native-skia27only-built-dependencies[]=@swc/core28only-built-dependencies[]=@parcel/watcher29only-built-dependencies[]=bcrypt30only-built-dependencies[]=sharp31only-built-dependencies[]=esbuild32only-built-dependencies[]=unrs-resolver33only-built-dependencies[]=vue-demi34package-import-method=clone-or-copy35packages[]=frontend36packages[]=SparkyFitnessFrontend37packages[]=shared38packages[]=SparkyFitnessMobile39packages[]=SparkyFitnessServer40packages[]=docs41platform=linux42registry=https://registry.npmjs.org/43reporter=append-only44store-dir=/build/tmp.iYJFjpkDqd45user-agent=pnpm/10.34.5 npm/? node/v24.20.0 linux x644647[overrides]48@babel/core=7.29.049@expo/dom-webview=57.0.150assistant-cloud=0.2.051eslint-plugin-react-hooks=7.0.152react=19.2.353react-dom=19.2.354side-channel=1.0.655tailwindcss=4.3.356tsx>esbuild=0.28.157vite>esbuild=0.28.158zustand=5.0.155960[package-extensions.@kingstinct/react-native-healthkit@13.dependencies]61@expo/config-plugins=^57.0.06263[package-extensions.react-native-worklets.dependencies]64@babel/generator=*6566[package-extensions.uniwind.dependencies]67metro=*68metro-cache=*6970[patched-dependencies]71@bacons/apple-targets@4.0.6=/build/source/patches/@bacons__apple-targets@4.0.6.patch72react-native-health-connect@4.1.3=/build/source/patches/react-native-health-connect@4.1.3.patch7374[supported-architectures]75cpu[]=current76cpu[]=x6477cpu[]=arm6478os[]=current79os[]=linux8081Scope: 2 of 6 workspace projects82Lockfile is up to date, resolution step is skipped83Progress: resolved 1, reused 0, downloaded 0, added 084. | +1116 85Progress: resolved 1116, reused 1099, downloaded 0, added 23986Progress: resolved 1116, reused 1099, downloaded 0, added 82487Progress: resolved 1116, reused 1099, downloaded 0, added 110988Progress: resolved 1116, reused 1099, downloaded 0, added 1116, done89Done in 4.9s using pnpm v10.34.590Patching scripts91patching script interpreter paths in node_modules/husky node_modules/js-yaml node_modules/lint-staged node_modules/prettier node_modules/.bin node_modules/.modules.yaml node_modules/.pnpm node_modules/.pnpm-workspace-state-v1.json92node_modules/.bin/prettier: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"93node_modules/.bin/lint-staged: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"94node_modules/.bin/husky: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"95node_modules/.bin/js-yaml: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"96node_modules/.pnpm/better-auth@1.7.4_@opentelemetry+api@1.9.1_mongodb@7.1.0_pg@8.23.0_react-dom@19.2.3_rea_e9c92e7aa1369ccf0b30a651c6af54c3/node_modules/better-auth/node_modules/.bin/vitest: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"97node_modules/.pnpm/bson@7.3.2/node_modules/bson/etc/prepare.js: interpreter directive changed from "#! /usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"98node_modules/.pnpm/mongodb@7.1.0/node_modules/mongodb/etc/prepare.js: interpreter directive changed from "#! /usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"99node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/vitest.mjs: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"100node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/node_modules/.bin/vite: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"101node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/node_modules/.bin/why-is-node-running: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"102node_modules/.pnpm/vite@8.3.0_@types+node@25.9.6_esbuild@0.28.1_jiti@2.7.0_terser@5.51.2_tsx@4.23.13_yaml@2.9.0/node_modules/vite/bin/vite.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"103node_modules/.pnpm/vite@8.3.0_@types+node@25.9.6_esbuild@0.28.1_jiti@2.7.0_terser@5.51.2_tsx@4.23.13_yaml@2.9.0/node_modules/vite/node_modules/.bin/jiti: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"104node_modules/.pnpm/vite@8.3.0_@types+node@25.9.6_esbuild@0.28.1_jiti@2.7.0_terser@5.51.2_tsx@4.23.13_yaml@2.9.0/node_modules/vite/node_modules/.bin/esbuild: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"105node_modules/.pnpm/vite@8.3.0_@types+node@25.9.6_esbuild@0.28.1_jiti@2.7.0_terser@5.51.2_tsx@4.23.13_yaml@2.9.0/node_modules/vite/node_modules/.bin/terser: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"106node_modules/.pnpm/vite@8.3.0_@types+node@25.9.6_esbuild@0.28.1_jiti@2.7.0_terser@5.51.2_tsx@4.23.13_yaml@2.9.0/node_modules/vite/node_modules/.bin/rolldown: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"107node_modules/.pnpm/vite@8.3.0_@types+node@25.9.6_esbuild@0.28.1_jiti@2.7.0_terser@5.51.2_tsx@4.23.13_yaml@2.9.0/node_modules/vite/node_modules/.bin/tsx: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"108node_modules/.pnpm/vite@8.3.0_@types+node@25.9.6_esbuild@0.28.1_jiti@2.7.0_terser@5.51.2_tsx@4.23.13_yaml@2.9.0/node_modules/vite/node_modules/.bin/yaml: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"109node_modules/.pnpm/postcss@8.5.28/node_modules/postcss/node_modules/.bin/nanoid: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"110node_modules/.pnpm/nanoid@3.3.18/node_modules/nanoid/bin/nanoid.cjs: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"111node_modules/.pnpm/rolldown@1.2.8/node_modules/rolldown/bin/cli.mjs: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"112node_modules/.pnpm/esbuild@0.28.1/node_modules/esbuild/bin/esbuild: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"113node_modules/.pnpm/esbuild@0.28.1/node_modules/esbuild/node_modules/.bin/esbuild: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"114node_modules/.pnpm/jiti@2.7.0/node_modules/jiti/lib/jiti-cli.mjs: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"115node_modules/.pnpm/acorn@8.18.0/node_modules/acorn/bin/acorn: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"116node_modules/.pnpm/terser@5.51.2/node_modules/terser/bin/terser: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"117node_modules/.pnpm/terser@5.51.2/node_modules/terser/bin/uglifyjs: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"118node_modules/.pnpm/terser@5.51.2/node_modules/terser/node_modules/.bin/acorn: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"119node_modules/.pnpm/tsx@4.23.13/node_modules/tsx/dist/cli.mjs: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"120node_modules/.pnpm/tsx@4.23.13/node_modules/tsx/node_modules/.bin/esbuild: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"121node_modules/.pnpm/yaml@2.9.0/node_modules/yaml/bin.mjs: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"122node_modules/.pnpm/why-is-node-running@2.3.0/node_modules/why-is-node-running/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"123node_modules/.pnpm/@vitest+coverage-v8@5.0.0_vitest@5.0.0/node_modules/@vitest/coverage-v8/node_modules/.bin/vitest: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"124node_modules/.pnpm/magicast@0.5.4/node_modules/magicast/node_modules/.bin/parser: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"125node_modules/.pnpm/@babel+parser@7.29.8/node_modules/@babel/parser/bin/babel-parser.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"126node_modules/.pnpm/@vitest+mocker@5.0.0_vite@8.3.0_@types+node@25.9.6_esbuild@0.28.1_jiti@2.7.0_terser@5.51.2_tsx@4.23.13_yaml@2.9.0_/node_modules/@vitest/mocker/node_modules/.bin/vite: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"127node_modules/.pnpm/tough-cookie@5.1.2/node_modules/tough-cookie/node_modules/.bin/tldts: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"128node_modules/.pnpm/tldts@6.1.86/node_modules/tldts/bin/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"129node_modules/.pnpm/vue@3.5.30_typescript@6.0.3/node_modules/vue/node_modules/.bin/tsserver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"130node_modules/.pnpm/vue@3.5.30_typescript@6.0.3/node_modules/vue/node_modules/.bin/tsc: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"131node_modules/.pnpm/@vue+compiler-sfc@3.5.30/node_modules/@vue/compiler-sfc/node_modules/.bin/parser: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"132node_modules/.pnpm/@vue+compiler-core@3.5.30/node_modules/@vue/compiler-core/node_modules/.bin/parser: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"133node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/bin/tsc: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"134node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/bin/tsserver: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"135node_modules/.pnpm/expo-constants@57.0.19_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-nativ_51f2382afb91985c854d1907004cfcf5/node_modules/expo-constants/scripts/get-app-config-ios.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"136node_modules/.pnpm/expo-constants@57.0.19_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-nativ_51f2382afb91985c854d1907004cfcf5/node_modules/expo-constants/scripts/with-node.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"137node_modules/.pnpm/expo-constants@57.0.19_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-nativ_51f2382afb91985c854d1907004cfcf5/node_modules/expo-constants/node_modules/.bin/expo: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"138node_modules/.pnpm/expo-constants@57.0.19_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-nativ_51f2382afb91985c854d1907004cfcf5/node_modules/expo-constants/node_modules/.bin/react-native: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"139node_modules/.pnpm/expo-constants@57.0.19_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-nativ_51f2382afb91985c854d1907004cfcf5/node_modules/expo-constants/node_modules/.bin/fingerprint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"140node_modules/.pnpm/expo-constants@57.0.19_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-nativ_51f2382afb91985c854d1907004cfcf5/node_modules/expo-constants/node_modules/.bin/expo-modules-autolinking: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"141node_modules/.pnpm/@expo+cli@57.0.27_@expo+dom-webview@57.0.1_expo-constants@57.0.19_expo@57.0.25_react-na_4b16acdc0bdf1bdd112d6668e416f8a8/node_modules/@expo/cli/main.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"142node_modules/.pnpm/@expo+cli@57.0.27_@expo+dom-webview@57.0.1_expo-constants@57.0.19_expo@57.0.25_react-na_4b16acdc0bdf1bdd112d6668e416f8a8/node_modules/@expo/cli/node_modules/.bin/excpretty: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"143node_modules/.pnpm/@expo+cli@57.0.27_@expo+dom-webview@57.0.1_expo-constants@57.0.19_expo@57.0.25_react-na_4b16acdc0bdf1bdd112d6668e416f8a8/node_modules/@expo/cli/node_modules/.bin/expo: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"144node_modules/.pnpm/@expo+cli@57.0.27_@expo+dom-webview@57.0.1_expo-constants@57.0.19_expo@57.0.25_react-na_4b16acdc0bdf1bdd112d6668e416f8a8/node_modules/@expo/cli/node_modules/.bin/agent-cli-detector: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"145node_modules/.pnpm/@expo+cli@57.0.27_@expo+dom-webview@57.0.1_expo-constants@57.0.19_expo@57.0.25_react-na_4b16acdc0bdf1bdd112d6668e416f8a8/node_modules/@expo/cli/node_modules/.bin/fingerprint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"146node_modules/.pnpm/@expo+cli@57.0.27_@expo+dom-webview@57.0.1_expo-constants@57.0.19_expo@57.0.25_react-na_4b16acdc0bdf1bdd112d6668e416f8a8/node_modules/@expo/cli/node_modules/.bin/lan-network: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"147node_modules/.pnpm/@expo+cli@57.0.27_@expo+dom-webview@57.0.1_expo-constants@57.0.19_expo@57.0.25_react-na_4b16acdc0bdf1bdd112d6668e416f8a8/node_modules/@expo/cli/node_modules/.bin/sandbox-cli-detector: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"148node_modules/.pnpm/@expo+cli@57.0.27_@expo+dom-webview@57.0.1_expo-constants@57.0.19_expo@57.0.25_react-na_4b16acdc0bdf1bdd112d6668e416f8a8/node_modules/@expo/cli/node_modules/.bin/react-native: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"149node_modules/.pnpm/@expo+cli@57.0.27_@expo+dom-webview@57.0.1_expo-constants@57.0.19_expo@57.0.25_react-na_4b16acdc0bdf1bdd112d6668e416f8a8/node_modules/@expo/cli/node_modules/.bin/semver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"150node_modules/.pnpm/@expo+cli@57.0.27_@expo+dom-webview@57.0.1_expo-constants@57.0.19_expo@57.0.25_react-na_4b16acdc0bdf1bdd112d6668e416f8a8/node_modules/@expo/cli/node_modules/.bin/expo-modules-autolinking: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"151node_modules/.pnpm/@expo+config-plugins@57.0.9_typescript@6.0.3/node_modules/@expo/config-plugins/node_modules/.bin/semver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"152node_modules/.pnpm/expo@57.0.25_@babel+core@7.29.0_@expo+dom-webview@57.0.1_expo-widgets@57.0.21_react-dom_5e0ab52f2fb02efaba1aa9f3f0d2720e/node_modules/expo/bin/autolinking: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"153node_modules/.pnpm/expo@57.0.25_@babel+core@7.29.0_@expo+dom-webview@57.0.1_expo-widgets@57.0.21_react-dom_5e0ab52f2fb02efaba1aa9f3f0d2720e/node_modules/expo/bin/cli: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"154node_modules/.pnpm/expo@57.0.25_@babel+core@7.29.0_@expo+dom-webview@57.0.1_expo-widgets@57.0.21_react-dom_5e0ab52f2fb02efaba1aa9f3f0d2720e/node_modules/expo/bin/fingerprint: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"155node_modules/.pnpm/expo@57.0.25_@babel+core@7.29.0_@expo+dom-webview@57.0.1_expo-widgets@57.0.21_react-dom_5e0ab52f2fb02efaba1aa9f3f0d2720e/node_modules/expo/scripts/xcode/with-environment.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"156node_modules/.pnpm/expo@57.0.25_@babel+core@7.29.0_@expo+dom-webview@57.0.1_expo-widgets@57.0.21_react-dom_5e0ab52f2fb02efaba1aa9f3f0d2720e/node_modules/expo/scripts/compose-source-maps.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"157node_modules/.pnpm/expo@57.0.25_@babel+core@7.29.0_@expo+dom-webview@57.0.1_expo-widgets@57.0.21_react-dom_5e0ab52f2fb02efaba1aa9f3f0d2720e/node_modules/expo/scripts/node-binary.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"158node_modules/.pnpm/expo@57.0.25_@babel+core@7.29.0_@expo+dom-webview@57.0.1_expo-widgets@57.0.21_react-dom_5e0ab52f2fb02efaba1aa9f3f0d2720e/node_modules/expo/scripts/react-native-xcode.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"159node_modules/.pnpm/expo@57.0.25_@babel+core@7.29.0_@expo+dom-webview@57.0.1_expo-widgets@57.0.21_react-dom_5e0ab52f2fb02efaba1aa9f3f0d2720e/node_modules/expo/scripts/resolveAppEntry.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"160node_modules/.pnpm/expo@57.0.25_@babel+core@7.29.0_@expo+dom-webview@57.0.1_expo-widgets@57.0.21_react-dom_5e0ab52f2fb02efaba1aa9f3f0d2720e/node_modules/expo/node_modules/.bin/expo-modules-autolinking: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"161node_modules/.pnpm/expo@57.0.25_@babel+core@7.29.0_@expo+dom-webview@57.0.1_expo-widgets@57.0.21_react-dom_5e0ab52f2fb02efaba1aa9f3f0d2720e/node_modules/expo/node_modules/.bin/react-native: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"162node_modules/.pnpm/expo@57.0.25_@babel+core@7.29.0_@expo+dom-webview@57.0.1_expo-widgets@57.0.21_react-dom_5e0ab52f2fb02efaba1aa9f3f0d2720e/node_modules/expo/node_modules/.bin/expo-internal: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"163node_modules/.pnpm/expo@57.0.25_@babel+core@7.29.0_@expo+dom-webview@57.0.1_expo-widgets@57.0.21_react-dom_5e0ab52f2fb02efaba1aa9f3f0d2720e/node_modules/expo/node_modules/.bin/fingerprint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"164node_modules/.pnpm/@expo+config@57.0.9_typescript@6.0.3/node_modules/@expo/config/node_modules/.bin/semver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"165node_modules/.pnpm/@expo+json-file@11.0.1/node_modules/@expo/json-file/node_modules/.bin/json5: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"166node_modules/.pnpm/json5@2.2.3/node_modules/json5/lib/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"167node_modules/.pnpm/@expo+require-utils@57.0.5_typescript@6.0.3/node_modules/@expo/require-utils/node_modules/.bin/tsc: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"168node_modules/.pnpm/@expo+require-utils@57.0.5_typescript@6.0.3/node_modules/@expo/require-utils/node_modules/.bin/tsserver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"169node_modules/.pnpm/@babel+core@7.29.0/node_modules/@babel/core/node_modules/.bin/parser: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"170node_modules/.pnpm/@babel+core@7.29.0/node_modules/@babel/core/node_modules/.bin/json5: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"171node_modules/.pnpm/@babel+core@7.29.0/node_modules/@babel/core/node_modules/.bin/semver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"172node_modules/.pnpm/@babel+helper-compilation-targets@7.29.7/node_modules/@babel/helper-compilation-targets/node_modules/.bin/browserslist: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"173node_modules/.pnpm/@babel+helper-compilation-targets@7.29.7/node_modules/@babel/helper-compilation-targets/node_modules/.bin/semver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"174node_modules/.pnpm/@babel+generator@7.29.8/node_modules/@babel/generator/node_modules/.bin/jsesc: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"175node_modules/.pnpm/@babel+generator@7.29.8/node_modules/@babel/generator/node_modules/.bin/parser: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"176node_modules/.pnpm/jsesc@3.1.0/node_modules/jsesc/bin/jsesc: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"177node_modules/.pnpm/update-browserslist-db@1.3.2_browserslist@4.28.9/node_modules/update-browserslist-db/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"178node_modules/.pnpm/update-browserslist-db@1.3.2_browserslist@4.28.9/node_modules/update-browserslist-db/node_modules/.bin/browserslist: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"179node_modules/.pnpm/browserslist@4.28.9/node_modules/browserslist/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"180node_modules/.pnpm/browserslist@4.28.9/node_modules/browserslist/node_modules/.bin/baseline-browser-mapping: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"181node_modules/.pnpm/browserslist@4.28.9/node_modules/browserslist/node_modules/.bin/update-browserslist-db: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"182node_modules/.pnpm/baseline-browser-mapping@2.11.21/node_modules/baseline-browser-mapping/dist/cli.cjs: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"183node_modules/.pnpm/semver@6.3.1/node_modules/semver/bin/semver.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"184node_modules/.pnpm/@babel+template@7.29.7/node_modules/@babel/template/node_modules/.bin/parser: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"185node_modules/.pnpm/@babel+traverse@7.29.8/node_modules/@babel/traverse/node_modules/.bin/parser: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"186node_modules/.pnpm/xcode@3.0.1/node_modules/xcode/node_modules/.bin/uuid: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"187node_modules/.pnpm/uuid@7.0.3/node_modules/uuid/dist/bin/uuid: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"188node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/node_modules/.bin/node-which: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"189node_modules/.pnpm/which@2.0.2/node_modules/which/bin/node-which: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"190node_modules/.pnpm/@expo+image-utils@0.11.5_typescript@6.0.3/node_modules/@expo/image-utils/node_modules/.bin/semver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"191node_modules/.pnpm/@expo+log-box@57.0.4_@expo+dom-webview@57.0.1_expo@57.0.25_react-native@0.86.3_@babel+c_1ba95531e8eb6604a9563b6ea9a65f64/node_modules/@expo/log-box/node_modules/.bin/expo: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"192node_modules/.pnpm/@expo+log-box@57.0.4_@expo+dom-webview@57.0.1_expo@57.0.25_react-native@0.86.3_@babel+c_1ba95531e8eb6604a9563b6ea9a65f64/node_modules/@expo/log-box/node_modules/.bin/expo-modules-autolinking: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"193node_modules/.pnpm/@expo+log-box@57.0.4_@expo+dom-webview@57.0.1_expo@57.0.25_react-native@0.86.3_@babel+c_1ba95531e8eb6604a9563b6ea9a65f64/node_modules/@expo/log-box/node_modules/.bin/fingerprint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"194node_modules/.pnpm/@expo+log-box@57.0.4_@expo+dom-webview@57.0.1_expo@57.0.25_react-native@0.86.3_@babel+c_1ba95531e8eb6604a9563b6ea9a65f64/node_modules/@expo/log-box/node_modules/.bin/react-native: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"195node_modules/.pnpm/@expo+dom-webview@57.0.1_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-nat_301a0ae60e60be7f9d55a04f9dccec05/node_modules/@expo/dom-webview/node_modules/.bin/expo: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"196node_modules/.pnpm/@expo+dom-webview@57.0.1_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-nat_301a0ae60e60be7f9d55a04f9dccec05/node_modules/@expo/dom-webview/node_modules/.bin/expo-modules-autolinking: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"197node_modules/.pnpm/@expo+dom-webview@57.0.1_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-nat_301a0ae60e60be7f9d55a04f9dccec05/node_modules/@expo/dom-webview/node_modules/.bin/fingerprint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"198node_modules/.pnpm/@expo+dom-webview@57.0.1_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-nat_301a0ae60e60be7f9d55a04f9dccec05/node_modules/@expo/dom-webview/node_modules/.bin/react-native: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"199node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_95e0479207c4e7f5eb7f8c665178b2ad/node_modules/react-native/sdks/hermes-engine/utils/build-apple-framework.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"200node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_95e0479207c4e7f5eb7f8c665178b2ad/node_modules/react-native/sdks/hermes-engine/utils/build-hermes-xcode.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"201node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_95e0479207c4e7f5eb7f8c665178b2ad/node_modules/react-native/sdks/hermes-engine/utils/build-hermesc-xcode.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"202node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_95e0479207c4e7f5eb7f8c665178b2ad/node_modules/react-native/sdks/hermes-engine/utils/build-ios-framework.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"203node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_95e0479207c4e7f5eb7f8c665178b2ad/node_modules/react-native/sdks/hermes-engine/utils/build-mac-framework.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"204node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_95e0479207c4e7f5eb7f8c665178b2ad/node_modules/react-native/sdks/hermes-engine/utils/copy-hermes-xcode.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"205node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_95e0479207c4e7f5eb7f8c665178b2ad/node_modules/react-native/scripts/xcode/ccache-clang++.sh: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"206node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_95e0479207c4e7f5eb7f8c665178b2ad/node_modules/react-native/scripts/xcode/ccache-clang.sh: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"207node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_95e0479207c4e7f5eb7f8c665178b2ad/node_modules/react-native/scripts/xcode/with-environment.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"208node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_95e0479207c4e7f5eb7f8c665178b2ad/node_modules/react-native/scripts/react_native_pods_utils/script_phases.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"209node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_95e0479207c4e7f5eb7f8c665178b2ad/node_modules/react-native/scripts/compose-source-maps.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"210node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_95e0479207c4e7f5eb7f8c665178b2ad/node_modules/react-native/scripts/ios-configure-glog.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"211node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_95e0479207c4e7f5eb7f8c665178b2ad/node_modules/react-native/scripts/packager.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"212node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_95e0479207c4e7f5eb7f8c665178b2ad/node_modules/react-native/scripts/react-native-xcode.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"213node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_95e0479207c4e7f5eb7f8c665178b2ad/node_modules/react-native/ReactAndroid/src/main/java/com/facebook/react/views/scroll/generate-nested-scroll-view.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"214node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_95e0479207c4e7f5eb7f8c665178b2ad/node_modules/react-native/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"215node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_95e0479207c4e7f5eb7f8c665178b2ad/node_modules/react-native/node_modules/.bin/semver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"216node_modules/.pnpm/@react-native+codegen@0.86.3_@babel+core@7.29.0/node_modules/@react-native/codegen/node_modules/.bin/parser: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"217node_modules/.pnpm/invariant@2.2.4/node_modules/invariant/node_modules/.bin/loose-envify: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"218node_modules/.pnpm/loose-envify@1.4.0/node_modules/loose-envify/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"219node_modules/.pnpm/@react-native+community-cli-plugin@0.86.3_@react-native+metro-config@0.86.3_@babel+core@7.29.0_/node_modules/@react-native/community-cli-plugin/node_modules/.bin/semver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"220node_modules/.pnpm/@react-native+community-cli-plugin@0.86.3_@react-native+metro-config@0.86.3_@babel+core@7.29.0_/node_modules/@react-native/community-cli-plugin/node_modules/.bin/metro: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"221node_modules/.pnpm/@react-native+debugger-shell@0.86.3/node_modules/@react-native/debugger-shell/node_modules/.bin/dotslash: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"222node_modules/.pnpm/is-wsl@2.2.0/node_modules/is-wsl/node_modules/.bin/is-docker: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"223node_modules/.pnpm/@react-native+dev-middleware@0.86.3/node_modules/@react-native/dev-middleware/node_modules/.bin/print-chrome-path: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"224node_modules/.pnpm/fb-dotslash@0.5.8/node_modules/fb-dotslash/bin/dotslash: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"225node_modules/.pnpm/chrome-launcher@0.15.2/node_modules/chrome-launcher/bin/print-chrome-path.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"226node_modules/.pnpm/chrome-launcher@0.15.2/node_modules/chrome-launcher/scripts/download-chrome.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"227node_modules/.pnpm/chrome-launcher@0.15.2/node_modules/chrome-launcher/scripts/format.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"228node_modules/.pnpm/chrome-launcher@0.15.2/node_modules/chrome-launcher/manual-chrome-launcher.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"229node_modules/.pnpm/is-docker@2.2.1/node_modules/is-docker/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"230node_modules/.pnpm/mkdirp@1.0.4/node_modules/mkdirp/bin/cmd.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"231node_modules/.pnpm/chromium-edge-launcher@0.3.0/node_modules/chromium-edge-launcher/scripts/format.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"232node_modules/.pnpm/chromium-edge-launcher@0.3.0/node_modules/chromium-edge-launcher/manual-edge-launcher.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"233node_modules/.pnpm/chromium-edge-launcher@0.3.0/node_modules/chromium-edge-launcher/node_modules/.bin/mkdirp: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"234node_modules/.pnpm/open@7.4.2/node_modules/open/xdg-open: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"235node_modules/.pnpm/open@7.4.2/node_modules/open/node_modules/.bin/is-docker: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"236node_modules/.pnpm/send@0.19.2/node_modules/send/node_modules/.bin/mime: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"237node_modules/.pnpm/mime@1.6.0/node_modules/mime/src/build.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"238node_modules/.pnpm/mime@1.6.0/node_modules/mime/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"239node_modules/.pnpm/metro@0.84.6/node_modules/metro/src/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"240node_modules/.pnpm/metro@0.84.6/node_modules/metro/node_modules/.bin/parser: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"241node_modules/.pnpm/metro@0.84.6/node_modules/metro/node_modules/.bin/metro-symbolicate: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"242node_modules/.pnpm/metro-config@0.84.6/node_modules/metro-config/node_modules/.bin/yaml: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"243node_modules/.pnpm/metro-config@0.84.6/node_modules/metro-config/node_modules/.bin/metro: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"244node_modules/.pnpm/metro-source-map@0.84.6/node_modules/metro-source-map/node_modules/.bin/metro-symbolicate: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"245node_modules/.pnpm/metro-symbolicate@0.84.6/node_modules/metro-symbolicate/src/index.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"246node_modules/.pnpm/metro-transform-worker@0.84.6/node_modules/metro-transform-worker/node_modules/.bin/metro: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"247node_modules/.pnpm/metro-transform-worker@0.84.6/node_modules/metro-transform-worker/node_modules/.bin/parser: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"248node_modules/.pnpm/semver@7.8.5/node_modules/semver/bin/semver.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"249node_modules/.pnpm/metro-minify-terser@0.84.6/node_modules/metro-minify-terser/node_modules/.bin/terser: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"250node_modules/.pnpm/@babel+helper-create-class-features-plugin@7.29.7_@babel+core@7.29.0/node_modules/@babel/helper-create-class-features-plugin/node_modules/.bin/semver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"251node_modules/.pnpm/@babel+helper-create-regexp-features-plugin@7.29.7_@babel+core@7.29.0/node_modules/@babel/helper-create-regexp-features-plugin/node_modules/.bin/semver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"252node_modules/.pnpm/regexpu-core@6.4.0/node_modules/regexpu-core/node_modules/.bin/regjsparser: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"253node_modules/.pnpm/regjsparser@0.13.0/node_modules/regjsparser/bin/parser: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"254node_modules/.pnpm/regjsparser@0.13.0/node_modules/regjsparser/node_modules/.bin/jsesc: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"255node_modules/.pnpm/@babel+helper-define-polyfill-provider@0.6.8_@babel+core@7.29.0/node_modules/@babel/helper-define-polyfill-provider/node_modules/.bin/resolve: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"256node_modules/.pnpm/@babel+plugin-transform-runtime@7.29.7_@babel+core@7.29.0/node_modules/@babel/plugin-transform-runtime/node_modules/.bin/semver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"257node_modules/.pnpm/babel-plugin-polyfill-corejs2@0.4.17_@babel+core@7.29.0/node_modules/babel-plugin-polyfill-corejs2/node_modules/.bin/semver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"258node_modules/.pnpm/resolve@1.22.12/node_modules/resolve/bin/resolve: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"259node_modules/.pnpm/core-js-compat@3.50.0/node_modules/core-js-compat/node_modules/.bin/browserslist: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"260node_modules/.pnpm/@react-native+virtualized-lists@0.86.3_@types+react@19.3.0_react-native@0.86.3_@babel+c_b37565098ac3885cc4fac7b599307341/node_modules/@react-native/virtualized-lists/node_modules/.bin/react-native: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"261node_modules/.pnpm/@react-native+gradle-plugin@0.86.3/node_modules/@react-native/gradle-plugin/gradlew: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"262node_modules/.pnpm/@istanbuljs+load-nyc-config@1.1.0/node_modules/@istanbuljs/load-nyc-config/node_modules/.bin/js-yaml: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"263node_modules/.pnpm/esprima@4.0.1/node_modules/esprima/bin/esparse.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"264node_modules/.pnpm/esprima@4.0.1/node_modules/esprima/bin/esvalidate.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"265node_modules/.pnpm/js-yaml@3.15.2/node_modules/js-yaml/bin/js-yaml.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"266node_modules/.pnpm/js-yaml@3.15.2/node_modules/js-yaml/node_modules/.bin/esparse: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"267node_modules/.pnpm/js-yaml@3.15.2/node_modules/js-yaml/node_modules/.bin/esvalidate: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"268node_modules/.pnpm/istanbul-lib-instrument@5.2.1/node_modules/istanbul-lib-instrument/node_modules/.bin/parser: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"269node_modules/.pnpm/istanbul-lib-instrument@5.2.1/node_modules/istanbul-lib-instrument/node_modules/.bin/semver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"270node_modules/.pnpm/@types+babel__template@7.4.4/node_modules/@types/babel__template/node_modules/.bin/parser: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"271node_modules/.pnpm/@types+babel__core@7.20.5/node_modules/@types/babel__core/node_modules/.bin/parser: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"272node_modules/.pnpm/@expo+metro@56.0.2/node_modules/@expo/metro/node_modules/.bin/metro-symbolicate: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"273node_modules/.pnpm/@expo+metro@56.0.2/node_modules/@expo/metro/node_modules/.bin/metro: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"274node_modules/.pnpm/metro@0.84.5/node_modules/metro/src/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"275node_modules/.pnpm/metro@0.84.5/node_modules/metro/node_modules/.bin/parser: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"276node_modules/.pnpm/metro@0.84.5/node_modules/metro/node_modules/.bin/metro-symbolicate: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"277node_modules/.pnpm/metro-config@0.84.5/node_modules/metro-config/node_modules/.bin/metro: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"278node_modules/.pnpm/metro-config@0.84.5/node_modules/metro-config/node_modules/.bin/yaml: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"279node_modules/.pnpm/metro-source-map@0.84.5/node_modules/metro-source-map/node_modules/.bin/metro-symbolicate: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"280node_modules/.pnpm/metro-symbolicate@0.84.5/node_modules/metro-symbolicate/src/index.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"281node_modules/.pnpm/metro-minify-terser@0.84.5/node_modules/metro-minify-terser/node_modules/.bin/terser: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"282node_modules/.pnpm/metro-transform-worker@0.84.5/node_modules/metro-transform-worker/node_modules/.bin/parser: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"283node_modules/.pnpm/metro-transform-worker@0.84.5/node_modules/metro-transform-worker/node_modules/.bin/metro: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"284node_modules/.pnpm/@expo+metro-config@57.0.12_expo@57.0.25_typescript@6.0.3/node_modules/@expo/metro-config/node_modules/.bin/expo: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"285node_modules/.pnpm/@expo+metro-config@57.0.12_expo@57.0.25_typescript@6.0.3/node_modules/@expo/metro-config/node_modules/.bin/browserslist: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"286node_modules/.pnpm/@expo+metro-config@57.0.12_expo@57.0.25_typescript@6.0.3/node_modules/@expo/metro-config/node_modules/.bin/expo-modules-autolinking: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"287node_modules/.pnpm/@expo+metro-config@57.0.12_expo@57.0.25_typescript@6.0.3/node_modules/@expo/metro-config/node_modules/.bin/fingerprint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"288node_modules/.pnpm/@expo+log-box@57.0.4_@expo+dom-webview@57.0.1_expo@57.0.25_react-native@0.86.3_@babel+c_db1948992568104411c6b009d2432067/node_modules/@expo/log-box/node_modules/.bin/expo-modules-autolinking: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"289node_modules/.pnpm/@expo+log-box@57.0.4_@expo+dom-webview@57.0.1_expo@57.0.25_react-native@0.86.3_@babel+c_db1948992568104411c6b009d2432067/node_modules/@expo/log-box/node_modules/.bin/expo: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"290node_modules/.pnpm/@expo+log-box@57.0.4_@expo+dom-webview@57.0.1_expo@57.0.25_react-native@0.86.3_@babel+c_db1948992568104411c6b009d2432067/node_modules/@expo/log-box/node_modules/.bin/react-native: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"291node_modules/.pnpm/@expo+log-box@57.0.4_@expo+dom-webview@57.0.1_expo@57.0.25_react-native@0.86.3_@babel+c_db1948992568104411c6b009d2432067/node_modules/@expo/log-box/node_modules/.bin/fingerprint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"292node_modules/.pnpm/@expo+cli@57.0.27_@expo+dom-webview@57.0.1_expo-constants@57.0.19_expo@57.0.25_react-na_1cbbd51be371c1cd60af61a44f2f7e23/node_modules/@expo/cli/main.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"293node_modules/.pnpm/@expo+cli@57.0.27_@expo+dom-webview@57.0.1_expo-constants@57.0.19_expo@57.0.25_react-na_1cbbd51be371c1cd60af61a44f2f7e23/node_modules/@expo/cli/node_modules/.bin/excpretty: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"294node_modules/.pnpm/@expo+cli@57.0.27_@expo+dom-webview@57.0.1_expo-constants@57.0.19_expo@57.0.25_react-na_1cbbd51be371c1cd60af61a44f2f7e23/node_modules/@expo/cli/node_modules/.bin/expo-modules-autolinking: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"295node_modules/.pnpm/@expo+cli@57.0.27_@expo+dom-webview@57.0.1_expo-constants@57.0.19_expo@57.0.25_react-na_1cbbd51be371c1cd60af61a44f2f7e23/node_modules/@expo/cli/node_modules/.bin/agent-cli-detector: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"296node_modules/.pnpm/@expo+cli@57.0.27_@expo+dom-webview@57.0.1_expo-constants@57.0.19_expo@57.0.25_react-na_1cbbd51be371c1cd60af61a44f2f7e23/node_modules/@expo/cli/node_modules/.bin/expo: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"297node_modules/.pnpm/@expo+cli@57.0.27_@expo+dom-webview@57.0.1_expo-constants@57.0.19_expo@57.0.25_react-na_1cbbd51be371c1cd60af61a44f2f7e23/node_modules/@expo/cli/node_modules/.bin/fingerprint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"298node_modules/.pnpm/@expo+cli@57.0.27_@expo+dom-webview@57.0.1_expo-constants@57.0.19_expo@57.0.25_react-na_1cbbd51be371c1cd60af61a44f2f7e23/node_modules/@expo/cli/node_modules/.bin/react-native: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"299node_modules/.pnpm/@expo+cli@57.0.27_@expo+dom-webview@57.0.1_expo-constants@57.0.19_expo@57.0.25_react-na_1cbbd51be371c1cd60af61a44f2f7e23/node_modules/@expo/cli/node_modules/.bin/sandbox-cli-detector: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"300node_modules/.pnpm/@expo+cli@57.0.27_@expo+dom-webview@57.0.1_expo-constants@57.0.19_expo@57.0.25_react-na_1cbbd51be371c1cd60af61a44f2f7e23/node_modules/@expo/cli/node_modules/.bin/semver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"301node_modules/.pnpm/@expo+cli@57.0.27_@expo+dom-webview@57.0.1_expo-constants@57.0.19_expo@57.0.25_react-na_1cbbd51be371c1cd60af61a44f2f7e23/node_modules/@expo/cli/node_modules/.bin/lan-network: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"302node_modules/.pnpm/expo@57.0.25_@babel+core@7.29.0_@expo+dom-webview@57.0.1_expo-widgets@57.0.21_react-dom_21d38cc3ff1a0ea56edb7b1fa976a6ea/node_modules/expo/bin/autolinking: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"303node_modules/.pnpm/expo@57.0.25_@babel+core@7.29.0_@expo+dom-webview@57.0.1_expo-widgets@57.0.21_react-dom_21d38cc3ff1a0ea56edb7b1fa976a6ea/node_modules/expo/bin/cli: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"304node_modules/.pnpm/expo@57.0.25_@babel+core@7.29.0_@expo+dom-webview@57.0.1_expo-widgets@57.0.21_react-dom_21d38cc3ff1a0ea56edb7b1fa976a6ea/node_modules/expo/bin/fingerprint: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"305node_modules/.pnpm/expo@57.0.25_@babel+core@7.29.0_@expo+dom-webview@57.0.1_expo-widgets@57.0.21_react-dom_21d38cc3ff1a0ea56edb7b1fa976a6ea/node_modules/expo/scripts/xcode/with-environment.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"306node_modules/.pnpm/expo@57.0.25_@babel+core@7.29.0_@expo+dom-webview@57.0.1_expo-widgets@57.0.21_react-dom_21d38cc3ff1a0ea56edb7b1fa976a6ea/node_modules/expo/scripts/compose-source-maps.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"307node_modules/.pnpm/expo@57.0.25_@babel+core@7.29.0_@expo+dom-webview@57.0.1_expo-widgets@57.0.21_react-dom_21d38cc3ff1a0ea56edb7b1fa976a6ea/node_modules/expo/scripts/node-binary.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"308node_modules/.pnpm/expo@57.0.25_@babel+core@7.29.0_@expo+dom-webview@57.0.1_expo-widgets@57.0.21_react-dom_21d38cc3ff1a0ea56edb7b1fa976a6ea/node_modules/expo/scripts/react-native-xcode.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"309node_modules/.pnpm/expo@57.0.25_@babel+core@7.29.0_@expo+dom-webview@57.0.1_expo-widgets@57.0.21_react-dom_21d38cc3ff1a0ea56edb7b1fa976a6ea/node_modules/expo/scripts/resolveAppEntry.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"310node_modules/.pnpm/expo@57.0.25_@babel+core@7.29.0_@expo+dom-webview@57.0.1_expo-widgets@57.0.21_react-dom_21d38cc3ff1a0ea56edb7b1fa976a6ea/node_modules/expo/node_modules/.bin/fingerprint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"311node_modules/.pnpm/expo@57.0.25_@babel+core@7.29.0_@expo+dom-webview@57.0.1_expo-widgets@57.0.21_react-dom_21d38cc3ff1a0ea56edb7b1fa976a6ea/node_modules/expo/node_modules/.bin/expo-modules-autolinking: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"312node_modules/.pnpm/expo@57.0.25_@babel+core@7.29.0_@expo+dom-webview@57.0.1_expo-widgets@57.0.21_react-dom_21d38cc3ff1a0ea56edb7b1fa976a6ea/node_modules/expo/node_modules/.bin/react-native: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"313node_modules/.pnpm/expo@57.0.25_@babel+core@7.29.0_@expo+dom-webview@57.0.1_expo-widgets@57.0.21_react-dom_21d38cc3ff1a0ea56edb7b1fa976a6ea/node_modules/expo/node_modules/.bin/expo-internal: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"314node_modules/.pnpm/@expo+dom-webview@57.0.1_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-nat_892c6724f75642ddedeb9f2966d7200b/node_modules/@expo/dom-webview/node_modules/.bin/expo: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"315node_modules/.pnpm/@expo+dom-webview@57.0.1_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-nat_892c6724f75642ddedeb9f2966d7200b/node_modules/@expo/dom-webview/node_modules/.bin/fingerprint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"316node_modules/.pnpm/@expo+dom-webview@57.0.1_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-nat_892c6724f75642ddedeb9f2966d7200b/node_modules/@expo/dom-webview/node_modules/.bin/expo-modules-autolinking: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"317node_modules/.pnpm/@expo+dom-webview@57.0.1_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-nat_892c6724f75642ddedeb9f2966d7200b/node_modules/@expo/dom-webview/node_modules/.bin/react-native: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"318node_modules/.pnpm/@react-native+virtualized-lists@0.86.3_@types+react@19.2.18_react-native@0.86.3_@babel+_0fb47266d89a8b37a375ac288495cd6c/node_modules/@react-native/virtualized-lists/node_modules/.bin/react-native: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"319node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_aa56d519de450133511be1349fc267e3/node_modules/react-native/sdks/hermes-engine/utils/build-apple-framework.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"320node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_aa56d519de450133511be1349fc267e3/node_modules/react-native/sdks/hermes-engine/utils/build-hermes-xcode.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"321node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_aa56d519de450133511be1349fc267e3/node_modules/react-native/sdks/hermes-engine/utils/build-hermesc-xcode.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"322node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_aa56d519de450133511be1349fc267e3/node_modules/react-native/sdks/hermes-engine/utils/build-ios-framework.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"323node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_aa56d519de450133511be1349fc267e3/node_modules/react-native/sdks/hermes-engine/utils/build-mac-framework.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"324node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_aa56d519de450133511be1349fc267e3/node_modules/react-native/sdks/hermes-engine/utils/copy-hermes-xcode.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"325node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_aa56d519de450133511be1349fc267e3/node_modules/react-native/scripts/xcode/ccache-clang++.sh: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"326node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_aa56d519de450133511be1349fc267e3/node_modules/react-native/scripts/xcode/ccache-clang.sh: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"327node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_aa56d519de450133511be1349fc267e3/node_modules/react-native/scripts/xcode/with-environment.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"328node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_aa56d519de450133511be1349fc267e3/node_modules/react-native/scripts/react_native_pods_utils/script_phases.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"329node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_aa56d519de450133511be1349fc267e3/node_modules/react-native/scripts/compose-source-maps.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"330node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_aa56d519de450133511be1349fc267e3/node_modules/react-native/scripts/ios-configure-glog.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"331node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_aa56d519de450133511be1349fc267e3/node_modules/react-native/scripts/packager.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"332node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_aa56d519de450133511be1349fc267e3/node_modules/react-native/scripts/react-native-xcode.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"333node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_aa56d519de450133511be1349fc267e3/node_modules/react-native/ReactAndroid/src/main/java/com/facebook/react/views/scroll/generate-nested-scroll-view.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"334node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_aa56d519de450133511be1349fc267e3/node_modules/react-native/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"335node_modules/.pnpm/react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@0.86.3_@babel+core@7.2_aa56d519de450133511be1349fc267e3/node_modules/react-native/node_modules/.bin/semver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"336node_modules/.pnpm/npm-package-arg@11.0.3/node_modules/npm-package-arg/node_modules/.bin/semver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"337node_modules/.pnpm/expo-modules-autolinking@57.0.13_typescript@6.0.3/node_modules/expo-modules-autolinking/bin/expo-modules-autolinking.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"338node_modules/.pnpm/@expo+prebuild-config@57.0.16_typescript@6.0.3/node_modules/@expo/prebuild-config/node_modules/.bin/expo-modules-autolinking: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"339node_modules/.pnpm/@expo+prebuild-config@57.0.16_typescript@6.0.3/node_modules/@expo/prebuild-config/node_modules/.bin/semver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"340node_modules/.pnpm/@expo+router-server@57.0.11_expo-constants@57.0.19_expo@57.0.25_react-native@0.86.3_@ba_0175d04bef7b18c39700df5930550a50/node_modules/@expo/router-server/node_modules/.bin/expo: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"341node_modules/.pnpm/@expo+router-server@57.0.11_expo-constants@57.0.19_expo@57.0.25_react-native@0.86.3_@ba_0175d04bef7b18c39700df5930550a50/node_modules/@expo/router-server/node_modules/.bin/expo-modules-autolinking: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"342node_modules/.pnpm/@expo+router-server@57.0.11_expo-constants@57.0.19_expo@57.0.25_react-native@0.86.3_@ba_0175d04bef7b18c39700df5930550a50/node_modules/@expo/router-server/node_modules/.bin/fingerprint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"343node_modules/.pnpm/expo-font@57.0.4_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-native+jest_5b9a05aebea279f400bcc55346154797/node_modules/expo-font/node_modules/.bin/expo: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"344node_modules/.pnpm/expo-font@57.0.4_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-native+jest_5b9a05aebea279f400bcc55346154797/node_modules/expo-font/node_modules/.bin/expo-modules-autolinking: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"345node_modules/.pnpm/expo-font@57.0.4_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-native+jest_5b9a05aebea279f400bcc55346154797/node_modules/expo-font/node_modules/.bin/fingerprint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"346node_modules/.pnpm/expo-font@57.0.4_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-native+jest_5b9a05aebea279f400bcc55346154797/node_modules/expo-font/node_modules/.bin/react-native: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"347node_modules/.pnpm/expo-constants@57.0.19_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-nativ_9d95ae86aa9861eca811f4393c7e4ea8/node_modules/expo-constants/scripts/get-app-config-ios.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"348node_modules/.pnpm/expo-constants@57.0.19_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-nativ_9d95ae86aa9861eca811f4393c7e4ea8/node_modules/expo-constants/scripts/with-node.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"349node_modules/.pnpm/expo-constants@57.0.19_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-nativ_9d95ae86aa9861eca811f4393c7e4ea8/node_modules/expo-constants/node_modules/.bin/expo-modules-autolinking: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"350node_modules/.pnpm/expo-constants@57.0.19_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-nativ_9d95ae86aa9861eca811f4393c7e4ea8/node_modules/expo-constants/node_modules/.bin/fingerprint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"351node_modules/.pnpm/expo-constants@57.0.19_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-nativ_9d95ae86aa9861eca811f4393c7e4ea8/node_modules/expo-constants/node_modules/.bin/expo: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"352node_modules/.pnpm/expo-constants@57.0.19_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-nativ_9d95ae86aa9861eca811f4393c7e4ea8/node_modules/expo-constants/node_modules/.bin/react-native: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"353node_modules/.pnpm/@expo+xcpretty@4.4.4/node_modules/@expo/xcpretty/build/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"354node_modules/.pnpm/@expo+xcpretty@4.4.4/node_modules/@expo/xcpretty/node_modules/.bin/js-yaml: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"355node_modules/.pnpm/js-yaml@4.3.2/node_modules/js-yaml/bin/js-yaml.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"356node_modules/.pnpm/agent-cli-detector@0.1.7/node_modules/agent-cli-detector/dist/cli.cjs: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"357node_modules/.pnpm/agent-cli-detector@0.1.7/node_modules/agent-cli-detector/dist/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"358node_modules/.pnpm/lan-network@0.2.1/node_modules/lan-network/dist/lan-network-cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"359node_modules/.pnpm/sandbox-cli-detector@0.2.0/node_modules/sandbox-cli-detector/dist/cli.cjs: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"360node_modules/.pnpm/sandbox-cli-detector@0.2.0/node_modules/sandbox-cli-detector/dist/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"361node_modules/.pnpm/@expo+devtools@57.0.1_react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@_1e2d8ede91bf8be17af9dab6906b4126/node_modules/@expo/devtools/node_modules/.bin/react-native: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"362node_modules/.pnpm/@expo+fingerprint@0.20.13/node_modules/@expo/fingerprint/bin/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"363node_modules/.pnpm/@expo+fingerprint@0.20.13/node_modules/@expo/fingerprint/node_modules/.bin/semver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"364node_modules/.pnpm/babel-preset-expo@57.0.13_@babel+core@7.29.0_@babel+runtime@7.29.7_expo-widgets@57.0.21_07338d8c3a53dd20cd7b296f84f86b83/node_modules/babel-preset-expo/node_modules/.bin/expo-modules-autolinking: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"365node_modules/.pnpm/babel-preset-expo@57.0.13_@babel+core@7.29.0_@babel+runtime@7.29.7_expo-widgets@57.0.21_07338d8c3a53dd20cd7b296f84f86b83/node_modules/babel-preset-expo/node_modules/.bin/expo: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"366node_modules/.pnpm/babel-preset-expo@57.0.13_@babel+core@7.29.0_@babel+runtime@7.29.7_expo-widgets@57.0.21_07338d8c3a53dd20cd7b296f84f86b83/node_modules/babel-preset-expo/node_modules/.bin/fingerprint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"367node_modules/.pnpm/expo-widgets@57.0.21_@babel+core@7.29.0_@types+react-dom@19.3.0_@types+react@19.2.18__@_69bad55a7d8ea3bc46484ce3c15b7f0a/node_modules/expo-widgets/scripts/with-node.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"368node_modules/.pnpm/expo-widgets@57.0.21_@babel+core@7.29.0_@types+react-dom@19.3.0_@types+react@19.2.18__@_69bad55a7d8ea3bc46484ce3c15b7f0a/node_modules/expo-widgets/scripts/xcode-build-bundle.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"369node_modules/.pnpm/expo-widgets@57.0.21_@babel+core@7.29.0_@types+react-dom@19.3.0_@types+react@19.2.18__@_69bad55a7d8ea3bc46484ce3c15b7f0a/node_modules/expo-widgets/node_modules/.bin/expo: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"370node_modules/.pnpm/expo-widgets@57.0.21_@babel+core@7.29.0_@types+react-dom@19.3.0_@types+react@19.2.18__@_69bad55a7d8ea3bc46484ce3c15b7f0a/node_modules/expo-widgets/node_modules/.bin/expo-modules-autolinking: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"371node_modules/.pnpm/expo-widgets@57.0.21_@babel+core@7.29.0_@types+react-dom@19.3.0_@types+react@19.2.18__@_69bad55a7d8ea3bc46484ce3c15b7f0a/node_modules/expo-widgets/node_modules/.bin/react-native: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"372node_modules/.pnpm/expo-widgets@57.0.21_@babel+core@7.29.0_@types+react-dom@19.3.0_@types+react@19.2.18__@_69bad55a7d8ea3bc46484ce3c15b7f0a/node_modules/expo-widgets/node_modules/.bin/fingerprint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"373node_modules/.pnpm/@expo+ui@57.0.20_@babel+core@7.29.0_@types+react-dom@19.3.0_@types+react@19.2.18__@type_86835e44acb1479604ba4358ec6f6c1c/node_modules/@expo/ui/node_modules/.bin/expo: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"374node_modules/.pnpm/@expo+ui@57.0.20_@babel+core@7.29.0_@types+react-dom@19.3.0_@types+react@19.2.18__@type_86835e44acb1479604ba4358ec6f6c1c/node_modules/@expo/ui/node_modules/.bin/expo-modules-autolinking: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"375node_modules/.pnpm/@expo+ui@57.0.20_@babel+core@7.29.0_@types+react-dom@19.3.0_@types+react@19.2.18__@type_86835e44acb1479604ba4358ec6f6c1c/node_modules/@expo/ui/node_modules/.bin/fingerprint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"376node_modules/.pnpm/@expo+ui@57.0.20_@babel+core@7.29.0_@types+react-dom@19.3.0_@types+react@19.2.18__@type_86835e44acb1479604ba4358ec6f6c1c/node_modules/@expo/ui/node_modules/.bin/react-native: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"377node_modules/.pnpm/react-native-worklets@0.10.1_@babel+core@7.29.0_@react-native+metro-config@0.86.3_@babe_d7714303070f5f8f19d3c6bfe384219f/node_modules/react-native-worklets/node_modules/.bin/react-native: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"378node_modules/.pnpm/react-native-worklets@0.10.1_@babel+core@7.29.0_@react-native+metro-config@0.86.3_@babe_d7714303070f5f8f19d3c6bfe384219f/node_modules/react-native-worklets/node_modules/.bin/semver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"379node_modules/.pnpm/expo-asset@57.0.18_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-native+je_b725de7ff16d95711193ac32d2e2c0c8/node_modules/expo-asset/node_modules/.bin/fingerprint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"380node_modules/.pnpm/expo-asset@57.0.18_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-native+je_b725de7ff16d95711193ac32d2e2c0c8/node_modules/expo-asset/node_modules/.bin/expo: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"381node_modules/.pnpm/expo-asset@57.0.18_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-native+je_b725de7ff16d95711193ac32d2e2c0c8/node_modules/expo-asset/node_modules/.bin/expo-modules-autolinking: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"382node_modules/.pnpm/expo-asset@57.0.18_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-native+je_b725de7ff16d95711193ac32d2e2c0c8/node_modules/expo-asset/node_modules/.bin/react-native: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"383node_modules/.pnpm/expo-file-system@57.0.7_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-nati_817b755039ed5fd4e5d49f3acdd660f4/node_modules/expo-file-system/node_modules/.bin/expo: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"384node_modules/.pnpm/expo-file-system@57.0.7_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-nati_817b755039ed5fd4e5d49f3acdd660f4/node_modules/expo-file-system/node_modules/.bin/expo-modules-autolinking: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"385node_modules/.pnpm/expo-file-system@57.0.7_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-nati_817b755039ed5fd4e5d49f3acdd660f4/node_modules/expo-file-system/node_modules/.bin/react-native: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"386node_modules/.pnpm/expo-file-system@57.0.7_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-nati_817b755039ed5fd4e5d49f3acdd660f4/node_modules/expo-file-system/node_modules/.bin/fingerprint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"387node_modules/.pnpm/@expo+expo-modules-macros-plugin@0.6.1/node_modules/@expo/expo-modules-macros-plugin/apple/build.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"388node_modules/.pnpm/expo-font@57.0.4_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-native+jest_a91d6885f473a20decb00f2b842bdc4a/node_modules/expo-font/node_modules/.bin/expo: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"389node_modules/.pnpm/expo-font@57.0.4_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-native+jest_a91d6885f473a20decb00f2b842bdc4a/node_modules/expo-font/node_modules/.bin/fingerprint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"390node_modules/.pnpm/expo-font@57.0.4_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-native+jest_a91d6885f473a20decb00f2b842bdc4a/node_modules/expo-font/node_modules/.bin/react-native: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"391node_modules/.pnpm/expo-font@57.0.4_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-native+jest_a91d6885f473a20decb00f2b842bdc4a/node_modules/expo-font/node_modules/.bin/expo-modules-autolinking: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"392node_modules/.pnpm/expo-keep-awake@57.0.2_expo@57.0.25_react@19.2.3/node_modules/expo-keep-awake/node_modules/.bin/expo: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"393node_modules/.pnpm/expo-keep-awake@57.0.2_expo@57.0.25_react@19.2.3/node_modules/expo-keep-awake/node_modules/.bin/expo-modules-autolinking: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"394node_modules/.pnpm/expo-keep-awake@57.0.2_expo@57.0.25_react@19.2.3/node_modules/expo-keep-awake/node_modules/.bin/fingerprint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"395node_modules/.pnpm/expo-modules-core@57.0.19_react-native-worklets@0.10.1_@babel+core@7.29.0_@react-native_e59e638792f803c7d3cc7ad20fa341ee/node_modules/expo-modules-core/node_modules/.bin/react-native: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"396node_modules/.pnpm/@expo+devtools@57.0.1_react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-preset@_c70f77d92175281fb22d97dec00884a1/node_modules/@expo/devtools/node_modules/.bin/react-native: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"397node_modules/.pnpm/expo-modules-jsi@57.1.1_react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-prese_8026a16a804fbcfba5ffe7364f159418/node_modules/expo-modules-jsi/apple/scripts/build-xcframework.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"398node_modules/.pnpm/expo-modules-jsi@57.1.1_react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-prese_8026a16a804fbcfba5ffe7364f159418/node_modules/expo-modules-jsi/apple/scripts/create-stub-xcframework.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"399node_modules/.pnpm/expo-modules-jsi@57.1.1_react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-prese_8026a16a804fbcfba5ffe7364f159418/node_modules/expo-modules-jsi/apple/scripts/generate-modulemap.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"400node_modules/.pnpm/expo-modules-jsi@57.1.1_react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-prese_8026a16a804fbcfba5ffe7364f159418/node_modules/expo-modules-jsi/apple/scripts/test.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"401node_modules/.pnpm/expo-modules-jsi@57.1.1_react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-prese_8026a16a804fbcfba5ffe7364f159418/node_modules/expo-modules-jsi/node_modules/.bin/react-native: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"402node_modules/.pnpm/@expo+router-server@57.0.11_expo-constants@57.0.19_expo@57.0.25_react-native@0.86.3_@ba_892c1e3dc28d929daa1be8e02e3a712a/node_modules/@expo/router-server/node_modules/.bin/expo: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"403node_modules/.pnpm/@expo+router-server@57.0.11_expo-constants@57.0.19_expo@57.0.25_react-native@0.86.3_@ba_892c1e3dc28d929daa1be8e02e3a712a/node_modules/@expo/router-server/node_modules/.bin/fingerprint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"404node_modules/.pnpm/@expo+router-server@57.0.11_expo-constants@57.0.19_expo@57.0.25_react-native@0.86.3_@ba_892c1e3dc28d929daa1be8e02e3a712a/node_modules/@expo/router-server/node_modules/.bin/expo-modules-autolinking: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"405node_modules/.pnpm/expo-modules-core@57.0.19_react-native-worklets@0.10.1_@babel+core@7.29.0_@react-native_3f576f0ecf43532b9726c915c3667304/node_modules/expo-modules-core/node_modules/.bin/react-native: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"406node_modules/.pnpm/expo-modules-jsi@57.1.1_react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-prese_a18691d4849eb0d9de834a5aff2d1f58/node_modules/expo-modules-jsi/apple/scripts/build-xcframework.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"407node_modules/.pnpm/expo-modules-jsi@57.1.1_react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-prese_a18691d4849eb0d9de834a5aff2d1f58/node_modules/expo-modules-jsi/apple/scripts/create-stub-xcframework.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"408node_modules/.pnpm/expo-modules-jsi@57.1.1_react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-prese_a18691d4849eb0d9de834a5aff2d1f58/node_modules/expo-modules-jsi/apple/scripts/generate-modulemap.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"409node_modules/.pnpm/expo-modules-jsi@57.1.1_react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-prese_a18691d4849eb0d9de834a5aff2d1f58/node_modules/expo-modules-jsi/apple/scripts/test.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"410node_modules/.pnpm/expo-modules-jsi@57.1.1_react-native@0.86.3_@babel+core@7.29.0_@react-native+jest-prese_a18691d4849eb0d9de834a5aff2d1f58/node_modules/expo-modules-jsi/node_modules/.bin/react-native: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"411node_modules/.pnpm/react-native-worklets@0.10.1_@babel+core@7.29.0_@react-native+metro-config@0.86.3_@babe_fb3a8ad4e81285ae2f4c2171580c4deb/node_modules/react-native-worklets/node_modules/.bin/react-native: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"412node_modules/.pnpm/react-native-worklets@0.10.1_@babel+core@7.29.0_@react-native+metro-config@0.86.3_@babe_fb3a8ad4e81285ae2f4c2171580c4deb/node_modules/react-native-worklets/node_modules/.bin/semver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"413node_modules/.pnpm/expo-network@57.0.2_expo@57.0.25_react@19.2.3/node_modules/expo-network/node_modules/.bin/expo: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"414node_modules/.pnpm/expo-network@57.0.2_expo@57.0.25_react@19.2.3/node_modules/expo-network/node_modules/.bin/fingerprint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"415node_modules/.pnpm/expo-network@57.0.2_expo@57.0.25_react@19.2.3/node_modules/expo-network/node_modules/.bin/expo-modules-autolinking: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"416node_modules/.pnpm/expo-file-system@57.0.7_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-nati_6029eb630a6b7faebe9e56aa9900a40e/node_modules/expo-file-system/node_modules/.bin/expo: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"417node_modules/.pnpm/expo-file-system@57.0.7_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-nati_6029eb630a6b7faebe9e56aa9900a40e/node_modules/expo-file-system/node_modules/.bin/react-native: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"418node_modules/.pnpm/expo-file-system@57.0.7_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-nati_6029eb630a6b7faebe9e56aa9900a40e/node_modules/expo-file-system/node_modules/.bin/expo-modules-autolinking: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"419node_modules/.pnpm/expo-file-system@57.0.7_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-nati_6029eb630a6b7faebe9e56aa9900a40e/node_modules/expo-file-system/node_modules/.bin/fingerprint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"420node_modules/.pnpm/expo-asset@57.0.18_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-native+je_5d688fe6f4317073a28440d6561b89f2/node_modules/expo-asset/node_modules/.bin/expo: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"421node_modules/.pnpm/expo-asset@57.0.18_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-native+je_5d688fe6f4317073a28440d6561b89f2/node_modules/expo-asset/node_modules/.bin/expo-modules-autolinking: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"422node_modules/.pnpm/expo-asset@57.0.18_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-native+je_5d688fe6f4317073a28440d6561b89f2/node_modules/expo-asset/node_modules/.bin/fingerprint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"423node_modules/.pnpm/expo-asset@57.0.18_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-native+je_5d688fe6f4317073a28440d6561b89f2/node_modules/expo-asset/node_modules/.bin/react-native: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"424node_modules/.pnpm/expo-web-browser@57.0.3_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-nati_a1b93d1c05badc6c099ad5d212033f8d/node_modules/expo-web-browser/node_modules/.bin/expo: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"425node_modules/.pnpm/expo-web-browser@57.0.3_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-nati_a1b93d1c05badc6c099ad5d212033f8d/node_modules/expo-web-browser/node_modules/.bin/fingerprint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"426node_modules/.pnpm/expo-web-browser@57.0.3_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-nati_a1b93d1c05badc6c099ad5d212033f8d/node_modules/expo-web-browser/node_modules/.bin/expo-modules-autolinking: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"427node_modules/.pnpm/expo-web-browser@57.0.3_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-nati_a1b93d1c05badc6c099ad5d212033f8d/node_modules/expo-web-browser/node_modules/.bin/react-native: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"428node_modules/.pnpm/expo-secure-store@57.0.4_expo@57.0.25/node_modules/expo-secure-store/node_modules/.bin/fingerprint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"429node_modules/.pnpm/expo-secure-store@57.0.4_expo@57.0.25/node_modules/expo-secure-store/node_modules/.bin/expo-modules-autolinking: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"430node_modules/.pnpm/expo-secure-store@57.0.4_expo@57.0.25/node_modules/expo-secure-store/node_modules/.bin/expo: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"431node_modules/.pnpm/expo-linking@57.0.11_expo@57.0.25_react-native@0.86.3_@babel+core@7.29.0_@react-native+_0f855f614732f3f20dac730c7d0a080e/node_modules/expo-linking/node_modules/.bin/react-native: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"432node_modules/.pnpm/@better-auth+sso@1.7.4_@better-auth+core@1.7.4_@better-auth+utils@0.4.2_@better-fetch+f_a7acb67057e476f2d250c87f6e41ed32/node_modules/@better-auth/sso/node_modules/.bin/tldts: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"433node_modules/.pnpm/@better-auth+sso@1.7.4_@better-auth+core@1.7.4_@better-auth+utils@0.4.2_@better-fetch+f_a7acb67057e476f2d250c87f6e41ed32/node_modules/@better-auth/sso/node_modules/.bin/fxparser: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"434node_modules/.pnpm/fast-xml-parser@5.11.1/node_modules/fast-xml-parser/src/cli/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"435node_modules/.pnpm/tldts@7.4.12/node_modules/tldts/bin/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"436node_modules/.pnpm/bcryptjs@3.0.3/node_modules/bcryptjs/bin/bcrypt: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"437node_modules/.pnpm/@apidevtools+json-schema-ref-parser@14.0.1/node_modules/@apidevtools/json-schema-ref-parser/node_modules/.bin/js-yaml: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"438node_modules/.pnpm/swagger-jsdoc@6.3.0_openapi-types@12.1.3/node_modules/swagger-jsdoc/bin/swagger-jsdoc.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"439node_modules/.pnpm/swagger-jsdoc@6.3.0_openapi-types@12.1.3/node_modules/swagger-jsdoc/node_modules/.bin/glob: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"440node_modules/.pnpm/glob@11.1.0/node_modules/glob/dist/esm/bin.mjs: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"441node_modules/.pnpm/uuid@14.0.2/node_modules/uuid/dist-node/bin/uuid: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"442node_modules/.pnpm/@eslint+js@10.0.1_eslint@10.10.0_jiti@2.7.0_/node_modules/@eslint/js/node_modules/.bin/eslint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"443node_modules/.pnpm/eslint@10.10.0_jiti@2.7.0/node_modules/eslint/bin/eslint.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"444node_modules/.pnpm/eslint@10.10.0_jiti@2.7.0/node_modules/eslint/node_modules/.bin/jiti: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"445node_modules/.pnpm/@eslint-community+eslint-utils@4.10.1_eslint@10.10.0_jiti@2.7.0_/node_modules/@eslint-community/eslint-utils/node_modules/.bin/eslint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"446node_modules/.pnpm/ajv@6.14.0/node_modules/ajv/scripts/info: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"447node_modules/.pnpm/ajv@6.14.0/node_modules/ajv/scripts/prepare-tests: interpreter directive changed from "#!/usr/bin/env sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"448node_modules/.pnpm/ajv@6.14.0/node_modules/ajv/scripts/publish-built-version: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"449node_modules/.pnpm/ajv@6.14.0/node_modules/ajv/scripts/travis-gh-pages: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"450node_modules/.pnpm/espree@11.2.0/node_modules/espree/node_modules/.bin/acorn: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"451node_modules/.pnpm/acorn-jsx@5.3.2_acorn@8.18.0/node_modules/acorn-jsx/node_modules/.bin/acorn: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"452node_modules/.pnpm/@typescript-eslint+eslint-plugin@8.70.0_@typescript-eslint+parser@8.70.0_eslint@10.10.0_8ce3c7b80ac493969ffea18a75a849a9/node_modules/@typescript-eslint/eslint-plugin/node_modules/.bin/eslint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"453node_modules/.pnpm/@typescript-eslint+eslint-plugin@8.70.0_@typescript-eslint+parser@8.70.0_eslint@10.10.0_8ce3c7b80ac493969ffea18a75a849a9/node_modules/@typescript-eslint/eslint-plugin/node_modules/.bin/tsserver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"454node_modules/.pnpm/@typescript-eslint+eslint-plugin@8.70.0_@typescript-eslint+parser@8.70.0_eslint@10.10.0_8ce3c7b80ac493969ffea18a75a849a9/node_modules/@typescript-eslint/eslint-plugin/node_modules/.bin/tsc: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"455node_modules/.pnpm/@typescript-eslint+parser@8.70.0_eslint@10.10.0_jiti@2.7.0__typescript@6.0.3/node_modules/@typescript-eslint/parser/node_modules/.bin/eslint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"456node_modules/.pnpm/@typescript-eslint+parser@8.70.0_eslint@10.10.0_jiti@2.7.0__typescript@6.0.3/node_modules/@typescript-eslint/parser/node_modules/.bin/tsc: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"457node_modules/.pnpm/@typescript-eslint+parser@8.70.0_eslint@10.10.0_jiti@2.7.0__typescript@6.0.3/node_modules/@typescript-eslint/parser/node_modules/.bin/tsserver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"458node_modules/.pnpm/@typescript-eslint+type-utils@8.70.0_eslint@10.10.0_jiti@2.7.0__typescript@6.0.3/node_modules/@typescript-eslint/type-utils/node_modules/.bin/tsserver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"459node_modules/.pnpm/@typescript-eslint+type-utils@8.70.0_eslint@10.10.0_jiti@2.7.0__typescript@6.0.3/node_modules/@typescript-eslint/type-utils/node_modules/.bin/eslint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"460node_modules/.pnpm/@typescript-eslint+type-utils@8.70.0_eslint@10.10.0_jiti@2.7.0__typescript@6.0.3/node_modules/@typescript-eslint/type-utils/node_modules/.bin/tsc: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"461node_modules/.pnpm/@typescript-eslint+typescript-estree@8.70.0_typescript@6.0.3/node_modules/@typescript-eslint/typescript-estree/node_modules/.bin/tsc: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"462node_modules/.pnpm/@typescript-eslint+typescript-estree@8.70.0_typescript@6.0.3/node_modules/@typescript-eslint/typescript-estree/node_modules/.bin/tsserver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"463node_modules/.pnpm/@typescript-eslint+typescript-estree@8.70.0_typescript@6.0.3/node_modules/@typescript-eslint/typescript-estree/node_modules/.bin/semver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"464node_modules/.pnpm/@typescript-eslint+tsconfig-utils@8.70.0_typescript@6.0.3/node_modules/@typescript-eslint/tsconfig-utils/node_modules/.bin/tsserver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"465node_modules/.pnpm/@typescript-eslint+tsconfig-utils@8.70.0_typescript@6.0.3/node_modules/@typescript-eslint/tsconfig-utils/node_modules/.bin/tsc: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"466node_modules/.pnpm/@typescript-eslint+project-service@8.70.0_typescript@6.0.3/node_modules/@typescript-eslint/project-service/node_modules/.bin/tsc: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"467node_modules/.pnpm/@typescript-eslint+project-service@8.70.0_typescript@6.0.3/node_modules/@typescript-eslint/project-service/node_modules/.bin/tsserver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"468node_modules/.pnpm/@typescript-eslint+utils@8.70.0_eslint@10.10.0_jiti@2.7.0__typescript@6.0.3/node_modules/@typescript-eslint/utils/node_modules/.bin/tsc: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"469node_modules/.pnpm/@typescript-eslint+utils@8.70.0_eslint@10.10.0_jiti@2.7.0__typescript@6.0.3/node_modules/@typescript-eslint/utils/node_modules/.bin/eslint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"470node_modules/.pnpm/@typescript-eslint+utils@8.70.0_eslint@10.10.0_jiti@2.7.0__typescript@6.0.3/node_modules/@typescript-eslint/utils/node_modules/.bin/tsserver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"471node_modules/.pnpm/ts-api-utils@2.5.0_typescript@6.0.3/node_modules/ts-api-utils/node_modules/.bin/tsc: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"472node_modules/.pnpm/ts-api-utils@2.5.0_typescript@6.0.3/node_modules/ts-api-utils/node_modules/.bin/tsserver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"473node_modules/.pnpm/eslint-plugin-n@18.3.0_eslint@10.10.0_jiti@2.7.0__ts-declaration-location@1.0.7_typescript@6.0.3__typescript@6.0.3/node_modules/eslint-plugin-n/node_modules/.bin/eslint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"474node_modules/.pnpm/eslint-plugin-n@18.3.0_eslint@10.10.0_jiti@2.7.0__ts-declaration-location@1.0.7_typescript@6.0.3__typescript@6.0.3/node_modules/eslint-plugin-n/node_modules/.bin/tsc: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"475node_modules/.pnpm/eslint-plugin-n@18.3.0_eslint@10.10.0_jiti@2.7.0__ts-declaration-location@1.0.7_typescript@6.0.3__typescript@6.0.3/node_modules/eslint-plugin-n/node_modules/.bin/tsserver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"476node_modules/.pnpm/eslint-plugin-n@18.3.0_eslint@10.10.0_jiti@2.7.0__ts-declaration-location@1.0.7_typescript@6.0.3__typescript@6.0.3/node_modules/eslint-plugin-n/node_modules/.bin/semver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"477node_modules/.pnpm/eslint-compat-utils@0.5.1_eslint@10.10.0_jiti@2.7.0_/node_modules/eslint-compat-utils/node_modules/.bin/eslint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"478node_modules/.pnpm/eslint-compat-utils@0.5.1_eslint@10.10.0_jiti@2.7.0_/node_modules/eslint-compat-utils/node_modules/.bin/semver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"479node_modules/.pnpm/eslint-plugin-es-x@7.8.0_eslint@10.10.0_jiti@2.7.0_/node_modules/eslint-plugin-es-x/node_modules/.bin/eslint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"480node_modules/.pnpm/ts-declaration-location@1.0.7_typescript@6.0.3/node_modules/ts-declaration-location/node_modules/.bin/tsc: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"481node_modules/.pnpm/ts-declaration-location@1.0.7_typescript@6.0.3/node_modules/ts-declaration-location/node_modules/.bin/tsserver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"482node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/bin/regexp-tree: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"483node_modules/.pnpm/safe-regex@2.1.1/node_modules/safe-regex/bin/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"484node_modules/.pnpm/safe-regex@2.1.1/node_modules/safe-regex/node_modules/.bin/regexp-tree: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"485node_modules/.pnpm/simple-update-notifier@2.0.0/node_modules/simple-update-notifier/node_modules/.bin/semver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"486node_modules/.pnpm/nodemon@3.1.14/node_modules/nodemon/bin/nodemon.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"487node_modules/.pnpm/nodemon@3.1.14/node_modules/nodemon/node_modules/.bin/semver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"488node_modules/.pnpm/nodemon@3.1.14/node_modules/nodemon/node_modules/.bin/nodetouch: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"489node_modules/.pnpm/touch@3.1.1/node_modules/touch/bin/nodetouch.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"490node_modules/.pnpm/prettier@3.9.6/node_modules/prettier/bin/prettier.cjs: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"491node_modules/.pnpm/superagent@10.3.0/node_modules/superagent/node_modules/.bin/mime: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"492node_modules/.pnpm/mime@2.6.0/node_modules/mime/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"493node_modules/.pnpm/typescript-eslint@8.70.0_eslint@10.10.0_jiti@2.7.0__typescript@6.0.3/node_modules/typescript-eslint/node_modules/.bin/eslint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"494node_modules/.pnpm/typescript-eslint@8.70.0_eslint@10.10.0_jiti@2.7.0__typescript@6.0.3/node_modules/typescript-eslint/node_modules/.bin/tsc: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"495node_modules/.pnpm/typescript-eslint@8.70.0_eslint@10.10.0_jiti@2.7.0__typescript@6.0.3/node_modules/typescript-eslint/node_modules/.bin/tsserver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"496node_modules/.pnpm/@oclif+core@4.8.3/node_modules/@oclif/core/node_modules/.bin/ejs: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"497node_modules/.pnpm/@oclif+core@4.8.3/node_modules/@oclif/core/node_modules/.bin/semver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"498node_modules/.pnpm/ejs@3.1.10/node_modules/ejs/bin/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"499node_modules/.pnpm/ejs@3.1.10/node_modules/ejs/node_modules/.bin/jake: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"500node_modules/.pnpm/jake@10.9.4/node_modules/jake/bin/bash_completion.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"501node_modules/.pnpm/jake@10.9.4/node_modules/jake/bin/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"502node_modules/.pnpm/@typescript+vfs@1.6.4_typescript@5.9.3/node_modules/@typescript/vfs/node_modules/.bin/tsc: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"503node_modules/.pnpm/@typescript+vfs@1.6.4_typescript@5.9.3/node_modules/@typescript/vfs/node_modules/.bin/tsserver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"504node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/bin/tsc: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"505node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/bin/tsserver: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"506node_modules/.pnpm/js-yaml@5.4.1/node_modules/js-yaml/bin/js-yaml.mjs: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"507node_modules/.pnpm/tsutils@3.21.0_typescript@5.9.3/node_modules/tsutils/node_modules/.bin/tsserver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"508node_modules/.pnpm/tsutils@3.21.0_typescript@5.9.3/node_modules/tsutils/node_modules/.bin/tsc: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"509node_modules/.pnpm/lint-staged@17.5.0/node_modules/lint-staged/bin/lint-staged.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"510node_modules/.pnpm/lint-staged@17.5.0/node_modules/lint-staged/node_modules/.bin/yaml: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"511node_modules/.pnpm/husky@9.1.7/node_modules/husky/bin.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"512node_modules/.pnpm/ts-to-zod@5.1.0/node_modules/ts-to-zod/bin/dev: interpreter directive changed from "#!/usr/bin/env -S node --loader ts-node/esm --disable-warning=ExperimentalWarning" to "/nix/store/xjl7p8dvyk2j53kqf7f43kdj4ypbxz7g-coreutils-9.11/bin/env -S /nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node --loader ts-node/esm --disable-warning=ExperimentalWarning"513node_modules/.pnpm/ts-to-zod@5.1.0/node_modules/ts-to-zod/bin/run: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/v6wsd9nyglmwh32yn7w8z11dq9cksg4m-nodejs-24.20.0/bin/node"514node_modules/.pnpm/ts-to-zod@5.1.0/node_modules/ts-to-zod/node_modules/.bin/tsc: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"515node_modules/.pnpm/ts-to-zod@5.1.0/node_modules/ts-to-zod/node_modules/.bin/tsserver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"516node_modules/.pnpm/node_modules/.bin/nodemon: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"517node_modules/.pnpm/node_modules/.bin/tsc: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"518node_modules/.pnpm/node_modules/.bin/eslint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"519node_modules/.pnpm/node_modules/.bin/bcrypt: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"520node_modules/.pnpm/node_modules/.bin/tsserver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"521node_modules/.pnpm/node_modules/.bin/vitest: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"522node_modules/.pnpm/node_modules/.bin/ts-to-zod: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"523node_modules/.pnpm/node_modules/.bin/fxparser: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"524node_modules/.pnpm/node_modules/.bin/swagger-jsdoc: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"525node_modules/.pnpm/node_modules/.bin/tsx: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"526node_modules/.pnpm/node_modules/.bin/semver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"527node_modules/.pnpm/node_modules/.bin/uuid: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"528node_modules/.pnpm/node_modules/.bin/jiti: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"529node_modules/.pnpm/node_modules/.bin/yaml: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"530node_modules/.pnpm/node_modules/.bin/tldts: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"531node_modules/.pnpm/node_modules/.bin/nodetouch: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"532node_modules/.pnpm/node_modules/.bin/esbuild: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"533node_modules/.pnpm/node_modules/.bin/glob: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"534node_modules/.pnpm/node_modules/.bin/vite: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"535node_modules/.pnpm/node_modules/.bin/why-is-node-running: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"536node_modules/.pnpm/node_modules/.bin/ejs: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"537node_modules/.pnpm/node_modules/.bin/node-which: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"538node_modules/.pnpm/node_modules/.bin/acorn: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"539node_modules/.pnpm/node_modules/.bin/fingerprint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"540node_modules/.pnpm/node_modules/.bin/react-native: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"541node_modules/.pnpm/node_modules/.bin/parser: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"542node_modules/.pnpm/node_modules/.bin/expo: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"543node_modules/.pnpm/node_modules/.bin/expo-modules-autolinking: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"544node_modules/.pnpm/node_modules/.bin/terser: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"545node_modules/.pnpm/node_modules/.bin/mime: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"546node_modules/.pnpm/node_modules/.bin/regexp-tree: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"547node_modules/.pnpm/node_modules/.bin/rolldown: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"548node_modules/.pnpm/node_modules/.bin/jake: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"549node_modules/.pnpm/node_modules/.bin/loose-envify: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"550node_modules/.pnpm/node_modules/.bin/excpretty: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"551node_modules/.pnpm/node_modules/.bin/sandbox-cli-detector: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"552node_modules/.pnpm/node_modules/.bin/nanoid: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"553node_modules/.pnpm/node_modules/.bin/expo-internal: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"554node_modules/.pnpm/node_modules/.bin/lan-network: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"555node_modules/.pnpm/node_modules/.bin/agent-cli-detector: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"556node_modules/.pnpm/node_modules/.bin/metro: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"557node_modules/.pnpm/node_modules/.bin/metro-symbolicate: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"558node_modules/.pnpm/node_modules/.bin/jsesc: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"559node_modules/.pnpm/node_modules/.bin/browserslist: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"560node_modules/.pnpm/node_modules/.bin/json5: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"561node_modules/.pnpm/node_modules/.bin/print-chrome-path: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"562node_modules/.pnpm/node_modules/.bin/update-browserslist-db: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"563node_modules/.pnpm/node_modules/.bin/mkdirp: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"564node_modules/.pnpm/node_modules/.bin/resolve: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"565node_modules/.pnpm/node_modules/.bin/baseline-browser-mapping: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"566node_modules/.pnpm/node_modules/.bin/dotslash: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"567node_modules/.pnpm/node_modules/.bin/is-docker: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"568node_modules/.pnpm/node_modules/.bin/esvalidate: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"569node_modules/.pnpm/node_modules/.bin/regjsparser: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"570node_modules/.pnpm/node_modules/.bin/esparse: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"571Finished pnpmConfigHookcheckPhase
572573> sparkyfitnessserver@1.7.3 validate /build/source/SparkyFitnessServer574> pnpm run typecheck && pnpm run lint && pnpm run format:check575576577> sparkyfitnessserver@1.7.3 typecheck /build/source/SparkyFitnessServer578> tsc --noEmit579580581> sparkyfitnessserver@1.7.3 lint /build/source/SparkyFitnessServer582> eslint . --max-warnings 0583584585> sparkyfitnessserver@1.7.3 format:check /build/source/SparkyFitnessServer586> prettier . --check587588Checking formatting...589__mocks__/uuid.js.dockerignore.prettierignore.prettierrcAGENTS.mdai/config.tsai/mcp/mcpAdapter.tsai/modelCapabilities.tsai/providerDispatch.tsai/tools/allergenTools.tsai/tools/askTools.tsai/tools/barcodeTools.tsai/tools/caffeineKineticsTools.tsai/tools/checkinTools.tsai/tools/coachTools.tsai/tools/customNutrientTools.tsai/tools/dashboardTools.tsai/tools/dates.tsai/tools/devTools.tsai/tools/engagementTools.tsai/tools/errors.tsai/tools/exerciseLookup.tsai/tools/exerciseStatsTools.tsai/tools/exerciseTools.tsai/tools/favoritesTools.tsai/tools/foodPhotoEstimateSink.tsai/tools/foodTools.tsai/tools/formatting.tsai/tools/goalTools.tsai/tools/habitTools.tsai/tools/index.tsai/tools/integrationsTools.tsai/tools/mealPlansTools.tsai/tools/medicationTools.tsai/tools/metaTools.tsai/tools/pagination.tsai/tools/profileTools.tsai/tools/progressPhotoTools.tsai/tools/reportTools.tsai/tools/schemas/allergens.tsai/tools/schemas/barcode.tsai/tools/schemas/caffeineKinetics.tsai/tools/schemas/checkin.tsai/tools/schemas/coach.tsai/tools/schemas/common.tsai/tools/schemas/customNutrients.tsai/tools/schemas/dashboard.tsai/tools/schemas/engagement.tsai/tools/schemas/exercise.tsai/tools/schemas/exerciseStats.tsai/tools/schemas/favorites.tsai/tools/schemas/food.tsai/tools/schemas/goals.tsai/tools/schemas/habits.tsai/tools/schemas/integrations.tsai/tools/schemas/mealPlans.tsai/tools/schemas/medications.tsai/tools/schemas/profile.tsai/tools/schemas/progressPhotos.tsai/tools/schemas/report.tsai/tools/schemas/sleepScience.tsai/tools/schemas/syncedData.tsai/tools/schemas/vision.tsai/tools/schemas/waterContainers.tsai/tools/schemas/wizard.tsai/tools/schemas/workoutPlans.tsai/tools/sleepScienceTools.tsai/tools/syncedDataTools.tsai/tools/truncation.tsai/tools/unitConversion.tsai/tools/visionTools.tsai/tools/waterContainerTools.tsai/tools/wizardTools.tsai/tools/workoutPlanTools.tsauth.tsCLAUDE.mdconfig/logging.tsconfig/swagger.tsconstants/foodProviders.tsconstants/goals.tsconstants/openFoodFacts.tsconstants/sleepScienceConstants.tsconstants/wger.tsdb/connection.tsdb/grantPermissions.tsdb/migrations/20250703170640_InitialDB.sqldb/migrations/20250710062500_create_goal_presets_table.sqldb/migrations/20250711173824_meal_features.sqldb/migrations/20250712163617_refactor_data_providers_and_add_exercise_source_id.sqldb/migrations/20250713125323_create_oidc_settings_and_update_users_table.sqldb/migrations/20250713135900_add_role_to_users_table.sqldb/migrations/20250713142300_add_oidc_config_fields.sqldb/migrations/20250714000000_create_session_table.sqldb/migrations/20250714175824_add_api_key_tag_to_ai_service_settings.sqldb/migrations/20250717190700_add_cascading_deletes.sqldb/migrations/20250717233929_add_is_quick_food_to_foods.sqldb/migrations/20250718190226_add_food_display_limit_to_user_preferences.sqldb/migrations/20250719131500_add_meal_percentages.sqldb/migrations/20250719215400_add_login_management_to_oidc_settings.sqldb/migrations/20250720010000_create_user_nutrient_display_preferences.sqldb/migrations/20250720201800_rename_food_display_limit_to_item_display_limit.sqldb/migrations/20250720220000_add_water_tracking_features.sqldb/migrations/20250720233836_alter_water_goal_ml_to_numeric.sqldb/migrations/20250721000000_add_servings_per_container_to_water_containers.sqldb/migrations/20250721000000_alter_water_container_volume_to_numeric.sqldb/migrations/20250721014900_alter_water_ml_to_numeric.sqldb/migrations/20250819062400_add_mealie_provider_type.sqldb/migrations/20250819083500_add_base_url_to_external_data_providers.sqldb/migrations/202508201215_add_garmin_integration_schema.sqldb/migrations/20250821090000_update_external_data_providers_provider_type_check.sqldb/migrations/20250821091500_add_garth_token_dump_to_external_data_providers.sqldb/migrations/20250821102000_remove_redundant_token_fields_from_external_data_providers.sqldb/migrations/20250831063900_create_mood_entries_table.sqldb/migrations/20250927180257_alter_exercises_table.sqldb/migrations/20250927212000_add_free_exercise_db_to_provider_type_check.sqldb/migrations/20250930002100_add_sets_reps_weight_to_exercise_entries.sqldb/migrations/20251001232600_add_gender_to_users_table.sqldb/migrations/20251002182306_create_backup_settings_table.sqldb/migrations/20251002224500_add_password_reset_to_users_table.sqldb/migrations/20251006021609_add_glycemic_index_to_foods_and_food_variants.sqldb/migrations/20251006220500_create_admin_activity_logs_table.sqldb/migrations/20251008224256_add_workout_features.sqldb/migrations/20251012225400_add_primary_keys_to_workout_tables.sqldb/migrations/20251012225500_add_multiple_sets_to_presets.sqldb/migrations/20251012225900_add_multiple_sets_to_plans.sqldb/migrations/20251012230000_add_multiple_sets_to_exercise_entries.sqldb/migrations/20251015223200_convert_weights_to_kg_and_set_default.sqldb/migrations/202510170132_add_text_measurements.sqldb/migrations/20251017200900_add_multiple_oidc_providers.sqldb/migrations/20251017204200_create_global_settings.sqldb/migrations/20251018001151_add_bmr_and_bodyfat_preferences.sqldb/migrations/20251018223700_add_signing_alg_to_oidc_providers.sqldb/migrations/20251019013200_merged_schema_and_data.sqldb/migrations/20251019013300_merged_rls_policies.sqldb/migrations/20251019154515_update_rls_policies_for_shared_items.sqldb/migrations/20251019203500_fix_rls_permissions_for_public_foods.sqldb/migrations/20251019204000_correct_variant_rls_policy.sqldb/migrations/20251019212500_update_measurement_rls_policies.sqldb/migrations/20251019222100_add_audit_columns_to_measurements.sqldb/migrations/20251020001000_fix_family_access_insert_policy.sqldb/migrations/20251020022000_set_default_shared_with_public.sqldb/migrations/20251020022200_update_rls_policies.sqldb/migrations/20251020022500_fix_food_select_policy.sqldb/migrations/20251020030000_simplify_food_select_policy.sqldb/migrations/20251020031000_update_food_select_policy_with_sharing.sqldb/migrations/20251020032200_add_all_owner_centric_policies.sqldb/migrations/20251020033400_add_food_variants_rls_policy.sqldb/migrations/20251020033700_fix_food_variants_rls_policy.sqldb/migrations/20251020230839_fix_family_access_rls_policies.sqldb/migrations/20251021025423_restrict_family_access_select_policy.sqldb/migrations/20251021034700_add_public_sharing_to_external_providers.sqldb/migrations/20251022201000_fix_exercise_rls_policy.sqldb/migrations/20251022203000_snapshot_exercise_details_in_entries.sqldb/migrations/20251023120500_update_external_providers_select_policy_for_public.sqldb/migrations/20251023221000_update_meals_rls_policy.sqldb/migrations/20251023221500_update_meal_plan_template_assignments_rls_policy.sqldb/migrations/20251023221501_add_meal_id_to_food_entries.sqldb/migrations/20251024230330_add_withings_fields_to_external_data_providers.sqldb/migrations/20251025210900_add_source_to_custom_measurements.sqldb/migrations/20251026125900_add_distance_and_hr_to_exercise_entries_activity_details.sqldb/migrations/202510310132_add_language_to_user_preferences.sqldb/migrations/20251101151100_create_sleep_entries_table.sqldb/migrations/20251103000000_add_onboarding_schema.sqldb/migrations/20251112000000_add_display_name_to_custom_categories.sqldb/migrations/20251114205134_create_exercise_preset_entries_table.sqldb/migrations/20251115003147_add_source_to_exercise_preset_entries.sqldb/migrations/20251115003301_add_exercise_preset_entry_id_to_activity_details.sqldb/migrations/20251115004027_alter_exercise_entry_id_nullable_in_activity_details.sqldb/migrations/20251120011100_add_mfa_magic_link_columns.sqldb/migrations/20251121011500_add_email_mfa_columns_to_users.sqldb/migrations/202511220110_add_default_external_data_providers.sqldb/migrations/202511232110_delete_raw_stress_data_categories.sqldb/migrations/202511270109_add_calorie_goal_adjustment_mode_to_user_preferences.sqldb/migrations/20251127194107_create_food_entry_meals_and_link_food_entries.sqldb/migrations/20251127194108_migrate_aggregated_food_entries_to_food_entry_meals.sqldb/migrations/20251128030115_add_tandoor_provider_type.sqldb/migrations/20251205000000_add_energy_unit_to_user_preferences.sqldb/migrations/20251206000000_add_nutrient_calculation_algorithms.sqldb/migrations/20251206000001_add_serving_size_to_meals.sqldb/migrations/20251207000001_add_default_meal_quantity.sqldb/migrations/20251215005329_add_usda_to_provider_type_check.sqldb/migrations/20251221000000_create_fasting_logs.sqldb/migrations/20251221010000_drop_mood_weight_from_fasting_logs.sqldb/migrations/20251226150700_add_mobile_health_data_features.sqldb/migrations/20251228000000_add_custom_nutrients_tables.sqldb/migrations/20252317234000_add_is_quick_exercise_to_exercises.sqldb/migrations/20260105000000_add_auto_scale_open_food_facts_imports.sqldb/migrations/20260108010449_add_cascading_delete_to_check_in_measurements.sqldb/migrations/20260108011953_add_cascading_delete_to_food_entries.sqldb/migrations/20260108012051_add_comprehensive_cascading_deletes.sqldb/migrations/20260108223108_alter_water_goal_to_numeric.sqldb/migrations/20260111180656_custom_meal_feature.sqldb/migrations/20260122201500_refactor_provider_type_to_lookup_table.sqldb/migrations/20260123115500_add_privacy_flag_to_provider_types.sqldb/migrations/20260125000000_better_auth_migration.sqldb/migrations/20260127040000_family_access_audit_fix.sqldb/migrations/202601280001_add_show_hide_to_meals.sqldb/migrations/20260201121400_add_api_key_table.sqldb/migrations/20260201184000_add_missing_api_key_columns.sqldb/migrations/20260202023713_add_oidc_config_to_sso_provider.sqldb/migrations/20260205200200_add_exercise_sorting.sqldb/migrations/20260206132000_ensure_first_user_is_admin.sqldb/migrations/20260206215500_add_mfa_totp_enabled_column.sqldb/migrations/20260207110000_mfa_triggers.sqldb/migrations/20260208_fix_user_creation_trigger.sqldb/migrations/20260208120000_fix_api_key_rate_limit_defaults.sqldb/migrations/20260208194543_fix_user_meal_visibilities_fkey.sqldb/migrations/20260214223000_add_polar_provider_type.sqldb/migrations/20260215144500_add_hevy_provider_type.sqldb/migrations/20260216012235_add_global_ai_settings.sqldb/migrations/20260216020134_add_allow_user_ai_config.sqldb/migrations/20260216030000_rename_is_global_to_is_public.sqldb/migrations/20260216140000_add_custom_nutrients_to_goals_and_presets.sqldb/migrations/20260216195500_prune_empty_custom_nutrients.sqldb/migrations/20260221210000_oidc_config_jsonb.sqldb/migrations/20260222100000_add_strava_provider_type.sqldb/migrations/20260224000000_add_sleep_science.sqldb/migrations/20260224120000_add_show_in_quick_log_to_meal_visibilities.sqldb/migrations/20260226000000_add_exercise_calorie_preferences.sqldb/migrations/20260228120000_fix_sleep_entry_date_to_wake_up_date.sqldb/migrations/20260302000000_add_default_barcode_provider_id.sqldb/migrations/20260302120000_normalize_barcodes.sqldb/migrations/20260313100000_add_source_to_water_intake.sqldb/migrations/20260314175000_add_image_to_user_table.sqldb/migrations/20260315192200_fix_oidc_config_keys.sqldb/migrations/20260315200000_better_auth_1_5_upgrade.sqldb/migrations/20260321000000_add_auto_scale_online_imports.sqldb/migrations/20260322130000_mfa_better_auth_optimization.sqldb/migrations/20260322141500_mfa_triggers_sync_fix.sqldb/migrations/20260322154230_add_first_day_of_week_to_preferences.sqldb/migrations/20260323122741_add_steps_column.sqldb/migrations/20260328120000_add_timezone_check_constraint.sqldb/migrations/20260406120000_add_barcode_fallback_open_food_facts.sqldb/migrations/20260420230132_scope_exercises_source_unique_to_user.sqldb/migrations/20260423120000_sleep_entry_stages_unique_natural_key.sqldb/migrations/20260426120000_provider_sort_order.sqldb/migrations/20260426120001_custom_meal_percentages.sqldb/migrations/20260509120000_add_water_intake_entries.sqldb/migrations/20260515120000_add_show_net_carbs_to_user_preferences.sqldb/migrations/20260515174155_serving_size_model.sqldb/migrations/20260523120000_ai_assisted_conversions.sqldb/migrations/20260527120000_add_allergen_tracking.sqldb/migrations/20260529140000_add_multimodal_support_to_chat_history.sqldb/migrations/20260531120000_add_nutrition_snapshot_to_meal_foods.sqldb/migrations/20260531120000_add_source_to_food_entries.sqldb/migrations/20260604120000_add_checkin_mood_unique_indexes.sqldb/migrations/20260604120600_add_user_last_login_at.sqldb/migrations/20260606132000_add_yazio_provider_type.sqldb/migrations/20260606164200_add_norish_provider_type.sqldb/migrations/20260607000000_add_googlehealth_provider_type.sqldb/migrations/20260607114000_add_swissfood_provider_type.sqldb/migrations/20260610120000_add_garmin_nutrition_index.sqldb/migrations/20260612120000_add_use_external_bmr_preference.sqldb/migrations/20260612153000_add_goal_mode_to_user_preferences.sqldb/migrations/20260614000000_add_checkin_photos.sqldb/migrations/20260618000000_remove_superuser_extensions.sqldb/migrations/20260620143300_public_sharing_and_dynamic_provider_types.sqldb/migrations/20260621000000_create_user_dashboard_layouts.sqldb/migrations/20260622120000_add_water_estimated_to_exercise_entries.sqldb/migrations/20260623000000_add_measurement_decimal_places.sqldb/migrations/20260624000000_add_medication_glp1_schema.sqldb/migrations/20260625000000_add_chat_tool_profile_to_ai_service_settings.sqldb/migrations/20260628000000_convert_exercise_durations_to_numeric.sqldb/migrations/20260628120000_add_vision_ai_service_pointers.sqldb/migrations/20260630000000_add_custom_nutrient_aliases.sqldb/migrations/20260630000000_add_onboarding_skipped.sqldb/migrations/20260701000000_add_child_meal_to_meal_foods.sqldb/migrations/20260702180000_add_cycle_tracking_schema.sqldb/migrations/20260705000000_fix_googlehealth_sleep_date_anchor.sqldb/migrations/20260707000000_add_passkey_registration_tickets.sqldb/migrations/20260707090000_add_provider_verified_to_foods.sqldb/migrations/20260707130000_add_workout_session_columns.sqldb/migrations/20260709000000_create_food_favorites.sqldb/migrations/20260710000000_add_supplement_nutrients_to_medications.sqldb/migrations/20260710120000_add_entry_time_and_meal_default_time.sqldb/migrations/20260715120000_add_oura_provider_type.sqldb/migrations/20260716181900_drop_user_preferences_system_prompt.sqldb/migrations/20260717120000_create_user_nutrient_goal_preferences.sqldb/migrations/20260723000000_add_spray_medication_type.sqldb/migrations/20260725173500_allow_multiple_active_meal_plans.sqldb/migrations/20260726000000_guard_serving_size_positive.sqldb/migrations/20260727100000_set_duration_seconds_modality_distance.sqldb/migrations/20260730000000_create_generic_health_and_workout_tables.sqldb/migrations/20260730120000_add_time_format_to_user_preferences.sqldb/migrations/20260730120000_add_workout_preset_set_distance.sqldb/migrations/20260803000000_rename_gps_points_new_constraints.sqldb/migrations/20260804000000_add_source_id_to_water_intake_entries.sqldb/migrations/20260807000000_add_record_timezone_to_sleep_entries.sqldb/migrations/20260810000000_add_images_to_foods_meals_and_food_entries.sqldb/migrations/20260814000000_backfill_diary_entry_images_from_parent.sqldb/migrations/20260816000000_widen_fractional_workout_telemetry_to_numeric.sqldb/migrations/20260816173934_flip_goal_mode_custom_percentage_sign.sqldb/migrations/20260816192818_normalize_exercise_json_array_fields.sqldb/migrations/20260817000000_add_liftosaur_provider_type.sqldb/migrations/20260818020000_fix_hevy_exercise_entry_distance_units.sqldb/migrations/20260821150000_flatten_nested_exercise_image_entries.sqldb/migrations/20260821170000_add_food_search_all_providers_default.sqldb/migrations/20260821233000_add_calorie_safety_floor_preferences.sqldb/migrations/20260827180000_add_bmr_to_check_in_measurements.sqldb/migrations/20260829171500_add_total_calories_capture_time.sqldb/migrations/20260830120000_add_notes_to_food_tables.sqldb/migrations/20260901103000_add_openfoodfacts_automatic_sync.sqldb/migrations/20260901120000_add_entry_yield_to_food_entry_meals.sqldb/migrations/20260901120000_add_progression_fields_to_workout_preset_exercises.sqldb/migrations/20260904120000_add_chart_scale_mode_preference.sqldb/migrations/20260905150000_add_caffeine_alcohol_water_and_container_links.sqldb/migrations/20260908120000_narrow_check_in_bmr_bounds.sqldb/migrations/20260909203000_deduplicate_strava_activity_details.sqldb/migrations/20260910180000_deduplicate_shared_active_calories.sqldb/migrations/20260912150000_preserve_data_on_user_and_library_deletes.sqldb/migrations/20260912193000_better_auth_1_7_schema.sqldb/migrations/20260914210000_cleanup_zero_ml_water_entries.sqldb/migrations/20260918162032_add_lap_moving_telemetry.sqldb/migrations/20260918170000_backfill_polar_steps_to_check_in.sqldb/migrations/20260918180000_widen_health_metric_samples_for_skin_temperature.sqldb/migrations/20260918230000_add_admin_system_settings.sqldb/migrations/20260921140000_add_sequential_workout_plan_mode.sqldb/migrations/20260921210000_add_watch_telemetry_observed_at.sqldb/migrations/20260923170000_add_workout_format_to_presets.sqldb/migrations/20260924200000_add_location_and_rir.sqldb/migrations/20260925013000_add_watch_duration_minutes.sqldb/migrations/20260925180000_add_ramp_increment_to_workout_preset_exercises.sqldb/migrations/20260925200000_snapshot_workout_format_on_preset_entries.sqldb/migrations/20260926120000_add_workout_feedback.sqldb/migrations/20260926230000_add_record_timezone_to_exercise_entries.sqldb/migrations/20260927180000_add_coros_provider_type.sqldb/poolManager.tsdb/rls_policies.sqldocs/externalapis.mdeslint.config.jsindex.tsintegrations/coros/corosConstants.tsintegrations/coros/corosDataProcessor.tsintegrations/coros/corosMcpText.tsintegrations/coros/corosService.tsintegrations/fatsecret/fatsecretService.tsintegrations/fitbit/fitbitDataProcessor.tsintegrations/fitbit/fitbitService.tsintegrations/freeexercisedb/FreeExerciseDBService.tsintegrations/garminconnect/garminConnectService.tsintegrations/garminconnect/garminMeasurementMapping.tsintegrations/garminfit/fitActivityTransform.tsintegrations/garminfit/fitDecoder.tsintegrations/googlehealth/googleHealthDataProcessor.tsintegrations/googlehealth/googleHealthService.tsintegrations/healthData/healthDataRoutes.tsintegrations/hevy/hevyDataProcessor.tsintegrations/hevy/hevyService.tsintegrations/liftosaur/liftohistoryParser.tsintegrations/liftosaur/liftosaurDataProcessor.tsintegrations/liftosaur/liftosaurMeasurementsService.tsintegrations/liftosaur/liftosaurService.tsintegrations/liftosaur/liftosaurTypes.tsintegrations/mealie/mealieService.tsintegrations/norish/norishService.tsintegrations/nutritionix/nutritionixService.tsintegrations/openfoodfacts/openFoodFactsAuth.tsintegrations/openfoodfacts/openFoodFactsContribution.tsintegrations/openfoodfacts/openFoodFactsPhoto.tsintegrations/openfoodfacts/openFoodFactsService.tsintegrations/oura/ouraDataProcessor.tsintegrations/oura/ouraService.tsintegrations/polar/polarDataProcessor.tsintegrations/polar/polarService.tsintegrations/strava/stravaDataProcessor.tsintegrations/strava/stravaService.tsintegrations/strava/stravaTelemetryExtractors.tsintegrations/swissfood/swissFoodService.tsintegrations/tandoor/tandoorService.tsintegrations/usda/usdaService.tsintegrations/wger/wgerNameMapping.tsintegrations/wger/wgerService.tsintegrations/withings/withingsDataProcessor.tsintegrations/withings/withingsService.tsintegrations/yazio/yazioService.tsmiddleware/authMiddleware.tsmiddleware/checkInPhotoUpload.tsmiddleware/checkPermissionMiddleware.tsmiddleware/demoGuardMiddleware.tsmiddleware/emailLoginGuard.tsmiddleware/errorHandler.tsmiddleware/imageUpload.tsmiddleware/oidcLogoUpload.tsmiddleware/onBehalfOfMiddleware.tsmiddleware/requestLogger.tsmiddleware/requireSelfMiddleware.tsmiddleware/signOutCookieCleanup.tsmiddleware/uploadMiddleware.tsmodels/activityDetailsRepository.tsmodels/adminActivityLogRepository.tsmodels/backupSettingsRepository.tsmodels/chatRepository.tsmodels/coachRepository.tsmodels/cycleRepository.tsmodels/dashboardLayoutRepository.tsmodels/engagementRepository.tsmodels/exercise.tsmodels/exerciseAlternativesRepository.tsmodels/exerciseEntry.tsmodels/exercisePresetEntryRepository.tsmodels/exerciseRepository.tsmodels/exerciseTemplate.tsmodels/externalProviderRepository.tsmodels/familyAccessRepository.tsmodels/fastingRepository.tsmodels/food.tsmodels/foodEntry.tsmodels/foodEntryMealRepository.tsmodels/foodMisc.tsmodels/foodRepository.tsmodels/foodTemplate.tsmodels/foodVariant.tsmodels/genericHealthRepository.tsmodels/globalSettingsRepository.tsmodels/goalPresetRepository.tsmodels/goalRepository.tsmodels/habitRepository.tsmodels/injectionRepository.tsmodels/mealPlanTemplateRepository.tsmodels/mealRepository.tsmodels/mealType.tsmodels/measurementRepository.tsmodels/medicationDisplayPreferenceRepository.tsmodels/medicationEntryRepository.tsmodels/medicationPenRepository.tsmodels/medicationRepository.tsmodels/moodRepository.tsmodels/nutrientDisplayPreferenceRepository.tsmodels/nutrientGoalPreferenceRepository.tsmodels/oidcProviderRepository.tsmodels/onboardingRepository.tsmodels/openFoodFactsProductReadRateLimitRepository.tsmodels/openFoodFactsSyncQueueRepository.tsmodels/preferenceRepository.tsmodels/pregnancyRepository.tsmodels/reportRepository.tsmodels/sleepRepository.tsmodels/sleepScienceRepository.tsmodels/supplementSql.tsmodels/symptomRepository.tsmodels/syncedDataRepository.tsmodels/titrationRepository.tsmodels/userRepository.tsmodels/waterContainerRepository.tsmodels/weeklyGoalPlanRepository.tsmodels/workoutFeedbackRepository.tsmodels/workoutPlanTemplateRepository.tsmodels/workoutPresetRepository.tsmodels/workoutTelemetryRepository.tsnodemon.jsonpackage.jsonprompts/chatbot-core-checkin.mdprompts/chatbot-core-food.mdprompts/chatbot-core.mdprompts/chatbot-full-checkin.mdprompts/chatbot-full-food.mdprompts/chatbot-full-vision.mdprompts/chatbot-full.mdroutes/adaptiveTdeeRoutes.tsroutes/adminAuthRoutes.tsroutes/adminRoutes.tsroutes/aiUnitConversionRoutes.tsroutes/allergenPreferenceRoutes.tsroutes/announcementRoutes.tsroutes/auth/apiKeyRoutes.tsroutes/auth/authCoreRoutes.tsroutes/auth/familyAccessRoutes.tsroutes/auth/templates/passkey-login.htmlroutes/auth/templates/passkey-register.htmlroutes/auth/userProfileRoutes.tsroutes/authRoutes.tsroutes/backupRoutes.tsroutes/chatRoutes.tsroutes/checkInPhotoRoutes.tsroutes/corosRoutes.tsroutes/customNutrientRoutes.tsroutes/dailySummaryRoutes.tsroutes/dashboardLayoutRoutes.tsroutes/dashboardRoutes.tsroutes/exerciseEntryRoutes.tsroutes/exercisePresetEntryRoutes.tsroutes/exerciseRoutes.tsroutes/exerciseStatsRoutes.tsroutes/externalProviderRoutes.tsroutes/fastingRoutes.tsroutes/favoritesRoutes.tsroutes/fitbitRoutes.tsroutes/foodCrudRoutes.tsroutes/foodEntryMealRoutes.tsroutes/foodEntryRoutes.tsroutes/foodIntegrationRoutes.tsroutes/foodRoutes.tsroutes/freeExerciseDBRoutes.tsroutes/garminRoutes.tsroutes/genericHealthRoutes.tsroutes/globalSettingsRoutes.tsroutes/goalPresetRoutes.tsroutes/goalRoutes.tsroutes/googleHealthRoutes.tsroutes/healthRoutes.tsroutes/hevyRoutes.tsroutes/identityRoutes.tsroutes/liftosaurRoutes.tsroutes/mcpRoutes.tsroutes/mealPlanTemplateRoutes.tsroutes/mealRoutes.tsroutes/mealTypeRoutes.tsroutes/measurementRoutes.tsroutes/moodRoutes.tsroutes/nutrientDisplayPreferenceRoutes.tsroutes/nutrientGoalPreferenceRoutes.tsroutes/oidcSettingsRoutes.tsroutes/onboardingRoutes.tsroutes/ouraRoutes.tsroutes/polarRoutes.tsroutes/preferenceRoutes.tsroutes/reportRoutes.tsroutes/reviewRoutes.tsroutes/sleepRoutes.tsroutes/sleepScienceRoutes.tsroutes/stravaRoutes.tsroutes/syncedDataRoutes.tsroutes/v2/cycleRoutes.tsroutes/v2/exerciseEntryRoutes.tsroutes/v2/exerciseRoutes.tsroutes/v2/foodRoutes.tsroutes/v2/goalPresetRoutes.tsroutes/v2/medicationRoutes.tsroutes/v2/nutritionKineticsRoutes.tsroutes/v2/openFoodFactsContributionRoutes.tsroutes/v2/pregnancyRoutes.tsroutes/v2/reportRoutes.tsroutes/v2/symptomRoutes.tsroutes/v2/waterIntakeRoutes.tsroutes/v2/workoutCoachingRoutes.tsroutes/versionRoutes.tsroutes/waterContainerRoutes.tsroutes/weeklyGoalPlanRoutes.tsroutes/withingsDataRoutes.tsroutes/withingsRoutes.tsroutes/workoutPlanTemplateRoutes.tsroutes/workoutPresetRoutes.tsschemas/checkInPhotoSchemas.tsschemas/corosSchemas.tsschemas/customNutrientSchemas.tsschemas/cycleSchemas.tsschemas/externalProviderSchemas.tsschemas/foodSchemas.tsschemas/goalPresetSchemas.tsschemas/googleHealthSchemas.tsschemas/mealTypeSchemas.tsschemas/measurementSchemas.tsschemas/medicationSchemas.tsschemas/oidcProviderSchemas.tsschemas/openFoodFactsContributionSchemas.tsschemas/ouraSchemas.tsschemas/pregnancySchemas.tsschemas/schema.utils.tsschemas/symptomSchemas.tsschemas/waterContainerSchemas.tsscripts/backfillWorkoutTelemetry.script.tssecurity/encryption.tsservices/AdaptiveTdeeService.tsservices/adaptiveWorkoutService.tsservices/aiUnitConversionService.tsservices/alcoholWeekService.tsservices/allergenPreferenceService.tsservices/announcementService.tsservices/authService.tsservices/backgroundJobScheduler.tsservices/backupScheduler.tsservices/backupService.tsservices/bmrService.tsservices/bodyCompositionService.tsservices/caffeineKineticsService.tsservices/calorieBalanceService.tsservices/CalorieCalculationService.tsservices/chatService.tsservices/checkInPhotoService.tsservices/corosService.tsservices/customNutrientService.tsservices/cycleService.tsservices/dailySummaryRangeService.tsservices/dailySummaryService.tsservices/dashboardLayoutService.tsservices/DashboardService.tsservices/demoSeedService.tsservices/emailService.tsservices/exerciseAlternativesService.tsservices/exerciseCalorieRangeService.tsservices/exerciseEntryHistoryService.tsservices/exerciseEntryService.tsservices/exerciseService.tsservices/exerciseStatsService.tsservices/externalFoodSearchService.tsservices/externalProviderService.tsservices/favoritesService.tsservices/fitbitService.tsservices/fitImportService.tsservices/foodCoreService.tsservices/foodEntryService.tsservices/foodIntegrationService.tsservices/foodPhotoEstimationService.tsservices/foodPhotoLogService.tsservices/foodPhotoMatchService.tsservices/foodProviderDetailService.tsservices/foodProviderLookupService.tsservices/foodService.tsservices/garmin/garminActivityProcessor.tsservices/garmin/garminExerciseMapper.tsservices/garmin/garminHealthProcessor.tsservices/garmin/garminTelemetryExtractors.tsservices/garminService.tsservices/garminSyncResult.tsservices/glp1Service.tsservices/goalPresetService.tsservices/goalService.tsservices/googleHealthService.tsservices/healthDataHandlers.tsservices/healthMetricSampleWriter.tsservices/hrZoneCalculator.tsservices/hydrationNutritionRangeService.tsservices/hydrationTotalsService.tsservices/labelScanService.tsservices/mealPlanTemplateService.tsservices/mealService.tsservices/measurementService.tsservices/nutrientDisplayPreferenceService.tsservices/nutrientGoalPreferenceService.tsservices/onboardingService.tsservices/openFoodFactsAutoSyncScheduler.tsservices/openFoodFactsAutoSyncService.tsservices/openFoodFactsContributionService.tsservices/openFoodFactsManualContributionService.tsservices/openFoodFactsProductReadRateLimitService.tsservices/openFoodFactsProviderCredentials.tsservices/openFoodFactsSyncSettingsService.tsservices/ouraService.tsservices/passkeyTicketService.tsservices/polarService.tsservices/preferenceService.tsservices/pregnancyService.tsservices/providerSyncScheduler.tsservices/reportService.tsservices/reviewService.tsservices/sleepAnalyticsService.tsservices/sleepScienceService.tsservices/stravaService.tsservices/syncedDataService.tsservices/versionService.tsservices/waterContainerService.tsservices/weeklyGoalPlanService.tsservices/withingsService.tsservices/workoutActivityMapping.tsservices/workoutCoachingService.tsservices/workoutPlanProgression.tsservices/workoutPlanTemplateService.tsservices/workoutPresetService.tsservices/workoutTelemetryDerivation.tsSparkyFitnessServer.tstests/activitySport.test.tstests/adaptiveCoaching.test.tstests/adaptiveTdeeService.test.tstests/adminExternalProviderRoutes.test.tstests/aiServiceConnectionTest.test.tstests/aiUnitConversionService.test.tstests/alcoholNeverAddsCalories.test.tstests/alcoholUnits.test.tstests/alcoholWeekService.test.tstests/allergenPreferenceRoutes.test.tstests/announcementService.test.tstests/apiKeyRoutes.contextSwitch.test.tstests/apiKeySessionCache.test.tstests/appDbCredentials.test.tstests/appDbPasswordReachesPool.test.tstests/appRolePasswordSync.test.tstests/authMiddleware.cache.test.tstests/authRateLimit.test.tstests/authServiceUpdateEmail.test.tstests/authTrustedOrigins.test.tstests/backgroundJobScheduler.test.tstests/backupRescheduling.test.tstests/backupRoutes.download.test.tstests/backupScheduler.test.tstests/backupService.test.tstests/barcodeLookup.test.tstests/barcodeLookupRoute.test.tstests/bearerAuthBridge.test.tstests/betterAuthSchemaCheck.integration.test.tstests/bmrService.test.tstests/bodyCompositionService.test.tstests/bootOrder.test.tstests/caffeineDoseWindow.test.tstests/caffeineKinetics.test.tstests/caffeineKineticsMidnight.test.tstests/calorieBalanceService.test.tstests/calorieCalculations.test.tstests/calorieCalculationService.test.tstests/calorieSafetyFloor.test.tstests/chatbotTestHarness.script.tstests/chatbotToolRepositories.test.tstests/chatbotToolsAllergens.test.tstests/chatbotToolsAsk.test.tstests/chatbotToolsBarcode.test.tstests/chatbotToolsCaching.test.tstests/chatbotToolsCaffeineKinetics.test.tstests/chatbotToolsCheckin.test.tstests/chatbotToolSchemas.test.tstests/chatbotToolsCoach.test.tstests/chatbotToolsCustomNutrients.test.tstests/chatbotToolsDashboard.test.tstests/chatbotToolsEngagement.test.tstests/chatbotToolsExercise.test.tstests/chatbotToolsExerciseStats.test.tstests/chatbotToolsFavorites.test.tstests/chatbotToolsFood.test.tstests/chatbotToolsGoals.test.tstests/chatbotToolsHabits.test.tstests/chatbotToolsIndex.test.tstests/chatbotToolsIntegrations.test.tstests/chatbotToolsMealPlans.test.tstests/chatbotToolsMedications.test.tstests/chatbotToolsMeta.test.tstests/chatbotToolsProfile.test.tstests/chatbotToolsProgressPhotos.test.tstests/chatbotToolsReport.test.tstests/chatbotToolsSleepScience.test.tstests/chatbotToolsSyncedData.test.tstests/chatbotToolsVision.test.tstests/chatbotToolsWaterContainers.test.tstests/chatbotToolsWizard.test.tstests/chatbotToolsWorkoutPlans.test.tstests/chatbotToolUnitConversion.test.tstests/chatProviderOptions.test.tstests/chatRepository.test.tstests/chatService.test.tstests/chatServiceClassifier.test.tstests/check_routes.tstests/checkInPhotoRoutes.test.tstests/checkInPhotoService.test.tstests/checkPermissionMiddleware.test.tstests/contracts/nutrientColumnCoverage.test.tstests/corosMcpText.test.tstests/corosOauthCallback.test.tstests/corosRoutes.test.tstests/corosService.test.tstests/corosSync.test.tstests/corsHelper.test.tstests/customNutrientCatalog.test.tstests/customNutrientDeleteCleanup.test.tstests/customNutrientMatching.test.tstests/cycleCorrelations.test.tstests/cycleFertility.test.tstests/cyclePredictions.test.tstests/cycleRepository.test.tstests/cycleRoutes.test.tstests/cycleTtcRoutes.test.tstests/dailySummaryRangeService.test.tstests/dailySummaryRoutes.range.test.tstests/dailySummaryService.test.tstests/dailySummarySupplements.test.tstests/dashboardLayoutRepository.test.tstests/dashboardLayoutService.test.tstests/dashboardService.test.tstests/dateColumnParser.test.tstests/dateShifting.test.tstests/demoPasswordResetGuard.test.tstests/demoSeedService.test.tstests/drinkPresetMaterialization.test.tstests/dropSetCalculator.test.tstests/emailLogin.test.tstests/emailService.test.tstests/entryTime.test.tstests/exerciseActiveCalories.test.tstests/exerciseAlternativesRanking.test.tstests/exerciseAlternativesRoutes.test.tstests/exerciseAlternativesService.test.tstests/exerciseCalorieRangeService.test.tstests/exerciseEntriesApiSchemas.test.tstests/exerciseEntry.activityDetail.test.tstests/exerciseEntry.sourcePreservation.test.tstests/exerciseEntry.vanishedParent.test.tstests/exerciseEntryActiveCaloriesNotes.test.tstests/exerciseEntryGarminCleanup.test.tstests/exerciseEntryHistoryService.supersetGroup.test.tstests/exerciseEntryRoutes.distanceClear.test.tstests/exerciseEntryRoutes.duplicateCheck.test.tstests/exerciseEntryRoutes.progress.test.tstests/exerciseEntryRoutes.watchTelemetry.test.tstests/exerciseEntryService.csvImport.test.tstests/exerciseEntryService.watchTelemetry.test.tstests/exerciseEntryStats.integration.test.tstests/exerciseImportDedup.test.tstests/exerciseJsonFields.test.tstests/exerciseModality.test.tstests/exerciseMuscleAggregates.test.tstests/exercisePresetCascade.integration.test.tstests/exercisePresetEntryRoutes.test.tstests/exerciseRepository.arrayFieldNormalization.test.tstests/exerciseRepository.script.tstests/exerciseRoutes.write.test.tstests/exerciseRoutesV2.test.tstests/exercisesApiSchemas.test.tstests/exerciseSearch.test.tstests/exerciseService.distanceDerivation.test.tstests/exerciseService.groupedWorkouts.test.tstests/exerciseService.imagesEncoding.test.tstests/exerciseService.searchExternal.test.tstests/exerciseService.stats.test.tstests/exerciseSourceScoping.test.tstests/exerciseStatsRoutes.test.tstests/exerciseStatsService.test.tstests/externalFoodSearchService.fatsecret.test.tstests/externalFoodSearchService.openFoodFacts.test.tstests/externalProviderRepository.baseUrl.test.tstests/externalProviderRepository.credentials.test.tstests/externalProviderRoutes.actorContext.test.tstests/externalProviderSchemas.test.tstests/externalProviderService.openFoodFactsConsent.test.tstests/externalProviderService.test.tstests/fastingRoutes.test.tstests/fatsecretService.test.tstests/favoritesRoutes.test.tstests/favoritesService.test.tstests/findFoodByBarcode.test.tstests/fitActivityTransform.test.tstests/fitbitDataProcessor.test.tstests/fitImportRoutes.test.tstests/fitImportService.test.tstests/fixtures/generateFitFixture.tstests/fixtures/tennis-activity.fittests/foodBulkImportOverwrite.test.tstests/foodCoreService.test.tstests/foodCoreService.updateSnapshot.test.tstests/foodDefaultVariantQueries.test.tstests/foodDeletionImpact.test.tstests/foodDerivedWaterQuery.test.tstests/foodDiaryImport.test.tstests/foodEntryCopy.test.tstests/foodEntryCopyFingerprint.test.tstests/foodEntryLinkedWaterPropagation.test.tstests/foodEntryMealRepository.test.tstests/foodEntryMealRoutes.create.test.tstests/foodEntryMealService.test.tstests/foodEntrySelectedCopy.test.tstests/foodEntrySelectedCopyRoute.test.tstests/foodEntrySelectedCopySchema.test.tstests/foodEntryService.snapshot.test.tstests/foodEntrySnapshot.test.tstests/foodEntryTime.test.tstests/foodEntryUnitReconcile.test.tstests/foodEntryWholeCopy.test.tstests/foodEntryWholeCopyRepository.test.tstests/foodEntryWholeCopyRoute.test.tstests/foodEntryWholeCopySchema.test.tstests/foodFavoritesQuery.test.tstests/foodFavoritesService.test.tstests/foodIntegrationService.fatsecret.test.tstests/foodNotes.test.tstests/foodOptionsRoute.test.tstests/foodOptionsService.test.tstests/foodPhotoContracts.test.tstests/foodPhotoEstimateMath.test.tstests/foodPhotoEstimationRoute.test.tstests/foodPhotoEstimationService.test.tstests/foodPhotoLogRoute.test.tstests/foodPhotoLogService.test.tstests/foodPhotoMatchService.test.tstests/foodRefreshFromSourceRoute.test.tstests/foodRoutesV2.test.tstests/foodSchemas.test.tstests/foodSearch.test.tstests/foodSorting.test.tstests/foodUpdateSnapshotRoute.test.tstests/foodUtilsNutritionScale.test.tstests/forwardResponseHeaders.test.tstests/freeExerciseDBSearch.test.tstests/garminActivityProcessor.transaction.test.tstests/garminChunkingAndStrengthFallback.test.tstests/garminConnectErrorFormatter.test.tstests/garminHealthProcessor.wellness.test.tstests/garminIncrementalSync.test.tstests/garminMeasurementMapping.test.tstests/garminNutritionSync.integration.test.tstests/garminNutritionSync.test.tstests/garminRoutes.test.tstests/garminService.workoutDefinitionWeights.test.tstests/garminService.workoutSets.test.tstests/garminSyncResult.test.tstests/genericHealthRepository.test.tstests/genericHealthSchemas.test.tstests/gestation.test.tstests/globalSettingsFailClosed.test.tstests/globalSettingsRepository.test.tstests/globalSettingsRoutes.test.tstests/glp1Logic.test.tstests/glp1Service.test.tstests/goalModePercentageSignMigration.test.tstests/goalPresetRoutes.test.tstests/goalPresetService.test.tstests/goalRepository.test.tstests/goalServiceAdaptiveMaturity.test.tstests/googleHealthDataProcessor.test.tstests/googleHealthParsers.test.tstests/googlehealthRoutes.test.tstests/guidedWorkoutCues.test.tstests/healthConnectTotalCaloriesCaptureMigration.test.tstests/healthDataHandlers.test.tstests/healthDataRoutes.test.tstests/healthMetricSampleWriter.test.tstests/healthResyncTelemetryPreservation.test.tstests/helpers/mockDbClient.tstests/helpers/toolExecutionOptions.tstests/hevyDataProcessor.test.tstests/hrZoneCalculator.test.tstests/hydrationNutritionRange.test.tstests/hydrationTotalsService.test.tstests/imageDownloader.test.tstests/imageLocalizer.test.tstests/imageOrder.test.tstests/initializeDatabase.integration.test.tstests/initializeDatabase.test.tstests/injectionRepository.test.tstests/integrationRoutesPermissionGating.test.tstests/intervalEngine.test.tstests/labelScanRoute.test.tstests/labelScanService.test.tstests/libraryDeletePreservesDiary.test.tstests/liftosaurDataProcessor.test.tstests/liftosaurMeasurementsService.test.tstests/liftosaurParser.test.tstests/liftosaurRoutes.test.tstests/liftosaurSync.test.tstests/logging.test.tstests/mcpProtocolVersion.test.tstests/mcpRoutes.test.tstests/mealieService.test.tstests/mealPlanTemplateService.test.tstests/mealRepository.test.tstests/mealRoutes.test.tstests/mealSearch.test.tstests/mealService.test.tstests/mealServiceFromDiary.test.tstests/mealTypeDefaultTime.test.tstests/mealTypeDelete.test.tstests/mealTypeRoutes.delete.test.tstests/measurementImportRoutes.test.tstests/measurementRepository.bulkCheckInMeasurements.test.tstests/measurementRepository.bulkCustomMeasurements.test.tstests/measurementRepository.customMetricTimestamp.test.tstests/measurementRepository.test.tstests/measurementRepository.water.test.tstests/measurementRoutes.test.tstests/measurementSchemas.checkIn.test.tstests/measurementService.categoryDisplayName.test.tstests/measurementService.checkInDelete.test.tstests/measurementService.healthConnectNutrition.test.tstests/measurementService.healthConnectSleepStages.test.tstests/measurementService.healthDataContract.test.tstests/measurementService.healthDataUnits.test.tstests/measurementService.sleepPrimaryCluster.test.tstests/measurementService.sleepResyncMerge.test.tstests/measurementService.smartScaleComposition.test.tstests/measurementService.timezone.test.tstests/measurementService.waterIntake.test.tstests/measurementService.zeroValueFiltering.test.tstests/medicationEntryRepository.test.tstests/medicationRepository.test.tstests/medicationRoutes.test.tstests/medicationSchemas.zod.test.tstests/migrate.script.tstests/mockDataContext.test.tstests/mockDataOptions.test.tstests/modelCapabilities.test.tstests/moodTags.test.tstests/norishService.test.tstests/normalizeExerciseJsonArrayFields.integration.test.tstests/nutrientDisplayPreferenceService.test.tstests/nutrientGoalPreferenceRepository.test.tstests/nutrientGoalPreferenceRoutes.test.tstests/nutrientGoalPreferenceService.test.tstests/oauthState.test.tstests/oidcEnvConfig.test.tstests/oidcGroupSync.test.tstests/oidcProviderRepository.integration.test.tstests/oidcProviderRepository.test.tstests/oidcSettingsRoutes.test.tstests/ollamaToolProfile.script.tstests/onboardingRoutes.test.tstests/openFoodFactsAlcohol.test.tstests/openFoodFactsAuth.test.tstests/openFoodFactsAutomaticSyncDatabaseSchemas.test.tstests/openFoodFactsAutomaticSyncMigration.integration.test.tstests/openFoodFactsAutomaticSyncRelease.test.tstests/openFoodFactsAutoSyncScheduler.test.tstests/openFoodFactsAutoSyncService.test.tstests/openFoodFactsContribution.test.tstests/openFoodFactsContributionRoutes.test.tstests/openFoodFactsContributionService.test.tstests/openFoodFactsLanguage.test.tstests/openFoodFactsManualContribution.test.tstests/openFoodFactsPhoto.test.tstests/openFoodFactsProductReadRateLimitRepository.test.tstests/openFoodFactsProductReadRateLimitService.test.tstests/openFoodFactsService.test.tstests/openFoodFactsSyncQueueRepository.test.tstests/openFoodFactsSyncSettingsRoutes.test.tstests/openFoodFactsSyncSettingsService.test.tstests/ouraDataProcessor.test.tstests/ouraRoutes.test.tstests/ouraService.test.tstests/outboundHttp.test.tstests/outboundProxy.test.tstests/outboundUrlPolicy.test.tstests/permissionUtils.test.tstests/polarActivityDedup.test.tstests/polarDataProcessor.test.tstests/polarOauthCallback.test.tstests/poolContext.test.tstests/poolIdleErrors.test.tstests/preferenceChartScaleMode.test.tstests/preferenceRepository.openFoodFacts.test.tstests/preferenceRepository.test.tstests/preferenceSafetyFloor.test.tstests/preflightPlaceholderSecrets.test.tstests/pregnancyPhotoService.test.tstests/pregnancyRoutes.test.tstests/progressionEngine.test.tstests/providerDispatch.test.tstests/providerSyncScheduler.test.tstests/pullWorkoutProgression.test.tstests/quickAddNeverPrimary.test.tstests/reportRangeCols.test.tstests/reportRepository.customNutrients.test.tstests/reportRepository.downsample.test.tstests/reportRepository.getExerciseEntries.test.tstests/reportSupplementScaling.test.tstests/reportWodPrExclusion.test.tstests/resolveMealTypeIdWithClient.test.tstests/resolveTemplateStartDay.test.tstests/rlsPermissionMatrix.integration.test.tstests/schedules.test.tstests/schemaConnections.test.tstests/schemaParity.integration.test.tstests/secretLoader.script.tstests/secretLoader.test.tstests/setsDurationMinutes.test.tstests/signOutCookieCleanup.test.tstests/sleepRepository.placeholders.test.tstests/sleepRepository.remainderKey.test.tstests/sleepScienceService.midnightBedtime.test.tstests/sleepScienceService.recordZone.test.tstests/stravaActivityDetailCleanup.integration.test.tstests/stravaDataProcessor.test.tstests/supplementSqlDedup.test.tstests/swagger.test.tstests/swissFoodService.test.tstests/switchContextCookie.test.tstests/symptoms.test.tstests/syncedDataRepository.test.tstests/syncedDataRoutes.test.tstests/tandoorService.test.tstests/telemetryExtractors.laps.test.tstests/timezone.test.tstests/toolResultTruncation.test.tstests/truncationPagination.test.tstests/twoFactorState.test.tstests/unitConversion.test.tstests/updateEmailRoute.test.tstests/updateFoodBarcode.test.tstests/uploadsStaticMount.test.tstests/usdaAlcohol.test.tstests/usdaService.test.tstests/userRepositoryCredentialAccountId.test.tstests/visionToolsLogPhoto.test.tstests/volumeUnitToMl.test.tstests/waterContainerFoodLink.test.tstests/waterContainerRepository.test.tstests/waterContainerRoutes.test.tstests/waterEstimatedGoalAdjustment.test.tstests/waterGoalExclusivity.test.tstests/waterIntakeFoodLinkSchema.test.tstests/waterIntakeLinkedDecrement.test.tstests/waterIntakeRoutes.test.tstests/webLoginRoutes.test.tstests/weightRamp.test.tstests/withingsDataProcessor.test.tstests/withingsOauthCallback.test.tstests/withingsTokenResponse.test.tstests/workoutActivityMapping.test.tstests/workoutCoachingRoutes.test.tstests/workoutCoachingService.test.tstests/workoutDaysRoute.test.tstests/workoutFeedbackForm.test.tstests/workoutHandlerTelemetry.test.tstests/workoutPlanProgression.test.tstests/workoutPlanTemplateService.test.tstests/workoutPresetRepository.supersetGroup.test.tstests/workoutPresetRoutes.validation.test.tstests/workoutPresetSearch.test.tstests/workoutPresetService.ownership.test.tstests/workoutTelemetryDerivation.test.tstests/yazioService.test.tstests/zeroHydrationFactorPreset.test.tstsconfig.jsontypes/express.d.tstypes/externalProvider.tstypes/garmin-fitsdk.d.tstypes/garmin.tstypes/goals.tstypes/nutrition.tstypes/wger.tstypes/withings.tsutils/adminCheck.tsutils/apiKeySessionCache.tsutils/applyRlsPolicies.tsutils/backfillAllergens.tsutils/bearerAuthBridge.tsutils/boundedMap.tsutils/clientIp.tsutils/corsHelper.tsutils/dateHelpers.tsutils/dbMigrations.tsutils/dbSearchHelper.tsutils/diagnosticLogger.tsutils/emailLogin.tsutils/env.tsutils/errors.tsutils/exerciseAlternativesRanking.tsutils/exerciseJsonFields.tsutils/expoSsoCookieRelay.tsutils/foodEntrySnapshot.tsutils/foodRanking.tsutils/foodUtils.tsutils/forwardResponseHeaders.tsutils/imageDownloader.tsutils/imageLocalizer.tsutils/initializeDatabase.tsutils/mockDataContext.tsutils/mockDataOptions.tsutils/oauthState.tsutils/oidcEnvConfig.tsutils/oidcGroupSync.tsutils/outboundHttp.tsutils/outboundProxy.tsutils/outboundUrlPolicy.tsutils/permissionUtils.tsutils/preflightChecks.tsutils/scheduledJobs.tsutils/secretLoader.tsutils/sleepStageAggregates.tsutils/timezoneLoader.tsutils/ttlCache.tsutils/twoFactorState.tsutils/uploads/exercises/90_90_Hamstring/0.jpgutils/uploads/exercises/90_90_Hamstring/1.jpgutils/uploads/exercises/Adductor/0.jpgutils/uploads/exercises/Adductor/1.jpgutils/uploadsPath.tsutils/uuidUtils.tsvalidation/authValidation.tsvitest.config.tsAll matched files use Prettier code style!590591> sparkyfitnessserver@1.7.3 test /build/source/SparkyFitnessServer592> vitest run593594◇ injected env (0) from ../.env // tip: ⌘ enable debugging { debug: true }595(!) Your Vite config uses features that are unsupported by `configLoader: 'native'`, which is planned to become the default in a future major version of Vite:596 - `__dirname` (vitest.config.ts:7:36). Use `import.meta.dirname` instead597Set `VITE_CONFIG_NATIVE_IGNORE_WARNING=true` to suppress this warning.598599 RUN v5.0.0 /build/source/SparkyFitnessServer600601602 ❯ tests/rlsPermissionMatrix.integration.test.ts [queued]603604 Test Files 0 passed (434)605 Tests 0 passed (0)606 Start at 11:46:07607 Duration 341ms608609 ❯ tests/adaptiveTdeeService.test.ts [queued]610 ❯ tests/barcodeLookup.test.ts [queued]611 ❯ tests/chatbotToolRepositories.test.ts [queued]612 ❯ tests/chatbotToolsCheckin.test.ts [queued]613 ❯ tests/chatbotToolSchemas.test.ts [queued]614 ❯ tests/chatbotToolsCoach.test.ts [queued]615 ❯ tests/chatbotToolsExercise.test.ts [queued]616 ❯ tests/chatbotToolsFood.test.ts [queued]617 ❯ tests/chatbotToolsWorkoutPlans.test.ts [queued]618 ❯ tests/chatService.test.ts [queued]619 ❯ tests/dailySummaryService.test.ts [queued]620 ❯ tests/exerciseEntriesApiSchemas.test.ts [queued]621 ❯ tests/exerciseEntryStats.integration.test.ts [queued]622 ❯ tests/exerciseService.groupedWorkouts.test.ts [queued]623 ❯ tests/exerciseStatsService.test.ts [queued]624 ❯ tests/externalProviderService.test.ts [queued]625 ❯ tests/foodCoreService.test.ts [queued]626 ❯ tests/foodCoreService.updateSnapshot.test.ts [queued]627 ❯ tests/foodEntryCopy.test.ts [queued]628 ❯ tests/foodPhotoEstimationService.test.ts [queued]629 ❯ tests/foodPhotoMatchService.test.ts [queued]630 ❯ tests/mcpRoutes.test.ts [queued]631 ❯ tests/mealRepository.test.ts [queued]632 ❯ tests/mealService.test.ts [queued]633 ❯ tests/measurementService.sleepResyncMerge.test.ts [queued]634 ❯ tests/measurementService.waterIntake.test.ts [queued]635 ❯ tests/medicationRoutes.test.ts [queued]636 ❯ tests/oidcProviderRepository.integration.test.ts [queued]637 ❯ tests/openFoodFactsAuth.test.ts [queued]638 ❯ tests/openFoodFactsAutomaticSyncMigration.integration.test.ts [queued]639 ❯ tests/openFoodFactsContribution.test.ts [queued]640 ❯ tests/openFoodFactsContributionService.test.ts [queued]641 ❯ tests/openFoodFactsService.test.ts [queued]642 ❯ tests/polarDataProcessor.test.ts [queued]643 ❯ tests/providerDispatch.test.ts [queued]644 ❯ tests/rlsPermissionMatrix.integration.test.ts [queued]645 ❯ tests/timezone.test.ts [queued]646 ❯ tests/waterIntakeRoutes.test.ts [queued]647 ❯ tests/yazioService.test.ts [queued]648649 Test Files 0 passed (434)650 Tests 0 passed (0)651 Start at 11:46:07652 Duration 449ms653654 ❯ tests/adaptiveTdeeService.test.ts [queued]655 ❯ tests/barcodeLookup.test.ts [queued]656 ❯ tests/calorieBalanceService.test.ts [queued]657 ❯ tests/chatbotToolRepositories.test.ts [queued]658 ❯ tests/chatbotToolsCheckin.test.ts [queued]659 ❯ tests/chatbotToolSchemas.test.ts [queued]660 ❯ tests/chatbotToolsCoach.test.ts [queued]661 ❯ tests/chatbotToolsExercise.test.ts [queued]662 ❯ tests/chatbotToolsFood.test.ts [queued]663 ❯ tests/chatbotToolsWorkoutPlans.test.ts [queued]664 ❯ tests/chatService.test.ts [queued]665 ❯ tests/dailySummaryRangeService.test.ts [queued]666 ❯ tests/dailySummaryService.test.ts [queued]667 ❯ tests/demoSeedService.test.ts [queued]668 ❯ tests/exerciseEntriesApiSchemas.test.ts [queued]669 ❯ tests/exerciseEntryStats.integration.test.ts [queued]670 ❯ tests/exercisePresetEntryRoutes.test.ts [queued]671 ❯ tests/exerciseService.groupedWorkouts.test.ts [queued]672 ❯ tests/exerciseStatsService.test.ts [queued]673 ❯ tests/externalProviderService.test.ts [queued]674 ❯ tests/foodCoreService.test.ts [queued]675 ❯ tests/foodCoreService.updateSnapshot.test.ts [queued]676 ❯ tests/foodEntryCopy.test.ts [queued]677 ❯ tests/foodEntryMealService.test.ts [queued]678 ❯ tests/foodPhotoEstimationService.test.ts [queued]679 ❯ tests/foodPhotoMatchService.test.ts [queued]680 ❯ tests/mcpRoutes.test.ts [queued]681 ❯ tests/mealRepository.test.ts [queued]682 ❯ tests/mealRoutes.test.ts [queued]683 ❯ tests/mealService.test.ts [queued]684 ❯ tests/measurementService.sleepResyncMerge.test.ts [queued]685 ❯ tests/measurementService.waterIntake.test.ts [queued]686 ❯ tests/medicationRoutes.test.ts [queued]687 ❯ tests/oidcProviderRepository.integration.test.ts [queued]688 ❯ tests/openFoodFactsAuth.test.ts [queued]689 ❯ tests/openFoodFactsAutomaticSyncMigration.integration.test.ts [queued]690 ❯ tests/openFoodFactsContribution.test.ts [queued]691 ❯ tests/openFoodFactsContributionService.test.ts [queued]692 ❯ tests/openFoodFactsService.test.ts [queued]693 ❯ tests/polarDataProcessor.test.ts [queued]694 ❯ tests/providerDispatch.test.ts [queued]695 ❯ tests/rlsPermissionMatrix.integration.test.ts [queued]696 ❯ tests/timezone.test.ts [queued]697 ❯ tests/waterIntakeLinkedDecrement.test.ts [queued]698 ❯ tests/waterIntakeRoutes.test.ts [queued]699 ❯ tests/workoutHandlerTelemetry.test.ts [queued]700 ❯ tests/yazioService.test.ts [queued]701702 Test Files 0 passed (434)703 Tests 0 passed (0)704 Start at 11:46:07705 Duration 907ms706707 ❯ tests/adaptiveTdeeService.test.ts [queued]708 ❯ tests/barcodeLookup.test.ts [queued]709 ❯ tests/calorieBalanceService.test.ts [queued]710 ❯ tests/chatbotToolRepositories.test.ts [queued]711 ❯ tests/chatbotToolsCheckin.test.ts [queued]712 ❯ tests/chatbotToolSchemas.test.ts [queued]713 ❯ tests/chatbotToolsCoach.test.ts [queued]714 ❯ tests/chatbotToolsExercise.test.ts [queued]715 ❯ tests/chatbotToolsFood.test.ts [queued]716 ❯ tests/chatbotToolsWorkoutPlans.test.ts [queued]717 ❯ tests/chatService.test.ts [queued]718 ❯ tests/dailySummaryRangeService.test.ts [queued]719 ❯ tests/dailySummaryService.test.ts [queued]720 ❯ tests/demoSeedService.test.ts [queued]721 ❯ tests/exerciseEntriesApiSchemas.test.ts 1/45722 ❯ tests/exerciseEntryStats.integration.test.ts [queued]723 ❯ tests/exercisePresetEntryRoutes.test.ts [queued]724 ❯ tests/exerciseService.groupedWorkouts.test.ts [queued]725 ❯ tests/exerciseStatsService.test.ts [queued]726 ❯ tests/externalProviderService.test.ts [queued]727 ❯ tests/foodCoreService.test.ts [queued]728 ❯ tests/foodCoreService.updateSnapshot.test.ts [queued]729 ❯ tests/foodEntryCopy.test.ts [queued]730 ❯ tests/foodEntryMealService.test.ts [queued]731 ❯ tests/foodPhotoEstimationService.test.ts [queued]732 ❯ tests/foodPhotoMatchService.test.ts [queued]733 ❯ tests/mcpRoutes.test.ts [queued]734 ❯ tests/mealRepository.test.ts [queued]735 ❯ tests/mealRoutes.test.ts [queued]736 ❯ tests/mealService.test.ts [queued]737 ❯ tests/measurementService.sleepResyncMerge.test.ts [queued]738 ❯ tests/measurementService.waterIntake.test.ts [queued]739 ❯ tests/medicationRoutes.test.ts [queued]740 ❯ tests/oidcProviderRepository.integration.test.ts [queued]741 ❯ tests/openFoodFactsAuth.test.ts [queued]742 ❯ tests/openFoodFactsAutomaticSyncMigration.integration.test.ts [queued]743 ❯ tests/openFoodFactsContribution.test.ts [queued]744 ❯ tests/openFoodFactsContributionService.test.ts [queued]745 ❯ tests/openFoodFactsService.test.ts [queued]746 ❯ tests/polarDataProcessor.test.ts [queued]747 ❯ tests/providerDispatch.test.ts [queued]748 ❯ tests/rlsPermissionMatrix.integration.test.ts [queued]749 ❯ tests/timezone.test.ts [queued]750 ❯ tests/waterIntakeLinkedDecrement.test.ts [queued]751 ❯ tests/waterIntakeRoutes.test.ts [queued]752 ❯ tests/workoutHandlerTelemetry.test.ts [queued]753 ❯ tests/yazioService.test.ts [queued]754755 Test Files 0 passed (434)756 Tests 1 passed (45)757 Start at 11:46:07758 Duration 1.35s759stdout | tests/openFoodFactsAutomaticSyncMigration.integration.test.ts760◇ injected env (0) from ../.env // tip: ⌘ enable debugging { debug: true }761[Secrets] Checking for secret files to load...762[Secrets] No secrets loaded from files.763764765 ❯ tests/adaptiveTdeeService.test.ts [queued]766 ❯ tests/barcodeLookup.test.ts [queued]767 ❯ tests/calorieBalanceService.test.ts [queued]768 ❯ tests/chatbotToolRepositories.test.ts [queued]769 ❯ tests/chatbotToolsCheckin.test.ts [queued]770 ❯ tests/chatbotToolSchemas.test.ts [queued]771 ❯ tests/chatbotToolsCoach.test.ts [queued]772 ❯ tests/chatbotToolsExercise.test.ts [queued]773 ❯ tests/chatbotToolsFood.test.ts [queued]774 ❯ tests/chatbotToolsWorkoutPlans.test.ts [queued]775 ❯ tests/chatService.test.ts [queued]776 ❯ tests/dailySummaryRangeService.test.ts [queued]777 ❯ tests/dailySummaryService.test.ts [queued]778 ❯ tests/demoSeedService.test.ts [queued]779 ❯ tests/exerciseEntriesApiSchemas.test.ts 2/45780 ❯ tests/exerciseEntryStats.integration.test.ts [queued]781 ❯ tests/exercisePresetEntryRoutes.test.ts [queued]782 ❯ tests/exerciseService.groupedWorkouts.test.ts [queued]783 ❯ tests/exerciseStatsService.test.ts [queued]784 ❯ tests/externalProviderService.test.ts [queued]785 ❯ tests/foodCoreService.test.ts [queued]786 ❯ tests/foodCoreService.updateSnapshot.test.ts [queued]787 ❯ tests/foodEntryCopy.test.ts [queued]788 ❯ tests/foodEntryMealService.test.ts [queued]789 ❯ tests/foodPhotoEstimationService.test.ts [queued]790 ❯ tests/foodPhotoMatchService.test.ts [queued]791 ❯ tests/mcpRoutes.test.ts [queued]792 ❯ tests/mealRepository.test.ts [queued]793 ❯ tests/mealRoutes.test.ts [queued]794 ❯ tests/mealService.test.ts [queued]795 ❯ tests/measurementService.sleepResyncMerge.test.ts [queued]796 ❯ tests/measurementService.waterIntake.test.ts [queued]797 ❯ tests/medicationRoutes.test.ts [queued]798 ❯ tests/oidcProviderRepository.integration.test.ts [queued]799 ❯ tests/openFoodFactsAuth.test.ts [queued]800 ❯ tests/openFoodFactsAutomaticSyncMigration.integration.test.ts [queued]801 ❯ tests/openFoodFactsContribution.test.ts [queued]802 ❯ tests/openFoodFactsContributionService.test.ts [queued]803 ❯ tests/openFoodFactsService.test.ts [queued]804 ❯ tests/polarDataProcessor.test.ts [queued]805 ❯ tests/providerDispatch.test.ts [queued]806 ❯ tests/rlsPermissionMatrix.integration.test.ts [queued]807 ❯ tests/timezone.test.ts [queued]808 ❯ tests/waterIntakeLinkedDecrement.test.ts [queued]809 ❯ tests/waterIntakeRoutes.test.ts [queued]810 ❯ tests/workoutHandlerTelemetry.test.ts [queued]811 ❯ tests/yazioService.test.ts [queued]812813 Test Files 0 passed (434)814 Tests 2 passed (45)815 Start at 11:46:07816 Duration 1.55s817stderr | tests/openFoodFactsAutomaticSyncMigration.integration.test.ts818[Secrets] WARNING: File specified in SSL_CERT_FILE (/no-cert-file.crt) not found.819[Secrets] WARNING: File specified in NIX_SSL_CERT_FILE (/no-cert-file.crt) not found.820821822 ❯ tests/adaptiveTdeeService.test.ts [queued]823 ❯ tests/barcodeLookup.test.ts [queued]824 ❯ tests/calorieBalanceService.test.ts [queued]825 ❯ tests/chatbotToolRepositories.test.ts [queued]826 ❯ tests/chatbotToolsCheckin.test.ts [queued]827 ❯ tests/chatbotToolSchemas.test.ts [queued]828 ❯ tests/chatbotToolsCoach.test.ts [queued]829 ❯ tests/chatbotToolsExercise.test.ts [queued]830 ❯ tests/chatbotToolsFood.test.ts [queued]831 ❯ tests/chatbotToolsWorkoutPlans.test.ts [queued]832 ❯ tests/chatService.test.ts [queued]833 ❯ tests/dailySummaryRangeService.test.ts [queued]834 ❯ tests/dailySummaryService.test.ts [queued]835 ❯ tests/demoSeedService.test.ts [queued]836 ❯ tests/exerciseEntriesApiSchemas.test.ts 2/45837 ❯ tests/exerciseEntryStats.integration.test.ts [queued]838 ❯ tests/exercisePresetEntryRoutes.test.ts [queued]839 ❯ tests/exerciseService.groupedWorkouts.test.ts [queued]840 ❯ tests/exerciseStatsService.test.ts [queued]841 ❯ tests/externalProviderService.test.ts [queued]842 ❯ tests/foodCoreService.test.ts [queued]843 ❯ tests/foodCoreService.updateSnapshot.test.ts [queued]844 ❯ tests/foodEntryCopy.test.ts [queued]845 ❯ tests/foodEntryMealService.test.ts [queued]846 ❯ tests/foodPhotoEstimationService.test.ts [queued]847 ❯ tests/foodPhotoMatchService.test.ts [queued]848 ❯ tests/mcpRoutes.test.ts [queued]849 ❯ tests/mealRepository.test.ts [queued]850 ❯ tests/mealRoutes.test.ts [queued]851 ❯ tests/mealService.test.ts [queued]852 ❯ tests/measurementService.sleepResyncMerge.test.ts [queued]853 ❯ tests/measurementService.waterIntake.test.ts [queued]854 ❯ tests/medicationRoutes.test.ts [queued]855 ❯ tests/oidcProviderRepository.integration.test.ts [queued]856 ❯ tests/openFoodFactsAuth.test.ts [queued]857 ❯ tests/openFoodFactsAutomaticSyncMigration.integration.test.ts [queued]858 ❯ tests/openFoodFactsContribution.test.ts [queued]859 ❯ tests/openFoodFactsContributionService.test.ts [queued]860 ❯ tests/openFoodFactsService.test.ts [queued]861 ❯ tests/polarDataProcessor.test.ts [queued]862 ❯ tests/providerDispatch.test.ts [queued]863 ❯ tests/rlsPermissionMatrix.integration.test.ts [queued]864 ❯ tests/timezone.test.ts [queued]865 ❯ tests/waterIntakeLinkedDecrement.test.ts [queued]866 ❯ tests/waterIntakeRoutes.test.ts [queued]867 ❯ tests/workoutHandlerTelemetry.test.ts [queued]868 ❯ tests/yazioService.test.ts [queued]869870 Test Files 0 passed (434)871 Tests 2 passed (45)872 Start at 11:46:07873 Duration 1.55s874875 ❯ tests/adaptiveTdeeService.test.ts [queued]876 ❯ tests/barcodeLookup.test.ts [queued]877 ❯ tests/calorieBalanceService.test.ts [queued]878 ❯ tests/chatbotToolRepositories.test.ts [queued]879 ❯ tests/chatbotToolsCheckin.test.ts [queued]880 ❯ tests/chatbotToolSchemas.test.ts [queued]881 ❯ tests/chatbotToolsCoach.test.ts [queued]882 ❯ tests/chatbotToolsExercise.test.ts [queued]883 ❯ tests/chatbotToolsFood.test.ts [queued]884 ❯ tests/chatbotToolsWorkoutPlans.test.ts [queued]885 ❯ tests/chatService.test.ts [queued]886 ❯ tests/dailySummaryRangeService.test.ts [queued]887 ❯ tests/dailySummaryService.test.ts [queued]888 ❯ tests/demoSeedService.test.ts [queued]889 ❯ tests/exerciseEntriesApiSchemas.test.ts 2/45890 ❯ tests/exerciseEntryStats.integration.test.ts [queued]891 ❯ tests/exercisePresetEntryRoutes.test.ts 0/8892 ❯ tests/exerciseService.groupedWorkouts.test.ts [queued]893 ❯ tests/exerciseStatsService.test.ts [queued]894 ❯ tests/externalProviderService.test.ts [queued]895 ❯ tests/foodCoreService.test.ts [queued]896 ❯ tests/foodCoreService.updateSnapshot.test.ts [queued]897 ❯ tests/foodEntryCopy.test.ts [queued]898 ❯ tests/foodEntryMealService.test.ts [queued]899 ❯ tests/foodPhotoEstimationService.test.ts [queued]900 ❯ tests/foodPhotoMatchService.test.ts [queued]901 ❯ tests/mcpRoutes.test.ts [queued]902 ❯ tests/mealRepository.test.ts [queued]903 ❯ tests/mealRoutes.test.ts [queued]904 ❯ tests/mealService.test.ts [queued]905 ❯ tests/measurementService.sleepResyncMerge.test.ts [queued]906 ❯ tests/measurementService.waterIntake.test.ts [queued]907 ❯ tests/medicationRoutes.test.ts [queued]908 ❯ tests/oidcProviderRepository.integration.test.ts [queued]909 ❯ tests/openFoodFactsAuth.test.ts [queued]910 ❯ tests/openFoodFactsAutomaticSyncMigration.integration.test.ts [queued]911 ❯ tests/openFoodFactsContribution.test.ts 1/20912 ❯ tests/openFoodFactsContributionService.test.ts [queued]913 ❯ tests/openFoodFactsService.test.ts [queued]914 ❯ tests/polarDataProcessor.test.ts [queued]915 ❯ tests/providerDispatch.test.ts [queued]916 ❯ tests/rlsPermissionMatrix.integration.test.ts [queued]917 ❯ tests/timezone.test.ts [queued]918 ❯ tests/waterIntakeLinkedDecrement.test.ts [queued]919 ❯ tests/waterIntakeRoutes.test.ts [queued]920 ❯ tests/workoutHandlerTelemetry.test.ts [queued]921 ❯ tests/yazioService.test.ts [queued]922923 Test Files 0 passed (434)924 Tests 3 passed (73)925 Start at 11:46:07926 Duration 1.65s927 ✓ tests/openFoodFactsContribution.test.ts (20 tests) 38ms928 ✓ tests/exercisePresetEntryRoutes.test.ts (8 tests) 31ms929 ↓ tests/openFoodFactsAutomaticSyncMigration.integration.test.ts (26 tests | 26 skipped)930stdout | tests/providerDispatch.test.ts > dispatchAiRequest — preconditions > transcodes HEIC to JPEG and dispatches it931[2026-09-30T11:46:09.672Z] [INFO] providerDispatch: HEIC->JPEG transcode ok in 0ms (5B HEIC -> 4B JPEG)932933stdout | tests/providerDispatch.test.ts > dispatchAiRequest — preconditions > transcodes when the bytes are really HEIC even if the client mislabels the mime934[2026-09-30T11:46:09.674Z] [INFO] providerDispatch: HEIC->JPEG transcode ok in 0ms (12B HEIC -> 4B JPEG)935936937 ❯ tests/adaptiveTdeeService.test.ts [queued]938 ❯ tests/barcodeLookup.test.ts [queued]939 ❯ tests/calorieBalanceService.test.ts [queued]940 ❯ tests/chatbotToolRepositories.test.ts [queued]941 ❯ tests/chatbotToolsCheckin.test.ts [queued]942 ❯ tests/chatbotToolSchemas.test.ts [queued]943 ❯ tests/chatbotToolsCoach.test.ts [queued]944 ❯ tests/chatbotToolsExercise.test.ts [queued]945 ❯ tests/chatbotToolsFood.test.ts [queued]946 ❯ tests/chatbotToolsWorkoutPlans.test.ts [queued]947 ❯ tests/chatService.test.ts [queued]948 ❯ tests/dailySummaryRangeService.test.ts [queued]949 ❯ tests/dailySummaryService.test.ts [queued]950 ❯ tests/demoSeedService.test.ts [queued]951 ❯ tests/exerciseEntriesApiSchemas.test.ts 3/45952 ❯ tests/exerciseEntryStats.integration.test.ts [queued]953 ❯ tests/exercisePresetEntryRoutes.test.ts 8/8954 ❯ tests/exerciseService.groupedWorkouts.test.ts [queued]955 ❯ tests/exerciseStatsService.test.ts [queued]956 ❯ tests/externalProviderService.test.ts [queued]957 ❯ tests/foodCoreService.test.ts [queued]958 ❯ tests/foodCoreService.updateSnapshot.test.ts [queued]959 ❯ tests/foodEntryCopy.test.ts [queued]960 ❯ tests/foodEntryMealService.test.ts [queued]961 ❯ tests/foodPhotoEstimationService.test.ts [queued]962 ❯ tests/foodPhotoMatchService.test.ts [queued]963 ❯ tests/mcpRoutes.test.ts [queued]964 ❯ tests/mealRepository.test.ts [queued]965 ❯ tests/mealRoutes.test.ts [queued]966 ❯ tests/mealService.test.ts [queued]967 ❯ tests/measurementService.sleepResyncMerge.test.ts [queued]968 ❯ tests/measurementService.timezone.test.ts [queued]969 ❯ tests/measurementService.waterIntake.test.ts [queued]970 ❯ tests/medicationRoutes.test.ts [queued]971 ❯ tests/oidcProviderRepository.integration.test.ts [queued]972 ❯ tests/openFoodFactsAuth.test.ts [queued]973 ❯ tests/openFoodFactsAutomaticSyncMigration.integration.test.ts 26/26974 ❯ tests/openFoodFactsContributionService.test.ts [queued]975 ❯ tests/openFoodFactsService.test.ts [queued]976 ❯ tests/polarDataProcessor.test.ts [queued]977 ❯ tests/providerDispatch.test.ts 0/114978 ❯ tests/rlsPermissionMatrix.integration.test.ts [queued]979 ❯ tests/timezone.test.ts [queued]980 ❯ tests/waterIntakeLinkedDecrement.test.ts [queued]981 ❯ tests/waterIntakeRoutes.test.ts [queued]982 ❯ tests/workoutHandlerTelemetry.test.ts [queued]983 ❯ tests/yazioService.test.ts [queued]984985 Test Files 2 passed | 1 skipped (434)986 Tests 31 passed | 26 skipped (213)987 Start at 11:46:07988 Duration 1.75s989stderr | tests/providerDispatch.test.ts > dispatchAiRequest — preconditions > fails loud (no bypass) when a real HEIC mislabeled as JPEG fails to transcode990[2026-09-30T11:46:09.674Z] [WARN] providerDispatch: HEIC->JPEG transcode failed, falling back to unsupported_media: decode failed991992993 ❯ tests/adaptiveTdeeService.test.ts [queued]994 ❯ tests/barcodeLookup.test.ts [queued]995 ❯ tests/calorieBalanceService.test.ts [queued]996 ❯ tests/chatbotToolRepositories.test.ts [queued]997 ❯ tests/chatbotToolsCheckin.test.ts [queued]998 ❯ tests/chatbotToolSchemas.test.ts [queued]999 ❯ tests/chatbotToolsCoach.test.ts [queued]1000 ❯ tests/chatbotToolsExercise.test.ts [queued]1001 ❯ tests/chatbotToolsFood.test.ts [queued]1002 ❯ tests/chatbotToolsWorkoutPlans.test.ts [queued]1003 ❯ tests/chatService.test.ts [queued]1004 ❯ tests/dailySummaryRangeService.test.ts [queued]1005 ❯ tests/dailySummaryService.test.ts [queued]1006 ❯ tests/demoSeedService.test.ts [queued]1007 ❯ tests/exerciseEntriesApiSchemas.test.ts 3/451008 ❯ tests/exerciseEntryStats.integration.test.ts [queued]1009 ❯ tests/exercisePresetEntryRoutes.test.ts 8/81010 ❯ tests/exerciseService.groupedWorkouts.test.ts [queued]1011 ❯ tests/exerciseStatsService.test.ts [queued]1012 ❯ tests/externalProviderService.test.ts [queued]1013 ❯ tests/foodCoreService.test.ts [queued]1014 ❯ tests/foodCoreService.updateSnapshot.test.ts [queued]1015 ❯ tests/foodEntryCopy.test.ts [queued]1016 ❯ tests/foodEntryMealService.test.ts [queued]1017 ❯ tests/foodPhotoEstimationService.test.ts [queued]1018 ❯ tests/foodPhotoMatchService.test.ts [queued]1019 ❯ tests/mcpRoutes.test.ts [queued]1020 ❯ tests/mealRepository.test.ts [queued]1021 ❯ tests/mealRoutes.test.ts [queued]1022 ❯ tests/mealService.test.ts [queued]1023 ❯ tests/measurementService.sleepResyncMerge.test.ts [queued]1024 ❯ tests/measurementService.timezone.test.ts [queued]1025 ❯ tests/measurementService.waterIntake.test.ts [queued]1026 ❯ tests/medicationRoutes.test.ts [queued]1027 ❯ tests/oidcProviderRepository.integration.test.ts [queued]1028 ❯ tests/openFoodFactsAuth.test.ts [queued]1029 ❯ tests/openFoodFactsAutomaticSyncMigration.integration.test.ts 26/261030 ❯ tests/openFoodFactsContributionService.test.ts [queued]1031 ❯ tests/openFoodFactsService.test.ts [queued]1032 ❯ tests/polarDataProcessor.test.ts [queued]1033 ❯ tests/providerDispatch.test.ts 0/1141034 ❯ tests/rlsPermissionMatrix.integration.test.ts [queued]1035 ❯ tests/timezone.test.ts [queued]1036 ❯ tests/waterIntakeLinkedDecrement.test.ts [queued]1037 ❯ tests/waterIntakeRoutes.test.ts [queued]1038 ❯ tests/workoutHandlerTelemetry.test.ts [queued]1039 ❯ tests/yazioService.test.ts [queued]10401041 Test Files 2 passed | 1 skipped (434)1042 Tests 31 passed | 26 skipped (213)1043 Start at 11:46:071044 Duration 1.75s1045stdout | tests/providerDispatch.test.ts > dispatchAiRequest — preconditions > detects HEIC with an uppercase ftyp brand (case-insensitive)1046[2026-09-30T11:46:09.675Z] [INFO] providerDispatch: HEIC->JPEG transcode ok in 0ms (12B HEIC -> 4B JPEG)10471048stdout | tests/providerDispatch.test.ts > dispatchAiRequest — preconditions > normalizes uppercase/whitespace HEIC mime types before the transcode check1049[2026-09-30T11:46:09.675Z] [INFO] providerDispatch: HEIC->JPEG transcode ok in 0ms (5B HEIC -> 4B JPEG)105010511052 ❯ tests/adaptiveTdeeService.test.ts [queued]1053 ❯ tests/barcodeLookup.test.ts [queued]1054 ❯ tests/calorieBalanceService.test.ts [queued]1055 ❯ tests/chatbotToolRepositories.test.ts [queued]1056 ❯ tests/chatbotToolsCheckin.test.ts [queued]1057 ❯ tests/chatbotToolSchemas.test.ts [queued]1058 ❯ tests/chatbotToolsCoach.test.ts [queued]1059 ❯ tests/chatbotToolsExercise.test.ts [queued]1060 ❯ tests/chatbotToolsFood.test.ts [queued]1061 ❯ tests/chatbotToolsWorkoutPlans.test.ts [queued]1062 ❯ tests/chatService.test.ts [queued]1063 ❯ tests/dailySummaryRangeService.test.ts [queued]1064 ❯ tests/dailySummaryService.test.ts [queued]1065 ❯ tests/demoSeedService.test.ts [queued]1066 ❯ tests/exerciseEntriesApiSchemas.test.ts 3/451067 ❯ tests/exerciseEntryStats.integration.test.ts [queued]1068 ❯ tests/exercisePresetEntryRoutes.test.ts 8/81069 ❯ tests/exerciseService.groupedWorkouts.test.ts [queued]1070 ❯ tests/exerciseStatsService.test.ts [queued]1071 ❯ tests/externalProviderService.test.ts [queued]1072 ❯ tests/foodCoreService.test.ts [queued]1073 ❯ tests/foodCoreService.updateSnapshot.test.ts [queued]1074 ❯ tests/foodEntryCopy.test.ts [queued]1075 ❯ tests/foodEntryMealService.test.ts [queued]1076 ❯ tests/foodPhotoEstimationService.test.ts [queued]1077 ❯ tests/foodPhotoMatchService.test.ts [queued]1078 ❯ tests/mcpRoutes.test.ts [queued]1079 ❯ tests/mealRepository.test.ts [queued]1080 ❯ tests/mealRoutes.test.ts [queued]1081 ❯ tests/mealService.test.ts [queued]1082 ❯ tests/measurementService.sleepResyncMerge.test.ts [queued]1083 ❯ tests/measurementService.timezone.test.ts [queued]1084 ❯ tests/measurementService.waterIntake.test.ts [queued]1085 ❯ tests/medicationRoutes.test.ts [queued]1086 ❯ tests/oidcProviderRepository.integration.test.ts [queued]1087 ❯ tests/openFoodFactsAuth.test.ts [queued]1088 ❯ tests/openFoodFactsAutomaticSyncMigration.integration.test.ts 26/261089 ❯ tests/openFoodFactsContributionService.test.ts [queued]1090 ❯ tests/openFoodFactsService.test.ts [queued]1091 ❯ tests/polarDataProcessor.test.ts [queued]1092 ❯ tests/providerDispatch.test.ts 0/1141093 ❯ tests/rlsPermissionMatrix.integration.test.ts [queued]1094 ❯ tests/timezone.test.ts [queued]1095 ❯ tests/waterIntakeLinkedDecrement.test.ts [queued]1096 ❯ tests/waterIntakeRoutes.test.ts [queued]1097 ❯ tests/workoutHandlerTelemetry.test.ts [queued]1098 ❯ tests/yazioService.test.ts [queued]10991100 Test Files 2 passed | 1 skipped (434)1101 Tests 31 passed | 26 skipped (213)1102 Start at 11:46:071103 Duration 1.75s1104stderr | tests/providerDispatch.test.ts > dispatchAiRequest — preconditions > falls back to unsupported_media when HEIC transcoding fails1105[2026-09-30T11:46:09.676Z] [WARN] providerDispatch: HEIC->JPEG transcode failed, falling back to unsupported_media: not a valid HEIC file110611071108 ❯ tests/adaptiveTdeeService.test.ts [queued]1109 ❯ tests/barcodeLookup.test.ts [queued]1110 ❯ tests/calorieBalanceService.test.ts [queued]1111 ❯ tests/chatbotToolRepositories.test.ts [queued]1112 ❯ tests/chatbotToolsCheckin.test.ts [queued]1113 ❯ tests/chatbotToolSchemas.test.ts [queued]1114 ❯ tests/chatbotToolsCoach.test.ts [queued]1115 ❯ tests/chatbotToolsExercise.test.ts [queued]1116 ❯ tests/chatbotToolsFood.test.ts [queued]1117 ❯ tests/chatbotToolsWorkoutPlans.test.ts [queued]1118 ❯ tests/chatService.test.ts [queued]1119 ❯ tests/dailySummaryRangeService.test.ts [queued]1120 ❯ tests/dailySummaryService.test.ts [queued]1121 ❯ tests/demoSeedService.test.ts [queued]1122 ❯ tests/exerciseEntriesApiSchemas.test.ts 3/451123 ❯ tests/exerciseEntryStats.integration.test.ts [queued]1124 ❯ tests/exercisePresetEntryRoutes.test.ts 8/81125 ❯ tests/exerciseService.groupedWorkouts.test.ts [queued]1126 ❯ tests/exerciseStatsService.test.ts [queued]1127 ❯ tests/externalProviderService.test.ts [queued]1128 ❯ tests/foodCoreService.test.ts [queued]1129 ❯ tests/foodCoreService.updateSnapshot.test.ts [queued]1130 ❯ tests/foodEntryCopy.test.ts [queued]1131 ❯ tests/foodEntryMealService.test.ts [queued]1132 ❯ tests/foodPhotoEstimationService.test.ts [queued]1133 ❯ tests/foodPhotoMatchService.test.ts [queued]1134 ❯ tests/mcpRoutes.test.ts [queued]1135 ❯ tests/mealRepository.test.ts [queued]1136 ❯ tests/mealRoutes.test.ts [queued]1137 ❯ tests/mealService.test.ts [queued]1138 ❯ tests/measurementService.sleepResyncMerge.test.ts [queued]1139 ❯ tests/measurementService.timezone.test.ts [queued]1140 ❯ tests/measurementService.waterIntake.test.ts [queued]1141 ❯ tests/medicationRoutes.test.ts [queued]1142 ❯ tests/oidcProviderRepository.integration.test.ts [queued]1143 ❯ tests/openFoodFactsAuth.test.ts [queued]1144 ❯ tests/openFoodFactsAutomaticSyncMigration.integration.test.ts 26/261145 ❯ tests/openFoodFactsContributionService.test.ts [queued]1146 ❯ tests/openFoodFactsService.test.ts [queued]1147 ❯ tests/polarDataProcessor.test.ts [queued]1148 ❯ tests/providerDispatch.test.ts 0/1141149 ❯ tests/rlsPermissionMatrix.integration.test.ts [queued]1150 ❯ tests/timezone.test.ts [queued]1151 ❯ tests/waterIntakeLinkedDecrement.test.ts [queued]1152 ❯ tests/waterIntakeRoutes.test.ts [queued]1153 ❯ tests/workoutHandlerTelemetry.test.ts [queued]1154 ❯ tests/yazioService.test.ts [queued]11551156 Test Files 2 passed | 1 skipped (434)1157 Tests 31 passed | 26 skipped (213)1158 Start at 11:46:071159 Duration 1.75s1160stdout | tests/providerDispatch.test.ts > dispatchAiRequest — preconditions > also transcodes HEIC for google (we convert uniformly, no provider gate)1161[2026-09-30T11:46:09.676Z] [INFO] providerDispatch: HEIC->JPEG transcode ok in 0ms (5B HEIC -> 4B JPEG)116211631164 ❯ tests/adaptiveTdeeService.test.ts [queued]1165 ❯ tests/barcodeLookup.test.ts [queued]1166 ❯ tests/calorieBalanceService.test.ts [queued]1167 ❯ tests/chatbotToolRepositories.test.ts [queued]1168 ❯ tests/chatbotToolsCheckin.test.ts [queued]1169 ❯ tests/chatbotToolSchemas.test.ts [queued]1170 ❯ tests/chatbotToolsCoach.test.ts [queued]1171 ❯ tests/chatbotToolsExercise.test.ts [queued]1172 ❯ tests/chatbotToolsFood.test.ts [queued]1173 ❯ tests/chatbotToolsWorkoutPlans.test.ts [queued]1174 ❯ tests/chatService.test.ts [queued]1175 ❯ tests/dailySummaryRangeService.test.ts [queued]1176 ❯ tests/dailySummaryService.test.ts [queued]1177 ❯ tests/demoSeedService.test.ts [queued]1178 ❯ tests/exerciseEntriesApiSchemas.test.ts 3/451179 ❯ tests/exerciseEntryStats.integration.test.ts [queued]1180 ❯ tests/exercisePresetEntryRoutes.test.ts 8/81181 ❯ tests/exerciseService.groupedWorkouts.test.ts [queued]1182 ❯ tests/exerciseStatsService.test.ts [queued]1183 ❯ tests/externalProviderService.test.ts [queued]1184 ❯ tests/foodCoreService.test.ts [queued]1185 ❯ tests/foodCoreService.updateSnapshot.test.ts [queued]1186 ❯ tests/foodEntryCopy.test.ts [queued]1187 ❯ tests/foodEntryMealService.test.ts [queued]1188 ❯ tests/foodPhotoEstimationService.test.ts [queued]1189 ❯ tests/foodPhotoMatchService.test.ts [queued]1190 ❯ tests/mcpRoutes.test.ts [queued]1191 ❯ tests/mealRepository.test.ts [queued]1192 ❯ tests/mealRoutes.test.ts [queued]1193 ❯ tests/mealService.test.ts [queued]1194 ❯ tests/measurementService.sleepResyncMerge.test.ts [queued]1195 ❯ tests/measurementService.timezone.test.ts [queued]1196 ❯ tests/measurementService.waterIntake.test.ts [queued]1197 ❯ tests/medicationRoutes.test.ts [queued]1198 ❯ tests/oidcProviderRepository.integration.test.ts [queued]1199 ❯ tests/openFoodFactsAuth.test.ts [queued]1200 ❯ tests/openFoodFactsAutomaticSyncMigration.integration.test.ts 26/261201 ❯ tests/openFoodFactsContributionService.test.ts [queued]1202 ❯ tests/openFoodFactsService.test.ts [queued]1203 ❯ tests/polarDataProcessor.test.ts [queued]1204 ❯ tests/providerDispatch.test.ts 0/1141205 ❯ tests/rlsPermissionMatrix.integration.test.ts [queued]1206 ❯ tests/timezone.test.ts [queued]1207 ❯ tests/waterIntakeLinkedDecrement.test.ts [queued]1208 ❯ tests/waterIntakeRoutes.test.ts [queued]1209 ❯ tests/workoutHandlerTelemetry.test.ts [queued]1210 ❯ tests/yazioService.test.ts [queued]12111212 Test Files 2 passed | 1 skipped (434)1213 Tests 31 passed | 26 skipped (213)1214 Start at 11:46:071215 Duration 1.75s1216 ↓ tests/oidcProviderRepository.integration.test.ts (21 tests | 21 skipped)1217stdout | tests/providerDispatch.test.ts > dispatchAiRequest — models that reject temperature > drops temperature and retries once when the provider rejects it1218[2026-09-30T11:46:09.701Z] [INFO] [modelCapabilities] 'mystery-1' on 'openai_compatible' rejected 'temperature'; omitting it from future requests.12191220stdout | tests/providerDispatch.test.ts > dispatchAiRequest — models that reject temperature > remembers the rejection so later requests cost no retry1221[2026-09-30T11:46:09.701Z] [INFO] [modelCapabilities] 'mystery-1' on 'openai_compatible' rejected 'temperature'; omitting it from future requests.12221223 ✓ tests/providerDispatch.test.ts (114 tests) 72ms12241225 ❯ tests/adaptiveTdeeService.test.ts [queued]1226 ❯ tests/barcodeLookup.test.ts [queued]1227 ❯ tests/calorieBalanceService.test.ts [queued]1228 ❯ tests/chatbotToolRepositories.test.ts [queued]1229 ❯ tests/chatbotToolsCheckin.test.ts [queued]1230 ❯ tests/chatbotToolSchemas.test.ts [queued]1231 ❯ tests/chatbotToolsCoach.test.ts [queued]1232 ❯ tests/chatbotToolsExercise.test.ts [queued]1233 ❯ tests/chatbotToolsFood.test.ts [queued]1234 ❯ tests/chatbotToolsWorkoutPlans.test.ts [queued]1235 ❯ tests/chatService.test.ts [queued]1236 ❯ tests/dailySummaryRangeService.test.ts [queued]1237 ❯ tests/dailySummaryService.test.ts [queued]1238 ❯ tests/demoSeedService.test.ts [queued]1239 ❯ tests/exerciseEntriesApiSchemas.test.ts 3/451240 ❯ tests/exerciseEntryStats.integration.test.ts [queued]1241 ❯ tests/exerciseRoutesV2.test.ts [queued]1242 ❯ tests/exerciseService.groupedWorkouts.test.ts [queued]1243 ❯ tests/exerciseStatsService.test.ts [queued]1244 ❯ tests/externalProviderService.test.ts [queued]1245 ❯ tests/foodCoreService.test.ts [queued]1246 ❯ tests/foodCoreService.updateSnapshot.test.ts [queued]1247 ❯ tests/foodEntryCopy.test.ts [queued]1248 ❯ tests/foodEntryMealService.test.ts [queued]1249 ❯ tests/foodPhotoEstimationService.test.ts [queued]1250 ❯ tests/foodPhotoLogService.test.ts [queued]1251 ❯ tests/foodPhotoMatchService.test.ts [queued]1252 ❯ tests/mcpRoutes.test.ts [queued]1253 ❯ tests/mealRepository.test.ts [queued]1254 ❯ tests/mealRoutes.test.ts [queued]1255 ❯ tests/mealService.test.ts [queued]1256 ❯ tests/measurementRepository.water.test.ts [queued]1257 ❯ tests/measurementService.sleepResyncMerge.test.ts [queued]1258 ❯ tests/measurementService.timezone.test.ts [queued]1259 ❯ tests/measurementService.waterIntake.test.ts [queued]1260 ❯ tests/medicationRoutes.test.ts [queued]1261 ❯ tests/openFoodFactsAuth.test.ts [queued]1262 ❯ tests/openFoodFactsContributionService.test.ts [queued]1263 ❯ tests/openFoodFactsService.test.ts [queued]1264 ❯ tests/polarDataProcessor.test.ts [queued]1265 ❯ tests/providerDispatch.test.ts 114/1141266 ❯ tests/rlsPermissionMatrix.integration.test.ts [queued]1267 ❯ tests/timezone.test.ts [queued]1268 ❯ tests/waterIntakeLinkedDecrement.test.ts [queued]1269 ❯ tests/waterIntakeRoutes.test.ts [queued]1270 ❯ tests/workoutHandlerTelemetry.test.ts [queued]1271 ❯ tests/yazioService.test.ts [queued]12721273 Test Files 3 passed | 2 skipped (434)1274 Tests 145 passed | 47 skipped (234)1275 Start at 11:46:071276 Duration 1.85s12771278 ❯ tests/adaptiveTdeeService.test.ts [queued]1279 ❯ tests/aiServiceConnectionTest.test.ts [queued]1280 ❯ tests/barcodeLookup.test.ts [queued]1281 ❯ tests/calorieBalanceService.test.ts [queued]1282 ❯ tests/chatbotToolRepositories.test.ts [queued]1283 ❯ tests/chatbotToolsCheckin.test.ts [queued]1284 ❯ tests/chatbotToolSchemas.test.ts [queued]1285 ❯ tests/chatbotToolsCoach.test.ts [queued]1286 ❯ tests/chatbotToolsExercise.test.ts [queued]1287 ❯ tests/chatbotToolsFood.test.ts [queued]1288 ❯ tests/chatbotToolsWorkoutPlans.test.ts [queued]1289 ❯ tests/chatService.test.ts [queued]1290 ❯ tests/dailySummaryRangeService.test.ts [queued]1291 ❯ tests/dailySummaryService.test.ts [queued]1292 ❯ tests/demoSeedService.test.ts [queued]1293 ❯ tests/exerciseEntriesApiSchemas.test.ts 5/451294 ❯ tests/exerciseEntryStats.integration.test.ts [queued]1295 ❯ tests/exerciseRoutesV2.test.ts [queued]1296 ❯ tests/exerciseService.groupedWorkouts.test.ts [queued]1297 ❯ tests/exerciseStatsService.test.ts [queued]1298 ❯ tests/externalProviderService.test.ts [queued]1299 ❯ tests/foodCoreService.test.ts [queued]1300 ❯ tests/foodCoreService.updateSnapshot.test.ts [queued]1301 ❯ tests/foodEntryCopy.test.ts [queued]1302 ❯ tests/foodEntryMealService.test.ts [queued]1303 ❯ tests/foodPhotoEstimationService.test.ts [queued]1304 ❯ tests/foodPhotoLogService.test.ts [queued]1305 ❯ tests/foodPhotoMatchService.test.ts [queued]1306 ❯ tests/mcpRoutes.test.ts [queued]1307 ❯ tests/mealRepository.test.ts [queued]1308 ❯ tests/mealRoutes.test.ts [queued]1309 ❯ tests/mealService.test.ts [queued]1310 ❯ tests/measurementRepository.water.test.ts [queued]1311 ❯ tests/measurementService.sleepResyncMerge.test.ts [queued]1312 ❯ tests/measurementService.timezone.test.ts [queued]1313 ❯ tests/measurementService.waterIntake.test.ts [queued]1314 ❯ tests/medicationRoutes.test.ts [queued]1315 ❯ tests/openFoodFactsAuth.test.ts [queued]1316 ❯ tests/openFoodFactsContributionService.test.ts [queued]1317 ❯ tests/openFoodFactsService.test.ts [queued]1318 ❯ tests/polarDataProcessor.test.ts [queued]1319 ❯ tests/rlsPermissionMatrix.integration.test.ts [queued]1320 ❯ tests/timezone.test.ts [queued]1321 ❯ tests/waterIntakeLinkedDecrement.test.ts [queued]1322 ❯ tests/waterIntakeRoutes.test.ts [queued]1323 ❯ tests/workoutHandlerTelemetry.test.ts [queued]1324 ❯ tests/yazioService.test.ts [queued]13251326 Test Files 3 passed | 2 skipped (434)1327 Tests 147 passed | 47 skipped (234)1328 Start at 11:46:071329 Duration 2.16s13301331 ❯ tests/adaptiveTdeeService.test.ts [queued]1332 ❯ tests/aiServiceConnectionTest.test.ts [queued]1333 ❯ tests/barcodeLookup.test.ts [queued]1334 ❯ tests/calorieBalanceService.test.ts [queued]1335 ❯ tests/chatbotToolRepositories.test.ts [queued]1336 ❯ tests/chatbotToolsCheckin.test.ts [queued]1337 ❯ tests/chatbotToolSchemas.test.ts [queued]1338 ❯ tests/chatbotToolsCoach.test.ts [queued]1339 ❯ tests/chatbotToolsExercise.test.ts [queued]1340 ❯ tests/chatbotToolsFood.test.ts [queued]1341 ❯ tests/chatbotToolsWorkoutPlans.test.ts [queued]1342 ❯ tests/chatService.test.ts [queued]1343 ❯ tests/dailySummaryRangeService.test.ts [queued]1344 ❯ tests/dailySummaryService.test.ts [queued]1345 ❯ tests/demoSeedService.test.ts [queued]1346 ❯ tests/exerciseEntriesApiSchemas.test.ts 6/451347 ❯ tests/exerciseEntryStats.integration.test.ts [queued]1348 ❯ tests/exerciseRoutesV2.test.ts [queued]1349 ❯ tests/exerciseService.groupedWorkouts.test.ts [queued]1350 ❯ tests/exerciseStatsService.test.ts [queued]1351 ❯ tests/externalProviderService.test.ts [queued]1352 ❯ tests/foodCoreService.test.ts [queued]1353 ❯ tests/foodCoreService.updateSnapshot.test.ts [queued]1354 ❯ tests/foodEntryCopy.test.ts [queued]1355 ❯ tests/foodEntryMealService.test.ts [queued]1356 ❯ tests/foodPhotoEstimationService.test.ts [queued]1357 ❯ tests/foodPhotoLogService.test.ts [queued]1358 ❯ tests/foodPhotoMatchService.test.ts [queued]1359 ❯ tests/mcpRoutes.test.ts [queued]1360 ❯ tests/mealRepository.test.ts [queued]1361 ❯ tests/mealRoutes.test.ts [queued]1362 ❯ tests/mealService.test.ts [queued]1363 ❯ tests/measurementRepository.water.test.ts [queued]1364 ❯ tests/measurementService.sleepResyncMerge.test.ts [queued]1365 ❯ tests/measurementService.timezone.test.ts [queued]1366 ❯ tests/measurementService.waterIntake.test.ts [queued]1367 ❯ tests/medicationRoutes.test.ts [queued]1368 ❯ tests/openFoodFactsAuth.test.ts [queued]1369 ❯ tests/openFoodFactsContributionService.test.ts [queued]1370 ❯ tests/openFoodFactsService.test.ts [queued]1371 ❯ tests/polarDataProcessor.test.ts [queued]1372 ❯ tests/rlsPermissionMatrix.integration.test.ts [queued]1373 ❯ tests/timezone.test.ts [queued]1374 ❯ tests/waterIntakeLinkedDecrement.test.ts [queued]1375 ❯ tests/waterIntakeRoutes.test.ts [queued]1376 ❯ tests/workoutHandlerTelemetry.test.ts [queued]1377 ❯ tests/yazioService.test.ts [queued]13781379 Test Files 3 passed | 2 skipped (434)1380 Tests 148 passed | 47 skipped (234)1381 Start at 11:46:071382 Duration 2.36s13831384 ❯ tests/adaptiveTdeeService.test.ts [queued]1385 ❯ tests/aiServiceConnectionTest.test.ts [queued]1386 ❯ tests/barcodeLookup.test.ts [queued]1387 ❯ tests/calorieBalanceService.test.ts [queued]1388 ❯ tests/chatbotToolRepositories.test.ts [queued]1389 ❯ tests/chatbotToolsCheckin.test.ts [queued]1390 ❯ tests/chatbotToolSchemas.test.ts [queued]1391 ❯ tests/chatbotToolsCoach.test.ts [queued]1392 ❯ tests/chatbotToolsExercise.test.ts [queued]1393 ❯ tests/chatbotToolsFood.test.ts [queued]1394 ❯ tests/chatbotToolsWorkoutPlans.test.ts [queued]1395 ❯ tests/chatService.test.ts [queued]1396 ❯ tests/dailySummaryRangeService.test.ts [queued]1397 ❯ tests/dailySummaryService.test.ts [queued]1398 ❯ tests/demoSeedService.test.ts [queued]1399 ❯ tests/exerciseEntriesApiSchemas.test.ts 7/451400 ❯ tests/exerciseEntryStats.integration.test.ts [queued]1401 ❯ tests/exerciseRoutesV2.test.ts [queued]1402 ❯ tests/exerciseService.groupedWorkouts.test.ts [queued]1403 ❯ tests/exerciseStatsService.test.ts [queued]1404 ❯ tests/externalProviderService.test.ts [queued]1405 ❯ tests/foodCoreService.test.ts [queued]1406 ❯ tests/foodCoreService.updateSnapshot.test.ts [queued]1407 ❯ tests/foodEntryCopy.test.ts [queued]1408 ❯ tests/foodEntryMealService.test.ts [queued]1409 ❯ tests/foodPhotoEstimationService.test.ts [queued]1410 ❯ tests/foodPhotoLogService.test.ts [queued]1411 ❯ tests/foodPhotoMatchService.test.ts [queued]1412 ❯ tests/mcpRoutes.test.ts [queued]1413 ❯ tests/mealRepository.test.ts [queued]1414 ❯ tests/mealRoutes.test.ts [queued]1415 ❯ tests/mealService.test.ts [queued]1416 ❯ tests/measurementRepository.water.test.ts [queued]1417 ❯ tests/measurementService.sleepResyncMerge.test.ts [queued]1418 ❯ tests/measurementService.timezone.test.ts [queued]1419 ❯ tests/measurementService.waterIntake.test.ts [queued]1420 ❯ tests/medicationRoutes.test.ts [queued]1421 ❯ tests/openFoodFactsAuth.test.ts [queued]1422 ❯ tests/openFoodFactsContributionService.test.ts [queued]1423 ❯ tests/openFoodFactsService.test.ts [queued]1424 ❯ tests/polarDataProcessor.test.ts [queued]1425 ❯ tests/rlsPermissionMatrix.integration.test.ts [queued]1426 ❯ tests/timezone.test.ts [queued]1427 ❯ tests/waterIntakeLinkedDecrement.test.ts [queued]1428 ❯ tests/waterIntakeRoutes.test.ts [queued]1429 ❯ tests/workoutHandlerTelemetry.test.ts [queued]1430 ❯ tests/yazioService.test.ts [queued]14311432 Test Files 3 passed | 2 skipped (434)1433 Tests 149 passed | 47 skipped (234)1434 Start at 11:46:071435 Duration 2.56s14361437 ❯ tests/adaptiveTdeeService.test.ts [queued]1438 ❯ tests/aiServiceConnectionTest.test.ts [queued]1439 ❯ tests/barcodeLookup.test.ts [queued]1440 ❯ tests/calorieBalanceService.test.ts [queued]1441 ❯ tests/chatbotToolRepositories.test.ts [queued]1442 ❯ tests/chatbotToolsCheckin.test.ts [queued]1443 ❯ tests/chatbotToolSchemas.test.ts [queued]1444 ❯ tests/chatbotToolsCoach.test.ts [queued]1445 ❯ tests/chatbotToolsExercise.test.ts [queued]1446 ❯ tests/chatbotToolsFood.test.ts [queued]1447 ❯ tests/chatbotToolsWorkoutPlans.test.ts [queued]1448 ❯ tests/chatService.test.ts [queued]1449 ❯ tests/dailySummaryRangeService.test.ts [queued]1450 ❯ tests/dailySummaryService.test.ts [queued]1451 ❯ tests/demoSeedService.test.ts [queued]1452 ❯ tests/exerciseEntriesApiSchemas.test.ts 8/451453 ❯ tests/exerciseEntryStats.integration.test.ts [queued]1454 ❯ tests/exerciseRoutesV2.test.ts [queued]1455 ❯ tests/exerciseService.groupedWorkouts.test.ts [queued]1456 ❯ tests/exerciseStatsService.test.ts [queued]1457 ❯ tests/externalProviderService.test.ts [queued]1458 ❯ tests/foodCoreService.test.ts [queued]1459 ❯ tests/foodCoreService.updateSnapshot.test.ts [queued]1460 ❯ tests/foodEntryCopy.test.ts [queued]1461 ❯ tests/foodEntryMealService.test.ts [queued]1462 ❯ tests/foodPhotoEstimationService.test.ts [queued]1463 ❯ tests/foodPhotoLogService.test.ts [queued]1464 ❯ tests/foodPhotoMatchService.test.ts [queued]1465 ❯ tests/mcpRoutes.test.ts [queued]1466 ❯ tests/mealRepository.test.ts [queued]1467 ❯ tests/mealRoutes.test.ts [queued]1468 ❯ tests/mealService.test.ts [queued]1469 ❯ tests/measurementRepository.water.test.ts [queued]1470 ❯ tests/measurementService.sleepResyncMerge.test.ts [queued]1471 ❯ tests/measurementService.timezone.test.ts [queued]1472 ❯ tests/measurementService.waterIntake.test.ts [queued]1473 ❯ tests/medicationRoutes.test.ts [queued]1474 ❯ tests/openFoodFactsAuth.test.ts [queued]1475 ❯ tests/openFoodFactsContributionService.test.ts [queued]1476 ❯ tests/openFoodFactsService.test.ts [queued]1477 ❯ tests/polarDataProcessor.test.ts [queued]1478 ❯ tests/rlsPermissionMatrix.integration.test.ts [queued]1479 ❯ tests/timezone.test.ts [queued]1480 ❯ tests/waterIntakeLinkedDecrement.test.ts [queued]1481 ❯ tests/waterIntakeRoutes.test.ts [queued]1482 ❯ tests/workoutHandlerTelemetry.test.ts [queued]1483 ❯ tests/yazioService.test.ts [queued]14841485 Test Files 3 passed | 2 skipped (434)1486 Tests 150 passed | 47 skipped (234)1487 Start at 11:46:071488 Duration 2.76s14891490 ❯ tests/adaptiveTdeeService.test.ts [queued]1491 ❯ tests/aiServiceConnectionTest.test.ts [queued]1492 ❯ tests/barcodeLookup.test.ts [queued]1493 ❯ tests/calorieBalanceService.test.ts [queued]1494 ❯ tests/chatbotToolRepositories.test.ts [queued]1495 ❯ tests/chatbotToolsCheckin.test.ts [queued]1496 ❯ tests/chatbotToolSchemas.test.ts [queued]1497 ❯ tests/chatbotToolsCoach.test.ts [queued]1498 ❯ tests/chatbotToolsExercise.test.ts [queued]1499 ❯ tests/chatbotToolsFood.test.ts [queued]1500 ❯ tests/chatbotToolsWorkoutPlans.test.ts [queued]1501 ❯ tests/chatService.test.ts [queued]1502 ❯ tests/dailySummaryRangeService.test.ts [queued]1503 ❯ tests/dailySummaryService.test.ts [queued]1504 ❯ tests/demoSeedService.test.ts [queued]1505 ❯ tests/exerciseEntriesApiSchemas.test.ts 9/451506 ❯ tests/exerciseEntryStats.integration.test.ts [queued]1507 ❯ tests/exerciseRoutesV2.test.ts [queued]1508 ❯ tests/exerciseService.groupedWorkouts.test.ts [queued]1509 ❯ tests/exerciseStatsService.test.ts [queued]1510 ❯ tests/externalProviderService.test.ts [queued]1511 ❯ tests/foodCoreService.test.ts [queued]1512 ❯ tests/foodCoreService.updateSnapshot.test.ts [queued]1513 ❯ tests/foodEntryCopy.test.ts [queued]1514 ❯ tests/foodEntryMealService.test.ts [queued]1515 ❯ tests/foodPhotoEstimationService.test.ts [queued]1516 ❯ tests/foodPhotoLogService.test.ts [queued]1517 ❯ tests/foodPhotoMatchService.test.ts [queued]1518 ❯ tests/mcpRoutes.test.ts [queued]1519 ❯ tests/mealRepository.test.ts [queued]1520 ❯ tests/mealRoutes.test.ts [queued]1521 ❯ tests/mealService.test.ts [queued]1522 ❯ tests/measurementRepository.water.test.ts [queued]1523 ❯ tests/measurementService.sleepResyncMerge.test.ts [queued]1524 ❯ tests/measurementService.timezone.test.ts [queued]1525 ❯ tests/measurementService.waterIntake.test.ts [queued]1526 ❯ tests/medicationRoutes.test.ts [queued]1527 ❯ tests/openFoodFactsAuth.test.ts [queued]1528 ❯ tests/openFoodFactsContributionService.test.ts [queued]1529 ❯ tests/openFoodFactsService.test.ts [queued]1530 ❯ tests/polarDataProcessor.test.ts [queued]1531 ❯ tests/rlsPermissionMatrix.integration.test.ts [queued]1532 ❯ tests/timezone.test.ts [queued]1533 ❯ tests/waterIntakeLinkedDecrement.test.ts [queued]1534 ❯ tests/waterIntakeRoutes.test.ts [queued]1535 ❯ tests/workoutHandlerTelemetry.test.ts [queued]1536 ❯ tests/yazioService.test.ts [queued]15371538 Test Files 3 passed | 2 skipped (434)1539 Tests 151 passed | 47 skipped (234)1540 Start at 11:46:071541 Duration 2.96s15421543 ❯ tests/adaptiveTdeeService.test.ts [queued]1544 ❯ tests/aiServiceConnectionTest.test.ts [queued]1545 ❯ tests/barcodeLookup.test.ts [queued]1546 ❯ tests/calorieBalanceService.test.ts [queued]1547 ❯ tests/chatbotToolRepositories.test.ts [queued]1548 ❯ tests/chatbotToolsCheckin.test.ts [queued]1549 ❯ tests/chatbotToolSchemas.test.ts [queued]1550 ❯ tests/chatbotToolsCoach.test.ts [queued]1551 ❯ tests/chatbotToolsExercise.test.ts [queued]1552 ❯ tests/chatbotToolsFood.test.ts [queued]1553 ❯ tests/chatbotToolsWorkoutPlans.test.ts [queued]1554 ❯ tests/chatService.test.ts [queued]1555 ❯ tests/dailySummaryRangeService.test.ts [queued]1556 ❯ tests/dailySummaryService.test.ts [queued]1557 ❯ tests/demoSeedService.test.ts [queued]1558 ❯ tests/exerciseEntriesApiSchemas.test.ts 10/451559 ❯ tests/exerciseEntryStats.integration.test.ts [queued]1560 ❯ tests/exerciseRoutesV2.test.ts [queued]1561 ❯ tests/exerciseService.groupedWorkouts.test.ts [queued]1562 ❯ tests/exerciseStatsService.test.ts [queued]1563 ❯ tests/externalProviderService.test.ts [queued]1564 ❯ tests/foodCoreService.test.ts [queued]1565 ❯ tests/foodCoreService.updateSnapshot.test.ts [queued]1566 ❯ tests/foodEntryCopy.test.ts [queued]1567 ❯ tests/foodEntryMealService.test.ts [queued]1568 ❯ tests/foodPhotoEstimationService.test.ts [queued]1569 ❯ tests/foodPhotoLogService.test.ts [queued]1570 ❯ tests/foodPhotoMatchService.test.ts [queued]1571 ❯ tests/mcpRoutes.test.ts [queued]1572 ❯ tests/mealRepository.test.ts [queued]1573 ❯ tests/mealRoutes.test.ts [queued]1574 ❯ tests/mealService.test.ts [queued]1575 ❯ tests/measurementRepository.water.test.ts [queued]1576 ❯ tests/measurementService.sleepResyncMerge.test.ts [queued]1577 ❯ tests/measurementService.timezone.test.ts [queued]1578 ❯ tests/measurementService.waterIntake.test.ts [queued]1579 ❯ tests/medicationRoutes.test.ts [queued]1580 ❯ tests/openFoodFactsAuth.test.ts [queued]1581 ❯ tests/openFoodFactsContributionService.test.ts [queued]1582 ❯ tests/openFoodFactsService.test.ts [queued]1583 ❯ tests/polarDataProcessor.test.ts [queued]1584 ❯ tests/rlsPermissionMatrix.integration.test.ts [queued]1585 ❯ tests/timezone.test.ts [queued]1586 ❯ tests/waterIntakeLinkedDecrement.test.ts [queued]1587 ❯ tests/waterIntakeRoutes.test.ts [queued]1588 ❯ tests/workoutHandlerTelemetry.test.ts [queued]1589 ❯ tests/yazioService.test.ts [queued]15901591 Test Files 3 passed | 2 skipped (434)1592 Tests 152 passed | 47 skipped (234)1593 Start at 11:46:071594 Duration 3.16s15951596 ❯ tests/adaptiveTdeeService.test.ts [queued]1597 ❯ tests/aiServiceConnectionTest.test.ts [queued]1598 ❯ tests/barcodeLookup.test.ts [queued]1599 ❯ tests/calorieBalanceService.test.ts [queued]1600 ❯ tests/chatbotToolRepositories.test.ts [queued]1601 ❯ tests/chatbotToolsCheckin.test.ts [queued]1602 ❯ tests/chatbotToolSchemas.test.ts [queued]1603 ❯ tests/chatbotToolsCoach.test.ts [queued]1604 ❯ tests/chatbotToolsExercise.test.ts [queued]1605 ❯ tests/chatbotToolsFood.test.ts [queued]1606 ❯ tests/chatbotToolsWorkoutPlans.test.ts [queued]1607 ❯ tests/chatService.test.ts [queued]1608 ❯ tests/dailySummaryRangeService.test.ts [queued]1609 ❯ tests/dailySummaryService.test.ts [queued]1610 ❯ tests/demoSeedService.test.ts 0/391611 ❯ tests/exerciseEntriesApiSchemas.test.ts 10/451612 ❯ tests/exerciseEntryStats.integration.test.ts [queued]1613 ❯ tests/exerciseRoutesV2.test.ts [queued]1614 ❯ tests/exerciseService.groupedWorkouts.test.ts [queued]1615 ❯ tests/exerciseStatsService.test.ts [queued]1616 ❯ tests/externalProviderService.test.ts [queued]1617 ❯ tests/foodCoreService.test.ts [queued]1618 ❯ tests/foodCoreService.updateSnapshot.test.ts [queued]1619 ❯ tests/foodEntryCopy.test.ts [queued]1620 ❯ tests/foodEntryMealService.test.ts [queued]1621 ❯ tests/foodPhotoEstimationService.test.ts [queued]1622 ❯ tests/foodPhotoLogService.test.ts [queued]1623 ❯ tests/foodPhotoMatchService.test.ts [queued]1624 ❯ tests/mcpRoutes.test.ts [queued]1625 ❯ tests/mealRepository.test.ts [queued]1626 ❯ tests/mealRoutes.test.ts [queued]1627 ❯ tests/mealService.test.ts [queued]1628 ❯ tests/measurementRepository.water.test.ts [queued]1629 ❯ tests/measurementService.sleepResyncMerge.test.ts [queued]1630 ❯ tests/measurementService.timezone.test.ts [queued]1631 ❯ tests/measurementService.waterIntake.test.ts [queued]1632 ❯ tests/medicationRoutes.test.ts [queued]1633 ❯ tests/openFoodFactsAuth.test.ts [queued]1634 ❯ tests/openFoodFactsContributionService.test.ts [queued]1635 ❯ tests/openFoodFactsService.test.ts [queued]1636 ❯ tests/polarDataProcessor.test.ts [queued]1637 ❯ tests/rlsPermissionMatrix.integration.test.ts [queued]1638 ❯ tests/timezone.test.ts [queued]1639 ❯ tests/waterIntakeLinkedDecrement.test.ts [queued]1640 ❯ tests/waterIntakeRoutes.test.ts [queued]1641 ❯ tests/workoutHandlerTelemetry.test.ts [queued]1642 ❯ tests/yazioService.test.ts [queued]16431644 Test Files 3 passed | 2 skipped (434)1645 Tests 152 passed | 47 skipped (273)1646 Start at 11:46:071647 Duration 3.26s1648stderr | tests/demoSeedService.test.ts > Demo Mode Infrastructure > demoGuardMiddleware > blocks demo user mutations with 403 when demo mode is active1649[2026-09-30T11:46:11.234Z] [WARN] [DEMO GUARD] Blocked POST /api/identity/update-password for demo user16501651stderr | tests/mealService.test.ts > mealService validation > createMeal > throws ValidationError when total_servings is zero1652[2026-09-30T11:46:11.232Z] [ERROR] Error in mealService.createMeal for user user-1: ValidationError: Meal total_servings must be a positive number.1653 at normalizeServingFields (/build/source/SparkyFitnessServer/services/mealService.ts:109:13)1654 at Object.createMeal (/build/source/SparkyFitnessServer/services/mealService.ts:422:5)1655 at /build/source/SparkyFitnessServer/tests/mealService.test.ts:74:211656 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:1628:351657 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:2783:261658 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3319:201659 at new Promise (<anonymous>)1660 at runWithCancel (file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3314:10)1661 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3299:201662 at new Promise (<anonymous>)16631664stderr | tests/openFoodFactsService.test.ts > openFoodFactsService > searchOpenFoodFacts > rejects public searches outside the Search-a-licious result window1665[2026-09-30T11:46:11.252Z] [ERROR] Error searching OpenFoodFacts with query "product" in foodService: Error: OpenFoodFacts search supports at most 10000 results1666 at Module.searchOpenFoodFacts (/build/source/SparkyFitnessServer/integrations/openfoodfacts/openFoodFactsService.ts:610:9)1667 at processTicksAndRejections (node:internal/process/task_queues:104:5) {1668 status: 400,1669 statusCode: 4001670}16711672stderr | tests/mealService.test.ts > mealService validation > createMeal > throws ValidationError when total_servings is negative1673[2026-09-30T11:46:11.242Z] [ERROR] Error in mealService.createMeal for user user-1: ValidationError: Meal total_servings must be a positive number.1674 at normalizeServingFields (/build/source/SparkyFitnessServer/services/mealService.ts:109:13)1675 at Object.createMeal (/build/source/SparkyFitnessServer/services/mealService.ts:422:5)1676 at /build/source/SparkyFitnessServer/tests/mealService.test.ts:89:211677 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:1628:351678 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:2783:261679 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3319:201680 at new Promise (<anonymous>)1681 at runWithCancel (file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3314:10)1682 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3299:201683 at new Promise (<anonymous>)16841685stderr | tests/mealService.test.ts > mealService validation > createMeal > throws ValidationError when serving_size is zero1686[2026-09-30T11:46:11.243Z] [ERROR] Error in mealService.createMeal for user user-1: ValidationError: Meal serving_size must be a positive number.1687 at normalizeServingFields (/build/source/SparkyFitnessServer/services/mealService.ts:99:13)1688 at Object.createMeal (/build/source/SparkyFitnessServer/services/mealService.ts:422:5)1689 at /build/source/SparkyFitnessServer/tests/mealService.test.ts:99:211690 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:1628:351691 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:2783:261692 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3319:201693 at new Promise (<anonymous>)1694 at runWithCancel (file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3314:10)1695 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3299:201696 at new Promise (<anonymous>)16971698stderr | tests/mealService.test.ts > mealService validation > createMeal > throws ValidationError when total_servings is non-numeric1699[2026-09-30T11:46:11.244Z] [ERROR] Error in mealService.createMeal for user user-1: ValidationError: Meal total_servings must be a positive number.1700 at normalizeServingFields (/build/source/SparkyFitnessServer/services/mealService.ts:109:13)1701 at Object.createMeal (/build/source/SparkyFitnessServer/services/mealService.ts:422:5)1702 at /build/source/SparkyFitnessServer/tests/mealService.test.ts:114:211703 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:1628:351704 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:2783:261705 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3319:201706 at new Promise (<anonymous>)1707 at runWithCancel (file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3314:10)1708 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3299:201709 at new Promise (<anonymous>)171017111712 ❯ tests/adaptiveTdeeService.test.ts [queued]1713 ❯ tests/aiServiceConnectionTest.test.ts [queued]1714 ❯ tests/barcodeLookup.test.ts [queued]1715 ❯ tests/calorieBalanceService.test.ts 0/531716 ❯ tests/chatbotToolRepositories.test.ts [queued]1717 ❯ tests/chatbotToolsCheckin.test.ts [queued]1718 ❯ tests/chatbotToolSchemas.test.ts [queued]1719 ❯ tests/chatbotToolsCoach.test.ts [queued]1720 ❯ tests/chatbotToolsExercise.test.ts [queued]1721 ❯ tests/chatbotToolsFood.test.ts [queued]1722 ❯ tests/chatbotToolsWorkoutPlans.test.ts [queued]1723 ❯ tests/chatService.test.ts [queued]1724 ❯ tests/dailySummaryRangeService.test.ts [queued]1725 ❯ tests/dailySummaryService.test.ts [queued]1726 ❯ tests/demoSeedService.test.ts 0/391727 ❯ tests/exerciseEntriesApiSchemas.test.ts 11/451728 ❯ tests/exerciseEntryStats.integration.test.ts [queued]1729 ❯ tests/exerciseRoutesV2.test.ts 21/211730 ❯ tests/exerciseService.groupedWorkouts.test.ts [queued]1731 ❯ tests/exerciseStatsService.test.ts 14/141732 ❯ tests/externalProviderService.test.ts [queued]1733 ❯ tests/foodCoreService.test.ts [queued]1734 ❯ tests/foodCoreService.updateSnapshot.test.ts [queued]1735 ❯ tests/foodEntryCopy.test.ts [queued]1736 ❯ tests/foodEntryMealService.test.ts [queued]1737 ❯ tests/foodPhotoEstimationService.test.ts 30/301738 ❯ tests/foodPhotoLogService.test.ts 23/231739 ❯ tests/foodPhotoMatchService.test.ts [queued]1740 ❯ tests/mcpRoutes.test.ts [queued]1741 ❯ tests/mealRepository.test.ts [queued]1742 ❯ tests/mealRoutes.test.ts [queued]1743 ❯ tests/mealService.test.ts 23/231744 ❯ tests/measurementRepository.water.test.ts [queued]1745 ❯ tests/measurementService.sleepResyncMerge.test.ts [queued]1746 ❯ tests/measurementService.timezone.test.ts [queued]1747 ❯ tests/measurementService.waterIntake.test.ts [queued]1748 ❯ tests/medicationRoutes.test.ts [queued]1749 ❯ tests/openFoodFactsAuth.test.ts [queued]1750 ❯ tests/openFoodFactsContributionService.test.ts 0/391751 ❯ tests/openFoodFactsService.test.ts 0/651752 ❯ tests/polarDataProcessor.test.ts 37/371753 ❯ tests/rlsPermissionMatrix.integration.test.ts [queued]1754 ❯ tests/timezone.test.ts 61/611755 ❯ tests/waterIntakeLinkedDecrement.test.ts [queued]1756 ❯ tests/waterIntakeRoutes.test.ts 0/291757 ❯ tests/workoutHandlerTelemetry.test.ts [queued]1758 ❯ tests/yazioService.test.ts [queued]17591760 Test Files 9 passed | 2 skipped (434)1761 Tests 362 passed | 47 skipped (668)1762 Start at 11:46:071763 Duration 3.37s1764stdout | tests/mealService.test.ts > mealService validation > createMeal > defaults serving_size and total_servings to 1 when missing on create1765[2026-09-30T11:46:11.245Z] [INFO] Meal new-id created with serving: 1 serving, total_servings: 117661767stdout | tests/mealService.test.ts > mealService validation > createMeal > forces serving_size to 1 when serving_unit is "serving" (defensive normalize)1768[2026-09-30T11:46:11.246Z] [INFO] Meal new-id created with serving: 1 serving, total_servings: 817691770stdout | tests/mealService.test.ts > mealService validation > createMeal > rewrites legacy-client payload (serving_unit=serving + serving_size>1 + no total_servings)1771[2026-09-30T11:46:11.247Z] [INFO] Meal new-id created with serving: 1 serving, total_servings: 417721773stdout | tests/mealService.test.ts > mealService validation > createMeal > does not trigger legacy shim when total_servings is explicit (new client)1774[2026-09-30T11:46:11.247Z] [INFO] Meal new-id created with serving: 1 serving, total_servings: 417751776stdout | tests/mealService.test.ts > mealService validation > createMeal > does not trigger legacy shim for non-serving units1777[2026-09-30T11:46:11.247Z] [INFO] Meal new-id created with serving: 1000 ml, total_servings: 1177817791780 ❯ tests/adaptiveTdeeService.test.ts [queued]1781 ❯ tests/aiServiceConnectionTest.test.ts [queued]1782 ❯ tests/barcodeLookup.test.ts [queued]1783 ❯ tests/calorieBalanceService.test.ts 0/531784 ❯ tests/chatbotToolRepositories.test.ts [queued]1785 ❯ tests/chatbotToolsCheckin.test.ts [queued]1786 ❯ tests/chatbotToolSchemas.test.ts [queued]1787 ❯ tests/chatbotToolsCoach.test.ts [queued]1788 ❯ tests/chatbotToolsExercise.test.ts [queued]1789 ❯ tests/chatbotToolsFood.test.ts [queued]1790 ❯ tests/chatbotToolsWorkoutPlans.test.ts [queued]1791 ❯ tests/chatService.test.ts [queued]1792 ❯ tests/dailySummaryRangeService.test.ts [queued]1793 ❯ tests/dailySummaryService.test.ts [queued]1794 ❯ tests/demoSeedService.test.ts 0/391795 ❯ tests/exerciseEntriesApiSchemas.test.ts 11/451796 ❯ tests/exerciseEntryStats.integration.test.ts [queued]1797 ❯ tests/exerciseRoutesV2.test.ts 21/211798 ❯ tests/exerciseService.groupedWorkouts.test.ts [queued]1799 ❯ tests/exerciseStatsService.test.ts 14/141800 ❯ tests/externalProviderService.test.ts [queued]1801 ❯ tests/foodCoreService.test.ts [queued]1802 ❯ tests/foodCoreService.updateSnapshot.test.ts [queued]1803 ❯ tests/foodEntryCopy.test.ts [queued]1804 ❯ tests/foodEntryMealService.test.ts [queued]1805 ❯ tests/foodPhotoEstimationService.test.ts 30/301806 ❯ tests/foodPhotoLogService.test.ts 23/231807 ❯ tests/foodPhotoMatchService.test.ts [queued]1808 ❯ tests/mcpRoutes.test.ts [queued]1809 ❯ tests/mealRepository.test.ts [queued]1810 ❯ tests/mealRoutes.test.ts [queued]1811 ❯ tests/mealService.test.ts 23/231812 ❯ tests/measurementRepository.water.test.ts [queued]1813 ❯ tests/measurementService.sleepResyncMerge.test.ts [queued]1814 ❯ tests/measurementService.timezone.test.ts [queued]1815 ❯ tests/measurementService.waterIntake.test.ts [queued]1816 ❯ tests/medicationRoutes.test.ts [queued]1817 ❯ tests/openFoodFactsAuth.test.ts [queued]1818 ❯ tests/openFoodFactsContributionService.test.ts 0/391819 ❯ tests/openFoodFactsService.test.ts 0/651820 ❯ tests/polarDataProcessor.test.ts 37/371821 ❯ tests/rlsPermissionMatrix.integration.test.ts [queued]1822 ❯ tests/timezone.test.ts 61/611823 ❯ tests/waterIntakeLinkedDecrement.test.ts [queued]1824 ❯ tests/waterIntakeRoutes.test.ts 0/291825 ❯ tests/workoutHandlerTelemetry.test.ts [queued]1826 ❯ tests/yazioService.test.ts [queued]18271828 Test Files 9 passed | 2 skipped (434)1829 Tests 362 passed | 47 skipped (668)1830 Start at 11:46:071831 Duration 3.37s1832stderr | tests/mealService.test.ts > mealService validation > updateMeal > throws ValidationError when total_servings is zero on update1833[2026-09-30T11:46:11.248Z] [ERROR] Error in mealService.updateMeal for user user-1, meal meal-1: ValidationError: Meal total_servings must be a positive number.1834 at normalizeServingFields (/build/source/SparkyFitnessServer/services/mealService.ts:109:13)1835 at Object.updateMeal (/build/source/SparkyFitnessServer/services/mealService.ts:547:5)1836 at processTicksAndRejections (node:internal/process/task_queues:104:5)183718381839 ❯ tests/adaptiveTdeeService.test.ts [queued]1840 ❯ tests/aiServiceConnectionTest.test.ts [queued]1841 ❯ tests/barcodeLookup.test.ts [queued]1842 ❯ tests/calorieBalanceService.test.ts 0/531843 ❯ tests/chatbotToolRepositories.test.ts [queued]1844 ❯ tests/chatbotToolsCheckin.test.ts [queued]1845 ❯ tests/chatbotToolSchemas.test.ts [queued]1846 ❯ tests/chatbotToolsCoach.test.ts [queued]1847 ❯ tests/chatbotToolsExercise.test.ts [queued]1848 ❯ tests/chatbotToolsFood.test.ts [queued]1849 ❯ tests/chatbotToolsWorkoutPlans.test.ts [queued]1850 ❯ tests/chatService.test.ts [queued]1851 ❯ tests/dailySummaryRangeService.test.ts [queued]1852 ❯ tests/dailySummaryService.test.ts [queued]1853 ❯ tests/demoSeedService.test.ts 0/391854 ❯ tests/exerciseEntriesApiSchemas.test.ts 11/451855 ❯ tests/exerciseEntryStats.integration.test.ts [queued]1856 ❯ tests/exerciseRoutesV2.test.ts 21/211857 ❯ tests/exerciseService.groupedWorkouts.test.ts [queued]1858 ❯ tests/exerciseStatsService.test.ts 14/141859 ❯ tests/externalProviderService.test.ts [queued]1860 ❯ tests/foodCoreService.test.ts [queued]1861 ❯ tests/foodCoreService.updateSnapshot.test.ts [queued]1862 ❯ tests/foodEntryCopy.test.ts [queued]1863 ❯ tests/foodEntryMealService.test.ts [queued]1864 ❯ tests/foodPhotoEstimationService.test.ts 30/301865 ❯ tests/foodPhotoLogService.test.ts 23/231866 ❯ tests/foodPhotoMatchService.test.ts [queued]1867 ❯ tests/mcpRoutes.test.ts [queued]1868 ❯ tests/mealRepository.test.ts [queued]1869 ❯ tests/mealRoutes.test.ts [queued]1870 ❯ tests/mealService.test.ts 23/231871 ❯ tests/measurementRepository.water.test.ts [queued]1872 ❯ tests/measurementService.sleepResyncMerge.test.ts [queued]1873 ❯ tests/measurementService.timezone.test.ts [queued]1874 ❯ tests/measurementService.waterIntake.test.ts [queued]1875 ❯ tests/medicationRoutes.test.ts [queued]1876 ❯ tests/openFoodFactsAuth.test.ts [queued]1877 ❯ tests/openFoodFactsContributionService.test.ts 0/391878 ❯ tests/openFoodFactsService.test.ts 0/651879 ❯ tests/polarDataProcessor.test.ts 37/371880 ❯ tests/rlsPermissionMatrix.integration.test.ts [queued]1881 ❯ tests/timezone.test.ts 61/611882 ❯ tests/waterIntakeLinkedDecrement.test.ts [queued]1883 ❯ tests/waterIntakeRoutes.test.ts 0/291884 ❯ tests/workoutHandlerTelemetry.test.ts [queued]1885 ❯ tests/yazioService.test.ts [queued]18861887 Test Files 9 passed | 2 skipped (434)1888 Tests 362 passed | 47 skipped (668)1889 Start at 11:46:071890 Duration 3.37s1891stdout | tests/mealService.test.ts > mealService validation > createMealFromDiaryEntries > routes diary-created meals through create-time serving normalization1892[2026-09-30T11:46:11.250Z] [INFO] Meal new-meal created with serving: 1 serving, total_servings: 118931894stdout | tests/mealService.test.ts > mealService validation > createMealFromDiaryEntries > validates a non-default food variant by calling getFoodVariantsByFoodId1895[2026-09-30T11:46:11.251Z] [INFO] Meal new-meal created with serving: 1 serving, total_servings: 1189618971898 ❯ tests/adaptiveTdeeService.test.ts [queued]1899 ❯ tests/aiServiceConnectionTest.test.ts [queued]1900 ❯ tests/barcodeLookup.test.ts [queued]1901 ❯ tests/calorieBalanceService.test.ts 0/531902 ❯ tests/chatbotToolRepositories.test.ts [queued]1903 ❯ tests/chatbotToolsCheckin.test.ts [queued]1904 ❯ tests/chatbotToolSchemas.test.ts [queued]1905 ❯ tests/chatbotToolsCoach.test.ts [queued]1906 ❯ tests/chatbotToolsExercise.test.ts [queued]1907 ❯ tests/chatbotToolsFood.test.ts [queued]1908 ❯ tests/chatbotToolsWorkoutPlans.test.ts [queued]1909 ❯ tests/chatService.test.ts [queued]1910 ❯ tests/dailySummaryRangeService.test.ts [queued]1911 ❯ tests/dailySummaryService.test.ts [queued]1912 ❯ tests/demoSeedService.test.ts 0/391913 ❯ tests/exerciseEntriesApiSchemas.test.ts 11/451914 ❯ tests/exerciseEntryStats.integration.test.ts [queued]1915 ❯ tests/exerciseRoutesV2.test.ts 21/211916 ❯ tests/exerciseService.groupedWorkouts.test.ts [queued]1917 ❯ tests/exerciseStatsService.test.ts 14/141918 ❯ tests/externalProviderService.test.ts [queued]1919 ❯ tests/foodCoreService.test.ts [queued]1920 ❯ tests/foodCoreService.updateSnapshot.test.ts [queued]1921 ❯ tests/foodEntryCopy.test.ts [queued]1922 ❯ tests/foodEntryMealService.test.ts [queued]1923 ❯ tests/foodPhotoEstimationService.test.ts 30/301924 ❯ tests/foodPhotoLogService.test.ts 23/231925 ❯ tests/foodPhotoMatchService.test.ts [queued]1926 ❯ tests/mcpRoutes.test.ts [queued]1927 ❯ tests/mealRepository.test.ts [queued]1928 ❯ tests/mealRoutes.test.ts [queued]1929 ❯ tests/mealService.test.ts 23/231930 ❯ tests/measurementRepository.water.test.ts [queued]1931 ❯ tests/measurementService.sleepResyncMerge.test.ts [queued]1932 ❯ tests/measurementService.timezone.test.ts [queued]1933 ❯ tests/measurementService.waterIntake.test.ts [queued]1934 ❯ tests/medicationRoutes.test.ts [queued]1935 ❯ tests/openFoodFactsAuth.test.ts [queued]1936 ❯ tests/openFoodFactsContributionService.test.ts 0/391937 ❯ tests/openFoodFactsService.test.ts 0/651938 ❯ tests/polarDataProcessor.test.ts 37/371939 ❯ tests/rlsPermissionMatrix.integration.test.ts [queued]1940 ❯ tests/timezone.test.ts 61/611941 ❯ tests/waterIntakeLinkedDecrement.test.ts [queued]1942 ❯ tests/waterIntakeRoutes.test.ts 0/291943 ❯ tests/workoutHandlerTelemetry.test.ts [queued]1944 ❯ tests/yazioService.test.ts [queued]19451946 Test Files 9 passed | 2 skipped (434)1947 Tests 362 passed | 47 skipped (668)1948 Start at 11:46:071949 Duration 3.37s1950stderr | tests/mealService.test.ts > mealService validation > createMealFromDiaryEntries > skips a food entry if its variant_id does not exist in the database1951[2026-09-30T11:46:11.251Z] [ERROR] Error in mealService.createMealFromDiaryEntries for user user-1: Error: Cannot create meal. The following foods or their variants are missing: Chicken (Variant ID: variant-non-existent). Please ensure they exist.1952 at Object.createMealFromDiaryEntries (/build/source/SparkyFitnessServer/services/mealService.ts:1068:13)1953 at processTicksAndRejections (node:internal/process/task_queues:104:5)1954 at /build/source/SparkyFitnessServer/tests/mealService.test.ts:392:71955 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:2783:2019561957stderr | tests/mealService.test.ts > mealService validation > linked-meal ingredient validation > rejects an ingredient row with both food_id and child_meal_id1958[2026-09-30T11:46:11.254Z] [ERROR] Error in mealService.createMeal for user user-1: ValidationError: An ingredient cannot reference both a food and a meal.1959 at validateMealIngredients (/build/source/SparkyFitnessServer/services/mealService.ts:162:15)1960 at Object.createMeal (/build/source/SparkyFitnessServer/services/mealService.ts:423:11)1961 at /build/source/SparkyFitnessServer/tests/mealService.test.ts:419:211962 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:1628:351963 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:2783:261964 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3319:201965 at new Promise (<anonymous>)1966 at runWithCancel (file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3314:10)1967 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3299:201968 at new Promise (<anonymous>)19691970stderr | tests/mealService.test.ts > mealService validation > linked-meal ingredient validation > rejects a food ingredient row missing food_id1971[2026-09-30T11:46:11.255Z] [ERROR] Error in mealService.createMeal for user user-1: ValidationError: A food ingredient requires food_id.1972 at validateMealIngredients (/build/source/SparkyFitnessServer/services/mealService.ts:203:13)1973 at Object.createMeal (/build/source/SparkyFitnessServer/services/mealService.ts:423:11)1974 at /build/source/SparkyFitnessServer/tests/mealService.test.ts:439:211975 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:1628:351976 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:2783:261977 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3319:201978 at new Promise (<anonymous>)1979 at runWithCancel (file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3314:10)1980 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3299:201981 at new Promise (<anonymous>)19821983stderr | tests/mealService.test.ts > mealService validation > linked-meal ingredient validation > rejects linking a meal that does not exist or is inaccessible1984[2026-09-30T11:46:11.256Z] [ERROR] Error in mealService.createMeal for user user-1: ValidationError: Linked meal meal-missing was not found or is not accessible.1985 at validateMealIngredients (/build/source/SparkyFitnessServer/services/mealService.ts:174:15)1986 at processTicksAndRejections (node:internal/process/task_queues:104:5)1987 at Object.createMeal (/build/source/SparkyFitnessServer/services/mealService.ts:423:5)19881989stderr | tests/mealService.test.ts > mealService validation > linked-meal ingredient validation > rejects a meal linking itself on update1990[2026-09-30T11:46:11.256Z] [ERROR] Error in mealService.updateMeal for user user-1, meal meal-1: ValidationError: A meal cannot contain itself.1991 at validateMealIngredients (/build/source/SparkyFitnessServer/services/mealService.ts:167:15)1992 at Object.updateMeal (/build/source/SparkyFitnessServer/services/mealService.ts:549:13)1993 at processTicksAndRejections (node:internal/process/task_queues:104:5)19941995stderr | tests/mealService.test.ts > mealService validation > linked-meal ingredient validation > rejects a link that would create a cycle1996[2026-09-30T11:46:11.257Z] [ERROR] Error in mealService.updateMeal for user user-1, meal meal-1: ValidationError: Linking meal "Child" would create a cycle.1997 at validateMealIngredients (/build/source/SparkyFitnessServer/services/mealService.ts:185:17)1998 at processTicksAndRejections (node:internal/process/task_queues:104:5)1999 at Object.updateMeal (/build/source/SparkyFitnessServer/services/mealService.ts:549:7)2000 at /build/source/SparkyFitnessServer/tests/mealService.test.ts:497:7loading 10,793 hidden lines…
12794stdout | tests/healthResyncTelemetryPreservation.test.ts > processHealthData pre-cleanup > still deletes everything else in the span, so an upstream deletion propagates12795[2026-09-30T11:46:19.344Z] [INFO] [processHealthData] Timezone fallback to account tz (UTC) by type: ExerciseSession=21279612797stdout | tests/healthResyncTelemetryPreservation.test.ts > processHealthData pre-cleanup > keeps the unconditional span delete for records with no source_id12798[2026-09-30T11:46:19.345Z] [INFO] [processHealthData] Pre-cleanup: Deleting existing exercise entries for source 'HealthKit' from 2026-08-04 to 2026-08-04.1279912800stdout | tests/healthResyncTelemetryPreservation.test.ts > processHealthData pre-cleanup > keeps the unconditional span delete for records with no source_id12801[2026-09-30T11:46:19.345Z] [INFO] [processHealthData] Timezone fallback to account tz (UTC) by type: ExerciseSession=11280212803 ✓ tests/foodEntryService.snapshot.test.ts (3 tests) 7ms12804 ✓ tests/healthResyncTelemetryPreservation.test.ts (3 tests) 29ms1280512806 ❯ tests/aiServiceConnectionTest.test.ts [queued]12807 ❯ tests/authServiceUpdateEmail.test.ts [queued]12808 ❯ tests/calorieCalculationService.test.ts [queued]12809 ❯ tests/calorieSafetyFloor.test.ts [queued]12810 ❯ tests/chatbotToolsFavorites.test.ts [queued]12811 ❯ tests/chatbotToolsHabits.test.ts [queued]12812 ❯ tests/chatbotToolsIndex.test.ts [queued]12813 ❯ tests/chatbotToolsIntegrations.test.ts [queued]12814 ❯ tests/chatbotToolsSyncedData.test.ts [queued]12815 ❯ tests/chatProviderOptions.test.ts [queued]12816 ❯ tests/chatService.test.ts [queued]12817 ❯ tests/chatServiceClassifier.test.ts [queued]12818 ❯ tests/corosService.test.ts [queued]12819 ❯ tests/corosSync.test.ts [queued]12820 ❯ tests/cycleCorrelations.test.ts [queued]12821 ❯ tests/cycleTtcRoutes.test.ts 0/612822 ❯ tests/exerciseEntriesApiSchemas.test.ts 35/4512823 ❯ tests/exerciseMuscleAggregates.test.ts 10/1012824 ❯ tests/exerciseSourceScoping.test.ts [queued]12825 ❯ tests/externalProviderRoutes.actorContext.test.ts [queued]12826 ❯ tests/externalProviderService.openFoodFactsConsent.test.ts [queued]12827 ❯ tests/favoritesService.test.ts 7/712828 ❯ tests/fitbitDataProcessor.test.ts [queued]12829 ❯ tests/foodEntrySelectedCopyRoute.test.ts [queued]12830 ❯ tests/foodEntryService.snapshot.test.ts 3/312831 ❯ tests/foodEntryWholeCopyRoute.test.ts [queued]12832 ❯ tests/foodOptionsService.test.ts [queued]12833 ❯ tests/garminService.workoutDefinitionWeights.test.ts [queued]12834 ❯ tests/gestation.test.ts [queued]12835 ❯ tests/healthResyncTelemetryPreservation.test.ts 3/312836 ❯ tests/hydrationNutritionRange.test.ts 4/412837 ❯ tests/hydrationTotalsService.test.ts [queued]12838 ❯ tests/integrationRoutesPermissionGating.test.ts 1/1812839 ❯ tests/liftosaurSync.test.ts [queued]12840 ❯ tests/mcpRoutes.test.ts [queued]12841 ❯ tests/mealTypeRoutes.delete.test.ts [queued]12842 ❯ tests/measurementSchemas.checkIn.test.ts [queued]12843 ❯ tests/nutrientDisplayPreferenceService.test.ts 5/512844 ❯ tests/ouraService.test.ts 1/712845 ❯ tests/pregnancyPhotoService.test.ts [queued]12846 ❯ tests/pregnancyRoutes.test.ts [queued]12847 ❯ tests/sleepScienceService.recordZone.test.ts [queued]12848 ❯ tests/syncedDataRoutes.test.ts 10/1012849 ❯ tests/updateEmailRoute.test.ts [queued]12850 ❯ tests/waterGoalExclusivity.test.ts [queued]12851 ❯ tests/withingsDataProcessor.test.ts [queued]12852 ❯ tests/zeroHydrationFactorPreset.test.ts [queued]1285312854 Test Files 276 passed | 6 skipped (434)12855 Tests 4306 passed | 309 skipped (4680)12856 Start at 11:46:0712857 Duration 11.49s12858 ✓ tests/integrationRoutesPermissionGating.test.ts (18 tests) 80ms12859 ✓ tests/cycleTtcRoutes.test.ts (6 tests) 73ms12860 ✓ tests/gestation.test.ts (14 tests) 10ms12861 ✓ tests/chatbotToolsSyncedData.test.ts (6 tests) 10ms12862 ✓ tests/cycleCorrelations.test.ts (8 tests) 8ms12863 ✓ tests/exerciseSourceScoping.test.ts (5 tests) 9ms1286412865 ❯ tests/aiServiceConnectionTest.test.ts [queued]12866 ❯ tests/authServiceUpdateEmail.test.ts [queued]12867 ❯ tests/betterAuthSchemaCheck.integration.test.ts [queued]12868 ❯ tests/calorieCalculationService.test.ts [queued]12869 ❯ tests/calorieSafetyFloor.test.ts [queued]12870 ❯ tests/chatbotToolsFavorites.test.ts [queued]12871 ❯ tests/chatbotToolsHabits.test.ts [queued]12872 ❯ tests/chatbotToolsIndex.test.ts [queued]12873 ❯ tests/chatbotToolsIntegrations.test.ts [queued]12874 ❯ tests/chatbotToolsSyncedData.test.ts 6/612875 ❯ tests/chatProviderOptions.test.ts [queued]12876 ❯ tests/chatService.test.ts [queued]12877 ❯ tests/chatServiceClassifier.test.ts [queued]12878 ❯ tests/corosService.test.ts [queued]12879 ❯ tests/corosSync.test.ts [queued]12880 ❯ tests/cycleCorrelations.test.ts 8/812881 ❯ tests/cycleTtcRoutes.test.ts 6/612882 ❯ tests/exerciseEntriesApiSchemas.test.ts 36/4512883 ❯ tests/exerciseMuscleAggregates.test.ts 10/1012884 ❯ tests/exerciseSourceScoping.test.ts 5/512885 ❯ tests/exerciseStatsRoutes.test.ts [queued]12886 ❯ tests/externalProviderRoutes.actorContext.test.ts [queued]12887 ❯ tests/externalProviderService.openFoodFactsConsent.test.ts [queued]12888 ❯ tests/fitbitDataProcessor.test.ts [queued]12889 ❯ tests/foodBulkImportOverwrite.test.ts [queued]12890 ❯ tests/foodEntrySelectedCopyRoute.test.ts 1/412891 ❯ tests/foodEntryService.snapshot.test.ts 3/312892 ❯ tests/foodEntryWholeCopyRoute.test.ts 0/412893 ❯ tests/foodOptionsService.test.ts [queued]12894 ❯ tests/garminService.workoutDefinitionWeights.test.ts [queued]12895 ❯ tests/gestation.test.ts 14/1412896 ❯ tests/healthResyncTelemetryPreservation.test.ts 3/312897 ❯ tests/hydrationTotalsService.test.ts [queued]12898 ❯ tests/integrationRoutesPermissionGating.test.ts 18/1812899 ❯ tests/liftosaurSync.test.ts [queued]12900 ❯ tests/mcpRoutes.test.ts [queued]12901 ❯ tests/mealTypeRoutes.delete.test.ts [queued]12902 ❯ tests/measurementSchemas.checkIn.test.ts [queued]12903 ❯ tests/ouraService.test.ts 1/712904 ❯ tests/pregnancyPhotoService.test.ts [queued]12905 ❯ tests/pregnancyRoutes.test.ts [queued]12906 ❯ tests/sleepScienceService.recordZone.test.ts [queued]12907 ❯ tests/updateEmailRoute.test.ts [queued]12908 ❯ tests/waterGoalExclusivity.test.ts 0/412909 ❯ tests/weightRamp.test.ts [queued]12910 ❯ tests/withingsDataProcessor.test.ts [queued]12911 ❯ tests/zeroHydrationFactorPreset.test.ts [queued]1291212913 Test Files 282 passed | 6 skipped (434)12914 Tests 4364 passed | 309 skipped (4725)12915 Start at 11:46:0712916 Duration 11.59s12917stderr | tests/foodEntrySelectedCopyRoute.test.ts > POST /copy-selected-from-user > preserves a service conflict response through the error handler12918[2026-09-30T11:46:19.522Z] [ERROR] Error caught by centralized handler: One or more source entries changed. Refresh the family diary. Error: One or more source entries changed. Refresh the family diary.12919 at /build/source/SparkyFitnessServer/tests/foodEntrySelectedCopyRoute.test.ts:113:712920 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:1628:3512921 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:2783:2612922 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3319:2012923 at new Promise (<anonymous>)12924 at runWithCancel (file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3314:10)12925 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3299:2012926 at new Promise (<anonymous>)12927 at runWithTimeout (file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3257:10)12928 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3876:64129291293012931 ❯ tests/aiServiceConnectionTest.test.ts [queued]12932 ❯ tests/authServiceUpdateEmail.test.ts [queued]12933 ❯ tests/betterAuthSchemaCheck.integration.test.ts [queued]12934 ❯ tests/calorieCalculationService.test.ts [queued]12935 ❯ tests/calorieSafetyFloor.test.ts [queued]12936 ❯ tests/chatbotToolsFavorites.test.ts [queued]12937 ❯ tests/chatbotToolsHabits.test.ts [queued]12938 ❯ tests/chatbotToolsIndex.test.ts [queued]12939 ❯ tests/chatbotToolsIntegrations.test.ts [queued]12940 ❯ tests/chatbotToolsSyncedData.test.ts 6/612941 ❯ tests/chatProviderOptions.test.ts [queued]12942 ❯ tests/chatService.test.ts [queued]12943 ❯ tests/chatServiceClassifier.test.ts [queued]12944 ❯ tests/corosService.test.ts [queued]12945 ❯ tests/corosSync.test.ts [queued]12946 ❯ tests/cycleCorrelations.test.ts 8/812947 ❯ tests/cycleTtcRoutes.test.ts 6/612948 ❯ tests/exerciseEntriesApiSchemas.test.ts 36/4512949 ❯ tests/exerciseMuscleAggregates.test.ts 10/1012950 ❯ tests/exerciseSourceScoping.test.ts 5/512951 ❯ tests/exerciseStatsRoutes.test.ts [queued]12952 ❯ tests/externalProviderRoutes.actorContext.test.ts [queued]12953 ❯ tests/externalProviderService.openFoodFactsConsent.test.ts [queued]12954 ❯ tests/fitbitDataProcessor.test.ts [queued]12955 ❯ tests/foodBulkImportOverwrite.test.ts [queued]12956 ❯ tests/foodEntrySelectedCopyRoute.test.ts 1/412957 ❯ tests/foodEntryService.snapshot.test.ts 3/312958 ❯ tests/foodEntryWholeCopyRoute.test.ts 0/412959 ❯ tests/foodOptionsService.test.ts [queued]12960 ❯ tests/garminService.workoutDefinitionWeights.test.ts [queued]12961 ❯ tests/gestation.test.ts 14/1412962 ❯ tests/healthResyncTelemetryPreservation.test.ts 3/312963 ❯ tests/hydrationTotalsService.test.ts [queued]12964 ❯ tests/integrationRoutesPermissionGating.test.ts 18/1812965 ❯ tests/liftosaurSync.test.ts [queued]12966 ❯ tests/mcpRoutes.test.ts [queued]12967 ❯ tests/mealTypeRoutes.delete.test.ts [queued]12968 ❯ tests/measurementSchemas.checkIn.test.ts [queued]12969 ❯ tests/ouraService.test.ts 1/712970 ❯ tests/pregnancyPhotoService.test.ts [queued]12971 ❯ tests/pregnancyRoutes.test.ts [queued]12972 ❯ tests/sleepScienceService.recordZone.test.ts [queued]12973 ❯ tests/updateEmailRoute.test.ts [queued]12974 ❯ tests/waterGoalExclusivity.test.ts 0/412975 ❯ tests/weightRamp.test.ts [queued]12976 ❯ tests/withingsDataProcessor.test.ts [queued]12977 ❯ tests/zeroHydrationFactorPreset.test.ts [queued]1297812979 Test Files 282 passed | 6 skipped (434)12980 Tests 4364 passed | 309 skipped (4725)12981 Start at 11:46:0712982 Duration 11.59s12983 ✓ tests/foodEntrySelectedCopyRoute.test.ts (4 tests) 37ms1298412985 ❯ tests/aiServiceConnectionTest.test.ts [queued]12986 ❯ tests/authServiceUpdateEmail.test.ts [queued]12987 ❯ tests/betterAuthSchemaCheck.integration.test.ts [queued]12988 ❯ tests/calorieCalculationService.test.ts 6/612989 ❯ tests/calorieSafetyFloor.test.ts [queued]12990 ❯ tests/chatbotToolsFavorites.test.ts [queued]12991 ❯ tests/chatbotToolsHabits.test.ts [queued]12992 ❯ tests/chatbotToolsIndex.test.ts [queued]12993 ❯ tests/chatbotToolsIntegrations.test.ts [queued]12994 ❯ tests/chatProviderOptions.test.ts [queued]12995 ❯ tests/chatService.test.ts [queued]12996 ❯ tests/chatServiceClassifier.test.ts [queued]12997 ❯ tests/corosService.test.ts [queued]12998 ❯ tests/corosSync.test.ts [queued]12999 ❯ tests/exerciseEntriesApiSchemas.test.ts 37/4513000 ❯ tests/exerciseEntryRoutes.distanceClear.test.ts [queued]13001 ❯ tests/exerciseEntryRoutes.progress.test.ts [queued]13002 ❯ tests/exerciseSourceScoping.test.ts 5/513003 ❯ tests/exerciseStatsRoutes.test.ts [queued]13004 ❯ tests/externalProviderRoutes.actorContext.test.ts [queued]13005 ❯ tests/externalProviderService.openFoodFactsConsent.test.ts [queued]13006 ❯ tests/fitbitDataProcessor.test.ts [queued]13007 ❯ tests/foodBulkImportOverwrite.test.ts [queued]13008 ❯ tests/foodEntryMealRoutes.create.test.ts [queued]13009 ❯ tests/foodEntrySelectedCopyRoute.test.ts 4/413010 ❯ tests/foodEntryWholeCopyRoute.test.ts 4/413011 ❯ tests/foodOptionsService.test.ts [queued]13012 ❯ tests/garminConnectErrorFormatter.test.ts [queued]13013 ❯ tests/garminIncrementalSync.test.ts [queued]13014 ❯ tests/garminService.workoutDefinitionWeights.test.ts [queued]13015 ❯ tests/hydrationTotalsService.test.ts 0/413016 ❯ tests/liftosaurSync.test.ts [queued]13017 ❯ tests/mcpRoutes.test.ts [queued]13018 ❯ tests/mealTypeRoutes.delete.test.ts [queued]13019 ❯ tests/measurementSchemas.checkIn.test.ts 0/3113020 ❯ tests/medicationSchemas.zod.test.ts [queued]13021 ❯ tests/openFoodFactsAlcohol.test.ts [queued]13022 ❯ tests/ouraService.test.ts 1/713023 ❯ tests/pregnancyPhotoService.test.ts 10/1013024 ❯ tests/pregnancyRoutes.test.ts [queued]13025 ❯ tests/sleepScienceService.recordZone.test.ts 5/513026 ❯ tests/syncedDataRepository.test.ts [queued]13027 ❯ tests/updateEmailRoute.test.ts [queued]13028 ❯ tests/waterGoalExclusivity.test.ts 4/413029 ❯ tests/weightRamp.test.ts [queued]13030 ❯ tests/withingsDataProcessor.test.ts [queued]13031 ❯ tests/zeroHydrationFactorPreset.test.ts 0/11303213033 Test Files 288 passed | 6 skipped (434)13034 Tests 4397 passed | 309 skipped (4782)13035 Start at 11:46:0713036 Duration 11.69s13037stderr | tests/foodEntryWholeCopyRoute.test.ts > POST /copy-reviewed-from-user > preserves a stale reviewed snapshot conflict through the error handler13038[2026-09-30T11:46:19.570Z] [ERROR] Error caught by centralized handler: One or more source entries changed. Refresh the family diary. Error: One or more source entries changed. Refresh the family diary.13039 at /build/source/SparkyFitnessServer/tests/foodEntryWholeCopyRoute.test.ts:118:713040 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:1628:3513041 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:2783:2613042 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3319:2013043 at new Promise (<anonymous>)13044 at runWithCancel (file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3314:10)13045 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3299:2013046 at new Promise (<anonymous>)13047 at runWithTimeout (file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3257:10)13048 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3876:64130491305013051 ❯ tests/aiServiceConnectionTest.test.ts [queued]13052 ❯ tests/authServiceUpdateEmail.test.ts [queued]13053 ❯ tests/betterAuthSchemaCheck.integration.test.ts [queued]13054 ❯ tests/calorieCalculationService.test.ts 6/613055 ❯ tests/calorieSafetyFloor.test.ts [queued]13056 ❯ tests/chatbotToolsFavorites.test.ts [queued]13057 ❯ tests/chatbotToolsHabits.test.ts [queued]13058 ❯ tests/chatbotToolsIndex.test.ts [queued]13059 ❯ tests/chatbotToolsIntegrations.test.ts [queued]13060 ❯ tests/chatProviderOptions.test.ts [queued]13061 ❯ tests/chatService.test.ts [queued]13062 ❯ tests/chatServiceClassifier.test.ts [queued]13063 ❯ tests/corosService.test.ts [queued]13064 ❯ tests/corosSync.test.ts [queued]13065 ❯ tests/exerciseEntriesApiSchemas.test.ts 37/4513066 ❯ tests/exerciseEntryRoutes.distanceClear.test.ts [queued]13067 ❯ tests/exerciseEntryRoutes.progress.test.ts [queued]13068 ❯ tests/exerciseSourceScoping.test.ts 5/513069 ❯ tests/exerciseStatsRoutes.test.ts [queued]13070 ❯ tests/externalProviderRoutes.actorContext.test.ts [queued]13071 ❯ tests/externalProviderService.openFoodFactsConsent.test.ts [queued]13072 ❯ tests/fitbitDataProcessor.test.ts [queued]13073 ❯ tests/foodBulkImportOverwrite.test.ts [queued]13074 ❯ tests/foodEntryMealRoutes.create.test.ts [queued]13075 ❯ tests/foodEntrySelectedCopyRoute.test.ts 4/413076 ❯ tests/foodEntryWholeCopyRoute.test.ts 4/413077 ❯ tests/foodOptionsService.test.ts [queued]13078 ❯ tests/garminConnectErrorFormatter.test.ts [queued]13079 ❯ tests/garminIncrementalSync.test.ts [queued]13080 ❯ tests/garminService.workoutDefinitionWeights.test.ts [queued]13081 ❯ tests/hydrationTotalsService.test.ts 0/413082 ❯ tests/liftosaurSync.test.ts [queued]13083 ❯ tests/mcpRoutes.test.ts [queued]13084 ❯ tests/mealTypeRoutes.delete.test.ts [queued]13085 ❯ tests/measurementSchemas.checkIn.test.ts 0/3113086 ❯ tests/medicationSchemas.zod.test.ts [queued]13087 ❯ tests/openFoodFactsAlcohol.test.ts [queued]13088 ❯ tests/ouraService.test.ts 1/713089 ❯ tests/pregnancyPhotoService.test.ts 10/1013090 ❯ tests/pregnancyRoutes.test.ts [queued]13091 ❯ tests/sleepScienceService.recordZone.test.ts 5/513092 ❯ tests/syncedDataRepository.test.ts [queued]13093 ❯ tests/updateEmailRoute.test.ts [queued]13094 ❯ tests/waterGoalExclusivity.test.ts 4/413095 ❯ tests/weightRamp.test.ts [queued]13096 ❯ tests/withingsDataProcessor.test.ts [queued]13097 ❯ tests/zeroHydrationFactorPreset.test.ts 0/11309813099 Test Files 288 passed | 6 skipped (434)13100 Tests 4397 passed | 309 skipped (4782)13101 Start at 11:46:0713102 Duration 11.69s13103 ✓ tests/foodEntryWholeCopyRoute.test.ts (4 tests) 43ms13104 ✓ tests/waterGoalExclusivity.test.ts (4 tests) 8ms13105 ✓ tests/pregnancyPhotoService.test.ts (10 tests) 12ms13106 ✓ tests/sleepScienceService.recordZone.test.ts (5 tests) 22ms13107 ✓ tests/calorieCalculationService.test.ts (6 tests) 5ms1310813109 ❯ tests/aiServiceConnectionTest.test.ts [queued]13110 ❯ tests/authServiceUpdateEmail.test.ts [queued]13111 ❯ tests/betterAuthSchemaCheck.integration.test.ts [queued]13112 ❯ tests/calorieCalculationService.test.ts 6/613113 ❯ tests/calorieSafetyFloor.test.ts [queued]13114 ❯ tests/chatbotToolsFavorites.test.ts [queued]13115 ❯ tests/chatbotToolsHabits.test.ts [queued]13116 ❯ tests/chatbotToolsIndex.test.ts [queued]13117 ❯ tests/chatbotToolsIntegrations.test.ts [queued]13118 ❯ tests/chatProviderOptions.test.ts [queued]13119 ❯ tests/chatService.test.ts [queued]13120 ❯ tests/chatServiceClassifier.test.ts [queued]13121 ❯ tests/corosService.test.ts [queued]13122 ❯ tests/corosSync.test.ts [queued]13123 ❯ tests/exerciseEntriesApiSchemas.test.ts 37/4513124 ❯ tests/exerciseEntryRoutes.distanceClear.test.ts [queued]13125 ❯ tests/exerciseEntryRoutes.progress.test.ts [queued]13126 ❯ tests/exerciseSourceScoping.test.ts 5/513127 ❯ tests/exerciseStatsRoutes.test.ts [queued]13128 ❯ tests/externalProviderRoutes.actorContext.test.ts [queued]13129 ❯ tests/externalProviderService.openFoodFactsConsent.test.ts [queued]13130 ❯ tests/fitbitDataProcessor.test.ts [queued]13131 ❯ tests/foodBulkImportOverwrite.test.ts [queued]13132 ❯ tests/foodEntryMealRoutes.create.test.ts [queued]13133 ❯ tests/foodEntrySelectedCopyRoute.test.ts 4/413134 ❯ tests/foodEntryWholeCopyRoute.test.ts 4/413135 ❯ tests/foodOptionsService.test.ts [queued]13136 ❯ tests/garminConnectErrorFormatter.test.ts [queued]13137 ❯ tests/garminIncrementalSync.test.ts [queued]13138 ❯ tests/garminService.workoutDefinitionWeights.test.ts [queued]13139 ❯ tests/hydrationTotalsService.test.ts 0/413140 ❯ tests/liftosaurSync.test.ts [queued]13141 ❯ tests/mcpRoutes.test.ts [queued]13142 ❯ tests/mealTypeRoutes.delete.test.ts [queued]13143 ❯ tests/measurementSchemas.checkIn.test.ts 0/3113144 ❯ tests/medicationSchemas.zod.test.ts [queued]13145 ❯ tests/openFoodFactsAlcohol.test.ts [queued]13146 ❯ tests/ouraService.test.ts 1/713147 ❯ tests/pregnancyPhotoService.test.ts 10/1013148 ❯ tests/pregnancyRoutes.test.ts [queued]13149 ❯ tests/sleepScienceService.recordZone.test.ts 5/513150 ❯ tests/syncedDataRepository.test.ts [queued]13151 ❯ tests/updateEmailRoute.test.ts [queued]13152 ❯ tests/waterGoalExclusivity.test.ts 4/413153 ❯ tests/weightRamp.test.ts [queued]13154 ❯ tests/withingsDataProcessor.test.ts [queued]13155 ❯ tests/zeroHydrationFactorPreset.test.ts 0/11315613157 Test Files 288 passed | 6 skipped (434)13158 Tests 4397 passed | 309 skipped (4782)13159 Start at 11:46:0713160 Duration 11.69s13161stderr | tests/hydrationTotalsService.test.ts > hydrationTotalsService.resolveWaterTotalsForDate > degrades to 0 food_ml when the food-derived water query fails13162[2026-09-30T11:46:19.651Z] [WARN] Food-derived water fetch failed for user user-1 on 2026-09-05, defaulting to 0: Error: DB error13163 at /build/source/SparkyFitnessServer/tests/hydrationTotalsService.test.ts:85:713164 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:1628:3513165 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:2783:2613166 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3319:2013167 at new Promise (<anonymous>)13168 at runWithCancel (file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3314:10)13169 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3299:2013170 at new Promise (<anonymous>)13171 at runWithTimeout (file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3257:10)13172 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3876:64131731317413175 ❯ tests/aiServiceConnectionTest.test.ts [queued]13176 ❯ tests/authServiceUpdateEmail.test.ts [queued]13177 ❯ tests/betterAuthSchemaCheck.integration.test.ts [queued]13178 ❯ tests/calorieCalculationService.test.ts 6/613179 ❯ tests/calorieSafetyFloor.test.ts [queued]13180 ❯ tests/chatbotToolsFavorites.test.ts [queued]13181 ❯ tests/chatbotToolsHabits.test.ts [queued]13182 ❯ tests/chatbotToolsIndex.test.ts [queued]13183 ❯ tests/chatbotToolsIntegrations.test.ts [queued]13184 ❯ tests/chatProviderOptions.test.ts [queued]13185 ❯ tests/chatService.test.ts [queued]13186 ❯ tests/chatServiceClassifier.test.ts [queued]13187 ❯ tests/corosService.test.ts [queued]13188 ❯ tests/corosSync.test.ts [queued]13189 ❯ tests/exerciseEntriesApiSchemas.test.ts 37/4513190 ❯ tests/exerciseEntryRoutes.distanceClear.test.ts [queued]13191 ❯ tests/exerciseEntryRoutes.progress.test.ts [queued]13192 ❯ tests/exerciseSourceScoping.test.ts 5/513193 ❯ tests/exerciseStatsRoutes.test.ts [queued]13194 ❯ tests/externalProviderRoutes.actorContext.test.ts [queued]13195 ❯ tests/externalProviderService.openFoodFactsConsent.test.ts [queued]13196 ❯ tests/fitbitDataProcessor.test.ts [queued]13197 ❯ tests/foodBulkImportOverwrite.test.ts [queued]13198 ❯ tests/foodEntryMealRoutes.create.test.ts [queued]13199 ❯ tests/foodEntrySelectedCopyRoute.test.ts 4/413200 ❯ tests/foodEntryWholeCopyRoute.test.ts 4/413201 ❯ tests/foodOptionsService.test.ts [queued]13202 ❯ tests/garminConnectErrorFormatter.test.ts [queued]13203 ❯ tests/garminIncrementalSync.test.ts [queued]13204 ❯ tests/garminService.workoutDefinitionWeights.test.ts [queued]13205 ❯ tests/hydrationTotalsService.test.ts 0/413206 ❯ tests/liftosaurSync.test.ts [queued]13207 ❯ tests/mcpRoutes.test.ts [queued]13208 ❯ tests/mealTypeRoutes.delete.test.ts [queued]13209 ❯ tests/measurementSchemas.checkIn.test.ts 0/3113210 ❯ tests/medicationSchemas.zod.test.ts [queued]13211 ❯ tests/openFoodFactsAlcohol.test.ts [queued]13212 ❯ tests/ouraService.test.ts 1/713213 ❯ tests/pregnancyPhotoService.test.ts 10/1013214 ❯ tests/pregnancyRoutes.test.ts [queued]13215 ❯ tests/sleepScienceService.recordZone.test.ts 5/513216 ❯ tests/syncedDataRepository.test.ts [queued]13217 ❯ tests/updateEmailRoute.test.ts [queued]13218 ❯ tests/waterGoalExclusivity.test.ts 4/413219 ❯ tests/weightRamp.test.ts [queued]13220 ❯ tests/withingsDataProcessor.test.ts [queued]13221 ❯ tests/zeroHydrationFactorPreset.test.ts 0/11322213223 Test Files 288 passed | 6 skipped (434)13224 Tests 4397 passed | 309 skipped (4782)13225 Start at 11:46:0713226 Duration 11.69s13227 ✓ tests/measurementSchemas.checkIn.test.ts (31 tests) 13ms13228 ✓ tests/zeroHydrationFactorPreset.test.ts (1 test) 19ms13229 ✓ tests/hydrationTotalsService.test.ts (4 tests) 10ms13230 ✓ tests/garminService.workoutDefinitionWeights.test.ts (3 tests) 6ms13231stdout | tests/liftosaurSync.test.ts > liftosaurSync > coordinates synchronization for workouts and measurements with detailed counts13232[2026-09-30T11:46:19.728Z] [INFO] Starting Liftosaur INCREMENTAL synchronization for user user-1...1323313234stdout | tests/liftosaurSync.test.ts > liftosaurSync > coordinates synchronization for workouts and measurements with detailed counts13235[2026-09-30T11:46:19.731Z] [INFO] [liftosaurService] Imported 3 measurement records for user user-1.1323613237stdout | tests/liftosaurSync.test.ts > liftosaurSync > coordinates synchronization for workouts and measurements with detailed counts13238[2026-09-30T11:46:19.731Z] [INFO] Liftosaur synchronization completed for user user-1. Total imported: 4 (1 workouts, 3 measurements)1323913240stdout | tests/liftosaurSync.test.ts > liftosaurSync > stops paginating when a full sync reports more pages without advancing the cursor13241[2026-09-30T11:46:19.733Z] [INFO] Starting Liftosaur FULL synchronization for user user-1...132421324313244 ❯ tests/aiServiceConnectionTest.test.ts [queued]13245 ❯ tests/apiKeySessionCache.test.ts [queued]13246 ❯ tests/authServiceUpdateEmail.test.ts [queued]13247 ❯ tests/betterAuthSchemaCheck.integration.test.ts [queued]13248 ❯ tests/calorieCalculationService.test.ts 6/613249 ❯ tests/calorieSafetyFloor.test.ts [queued]13250 ❯ tests/chatbotToolsBarcode.test.ts [queued]13251 ❯ tests/chatbotToolsFavorites.test.ts [queued]13252 ❯ tests/chatbotToolsHabits.test.ts [queued]13253 ❯ tests/chatbotToolsIndex.test.ts [queued]13254 ❯ tests/chatbotToolsIntegrations.test.ts [queued]13255 ❯ tests/chatProviderOptions.test.ts [queued]13256 ❯ tests/chatService.test.ts [queued]13257 ❯ tests/chatServiceClassifier.test.ts [queued]13258 ❯ tests/corosRoutes.test.ts [queued]13259 ❯ tests/corosService.test.ts [queued]13260 ❯ tests/corosSync.test.ts [queued]13261 ❯ tests/exerciseEntriesApiSchemas.test.ts 37/4513262 ❯ tests/exerciseEntryRoutes.distanceClear.test.ts [queued]13263 ❯ tests/exerciseEntryRoutes.progress.test.ts [queued]13264 ❯ tests/exerciseEntryService.csvImport.test.ts [queued]13265 ❯ tests/exerciseStatsRoutes.test.ts [queued]13266 ❯ tests/externalProviderRoutes.actorContext.test.ts 0/513267 ❯ tests/externalProviderService.openFoodFactsConsent.test.ts [queued]13268 ❯ tests/fitbitDataProcessor.test.ts 3/313269 ❯ tests/foodBulkImportOverwrite.test.ts [queued]13270 ❯ tests/foodEntryMealRoutes.create.test.ts [queued]13271 ❯ tests/foodOptionsService.test.ts [queued]13272 ❯ tests/garminConnectErrorFormatter.test.ts [queued]13273 ❯ tests/garminIncrementalSync.test.ts [queued]13274 ❯ tests/garminService.workoutDefinitionWeights.test.ts 3/313275 ❯ tests/hydrationTotalsService.test.ts 4/413276 ❯ tests/liftosaurMeasurementsService.test.ts [queued]13277 ❯ tests/liftosaurSync.test.ts 2/213278 ❯ tests/mcpRoutes.test.ts [queued]13279 ❯ tests/mealTypeRoutes.delete.test.ts [queued]13280 ❯ tests/measurementSchemas.checkIn.test.ts 31/3113281 ❯ tests/medicationSchemas.zod.test.ts [queued]13282 ❯ tests/openFoodFactsAlcohol.test.ts [queued]13283 ❯ tests/openFoodFactsProductReadRateLimitService.test.ts [queued]13284 ❯ tests/ouraService.test.ts 1/713285 ❯ tests/pregnancyRoutes.test.ts [queued]13286 ❯ tests/syncedDataRepository.test.ts [queued]13287 ❯ tests/updateEmailRoute.test.ts [queued]13288 ❯ tests/weightRamp.test.ts [queued]13289 ❯ tests/withingsDataProcessor.test.ts 1/213290 ❯ tests/zeroHydrationFactorPreset.test.ts 1/11329113292 Test Files 294 passed | 6 skipped (434)13293 Tests 4442 passed | 309 skipped (4797)13294 Start at 11:46:0713295 Duration 11.81s13296stderr | tests/liftosaurSync.test.ts > liftosaurSync > stops paginating when a full sync reports more pages without advancing the cursor13297[2026-09-30T11:46:19.734Z] [WARN] [liftosaurService] Liftosaur reported more history for user user-1 without advancing the cursor; stopping pagination.132981329913300 ❯ tests/aiServiceConnectionTest.test.ts [queued]13301 ❯ tests/apiKeySessionCache.test.ts [queued]13302 ❯ tests/authServiceUpdateEmail.test.ts [queued]13303 ❯ tests/betterAuthSchemaCheck.integration.test.ts [queued]13304 ❯ tests/calorieCalculationService.test.ts 6/613305 ❯ tests/calorieSafetyFloor.test.ts [queued]13306 ❯ tests/chatbotToolsBarcode.test.ts [queued]13307 ❯ tests/chatbotToolsFavorites.test.ts [queued]13308 ❯ tests/chatbotToolsHabits.test.ts [queued]13309 ❯ tests/chatbotToolsIndex.test.ts [queued]13310 ❯ tests/chatbotToolsIntegrations.test.ts [queued]13311 ❯ tests/chatProviderOptions.test.ts [queued]13312 ❯ tests/chatService.test.ts [queued]13313 ❯ tests/chatServiceClassifier.test.ts [queued]13314 ❯ tests/corosRoutes.test.ts [queued]13315 ❯ tests/corosService.test.ts [queued]13316 ❯ tests/corosSync.test.ts [queued]13317 ❯ tests/exerciseEntriesApiSchemas.test.ts 37/4513318 ❯ tests/exerciseEntryRoutes.distanceClear.test.ts [queued]13319 ❯ tests/exerciseEntryRoutes.progress.test.ts [queued]13320 ❯ tests/exerciseEntryService.csvImport.test.ts [queued]13321 ❯ tests/exerciseStatsRoutes.test.ts [queued]13322 ❯ tests/externalProviderRoutes.actorContext.test.ts 0/513323 ❯ tests/externalProviderService.openFoodFactsConsent.test.ts [queued]13324 ❯ tests/fitbitDataProcessor.test.ts 3/313325 ❯ tests/foodBulkImportOverwrite.test.ts [queued]13326 ❯ tests/foodEntryMealRoutes.create.test.ts [queued]13327 ❯ tests/foodOptionsService.test.ts [queued]13328 ❯ tests/garminConnectErrorFormatter.test.ts [queued]13329 ❯ tests/garminIncrementalSync.test.ts [queued]13330 ❯ tests/garminService.workoutDefinitionWeights.test.ts 3/313331 ❯ tests/hydrationTotalsService.test.ts 4/413332 ❯ tests/liftosaurMeasurementsService.test.ts [queued]13333 ❯ tests/liftosaurSync.test.ts 2/213334 ❯ tests/mcpRoutes.test.ts [queued]13335 ❯ tests/mealTypeRoutes.delete.test.ts [queued]13336 ❯ tests/measurementSchemas.checkIn.test.ts 31/3113337 ❯ tests/medicationSchemas.zod.test.ts [queued]13338 ❯ tests/openFoodFactsAlcohol.test.ts [queued]13339 ❯ tests/openFoodFactsProductReadRateLimitService.test.ts [queued]13340 ❯ tests/ouraService.test.ts 1/713341 ❯ tests/pregnancyRoutes.test.ts [queued]13342 ❯ tests/syncedDataRepository.test.ts [queued]13343 ❯ tests/updateEmailRoute.test.ts [queued]13344 ❯ tests/weightRamp.test.ts [queued]13345 ❯ tests/withingsDataProcessor.test.ts 1/213346 ❯ tests/zeroHydrationFactorPreset.test.ts 1/11334713348 Test Files 294 passed | 6 skipped (434)13349 Tests 4442 passed | 309 skipped (4797)13350 Start at 11:46:0713351 Duration 11.81s13352stdout | tests/liftosaurSync.test.ts > liftosaurSync > stops paginating when a full sync reports more pages without advancing the cursor13353[2026-09-30T11:46:19.734Z] [INFO] [liftosaurService] Imported 3 measurement records for user user-1.1335413355stdout | tests/liftosaurSync.test.ts > liftosaurSync > stops paginating when a full sync reports more pages without advancing the cursor13356[2026-09-30T11:46:19.734Z] [INFO] Liftosaur synchronization completed for user user-1. Total imported: 5 (2 workouts, 3 measurements)1335713358 ✓ tests/liftosaurSync.test.ts (2 tests) 10ms13359 ✓ tests/fitbitDataProcessor.test.ts (3 tests) 7ms1336013361 ❯ tests/aiServiceConnectionTest.test.ts [queued]13362 ❯ tests/apiKeySessionCache.test.ts [queued]13363 ❯ tests/authServiceUpdateEmail.test.ts [queued]13364 ❯ tests/betterAuthSchemaCheck.integration.test.ts [queued]13365 ❯ tests/calorieCalculationService.test.ts 6/613366 ❯ tests/calorieSafetyFloor.test.ts [queued]13367 ❯ tests/chatbotToolsBarcode.test.ts [queued]13368 ❯ tests/chatbotToolsFavorites.test.ts [queued]13369 ❯ tests/chatbotToolsHabits.test.ts [queued]13370 ❯ tests/chatbotToolsIndex.test.ts [queued]13371 ❯ tests/chatbotToolsIntegrations.test.ts [queued]13372 ❯ tests/chatProviderOptions.test.ts [queued]13373 ❯ tests/chatService.test.ts [queued]13374 ❯ tests/chatServiceClassifier.test.ts [queued]13375 ❯ tests/corosRoutes.test.ts [queued]13376 ❯ tests/corosService.test.ts [queued]13377 ❯ tests/corosSync.test.ts [queued]13378 ❯ tests/exerciseEntriesApiSchemas.test.ts 37/4513379 ❯ tests/exerciseEntryRoutes.distanceClear.test.ts [queued]13380 ❯ tests/exerciseEntryRoutes.progress.test.ts [queued]13381 ❯ tests/exerciseEntryService.csvImport.test.ts [queued]13382 ❯ tests/exerciseStatsRoutes.test.ts [queued]13383 ❯ tests/externalProviderRoutes.actorContext.test.ts 0/513384 ❯ tests/externalProviderService.openFoodFactsConsent.test.ts [queued]13385 ❯ tests/fitbitDataProcessor.test.ts 3/313386 ❯ tests/foodBulkImportOverwrite.test.ts [queued]13387 ❯ tests/foodEntryMealRoutes.create.test.ts [queued]13388 ❯ tests/foodOptionsService.test.ts [queued]13389 ❯ tests/garminConnectErrorFormatter.test.ts [queued]13390 ❯ tests/garminIncrementalSync.test.ts [queued]13391 ❯ tests/garminService.workoutDefinitionWeights.test.ts 3/313392 ❯ tests/hydrationTotalsService.test.ts 4/413393 ❯ tests/liftosaurMeasurementsService.test.ts [queued]13394 ❯ tests/liftosaurSync.test.ts 2/213395 ❯ tests/mcpRoutes.test.ts [queued]13396 ❯ tests/mealTypeRoutes.delete.test.ts [queued]13397 ❯ tests/measurementSchemas.checkIn.test.ts 31/3113398 ❯ tests/medicationSchemas.zod.test.ts [queued]13399 ❯ tests/openFoodFactsAlcohol.test.ts [queued]13400 ❯ tests/openFoodFactsProductReadRateLimitService.test.ts [queued]13401 ❯ tests/ouraService.test.ts 1/713402 ❯ tests/pregnancyRoutes.test.ts [queued]13403 ❯ tests/syncedDataRepository.test.ts [queued]13404 ❯ tests/updateEmailRoute.test.ts [queued]13405 ❯ tests/weightRamp.test.ts [queued]13406 ❯ tests/withingsDataProcessor.test.ts 1/213407 ❯ tests/zeroHydrationFactorPreset.test.ts 1/11340813409 Test Files 294 passed | 6 skipped (434)13410 Tests 4442 passed | 309 skipped (4797)13411 Start at 11:46:0713412 Duration 11.81s13413 ✓ tests/withingsDataProcessor.test.ts (2 tests) 19ms13414 ✓ tests/externalProviderRoutes.actorContext.test.ts (5 tests) 29ms13415stdout | tests/betterAuthSchemaCheck.integration.test.ts > Better Auth schema check13416[2026-09-30T11:46:19.867Z] [INFO] Ending existing owner database connection pool...1341713418stdout | tests/betterAuthSchemaCheck.integration.test.ts > Better Auth schema check13419[2026-09-30T11:46:19.868Z] [INFO] Existing owner database connection pool ended.13420[2026-09-30T11:46:19.868Z] [INFO] Ending existing app database connection pool...1342113422stdout | tests/betterAuthSchemaCheck.integration.test.ts > Better Auth schema check13423[2026-09-30T11:46:19.868Z] [INFO] Existing app database connection pool ended.1342413425 ✓ tests/betterAuthSchemaCheck.integration.test.ts (1 test) 6ms1342613427 ❯ tests/aiServiceConnectionTest.test.ts [queued]13428 ❯ tests/apiKeySessionCache.test.ts [queued]13429 ❯ tests/authServiceUpdateEmail.test.ts [queued]13430 ❯ tests/betterAuthSchemaCheck.integration.test.ts 1/113431 ❯ tests/calorieSafetyFloor.test.ts [queued]13432 ❯ tests/chatbotToolsBarcode.test.ts [queued]13433 ❯ tests/chatbotToolsFavorites.test.ts [queued]13434 ❯ tests/chatbotToolsHabits.test.ts [queued]13435 ❯ tests/chatbotToolsIndex.test.ts [queued]13436 ❯ tests/chatbotToolsIntegrations.test.ts 0/413437 ❯ tests/chatProviderOptions.test.ts [queued]13438 ❯ tests/chatService.test.ts [queued]13439 ❯ tests/chatServiceClassifier.test.ts [queued]13440 ❯ tests/corosOauthCallback.test.ts [queued]13441 ❯ tests/corosRoutes.test.ts [queued]13442 ❯ tests/corosService.test.ts 0/413443 ❯ tests/corosSync.test.ts [queued]13444 ❯ tests/exerciseEntriesApiSchemas.test.ts 37/4513445 ❯ tests/exerciseEntryRoutes.distanceClear.test.ts [queued]13446 ❯ tests/exerciseEntryRoutes.progress.test.ts [queued]13447 ❯ tests/exerciseEntryService.csvImport.test.ts [queued]13448 ❯ tests/exerciseService.imagesEncoding.test.ts [queued]13449 ❯ tests/exerciseStatsRoutes.test.ts [queued]13450 ❯ tests/externalProviderRepository.baseUrl.test.ts [queued]13451 ❯ tests/externalProviderRoutes.actorContext.test.ts 5/513452 ❯ tests/externalProviderService.openFoodFactsConsent.test.ts [queued]13453 ❯ tests/fitbitDataProcessor.test.ts 3/313454 ❯ tests/foodBulkImportOverwrite.test.ts [queued]13455 ❯ tests/foodDeletionImpact.test.ts [queued]13456 ❯ tests/foodEntryMealRoutes.create.test.ts [queued]13457 ❯ tests/foodOptionsService.test.ts [queued]13458 ❯ tests/garminConnectErrorFormatter.test.ts [queued]13459 ❯ tests/garminIncrementalSync.test.ts [queued]13460 ❯ tests/liftosaurMeasurementsService.test.ts [queued]13461 ❯ tests/logging.test.ts [queued]13462 ❯ tests/mcpRoutes.test.ts [queued]13463 ❯ tests/mealTypeRoutes.delete.test.ts 0/1313464 ❯ tests/medicationRepository.test.ts [queued]13465 ❯ tests/medicationSchemas.zod.test.ts [queued]13466 ❯ tests/openFoodFactsAlcohol.test.ts [queued]13467 ❯ tests/openFoodFactsProductReadRateLimitService.test.ts [queued]13468 ❯ tests/ouraService.test.ts 1/713469 ❯ tests/pregnancyRoutes.test.ts 0/1313470 ❯ tests/syncedDataRepository.test.ts 0/713471 ❯ tests/updateEmailRoute.test.ts [queued]13472 ❯ tests/weightRamp.test.ts [queued]13473 ❯ tests/withingsDataProcessor.test.ts 2/21347413475 Test Files 297 passed | 6 skipped (434)13476 Tests 4449 passed | 309 skipped (4839)13477 Start at 11:46:0713478 Duration 11.93s13479 ✓ tests/pregnancyRoutes.test.ts (13 tests) 65ms1348013481 ❯ tests/aiServiceConnectionTest.test.ts 0/2713482 ❯ tests/apiKeySessionCache.test.ts 0/813483 ❯ tests/authServiceUpdateEmail.test.ts [queued]13484 ❯ tests/betterAuthSchemaCheck.integration.test.ts 1/113485 ❯ tests/calorieSafetyFloor.test.ts [queued]13486 ❯ tests/chatbotToolsBarcode.test.ts [queued]13487 ❯ tests/chatbotToolsFavorites.test.ts [queued]13488 ❯ tests/chatbotToolsHabits.test.ts [queued]13489 ❯ tests/chatbotToolsIndex.test.ts [queued]13490 ❯ tests/chatbotToolsIntegrations.test.ts 4/413491 ❯ tests/chatProviderOptions.test.ts 0/1513492 ❯ tests/chatService.test.ts [queued]13493 ❯ tests/chatServiceClassifier.test.ts 0/2113494 ❯ tests/corosOauthCallback.test.ts [queued]13495 ❯ tests/corosRoutes.test.ts [queued]13496 ❯ tests/corosService.test.ts 4/413497 ❯ tests/corosSync.test.ts [queued]13498 ❯ tests/exerciseEntriesApiSchemas.test.ts 37/4513499 ❯ tests/exerciseEntryRoutes.distanceClear.test.ts [queued]13500 ❯ tests/exerciseEntryRoutes.duplicateCheck.test.ts [queued]13501 ❯ tests/exerciseEntryRoutes.progress.test.ts [queued]13502 ❯ tests/exerciseEntryService.csvImport.test.ts [queued]13503 ❯ tests/exerciseJsonFields.test.ts [queued]13504 ❯ tests/exerciseService.imagesEncoding.test.ts [queued]13505 ❯ tests/exerciseStatsRoutes.test.ts [queued]13506 ❯ tests/externalProviderRepository.baseUrl.test.ts [queued]13507 ❯ tests/externalProviderService.openFoodFactsConsent.test.ts 3/313508 ❯ tests/foodBulkImportOverwrite.test.ts [queued]13509 ❯ tests/foodDeletionImpact.test.ts [queued]13510 ❯ tests/foodEntryMealRoutes.create.test.ts [queued]13511 ❯ tests/foodOptionsService.test.ts 0/2313512 ❯ tests/foodUpdateSnapshotRoute.test.ts [queued]13513 ❯ tests/garminConnectErrorFormatter.test.ts [queued]13514 ❯ tests/garminIncrementalSync.test.ts [queued]13515 ❯ tests/liftosaurMeasurementsService.test.ts [queued]13516 ❯ tests/logging.test.ts [queued]13517 ❯ tests/mcpRoutes.test.ts [queued]13518 ❯ tests/mealTypeRoutes.delete.test.ts 13/1313519 ❯ tests/medicationRepository.test.ts [queued]13520 ❯ tests/medicationSchemas.zod.test.ts [queued]13521 ❯ tests/openFoodFactsAlcohol.test.ts [queued]13522 ❯ tests/openFoodFactsProductReadRateLimitService.test.ts [queued]13523 ❯ tests/ouraService.test.ts 1/713524 ❯ tests/pregnancyRoutes.test.ts 13/1313525 ❯ tests/syncedDataRepository.test.ts 7/713526 ❯ tests/updateEmailRoute.test.ts [queued]13527 ❯ tests/weightRamp.test.ts [queued]1352813529 Test Files 303 passed | 6 skipped (434)13530 Tests 4493 passed | 309 skipped (4936)13531 Start at 11:46:0713532 Duration 12.03s13533stderr | tests/mealTypeRoutes.delete.test.ts > DELETE /meal-types/:id > maps an in-use meal type to 40913534[2026-09-30T11:46:19.896Z] [ERROR] Route DELETE /meal-types/11111111-1111-4111-8111-111111111111 error: Error: Cannot delete this meal type because it is still in use.13535 at /build/source/SparkyFitnessServer/tests/mealTypeRoutes.delete.test.ts:119:713536 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:1628:3513537 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:2783:2613538 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3319:2013539 at new Promise (<anonymous>)13540 at runWithCancel (file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3314:10)13541 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3299:2013542 at new Promise (<anonymous>)13543 at runWithTimeout (file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3257:10)13544 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3876:641354513546stderr | tests/mealTypeRoutes.delete.test.ts > DELETE /meal-types/:id > maps a system default meal type to 40313547[2026-09-30T11:46:19.900Z] [ERROR] Route DELETE /meal-types/11111111-1111-4111-8111-111111111111 error: Error: Cannot delete system default meal types.13548 at /build/source/SparkyFitnessServer/tests/mealTypeRoutes.delete.test.ts:130:713549 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:1628:3513550 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:2783:2613551 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3319:2013552 at new Promise (<anonymous>)13553 at runWithCancel (file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3314:10)13554 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3299:2013555 at new Promise (<anonymous>)13556 at runWithTimeout (file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3257:10)13557 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3876:641355813559stderr | tests/mealTypeRoutes.delete.test.ts > DELETE /meal-types/:id > maps an invalid reassign target to 40013560[2026-09-30T11:46:19.901Z] [ERROR] Route DELETE /meal-types/11111111-1111-4111-8111-111111111111 error: Error: Invalid reassignment target meal type.13561 at /build/source/SparkyFitnessServer/tests/mealTypeRoutes.delete.test.ts:140:713562 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:1628:3513563 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:2783:2613564 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3319:2013565 at new Promise (<anonymous>)13566 at runWithCancel (file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3314:10)13567 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3299:2013568 at new Promise (<anonymous>)13569 at runWithTimeout (file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3257:10)13570 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3876:64135711357213573 ❯ tests/aiServiceConnectionTest.test.ts 0/2713574 ❯ tests/apiKeySessionCache.test.ts 0/813575 ❯ tests/authServiceUpdateEmail.test.ts [queued]13576 ❯ tests/betterAuthSchemaCheck.integration.test.ts 1/113577 ❯ tests/calorieSafetyFloor.test.ts [queued]13578 ❯ tests/chatbotToolsBarcode.test.ts [queued]13579 ❯ tests/chatbotToolsFavorites.test.ts [queued]13580 ❯ tests/chatbotToolsHabits.test.ts [queued]13581 ❯ tests/chatbotToolsIndex.test.ts [queued]13582 ❯ tests/chatbotToolsIntegrations.test.ts 4/413583 ❯ tests/chatProviderOptions.test.ts 0/1513584 ❯ tests/chatService.test.ts [queued]13585 ❯ tests/chatServiceClassifier.test.ts 0/2113586 ❯ tests/corosOauthCallback.test.ts [queued]13587 ❯ tests/corosRoutes.test.ts [queued]13588 ❯ tests/corosService.test.ts 4/413589 ❯ tests/corosSync.test.ts [queued]13590 ❯ tests/exerciseEntriesApiSchemas.test.ts 37/4513591 ❯ tests/exerciseEntryRoutes.distanceClear.test.ts [queued]13592 ❯ tests/exerciseEntryRoutes.duplicateCheck.test.ts [queued]13593 ❯ tests/exerciseEntryRoutes.progress.test.ts [queued]13594 ❯ tests/exerciseEntryService.csvImport.test.ts [queued]13595 ❯ tests/exerciseJsonFields.test.ts [queued]13596 ❯ tests/exerciseService.imagesEncoding.test.ts [queued]13597 ❯ tests/exerciseStatsRoutes.test.ts [queued]13598 ❯ tests/externalProviderRepository.baseUrl.test.ts [queued]13599 ❯ tests/externalProviderService.openFoodFactsConsent.test.ts 3/313600 ❯ tests/foodBulkImportOverwrite.test.ts [queued]13601 ❯ tests/foodDeletionImpact.test.ts [queued]13602 ❯ tests/foodEntryMealRoutes.create.test.ts [queued]13603 ❯ tests/foodOptionsService.test.ts 0/2313604 ❯ tests/foodUpdateSnapshotRoute.test.ts [queued]13605 ❯ tests/garminConnectErrorFormatter.test.ts [queued]13606 ❯ tests/garminIncrementalSync.test.ts [queued]13607 ❯ tests/liftosaurMeasurementsService.test.ts [queued]13608 ❯ tests/logging.test.ts [queued]13609 ❯ tests/mcpRoutes.test.ts [queued]13610 ❯ tests/mealTypeRoutes.delete.test.ts 13/1313611 ❯ tests/medicationRepository.test.ts [queued]13612 ❯ tests/medicationSchemas.zod.test.ts [queued]13613 ❯ tests/openFoodFactsAlcohol.test.ts [queued]13614 ❯ tests/openFoodFactsProductReadRateLimitService.test.ts [queued]13615 ❯ tests/ouraService.test.ts 1/713616 ❯ tests/pregnancyRoutes.test.ts 13/1313617 ❯ tests/syncedDataRepository.test.ts 7/713618 ❯ tests/updateEmailRoute.test.ts [queued]13619 ❯ tests/weightRamp.test.ts [queued]1362013621 Test Files 303 passed | 6 skipped (434)13622 Tests 4493 passed | 309 skipped (4936)13623 Start at 11:46:0713624 Duration 12.03s13625 ✓ tests/corosService.test.ts (4 tests) 7ms13626 ✓ tests/chatbotToolsIntegrations.test.ts (4 tests) 8ms13627 ✓ tests/syncedDataRepository.test.ts (7 tests) 10ms1362813629 ❯ tests/aiServiceConnectionTest.test.ts 0/2713630 ❯ tests/apiKeySessionCache.test.ts 0/813631 ❯ tests/authServiceUpdateEmail.test.ts [queued]13632 ❯ tests/betterAuthSchemaCheck.integration.test.ts 1/113633 ❯ tests/calorieSafetyFloor.test.ts [queued]13634 ❯ tests/chatbotToolsBarcode.test.ts [queued]13635 ❯ tests/chatbotToolsFavorites.test.ts [queued]13636 ❯ tests/chatbotToolsHabits.test.ts [queued]13637 ❯ tests/chatbotToolsIndex.test.ts [queued]13638 ❯ tests/chatbotToolsIntegrations.test.ts 4/413639 ❯ tests/chatProviderOptions.test.ts 0/1513640 ❯ tests/chatService.test.ts [queued]13641 ❯ tests/chatServiceClassifier.test.ts 0/2113642 ❯ tests/corosOauthCallback.test.ts [queued]13643 ❯ tests/corosRoutes.test.ts [queued]13644 ❯ tests/corosService.test.ts 4/413645 ❯ tests/corosSync.test.ts [queued]13646 ❯ tests/exerciseEntriesApiSchemas.test.ts 37/4513647 ❯ tests/exerciseEntryRoutes.distanceClear.test.ts [queued]13648 ❯ tests/exerciseEntryRoutes.duplicateCheck.test.ts [queued]13649 ❯ tests/exerciseEntryRoutes.progress.test.ts [queued]13650 ❯ tests/exerciseEntryService.csvImport.test.ts [queued]13651 ❯ tests/exerciseJsonFields.test.ts [queued]13652 ❯ tests/exerciseService.imagesEncoding.test.ts [queued]13653 ❯ tests/exerciseStatsRoutes.test.ts [queued]13654 ❯ tests/externalProviderRepository.baseUrl.test.ts [queued]13655 ❯ tests/externalProviderService.openFoodFactsConsent.test.ts 3/313656 ❯ tests/foodBulkImportOverwrite.test.ts [queued]13657 ❯ tests/foodDeletionImpact.test.ts [queued]13658 ❯ tests/foodEntryMealRoutes.create.test.ts [queued]13659 ❯ tests/foodOptionsService.test.ts 0/2313660 ❯ tests/foodUpdateSnapshotRoute.test.ts [queued]13661 ❯ tests/garminConnectErrorFormatter.test.ts [queued]13662 ❯ tests/garminIncrementalSync.test.ts [queued]13663 ❯ tests/liftosaurMeasurementsService.test.ts [queued]13664 ❯ tests/logging.test.ts [queued]13665 ❯ tests/mcpRoutes.test.ts [queued]13666 ❯ tests/mealTypeRoutes.delete.test.ts 13/1313667 ❯ tests/medicationRepository.test.ts [queued]13668 ❯ tests/medicationSchemas.zod.test.ts [queued]13669 ❯ tests/openFoodFactsAlcohol.test.ts [queued]13670 ❯ tests/openFoodFactsProductReadRateLimitService.test.ts [queued]13671 ❯ tests/ouraService.test.ts 1/713672 ❯ tests/pregnancyRoutes.test.ts 13/1313673 ❯ tests/syncedDataRepository.test.ts 7/713674 ❯ tests/updateEmailRoute.test.ts [queued]13675 ❯ tests/weightRamp.test.ts [queued]1367613677 Test Files 303 passed | 6 skipped (434)13678 Tests 4493 passed | 309 skipped (4936)13679 Start at 11:46:0713680 Duration 12.03s13681stderr | tests/mealTypeRoutes.delete.test.ts > DELETE /meal-types/:id > does not leak unexpected errors13682[2026-09-30T11:46:19.905Z] [ERROR] Route DELETE /meal-types/11111111-1111-4111-8111-111111111111 error: Error: connection reset13683 at /build/source/SparkyFitnessServer/tests/mealTypeRoutes.delete.test.ts:162:4913684 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:1628:3513685 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:2783:2613686 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3319:2013687 at new Promise (<anonymous>)13688 at runWithCancel (file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3314:10)13689 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3299:2013690 at new Promise (<anonymous>)13691 at runWithTimeout (file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3257:10)13692 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3876:64136931369413695 ❯ tests/aiServiceConnectionTest.test.ts 0/2713696 ❯ tests/apiKeySessionCache.test.ts 0/813697 ❯ tests/authServiceUpdateEmail.test.ts [queued]13698 ❯ tests/betterAuthSchemaCheck.integration.test.ts 1/113699 ❯ tests/calorieSafetyFloor.test.ts [queued]13700 ❯ tests/chatbotToolsBarcode.test.ts [queued]13701 ❯ tests/chatbotToolsFavorites.test.ts [queued]13702 ❯ tests/chatbotToolsHabits.test.ts [queued]13703 ❯ tests/chatbotToolsIndex.test.ts [queued]13704 ❯ tests/chatbotToolsIntegrations.test.ts 4/413705 ❯ tests/chatProviderOptions.test.ts 0/1513706 ❯ tests/chatService.test.ts [queued]13707 ❯ tests/chatServiceClassifier.test.ts 0/2113708 ❯ tests/corosOauthCallback.test.ts [queued]13709 ❯ tests/corosRoutes.test.ts [queued]13710 ❯ tests/corosService.test.ts 4/413711 ❯ tests/corosSync.test.ts [queued]13712 ❯ tests/exerciseEntriesApiSchemas.test.ts 37/4513713 ❯ tests/exerciseEntryRoutes.distanceClear.test.ts [queued]13714 ❯ tests/exerciseEntryRoutes.duplicateCheck.test.ts [queued]13715 ❯ tests/exerciseEntryRoutes.progress.test.ts [queued]13716 ❯ tests/exerciseEntryService.csvImport.test.ts [queued]13717 ❯ tests/exerciseJsonFields.test.ts [queued]13718 ❯ tests/exerciseService.imagesEncoding.test.ts [queued]13719 ❯ tests/exerciseStatsRoutes.test.ts [queued]13720 ❯ tests/externalProviderRepository.baseUrl.test.ts [queued]13721 ❯ tests/externalProviderService.openFoodFactsConsent.test.ts 3/313722 ❯ tests/foodBulkImportOverwrite.test.ts [queued]13723 ❯ tests/foodDeletionImpact.test.ts [queued]13724 ❯ tests/foodEntryMealRoutes.create.test.ts [queued]13725 ❯ tests/foodOptionsService.test.ts 0/2313726 ❯ tests/foodUpdateSnapshotRoute.test.ts [queued]13727 ❯ tests/garminConnectErrorFormatter.test.ts [queued]13728 ❯ tests/garminIncrementalSync.test.ts [queued]13729 ❯ tests/liftosaurMeasurementsService.test.ts [queued]13730 ❯ tests/logging.test.ts [queued]13731 ❯ tests/mcpRoutes.test.ts [queued]13732 ❯ tests/mealTypeRoutes.delete.test.ts 13/1313733 ❯ tests/medicationRepository.test.ts [queued]13734 ❯ tests/medicationSchemas.zod.test.ts [queued]13735 ❯ tests/openFoodFactsAlcohol.test.ts [queued]13736 ❯ tests/openFoodFactsProductReadRateLimitService.test.ts [queued]13737 ❯ tests/ouraService.test.ts 1/713738 ❯ tests/pregnancyRoutes.test.ts 13/1313739 ❯ tests/syncedDataRepository.test.ts 7/713740 ❯ tests/updateEmailRoute.test.ts [queued]13741 ❯ tests/weightRamp.test.ts [queued]1374213743 Test Files 303 passed | 6 skipped (434)13744 Tests 4493 passed | 309 skipped (4936)13745 Start at 11:46:0713746 Duration 12.03s13747 ✓ tests/externalProviderService.openFoodFactsConsent.test.ts (3 tests) 7ms13748 ✓ tests/mealTypeRoutes.delete.test.ts (13 tests) 45ms1374913750 ❯ tests/aiServiceConnectionTest.test.ts 0/2713751 ❯ tests/apiKeySessionCache.test.ts 0/813752 ❯ tests/authServiceUpdateEmail.test.ts [queued]13753 ❯ tests/betterAuthSchemaCheck.integration.test.ts 1/113754 ❯ tests/calorieSafetyFloor.test.ts [queued]13755 ❯ tests/chatbotToolsBarcode.test.ts [queued]13756 ❯ tests/chatbotToolsFavorites.test.ts [queued]13757 ❯ tests/chatbotToolsHabits.test.ts [queued]13758 ❯ tests/chatbotToolsIndex.test.ts [queued]13759 ❯ tests/chatbotToolsIntegrations.test.ts 4/413760 ❯ tests/chatProviderOptions.test.ts 0/1513761 ❯ tests/chatService.test.ts [queued]13762 ❯ tests/chatServiceClassifier.test.ts 0/2113763 ❯ tests/corosOauthCallback.test.ts [queued]13764 ❯ tests/corosRoutes.test.ts [queued]13765 ❯ tests/corosService.test.ts 4/413766 ❯ tests/corosSync.test.ts [queued]13767 ❯ tests/exerciseEntriesApiSchemas.test.ts 37/4513768 ❯ tests/exerciseEntryRoutes.distanceClear.test.ts [queued]13769 ❯ tests/exerciseEntryRoutes.duplicateCheck.test.ts [queued]13770 ❯ tests/exerciseEntryRoutes.progress.test.ts [queued]13771 ❯ tests/exerciseEntryService.csvImport.test.ts [queued]13772 ❯ tests/exerciseJsonFields.test.ts [queued]13773 ❯ tests/exerciseService.imagesEncoding.test.ts [queued]13774 ❯ tests/exerciseStatsRoutes.test.ts [queued]13775 ❯ tests/externalProviderRepository.baseUrl.test.ts [queued]13776 ❯ tests/externalProviderService.openFoodFactsConsent.test.ts 3/313777 ❯ tests/foodBulkImportOverwrite.test.ts [queued]13778 ❯ tests/foodDeletionImpact.test.ts [queued]13779 ❯ tests/foodEntryMealRoutes.create.test.ts [queued]13780 ❯ tests/foodOptionsService.test.ts 0/2313781 ❯ tests/foodUpdateSnapshotRoute.test.ts [queued]13782 ❯ tests/garminConnectErrorFormatter.test.ts [queued]13783 ❯ tests/garminIncrementalSync.test.ts [queued]13784 ❯ tests/liftosaurMeasurementsService.test.ts [queued]13785 ❯ tests/logging.test.ts [queued]13786 ❯ tests/mcpRoutes.test.ts [queued]13787 ❯ tests/mealTypeRoutes.delete.test.ts 13/1313788 ❯ tests/medicationRepository.test.ts [queued]13789 ❯ tests/medicationSchemas.zod.test.ts [queued]13790 ❯ tests/openFoodFactsAlcohol.test.ts [queued]13791 ❯ tests/openFoodFactsProductReadRateLimitService.test.ts [queued]13792 ❯ tests/ouraService.test.ts 1/713793 ❯ tests/pregnancyRoutes.test.ts 13/1313794 ❯ tests/syncedDataRepository.test.ts 7/713795 ❯ tests/updateEmailRoute.test.ts [queued]13796 ❯ tests/weightRamp.test.ts [queued]1379713798 Test Files 303 passed | 6 skipped (434)13799 Tests 4493 passed | 309 skipped (4936)13800 Start at 11:46:0713801 Duration 12.03s13802 ✓ tests/foodOptionsService.test.ts (23 tests) 20ms13803 ✓ tests/apiKeySessionCache.test.ts (8 tests) 18ms13804 ✓ tests/weightRamp.test.ts (11 tests) 9ms13805 ✓ tests/chatServiceClassifier.test.ts (21 tests) 35ms13806 ✓ tests/chatProviderOptions.test.ts (15 tests) 47ms13807 ✓ tests/aiServiceConnectionTest.test.ts (27 tests) 64ms13808 ✓ tests/openFoodFactsProductReadRateLimitService.test.ts (3 tests) 65ms13809stdout | tests/updateEmailRoute.test.ts13810[2026-09-30T11:46:20.095Z] [INFO] UserProfileRoutes UPLOADS_DIR: /build/source/SparkyFitnessServer/uploads/avatars138111381213813 ❯ tests/aiServiceConnectionTest.test.ts 27/2713814 ❯ tests/apiKeySessionCache.test.ts 8/813815 ❯ tests/authServiceUpdateEmail.test.ts [queued]13816 ❯ tests/calorieSafetyFloor.test.ts [queued]13817 ❯ tests/chatbotToolsBarcode.test.ts [queued]13818 ❯ tests/chatbotToolsFavorites.test.ts [queued]13819 ❯ tests/chatbotToolsHabits.test.ts [queued]13820 ❯ tests/chatbotToolsIndex.test.ts 0/2413821 ❯ tests/chatProviderOptions.test.ts 15/1513822 ❯ tests/chatService.test.ts 0/6013823 ❯ tests/chatServiceClassifier.test.ts 21/2113824 ❯ tests/corosOauthCallback.test.ts [queued]13825 ❯ tests/corosRoutes.test.ts 0/413826 ❯ tests/corosSync.test.ts [queued]13827 ❯ tests/exerciseEntriesApiSchemas.test.ts 37/4513828 ❯ tests/exerciseEntryRoutes.distanceClear.test.ts [queued]13829 ❯ tests/exerciseEntryRoutes.duplicateCheck.test.ts [queued]13830 ❯ tests/exerciseEntryRoutes.progress.test.ts [queued]13831 ❯ tests/exerciseEntryService.csvImport.test.ts [queued]13832 ❯ tests/exerciseJsonFields.test.ts [queued]13833 ❯ tests/exerciseService.imagesEncoding.test.ts [queued]13834 ❯ tests/exerciseStatsRoutes.test.ts [queued]13835 ❯ tests/externalProviderRepository.baseUrl.test.ts [queued]13836 ❯ tests/externalProviderService.openFoodFactsConsent.test.ts 3/313837 ❯ tests/foodBulkImportOverwrite.test.ts 0/313838 ❯ tests/foodDeletionImpact.test.ts [queued]13839 ❯ tests/foodEntryMealRoutes.create.test.ts [queued]13840 ❯ tests/foodOptionsService.test.ts 23/2313841 ❯ tests/foodUpdateSnapshotRoute.test.ts [queued]13842 ❯ tests/garminConnectErrorFormatter.test.ts [queued]13843 ❯ tests/garminIncrementalSync.test.ts [queued]13844 ❯ tests/glp1Service.test.ts [queued]13845 ❯ tests/initializeDatabase.integration.test.ts [queued]13846 ❯ tests/liftosaurMeasurementsService.test.ts [queued]13847 ❯ tests/logging.test.ts [queued]13848 ❯ tests/mcpRoutes.test.ts [queued]13849 ❯ tests/mealTypeRoutes.delete.test.ts 13/1313850 ❯ tests/measurementService.categoryDisplayName.test.ts [queued]13851 ❯ tests/medicationRepository.test.ts 1/413852 ❯ tests/medicationSchemas.zod.test.ts [queued]13853 ❯ tests/openFoodFactsAlcohol.test.ts [queued]13854 ❯ tests/openFoodFactsAutomaticSyncDatabaseSchemas.test.ts [queued]13855 ❯ tests/openFoodFactsProductReadRateLimitService.test.ts 3/313856 ❯ tests/ouraService.test.ts 1/713857 ❯ tests/updateEmailRoute.test.ts 0/513858 ❯ tests/volumeUnitToMl.test.ts [queued]13859 ❯ tests/weightRamp.test.ts 11/111386013861 Test Files 310 passed | 6 skipped (434)13862 Tests 4602 passed | 309 skipped (5050)13863 Start at 11:46:0713864 Duration 12.24s13865 ✓ tests/medicationRepository.test.ts (4 tests) 10ms13866 ✓ tests/chatbotToolsIndex.test.ts (24 tests) 51ms13867 ✓ tests/corosRoutes.test.ts (4 tests) 37ms1386813869 ❯ tests/aiServiceConnectionTest.test.ts 27/2713870 ❯ tests/authServiceUpdateEmail.test.ts [queued]13871 ❯ tests/calorieSafetyFloor.test.ts [queued]13872 ❯ tests/chatbotToolsBarcode.test.ts [queued]13873 ❯ tests/chatbotToolsFavorites.test.ts [queued]13874 ❯ tests/chatbotToolsHabits.test.ts [queued]13875 ❯ tests/chatbotToolsIndex.test.ts 24/2413876 ❯ tests/chatProviderOptions.test.ts 15/1513877 ❯ tests/chatService.test.ts 19/6013878 ❯ tests/chatServiceClassifier.test.ts 21/2113879 ❯ tests/corosOauthCallback.test.ts [queued]13880 ❯ tests/corosRoutes.test.ts 4/413881 ❯ tests/corosSync.test.ts [queued]13882 ❯ tests/exerciseEntriesApiSchemas.test.ts 37/4513883 ❯ tests/exerciseEntryRoutes.distanceClear.test.ts [queued]13884 ❯ tests/exerciseEntryRoutes.duplicateCheck.test.ts [queued]13885 ❯ tests/exerciseEntryRoutes.progress.test.ts [queued]13886 ❯ tests/exerciseEntryService.csvImport.test.ts [queued]13887 ❯ tests/exerciseJsonFields.test.ts [queued]13888 ❯ tests/exerciseService.imagesEncoding.test.ts [queued]13889 ❯ tests/exerciseStatsRoutes.test.ts [queued]13890 ❯ tests/externalProviderRepository.baseUrl.test.ts 5/513891 ❯ tests/externalProviderRepository.credentials.test.ts [queued]13892 ❯ tests/favoritesRoutes.test.ts [queued]13893 ❯ tests/foodBulkImportOverwrite.test.ts 3/313894 ❯ tests/foodDeletionImpact.test.ts [queued]13895 ❯ tests/foodEntryMealRoutes.create.test.ts [queued]13896 ❯ tests/foodUpdateSnapshotRoute.test.ts [queued]13897 ❯ tests/forwardResponseHeaders.test.ts [queued]13898 ❯ tests/garminConnectErrorFormatter.test.ts 0/813899 ❯ tests/garminIncrementalSync.test.ts [queued]13900 ❯ tests/glp1Service.test.ts [queued]13901 ❯ tests/initializeDatabase.integration.test.ts [queued]13902 ❯ tests/liftosaurMeasurementsService.test.ts [queued]13903 ❯ tests/logging.test.ts 0/913904 ❯ tests/mcpRoutes.test.ts [queued]13905 ❯ tests/measurementService.categoryDisplayName.test.ts [queued]13906 ❯ tests/medicationRepository.test.ts 4/413907 ❯ tests/medicationSchemas.zod.test.ts 7/713908 ❯ tests/openFoodFactsAlcohol.test.ts 1/613909 ❯ tests/openFoodFactsAutomaticSyncDatabaseSchemas.test.ts [queued]13910 ❯ tests/openFoodFactsProductReadRateLimitRepository.test.ts [queued]13911 ❯ tests/openFoodFactsProductReadRateLimitService.test.ts 3/313912 ❯ tests/ouraService.test.ts 1/713913 ❯ tests/updateEmailRoute.test.ts 5/513914 ❯ tests/volumeUnitToMl.test.ts [queued]13915 ❯ tests/weightRamp.test.ts 11/111391613917 Test Files 317 passed | 6 skipped (434)13918 Tests 4673 passed | 309 skipped (5085)13919 Start at 11:46:0713920 Duration 12.36s13921stderr | tests/updateEmailRoute.test.ts > POST /api/identity/update-email > returns 500 when email is already in use (service throws plain Error)13922[2026-09-30T11:46:20.176Z] [ERROR] Error caught by centralized handler: Email already in use by another account. Error: Email already in use by another account.13923 at /build/source/SparkyFitnessServer/tests/updateEmailRoute.test.ts:86:713924 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:1628:3513925 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:2783:2613926 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3319:2013927 at new Promise (<anonymous>)13928 at runWithCancel (file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3314:10)13929 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3299:2013930 at new Promise (<anonymous>)13931 at runWithTimeout (file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3257:10)13932 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3876:641393313934stderr | tests/updateEmailRoute.test.ts > POST /api/identity/update-email > returns 500 on unexpected service errors13935[2026-09-30T11:46:20.179Z] [ERROR] Error caught by centralized handler: DB connection failed Error: DB connection failed13936 at /build/source/SparkyFitnessServer/tests/updateEmailRoute.test.ts:104:713937 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:1628:3513938 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:2783:2613939 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3319:2013940 at new Promise (<anonymous>)13941 at runWithCancel (file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3314:10)13942 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3299:2013943 at new Promise (<anonymous>)13944 at runWithTimeout (file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3257:10)13945 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:3876:64139461394713948 ❯ tests/aiServiceConnectionTest.test.ts 27/2713949 ❯ tests/authServiceUpdateEmail.test.ts [queued]13950 ❯ tests/calorieSafetyFloor.test.ts [queued]13951 ❯ tests/chatbotToolsBarcode.test.ts [queued]13952 ❯ tests/chatbotToolsFavorites.test.ts [queued]13953 ❯ tests/chatbotToolsHabits.test.ts [queued]13954 ❯ tests/chatbotToolsIndex.test.ts 24/2413955 ❯ tests/chatProviderOptions.test.ts 15/1513956 ❯ tests/chatService.test.ts 19/6013957 ❯ tests/chatServiceClassifier.test.ts 21/2113958 ❯ tests/corosOauthCallback.test.ts [queued]13959 ❯ tests/corosRoutes.test.ts 4/413960 ❯ tests/corosSync.test.ts [queued]13961 ❯ tests/exerciseEntriesApiSchemas.test.ts 37/4513962 ❯ tests/exerciseEntryRoutes.distanceClear.test.ts [queued]13963 ❯ tests/exerciseEntryRoutes.duplicateCheck.test.ts [queued]13964 ❯ tests/exerciseEntryRoutes.progress.test.ts [queued]13965 ❯ tests/exerciseEntryService.csvImport.test.ts [queued]13966 ❯ tests/exerciseJsonFields.test.ts [queued]13967 ❯ tests/exerciseService.imagesEncoding.test.ts [queued]13968 ❯ tests/exerciseStatsRoutes.test.ts [queued]13969 ❯ tests/externalProviderRepository.baseUrl.test.ts 5/513970 ❯ tests/externalProviderRepository.credentials.test.ts [queued]13971 ❯ tests/favoritesRoutes.test.ts [queued]13972 ❯ tests/foodBulkImportOverwrite.test.ts 3/313973 ❯ tests/foodDeletionImpact.test.ts [queued]13974 ❯ tests/foodEntryMealRoutes.create.test.ts [queued]13975 ❯ tests/foodUpdateSnapshotRoute.test.ts [queued]13976 ❯ tests/forwardResponseHeaders.test.ts [queued]13977 ❯ tests/garminConnectErrorFormatter.test.ts 0/813978 ❯ tests/garminIncrementalSync.test.ts [queued]13979 ❯ tests/glp1Service.test.ts [queued]13980 ❯ tests/initializeDatabase.integration.test.ts [queued]13981 ❯ tests/liftosaurMeasurementsService.test.ts [queued]13982 ❯ tests/logging.test.ts 0/913983 ❯ tests/mcpRoutes.test.ts [queued]13984 ❯ tests/measurementService.categoryDisplayName.test.ts [queued]13985 ❯ tests/medicationRepository.test.ts 4/413986 ❯ tests/medicationSchemas.zod.test.ts 7/713987 ❯ tests/openFoodFactsAlcohol.test.ts 1/613988 ❯ tests/openFoodFactsAutomaticSyncDatabaseSchemas.test.ts [queued]13989 ❯ tests/openFoodFactsProductReadRateLimitRepository.test.ts [queued]13990 ❯ tests/openFoodFactsProductReadRateLimitService.test.ts 3/313991 ❯ tests/ouraService.test.ts 1/713992 ❯ tests/updateEmailRoute.test.ts 5/513993 ❯ tests/volumeUnitToMl.test.ts [queued]13994 ❯ tests/weightRamp.test.ts 11/111399513996 Test Files 317 passed | 6 skipped (434)13997 Tests 4673 passed | 309 skipped (5085)13998 Start at 11:46:0713999 Duration 12.36s14000 ✓ tests/externalProviderRepository.baseUrl.test.ts (5 tests) 7ms14001 ✓ tests/updateEmailRoute.test.ts (5 tests) 48ms14002 ✓ tests/foodBulkImportOverwrite.test.ts (3 tests) 8ms14003 ✓ tests/medicationSchemas.zod.test.ts (7 tests) 18ms1400414005 ❯ tests/aiServiceConnectionTest.test.ts 27/2714006 ❯ tests/authServiceUpdateEmail.test.ts [queued]14007 ❯ tests/calorieSafetyFloor.test.ts [queued]14008 ❯ tests/chatbotToolsBarcode.test.ts [queued]14009 ❯ tests/chatbotToolsFavorites.test.ts [queued]14010 ❯ tests/chatbotToolsHabits.test.ts [queued]14011 ❯ tests/chatbotToolsIndex.test.ts 24/2414012 ❯ tests/chatProviderOptions.test.ts 15/1514013 ❯ tests/chatService.test.ts 19/6014014 ❯ tests/chatServiceClassifier.test.ts 21/2114015 ❯ tests/corosOauthCallback.test.ts [queued]14016 ❯ tests/corosRoutes.test.ts 4/414017 ❯ tests/corosSync.test.ts [queued]14018 ❯ tests/exerciseEntriesApiSchemas.test.ts 37/4514019 ❯ tests/exerciseEntryRoutes.distanceClear.test.ts [queued]14020 ❯ tests/exerciseEntryRoutes.duplicateCheck.test.ts [queued]14021 ❯ tests/exerciseEntryRoutes.progress.test.ts [queued]14022 ❯ tests/exerciseEntryService.csvImport.test.ts [queued]14023 ❯ tests/exerciseJsonFields.test.ts [queued]14024 ❯ tests/exerciseService.imagesEncoding.test.ts [queued]14025 ❯ tests/exerciseStatsRoutes.test.ts [queued]14026 ❯ tests/externalProviderRepository.baseUrl.test.ts 5/514027 ❯ tests/externalProviderRepository.credentials.test.ts [queued]14028 ❯ tests/favoritesRoutes.test.ts [queued]14029 ❯ tests/foodBulkImportOverwrite.test.ts 3/314030 ❯ tests/foodDeletionImpact.test.ts [queued]14031 ❯ tests/foodEntryMealRoutes.create.test.ts [queued]14032 ❯ tests/foodUpdateSnapshotRoute.test.ts [queued]14033 ❯ tests/forwardResponseHeaders.test.ts [queued]14034 ❯ tests/garminConnectErrorFormatter.test.ts 0/814035 ❯ tests/garminIncrementalSync.test.ts [queued]14036 ❯ tests/glp1Service.test.ts [queued]14037 ❯ tests/initializeDatabase.integration.test.ts [queued]14038 ❯ tests/liftosaurMeasurementsService.test.ts [queued]14039 ❯ tests/logging.test.ts 0/914040 ❯ tests/mcpRoutes.test.ts [queued]14041 ❯ tests/measurementService.categoryDisplayName.test.ts [queued]14042 ❯ tests/medicationRepository.test.ts 4/414043 ❯ tests/medicationSchemas.zod.test.ts 7/714044 ❯ tests/openFoodFactsAlcohol.test.ts 1/614045 ❯ tests/openFoodFactsAutomaticSyncDatabaseSchemas.test.ts [queued]14046 ❯ tests/openFoodFactsProductReadRateLimitRepository.test.ts [queued]14047 ❯ tests/openFoodFactsProductReadRateLimitService.test.ts 3/314048 ❯ tests/ouraService.test.ts 1/714049 ❯ tests/updateEmailRoute.test.ts 5/514050 ❯ tests/volumeUnitToMl.test.ts [queued]14051 ❯ tests/weightRamp.test.ts 11/111405214053 Test Files 317 passed | 6 skipped (434)14054 Tests 4673 passed | 309 skipped (5085)14055 Start at 11:46:0714056 Duration 12.36s14057 ✓ tests/openFoodFactsAlcohol.test.ts (6 tests) 6ms14058 ✓ tests/garminConnectErrorFormatter.test.ts (8 tests) 6ms14059 ✓ tests/foodEntryMealRoutes.create.test.ts (2 tests) 29ms14060 ✓ tests/logging.test.ts (9 tests) 44ms14061stdout | tests/garminIncrementalSync.test.ts > Garmin syncGarminData - Incremental Chunk Resilience > continues processing remaining chunks and records partialErrors when one chunk fails14062[2026-09-30T11:46:20.294Z] [INFO] [garminService] Starting Garmin sync (manual) for user user-1 from 2026-08-01 to 2026-08-15.14063[2026-09-30T11:46:20.295Z] [INFO] [garminService] Range 2026-08-01 to 2026-08-15 split into 3 incremental chunks.14064[2026-09-30T11:46:20.295Z] [INFO] [garminService] Processing chunk 1/3 (2026-08-01 to 2026-08-07) for user user-1...1406514066stdout | tests/garminIncrementalSync.test.ts > Garmin syncGarminData - Incremental Chunk Resilience > continues processing remaining chunks and records partialErrors when one chunk fails14067[2026-09-30T11:46:20.295Z] [INFO] [garminService] Processing chunk 2/3 (2026-08-08 to 2026-08-14) for user user-1...140681406914070 ❯ tests/authServiceUpdateEmail.test.ts 0/614071 ❯ tests/calorieSafetyFloor.test.ts [queued]14072 ❯ tests/chatbotToolsBarcode.test.ts 1/514073 ❯ tests/chatbotToolsFavorites.test.ts [queued]14074 ❯ tests/chatbotToolsHabits.test.ts [queued]14075 ❯ tests/chatService.test.ts 27/6014076 ❯ tests/corosOauthCallback.test.ts [queued]14077 ❯ tests/corosRoutes.test.ts 4/414078 ❯ tests/corosSync.test.ts [queued]14079 ❯ tests/customNutrientDeleteCleanup.test.ts [queued]14080 ❯ tests/dashboardLayoutRepository.test.ts [queued]14081 ❯ tests/exerciseEntriesApiSchemas.test.ts 38/4514082 ❯ tests/exerciseEntryRoutes.distanceClear.test.ts 0/314083 ❯ tests/exerciseEntryRoutes.duplicateCheck.test.ts [queued]14084 ❯ tests/exerciseEntryRoutes.progress.test.ts [queued]14085 ❯ tests/exerciseEntryService.csvImport.test.ts [queued]14086 ❯ tests/exerciseJsonFields.test.ts [queued]14087 ❯ tests/exerciseService.imagesEncoding.test.ts [queued]14088 ❯ tests/exerciseStatsRoutes.test.ts [queued]14089 ❯ tests/externalProviderRepository.baseUrl.test.ts 5/514090 ❯ tests/externalProviderRepository.credentials.test.ts [queued]14091 ❯ tests/favoritesRoutes.test.ts [queued]14092 ❯ tests/foodBulkImportOverwrite.test.ts 3/314093 ❯ tests/foodDeletionImpact.test.ts [queued]14094 ❯ tests/foodEntryMealRoutes.create.test.ts 2/214095 ❯ tests/foodUpdateSnapshotRoute.test.ts [queued]14096 ❯ tests/forwardResponseHeaders.test.ts [queued]14097 ❯ tests/garminConnectErrorFormatter.test.ts 8/814098 ❯ tests/garminIncrementalSync.test.ts 2/214099 ❯ tests/glp1Service.test.ts [queued]14100 ❯ tests/goalModePercentageSignMigration.test.ts [queued]14101 ❯ tests/goalRepository.test.ts [queued]14102 ❯ tests/initializeDatabase.integration.test.ts [queued]14103 ❯ tests/liftosaurMeasurementsService.test.ts [queued]14104 ❯ tests/logging.test.ts 9/914105 ❯ tests/mcpRoutes.test.ts [queued]14106 ❯ tests/measurementService.categoryDisplayName.test.ts [queued]14107 ❯ tests/measurementService.zeroValueFiltering.test.ts [queued]14108 ❯ tests/medicationSchemas.zod.test.ts 7/714109 ❯ tests/openFoodFactsAlcohol.test.ts 6/614110 ❯ tests/openFoodFactsAutomaticSyncDatabaseSchemas.test.ts [queued]14111 ❯ tests/openFoodFactsProductReadRateLimitRepository.test.ts [queued]14112 ❯ tests/ouraService.test.ts 1/714113 ❯ tests/switchContextCookie.test.ts [queued]14114 ❯ tests/updateEmailRoute.test.ts 5/514115 ❯ tests/volumeUnitToMl.test.ts [queued]14116 ❯ tests/workoutFeedbackForm.test.ts [queued]1411714118 Test Files 322 passed | 6 skipped (434)14119 Tests 4709 passed | 309 skipped (5103)14120 Start at 11:46:0714121 Duration 12.47s14122stderr | tests/garminIncrementalSync.test.ts > Garmin syncGarminData - Incremental Chunk Resilience > continues processing remaining chunks and records partialErrors when one chunk fails14123[2026-09-30T11:46:20.296Z] [ERROR] [garminService] Error during activities sync for chunk 2026-08-08 to 2026-08-14: Connection reset on chunk 2141241412514126 ❯ tests/authServiceUpdateEmail.test.ts 0/614127 ❯ tests/calorieSafetyFloor.test.ts [queued]14128 ❯ tests/chatbotToolsBarcode.test.ts 1/514129 ❯ tests/chatbotToolsFavorites.test.ts [queued]14130 ❯ tests/chatbotToolsHabits.test.ts [queued]14131 ❯ tests/chatService.test.ts 27/6014132 ❯ tests/corosOauthCallback.test.ts [queued]14133 ❯ tests/corosRoutes.test.ts 4/414134 ❯ tests/corosSync.test.ts [queued]14135 ❯ tests/customNutrientDeleteCleanup.test.ts [queued]14136 ❯ tests/dashboardLayoutRepository.test.ts [queued]14137 ❯ tests/exerciseEntriesApiSchemas.test.ts 38/4514138 ❯ tests/exerciseEntryRoutes.distanceClear.test.ts 0/314139 ❯ tests/exerciseEntryRoutes.duplicateCheck.test.ts [queued]14140 ❯ tests/exerciseEntryRoutes.progress.test.ts [queued]14141 ❯ tests/exerciseEntryService.csvImport.test.ts [queued]14142 ❯ tests/exerciseJsonFields.test.ts [queued]14143 ❯ tests/exerciseService.imagesEncoding.test.ts [queued]14144 ❯ tests/exerciseStatsRoutes.test.ts [queued]14145 ❯ tests/externalProviderRepository.baseUrl.test.ts 5/514146 ❯ tests/externalProviderRepository.credentials.test.ts [queued]14147 ❯ tests/favoritesRoutes.test.ts [queued]14148 ❯ tests/foodBulkImportOverwrite.test.ts 3/314149 ❯ tests/foodDeletionImpact.test.ts [queued]14150 ❯ tests/foodEntryMealRoutes.create.test.ts 2/214151 ❯ tests/foodUpdateSnapshotRoute.test.ts [queued]14152 ❯ tests/forwardResponseHeaders.test.ts [queued]14153 ❯ tests/garminConnectErrorFormatter.test.ts 8/814154 ❯ tests/garminIncrementalSync.test.ts 2/214155 ❯ tests/glp1Service.test.ts [queued]14156 ❯ tests/goalModePercentageSignMigration.test.ts [queued]14157 ❯ tests/goalRepository.test.ts [queued]14158 ❯ tests/initializeDatabase.integration.test.ts [queued]14159 ❯ tests/liftosaurMeasurementsService.test.ts [queued]14160 ❯ tests/logging.test.ts 9/914161 ❯ tests/mcpRoutes.test.ts [queued]14162 ❯ tests/measurementService.categoryDisplayName.test.ts [queued]14163 ❯ tests/measurementService.zeroValueFiltering.test.ts [queued]14164 ❯ tests/medicationSchemas.zod.test.ts 7/714165 ❯ tests/openFoodFactsAlcohol.test.ts 6/614166 ❯ tests/openFoodFactsAutomaticSyncDatabaseSchemas.test.ts [queued]14167 ❯ tests/openFoodFactsProductReadRateLimitRepository.test.ts [queued]14168 ❯ tests/ouraService.test.ts 1/714169 ❯ tests/switchContextCookie.test.ts [queued]14170 ❯ tests/updateEmailRoute.test.ts 5/514171 ❯ tests/volumeUnitToMl.test.ts [queued]14172 ❯ tests/workoutFeedbackForm.test.ts [queued]1417314174 Test Files 322 passed | 6 skipped (434)14175 Tests 4709 passed | 309 skipped (5103)14176 Start at 11:46:0714177 Duration 12.47s14178stdout | tests/garminIncrementalSync.test.ts > Garmin syncGarminData - Incremental Chunk Resilience > continues processing remaining chunks and records partialErrors when one chunk fails14179[2026-09-30T11:46:20.296Z] [INFO] [garminService] Processing chunk 3/3 (2026-08-15 to 2026-08-15) for user user-1...1418014181stdout | tests/garminIncrementalSync.test.ts > Garmin syncGarminData - Incremental Chunk Resilience > continues processing remaining chunks and records partialErrors when one chunk fails14182[2026-09-30T11:46:20.296Z] [INFO] [garminService] Full Garmin sync completed for user user-1.1418314184stdout | tests/garminIncrementalSync.test.ts > Garmin syncGarminData - Incremental Chunk Resilience > marks phase with error if all chunks fail in that phase14185[2026-09-30T11:46:20.299Z] [INFO] [garminService] Starting Garmin sync (manual) for user user-1 from 2026-08-01 to 2026-08-07.14186[2026-09-30T11:46:20.299Z] [INFO] [garminService] Range 2026-08-01 to 2026-08-07 split into 1 incremental chunks.14187[2026-09-30T11:46:20.299Z] [INFO] [garminService] Processing chunk 1/1 (2026-08-01 to 2026-08-07) for user user-1...141881418914190 ❯ tests/authServiceUpdateEmail.test.ts 0/614191 ❯ tests/calorieSafetyFloor.test.ts [queued]14192 ❯ tests/chatbotToolsBarcode.test.ts 1/514193 ❯ tests/chatbotToolsFavorites.test.ts [queued]14194 ❯ tests/chatbotToolsHabits.test.ts [queued]14195 ❯ tests/chatService.test.ts 27/6014196 ❯ tests/corosOauthCallback.test.ts [queued]14197 ❯ tests/corosRoutes.test.ts 4/414198 ❯ tests/corosSync.test.ts [queued]14199 ❯ tests/customNutrientDeleteCleanup.test.ts [queued]14200 ❯ tests/dashboardLayoutRepository.test.ts [queued]14201 ❯ tests/exerciseEntriesApiSchemas.test.ts 38/4514202 ❯ tests/exerciseEntryRoutes.distanceClear.test.ts 0/314203 ❯ tests/exerciseEntryRoutes.duplicateCheck.test.ts [queued]14204 ❯ tests/exerciseEntryRoutes.progress.test.ts [queued]14205 ❯ tests/exerciseEntryService.csvImport.test.ts [queued]14206 ❯ tests/exerciseJsonFields.test.ts [queued]14207 ❯ tests/exerciseService.imagesEncoding.test.ts [queued]14208 ❯ tests/exerciseStatsRoutes.test.ts [queued]14209 ❯ tests/externalProviderRepository.baseUrl.test.ts 5/514210 ❯ tests/externalProviderRepository.credentials.test.ts [queued]14211 ❯ tests/favoritesRoutes.test.ts [queued]14212 ❯ tests/foodBulkImportOverwrite.test.ts 3/314213 ❯ tests/foodDeletionImpact.test.ts [queued]14214 ❯ tests/foodEntryMealRoutes.create.test.ts 2/214215 ❯ tests/foodUpdateSnapshotRoute.test.ts [queued]14216 ❯ tests/forwardResponseHeaders.test.ts [queued]14217 ❯ tests/garminConnectErrorFormatter.test.ts 8/814218 ❯ tests/garminIncrementalSync.test.ts 2/214219 ❯ tests/glp1Service.test.ts [queued]14220 ❯ tests/goalModePercentageSignMigration.test.ts [queued]14221 ❯ tests/goalRepository.test.ts [queued]14222 ❯ tests/initializeDatabase.integration.test.ts [queued]14223 ❯ tests/liftosaurMeasurementsService.test.ts [queued]14224 ❯ tests/logging.test.ts 9/914225 ❯ tests/mcpRoutes.test.ts [queued]14226 ❯ tests/measurementService.categoryDisplayName.test.ts [queued]14227 ❯ tests/measurementService.zeroValueFiltering.test.ts [queued]14228 ❯ tests/medicationSchemas.zod.test.ts 7/714229 ❯ tests/openFoodFactsAlcohol.test.ts 6/614230 ❯ tests/openFoodFactsAutomaticSyncDatabaseSchemas.test.ts [queued]14231 ❯ tests/openFoodFactsProductReadRateLimitRepository.test.ts [queued]14232 ❯ tests/ouraService.test.ts 1/714233 ❯ tests/switchContextCookie.test.ts [queued]14234 ❯ tests/updateEmailRoute.test.ts 5/514235 ❯ tests/volumeUnitToMl.test.ts [queued]14236 ❯ tests/workoutFeedbackForm.test.ts [queued]1423714238 Test Files 322 passed | 6 skipped (434)14239 Tests 4709 passed | 309 skipped (5103)14240 Start at 11:46:0714241 Duration 12.47s14242stderr | tests/garminIncrementalSync.test.ts > Garmin syncGarminData - Incremental Chunk Resilience > marks phase with error if all chunks fail in that phase14243[2026-09-30T11:46:20.299Z] [ERROR] [garminService] Error during activities sync for chunk 2026-08-01 to 2026-08-07: Garmin API 500 error142441424514246 ❯ tests/authServiceUpdateEmail.test.ts 0/614247 ❯ tests/calorieSafetyFloor.test.ts [queued]14248 ❯ tests/chatbotToolsBarcode.test.ts 1/514249 ❯ tests/chatbotToolsFavorites.test.ts [queued]14250 ❯ tests/chatbotToolsHabits.test.ts [queued]14251 ❯ tests/chatService.test.ts 27/6014252 ❯ tests/corosOauthCallback.test.ts [queued]14253 ❯ tests/corosRoutes.test.ts 4/414254 ❯ tests/corosSync.test.ts [queued]14255 ❯ tests/customNutrientDeleteCleanup.test.ts [queued]14256 ❯ tests/dashboardLayoutRepository.test.ts [queued]14257 ❯ tests/exerciseEntriesApiSchemas.test.ts 38/4514258 ❯ tests/exerciseEntryRoutes.distanceClear.test.ts 0/314259 ❯ tests/exerciseEntryRoutes.duplicateCheck.test.ts [queued]14260 ❯ tests/exerciseEntryRoutes.progress.test.ts [queued]14261 ❯ tests/exerciseEntryService.csvImport.test.ts [queued]14262 ❯ tests/exerciseJsonFields.test.ts [queued]14263 ❯ tests/exerciseService.imagesEncoding.test.ts [queued]14264 ❯ tests/exerciseStatsRoutes.test.ts [queued]14265 ❯ tests/externalProviderRepository.baseUrl.test.ts 5/514266 ❯ tests/externalProviderRepository.credentials.test.ts [queued]14267 ❯ tests/favoritesRoutes.test.ts [queued]14268 ❯ tests/foodBulkImportOverwrite.test.ts 3/314269 ❯ tests/foodDeletionImpact.test.ts [queued]14270 ❯ tests/foodEntryMealRoutes.create.test.ts 2/214271 ❯ tests/foodUpdateSnapshotRoute.test.ts [queued]14272 ❯ tests/forwardResponseHeaders.test.ts [queued]14273 ❯ tests/garminConnectErrorFormatter.test.ts 8/814274 ❯ tests/garminIncrementalSync.test.ts 2/214275 ❯ tests/glp1Service.test.ts [queued]14276 ❯ tests/goalModePercentageSignMigration.test.ts [queued]14277 ❯ tests/goalRepository.test.ts [queued]14278 ❯ tests/initializeDatabase.integration.test.ts [queued]14279 ❯ tests/liftosaurMeasurementsService.test.ts [queued]14280 ❯ tests/logging.test.ts 9/914281 ❯ tests/mcpRoutes.test.ts [queued]14282 ❯ tests/measurementService.categoryDisplayName.test.ts [queued]14283 ❯ tests/measurementService.zeroValueFiltering.test.ts [queued]14284 ❯ tests/medicationSchemas.zod.test.ts 7/714285 ❯ tests/openFoodFactsAlcohol.test.ts 6/614286 ❯ tests/openFoodFactsAutomaticSyncDatabaseSchemas.test.ts [queued]14287 ❯ tests/openFoodFactsProductReadRateLimitRepository.test.ts [queued]14288 ❯ tests/ouraService.test.ts 1/714289 ❯ tests/switchContextCookie.test.ts [queued]14290 ❯ tests/updateEmailRoute.test.ts 5/514291 ❯ tests/volumeUnitToMl.test.ts [queued]14292 ❯ tests/workoutFeedbackForm.test.ts [queued]1429314294 Test Files 322 passed | 6 skipped (434)14295 Tests 4709 passed | 309 skipped (5103)14296 Start at 11:46:0714297 Duration 12.47s14298stdout | tests/garminIncrementalSync.test.ts > Garmin syncGarminData - Incremental Chunk Resilience > marks phase with error if all chunks fail in that phase14299[2026-09-30T11:46:20.299Z] [INFO] [garminService] Full Garmin sync completed for user user-1.1430014301 ✓ tests/garminIncrementalSync.test.ts (2 tests) 29ms1430214303 ❯ tests/authServiceUpdateEmail.test.ts 0/614304 ❯ tests/calorieSafetyFloor.test.ts [queued]14305 ❯ tests/chatbotToolsBarcode.test.ts 1/514306 ❯ tests/chatbotToolsFavorites.test.ts [queued]14307 ❯ tests/chatbotToolsHabits.test.ts [queued]14308 ❯ tests/chatService.test.ts 27/6014309 ❯ tests/corosOauthCallback.test.ts [queued]14310 ❯ tests/corosRoutes.test.ts 4/414311 ❯ tests/corosSync.test.ts [queued]14312 ❯ tests/customNutrientDeleteCleanup.test.ts [queued]14313 ❯ tests/dashboardLayoutRepository.test.ts [queued]14314 ❯ tests/exerciseEntriesApiSchemas.test.ts 38/4514315 ❯ tests/exerciseEntryRoutes.distanceClear.test.ts 0/314316 ❯ tests/exerciseEntryRoutes.duplicateCheck.test.ts [queued]14317 ❯ tests/exerciseEntryRoutes.progress.test.ts [queued]14318 ❯ tests/exerciseEntryService.csvImport.test.ts [queued]14319 ❯ tests/exerciseJsonFields.test.ts [queued]14320 ❯ tests/exerciseService.imagesEncoding.test.ts [queued]14321 ❯ tests/exerciseStatsRoutes.test.ts [queued]14322 ❯ tests/externalProviderRepository.baseUrl.test.ts 5/514323 ❯ tests/externalProviderRepository.credentials.test.ts [queued]14324 ❯ tests/favoritesRoutes.test.ts [queued]14325 ❯ tests/foodBulkImportOverwrite.test.ts 3/314326 ❯ tests/foodDeletionImpact.test.ts [queued]14327 ❯ tests/foodEntryMealRoutes.create.test.ts 2/214328 ❯ tests/foodUpdateSnapshotRoute.test.ts [queued]14329 ❯ tests/forwardResponseHeaders.test.ts [queued]14330 ❯ tests/garminConnectErrorFormatter.test.ts 8/814331 ❯ tests/garminIncrementalSync.test.ts 2/214332 ❯ tests/glp1Service.test.ts [queued]14333 ❯ tests/goalModePercentageSignMigration.test.ts [queued]14334 ❯ tests/goalRepository.test.ts [queued]14335 ❯ tests/initializeDatabase.integration.test.ts [queued]14336 ❯ tests/liftosaurMeasurementsService.test.ts [queued]14337 ❯ tests/logging.test.ts 9/914338 ❯ tests/mcpRoutes.test.ts [queued]14339 ❯ tests/measurementService.categoryDisplayName.test.ts [queued]14340 ❯ tests/measurementService.zeroValueFiltering.test.ts [queued]14341 ❯ tests/medicationSchemas.zod.test.ts 7/714342 ❯ tests/openFoodFactsAlcohol.test.ts 6/614343 ❯ tests/openFoodFactsAutomaticSyncDatabaseSchemas.test.ts [queued]14344 ❯ tests/openFoodFactsProductReadRateLimitRepository.test.ts [queued]14345 ❯ tests/ouraService.test.ts 1/714346 ❯ tests/switchContextCookie.test.ts [queued]14347 ❯ tests/updateEmailRoute.test.ts 5/514348 ❯ tests/volumeUnitToMl.test.ts [queued]14349 ❯ tests/workoutFeedbackForm.test.ts [queued]1435014351 Test Files 322 passed | 6 skipped (434)14352 Tests 4709 passed | 309 skipped (5103)14353 Start at 11:46:0714354 Duration 12.47s14355 ✓ tests/chatbotToolsBarcode.test.ts (5 tests) 10ms14356 ✓ tests/exerciseEntryRoutes.distanceClear.test.ts (3 tests) 38ms14357 ✓ tests/exerciseEntryRoutes.progress.test.ts (3 tests) 34ms14358 ✓ tests/exerciseJsonFields.test.ts (12 tests) 6ms14359 ✓ tests/authServiceUpdateEmail.test.ts (6 tests) 131ms14360 ✓ tests/liftosaurMeasurementsService.test.ts (4 tests) 20ms14361 ✓ tests/foodDeletionImpact.test.ts (1 test) 5ms1436214363 ❯ tests/appDbPasswordReachesPool.test.ts [queued]14364 ❯ tests/authServiceUpdateEmail.test.ts 6/614365 ❯ tests/caffeineKineticsMidnight.test.ts [queued]14366 ❯ tests/calorieSafetyFloor.test.ts 0/214367 ❯ tests/chatbotToolsAsk.test.ts [queued]14368 ❯ tests/chatbotToolsBarcode.test.ts 5/514369 ❯ tests/chatbotToolsFavorites.test.ts [queued]14370 ❯ tests/chatbotToolsHabits.test.ts [queued]14371 ❯ tests/chatService.test.ts 40/6014372 ❯ tests/corosOauthCallback.test.ts [queued]14373 ❯ tests/corosSync.test.ts [queued]14374 ❯ tests/customNutrientDeleteCleanup.test.ts [queued]14375 ❯ tests/dashboardLayoutRepository.test.ts [queued]14376 ❯ tests/dropSetCalculator.test.ts [queued]14377 ❯ tests/exerciseEntriesApiSchemas.test.ts 39/4514378 ❯ tests/exerciseEntryRoutes.distanceClear.test.ts 3/314379 ❯ tests/exerciseEntryRoutes.duplicateCheck.test.ts [queued]14380 ❯ tests/exerciseEntryRoutes.progress.test.ts 3/314381 ❯ tests/exerciseEntryService.csvImport.test.ts [queued]14382 ❯ tests/exerciseJsonFields.test.ts 12/1214383 ❯ tests/exerciseService.imagesEncoding.test.ts [queued]14384 ❯ tests/exerciseStatsRoutes.test.ts [queued]14385 ❯ tests/externalProviderRepository.credentials.test.ts [queued]14386 ❯ tests/favoritesRoutes.test.ts [queued]14387 ❯ tests/foodDeletionImpact.test.ts 1/114388 ❯ tests/foodEntryTime.test.ts [queued]14389 ❯ tests/foodUpdateSnapshotRoute.test.ts [queued]14390 ❯ tests/forwardResponseHeaders.test.ts [queued]14391 ❯ tests/garminIncrementalSync.test.ts 2/214392 ❯ tests/glp1Service.test.ts [queued]14393 ❯ tests/goalModePercentageSignMigration.test.ts [queued]14394 ❯ tests/goalRepository.test.ts [queued]14395 ❯ tests/initializeDatabase.integration.test.ts [queued]14396 ❯ tests/liftosaurMeasurementsService.test.ts 4/414397 ❯ tests/logging.test.ts 9/914398 ❯ tests/mcpRoutes.test.ts [queued]14399 ❯ tests/measurementService.categoryDisplayName.test.ts [queued]14400 ❯ tests/measurementService.zeroValueFiltering.test.ts [queued]14401 ❯ tests/openFoodFactsAutomaticSyncDatabaseSchemas.test.ts [queued]14402 ❯ tests/openFoodFactsProductReadRateLimitRepository.test.ts [queued]14403 ❯ tests/ouraService.test.ts 1/714404 ❯ tests/outboundHttp.test.ts [queued]14405 ❯ tests/switchContextCookie.test.ts [queued]14406 ❯ tests/updateFoodBarcode.test.ts [queued]14407 ❯ tests/userRepositoryCredentialAccountId.test.ts [queued]14408 ❯ tests/volumeUnitToMl.test.ts [queued]14409 ❯ tests/workoutFeedbackForm.test.ts [queued]1441014411 Test Files 329 passed | 6 skipped (434)14412 Tests 4756 passed | 309 skipped (5125)14413 Start at 11:46:0714414 Duration 12.57s14415 ✓ tests/calorieSafetyFloor.test.ts (2 tests) 17ms14416 ✓ tests/exerciseService.imagesEncoding.test.ts (2 tests) 5ms14417 ✓ tests/corosOauthCallback.test.ts (2 tests) 25ms14418 ↓ tests/initializeDatabase.integration.test.ts (1 test | 1 skipped)14419 ✓ tests/exerciseStatsRoutes.test.ts (12 tests) 48ms1442014421 ❯ tests/appDbPasswordReachesPool.test.ts [queued]14422 ❯ tests/caffeineKineticsMidnight.test.ts [queued]14423 ❯ tests/calorieSafetyFloor.test.ts 2/214424 ❯ tests/chatbotToolsAsk.test.ts [queued]14425 ❯ tests/chatbotToolsFavorites.test.ts [queued]14426 ❯ tests/chatbotToolsHabits.test.ts [queued]14427 ❯ tests/chatbotToolUnitConversion.test.ts [queued]14428 ❯ tests/chatService.test.ts 51/6014429 ❯ tests/corosOauthCallback.test.ts 2/214430 ❯ tests/corosSync.test.ts [queued]14431 ❯ tests/customNutrientDeleteCleanup.test.ts [queued]14432 ❯ tests/dashboardLayoutRepository.test.ts [queued]14433 ❯ tests/dropSetCalculator.test.ts [queued]14434 ❯ tests/exerciseEntriesApiSchemas.test.ts 39/4514435 ❯ tests/exerciseEntry.sourcePreservation.test.ts [queued]14436 ❯ tests/exerciseEntryRoutes.duplicateCheck.test.ts [queued]14437 ❯ tests/exerciseEntryService.csvImport.test.ts [queued]14438 ❯ tests/exerciseService.imagesEncoding.test.ts 2/214439 ❯ tests/exerciseStatsRoutes.test.ts 12/1214440 ❯ tests/externalProviderRepository.credentials.test.ts [queued]14441 ❯ tests/externalProviderSchemas.test.ts [queued]14442 ❯ tests/favoritesRoutes.test.ts [queued]14443 ❯ tests/foodDefaultVariantQueries.test.ts [queued]14444 ❯ tests/foodDeletionImpact.test.ts 1/114445 ❯ tests/foodEntryTime.test.ts [queued]14446 ❯ tests/foodUpdateSnapshotRoute.test.ts [queued]14447 ❯ tests/forwardResponseHeaders.test.ts 1/514448 ❯ tests/glp1Service.test.ts [queued]14449 ❯ tests/goalModePercentageSignMigration.test.ts [queued]14450 ❯ tests/goalRepository.test.ts [queued]14451 ❯ tests/initializeDatabase.integration.test.ts 1/114452 ❯ tests/liftosaurMeasurementsService.test.ts 4/414453 ❯ tests/mcpRoutes.test.ts [queued]14454 ❯ tests/measurementService.categoryDisplayName.test.ts [queued]14455 ❯ tests/measurementService.zeroValueFiltering.test.ts [queued]14456 ❯ tests/openFoodFactsAutomaticSyncDatabaseSchemas.test.ts [queued]14457 ❯ tests/openFoodFactsPhoto.test.ts [queued]14458 ❯ tests/openFoodFactsProductReadRateLimitRepository.test.ts 0/414459 ❯ tests/openFoodFactsSyncSettingsRoutes.test.ts [queued]14460 ❯ tests/ouraService.test.ts 1/714461 ❯ tests/outboundHttp.test.ts [queued]14462 ❯ tests/setsDurationMinutes.test.ts [queued]14463 ❯ tests/switchContextCookie.test.ts [queued]14464 ❯ tests/updateFoodBarcode.test.ts [queued]14465 ❯ tests/userRepositoryCredentialAccountId.test.ts [queued]14466 ❯ tests/volumeUnitToMl.test.ts [queued]14467 ❯ tests/workoutFeedbackForm.test.ts [queued]1446814469 Test Files 333 passed | 7 skipped (434)14470 Tests 4786 passed | 310 skipped (5151)14471 Start at 11:46:0714472 Duration 12.68s14473 ✓ tests/forwardResponseHeaders.test.ts (5 tests) 25ms14474 ✓ tests/openFoodFactsProductReadRateLimitRepository.test.ts (4 tests) 9ms14475 ✓ tests/externalProviderRepository.credentials.test.ts (4 tests) 6ms14476 ✓ tests/goalRepository.test.ts (1 test) 6ms14477 ✓ tests/chatService.test.ts (60 tests) 599ms14478 ✓ tests/openFoodFactsAutomaticSyncDatabaseSchemas.test.ts (6 tests) 18ms14479 ✓ tests/userRepositoryCredentialAccountId.test.ts (2 tests) 8ms1448014481 ❯ tests/appDbPasswordReachesPool.test.ts [queued]14482 ❯ tests/caffeineKineticsMidnight.test.ts [queued]14483 ❯ tests/chatbotToolsAsk.test.ts [queued]14484 ❯ tests/chatbotToolsFavorites.test.ts [queued]14485 ❯ tests/chatbotToolsHabits.test.ts [queued]14486 ❯ tests/chatbotToolUnitConversion.test.ts [queued]14487 ❯ tests/chatService.test.ts 60/6014488 ❯ tests/corosSync.test.ts [queued]14489 ❯ tests/customNutrientDeleteCleanup.test.ts [queued]14490 ❯ tests/cycleRepository.test.ts [queued]14491 ❯ tests/dashboardLayoutRepository.test.ts [queued]14492 ❯ tests/dropSetCalculator.test.ts [queued]14493 ❯ tests/exerciseEntriesApiSchemas.test.ts 39/4514494 ❯ tests/exerciseEntry.sourcePreservation.test.ts [queued]14495 ❯ tests/exerciseEntryRoutes.duplicateCheck.test.ts [queued]14496 ❯ tests/exerciseEntryService.csvImport.test.ts [queued]14497 ❯ tests/exerciseStatsRoutes.test.ts 12/1214498 ❯ tests/externalProviderRepository.credentials.test.ts 4/414499 ❯ tests/externalProviderSchemas.test.ts [queued]14500 ❯ tests/favoritesRoutes.test.ts [queued]14501 ❯ tests/foodDefaultVariantQueries.test.ts [queued]14502 ❯ tests/foodEntryTime.test.ts [queued]14503 ❯ tests/foodUpdateSnapshotRoute.test.ts [queued]14504 ❯ tests/forwardResponseHeaders.test.ts 5/514505 ❯ tests/glp1Service.test.ts [queued]14506 ❯ tests/goalModePercentageSignMigration.test.ts [queued]14507 ❯ tests/goalRepository.test.ts 1/114508 ❯ tests/imageOrder.test.ts [queued]14509 ❯ tests/mcpRoutes.test.ts [queued]14510 ❯ tests/mealTypeDefaultTime.test.ts [queued]14511 ❯ tests/measurementService.categoryDisplayName.test.ts [queued]14512 ❯ tests/measurementService.zeroValueFiltering.test.ts [queued]14513 ❯ tests/openFoodFactsAutomaticSyncDatabaseSchemas.test.ts 6/614514 ❯ tests/openFoodFactsPhoto.test.ts [queued]14515 ❯ tests/openFoodFactsProductReadRateLimitRepository.test.ts 4/414516 ❯ tests/openFoodFactsSyncSettingsRoutes.test.ts [queued]14517 ❯ tests/ouraService.test.ts 1/714518 ❯ tests/outboundHttp.test.ts [queued]14519 ❯ tests/reportRepository.downsample.test.ts [queued]14520 ❯ tests/resolveMealTypeIdWithClient.test.ts [queued]14521 ❯ tests/setsDurationMinutes.test.ts [queued]14522 ❯ tests/switchContextCookie.test.ts [queued]14523 ❯ tests/updateFoodBarcode.test.ts [queued]14524 ❯ tests/userRepositoryCredentialAccountId.test.ts 2/214525 ❯ tests/volumeUnitToMl.test.ts [queued]14526 ❯ tests/workoutDaysRoute.test.ts [queued]14527 ❯ tests/workoutFeedbackForm.test.ts [queued]1452814529 Test Files 340 passed | 7 skipped (434)14530 Tests 4816 passed | 310 skipped (5164)14531 Start at 11:46:0714532 Duration 12.78s14533stdout | tests/switchContextCookie.test.ts14534[2026-09-30T11:46:20.737Z] [INFO] UserProfileRoutes UPLOADS_DIR: /build/source/SparkyFitnessServer/uploads/avatars1453514536 ✓ tests/volumeUnitToMl.test.ts (8 tests) 7ms14537 ✓ tests/switchContextCookie.test.ts (2 tests) 32ms14538 ✓ tests/chatbotToolUnitConversion.test.ts (18 tests) 10ms14539 ✓ tests/openFoodFactsPhoto.test.ts (9 tests) 20ms14540 ✓ tests/exerciseEntryRoutes.duplicateCheck.test.ts (2 tests) 41ms14541 ✓ tests/dashboardLayoutRepository.test.ts (5 tests) 11ms14542 ✓ tests/appDbPasswordReachesPool.test.ts (2 tests) 43ms1454314544 ❯ tests/appDbPasswordReachesPool.test.ts 2/214545 ❯ tests/caffeineKineticsMidnight.test.ts [queued]14546 ❯ tests/chatbotToolsAsk.test.ts [queued]14547 ❯ tests/chatbotToolsFavorites.test.ts [queued]14548 ❯ tests/chatbotToolsHabits.test.ts [queued]14549 ❯ tests/chatbotToolUnitConversion.test.ts 18/1814550 ❯ tests/chatService.test.ts 60/6014551 ❯ tests/corosSync.test.ts [queued]14552 ❯ tests/customNutrientDeleteCleanup.test.ts [queued]14553 ❯ tests/cycleRepository.test.ts [queued]14554 ❯ tests/dashboardLayoutRepository.test.ts 5/514555 ❯ tests/dropSetCalculator.test.ts [queued]14556 ❯ tests/exerciseEntriesApiSchemas.test.ts 39/4514557 ❯ tests/exerciseEntry.sourcePreservation.test.ts [queued]14558 ❯ tests/exerciseEntryRoutes.duplicateCheck.test.ts 2/214559 ❯ tests/exerciseEntryService.csvImport.test.ts [queued]14560 ❯ tests/externalProviderSchemas.test.ts 0/714561 ❯ tests/favoritesRoutes.test.ts [queued]14562 ❯ tests/foodDefaultVariantQueries.test.ts [queued]14563 ❯ tests/foodEntryTime.test.ts [queued]14564 ❯ tests/foodSorting.test.ts [queued]14565 ❯ tests/foodUpdateSnapshotRoute.test.ts [queued]14566 ❯ tests/garminMeasurementMapping.test.ts [queued]14567 ❯ tests/globalSettingsFailClosed.test.ts [queued]14568 ❯ tests/glp1Service.test.ts 0/514569 ❯ tests/goalModePercentageSignMigration.test.ts 0/514570 ❯ tests/googleHealthParsers.test.ts [queued]14571 ❯ tests/imageOrder.test.ts [queued]14572 ❯ tests/mcpRoutes.test.ts [queued]14573 ❯ tests/mealTypeDefaultTime.test.ts [queued]14574 ❯ tests/measurementService.categoryDisplayName.test.ts [queued]14575 ❯ tests/measurementService.zeroValueFiltering.test.ts [queued]14576 ❯ tests/openFoodFactsAutomaticSyncDatabaseSchemas.test.ts 6/614577 ❯ tests/openFoodFactsPhoto.test.ts 9/914578 ❯ tests/openFoodFactsSyncSettingsRoutes.test.ts [queued]14579 ❯ tests/ouraService.test.ts 1/714580 ❯ tests/outboundHttp.test.ts [queued]14581 ❯ tests/poolContext.test.ts [queued]14582 ❯ tests/reportRepository.downsample.test.ts [queued]14583 ❯ tests/resolveMealTypeIdWithClient.test.ts [queued]14584 ❯ tests/setsDurationMinutes.test.ts [queued]14585 ❯ tests/switchContextCookie.test.ts 2/214586 ❯ tests/updateFoodBarcode.test.ts [queued]14587 ❯ tests/userRepositoryCredentialAccountId.test.ts 2/214588 ❯ tests/volumeUnitToMl.test.ts 8/814589 ❯ tests/workoutDaysRoute.test.ts [queued]14590 ❯ tests/workoutFeedbackForm.test.ts [queued]1459114592 Test Files 347 passed | 7 skipped (434)14593 Tests 4862 passed | 310 skipped (5227)14594 Start at 11:46:0714595 Duration 12.99s14596 ✓ tests/goalModePercentageSignMigration.test.ts (5 tests) 6ms14597 ✓ tests/glp1Service.test.ts (5 tests) 11ms14598 ✓ tests/externalProviderSchemas.test.ts (7 tests) 10ms14599stdout | tests/customNutrientDeleteCleanup.test.ts > customNutrientService.deleteCustomNutrient — supplement JSONB cleanup > scrubs medications.nutrients (always) and medication_entries snapshots (history purge) when deleteAllHistory is true14600[2026-09-30T11:46:20.941Z] [INFO] Deleting custom nutrient "Boron" for user c65e84ac-1f4a-46bf-b129-654429b76011. Delete history: true1460114602 ✓ tests/workoutFeedbackForm.test.ts (5 tests) 6ms14603 ✓ tests/measurementService.categoryDisplayName.test.ts (4 tests) 5ms14604 ✓ tests/caffeineKineticsMidnight.test.ts (3 tests) 22ms14605 ✓ tests/dropSetCalculator.test.ts (9 tests) 6ms14606stdout | tests/customNutrientDeleteCleanup.test.ts > customNutrientService.deleteCustomNutrient — supplement JSONB cleanup > scrubs medications.nutrients (always) and medication_entries snapshots (history purge) when deleteAllHistory is true14607[2026-09-30T11:46:20.999Z] [INFO] Cleaning up historical data for nutrient "Boron" for user c65e84ac-1f4a-46bf-b129-654429b760111460814609stdout | tests/customNutrientDeleteCleanup.test.ts > customNutrientService.deleteCustomNutrient — supplement JSONB cleanup > scrubs medications.nutrients (always) and medication_entries snapshots (history purge) when deleteAllHistory is true14610[2026-09-30T11:46:20.999Z] [INFO] Successfully deleted custom nutrient "Boron" and performed cascading cleanup for user c65e84ac-1f4a-46bf-b129-654429b760111461114612stdout | tests/customNutrientDeleteCleanup.test.ts > customNutrientService.deleteCustomNutrient — supplement JSONB cleanup > scrubs the medication definitions but NOT the immutable snapshots when deleteAllHistory is false14613[2026-09-30T11:46:21.001Z] [INFO] Deleting custom nutrient "Boron" for user c65e84ac-1f4a-46bf-b129-654429b76011. Delete history: false146141461514616 ❯ tests/appDbPasswordReachesPool.test.ts 2/214617 ❯ tests/backupService.test.ts [queued]14618 ❯ tests/caffeineKineticsMidnight.test.ts 3/314619 ❯ tests/chatbotToolsAsk.test.ts 1/1114620 ❯ tests/chatbotToolsFavorites.test.ts [queued]14621 ❯ tests/chatbotToolsHabits.test.ts [queued]14622 ❯ tests/corosSync.test.ts [queued]14623 ❯ tests/customNutrientDeleteCleanup.test.ts 1/214624 ❯ tests/cycleRepository.test.ts [queued]14625 ❯ tests/dashboardLayoutRepository.test.ts 5/514626 ❯ tests/dropSetCalculator.test.ts 9/914627 ❯ tests/exerciseEntriesApiSchemas.test.ts 39/4514628 ❯ tests/exerciseEntry.sourcePreservation.test.ts [queued]14629 ❯ tests/exerciseEntryRoutes.duplicateCheck.test.ts 2/214630 ❯ tests/exerciseEntryService.csvImport.test.ts [queued]14631 ❯ tests/externalProviderSchemas.test.ts 7/714632 ❯ tests/favoritesRoutes.test.ts [queued]14633 ❯ tests/foodDefaultVariantQueries.test.ts [queued]14634 ❯ tests/foodEntryTime.test.ts [queued]14635 ❯ tests/foodEntryUnitReconcile.test.ts [queued]14636 ❯ tests/foodFavoritesService.test.ts [queued]14637 ❯ tests/foodSorting.test.ts [queued]14638 ❯ tests/foodUpdateSnapshotRoute.test.ts 0/814639 ❯ tests/garminMeasurementMapping.test.ts [queued]14640 ❯ tests/globalSettingsFailClosed.test.ts [queued]14641 ❯ tests/glp1Service.test.ts 5/514642 ❯ tests/goalModePercentageSignMigration.test.ts 5/514643 ❯ tests/googleHealthParsers.test.ts [queued]14644 ❯ tests/imageOrder.test.ts [queued]14645 ❯ tests/mcpRoutes.test.ts 0/2414646 ❯ tests/mealTypeDefaultTime.test.ts 0/214647 ❯ tests/measurementService.categoryDisplayName.test.ts 4/414648 ❯ tests/measurementService.zeroValueFiltering.test.ts [queued]14649 ❯ tests/nutrientGoalPreferenceRepository.test.ts [queued]14650 ❯ tests/openFoodFactsPhoto.test.ts 9/914651 ❯ tests/openFoodFactsSyncSettingsRoutes.test.ts [queued]14652 ❯ tests/ouraService.test.ts 1/714653 ❯ tests/outboundHttp.test.ts [queued]14654 ❯ tests/poolContext.test.ts [queued]14655 ❯ tests/preferenceChartScaleMode.test.ts [queued]14656 ❯ tests/reportRepository.downsample.test.ts [queued]14657 ❯ tests/reportSupplementScaling.test.ts [queued]14658 ❯ tests/resolveMealTypeIdWithClient.test.ts [queued]14659 ❯ tests/setsDurationMinutes.test.ts [queued]14660 ❯ tests/updateFoodBarcode.test.ts [queued]14661 ❯ tests/workoutDaysRoute.test.ts [queued]14662 ❯ tests/workoutFeedbackForm.test.ts 5/51466314664 Test Files 354 passed | 7 skipped (434)14665 Tests 4902 passed | 310 skipped (5295)14666 Start at 11:46:0714667 Duration 13.09s14668 ✓ tests/chatbotToolsAsk.test.ts (11 tests) 11ms14669stdout | tests/mealTypeDefaultTime.test.ts > mealTypeRepository default_time tests > updateMealType default_time > should upsert default_time in user_meal_visibilities when provided14670[2026-09-30T11:46:21.044Z] [INFO] updateMealType in mealType.js: id: 73a83a80-5dfb-440a-ba42-3b68d8e10ed8, data: {"default_time":"11:30"}1467114672stdout | tests/mealTypeDefaultTime.test.ts > mealTypeRepository default_time tests > updateMealType default_time > should support clearing default_time by passing null14673[2026-09-30T11:46:21.046Z] [INFO] updateMealType in mealType.js: id: 5c2d5f4b-ffef-4cb7-92e4-1fc8b98047cd, data: {"default_time":null}1467414675 ✓ tests/foodUpdateSnapshotRoute.test.ts (8 tests) 58ms14676 ✓ tests/mealTypeDefaultTime.test.ts (2 tests) 6ms14677stdout | tests/outboundHttp.test.ts > configureOutboundHttp > widens the per-family connect attempt timeout and sets a request timeout14678[2026-09-30T11:46:21.067Z] [INFO] Outbound HTTP defaults: 30000ms request timeout, 5000ms per address-family connect attempt.1467914680stdout | tests/customNutrientDeleteCleanup.test.ts > customNutrientService.deleteCustomNutrient — supplement JSONB cleanup > scrubs the medication definitions but NOT the immutable snapshots when deleteAllHistory is false14681[2026-09-30T11:46:21.042Z] [INFO] Successfully deleted custom nutrient "Boron" and performed cascading cleanup for user c65e84ac-1f4a-46bf-b129-654429b760111468214683 ✓ tests/outboundHttp.test.ts (5 tests) 7ms14684 ✓ tests/updateFoodBarcode.test.ts (5 tests) 7ms14685 ✓ tests/customNutrientDeleteCleanup.test.ts (2 tests) 105ms14686stdout | tests/foodEntryTime.test.ts > foodEntryRepository time-of-day tests > createFoodEntry > should include entry_time parameter in INSERT statement14687[2026-09-30T11:46:21.067Z] [INFO] createFoodEntry in foodEntry.js: entryData: {"user_id":"bb12c0e6-a42c-49ab-9147-be886b1029b4","food_id":"44e24d52-e209-45a5-89d9-7ee0e4d5cfb5","meal_type_id":"1db8751e-08c1-40f2-b95a-83dd6a0e32bc","quantity":1,"unit":"g","entry_date":"2026-07-10","entry_time":"12:30"}, createdByUserId: bb12c0e6-a42c-49ab-9147-be886b1029b41468814689 ✓ tests/foodEntryTime.test.ts (2 tests) 8ms14690 ✓ tests/measurementService.zeroValueFiltering.test.ts (3 tests) 9ms14691 ✓ tests/corosSync.test.ts (3 tests) 20ms14692 ✓ tests/setsDurationMinutes.test.ts (13 tests) 7ms1469314694 ❯ tests/backupService.test.ts [queued]14695 ❯ tests/caffeineKineticsMidnight.test.ts 3/314696 ❯ tests/chatbotToolsAsk.test.ts 11/1114697 ❯ tests/chatbotToolsFavorites.test.ts [queued]14698 ❯ tests/chatbotToolsHabits.test.ts 0/814699 ❯ tests/chatbotToolsWizard.test.ts [queued]14700 ❯ tests/corosSync.test.ts 3/314701 ❯ tests/customNutrientDeleteCleanup.test.ts 2/214702 ❯ tests/cycleRepository.test.ts [queued]14703 ❯ tests/dateColumnParser.test.ts [queued]14704 ❯ tests/dropSetCalculator.test.ts 9/914705 ❯ tests/exerciseActiveCalories.test.ts [queued]14706 ❯ tests/exerciseEntriesApiSchemas.test.ts 40/4514707 ❯ tests/exerciseEntry.sourcePreservation.test.ts 1/214708 ❯ tests/exerciseEntryService.csvImport.test.ts [queued]14709 ❯ tests/externalProviderSchemas.test.ts 7/714710 ❯ tests/favoritesRoutes.test.ts [queued]14711 ❯ tests/foodDefaultVariantQueries.test.ts [queued]14712 ❯ tests/foodEntryCopyFingerprint.test.ts [queued]14713 ❯ tests/foodEntryTime.test.ts 2/214714 ❯ tests/foodEntryUnitReconcile.test.ts [queued]14715 ❯ tests/foodFavoritesService.test.ts [queued]14716 ❯ tests/foodSorting.test.ts [queued]14717 ❯ tests/foodUpdateSnapshotRoute.test.ts 8/814718 ❯ tests/garminMeasurementMapping.test.ts [queued]14719 ❯ tests/globalSettingsFailClosed.test.ts [queued]14720 ❯ tests/googleHealthParsers.test.ts [queued]14721 ❯ tests/imageOrder.test.ts [queued]14722 ❯ tests/mcpRoutes.test.ts 1/2414723 ❯ tests/mealTypeDefaultTime.test.ts 2/214724 ❯ tests/measurementService.categoryDisplayName.test.ts 4/414725 ❯ tests/measurementService.checkInDelete.test.ts [queued]14726 ❯ tests/measurementService.zeroValueFiltering.test.ts 3/314727 ❯ tests/nutrientGoalPreferenceRepository.test.ts [queued]14728 ❯ tests/openFoodFactsSyncSettingsRoutes.test.ts [queued]14729 ❯ tests/ouraService.test.ts 1/714730 ❯ tests/outboundHttp.test.ts 5/514731 ❯ tests/poolContext.test.ts [queued]14732 ❯ tests/preferenceChartScaleMode.test.ts [queued]14733 ❯ tests/reportRepository.downsample.test.ts [queued]14734 ❯ tests/reportSupplementScaling.test.ts [queued]14735 ❯ tests/resolveMealTypeIdWithClient.test.ts [queued]14736 ❯ tests/setsDurationMinutes.test.ts 13/1314737 ❯ tests/updateFoodBarcode.test.ts 5/514738 ❯ tests/usdaService.test.ts [queued]14739 ❯ tests/workoutDaysRoute.test.ts [queued]14740 ❯ tests/workoutFeedbackForm.test.ts 5/51474114742 Test Files 364 passed | 7 skipped (434)14743 Tests 4957 passed | 310 skipped (5336)14744 Start at 11:46:0714745 Duration 13.19s14746 ✓ tests/exerciseEntry.sourcePreservation.test.ts (2 tests) 5ms14747 ✓ tests/chatbotToolsHabits.test.ts (8 tests) 10ms14748 ✓ tests/reportRepository.downsample.test.ts (2 tests) 6ms14749 ✓ tests/favoritesRoutes.test.ts (5 tests) 26ms14750 ✓ tests/foodDefaultVariantQueries.test.ts (4 tests) 8ms14751 ✓ tests/imageOrder.test.ts (8 tests) 7ms1475214753 ❯ tests/backupRescheduling.test.ts [queued]14754 ❯ tests/backupScheduler.test.ts [queued]14755 ❯ tests/backupService.test.ts [queued]14756 ❯ tests/bodyCompositionService.test.ts [queued]14757 ❯ tests/chatbotToolsFavorites.test.ts [queued]14758 ❯ tests/chatbotToolsHabits.test.ts 8/814759 ❯ tests/chatbotToolsMeta.test.ts [queued]14760 ❯ tests/chatbotToolsWizard.test.ts [queued]14761 ❯ tests/corosSync.test.ts 3/314762 ❯ tests/cycleRepository.test.ts [queued]14763 ❯ tests/dateColumnParser.test.ts [queued]14764 ❯ tests/exerciseActiveCalories.test.ts [queued]14765 ❯ tests/exerciseEntriesApiSchemas.test.ts 40/4514766 ❯ tests/exerciseEntry.sourcePreservation.test.ts 2/214767 ❯ tests/exerciseEntryGarminCleanup.test.ts [queued]14768 ❯ tests/exerciseEntryService.csvImport.test.ts [queued]14769 ❯ tests/favoritesRoutes.test.ts 5/514770 ❯ tests/foodDefaultVariantQueries.test.ts 4/414771 ❯ tests/foodEntryCopyFingerprint.test.ts [queued]14772 ❯ tests/foodEntryUnitReconcile.test.ts [queued]14773 ❯ tests/foodFavoritesQuery.test.ts [queued]14774 ❯ tests/foodFavoritesService.test.ts [queued]14775 ❯ tests/foodSorting.test.ts [queued]14776 ❯ tests/garminMeasurementMapping.test.ts [queued]14777 ❯ tests/globalSettingsFailClosed.test.ts [queued]14778 ❯ tests/googleHealthParsers.test.ts 1/1614779 ❯ tests/imageOrder.test.ts 8/814780 ❯ tests/mcpRoutes.test.ts 1/2414781 ❯ tests/mealieService.test.ts [queued]14782 ❯ tests/measurementService.checkInDelete.test.ts [queued]14783 ❯ tests/moodTags.test.ts [queued]14784 ❯ tests/nutrientGoalPreferenceRepository.test.ts [queued]14785 ❯ tests/openFoodFactsSyncSettingsRoutes.test.ts [queued]14786 ❯ tests/ouraService.test.ts 1/714787 ❯ tests/poolContext.test.ts [queued]14788 ❯ tests/preferenceChartScaleMode.test.ts [queued]14789 ❯ tests/preferenceSafetyFloor.test.ts [queued]14790 ❯ tests/reportRepository.downsample.test.ts 2/214791 ❯ tests/reportRepository.getExerciseEntries.test.ts [queued]14792 ❯ tests/reportSupplementScaling.test.ts [queued]14793 ❯ tests/resolveMealTypeIdWithClient.test.ts [queued]14794 ❯ tests/resolveTemplateStartDay.test.ts [queued]14795 ❯ tests/setsDurationMinutes.test.ts 13/1314796 ❯ tests/twoFactorState.test.ts [queued]14797 ❯ tests/usdaService.test.ts [queued]14798 ❯ tests/workoutDaysRoute.test.ts [queued]14799 ❯ tests/workoutPresetService.ownership.test.ts [queued]1480014801 Test Files 370 passed | 7 skipped (434)14802 Tests 4986 passed | 310 skipped (5371)14803 Start at 11:46:0714804 Duration 13.30s14805 ✓ tests/googleHealthParsers.test.ts (16 tests) 6ms14806 ✓ tests/exerciseEntryService.csvImport.test.ts (2 tests) 5ms14807 ✓ tests/garminMeasurementMapping.test.ts (5 tests) 8ms14808 ✓ tests/globalSettingsFailClosed.test.ts (11 tests) 9ms14809 ✓ tests/poolContext.test.ts (6 tests) 7ms1481014811 ❯ tests/announcementService.test.ts [queued]14812 ❯ tests/backupRescheduling.test.ts [queued]14813 ❯ tests/backupScheduler.test.ts [queued]14814 ❯ tests/backupService.test.ts 0/414815 ❯ tests/bodyCompositionService.test.ts [queued]14816 ❯ tests/chatbotToolsCaching.test.ts [queued]14817 ❯ tests/chatbotToolsFavorites.test.ts [queued]14818 ❯ tests/chatbotToolsMeta.test.ts [queued]14819 ❯ tests/chatbotToolsWizard.test.ts [queued]14820 ❯ tests/cycleRepository.test.ts 0/414821 ❯ tests/dateColumnParser.test.ts [queued]14822 ❯ tests/exerciseActiveCalories.test.ts [queued]14823 ❯ tests/exerciseEntriesApiSchemas.test.ts 40/4514824 ❯ tests/exerciseEntryGarminCleanup.test.ts [queued]14825 ❯ tests/exerciseEntryService.csvImport.test.ts 2/214826 ❯ tests/foodDefaultVariantQueries.test.ts 4/414827 ❯ tests/foodEntryCopyFingerprint.test.ts [queued]14828 ❯ tests/foodEntryUnitReconcile.test.ts [queued]14829 ❯ tests/foodEntryWholeCopySchema.test.ts [queued]14830 ❯ tests/foodFavoritesQuery.test.ts [queued]14831 ❯ tests/foodFavoritesService.test.ts [queued]14832 ❯ tests/foodSorting.test.ts [queued]14833 ❯ tests/garminMeasurementMapping.test.ts 5/514834 ❯ tests/globalSettingsFailClosed.test.ts 11/1114835 ❯ tests/googleHealthParsers.test.ts 16/1614836 ❯ tests/imageOrder.test.ts 8/814837 ❯ tests/mcpRoutes.test.ts 11/2414838 ❯ tests/mealieService.test.ts [queued]14839 ❯ tests/mealSearch.test.ts [queued]14840 ❯ tests/measurementService.checkInDelete.test.ts [queued]14841 ❯ tests/moodTags.test.ts [queued]14842 ❯ tests/nutrientGoalPreferenceRepository.test.ts 1/214843 ❯ tests/openFoodFactsSyncSettingsRoutes.test.ts [queued]14844 ❯ tests/ouraService.test.ts 2/714845 ❯ tests/poolContext.test.ts 6/614846 ❯ tests/preferenceChartScaleMode.test.ts [queued]14847 ❯ tests/preferenceRepository.openFoodFacts.test.ts [queued]14848 ❯ tests/preferenceSafetyFloor.test.ts [queued]14849 ❯ tests/reportRepository.getExerciseEntries.test.ts [queued]14850 ❯ tests/reportSupplementScaling.test.ts [queued]14851 ❯ tests/resolveMealTypeIdWithClient.test.ts 0/614852 ❯ tests/resolveTemplateStartDay.test.ts [queued]14853 ❯ tests/twoFactorState.test.ts [queued]14854 ❯ tests/usdaService.test.ts [queued]14855 ❯ tests/workoutDaysRoute.test.ts [queued]14856 ❯ tests/workoutPresetSearch.test.ts [queued]14857 ❯ tests/workoutPresetService.ownership.test.ts [queued]1485814859 Test Files 375 passed | 7 skipped (434)14860 Tests 5037 passed | 310 skipped (5411)14861 Start at 11:46:0714862 Duration 13.51s14863 ✓ tests/nutrientGoalPreferenceRepository.test.ts (2 tests) 5ms14864stdout | tests/backupService.test.ts > executeCommand runs argv without a shell > passes a metacharacter-laden value as a single literal argument14865[2026-09-30T11:46:21.396Z] [INFO] Command successful: /nix/store/z5piarlh57mjwr4c9w318ay97sxr6c9m-nodejs-slim-24.20.0/bin/node -e process.stdout.write(process.argv.slice(1).join("|")) harmless; echo INJECTED x1486614867 ✓ tests/cycleRepository.test.ts (4 tests) 5ms14868 ✓ tests/resolveMealTypeIdWithClient.test.ts (6 tests) 7ms14869 ✓ tests/dateColumnParser.test.ts (5 tests) 5ms14870stdout | tests/backupService.test.ts > executeCommand runs argv without a shell > does not evaluate $(...) or backtick command substitution14871[2026-09-30T11:46:21.440Z] [INFO] Command successful: /nix/store/z5piarlh57mjwr4c9w318ay97sxr6c9m-nodejs-slim-24.20.0/bin/node -e process.stdout.write(process.argv.slice(1).join("|")) $(id) `id`1487214873 ✓ tests/backupService.test.ts (4 tests) 84ms14874 ✓ tests/chatbotToolsWizard.test.ts (9 tests) 10ms1487514876 ❯ tests/announcementService.test.ts [queued]14877 ❯ tests/backupRescheduling.test.ts [queued]14878 ❯ tests/backupScheduler.test.ts 1/914879 ❯ tests/bodyCompositionService.test.ts [queued]14880 ❯ tests/chatbotToolsCaching.test.ts [queued]14881 ❯ tests/chatbotToolsFavorites.test.ts 0/914882 ❯ tests/chatbotToolsMeta.test.ts [queued]14883 ❯ tests/cycleRepository.test.ts 4/414884 ❯ tests/dateColumnParser.test.ts 5/514885 ❯ tests/exerciseActiveCalories.test.ts [queued]14886 ❯ tests/exerciseEntriesApiSchemas.test.ts 41/4514887 ❯ tests/exerciseEntryGarminCleanup.test.ts [queued]14888 ❯ tests/foodEntryCopyFingerprint.test.ts [queued]14889 ❯ tests/foodEntrySelectedCopySchema.test.ts [queued]14890 ❯ tests/foodEntryUnitReconcile.test.ts [queued]14891 ❯ tests/foodEntryWholeCopySchema.test.ts [queued]14892 ❯ tests/foodFavoritesQuery.test.ts [queued]14893 ❯ tests/foodFavoritesService.test.ts [queued]14894 ❯ tests/foodSorting.test.ts [queued]14895 ❯ tests/garminSyncResult.test.ts [queued]14896 ❯ tests/globalSettingsFailClosed.test.ts 11/1114897 ❯ tests/mcpRoutes.test.ts 12/2414898 ❯ tests/mealieService.test.ts [queued]14899 ❯ tests/mealSearch.test.ts [queued]14900 ❯ tests/measurementService.checkInDelete.test.ts [queued]14901 ❯ tests/mockDataContext.test.ts [queued]14902 ❯ tests/moodTags.test.ts [queued]14903 ❯ tests/nutrientGoalPreferenceRepository.test.ts 2/214904 ❯ tests/openFoodFactsSyncSettingsRoutes.test.ts 0/314905 ❯ tests/ouraService.test.ts 2/714906 ❯ tests/poolContext.test.ts 6/614907 ❯ tests/poolIdleErrors.test.ts [queued]14908 ❯ tests/preferenceChartScaleMode.test.ts [queued]14909 ❯ tests/preferenceRepository.openFoodFacts.test.ts [queued]14910 ❯ tests/preferenceSafetyFloor.test.ts [queued]14911 ❯ tests/reportRepository.getExerciseEntries.test.ts [queued]14912 ❯ tests/reportSupplementScaling.test.ts [queued]14913 ❯ tests/resolveMealTypeIdWithClient.test.ts 6/614914 ❯ tests/resolveTemplateStartDay.test.ts [queued]14915 ❯ tests/twoFactorState.test.ts 0/314916 ❯ tests/usdaAlcohol.test.ts [queued]14917 ❯ tests/usdaService.test.ts [queued]14918 ❯ tests/workoutDaysRoute.test.ts [queued]14919 ❯ tests/workoutPresetSearch.test.ts [queued]14920 ❯ tests/workoutPresetService.ownership.test.ts [queued]1492114922 Test Files 381 passed | 7 skipped (434)14923 Tests 5069 passed | 310 skipped (5449)14924 Start at 11:46:0714925 Duration 13.64s14926 ✓ tests/backupScheduler.test.ts (9 tests) 6ms14927 ✓ tests/chatbotToolsFavorites.test.ts (9 tests) 13ms14928 ✓ tests/twoFactorState.test.ts (3 tests) 6ms14929 ✓ tests/backupRescheduling.test.ts (2 tests) 5ms14930 ✓ tests/workoutPresetService.ownership.test.ts (2 tests) 4ms14931 ✓ tests/openFoodFactsSyncSettingsRoutes.test.ts (3 tests) 40ms14932 ✓ tests/mcpRoutes.test.ts (24 tests) 639ms14933 ✓ POST /mcp (16)14934 ✓ accepts bodies over 1mb (for photo/image tools) and rejects bodies over 50mb with 413 396ms14935stdout | tests/bodyCompositionService.test.ts > bodyCompositionService > calculateBodyFatNavy > calculates correct body fat for males using Metric inputs (converted from bug report)14936[2026-09-30T11:46:21.582Z] [INFO] Calculating body fat with Navy method for male1493714938stdout | tests/bodyCompositionService.test.ts > bodyCompositionService > calculateBodyFatNavy > calculates correct body fat for females (standard values)14939[2026-09-30T11:46:21.584Z] [INFO] Calculating body fat with Navy method for female1494014941stdout | tests/bodyCompositionService.test.ts > bodyCompositionService > calculateBodyFatNavy > throws error for missing measurements14942[2026-09-30T11:46:21.586Z] [INFO] Calculating body fat with Navy method for male14943[2026-09-30T11:46:21.586Z] [INFO] Calculating body fat with Navy method for female149441494514946 ❯ tests/alcoholNeverAddsCalories.test.ts [queued]14947 ❯ tests/announcementService.test.ts [queued]14948 ❯ tests/bmrService.test.ts [queued]14949 ❯ tests/calorieCalculations.test.ts [queued]14950 ❯ tests/chatbotToolsCaching.test.ts [queued]14951 ❯ tests/chatbotToolsMeta.test.ts [queued]14952 ❯ tests/exerciseActiveCalories.test.ts [queued]14953 ❯ tests/exerciseEntriesApiSchemas.test.ts 41/4514954 ❯ tests/exerciseEntryGarminCleanup.test.ts [queued]14955 ❯ tests/findFoodByBarcode.test.ts [queued]14956 ❯ tests/foodEntryCopyFingerprint.test.ts [queued]14957 ❯ tests/foodEntrySelectedCopySchema.test.ts [queued]14958 ❯ tests/foodEntryWholeCopySchema.test.ts [queued]14959 ❯ tests/foodFavoritesQuery.test.ts [queued]14960 ❯ tests/foodFavoritesService.test.ts [queued]14961 ❯ tests/healthConnectTotalCaloriesCaptureMigration.test.ts 0/214962 ❯ tests/mealieService.test.ts [queued]14963 ❯ tests/mealSearch.test.ts [queued]14964 ❯ tests/measurementService.checkInDelete.test.ts [queued]14965 ❯ tests/mockDataContext.test.ts 0/414966 ❯ tests/moodTags.test.ts [queued]14967 ❯ tests/ouraService.test.ts 2/714968 ❯ tests/poolIdleErrors.test.ts 0/214969 ❯ tests/preferenceChartScaleMode.test.ts [queued]14970 ❯ tests/preferenceSafetyFloor.test.ts [queued]14971 ❯ tests/reportRepository.getExerciseEntries.test.ts [queued]14972 ❯ tests/reportSupplementScaling.test.ts [queued]14973 ❯ tests/resolveTemplateStartDay.test.ts [queued]14974 ❯ tests/truncationPagination.test.ts [queued]14975 ❯ tests/usdaAlcohol.test.ts [queued]14976 ❯ tests/usdaService.test.ts [queued]14977 ❯ tests/workoutDaysRoute.test.ts 0/31497814979 Test Files 394 passed | 7 skipped (434)14980 Tests 5126 passed | 310 skipped (5482)14981 Start at 11:46:0714982 Duration 13.74s14983stderr | tests/foodSorting.test.ts > food database sorting > should fallback to default sort for invalid sortBy14984[2026-09-30T11:46:21.590Z] [WARN] Invalid sortBy parameter received: invalid:field. Using default sort.149851498614987 ❯ tests/alcoholNeverAddsCalories.test.ts [queued]14988 ❯ tests/announcementService.test.ts [queued]14989 ❯ tests/bmrService.test.ts [queued]14990 ❯ tests/calorieCalculations.test.ts [queued]14991 ❯ tests/chatbotToolsCaching.test.ts [queued]14992 ❯ tests/chatbotToolsMeta.test.ts [queued]14993 ❯ tests/exerciseActiveCalories.test.ts [queued]14994 ❯ tests/exerciseEntriesApiSchemas.test.ts 41/4514995 ❯ tests/exerciseEntryGarminCleanup.test.ts [queued]14996 ❯ tests/findFoodByBarcode.test.ts [queued]14997 ❯ tests/foodEntryCopyFingerprint.test.ts [queued]14998 ❯ tests/foodEntrySelectedCopySchema.test.ts [queued]14999 ❯ tests/foodEntryWholeCopySchema.test.ts [queued]15000 ❯ tests/foodFavoritesQuery.test.ts [queued]15001 ❯ tests/foodFavoritesService.test.ts [queued]15002 ❯ tests/healthConnectTotalCaloriesCaptureMigration.test.ts 0/215003 ❯ tests/mealieService.test.ts [queued]15004 ❯ tests/mealSearch.test.ts [queued]15005 ❯ tests/measurementService.checkInDelete.test.ts [queued]15006 ❯ tests/mockDataContext.test.ts 0/415007 ❯ tests/moodTags.test.ts [queued]15008 ❯ tests/ouraService.test.ts 2/715009 ❯ tests/poolIdleErrors.test.ts 0/215010 ❯ tests/preferenceChartScaleMode.test.ts [queued]15011 ❯ tests/preferenceSafetyFloor.test.ts [queued]15012 ❯ tests/reportRepository.getExerciseEntries.test.ts [queued]15013 ❯ tests/reportSupplementScaling.test.ts [queued]15014 ❯ tests/resolveTemplateStartDay.test.ts [queued]15015 ❯ tests/truncationPagination.test.ts [queued]15016 ❯ tests/usdaAlcohol.test.ts [queued]15017 ❯ tests/usdaService.test.ts [queued]15018 ❯ tests/workoutDaysRoute.test.ts 0/31501915020 Test Files 394 passed | 7 skipped (434)15021 Tests 5126 passed | 310 skipped (5482)15022 Start at 11:46:0715023 Duration 13.74s15024 ✓ tests/bodyCompositionService.test.ts (3 tests) 7ms15025 ✓ tests/garminSyncResult.test.ts (3 tests) 5ms15026 ✓ tests/foodSorting.test.ts (3 tests) 9ms15027 ✓ tests/foodEntryUnitReconcile.test.ts (7 tests) 6ms15028 ✓ tests/workoutPresetSearch.test.ts (1 test) 8ms15029 ✓ tests/preferenceRepository.openFoodFacts.test.ts (1 test) 5ms1503015031 ❯ tests/alcoholNeverAddsCalories.test.ts [queued]15032 ❯ tests/announcementService.test.ts [queued]15033 ❯ tests/bmrService.test.ts [queued]15034 ❯ tests/calorieCalculations.test.ts [queued]15035 ❯ tests/chatbotToolsCaching.test.ts [queued]15036 ❯ tests/chatbotToolsMeta.test.ts [queued]15037 ❯ tests/exerciseActiveCalories.test.ts [queued]15038 ❯ tests/exerciseEntriesApiSchemas.test.ts 41/4515039 ❯ tests/exerciseEntryGarminCleanup.test.ts [queued]15040 ❯ tests/findFoodByBarcode.test.ts [queued]15041 ❯ tests/foodEntryCopyFingerprint.test.ts [queued]15042 ❯ tests/foodEntrySelectedCopySchema.test.ts [queued]15043 ❯ tests/foodEntryWholeCopySchema.test.ts [queued]15044 ❯ tests/foodFavoritesQuery.test.ts [queued]15045 ❯ tests/foodFavoritesService.test.ts [queued]15046 ❯ tests/healthConnectTotalCaloriesCaptureMigration.test.ts 0/215047 ❯ tests/mealieService.test.ts [queued]15048 ❯ tests/mealSearch.test.ts [queued]15049 ❯ tests/measurementService.checkInDelete.test.ts [queued]15050 ❯ tests/mockDataContext.test.ts 0/415051 ❯ tests/moodTags.test.ts [queued]15052 ❯ tests/ouraService.test.ts 2/715053 ❯ tests/poolIdleErrors.test.ts 0/215054 ❯ tests/preferenceChartScaleMode.test.ts [queued]15055 ❯ tests/preferenceSafetyFloor.test.ts [queued]15056 ❯ tests/reportRepository.getExerciseEntries.test.ts [queued]15057 ❯ tests/reportSupplementScaling.test.ts [queued]15058 ❯ tests/resolveTemplateStartDay.test.ts [queued]15059 ❯ tests/truncationPagination.test.ts [queued]15060 ❯ tests/usdaAlcohol.test.ts [queued]15061 ❯ tests/usdaService.test.ts [queued]15062 ❯ tests/workoutDaysRoute.test.ts 0/31506315064 Test Files 394 passed | 7 skipped (434)15065 Tests 5126 passed | 310 skipped (5482)15066 Start at 11:46:0715067 Duration 13.74s15068 ✓ tests/mockDataContext.test.ts (4 tests) 9ms15069 ✓ tests/poolIdleErrors.test.ts (2 tests) 8ms15070 ✓ tests/healthConnectTotalCaloriesCaptureMigration.test.ts (2 tests) 6ms15071 ✓ tests/reportSupplementScaling.test.ts (1 test) 5ms15072 ✓ tests/truncationPagination.test.ts (1 test) 4ms15073 ✓ tests/mealieService.test.ts (2 tests) 6ms15074 ✓ tests/workoutDaysRoute.test.ts (3 tests) 46ms15075 ✓ tests/foodEntryCopyFingerprint.test.ts (7 tests) 5ms1507615077 ❯ tests/alcoholNeverAddsCalories.test.ts [queued]15078 ❯ tests/announcementService.test.ts 0/315079 ❯ tests/bmrService.test.ts [queued]15080 ❯ tests/calorieCalculations.test.ts [queued]15081 ❯ tests/chatbotToolsCaching.test.ts [queued]15082 ❯ tests/chatbotToolsMeta.test.ts [queued]15083 ❯ tests/exerciseEntriesApiSchemas.test.ts 41/4515084 ❯ tests/exerciseEntryGarminCleanup.test.ts [queued]15085 ❯ tests/findFoodByBarcode.test.ts [queued]15086 ❯ tests/foodEntrySelectedCopySchema.test.ts [queued]15087 ❯ tests/foodEntryWholeCopySchema.test.ts [queued]15088 ❯ tests/foodFavoritesQuery.test.ts [queued]15089 ❯ tests/foodFavoritesService.test.ts [queued]15090 ❯ tests/foodUtilsNutritionScale.test.ts [queued]15091 ❯ tests/mealSearch.test.ts [queued]15092 ❯ tests/measurementService.checkInDelete.test.ts [queued]15093 ❯ tests/moodTags.test.ts 1/515094 ❯ tests/ouraService.test.ts 2/715095 ❯ tests/preferenceSafetyFloor.test.ts [queued]15096 ❯ tests/reportRepository.getExerciseEntries.test.ts [queued]15097 ❯ tests/resolveTemplateStartDay.test.ts [queued]15098 ❯ tests/usdaAlcohol.test.ts [queued]15099 ❯ tests/usdaService.test.ts 0/21510015101 Test Files 404 passed | 7 skipped (434)15102 Tests 5157 passed | 310 skipped (5511)15103 Start at 11:46:0715104 Duration 13.84s15105stderr | tests/preferenceChartScaleMode.test.ts > chart scale mode preference validation > rejects an unknown mode15106[2026-09-30T11:46:21.695Z] [ERROR] Error updating preferences for user user-1 by user-1: Error: Invalid chart_scale_mode: 'logarithmic'. Must be one of: time, point.15107 at validateChartScaleMode (/build/source/SparkyFitnessServer/services/preferenceService.ts:151:7)15108 at Object.updateUserPreferences (/build/source/SparkyFitnessServer/services/preferenceService.ts:182:11)15109 at processTicksAndRejections (node:internal/process/task_queues:104:5)15110 at /build/source/SparkyFitnessServer/tests/preferenceChartScaleMode.test.ts:28:515111 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:2783:20 {15112 status: 40015113}1511415115stderr | tests/preferenceChartScaleMode.test.ts > chart scale mode preference validation > rejects non-string values instead of coercing them15116[2026-09-30T11:46:21.700Z] [ERROR] Error updating preferences for user user-1 by user-1: Error: Invalid chart_scale_mode: '1'. Must be one of: time, point.15117 at validateChartScaleMode (/build/source/SparkyFitnessServer/services/preferenceService.ts:151:7)15118 at Object.updateUserPreferences (/build/source/SparkyFitnessServer/services/preferenceService.ts:182:11)15119 at processTicksAndRejections (node:internal/process/task_queues:104:5)15120 at /build/source/SparkyFitnessServer/tests/preferenceChartScaleMode.test.ts:36:515121 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:2783:20 {15122 status: 40015123}1512415125stderr | tests/preferenceChartScaleMode.test.ts > chart scale mode preference validation > validates the upsert path too15126[2026-09-30T11:46:21.702Z] [ERROR] Error upserting preferences for user user-1: Error: Invalid chart_scale_mode: 'sideways'. Must be one of: time, point.15127 at validateChartScaleMode (/build/source/SparkyFitnessServer/services/preferenceService.ts:151:7)15128 at Object.upsertUserPreferences (/build/source/SparkyFitnessServer/services/preferenceService.ts:287:11)15129 at processTicksAndRejections (node:internal/process/task_queues:104:5)15130 at /build/source/SparkyFitnessServer/tests/preferenceChartScaleMode.test.ts:55:515131 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:2783:20 {15132 status: 40015133}151341513515136 ❯ tests/alcoholNeverAddsCalories.test.ts [queued]15137 ❯ tests/announcementService.test.ts 0/315138 ❯ tests/bmrService.test.ts [queued]15139 ❯ tests/calorieCalculations.test.ts [queued]15140 ❯ tests/chatbotToolsCaching.test.ts [queued]15141 ❯ tests/chatbotToolsMeta.test.ts [queued]15142 ❯ tests/exerciseEntriesApiSchemas.test.ts 41/4515143 ❯ tests/exerciseEntryGarminCleanup.test.ts [queued]15144 ❯ tests/findFoodByBarcode.test.ts [queued]15145 ❯ tests/foodEntrySelectedCopySchema.test.ts [queued]15146 ❯ tests/foodEntryWholeCopySchema.test.ts [queued]15147 ❯ tests/foodFavoritesQuery.test.ts [queued]15148 ❯ tests/foodFavoritesService.test.ts [queued]15149 ❯ tests/foodUtilsNutritionScale.test.ts [queued]15150 ❯ tests/mealSearch.test.ts [queued]15151 ❯ tests/measurementService.checkInDelete.test.ts [queued]15152 ❯ tests/moodTags.test.ts 1/515153 ❯ tests/ouraService.test.ts 2/715154 ❯ tests/preferenceSafetyFloor.test.ts [queued]15155 ❯ tests/reportRepository.getExerciseEntries.test.ts [queued]15156 ❯ tests/resolveTemplateStartDay.test.ts [queued]15157 ❯ tests/usdaAlcohol.test.ts [queued]15158 ❯ tests/usdaService.test.ts 0/21515915160 Test Files 404 passed | 7 skipped (434)15161 Tests 5157 passed | 310 skipped (5511)15162 Start at 11:46:0715163 Duration 13.84s15164 ✓ tests/preferenceChartScaleMode.test.ts (6 tests) 31ms15165 ✓ tests/exerciseActiveCalories.test.ts (2 tests) 7ms1516615167 ❯ tests/alcoholNeverAddsCalories.test.ts [queued]15168 ❯ tests/announcementService.test.ts 0/315169 ❯ tests/bmrService.test.ts [queued]15170 ❯ tests/calorieCalculations.test.ts [queued]15171 ❯ tests/chatbotToolsCaching.test.ts [queued]15172 ❯ tests/chatbotToolsMeta.test.ts [queued]15173 ❯ tests/exerciseEntriesApiSchemas.test.ts 41/4515174 ❯ tests/exerciseEntryGarminCleanup.test.ts [queued]15175 ❯ tests/findFoodByBarcode.test.ts [queued]15176 ❯ tests/foodEntrySelectedCopySchema.test.ts [queued]15177 ❯ tests/foodEntryWholeCopySchema.test.ts [queued]15178 ❯ tests/foodFavoritesQuery.test.ts [queued]15179 ❯ tests/foodFavoritesService.test.ts [queued]15180 ❯ tests/foodUtilsNutritionScale.test.ts [queued]15181 ❯ tests/mealSearch.test.ts [queued]15182 ❯ tests/measurementService.checkInDelete.test.ts [queued]15183 ❯ tests/moodTags.test.ts 1/515184 ❯ tests/ouraService.test.ts 2/715185 ❯ tests/preferenceSafetyFloor.test.ts [queued]15186 ❯ tests/reportRepository.getExerciseEntries.test.ts [queued]15187 ❯ tests/resolveTemplateStartDay.test.ts [queued]15188 ❯ tests/usdaAlcohol.test.ts [queued]15189 ❯ tests/usdaService.test.ts 0/21519015191 Test Files 404 passed | 7 skipped (434)15192 Tests 5157 passed | 310 skipped (5511)15193 Start at 11:46:0715194 Duration 13.84s15195 ✓ tests/moodTags.test.ts (5 tests) 6ms15196 ✓ tests/usdaService.test.ts (2 tests) 35ms1519715198 ❯ tests/alcoholNeverAddsCalories.test.ts [queued]15199 ❯ tests/bmrService.test.ts [queued]15200 ❯ tests/calorieCalculations.test.ts [queued]15201 ❯ tests/chatbotToolsCaching.test.ts [queued]15202 ❯ tests/exerciseEntriesApiSchemas.test.ts 41/4515203 ❯ tests/findFoodByBarcode.test.ts [queued]15204 ❯ tests/foodEntrySelectedCopySchema.test.ts [queued]15205 ❯ tests/foodEntryWholeCopySchema.test.ts 0/715206 ❯ tests/foodUtilsNutritionScale.test.ts [queued]15207 ❯ tests/mealSearch.test.ts [queued]15208 ❯ tests/ouraService.test.ts 2/715209 ❯ tests/preferenceSafetyFloor.test.ts 0/715210 ❯ tests/usdaAlcohol.test.ts [queued]1521115212 Test Files 414 passed | 7 skipped (434)15213 Tests 5184 passed | 310 skipped (5543)15214 Start at 11:46:0715215 Duration 13.94s15216stderr | tests/announcementService.test.ts > announcementService > should return local fallback announcement when offline or fetching15217[2026-09-30T11:46:21.744Z] [WARN] [ANNOUNCEMENT] Axios fetch failed, trying direct HTTPS fallback: AxiosError: getaddrinfo EAI_AGAIN raw.githubusercontent.com15218 at AxiosError.from (file:///build/source/node_modules/.pnpm/axios@1.20.0/node_modules/axios/lib/core/AxiosError.js:108:24)15219 at RedirectableRequest.handleRequestError (file:///build/source/node_modules/.pnpm/axios@1.20.0/node_modules/axios/lib/adapters/http.js:1340:27)15220 at RedirectableRequest.emit (node:events:526:24)15221 at ClientRequest.eventHandlers.<computed> (/build/source/node_modules/.pnpm/follow-redirects@1.16.0/node_modules/follow-redirects/index.js:56:24)15222 at ClientRequest.emit (node:events:514:28)15223 at emitErrorEvent (node:_http_client:114:11)15224 at TLSSocket.socketErrorListener (node:_http_client:766:5)15225 at TLSSocket.emit (node:events:526:24)15226 at emitErrorNT (node:internal/streams/destroy:170:8)15227 at emitErrorCloseNT (node:internal/streams/destroy:129:3)15228 at Axios.request (file:///build/source/node_modules/.pnpm/axios@1.20.0/node_modules/axios/lib/core/Axios.js:48:43)15229 at processTicksAndRejections (node:internal/process/task_queues:104:5)15230 at Object.getLatestAnnouncement (/build/source/SparkyFitnessServer/services/announcementService.ts:172:17)15231 at /build/source/SparkyFitnessServer/tests/announcementService.test.ts:47:2015232 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:2783:20 {15233 isAxiosError: true,15234 code: 'EAI_AGAIN',15235 config: [Object: null prototype] {15236 transitional: {15237 silentJSONParsing: true,15238 forcedJSONParsing: true,15239 clarifyTimeoutError: false,15240 legacyInterceptorReqResOrdering: true,15241 advertiseZstdAcceptEncoding: false,15242 validateStatusUndefinedResolves: true15243 },15244 adapter: [ 'xhr', 'http', 'fetch' ],15245 transformRequest: [ [Function: transformRequest] ],15246 transformResponse: [ [Function: transformResponse] ],15247 timeout: 5000,15248 xsrfCookieName: 'XSRF-TOKEN',15249 xsrfHeaderName: 'X-XSRF-TOKEN',15250 maxContentLength: -1,15251 maxBodyLength: -1,15252 env: { FormData: [Function], Blob: [class Blob] },15253 validateStatus: [Function: validateStatus],15254 headers: Object [AxiosHeaders] {15255 Accept: 'application/json, text/plain, */*',15256 'Content-Type': undefined,15257 'User-Agent': 'SparkyFitness-App',15258 'Accept-Encoding': 'gzip, compress, deflate, br'15259 },15260 method: 'get',15261 url: 'https://raw.githubusercontent.com/CodeWithCJ/SparkyFitness/main/announcement.md',15262 allowAbsoluteUrls: true,15263 data: undefined15264 },15265 request: <ref *1> Writable {15266 _events: {15267 close: undefined,15268 error: [Function: handleRequestError],15269 prefinish: undefined,15270 finish: undefined,15271 drain: undefined,15272 response: [Function: handleResponse],15273 socket: [Array],15274 timeout: undefined,15275 abort: undefined15276 },15277 _writableState: WritableState {15278 highWaterMark: 65536,15279 length: 0,15280 corked: 0,15281 onwrite: [Function (anonymous)],15282 writelen: 0,15283 bufferedIndex: 0,15284 pendingcb: 0,15285 Symbol(kState): 17581054,15286 Symbol(kBufferedValue): null,15287 Symbol(kErroredValue): [Error]15288 },15289 _maxListeners: undefined,15290 _options: {15291 maxRedirects: 21,15292 maxBodyLength: Infinity,15293 protocol: 'https:',15294 path: '/CodeWithCJ/SparkyFitness/main/announcement.md',15295 method: 'GET',15296 headers: [Object: null prototype],15297 agents: [Object],15298 auth: undefined,15299 family: undefined,15300 beforeRedirect: [Function: dispatchBeforeRedirect],15301 beforeRedirects: [Object: null prototype],15302 http2Options: undefined,15303 createConnection: undefined,15304 hostname: 'raw.githubusercontent.com',15305 port: '',15306 agent: undefined,15307 sensitiveHeaders: [],15308 insecureHTTPParser: false,15309 nativeProtocols: [Object],15310 pathname: '/CodeWithCJ/SparkyFitness/main/announcement.md'15311 },15312 _ended: true,15313 _ending: true,15314 _redirectCount: 0,15315 _redirects: [],15316 _requestBodyLength: 0,15317 _requestBodyBuffers: [],15318 _eventsCount: 3,15319 _onNativeResponse: [Function (anonymous)],15320 _headerFilter: /^(?:Authorization|Proxy-Authorization|Cookie)$/i,15321 _currentRequest: ClientRequest {15322 _events: [Object: null prototype],15323 _eventsCount: 2,15324 _maxListeners: undefined,15325 outputData: [],15326 outputSize: 0,15327 writable: true,15328 destroyed: true,15329 _last: true,15330 chunkedEncoding: false,15331 shouldKeepAlive: true,15332 maxRequestsOnConnectionReached: false,15333 _defaultKeepAlive: true,15334 useChunkedEncodingByDefault: false,15335 sendDate: false,15336 _removedConnection: false,15337 _removedContLen: false,15338 _removedTE: false,15339 strictContentLength: false,15340 _contentLength: 0,15341 _hasBody: true,15342 _trailer: '',15343 finished: true,15344 _headerSent: true,15345 _closed: false,15346 _header: 'GET /CodeWithCJ/SparkyFitness/main/announcement.md HTTP/1.1\r\n' +15347 'Accept: application/json, text/plain, */*\r\n' +15348 'User-Agent: SparkyFitness-App\r\n' +15349 'Accept-Encoding: gzip, compress, deflate, br\r\n' +15350 'Host: raw.githubusercontent.com\r\n' +15351 'Connection: keep-alive\r\n' +15352 '\r\n',15353 _keepAliveTimeout: 0,15354 _onPendingData: [Function: nop],15355 agent: [Agent],15356 socketPath: undefined,15357 method: 'GET',15358 maxHeaderSize: undefined,15359 insecureHTTPParser: false,15360 httpValidation: undefined,15361 joinDuplicateHeaders: undefined,15362 _ended: false,15363 res: null,15364 aborted: false,15365 timeoutCb: [Function: emitRequestTimeout],15366 upgradeOrConnect: false,15367 parser: null,15368 maxHeadersCount: null,15369 reusedSocket: false,15370 host: 'raw.githubusercontent.com',15371 protocol: 'https:',15372 _redirectable: [Circular *1],15373 Symbol(shapeMode): false,15374 Symbol(kCapture): false,15375 Symbol(kBytesWritten): 0,15376 Symbol(kNeedDrain): false,15377 Symbol(corked): 0,15378 Symbol(kChunkedBuffer): [],15379 Symbol(kChunkedLength): 0,15380 Symbol(kSocket): [TLSSocket],15381 Symbol(kOutHeaders): [Object: null prototype],15382 Symbol(errored): null,15383 Symbol(kWritableFinished): false,15384 Symbol(kEndCallbacks): null,15385 Symbol(kFlushError): null,15386 Symbol(kHighWaterMark): 65536,15387 Symbol(kRejectNonStandardBodyWrites): false,15388 Symbol(kPath): '/CodeWithCJ/SparkyFitness/main/announcement.md',15389 Symbol(kProxyRewrittenToAbsolute): false,15390 Symbol(kAuthority): 'raw.githubusercontent.com',15391 Symbol(kUniqueHeaders): null,15392 Symbol(kError): [Error]15393 },15394 _currentUrl: 'https://raw.githubusercontent.com/CodeWithCJ/SparkyFitness/main/announcement.md',15395 _timeout: null,15396 Symbol(shapeMode): true,15397 Symbol(kCapture): false15398 },15399 [cause]: Error: getaddrinfo EAI_AGAIN raw.githubusercontent.com15400 at GetAddrInfoReqWrap.onlookupall [as oncomplete] (node:dns:122:26) {15401 errno: -3001,15402 code: 'EAI_AGAIN',15403 syscall: 'getaddrinfo',15404 hostname: 'raw.githubusercontent.com'15405 }15406}154071540815409 ❯ tests/alcoholNeverAddsCalories.test.ts [queued]15410 ❯ tests/bmrService.test.ts [queued]15411 ❯ tests/calorieCalculations.test.ts [queued]15412 ❯ tests/chatbotToolsCaching.test.ts [queued]15413 ❯ tests/exerciseEntriesApiSchemas.test.ts 41/4515414 ❯ tests/findFoodByBarcode.test.ts [queued]15415 ❯ tests/foodEntrySelectedCopySchema.test.ts [queued]15416 ❯ tests/foodEntryWholeCopySchema.test.ts 0/715417 ❯ tests/foodUtilsNutritionScale.test.ts [queued]15418 ❯ tests/mealSearch.test.ts [queued]15419 ❯ tests/ouraService.test.ts 2/715420 ❯ tests/preferenceSafetyFloor.test.ts 0/715421 ❯ tests/usdaAlcohol.test.ts [queued]1542215423 Test Files 414 passed | 7 skipped (434)15424 Tests 5184 passed | 310 skipped (5543)15425 Start at 11:46:0715426 Duration 13.94s15427stdout | tests/announcementService.test.ts > announcementService > should return local fallback announcement when offline or fetching15428[2026-09-30T11:46:21.751Z] [INFO] [ANNOUNCEMENT] GitHub fetch skipped/failed, using local announcement.md fallback154291543015431 ❯ tests/alcoholNeverAddsCalories.test.ts [queued]15432 ❯ tests/bmrService.test.ts [queued]15433 ❯ tests/calorieCalculations.test.ts [queued]15434 ❯ tests/chatbotToolsCaching.test.ts [queued]15435 ❯ tests/exerciseEntriesApiSchemas.test.ts 41/4515436 ❯ tests/findFoodByBarcode.test.ts [queued]15437 ❯ tests/foodEntrySelectedCopySchema.test.ts [queued]15438 ❯ tests/foodEntryWholeCopySchema.test.ts 0/715439 ❯ tests/foodUtilsNutritionScale.test.ts [queued]15440 ❯ tests/mealSearch.test.ts [queued]15441 ❯ tests/ouraService.test.ts 2/715442 ❯ tests/preferenceSafetyFloor.test.ts 0/715443 ❯ tests/usdaAlcohol.test.ts [queued]1544415445 Test Files 414 passed | 7 skipped (434)15446 Tests 5184 passed | 310 skipped (5543)15447 Start at 11:46:0715448 Duration 13.94s15449stderr | tests/announcementService.test.ts > announcementService > should return local fallback announcement when offline or fetching15450[2026-09-30T11:46:21.751Z] [WARN] [ANNOUNCEMENT] Direct fetch failed: Error: getaddrinfo EAI_AGAIN raw.githubusercontent.com15451 at GetAddrInfoReqWrap.onlookupall [as oncomplete] (node:dns:122:26) {15452 errno: -3001,15453 code: 'EAI_AGAIN',15454 syscall: 'getaddrinfo',15455 hostname: 'raw.githubusercontent.com'15456}154571545815459 ❯ tests/alcoholNeverAddsCalories.test.ts [queued]15460 ❯ tests/bmrService.test.ts [queued]15461 ❯ tests/calorieCalculations.test.ts [queued]15462 ❯ tests/chatbotToolsCaching.test.ts [queued]15463 ❯ tests/exerciseEntriesApiSchemas.test.ts 41/4515464 ❯ tests/findFoodByBarcode.test.ts [queued]15465 ❯ tests/foodEntrySelectedCopySchema.test.ts [queued]15466 ❯ tests/foodEntryWholeCopySchema.test.ts 0/715467 ❯ tests/foodUtilsNutritionScale.test.ts [queued]15468 ❯ tests/mealSearch.test.ts [queued]15469 ❯ tests/ouraService.test.ts 2/715470 ❯ tests/preferenceSafetyFloor.test.ts 0/715471 ❯ tests/usdaAlcohol.test.ts [queued]1547215473 Test Files 414 passed | 7 skipped (434)15474 Tests 5184 passed | 310 skipped (5543)15475 Start at 11:46:0715476 Duration 13.94s15477 ✓ tests/announcementService.test.ts (3 tests) 38ms15478 ✓ tests/foodFavoritesQuery.test.ts (2 tests) 3ms15479 ✓ tests/exerciseEntryGarminCleanup.test.ts (1 test) 3ms15480 ✓ tests/resolveTemplateStartDay.test.ts (4 tests) 20ms15481 ✓ tests/reportRepository.getExerciseEntries.test.ts (1 test) 4ms15482 ✓ tests/foodFavoritesService.test.ts (3 tests) 6ms15483 ✓ tests/chatbotToolsMeta.test.ts (5 tests) 7ms1548415485 ❯ tests/alcoholNeverAddsCalories.test.ts [queued]15486 ❯ tests/bmrService.test.ts [queued]15487 ❯ tests/calorieCalculations.test.ts [queued]15488 ❯ tests/chatbotToolsCaching.test.ts [queued]15489 ❯ tests/exerciseEntriesApiSchemas.test.ts 41/4515490 ❯ tests/findFoodByBarcode.test.ts [queued]15491 ❯ tests/foodEntrySelectedCopySchema.test.ts [queued]15492 ❯ tests/foodEntryWholeCopySchema.test.ts 0/715493 ❯ tests/foodUtilsNutritionScale.test.ts [queued]15494 ❯ tests/mealSearch.test.ts [queued]15495 ❯ tests/ouraService.test.ts 2/715496 ❯ tests/preferenceSafetyFloor.test.ts 0/715497 ❯ tests/usdaAlcohol.test.ts [queued]1549815499 Test Files 414 passed | 7 skipped (434)15500 Tests 5184 passed | 310 skipped (5543)15501 Start at 11:46:0715502 Duration 13.94s15503stderr | tests/measurementService.checkInDelete.test.ts > Measurement Service - Check-In Delete > deleteCheckInMeasurements > throws not-found when the row does not exist or is not owned15504[2026-09-30T11:46:21.831Z] [ERROR] Error deleting check-in measurements non-existent-entry by test-user-id: Error: Check-in measurement not found.15505 at Object.deleteCheckInMeasurements (/build/source/SparkyFitnessServer/services/measurementService.ts:1147:13)15506 at processTicksAndRejections (node:internal/process/task_queues:104:5)155071550815509 ❯ tests/alcoholNeverAddsCalories.test.ts [queued]15510 ❯ tests/bmrService.test.ts [queued]15511 ❯ tests/calorieCalculations.test.ts [queued]15512 ❯ tests/chatbotToolsCaching.test.ts [queued]15513 ❯ tests/exerciseEntriesApiSchemas.test.ts 41/4515514 ❯ tests/findFoodByBarcode.test.ts [queued]15515 ❯ tests/foodEntrySelectedCopySchema.test.ts [queued]15516 ❯ tests/foodEntryWholeCopySchema.test.ts 0/715517 ❯ tests/foodUtilsNutritionScale.test.ts [queued]15518 ❯ tests/mealSearch.test.ts [queued]15519 ❯ tests/ouraService.test.ts 2/715520 ❯ tests/preferenceSafetyFloor.test.ts 0/715521 ❯ tests/usdaAlcohol.test.ts [queued]1552215523 Test Files 414 passed | 7 skipped (434)15524 Tests 5184 passed | 310 skipped (5543)15525 Start at 11:46:0715526 Duration 13.94s15527 ✓ tests/measurementService.checkInDelete.test.ts (2 tests) 9ms1552815529 ❯ tests/alcoholNeverAddsCalories.test.ts [queued]15530 ❯ tests/bmrService.test.ts [queued]15531 ❯ tests/calorieCalculations.test.ts [queued]15532 ❯ tests/chatbotToolsCaching.test.ts [queued]15533 ❯ tests/exerciseEntriesApiSchemas.test.ts 41/4515534 ❯ tests/findFoodByBarcode.test.ts [queued]15535 ❯ tests/foodEntrySelectedCopySchema.test.ts [queued]15536 ❯ tests/foodEntryWholeCopySchema.test.ts 0/715537 ❯ tests/foodUtilsNutritionScale.test.ts [queued]15538 ❯ tests/mealSearch.test.ts [queued]15539 ❯ tests/ouraService.test.ts 2/715540 ❯ tests/preferenceSafetyFloor.test.ts 0/715541 ❯ tests/usdaAlcohol.test.ts [queued]1554215543 Test Files 414 passed | 7 skipped (434)15544 Tests 5184 passed | 310 skipped (5543)15545 Start at 11:46:0715546 Duration 13.94s15547stderr | tests/preferenceSafetyFloor.test.ts > calorie safety floor preference validation > rejects an unknown mode15548[2026-09-30T11:46:21.842Z] [ERROR] Error updating preferences for user user-1 by user-1: Error: Invalid calorie_safety_floor_mode: 'sometimes'. Must be one of: standard, custom, disabled.15549 at validateCalorieSafetyFloor (/build/source/SparkyFitnessServer/services/preferenceService.ts:118:7)15550 at Object.updateUserPreferences (/build/source/SparkyFitnessServer/services/preferenceService.ts:181:11)15551 at processTicksAndRejections (node:internal/process/task_queues:104:5)15552 at /build/source/SparkyFitnessServer/tests/preferenceSafetyFloor.test.ts:28:515553 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:2783:20 {15554 status: 40015555}1555615557stderr | tests/preferenceSafetyFloor.test.ts > calorie safety floor preference validation > rejects invalid custom floor value 79915558[2026-09-30T11:46:21.847Z] [ERROR] Error updating preferences for user user-1 by user-1: Error: Invalid calorie_safety_floor_value: '799'. Must be an integer between 800 and 5000.15559 at validateCalorieSafetyFloor (/build/source/SparkyFitnessServer/services/preferenceService.ts:133:9)15560 at Object.updateUserPreferences (/build/source/SparkyFitnessServer/services/preferenceService.ts:181:11)15561 at processTicksAndRejections (node:internal/process/task_queues:104:5)15562 at /build/source/SparkyFitnessServer/tests/preferenceSafetyFloor.test.ts:38:715563 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:2783:20 {15564 status: 40015565}1556615567stderr | tests/preferenceSafetyFloor.test.ts > calorie safety floor preference validation > rejects invalid custom floor value 500115568[2026-09-30T11:46:21.848Z] [ERROR] Error updating preferences for user user-1 by user-1: Error: Invalid calorie_safety_floor_value: '5001'. Must be an integer between 800 and 5000.15569 at validateCalorieSafetyFloor (/build/source/SparkyFitnessServer/services/preferenceService.ts:133:9)15570 at Object.updateUserPreferences (/build/source/SparkyFitnessServer/services/preferenceService.ts:181:11)15571 at processTicksAndRejections (node:internal/process/task_queues:104:5)15572 at /build/source/SparkyFitnessServer/tests/preferenceSafetyFloor.test.ts:38:715573 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:2783:20 {15574 status: 40015575}1557615577stderr | tests/preferenceSafetyFloor.test.ts > calorie safety floor preference validation > rejects invalid custom floor value 1200.515578[2026-09-30T11:46:21.848Z] [ERROR] Error updating preferences for user user-1 by user-1: Error: Invalid calorie_safety_floor_value: '1200.5'. Must be an integer between 800 and 5000.15579 at validateCalorieSafetyFloor (/build/source/SparkyFitnessServer/services/preferenceService.ts:133:9)15580 at Object.updateUserPreferences (/build/source/SparkyFitnessServer/services/preferenceService.ts:181:11)15581 at processTicksAndRejections (node:internal/process/task_queues:104:5)15582 at /build/source/SparkyFitnessServer/tests/preferenceSafetyFloor.test.ts:38:715583 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:2783:20 {15584 status: 40015585}1558615587stderr | tests/preferenceSafetyFloor.test.ts > calorie safety floor preference validation > rejects non-number values instead of coercing them15588[2026-09-30T11:46:21.849Z] [ERROR] Error updating preferences for user user-1 by user-1: Error: Invalid calorie_safety_floor_value: 'true'. Must be an integer between 800 and 5000.15589 at validateCalorieSafetyFloor (/build/source/SparkyFitnessServer/services/preferenceService.ts:133:9)15590 at Object.updateUserPreferences (/build/source/SparkyFitnessServer/services/preferenceService.ts:181:11)15591 at processTicksAndRejections (node:internal/process/task_queues:104:5)15592 at /build/source/SparkyFitnessServer/tests/preferenceSafetyFloor.test.ts:47:515593 at file:///build/source/node_modules/.pnpm/vitest@5.0.0_@opentelemetry+api@1.9.1_@types+node@25.9.6_@vitest+coverage-v8@5.0.0_jsdo_b4998df7729176685ba14a81aaa25376/node_modules/vitest/dist/chunks/run.CQOUYP-x.js:2783:20 {15594 status: 40015595}155961559715598 ❯ tests/chatbotToolsCaching.test.ts [queued]15599 ❯ tests/exerciseEntriesApiSchemas.test.ts 42/4515600 ❯ tests/ouraService.test.ts 2/71560115602 Test Files 424 passed | 7 skipped (434)15603 Tests 5216 passed | 310 skipped (5560)15604 Start at 11:46:0715605 Duration 14.04s15606 ✓ tests/preferenceSafetyFloor.test.ts (7 tests) 24ms15607 ✓ tests/foodEntryWholeCopySchema.test.ts (7 tests) 6ms15608 ✓ tests/foodEntrySelectedCopySchema.test.ts (7 tests) 6ms15609 ✓ tests/calorieCalculations.test.ts (3 tests) 4ms15610 ✓ tests/usdaAlcohol.test.ts (1 test) 3ms15611 ✓ tests/alcoholNeverAddsCalories.test.ts (1 test) 2ms15612 ✓ tests/bmrService.test.ts (2 tests) 3ms15613 ✓ tests/mealSearch.test.ts (1 test) 5ms15614 ✓ tests/foodUtilsNutritionScale.test.ts (1 test) 3ms15615 ✓ tests/findFoodByBarcode.test.ts (1 test) 3ms1561615617 ❯ tests/chatbotToolsCaching.test.ts [queued]15618 ❯ tests/exerciseEntriesApiSchemas.test.ts 42/4515619 ❯ tests/ouraService.test.ts 2/71562015621 Test Files 424 passed | 7 skipped (434)15622 Tests 5216 passed | 310 skipped (5560)15623 Start at 11:46:0715624 Duration 14.04s1562515626 ❯ tests/chatbotToolsCaching.test.ts [queued]15627 ❯ tests/exerciseEntriesApiSchemas.test.ts 43/4515628 ❯ tests/ouraService.test.ts 2/71562915630 Test Files 424 passed | 7 skipped (434)15631 Tests 5217 passed | 310 skipped (5560)15632 Start at 11:46:0715633 Duration 14.24s1563415635 ❯ tests/chatbotToolsCaching.test.ts [queued]15636 ❯ tests/exerciseEntriesApiSchemas.test.ts 44/4515637 ❯ tests/ouraService.test.ts 2/71563815639 Test Files 424 passed | 7 skipped (434)15640 Tests 5218 passed | 310 skipped (5560)15641 Start at 11:46:0715642 Duration 14.34s1564315644 ❯ tests/chatbotToolsCaching.test.ts [queued]15645 ❯ tests/exerciseEntriesApiSchemas.test.ts 45/4515646 ❯ tests/ouraService.test.ts 2/71564715648 Test Files 424 passed | 7 skipped (434)15649 Tests 5219 passed | 310 skipped (5560)15650 Start at 11:46:0715651 Duration 14.74s15652 ✓ tests/exerciseEntriesApiSchemas.test.ts (45 tests) 13713ms15653 ✓ Exercise entry API schemas (45)15654 ✓ exercise snapshot modality (3)15655 ✓ accepts a null modality and a snapshot from a pre-modality server 374ms15656 ✓ superset_group (5)15657 ✓ accepts null and omitted superset_group on session exercises 420ms15658 ✓ requires superset_group on entry responses 783ms15659 ✓ set duration (integer seconds) (2)15660 ✓ accepts integer and null set durations 504ms15661 ✓ set RIR (reps in reserve) (2)15662 ✓ accepts 0-10 and null 814ms15663 ✓ rejects values outside 0-10 (numeric(3,1) column) 643ms15664 ✓ session location (2)15665 ✓ trims the location and stores blank as null 382ms15666 ✓ set distance (km) (3)15667 ✓ accepts fractional, null, and omitted set distances on requests 562ms15668 ✓ accepts distance on set responses and tolerates pre-distance servers omitting it 461ms15669 ✓ completed_at (3)15670 ✓ accepts ISO, null, and omitted completed_at on set requests 626ms15671 ✓ requires completed_at on set responses 650ms15672 ✓ is_pr (2)15673 ✓ accepts boolean and omitted is_pr on set requests 385ms15674 ✓ requires is_pr on set responses 461ms15675 ✓ accepts a UUID exerciseId filter and rejects non-UUID values 369ms1567615677 ❯ tests/chatbotToolsCaching.test.ts [queued]15678 ❯ tests/ouraService.test.ts 2/71567915680 Test Files 425 passed | 7 skipped (434)15681 Tests 5219 passed | 310 skipped (5560)15682 Start at 11:46:0715683 Duration 15.14s15684 ✓ tests/chatbotToolsCaching.test.ts (1 test) 7ms1568515686 ❯ tests/ouraService.test.ts 3/71568715688 Test Files 426 passed | 7 skipped (434)15689 Tests 5221 passed | 310 skipped (5561)15690 Start at 11:46:0715691 Duration 15.34s1569215693 ❯ tests/ouraService.test.ts 3/71569415695 Test Files 426 passed | 7 skipped (434)15696 Tests 5221 passed | 310 skipped (5561)15697 Start at 11:46:0715698 Duration 16.14s1569915700 ❯ tests/ouraService.test.ts 3/71570115702 Test Files 426 passed | 7 skipped (434)15703 Tests 5221 passed | 310 skipped (5561)15704 Start at 11:46:0715705 Duration 17.14s1570615707 ❯ tests/ouraService.test.ts 4/71570815709 Test Files 426 passed | 7 skipped (434)15710 Tests 5222 passed | 310 skipped (5561)15711 Start at 11:46:0715712 Duration 17.34s1571315714 ❯ tests/ouraService.test.ts 5/71571515716 Test Files 426 passed | 7 skipped (434)15717 Tests 5223 passed | 310 skipped (5561)15718 Start at 11:46:0715719 Duration 18.14s1572015721 ❯ tests/ouraService.test.ts 5/71572215723 Test Files 426 passed | 7 skipped (434)15724 Tests 5223 passed | 310 skipped (5561)15725 Start at 11:46:0715726 Duration 19.15s1572715728 ❯ tests/ouraService.test.ts 6/71572915730 Test Files 426 passed | 7 skipped (434)15731 Tests 5224 passed | 310 skipped (5561)15732 Start at 11:46:0715733 Duration 19.34s15734 ✓ tests/ouraService.test.ts (7 tests) 10052ms15735 ✓ syncOuraData sync windows (4)15736 ✓ manual sync uses a 7-day lookback window 2021ms15737 ✓ scheduled sync uses a yesterday-to-today window 2006ms15738 ✓ custom date range is passed through and heart rate uses UTC datetimes 2006ms15739 ✓ syncOuraData resilience and bookkeeping (3)15740 ✓ continues processing other datasets when one fetch fails 2011ms15741 ✓ updates last_sync_at after a successful sync 2003ms1574215743 Test Files 427 passed | 7 skipped (434)15744 Tests 5225 passed | 310 skipped (5561)15745 Start at 11:46:0715746 Duration 19.45s (transform 62%, import 28%, tests 10%, worker 1%)1574715748 Transform transforming modules took 349.21s · 62% of tracked time, re-done on every run15749 persist transforms across runs with fsModuleCache: true15750 learn more: https://vitest.dev/guide/improving-performance#caching-between-reruns1575115752checkPhase completed in 53 secondsfixupPhase
15753shrinking RPATHs of ELF executables and libraries in /nix/store/319b9mqwjx2g9vkf95w03qbhypgw5x6k-sparkyfitness-server-1.7.315754shrinking /nix/store/319b9mqwjx2g9vkf95w03qbhypgw5x6k-sparkyfitness-server-1.7.3/libexec/sparkyfitness/node_modules/.pnpm/lightningcss-linux-arm64-gnu@1.33.0/node_modules/lightningcss-linux-arm64-gnu/lightningcss.linux-arm64-gnu.node15755shrinking /nix/store/319b9mqwjx2g9vkf95w03qbhypgw5x6k-sparkyfitness-server-1.7.3/libexec/sparkyfitness/node_modules/.pnpm/lightningcss-linux-x64-gnu@1.33.0/node_modules/lightningcss-linux-x64-gnu/lightningcss.linux-x64-gnu.node15756shrinking /nix/store/319b9mqwjx2g9vkf95w03qbhypgw5x6k-sparkyfitness-server-1.7.3/libexec/sparkyfitness/node_modules/.pnpm/@rolldown+binding-linux-x64-gnu@1.2.8/node_modules/@rolldown/binding-linux-x64-gnu/rolldown-binding.linux-x64-gnu.node15757shrinking /nix/store/319b9mqwjx2g9vkf95w03qbhypgw5x6k-sparkyfitness-server-1.7.3/libexec/sparkyfitness/node_modules/.pnpm/@rolldown+binding-linux-arm64-gnu@1.2.8/node_modules/@rolldown/binding-linux-arm64-gnu/rolldown-binding.linux-arm64-gnu.node15758shrinking /nix/store/319b9mqwjx2g9vkf95w03qbhypgw5x6k-sparkyfitness-server-1.7.3/libexec/sparkyfitness/node_modules/.pnpm/@esbuild+linux-arm64@0.28.1/node_modules/@esbuild/linux-arm64/bin/esbuild15759patchelf: cannot find section '.dynamic'. The input file is most likely statically linked15760shrinking /nix/store/319b9mqwjx2g9vkf95w03qbhypgw5x6k-sparkyfitness-server-1.7.3/libexec/sparkyfitness/node_modules/.pnpm/hermes-compiler@250829098.0.17/node_modules/hermes-compiler/hermesc/linux64-bin/hermesc15761patchelf: cannot find section '.dynamic'. The input file is most likely statically linked15762shrinking /nix/store/319b9mqwjx2g9vkf95w03qbhypgw5x6k-sparkyfitness-server-1.7.3/libexec/sparkyfitness/node_modules/.pnpm/@esbuild+linux-x64@0.28.1/node_modules/@esbuild/linux-x64/bin/esbuild15763patchelf: cannot find section '.dynamic'. The input file is most likely statically linked15764shrinking /nix/store/319b9mqwjx2g9vkf95w03qbhypgw5x6k-sparkyfitness-server-1.7.3/libexec/sparkyfitness/node_modules/.pnpm/fb-dotslash@0.5.8/node_modules/fb-dotslash/bin/linux-musl.x86_64/dotslash15765shrinking /nix/store/319b9mqwjx2g9vkf95w03qbhypgw5x6k-sparkyfitness-server-1.7.3/libexec/sparkyfitness/node_modules/.pnpm/fb-dotslash@0.5.8/node_modules/fb-dotslash/bin/linux-musl.aarch64/dotslash15766patchelf: cannot find section '.dynamic'. The input file is most likely statically linked15767checking for references to /build/ in /nix/store/319b9mqwjx2g9vkf95w03qbhypgw5x6k-sparkyfitness-server-1.7.3...15768patchelf: cannot find section '.dynamic'. The input file is most likely statically linked15769patchelf: cannot find section '.dynamic'. The input file is most likely statically linked15770patchelf: cannot find section '.dynamic'. The input file is most likely statically linked15771patchelf: cannot find section '.dynamic'. The input file is most likely statically linked15772patching script interpreter paths in /nix/store/319b9mqwjx2g9vkf95w03qbhypgw5x6k-sparkyfitness-server-1.7.315773/nix/store/319b9mqwjx2g9vkf95w03qbhypgw5x6k-sparkyfitness-server-1.7.3/libexec/sparkyfitness/shared/node_modules/.bin/ts-to-zod: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"15774/nix/store/319b9mqwjx2g9vkf95w03qbhypgw5x6k-sparkyfitness-server-1.7.3/libexec/sparkyfitness/shared/node_modules/.bin/tsserver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"15775/nix/store/319b9mqwjx2g9vkf95w03qbhypgw5x6k-sparkyfitness-server-1.7.3/libexec/sparkyfitness/shared/node_modules/.bin/tsc: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"15776/nix/store/319b9mqwjx2g9vkf95w03qbhypgw5x6k-sparkyfitness-server-1.7.3/libexec/sparkyfitness/SparkyFitnessServer/node_modules/.bin/nodemon: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"15777/nix/store/319b9mqwjx2g9vkf95w03qbhypgw5x6k-sparkyfitness-server-1.7.3/libexec/sparkyfitness/SparkyFitnessServer/node_modules/.bin/eslint: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"15778/nix/store/319b9mqwjx2g9vkf95w03qbhypgw5x6k-sparkyfitness-server-1.7.3/libexec/sparkyfitness/SparkyFitnessServer/node_modules/.bin/tsserver: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"15779/nix/store/319b9mqwjx2g9vkf95w03qbhypgw5x6k-sparkyfitness-server-1.7.3/libexec/sparkyfitness/SparkyFitnessServer/node_modules/.bin/tsc: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"15780/nix/store/319b9mqwjx2g9vkf95w03qbhypgw5x6k-sparkyfitness-server-1.7.3/libexec/sparkyfitness/SparkyFitnessServer/node_modules/.bin/vitest: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"15781/nix/store/319b9mqwjx2g9vkf95w03qbhypgw5x6k-sparkyfitness-server-1.7.3/libexec/sparkyfitness/SparkyFitnessServer/node_modules/.bin/bcrypt: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"15782/nix/store/319b9mqwjx2g9vkf95w03qbhypgw5x6k-sparkyfitness-server-1.7.3/libexec/sparkyfitness/SparkyFitnessServer/node_modules/.bin/tsx: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"15783/nix/store/319b9mqwjx2g9vkf95w03qbhypgw5x6k-sparkyfitness-server-1.7.3/libexec/sparkyfitness/SparkyFitnessServer/node_modules/.bin/swagger-jsdoc: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"15784/nix/store/319b9mqwjx2g9vkf95w03qbhypgw5x6k-sparkyfitness-server-1.7.3/libexec/sparkyfitness/SparkyFitnessServer/node_modules/.bin/uuid: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"15785/nix/store/319b9mqwjx2g9vkf95w03qbhypgw5x6k-sparkyfitness-server-1.7.3/libexec/sparkyfitness/SparkyFitnessServer/node_modules/.bin/prettier: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"15786/nix/store/319b9mqwjx2g9vkf95w03qbhypgw5x6k-sparkyfitness-server-1.7.3/libexec/sparkyfitness/.husky/pre-commit: interpreter directive changed from "#!/bin/sh" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/sh"15787/nix/store/319b9mqwjx2g9vkf95w03qbhypgw5x6k-sparkyfitness-server-1.7.3/libexec/sparkyfitness/docker/docker-helper.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"15788/nix/store/319b9mqwjx2g9vkf95w03qbhypgw5x6k-sparkyfitness-server-1.7.3/libexec/sparkyfitness/nix/update-hashes.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"15789/nix/store/319b9mqwjx2g9vkf95w03qbhypgw5x6k-sparkyfitness-server-1.7.3/libexec/sparkyfitness/db_backup.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"15790/nix/store/319b9mqwjx2g9vkf95w03qbhypgw5x6k-sparkyfitness-server-1.7.3/libexec/sparkyfitness/start_garmin_microservice.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"15791/nix/store/319b9mqwjx2g9vkf95w03qbhypgw5x6k-sparkyfitness-server-1.7.3/libexec/sparkyfitness/scripts/reset-dev.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/svx59425zxp552p2b8gm11qj5r09b56i-bash-5.3p15/bin/bash"15792stripping (with command strip and flags -S -p) in /nix/store/319b9mqwjx2g9vkf95w03qbhypgw5x6k-sparkyfitness-server-1.7.3/libexec /nix/store/319b9mqwjx2g9vkf95w03qbhypgw5x6k-sparkyfitness-server-1.7.3/bin15793fixupPhase completed in 1 minutes 22 seconds