From cae118eb90a9bc2670bdbcda0a2211cf2d2c751d Mon Sep 17 00:00:00 2001 From: isamu Date: Fri, 31 Jul 2026 16:27:37 +0900 Subject: [PATCH] chore: add jscpd + knip (warn) Adds two report-only (warn mode) static-analysis workflows plus knip config, modeled on the merged pilot receptron/slashgpt-js#29. Neither gates CI. - .github/workflows/duplication-scan.yaml: jscpd 5.0.12 (SHA-pinned), SARIF to code scanning, no --threshold (never fails). continue-on-error on upload. - .github/workflows/dead-code-scan.yaml: knip report to job summary, forced exit 0. - knip.jsonc: every rule warn/off; project src/**/*.{ts,vue}. - package.json: knip@^6 devDep + "knip" script; removed 3 confirmed-dead deps (vue-drawing-canvas, @types/uuid, @types/dotenv). - .gitignore: ignore jscpd report/ output. Co-Authored-By: Claude Opus 4.8 --- .github/workflows/dead-code-scan.yaml | 68 +++++ .github/workflows/duplication-scan.yaml | 66 ++++ .gitignore | 3 + knip.jsonc | 25 ++ package.json | 7 +- yarn.lock | 386 ++++++++++++++++++++++-- 6 files changed, 520 insertions(+), 35 deletions(-) create mode 100644 .github/workflows/dead-code-scan.yaml create mode 100644 .github/workflows/duplication-scan.yaml create mode 100644 knip.jsonc diff --git a/.github/workflows/dead-code-scan.yaml b/.github/workflows/dead-code-scan.yaml new file mode 100644 index 00000000..e871d457 --- /dev/null +++ b/.github/workflows/dead-code-scan.yaml @@ -0,0 +1,68 @@ +name: dead-code-scan + +# Unused-export / unused-file / unused-dependency detection (knip), reported to the PR job +# summary. The gap this fills: eslint's no-unused-vars only sees WITHIN a file, and the +# duplication scan only sees copy/paste — neither catches an export nobody imports, an +# orphaned file, or a dependency whose last import was removed. +# +# Report-only (warn mode): knip.jsonc sets every rule to "warn" or "off", so `knip` exits 0, +# and this job additionally forces `exit 0` so it can never gate CI regardless of future rule +# changes. Findings are for a human to judge; promote a rule to "error" in knip.jsonc (and drop +# the forced exit 0) if a class of finding becomes trustworthy enough to block. +# +# Config lives in knip.jsonc; run it locally with `yarn knip`. + +on: + pull_request: + branches: [main] + # Dead code can only change when an analyzed input changes. Keep in sync with knip.jsonc's + # project globs and tsconfig (module resolution). package.json and yarn.lock are included + # too: knip auto-detects entry points from package.json / index.html and resolves imports + # through the installed dependency graph. + paths: + - "**/*.ts" + - "**/*.vue" + - "**/tsconfig*.json" + - "knip.jsonc" + - "package.json" + - "yarn.lock" + - ".github/workflows/dead-code-scan.yaml" + workflow_dispatch: + +permissions: + contents: read + +jobs: + dead-code-scan: + name: Dead Code Scan (knip) + runs-on: ubuntu-latest + timeout-minutes: 10 + steps: + - uses: actions/checkout@v6 + with: + persist-credentials: false + + - uses: actions/setup-node@v6 + with: + node-version: 22 + + # knip resolves imports through the real dependency graph, so node_modules has to be + # installed. --frozen-lockfile keeps CI honest against yarn.lock. + - run: yarn install --frozen-lockfile --network-timeout 120000 + + # Capture knip's output and write it to the job summary EITHER WAY, then exit 0. A + # `{ ... } >> $GITHUB_STEP_SUMMARY` block ends with printf's status, so the trailing + # `exit 0` is what actually guarantees report-only. + - name: Run knip + run: | + set -uo pipefail + output=$(yarn --silent knip --reporter compact 2>&1) || true + { + printf '## Dead code scan (knip)\n\n' + printf 'Report-only (warn mode): every finding below is for a human to judge; this\n' + printf 'job never fails. See .github/workflows/dead-code-scan.yaml.\n\n' + printf '```\n' + printf '%s\n' "$output" + printf '```\n' + } >> "$GITHUB_STEP_SUMMARY" + exit 0 diff --git a/.github/workflows/duplication-scan.yaml b/.github/workflows/duplication-scan.yaml new file mode 100644 index 00000000..03c515a6 --- /dev/null +++ b/.github/workflows/duplication-scan.yaml @@ -0,0 +1,66 @@ +name: duplication-scan + +# Copy/paste duplication detection (jscpd), reported to GitHub code scanning. +# Report-only: no --threshold is set, so jscpd never fails the job. The findings +# surface as SARIF annotations for a human to judge, not as a gate. + +on: + pull_request: + branches: [main] + paths-ignore: + - "docs/**" + - "plans/**" + - "**/*.md" + push: + branches: [main] + +permissions: + contents: read + +jobs: + duplication-scan: + name: Duplication Scan (jscpd) + runs-on: ubuntu-latest + timeout-minutes: 10 + permissions: + contents: read + security-events: write # required to upload SARIF to code scanning + actions: read + steps: + - uses: actions/checkout@v6 + with: + persist-credentials: false + + - name: Install jscpd + env: + JSCPD_VERSION: 5.0.12 + # SHA256 of jscpd-linux-x64-gnu.tar.gz (jscpd ships no checksums.txt, so this is + # computed by hand). Update it together with JSCPD_VERSION on any bump. + JSCPD_SHA256: c1107547ee52bc83131d6e62d1fc9c156d194c593a4532876cdb1584b4e1dc3b + run: | + set -euo pipefail + ARCHIVE="jscpd-linux-x64-gnu.tar.gz" + curl -sSfL -o "$ARCHIVE" \ + "https://github.com/kucherenko/jscpd/releases/download/v${JSCPD_VERSION}/${ARCHIVE}" + echo "${JSCPD_SHA256} ${ARCHIVE}" | sha256sum -c - + sudo tar -xz -C /usr/local/bin -f "$ARCHIVE" jscpd + rm -f "$ARCHIVE" + jscpd --version + + - name: Run jscpd + run: | + set -euo pipefail + # dist/ is Vite/tsc build output (a duplicate of src by construction) and test/ + tests/ + # hold standalone runner scripts, so all are excluded to keep the scan on real source. + jscpd . \ + --format "typescript,vue" \ + --ignore "**/node_modules/**,**/dist/**,**/*.d.ts,**/test/**,**/tests/**" \ + --reporters console,sarif \ + --output report + + - name: Upload SARIF to Code Scanning + uses: github/codeql-action/upload-sarif@b7351df727350dca84cb9d725d57dcf5bc82ba26 # v3.37.1 + continue-on-error: true + with: + sarif_file: report/jscpd-report.sarif + category: jscpd diff --git a/.gitignore b/.gitignore index 41ad9b1e..77e5d8ce 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,6 @@ output logs benchmark/results *~*.tgz + +# jscpd duplication-scan output (see .github/workflows/duplication-scan.yaml) +report/ diff --git a/knip.jsonc b/knip.jsonc new file mode 100644 index 00000000..3772f022 --- /dev/null +++ b/knip.jsonc @@ -0,0 +1,25 @@ +{ + "$schema": "https://unpkg.com/knip@6/schema.json", + // Vite + Vue app. The entry is index.html -> src/main.ts; knip's built-in vite plugin + // auto-detects index.html as an entry, so it is not listed here (listing it triggers a + // "redundant entry" hint). project is the client source under analysis; the Express + // backend (server/**) and benchmark/** live outside src and are not analyzed here. + "project": ["src/**/*.{ts,vue}"], + "ignoreExportsUsedInFile": true, + "includeEntryExports": false, + "rules": { + // Warn mode: every rule is "warn" (reported, exit 0) or "off". Nothing gates CI here. + "files": "warn", + "dependencies": "warn", + "devDependencies": "warn", + "unlisted": "warn", + "exports": "warn", + "types": "warn", + "unresolved": "off", + "binaries": "off", + "nsExports": "off", + "nsTypes": "off", + "enumMembers": "off", + "duplicates": "off", + }, +} diff --git a/package.json b/package.json index a3b1de49..d9e26940 100644 --- a/package.json +++ b/package.json @@ -35,7 +35,8 @@ "benchmark:test": "tsx benchmark/src/test-runner.ts", "benchmark:check": "tsx benchmark/src/cli.ts check", "benchmark:list": "tsx benchmark/src/cli.ts list", - "benchmark:re-evaluate": "tsx benchmark/src/re-evaluate.ts" + "benchmark:re-evaluate": "tsx benchmark/src/re-evaluate.ts", + "knip": "knip" }, "dependencies": { "@anthropic-ai/sdk": "^0.115.0", @@ -81,7 +82,6 @@ "material-icons": "^1.13.14", "uuid": "^14.0.0", "vue": "^3.5.40", - "vue-drawing-canvas": "^1.0.14", "vue-router": "^5.2.0", "winston": "^3.19.0", "winston-daily-rotate-file": "^5.0.0", @@ -97,10 +97,8 @@ "@tailwindcss/postcss": "^4.3.3", "@tailwindcss/vite": "^4.3.3", "@types/cors": "^2.8.19", - "@types/dotenv": "^8.2.3", "@types/express": "^5.0.6", "@types/node": "^26.1.2", - "@types/uuid": "^11.0.0", "@vitejs/plugin-vue": "^6.0.8", "autoprefixer": "^10.5.4", "concurrently": "^10.0.4", @@ -109,6 +107,7 @@ "eslint-plugin-prettier": "^5.5.6", "eslint-plugin-sonarjs": "^4.2.0", "globals": "^17.8.0", + "knip": "^6", "postcss": "^8.5.25", "prettier": "^3.9.6", "tailwindcss": "^4.3.3", diff --git a/yarn.lock b/yarn.lock index b8c6119e..4989d791 100644 --- a/yarn.lock +++ b/yarn.lock @@ -182,6 +182,14 @@ enabled "2.0.x" kuler "^2.0.0" +"@emnapi/core@1.11.2": + version "1.11.2" + resolved "https://registry.yarnpkg.com/@emnapi/core/-/core-1.11.2.tgz#fab0a0f3c492d11f5a9ac9065d0d73955ee1c1c9" + integrity sha512-TC8MkTuZUtcTSiFeuC0ksCh9QIJ5+F21MvZ4Wn4ORfYaFJ/0dsiudv5tVkejgwZlwQ39jL9WWDe2lz8x0WglOA== + dependencies: + "@emnapi/wasi-threads" "1.2.2" + tslib "^2.4.0" + "@emnapi/core@2.0.0-alpha.3": version "2.0.0-alpha.3" resolved "https://registry.yarnpkg.com/@emnapi/core/-/core-2.0.0-alpha.3.tgz#049ace671f30274d6a4d161d3b771138b862f704" @@ -198,6 +206,13 @@ "@emnapi/wasi-threads" "1.2.3" tslib "^2.4.0" +"@emnapi/runtime@1.11.2": + version "1.11.2" + resolved "https://registry.yarnpkg.com/@emnapi/runtime/-/runtime-1.11.2.tgz#eb22f04d76febfdf4f87fdaff54c8a53f6bf0dbd" + integrity sha512-kyOl3X0DuTiT1h2ft8r2fYO8JYtU9a9Xis/zBSiGArNaagCOWx90N1k2wxp18czFDH+OgcWGb5ZP/XMt3dcyPA== + dependencies: + tslib "^2.4.0" + "@emnapi/runtime@2.0.0-alpha.3": version "2.0.0-alpha.3" resolved "https://registry.yarnpkg.com/@emnapi/runtime/-/runtime-2.0.0-alpha.3.tgz#aef04c35c9a83c23ab0f251f03095440edd7ad5f" @@ -212,6 +227,13 @@ dependencies: tslib "^2.4.0" +"@emnapi/wasi-threads@1.2.2": + version "1.2.2" + resolved "https://registry.yarnpkg.com/@emnapi/wasi-threads/-/wasi-threads-1.2.2.tgz#4c93becf5bfa3b13d1bbdcc06aee38321ad8139a" + integrity sha512-c95qOXkHdydNKhscBTebqEC1CVAZpyqOfVfBzQ1qgzyl3gfeldUjIggDbIZgDKsHLgnsM+igH7TJ/eAasaVuMA== + dependencies: + tslib "^2.4.0" + "@emnapi/wasi-threads@1.2.3", "@emnapi/wasi-threads@^1.2.2": version "1.2.3" resolved "https://registry.yarnpkg.com/@emnapi/wasi-threads/-/wasi-threads-1.2.3.tgz#c9bf72fd4be5b928aee894820e8d814ed73916e9" @@ -655,7 +677,7 @@ version "0.1.0" resolved "https://codeload.github.com/receptron/GUIChatPluginPiano/tar.gz/58cf06d5746474da9f2c2ff5fdef2db02fb5810f" dependencies: - gui-chat-protocol "^0.0.3" + gui-chat-protocol "^1.2.0" openai "^4.77.0" soundfont-player "^0.12.0" @@ -1009,7 +1031,7 @@ resolved "https://registry.yarnpkg.com/@mulmochat-plugin/ui-image/-/ui-image-0.4.1.tgz#8fd3b1c4ffe21e6bc22761ff48eac03306e0d345" integrity sha512-I3AqTIuQPsSMNxDON9UTxT2KO57HV6uUVotCIFskV0UqBMQrQ3FUu8J+qXRWDdjPyYaHoC8AJsi91TbNrOMwng== -"@napi-rs/wasm-runtime@^1.1.4", "@napi-rs/wasm-runtime@^1.2.0": +"@napi-rs/wasm-runtime@^1.1.4", "@napi-rs/wasm-runtime@^1.1.6", "@napi-rs/wasm-runtime@^1.2.0": version "1.2.1" resolved "https://registry.yarnpkg.com/@napi-rs/wasm-runtime/-/wasm-runtime-1.2.1.tgz#9657eaa103c1cedd9411012595faf8f476608f15" integrity sha512-KjZdi8Q1wh89gsVmghvbrMgWl6ZWmRmHV6wjB7/g4Zf0dyO+hH3neZUtuDNPO00qq5YE5RITVWvrIZKRaAmzGQ== @@ -1026,11 +1048,219 @@ resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.8.0.tgz#cee43d801fcef9644b11b8194857695acd5f815a" integrity sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A== +"@oxc-parser/binding-android-arm-eabi@0.140.0": + version "0.140.0" + resolved "https://registry.yarnpkg.com/@oxc-parser/binding-android-arm-eabi/-/binding-android-arm-eabi-0.140.0.tgz#1e263aca7aaf38e989000e50025b2b21834a8eda" + integrity sha512-ZfjDZ422mo7eo3b3VltqNsV9kmv1qt/sPEAMSl64iOSwhVfd0eIZ9LB79Mbs1xYXJnk7WSROwzBCKDIiVxPTvQ== + +"@oxc-parser/binding-android-arm64@0.140.0": + version "0.140.0" + resolved "https://registry.yarnpkg.com/@oxc-parser/binding-android-arm64/-/binding-android-arm64-0.140.0.tgz#d25051e94aa928163f36ad06616575d04a11f24b" + integrity sha512-Ia8jSvikUX6Sf+Ht+KOCUF/k1HpR0VlmqIYymubmWDebOEGtsyliHDR6JxsZ4IX3/c/GbrB1uh09aVGQv/LQmQ== + +"@oxc-parser/binding-darwin-arm64@0.140.0": + version "0.140.0" + resolved "https://registry.yarnpkg.com/@oxc-parser/binding-darwin-arm64/-/binding-darwin-arm64-0.140.0.tgz#b859c87a7f4a865b00197ab56d5c257d33ca89e7" + integrity sha512-G6VK0nK61pH0d0mBjUqSZbVxGqqO5uzeginLDQj+gOO6ObfJjXRwgkD/ol0w1INcnFeAb6YGGO7qc3ueGHaycQ== + +"@oxc-parser/binding-darwin-x64@0.140.0": + version "0.140.0" + resolved "https://registry.yarnpkg.com/@oxc-parser/binding-darwin-x64/-/binding-darwin-x64-0.140.0.tgz#81bc59ef5cdeebd34902626b9887aed12b6e32d0" + integrity sha512-HazBOuZzd2pO1C2uMmp8Gv7mhzMHqKSKDS1OZfcLEvpIcgA+48J92HEtNanVHDIzRD9PRPCV6aS6fkZIWOVl8Q== + +"@oxc-parser/binding-freebsd-x64@0.140.0": + version "0.140.0" + resolved "https://registry.yarnpkg.com/@oxc-parser/binding-freebsd-x64/-/binding-freebsd-x64-0.140.0.tgz#dd34a7927a9394a08ac374e04fc48dd5bc212036" + integrity sha512-9hSUU+HmTUyOe4JzMHxNGgLWNY7rrO+6ShicZwImNJacEAACDMIkuEQQkvXSL+WJN50jaNtLYJv8s4OcBdpyUQ== + +"@oxc-parser/binding-linux-arm-gnueabihf@0.140.0": + version "0.140.0" + resolved "https://registry.yarnpkg.com/@oxc-parser/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-0.140.0.tgz#4142cb0ce5ec8157208c112b9fd11718233d8bd2" + integrity sha512-RAEuQsYtS0KcDFqN0ABTjyyNlokS91JeuDuoW9tEbG0JTbRNXnpQUdbYc/16JoA6Z/2ALbNrE3KmxtqDiuIjCQ== + +"@oxc-parser/binding-linux-arm-musleabihf@0.140.0": + version "0.140.0" + resolved "https://registry.yarnpkg.com/@oxc-parser/binding-linux-arm-musleabihf/-/binding-linux-arm-musleabihf-0.140.0.tgz#90e0f998907f32ffbf0136fc29b5d1da1e6fb54a" + integrity sha512-c4CkHvPvqfojouredJ0w3e6+jiBq0SbFyhH61kr/zPb/7XsaYTNKQ54vmlSsopfdQbNDX40ZeK9Abs2Qet6wcw== + +"@oxc-parser/binding-linux-arm64-gnu@0.140.0": + version "0.140.0" + resolved "https://registry.yarnpkg.com/@oxc-parser/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-0.140.0.tgz#97ec2cb371693c1e9fc5eb660c48666ace786d82" + integrity sha512-yrjmLj8ixPB25yqvPGr28meGjb+keed7m1GqqY/0uqkhZIoT4t9zmfwUgFEtC33C7dtE+UQ7TU0IaVxf97SWJg== + +"@oxc-parser/binding-linux-arm64-musl@0.140.0": + version "0.140.0" + resolved "https://registry.yarnpkg.com/@oxc-parser/binding-linux-arm64-musl/-/binding-linux-arm64-musl-0.140.0.tgz#ebad7ee8c4094e51f4d138365b87a51160671bfd" + integrity sha512-ggGMQTN8Agwxp2WiLMpdY671dt0qTDJWiWlJeig3HnUwTnerRl0J2JdGVghWBeDcss2D9S2V2Js6dZHEiVabVA== + +"@oxc-parser/binding-linux-ppc64-gnu@0.140.0": + version "0.140.0" + resolved "https://registry.yarnpkg.com/@oxc-parser/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-0.140.0.tgz#fde39c4a1460fab7144d15025fb8c40e6e976668" + integrity sha512-IgTs8xYAFgAUGNmR65tIqjlJ8vKgrfXzC515e9goSdfMyKQV4aJpd2pUUudU4u51G64H0/DSEJEXKOraxm9ZCA== + +"@oxc-parser/binding-linux-riscv64-gnu@0.140.0": + version "0.140.0" + resolved "https://registry.yarnpkg.com/@oxc-parser/binding-linux-riscv64-gnu/-/binding-linux-riscv64-gnu-0.140.0.tgz#6990a42ddac6b81b0a00076e35028b514fbaf6ed" + integrity sha512-A1x+PMWZmSGaFVOx2YeNTFau8uD+QO14/vLP4GrcuvUPs3+nBkUOjy9Lus86ftHsDojjYMbvBelmKc3F7Rv08g== + +"@oxc-parser/binding-linux-riscv64-musl@0.140.0": + version "0.140.0" + resolved "https://registry.yarnpkg.com/@oxc-parser/binding-linux-riscv64-musl/-/binding-linux-riscv64-musl-0.140.0.tgz#fe9e6a5f6514ba8bb8c32bbbdb5d11165af64542" + integrity sha512-zBqpfRo2myWPrPo5xUjeZqlnPXPXsX8BcWtWff66/eGRQdbPjhzPgXa/F+AtxT2afUViPxbuDlwscMKzQ5tg+g== + +"@oxc-parser/binding-linux-s390x-gnu@0.140.0": + version "0.140.0" + resolved "https://registry.yarnpkg.com/@oxc-parser/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-0.140.0.tgz#9ec751995735f9452625fc18a1fdf6f430ea2eed" + integrity sha512-2M1DPm/8w9I//YzFlFC9qXw+r2tJFh5CYwRlYTq2vUJQS7qoQftEDeCZ8EnN7KHtvSiXvYj8mZI5pR7DpXmcEw== + +"@oxc-parser/binding-linux-x64-gnu@0.140.0": + version "0.140.0" + resolved "https://registry.yarnpkg.com/@oxc-parser/binding-linux-x64-gnu/-/binding-linux-x64-gnu-0.140.0.tgz#246c6fd05e75a9c81a9cb2c0e7f66c6e148c640f" + integrity sha512-8aRDbZ/U/jO8N7go1MO72jtbpb4uswV8d7vOkMvt/BPgZiyEYvl1VIWK4ESxZZhnJ4tqwVldgX7dNiP/eB1Jdg== + +"@oxc-parser/binding-linux-x64-musl@0.140.0": + version "0.140.0" + resolved "https://registry.yarnpkg.com/@oxc-parser/binding-linux-x64-musl/-/binding-linux-x64-musl-0.140.0.tgz#6a7861884ebf5236c163b323eda5e8223e6dddb3" + integrity sha512-xRqpeI8U2sQQS1W5BMWRyMTxtagkuLG2dEWruet5lFsWHTvBth11/TpSaJatHdqVVwHN0q3uuoS9zRsGinq8hg== + +"@oxc-parser/binding-openharmony-arm64@0.140.0": + version "0.140.0" + resolved "https://registry.yarnpkg.com/@oxc-parser/binding-openharmony-arm64/-/binding-openharmony-arm64-0.140.0.tgz#837520388be3cbcb4a5486f9e85598e0bcd1af22" + integrity sha512-GbGRe26MqAKciFRvXeHNQJ6VAHYs9R4miP89sEAncysM3n+f4lnyLWgsa9kklJNpfnxdq2yRoNYHFqwBckVimw== + +"@oxc-parser/binding-wasm32-wasi@0.140.0": + version "0.140.0" + resolved "https://registry.yarnpkg.com/@oxc-parser/binding-wasm32-wasi/-/binding-wasm32-wasi-0.140.0.tgz#49bd9ac61016154753f3adebf59b72aa3e754c72" + integrity sha512-vFiC1hqys+hkX1GnQkIoiTQJNiUm43Z0lO35ETKXTw0YtpW7+cN58YRRXFAQQ+TgpkIi3lrhcxdlnqz+Oi3ptQ== + dependencies: + "@emnapi/core" "1.11.2" + "@emnapi/runtime" "1.11.2" + "@napi-rs/wasm-runtime" "^1.1.6" + +"@oxc-parser/binding-win32-arm64-msvc@0.140.0": + version "0.140.0" + resolved "https://registry.yarnpkg.com/@oxc-parser/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-0.140.0.tgz#190b972b637c5a601644fff86561c59e658a4eed" + integrity sha512-fGSQldwEYKhM+H8uLt76Op8hh5+FYaR6lvvQ1Txw3Mhn86DyQXLcI0fi1EkFlTK7F+46OCk/j0AJMzZQm6g5Xg== + +"@oxc-parser/binding-win32-ia32-msvc@0.140.0": + version "0.140.0" + resolved "https://registry.yarnpkg.com/@oxc-parser/binding-win32-ia32-msvc/-/binding-win32-ia32-msvc-0.140.0.tgz#5d2438f810e646ab7e65b69b223ee00656cd6054" + integrity sha512-sDS2Bai+g3ZWYwfZqmosiSuFDBcVnZ3Ta6pszzsiJoLMqsJEWKcxXXbGa7b7yXr++W2lQNPb3ZRJ8czseqL7RA== + +"@oxc-parser/binding-win32-x64-msvc@0.140.0": + version "0.140.0" + resolved "https://registry.yarnpkg.com/@oxc-parser/binding-win32-x64-msvc/-/binding-win32-x64-msvc-0.140.0.tgz#fedda07f4cebf668073f8eb37b80031c5250c668" + integrity sha512-kHbE1zWyb5OQgJA6/5P4WjiuB01sYdQwtZnSSyE58FQEXDAMnyeeq4vj7KgN75i5SlBzOs8A5MrtlD3gOlDKqQ== + "@oxc-project/types@=0.142.0": version "0.142.0" resolved "https://registry.yarnpkg.com/@oxc-project/types/-/types-0.142.0.tgz#0b4bd7841ef3dd267a69184b97452cc0b313fb52" integrity sha512-7W+2q5AKQVU36fkaryontrHn3YDt1RyUYXatw9i5H8ocYe2sPKSFB6eS8WNPeRKiN1qAWWZUPm7gwFzJGrccqQ== +"@oxc-project/types@^0.140.0": + version "0.140.0" + resolved "https://registry.yarnpkg.com/@oxc-project/types/-/types-0.140.0.tgz#2acc1bd45ff24951059d01ce7552d26e1574c5ac" + integrity sha512-h5LUOzGArYemnW1NMz/DuuQhBi96J6JL2Bk8zE4kvqxB5Sg3jxmCiH4uyOWHDkiKSt5vWlG4FIwCR/DbstcNRQ== + +"@oxc-resolver/binding-android-arm-eabi@11.24.2": + version "11.24.2" + resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-android-arm-eabi/-/binding-android-arm-eabi-11.24.2.tgz#5db3f0dcd659e1de664fb0ae912420839348309b" + integrity sha512-y09e0L0SRI2OA2tUIrjBgoV3eH5hvUKXNkJqXmNo5V2WxIjyC7I7aJfRLMEVpA8yi95f90gFDvO0VMgrDw+vwA== + +"@oxc-resolver/binding-android-arm64@11.24.2": + version "11.24.2" + resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-android-arm64/-/binding-android-arm64-11.24.2.tgz#fec00a8bc89afa9a164bad79b23c14b8c86f95cf" + integrity sha512-cl4icWaZFnLdg8m6qtnh5rBMuGbxc/ptStFHLeCNwr+2cZjkjNwQu/jYRS0CHlnPecOJMpuS5M6/BH+0J/YkEg== + +"@oxc-resolver/binding-darwin-arm64@11.24.2": + version "11.24.2" + resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-darwin-arm64/-/binding-darwin-arm64-11.24.2.tgz#b5e6e2c2bed585cbfd67b6e41eea7fce2a3da5f8" + integrity sha512-At29QEMF6HajbQvgY8K6OXnHD1x9rad74xBEfmCB6ZqCGsdq75aK7tOYcTbOanMy8qdIBrfL3SMr3p/lfSlb9w== + +"@oxc-resolver/binding-darwin-x64@11.24.2": + version "11.24.2" + resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-darwin-x64/-/binding-darwin-x64-11.24.2.tgz#db759d6fadac262a7da21b1bfb712b0199c9cd18" + integrity sha512-A5Kqr1EUj4oIL5CF4WRssq/o5P0Y11cwoFouMRmQ7YnC/A8V93nv1nb7aSU8HwcgmXropjLNkVTl4MN87cu28Q== + +"@oxc-resolver/binding-freebsd-x64@11.24.2": + version "11.24.2" + resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-freebsd-x64/-/binding-freebsd-x64-11.24.2.tgz#7fe0ab0725284aee9b6b6c45b81f0facf895fc62" + integrity sha512-R5xkRBRRz7ceH/P5Jrc6G7FmdUdgpLYyESFAUDVTNQ9K0sGPxcp4ljiwEwEqsvNcQ4sYbMRrWcHHBCu7ksAJVw== + +"@oxc-resolver/binding-linux-arm-gnueabihf@11.24.2": + version "11.24.2" + resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-11.24.2.tgz#91a72b7987930c3acc5337237454ba0339f80333" + integrity sha512-k/RuYL4L/R58IBn3wT5ma3Wh4k62bp1eYCFRWCmMsasUOqL+H6sW0VGFadEzKWXFFlz+2uIMoeMk9ySSZJHgbg== + +"@oxc-resolver/binding-linux-arm-musleabihf@11.24.2": + version "11.24.2" + resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-linux-arm-musleabihf/-/binding-linux-arm-musleabihf-11.24.2.tgz#72d04ad7d2227fb3ac71aa7933794bfb88194b7b" + integrity sha512-bnHAak3ujYfH5pKk4NieFNbvYvernfoQDgwLddbZ3OtMYrem87/qjlA+u+aKG0oZcqSLGCful/6/CEA+aeAgaA== + +"@oxc-resolver/binding-linux-arm64-gnu@11.24.2": + version "11.24.2" + resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-11.24.2.tgz#b87faf59bde9ecff0b8288fe99a831eb7492f99d" + integrity sha512-vDT3KHgzYp47gmtNOqL2VNhCyl5Zv643eyxm//A68J8DeUGXrvD1pZFiaT4jSfe+RInfnn1R2yVHye4enx6RnA== + +"@oxc-resolver/binding-linux-arm64-musl@11.24.2": + version "11.24.2" + resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-linux-arm64-musl/-/binding-linux-arm64-musl-11.24.2.tgz#2da6551c561bf2f2bed34c312a99e18d184a9f07" + integrity sha512-+kMlQvbzfyEYtu5FcjE4p+ttBLpKW4d/AsAsuE69BxV6V4twZJeIQZFfD8gh/wqglY0MkPSezWXQH0jBV13MUw== + +"@oxc-resolver/binding-linux-ppc64-gnu@11.24.2": + version "11.24.2" + resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-11.24.2.tgz#fda4558cc94e43fefdfa4f9b96391c30ec137adb" + integrity sha512-shjfMhmZ3gq9fv/w7bi3PnZlgOPG+2QAOFf0BJF0EgBSIGZ6PMLN2zbGEblTUYB/NKVDRyYhE2ff3dJ1QqNPkA== + +"@oxc-resolver/binding-linux-riscv64-gnu@11.24.2": + version "11.24.2" + resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-linux-riscv64-gnu/-/binding-linux-riscv64-gnu-11.24.2.tgz#2fe243a5112d221021a8b2fccd7b36aa96adc946" + integrity sha512-zGelwFR5oRo+b69k8Lrzun86DyUHzfKN6cnjbR9l7Z7NIRznOE/2ZvPa1IUKqAL2PzAXOdwkfVqNvO1H2RlpAw== + +"@oxc-resolver/binding-linux-riscv64-musl@11.24.2": + version "11.24.2" + resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-linux-riscv64-musl/-/binding-linux-riscv64-musl-11.24.2.tgz#e95cb43856f7e9c4aa0afa438e043fdbf6c6d40d" + integrity sha512-qxZ1SWCXJY0eyhAlP6Lmo9F2Nrtx7EkYj9oCgL8apDPCwXwCEDA2U697bbT81JIc2IrVjxO4KX6WU2N+oN9Z4w== + +"@oxc-resolver/binding-linux-s390x-gnu@11.24.2": + version "11.24.2" + resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-11.24.2.tgz#8e3ca765e1af7ccab8a61adc96323810f9770535" + integrity sha512-sGCecF3cx2DFlH4t/z7ApnOnXqN48p5p5mlHDEnHTAukQa2P+qMVE4CwyWE9W+q/m3QJ7kKfGrIjax31f44oFQ== + +"@oxc-resolver/binding-linux-x64-gnu@11.24.2": + version "11.24.2" + resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-linux-x64-gnu/-/binding-linux-x64-gnu-11.24.2.tgz#a2b14c1efc3252e705038bc23b7225a7cb434df2" + integrity sha512-k/VlMMcSzMlahb3/fENM4rTlsJ0s3fFROA0KXPBmKggqmTSaE383sl8F3KCOXPLmVsYfW6hCitMhXCEtNeZxxg== + +"@oxc-resolver/binding-linux-x64-musl@11.24.2": + version "11.24.2" + resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-linux-x64-musl/-/binding-linux-x64-musl-11.24.2.tgz#d42f14a6a286b0a81871e2be6ee2eeb3d044afce" + integrity sha512-8hbnZyNi97b/8wapYaIF9+t9GmZKBW2vunaOc3h9HGJptH7b7XpvZqOTBSm/MpTjr7H497BlgOaSfLUdhmy2bw== + +"@oxc-resolver/binding-openharmony-arm64@11.24.2": + version "11.24.2" + resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-openharmony-arm64/-/binding-openharmony-arm64-11.24.2.tgz#1ce27bc037073b624c484e481ae61f4cc9b5cfbc" + integrity sha512-MvyGik3a6pVgZ0t/kWlbmFxFLmXQJwgLsY2eYFHLpy0wGwRbfzeIGgDwQ3kXqE30z+kSXennRkCrT7TUvkptNg== + +"@oxc-resolver/binding-wasm32-wasi@11.24.2": + version "11.24.2" + resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-wasm32-wasi/-/binding-wasm32-wasi-11.24.2.tgz#9c818fd9512eed502da1972de1f8c9528b4c9d27" + integrity sha512-vHcssMPwO08RTvj/c0iOBz90attxyG3wQJ0dTcyEQK43LRpcdLWZlV5feBhv6Isn6ahbQIzHbCgfa81+RiML0Q== + dependencies: + "@emnapi/core" "1.11.2" + "@emnapi/runtime" "1.11.2" + "@napi-rs/wasm-runtime" "^1.1.6" + +"@oxc-resolver/binding-win32-arm64-msvc@11.24.2": + version "11.24.2" + resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-11.24.2.tgz#0e2bd6869ef554ffd3016594951f1f44f5f02617" + integrity sha512-uokJqro2iBqkFvJdKQLP7d8/BUmFwESQFVmIJUQKj1Xn1a/LysJoe1vmeECLF5b3jsV8CAL5sEMJXX6SdK9Nhg== + +"@oxc-resolver/binding-win32-x64-msvc@11.24.2": + version "11.24.2" + resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-win32-x64-msvc/-/binding-win32-x64-msvc-11.24.2.tgz#d0649344fcd504dfaf7f3561a53617c38d98d789" + integrity sha512-UqGPmo56KDfLlfXFAFIrNflHT8tFxWGEivWg3Zeyp4Uy2NlKN1FGPr6/BxcLGG3+kZ6Wp14g5Uj+n71boqZfiw== + "@pixiv/three-vrm-core@3.5.5": version "3.5.5" resolved "https://registry.yarnpkg.com/@pixiv/three-vrm-core/-/three-vrm-core-3.5.5.tgz#0d0ea8a1582121d77f48a7e26c31d62f28b6aae5" @@ -1480,13 +1710,6 @@ dependencies: "@types/node" "*" -"@types/dotenv@^8.2.3": - version "8.2.3" - resolved "https://registry.yarnpkg.com/@types/dotenv/-/dotenv-8.2.3.tgz#c97b3c5b2e97ff3873793a000999e86cd66ff354" - integrity sha512-g2FXjlDX/cYuc5CiQvyU/6kkbP1JtmGzh0obW50zD7OKeILVL0NSpPWLXVfqoAGQjom2/SLLx9zHq0KXvD6mbw== - dependencies: - dotenv "*" - "@types/esrecurse@^4.3.1": version "4.3.1" resolved "https://registry.yarnpkg.com/@types/esrecurse/-/esrecurse-4.3.1.tgz#6f636af962fbe6191b830bd676ba5986926bccec" @@ -1603,13 +1826,6 @@ resolved "https://registry.yarnpkg.com/@types/trusted-types/-/trusted-types-2.0.7.tgz#baccb07a970b91707df3a3e8ba6896c57ead2d11" integrity sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw== -"@types/uuid@^11.0.0": - version "11.0.0" - resolved "https://registry.yarnpkg.com/@types/uuid/-/uuid-11.0.0.tgz#f4fa34bbf2af941148ef1973c4361fc43617971c" - integrity sha512-HVyk8nj2m+jcFRNazzqyVKiZezyhDKrGUA3jlEcg/nZ6Ms+qHwocba1Y/AaVaznJTAM9xpdFSh+ptbNrhOGvZA== - dependencies: - uuid "*" - "@types/vexflow@^1.2.38": version "1.2.42" resolved "https://registry.yarnpkg.com/@types/vexflow/-/vexflow-1.2.42.tgz#76883be5ba41b5a88e226d3089162b4bb1e90cd0" @@ -2656,7 +2872,7 @@ dompurify@^3.3.1: optionalDependencies: "@types/trusted-types" "^2.0.7" -dotenv@*, dotenv@^17.4.1, dotenv@^17.4.2: +dotenv@^17.4.1, dotenv@^17.4.2: version "17.4.2" resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-17.4.2.tgz#c07e54a746e11eba021dd9e1047ced5afdc1c034" integrity sha512-nI4U3TottKAcAD9LLud4Cb7b2QztQMUEfHbvhTH09bqXTxnSie8WnjPALV/WMCrJZ6UV/qHJ6L03OqO3LcdYZw== @@ -3170,6 +3386,13 @@ fast-wrap-ansi@^0.2.0: dependencies: fast-string-width "^3.0.2" +fd-package-json@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/fd-package-json/-/fd-package-json-2.0.0.tgz#03f53ce5a0af552c2f4faf703a24e526310a2411" + integrity sha512-jKmm9YtsNXN789RS/0mSzOC1NUq9mkVd65vbSSVsKdjGvYXBuE4oWe2QOEoFeRmJg+lPuZxpmrfFclNhoRMneQ== + dependencies: + walk-up-path "^4.0.0" + fdir@^6.5.0: version "6.5.0" resolved "https://registry.yarnpkg.com/fdir/-/fdir-6.5.0.tgz#ed2ab967a331ade62f18d077dae192684d50d350" @@ -3306,6 +3529,13 @@ form-data@^4.0.4, form-data@^4.0.6: hasown "^2.0.4" mime-types "^2.1.35" +formatly@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/formatly/-/formatly-0.3.0.tgz#5bb3b4e692f5a8c74ad8fe26154dd0a74aac6819" + integrity sha512-9XNj/o4wrRFyhSMJOvsuyMwy8aUfBaZ1VrqHVfohyXf0Sw0e+yfKG+xZaY3arGCOMdwFsqObtzVOc1gU9KiT9w== + dependencies: + fd-package-json "^2.0.0" + formdata-node@^4.3.2: version "4.4.1" resolved "https://registry.yarnpkg.com/formdata-node/-/formdata-node-4.4.1.tgz#23f6a5cb9cb55315912cbec4ff7b0f59bbd191e2" @@ -3440,6 +3670,13 @@ get-stream@^9.0.0: "@sec-ant/readable-stream" "^0.4.1" is-stream "^4.0.1" +get-tsconfig@4.14.0: + version "4.14.0" + resolved "https://registry.yarnpkg.com/get-tsconfig/-/get-tsconfig-4.14.0.tgz#985d85c52a9903864280ccc2448d413fbf1efed8" + integrity sha512-yTb+8DXzDREzgvYmh6s9vHsSVCHeC0G3PI5bEXNBHtmshPnO+S5O7qgLEOn0I5QvMy6kpZN8K1NKGyilLb93wA== + dependencies: + resolve-pkg-maps "^1.0.0" + github-from-package@0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/github-from-package/-/github-from-package-0.0.0.tgz#97fb5d96bfde8973313f20e8288ef9a167fa64ce" @@ -3576,16 +3813,6 @@ gtoken@^8.0.0: gaxios "^7.0.0" jws "^4.0.0" -gui-chat-protocol@^0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/gui-chat-protocol/-/gui-chat-protocol-0.0.1.tgz#d0770d03a6669b075473a0d8753ca9506f718dcd" - integrity sha512-FStQbzQ7gvjDugWAmf4IOsvhqxe8/DUdA9VK9PgXwi44J2lZyEd1ww1bhThoHXpXT4djFpayQ2uMO1YMtQhCqA== - -gui-chat-protocol@^0.0.3: - version "0.0.3" - resolved "https://registry.yarnpkg.com/gui-chat-protocol/-/gui-chat-protocol-0.0.3.tgz#0e86a15ade6c46ed698abaa6ae6aed5edfdd8dde" - integrity sha512-usoH2h4rONFl4E54y1Cl9O3WXS73q3XVs5aiCTAxJa+462nW6QVGPPOGyeeieFqMmjCHNWBfvtHAklg+D+eFRA== - gui-chat-protocol@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/gui-chat-protocol/-/gui-chat-protocol-1.2.0.tgz#8bc7f8d4e31a625aff94fa2c79951b5b80c30145" @@ -3595,8 +3822,8 @@ gui-chat-protocol@^1.2.0: version "0.1.0" resolved "https://codeload.github.com/isamu/AkinatorGame/tar.gz/6412aaf6a4b81801ea93c1403a45c32306246ed8" dependencies: - gui-chat-protocol "^0.0.1" - openai "^4.77.0" + gui-chat-protocol "^1.2.0" + openai "^4.104.0" has-symbols@^1.0.3, has-symbols@^1.1.0: version "1.1.0" @@ -4015,6 +4242,25 @@ keyv@^4.5.4: dependencies: json-buffer "3.0.1" +knip@^6: + version "6.29.0" + resolved "https://registry.yarnpkg.com/knip/-/knip-6.29.0.tgz#2bd44f47ddeab41a0c12a6b3415207bcd00aa418" + integrity sha512-A3kXqSBky1tWBAqiU9srdtu0Larhzkuyor0aD/gg+ToiqyBncCCs2Q60sLsxmcKhV0OsKss9LV0hMPpwLv711Q== + dependencies: + fdir "^6.5.0" + formatly "^0.3.0" + get-tsconfig "4.14.0" + jiti "^2.7.0" + oxc-parser "^0.140.0" + oxc-resolver "11.24.2" + picomatch "^4.0.5" + smol-toml "^1.7.0" + strip-json-comments "5.0.3" + tinyglobby "^0.2.17" + unbash "^4.0.3" + yaml "^2.9.0" + zod "^4.4.3" + kuler@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/kuler/-/kuler-2.0.0.tgz#e2c570a3800388fb44407e851531c1d670b061b3" @@ -4686,7 +4932,7 @@ onetime@^7.0.0: dependencies: mimic-function "^5.0.0" -openai@^4.77.0: +openai@^4.104.0, openai@^4.77.0: version "4.104.0" resolved "https://registry.yarnpkg.com/openai/-/openai-4.104.0.tgz#c489765dc051b95019845dab64b0e5207cae4d30" integrity sha512-p99EFNsA/yX6UhVO93f5kJsDRLAg+CTA2RBqdHK4RtK8u5IJw32Hyb2dTGKbnnFmnuoBv5r7Z2CURI9sGZpSuA== @@ -4748,6 +4994,59 @@ ora@^9.4.1: stdin-discarder "^0.3.2" string-width "^8.1.0" +oxc-parser@^0.140.0: + version "0.140.0" + resolved "https://registry.yarnpkg.com/oxc-parser/-/oxc-parser-0.140.0.tgz#71a7219cd9e18caa06782a276336b5835d38fc3a" + integrity sha512-h6QFWd6lBMfjESqgQ27GjzrSDb0qbznp7VDQqp2zvgsrWut4vcchyMIzOVXvGQ2GMZgKw9RWrFNWv9WqGL0p7Q== + dependencies: + "@oxc-project/types" "^0.140.0" + optionalDependencies: + "@oxc-parser/binding-android-arm-eabi" "0.140.0" + "@oxc-parser/binding-android-arm64" "0.140.0" + "@oxc-parser/binding-darwin-arm64" "0.140.0" + "@oxc-parser/binding-darwin-x64" "0.140.0" + "@oxc-parser/binding-freebsd-x64" "0.140.0" + "@oxc-parser/binding-linux-arm-gnueabihf" "0.140.0" + "@oxc-parser/binding-linux-arm-musleabihf" "0.140.0" + "@oxc-parser/binding-linux-arm64-gnu" "0.140.0" + "@oxc-parser/binding-linux-arm64-musl" "0.140.0" + "@oxc-parser/binding-linux-ppc64-gnu" "0.140.0" + "@oxc-parser/binding-linux-riscv64-gnu" "0.140.0" + "@oxc-parser/binding-linux-riscv64-musl" "0.140.0" + "@oxc-parser/binding-linux-s390x-gnu" "0.140.0" + "@oxc-parser/binding-linux-x64-gnu" "0.140.0" + "@oxc-parser/binding-linux-x64-musl" "0.140.0" + "@oxc-parser/binding-openharmony-arm64" "0.140.0" + "@oxc-parser/binding-wasm32-wasi" "0.140.0" + "@oxc-parser/binding-win32-arm64-msvc" "0.140.0" + "@oxc-parser/binding-win32-ia32-msvc" "0.140.0" + "@oxc-parser/binding-win32-x64-msvc" "0.140.0" + +oxc-resolver@11.24.2: + version "11.24.2" + resolved "https://registry.yarnpkg.com/oxc-resolver/-/oxc-resolver-11.24.2.tgz#85c08d9f5797e600175fa8524d2d271c685d97cf" + integrity sha512-FY91FiDBj7ls5MsFS9jN3tjz2o0/zsdSsymlakySaBwVJZorHhkWyICLZMKxlu1R9vYo+sd3z1jwb4J8x7bNDw== + optionalDependencies: + "@oxc-resolver/binding-android-arm-eabi" "11.24.2" + "@oxc-resolver/binding-android-arm64" "11.24.2" + "@oxc-resolver/binding-darwin-arm64" "11.24.2" + "@oxc-resolver/binding-darwin-x64" "11.24.2" + "@oxc-resolver/binding-freebsd-x64" "11.24.2" + "@oxc-resolver/binding-linux-arm-gnueabihf" "11.24.2" + "@oxc-resolver/binding-linux-arm-musleabihf" "11.24.2" + "@oxc-resolver/binding-linux-arm64-gnu" "11.24.2" + "@oxc-resolver/binding-linux-arm64-musl" "11.24.2" + "@oxc-resolver/binding-linux-ppc64-gnu" "11.24.2" + "@oxc-resolver/binding-linux-riscv64-gnu" "11.24.2" + "@oxc-resolver/binding-linux-riscv64-musl" "11.24.2" + "@oxc-resolver/binding-linux-s390x-gnu" "11.24.2" + "@oxc-resolver/binding-linux-x64-gnu" "11.24.2" + "@oxc-resolver/binding-linux-x64-musl" "11.24.2" + "@oxc-resolver/binding-openharmony-arm64" "11.24.2" + "@oxc-resolver/binding-wasm32-wasi" "11.24.2" + "@oxc-resolver/binding-win32-arm64-msvc" "11.24.2" + "@oxc-resolver/binding-win32-x64-msvc" "11.24.2" + p-limit@^3.0.2: version "3.1.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" @@ -5199,6 +5498,11 @@ require-from-string@^2.0.2: resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== +resolve-pkg-maps@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz#616b3dc2c57056b5588c31cdf4b3d64db133720f" + integrity sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw== + restore-cursor@^5.0.0: version "5.1.0" resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-5.1.0.tgz#0766d95699efacb14150993f55baf0953ea1ebe7" @@ -5462,6 +5766,11 @@ simple-get@^4.0.0: once "^1.3.1" simple-concat "^1.0.0" +smol-toml@^1.7.0: + version "1.7.1" + resolved "https://registry.yarnpkg.com/smol-toml/-/smol-toml-1.7.1.tgz#ba3e28d2e4348874a824fd8e1d73fec618cb763b" + integrity sha512-PPlsspAZ4jbMBu5DMFhfUGDQLu/vrL4SyBROVS37x8ynnVmFIs1VPBz1Co8Xks3TvpIaZXmU85y4DrQ+UyVFoQ== + soundfont-player@^0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/soundfont-player/-/soundfont-player-0.12.0.tgz#2b26149f28aba471d2285d3df9a2e1e5793ceaf1" @@ -5633,6 +5942,11 @@ strip-final-newline@^4.0.0: resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-4.0.0.tgz#35a369ec2ac43df356e3edd5dcebb6429aa1fa5c" integrity sha512-aulFJcD6YK8V1G7iRB5tigAP4TsHBZZrOV8pjV++zdUwmeV8uzbY7yn6h9MswN62adStNZFuCIx4haBnRuMDaw== +strip-json-comments@5.0.3: + version "5.0.3" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-5.0.3.tgz#b7304249dd402ee67fd518ada993ab3593458bcf" + integrity sha512-1tB5mhVo7U+ETBKNf92xT4hrQa3pm0MZ0PQvuDnWgAAGHDsfp4lPSpiS6psrSiet87wyGPh9ft6wmhOMQ0hDiw== + strip-json-comments@~2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" @@ -5969,6 +6283,11 @@ ufo@^1.6.3: resolved "https://registry.yarnpkg.com/ufo/-/ufo-1.6.4.tgz#7a8fb875fcc6382d2c7d0b3692738b0500a92467" integrity sha512-JFNbkD1Svwe0KvGi8GOeLcP4kAWQ609twvCdcHxq1oSL8svv39ZuSvajcD8B+5D0eL4+s1Is2D/O6KN3qcTeRA== +unbash@^4.0.3: + version "4.0.4" + resolved "https://registry.yarnpkg.com/unbash/-/unbash-4.0.4.tgz#d5f34d8788325c1ade67d0091a7dabfc38557ec0" + integrity sha512-60m9IVGbavD6jholbxt0jVBXZkEB/HsMZq7Tyaghseve2/Sf0zQRAIfWsD34sde+DKP2tBxJS2wP88ZM0D1FhA== + undici-types@~5.26.4: version "5.26.5" resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617" @@ -6066,7 +6385,7 @@ utrie@^1.0.2: dependencies: base64-arraybuffer "^1.0.2" -uuid@*, uuid@^14.0.0, uuid@^14.0.1: +uuid@^14.0.0, uuid@^14.0.1: version "14.0.1" resolved "https://registry.yarnpkg.com/uuid/-/uuid-14.0.1.tgz#8a5975b3e038902bfd169a10b5202f5ec0cf3faf" integrity sha512-6ZxzVpzDXDa3bJWaHilVayA+BH/1zmxCJoVgvmqJnid/gPoKHxUrS/aC/T6LGQtNHT+XHG9fXPJB4d+IrU30Ew== @@ -6166,6 +6485,11 @@ w3c-xmlserializer@^5.0.0: dependencies: xml-name-validator "^5.0.0" +walk-up-path@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/walk-up-path/-/walk-up-path-4.0.0.tgz#590666dcf8146e2d72318164f1f2ac6ef51d4198" + integrity sha512-3hu+tD8YzSLGuFYtPRb48vdhKMi0KQV5sn+uWr8+7dMEq/2G/dtLrdDinkLjqq5TIbIBjYJ4Ax/n3YiaW7QM8A== + web-streams-polyfill@4.0.0-beta.3: version "4.0.0-beta.3" resolved "https://registry.yarnpkg.com/web-streams-polyfill/-/web-streams-polyfill-4.0.0-beta.3.tgz#2898486b74f5156095e473efe989dcf185047a38"