diff --git a/knip.json b/knip.json new file mode 100644 index 0000000000..3afc683837 --- /dev/null +++ b/knip.json @@ -0,0 +1,15 @@ +{ + "$schema": "https://unpkg.com/knip@5/schema.json", + "exclude": ["duplicates"], + "ignoreWorkspaces": ["vendor/*"], + "workspaces": { + ".": { + "entry": ["examples/echo-agent/src/*.ts"], + "project": ["scripts/**/*.ts", "examples/**/*.ts"] + }, + "packages/*": { + "entry": ["tests/**/*.spec.ts"], + "project": ["src/**/*.ts", "tests/**/*.ts"] + } + } +} diff --git a/package.json b/package.json index ed05e538ad..d8467be175 100644 --- a/package.json +++ b/package.json @@ -18,14 +18,20 @@ "lint:fix": "eslint . --fix", "test": "vitest run", "test:coverage": "vitest run --coverage", + "knip": "knip", + "publint": "tsx scripts/publint-all.ts", + "hygiene": "yarn knip && yarn publint && yarn constraints", "demo": "node --expose-internals --import tsx examples/echo-agent/start.ts" }, "devDependencies": { "@stylistic/eslint-plugin": "^5.10.0", "@types/node": "^25.3.5", "@vitest/coverage-v8": "^4.1.8", + "@yarnpkg/types": "^4.0.1", "dumble": "^0.2.3", "eslint": "^10.4.1", + "knip": "^6.16.1", + "publint": "^0.3.21", "tsx": "^4.22.4", "typescript": "^6.0.3", "typescript-eslint": "^8.61.0", diff --git a/scripts/publint-all.ts b/scripts/publint-all.ts new file mode 100644 index 0000000000..b460875946 --- /dev/null +++ b/scripts/publint-all.ts @@ -0,0 +1,18 @@ +import { execFileSync } from 'node:child_process' +import { resolve } from 'node:path' + +// publint every publishable package (vendor/ is private upstream code and +// examples/ are not packages; both are out of scope). +const packages = [ + 'packages/llm', + 'packages/session', + 'packages/system-prompt', + 'packages/tools', + 'packages/agent', + 'packages/agent-loop', +] + +const root = resolve(import.meta.dirname, '..') +for (const path of packages) { + execFileSync('node_modules/.bin/publint', [path], { cwd: root, stdio: 'inherit' }) +} diff --git a/yarn.config.cjs b/yarn.config.cjs new file mode 100644 index 0000000000..eb5ecb6f4b --- /dev/null +++ b/yarn.config.cjs @@ -0,0 +1,53 @@ +// Yarn constraints: mechanize the package rules from AGENTS.md. +// Run with `yarn constraints`; CI fails on violations. +// +// 1. Every package is private (nothing publishes from this repo yet). +// 2. Harness packages (@deepseek-ai/dsh-*) declare `cordis` as BOTH a +// peerDependency and a devDependency (upstream Cordis convention). +// 3. Harness packages are versioned 0.0.1 (bumped together, later via tooling). +// 4. Vendored packages keep their upstream versions — constraints don't touch +// them beyond privacy. +// 5. All packages are ESM (`"type": "module"`) — except vendored packages +// whose upstream isn't (schemastery ships dual cjs/mjs without type). + +/** @type {import('@yarnpkg/types')} */ +const { defineConfig } = require('@yarnpkg/types') + +const VENDORED = new Set([ + 'cordis', 'cosmokit', 'schemastery', + '@cordisjs/plugin-loader', '@cordisjs/plugin-include', '@cordisjs/plugin-group', + '@cordisjs/plugin-timer', '@cordisjs/plugin-hmr', '@cordisjs/plugin-logger-console', +]) + +module.exports = defineConfig({ + async constraints({ Yarn }) { + for (const workspace of Yarn.workspaces()) { + const name = workspace.manifest.name + + // (1) everything stays private + workspace.set('private', true) + + if (name?.startsWith('@deepseek-ai/dsh-') && name !== '@deepseek-ai/dsh-root') { + // (2) cordis as peer + dev + const peer = Yarn.dependency({ workspace, ident: 'cordis', type: 'peerDependencies' }) + const dev = Yarn.dependency({ workspace, ident: 'cordis', type: 'devDependencies' }) + if (!peer) workspace.error(`${name}: cordis must be a peerDependency`) + if (!dev) workspace.error(`${name}: cordis must also be a devDependency`) + if (peer && dev && peer.range !== dev.range) { + workspace.error(`${name}: cordis peer (${peer.range}) and dev (${dev.range}) ranges must match`) + } + + // (3) uniform version + workspace.set('version', '0.0.1') + + // (5) ESM + workspace.set('type', 'module') + } + + if (name && VENDORED.has(name)) { + // (4) vendored: privacy only; versions/fields follow upstream + continue + } + } + }, +}) diff --git a/yarn.lock b/yarn.lock index af4c2eb645..f0aa5a75bb 100644 --- a/yarn.lock +++ b/yarn.lock @@ -180,8 +180,11 @@ __metadata: "@stylistic/eslint-plugin": "npm:^5.10.0" "@types/node": "npm:^25.3.5" "@vitest/coverage-v8": "npm:^4.1.8" + "@yarnpkg/types": "npm:^4.0.1" dumble: "npm:^0.2.3" eslint: "npm:^10.4.1" + knip: "npm:^6.16.1" + publint: "npm:^0.3.21" tsx: "npm:^4.22.4" typescript: "npm:^6.0.3" typescript-eslint: "npm:^8.61.0" @@ -617,13 +620,301 @@ __metadata: languageName: node linkType: hard -"@oxc-project/types@npm:=0.133.0": +"@oxc-parser/binding-android-arm-eabi@npm:0.133.0": + version: 0.133.0 + resolution: "@oxc-parser/binding-android-arm-eabi@npm:0.133.0" + conditions: os=android & cpu=arm + languageName: node + linkType: hard + +"@oxc-parser/binding-android-arm64@npm:0.133.0": + version: 0.133.0 + resolution: "@oxc-parser/binding-android-arm64@npm:0.133.0" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + +"@oxc-parser/binding-darwin-arm64@npm:0.133.0": + version: 0.133.0 + resolution: "@oxc-parser/binding-darwin-arm64@npm:0.133.0" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + +"@oxc-parser/binding-darwin-x64@npm:0.133.0": + version: 0.133.0 + resolution: "@oxc-parser/binding-darwin-x64@npm:0.133.0" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + +"@oxc-parser/binding-freebsd-x64@npm:0.133.0": + version: 0.133.0 + resolution: "@oxc-parser/binding-freebsd-x64@npm:0.133.0" + conditions: os=freebsd & cpu=x64 + languageName: node + linkType: hard + +"@oxc-parser/binding-linux-arm-gnueabihf@npm:0.133.0": + version: 0.133.0 + resolution: "@oxc-parser/binding-linux-arm-gnueabihf@npm:0.133.0" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + +"@oxc-parser/binding-linux-arm-musleabihf@npm:0.133.0": + version: 0.133.0 + resolution: "@oxc-parser/binding-linux-arm-musleabihf@npm:0.133.0" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + +"@oxc-parser/binding-linux-arm64-gnu@npm:0.133.0": + version: 0.133.0 + resolution: "@oxc-parser/binding-linux-arm64-gnu@npm:0.133.0" + conditions: os=linux & cpu=arm64 & libc=glibc + languageName: node + linkType: hard + +"@oxc-parser/binding-linux-arm64-musl@npm:0.133.0": + version: 0.133.0 + resolution: "@oxc-parser/binding-linux-arm64-musl@npm:0.133.0" + conditions: os=linux & cpu=arm64 & libc=musl + languageName: node + linkType: hard + +"@oxc-parser/binding-linux-ppc64-gnu@npm:0.133.0": + version: 0.133.0 + resolution: "@oxc-parser/binding-linux-ppc64-gnu@npm:0.133.0" + conditions: os=linux & cpu=ppc64 & libc=glibc + languageName: node + linkType: hard + +"@oxc-parser/binding-linux-riscv64-gnu@npm:0.133.0": + version: 0.133.0 + resolution: "@oxc-parser/binding-linux-riscv64-gnu@npm:0.133.0" + conditions: os=linux & cpu=riscv64 & libc=glibc + languageName: node + linkType: hard + +"@oxc-parser/binding-linux-riscv64-musl@npm:0.133.0": + version: 0.133.0 + resolution: "@oxc-parser/binding-linux-riscv64-musl@npm:0.133.0" + conditions: os=linux & cpu=riscv64 & libc=musl + languageName: node + linkType: hard + +"@oxc-parser/binding-linux-s390x-gnu@npm:0.133.0": + version: 0.133.0 + resolution: "@oxc-parser/binding-linux-s390x-gnu@npm:0.133.0" + conditions: os=linux & cpu=s390x & libc=glibc + languageName: node + linkType: hard + +"@oxc-parser/binding-linux-x64-gnu@npm:0.133.0": + version: 0.133.0 + resolution: "@oxc-parser/binding-linux-x64-gnu@npm:0.133.0" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + +"@oxc-parser/binding-linux-x64-musl@npm:0.133.0": + version: 0.133.0 + resolution: "@oxc-parser/binding-linux-x64-musl@npm:0.133.0" + conditions: os=linux & cpu=x64 & libc=musl + languageName: node + linkType: hard + +"@oxc-parser/binding-openharmony-arm64@npm:0.133.0": + version: 0.133.0 + resolution: "@oxc-parser/binding-openharmony-arm64@npm:0.133.0" + conditions: os=openharmony & cpu=arm64 + languageName: node + linkType: hard + +"@oxc-parser/binding-wasm32-wasi@npm:0.133.0": + version: 0.133.0 + resolution: "@oxc-parser/binding-wasm32-wasi@npm:0.133.0" + dependencies: + "@emnapi/core": "npm:1.10.0" + "@emnapi/runtime": "npm:1.10.0" + "@napi-rs/wasm-runtime": "npm:^1.1.4" + conditions: cpu=wasm32 + languageName: node + linkType: hard + +"@oxc-parser/binding-win32-arm64-msvc@npm:0.133.0": + version: 0.133.0 + resolution: "@oxc-parser/binding-win32-arm64-msvc@npm:0.133.0" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + +"@oxc-parser/binding-win32-ia32-msvc@npm:0.133.0": + version: 0.133.0 + resolution: "@oxc-parser/binding-win32-ia32-msvc@npm:0.133.0" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + +"@oxc-parser/binding-win32-x64-msvc@npm:0.133.0": + version: 0.133.0 + resolution: "@oxc-parser/binding-win32-x64-msvc@npm:0.133.0" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + +"@oxc-project/types@npm:=0.133.0, @oxc-project/types@npm:^0.133.0": version: 0.133.0 resolution: "@oxc-project/types@npm:0.133.0" checksum: 10c0/70c57ba58644f7ec217b670c301801f4d06995f4ccdba6b2bd106ea3e5ee49d616573e6ef8d55530b87571a960696543687f3850e87ad173d3f88965c30cdd63 languageName: node linkType: hard +"@oxc-resolver/binding-android-arm-eabi@npm:11.20.0": + version: 11.20.0 + resolution: "@oxc-resolver/binding-android-arm-eabi@npm:11.20.0" + conditions: os=android & cpu=arm + languageName: node + linkType: hard + +"@oxc-resolver/binding-android-arm64@npm:11.20.0": + version: 11.20.0 + resolution: "@oxc-resolver/binding-android-arm64@npm:11.20.0" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + +"@oxc-resolver/binding-darwin-arm64@npm:11.20.0": + version: 11.20.0 + resolution: "@oxc-resolver/binding-darwin-arm64@npm:11.20.0" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + +"@oxc-resolver/binding-darwin-x64@npm:11.20.0": + version: 11.20.0 + resolution: "@oxc-resolver/binding-darwin-x64@npm:11.20.0" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + +"@oxc-resolver/binding-freebsd-x64@npm:11.20.0": + version: 11.20.0 + resolution: "@oxc-resolver/binding-freebsd-x64@npm:11.20.0" + conditions: os=freebsd & cpu=x64 + languageName: node + linkType: hard + +"@oxc-resolver/binding-linux-arm-gnueabihf@npm:11.20.0": + version: 11.20.0 + resolution: "@oxc-resolver/binding-linux-arm-gnueabihf@npm:11.20.0" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + +"@oxc-resolver/binding-linux-arm-musleabihf@npm:11.20.0": + version: 11.20.0 + resolution: "@oxc-resolver/binding-linux-arm-musleabihf@npm:11.20.0" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + +"@oxc-resolver/binding-linux-arm64-gnu@npm:11.20.0": + version: 11.20.0 + resolution: "@oxc-resolver/binding-linux-arm64-gnu@npm:11.20.0" + conditions: os=linux & cpu=arm64 & libc=glibc + languageName: node + linkType: hard + +"@oxc-resolver/binding-linux-arm64-musl@npm:11.20.0": + version: 11.20.0 + resolution: "@oxc-resolver/binding-linux-arm64-musl@npm:11.20.0" + conditions: os=linux & cpu=arm64 & libc=musl + languageName: node + linkType: hard + +"@oxc-resolver/binding-linux-ppc64-gnu@npm:11.20.0": + version: 11.20.0 + resolution: "@oxc-resolver/binding-linux-ppc64-gnu@npm:11.20.0" + conditions: os=linux & cpu=ppc64 & libc=glibc + languageName: node + linkType: hard + +"@oxc-resolver/binding-linux-riscv64-gnu@npm:11.20.0": + version: 11.20.0 + resolution: "@oxc-resolver/binding-linux-riscv64-gnu@npm:11.20.0" + conditions: os=linux & cpu=riscv64 & libc=glibc + languageName: node + linkType: hard + +"@oxc-resolver/binding-linux-riscv64-musl@npm:11.20.0": + version: 11.20.0 + resolution: "@oxc-resolver/binding-linux-riscv64-musl@npm:11.20.0" + conditions: os=linux & cpu=riscv64 & libc=musl + languageName: node + linkType: hard + +"@oxc-resolver/binding-linux-s390x-gnu@npm:11.20.0": + version: 11.20.0 + resolution: "@oxc-resolver/binding-linux-s390x-gnu@npm:11.20.0" + conditions: os=linux & cpu=s390x & libc=glibc + languageName: node + linkType: hard + +"@oxc-resolver/binding-linux-x64-gnu@npm:11.20.0": + version: 11.20.0 + resolution: "@oxc-resolver/binding-linux-x64-gnu@npm:11.20.0" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + +"@oxc-resolver/binding-linux-x64-musl@npm:11.20.0": + version: 11.20.0 + resolution: "@oxc-resolver/binding-linux-x64-musl@npm:11.20.0" + conditions: os=linux & cpu=x64 & libc=musl + languageName: node + linkType: hard + +"@oxc-resolver/binding-openharmony-arm64@npm:11.20.0": + version: 11.20.0 + resolution: "@oxc-resolver/binding-openharmony-arm64@npm:11.20.0" + conditions: os=openharmony & cpu=arm64 + languageName: node + linkType: hard + +"@oxc-resolver/binding-wasm32-wasi@npm:11.20.0": + version: 11.20.0 + resolution: "@oxc-resolver/binding-wasm32-wasi@npm:11.20.0" + dependencies: + "@emnapi/core": "npm:1.10.0" + "@emnapi/runtime": "npm:1.10.0" + "@napi-rs/wasm-runtime": "npm:^1.1.4" + conditions: cpu=wasm32 + languageName: node + linkType: hard + +"@oxc-resolver/binding-win32-arm64-msvc@npm:11.20.0": + version: 11.20.0 + resolution: "@oxc-resolver/binding-win32-arm64-msvc@npm:11.20.0" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + +"@oxc-resolver/binding-win32-x64-msvc@npm:11.20.0": + version: 11.20.0 + resolution: "@oxc-resolver/binding-win32-x64-msvc@npm:11.20.0" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + +"@publint/pack@npm:^0.1.4": + version: 0.1.4 + resolution: "@publint/pack@npm:0.1.4" + checksum: 10c0/f70b2c8951b5d312ecfd40534e1dd1b0a4fe0fd207879a73c168e3f6979df6202b8b4d4f9a0ee9de6443f0bfb95ef47a0c27c7138c083d9224ef27c67adddefd + languageName: node + linkType: hard + "@rolldown/binding-android-arm64@npm:1.0.3": version: 1.0.3 resolution: "@rolldown/binding-android-arm64@npm:1.0.3" @@ -1081,6 +1372,15 @@ __metadata: languageName: node linkType: hard +"@yarnpkg/types@npm:^4.0.1": + version: 4.0.1 + resolution: "@yarnpkg/types@npm:4.0.1" + dependencies: + tslib: "npm:^2.4.0" + checksum: 10c0/90226789475680ba599833571dd76c0718dd5b4c5022481263ef309d6a628f6246671cd6ca86e49c966ddefa7aca6ccef82240dc1476d2cea702ea5bee2a6b72 + languageName: node + linkType: hard + "abbrev@npm:^4.0.0": version: 4.0.0 resolution: "abbrev@npm:4.0.0" @@ -1593,6 +1893,15 @@ __metadata: languageName: node linkType: hard +"fd-package-json@npm:^2.0.0": + version: 2.0.0 + resolution: "fd-package-json@npm:2.0.0" + dependencies: + walk-up-path: "npm:^4.0.0" + checksum: 10c0/a0a48745257bc09c939486608dad9f2ced238f0c64266222cc881618ed4c8f6aa0ccfe45a1e6d4f9ce828509e8d617cec60e2a114851bebb1ff4886dc5ed5112 + languageName: node + linkType: hard + "fdir@npm:^6.5.0": version: 6.5.0 resolution: "fdir@npm:6.5.0" @@ -1650,6 +1959,17 @@ __metadata: languageName: node linkType: hard +"formatly@npm:^0.3.0": + version: 0.3.0 + resolution: "formatly@npm:0.3.0" + dependencies: + fd-package-json: "npm:^2.0.0" + bin: + formatly: bin/index.mjs + checksum: 10c0/ef9dbd3cdaee649e9604ea060d8d62d8131eb81117634336592ee2193fc7c98a3f1f1b5d09a045dbd36287ba88edf868ef179d39fbda2f34fbe2be70c42dd014 + languageName: node + linkType: hard + "fsevents@npm:~2.3.3": version: 2.3.3 resolution: "fsevents@npm:2.3.3" @@ -1669,6 +1989,15 @@ __metadata: languageName: node linkType: hard +"get-tsconfig@npm:4.14.0": + version: 4.14.0 + resolution: "get-tsconfig@npm:4.14.0" + dependencies: + resolve-pkg-maps: "npm:^1.0.0" + checksum: 10c0/abc2b9275468eb589079a0b7a95eb5107c14fdd0ca6dda1bff116fe774ea1f79975421dcb22a0c86b4f820fcc69a7655dddf9b6d6a8a2c06fcb59e19794c0724 + languageName: node + linkType: hard + "glob-parent@npm:^5.1.2": version: 5.1.2 resolution: "glob-parent@npm:5.1.2" @@ -1815,6 +2144,15 @@ __metadata: languageName: node linkType: hard +"jiti@npm:^2.7.0": + version: 2.7.0 + resolution: "jiti@npm:2.7.0" + bin: + jiti: lib/jiti-cli.mjs + checksum: 10c0/1b1e2310a490dce1aeea3da5f5dfe18273516c20ce48be2e98eb8ea452d5f3dcc8fd0cfd6d28b4052a24c5dbab6e3089b2d7e79f0bce7915b10d750929563c42 + languageName: node + linkType: hard + "js-tokens@npm:^10.0.0": version: 10.0.0 resolution: "js-tokens@npm:10.0.0" @@ -1886,6 +2224,30 @@ __metadata: languageName: node linkType: hard +"knip@npm:^6.16.1": + version: 6.16.1 + resolution: "knip@npm:6.16.1" + dependencies: + fdir: "npm:^6.5.0" + formatly: "npm:^0.3.0" + get-tsconfig: "npm:4.14.0" + jiti: "npm:^2.7.0" + oxc-parser: "npm:^0.133.0" + oxc-resolver: "npm:^11.20.0" + picomatch: "npm:^4.0.4" + smol-toml: "npm:^1.6.1" + strip-json-comments: "npm:5.0.3" + tinyglobby: "npm:^0.2.16" + unbash: "npm:^3.0.0" + yaml: "npm:^2.9.0" + zod: "npm:^4.1.11" + bin: + knip: bin/knip.js + knip-bun: bin/knip-bun.js + checksum: 10c0/b723ee43f2a5170d5330d3d6cbd54452620ca76e2bffc11d8c8615d5f42c3aa60e9f7763f768210c0b97babff046df668479cb7f4ca78e3e7a8312ef12530370 + languageName: node + linkType: hard + "levn@npm:^0.4.1": version: 0.4.1 resolution: "levn@npm:0.4.1" @@ -2096,6 +2458,13 @@ __metadata: languageName: node linkType: hard +"mri@npm:^1.1.0": + version: 1.2.0 + resolution: "mri@npm:1.2.0" + checksum: 10c0/a3d32379c2554cf7351db6237ddc18dc9e54e4214953f3da105b97dc3babe0deb3ffe99cf409b38ea47cc29f9430561ba6b53b24ab8f9ce97a4b50409e4a50e7 + languageName: node + linkType: hard + "ms@npm:^2.1.3": version: 2.1.3 resolution: "ms@npm:2.1.3" @@ -2171,6 +2540,142 @@ __metadata: languageName: node linkType: hard +"oxc-parser@npm:^0.133.0": + version: 0.133.0 + resolution: "oxc-parser@npm:0.133.0" + dependencies: + "@oxc-parser/binding-android-arm-eabi": "npm:0.133.0" + "@oxc-parser/binding-android-arm64": "npm:0.133.0" + "@oxc-parser/binding-darwin-arm64": "npm:0.133.0" + "@oxc-parser/binding-darwin-x64": "npm:0.133.0" + "@oxc-parser/binding-freebsd-x64": "npm:0.133.0" + "@oxc-parser/binding-linux-arm-gnueabihf": "npm:0.133.0" + "@oxc-parser/binding-linux-arm-musleabihf": "npm:0.133.0" + "@oxc-parser/binding-linux-arm64-gnu": "npm:0.133.0" + "@oxc-parser/binding-linux-arm64-musl": "npm:0.133.0" + "@oxc-parser/binding-linux-ppc64-gnu": "npm:0.133.0" + "@oxc-parser/binding-linux-riscv64-gnu": "npm:0.133.0" + "@oxc-parser/binding-linux-riscv64-musl": "npm:0.133.0" + "@oxc-parser/binding-linux-s390x-gnu": "npm:0.133.0" + "@oxc-parser/binding-linux-x64-gnu": "npm:0.133.0" + "@oxc-parser/binding-linux-x64-musl": "npm:0.133.0" + "@oxc-parser/binding-openharmony-arm64": "npm:0.133.0" + "@oxc-parser/binding-wasm32-wasi": "npm:0.133.0" + "@oxc-parser/binding-win32-arm64-msvc": "npm:0.133.0" + "@oxc-parser/binding-win32-ia32-msvc": "npm:0.133.0" + "@oxc-parser/binding-win32-x64-msvc": "npm:0.133.0" + "@oxc-project/types": "npm:^0.133.0" + dependenciesMeta: + "@oxc-parser/binding-android-arm-eabi": + optional: true + "@oxc-parser/binding-android-arm64": + optional: true + "@oxc-parser/binding-darwin-arm64": + optional: true + "@oxc-parser/binding-darwin-x64": + optional: true + "@oxc-parser/binding-freebsd-x64": + optional: true + "@oxc-parser/binding-linux-arm-gnueabihf": + optional: true + "@oxc-parser/binding-linux-arm-musleabihf": + optional: true + "@oxc-parser/binding-linux-arm64-gnu": + optional: true + "@oxc-parser/binding-linux-arm64-musl": + optional: true + "@oxc-parser/binding-linux-ppc64-gnu": + optional: true + "@oxc-parser/binding-linux-riscv64-gnu": + optional: true + "@oxc-parser/binding-linux-riscv64-musl": + optional: true + "@oxc-parser/binding-linux-s390x-gnu": + optional: true + "@oxc-parser/binding-linux-x64-gnu": + optional: true + "@oxc-parser/binding-linux-x64-musl": + optional: true + "@oxc-parser/binding-openharmony-arm64": + optional: true + "@oxc-parser/binding-wasm32-wasi": + optional: true + "@oxc-parser/binding-win32-arm64-msvc": + optional: true + "@oxc-parser/binding-win32-ia32-msvc": + optional: true + "@oxc-parser/binding-win32-x64-msvc": + optional: true + checksum: 10c0/62d4ce93d819d47d4a295744bb3966c66b658bb33f35f6ebc0650ba854d6b070e62baa6f933366f45dc65983a77be9527ed15cacc0f532a252f2e049623c4ce2 + languageName: node + linkType: hard + +"oxc-resolver@npm:^11.20.0": + version: 11.20.0 + resolution: "oxc-resolver@npm:11.20.0" + dependencies: + "@oxc-resolver/binding-android-arm-eabi": "npm:11.20.0" + "@oxc-resolver/binding-android-arm64": "npm:11.20.0" + "@oxc-resolver/binding-darwin-arm64": "npm:11.20.0" + "@oxc-resolver/binding-darwin-x64": "npm:11.20.0" + "@oxc-resolver/binding-freebsd-x64": "npm:11.20.0" + "@oxc-resolver/binding-linux-arm-gnueabihf": "npm:11.20.0" + "@oxc-resolver/binding-linux-arm-musleabihf": "npm:11.20.0" + "@oxc-resolver/binding-linux-arm64-gnu": "npm:11.20.0" + "@oxc-resolver/binding-linux-arm64-musl": "npm:11.20.0" + "@oxc-resolver/binding-linux-ppc64-gnu": "npm:11.20.0" + "@oxc-resolver/binding-linux-riscv64-gnu": "npm:11.20.0" + "@oxc-resolver/binding-linux-riscv64-musl": "npm:11.20.0" + "@oxc-resolver/binding-linux-s390x-gnu": "npm:11.20.0" + "@oxc-resolver/binding-linux-x64-gnu": "npm:11.20.0" + "@oxc-resolver/binding-linux-x64-musl": "npm:11.20.0" + "@oxc-resolver/binding-openharmony-arm64": "npm:11.20.0" + "@oxc-resolver/binding-wasm32-wasi": "npm:11.20.0" + "@oxc-resolver/binding-win32-arm64-msvc": "npm:11.20.0" + "@oxc-resolver/binding-win32-x64-msvc": "npm:11.20.0" + dependenciesMeta: + "@oxc-resolver/binding-android-arm-eabi": + optional: true + "@oxc-resolver/binding-android-arm64": + optional: true + "@oxc-resolver/binding-darwin-arm64": + optional: true + "@oxc-resolver/binding-darwin-x64": + optional: true + "@oxc-resolver/binding-freebsd-x64": + optional: true + "@oxc-resolver/binding-linux-arm-gnueabihf": + optional: true + "@oxc-resolver/binding-linux-arm-musleabihf": + optional: true + "@oxc-resolver/binding-linux-arm64-gnu": + optional: true + "@oxc-resolver/binding-linux-arm64-musl": + optional: true + "@oxc-resolver/binding-linux-ppc64-gnu": + optional: true + "@oxc-resolver/binding-linux-riscv64-gnu": + optional: true + "@oxc-resolver/binding-linux-riscv64-musl": + optional: true + "@oxc-resolver/binding-linux-s390x-gnu": + optional: true + "@oxc-resolver/binding-linux-x64-gnu": + optional: true + "@oxc-resolver/binding-linux-x64-musl": + optional: true + "@oxc-resolver/binding-openharmony-arm64": + optional: true + "@oxc-resolver/binding-wasm32-wasi": + optional: true + "@oxc-resolver/binding-win32-arm64-msvc": + optional: true + "@oxc-resolver/binding-win32-x64-msvc": + optional: true + checksum: 10c0/4a0b0fae7a8b8a25d5173aaeb7348c53d5f60d5bb37a66c3177dcf416319d1f7065b625afa37b924a288dec5b401ba92b003cbce26b91e6631bd8690052c80de + languageName: node + linkType: hard + "p-limit@npm:^3.0.2": version: 3.1.0 resolution: "p-limit@npm:3.1.0" @@ -2189,6 +2694,13 @@ __metadata: languageName: node linkType: hard +"package-manager-detector@npm:^1.6.0": + version: 1.6.0 + resolution: "package-manager-detector@npm:1.6.0" + checksum: 10c0/6419d0b840be64fd45bcdcb7a19f09b81b65456d5e7f7a3daac305a4c90643052122f6ac0308afe548ffee75e36148532a2002ea9d292754f1e385aa2e1ea03b + languageName: node + linkType: hard + "path-exists@npm:^4.0.0": version: 4.0.0 resolution: "path-exists@npm:4.0.0" @@ -2263,6 +2775,20 @@ __metadata: languageName: node linkType: hard +"publint@npm:^0.3.21": + version: 0.3.21 + resolution: "publint@npm:0.3.21" + dependencies: + "@publint/pack": "npm:^0.1.4" + package-manager-detector: "npm:^1.6.0" + picocolors: "npm:^1.1.1" + sade: "npm:^1.8.1" + bin: + publint: src/cli.js + checksum: 10c0/46f54061b112f852523e8b1357c5b454633008056de86f6acbbabcb155a8ab758d3e575df9f82fa37b7ba4a25bde8e68f98866763929eaef8c6d96ff1f761cea + languageName: node + linkType: hard + "punycode@npm:^2.1.0": version: 2.3.1 resolution: "punycode@npm:2.3.1" @@ -2284,6 +2810,13 @@ __metadata: languageName: node linkType: hard +"resolve-pkg-maps@npm:^1.0.0": + version: 1.0.0 + resolution: "resolve-pkg-maps@npm:1.0.0" + checksum: 10c0/fb8f7bbe2ca281a73b7ef423a1cbc786fb244bd7a95cbe5c3fba25b27d327150beca8ba02f622baea65919a57e061eb5005204daa5f93ed590d9b77463a567ab + languageName: node + linkType: hard + "reusify@npm:^1.0.4": version: 1.1.0 resolution: "reusify@npm:1.1.0" @@ -2358,6 +2891,15 @@ __metadata: languageName: node linkType: hard +"sade@npm:^1.8.1": + version: 1.8.1 + resolution: "sade@npm:1.8.1" + dependencies: + mri: "npm:^1.1.0" + checksum: 10c0/da8a3a5d667ad5ce3bf6d4f054bbb9f711103e5df21003c5a5c1a8a77ce12b640ed4017dd423b13c2307ea7e645adee7c2ae3afe8051b9db16a6f6d3da3f90b1 + languageName: node + linkType: hard + "schemastery@npm:^3.18.0, schemastery@workspace:vendor/schemastery": version: 0.0.0-use.local resolution: "schemastery@workspace:vendor/schemastery" @@ -2406,6 +2948,13 @@ __metadata: languageName: node linkType: hard +"smol-toml@npm:^1.6.1": + version: 1.6.1 + resolution: "smol-toml@npm:1.6.1" + checksum: 10c0/511a78722f99c7616fdb46af708de3d7e81434b5a3d58061166da73f28bfc6cae4f0cd04683f60515b9c490cd10152fce72287c960b337419c0299cc1f0f2a22 + languageName: node + linkType: hard + "source-map-js@npm:^1.2.1": version: 1.2.1 resolution: "source-map-js@npm:1.2.1" @@ -2427,6 +2976,13 @@ __metadata: languageName: node linkType: hard +"strip-json-comments@npm:5.0.3": + version: 5.0.3 + resolution: "strip-json-comments@npm:5.0.3" + checksum: 10c0/daaf20b29f69fb51112698f4a9a662490dbb78d5baf6127c75a0a83c2ac6c078a8c0f74b389ad5e0519d6fc359c4a57cb9971b1ae201aef62ce45a13247791e0 + languageName: node + linkType: hard + "supports-color@npm:^7.1.0": version: 7.2.0 resolution: "supports-color@npm:7.2.0" @@ -2470,7 +3026,7 @@ __metadata: languageName: node linkType: hard -"tinyglobby@npm:^0.2.12, tinyglobby@npm:^0.2.15, tinyglobby@npm:^0.2.17": +"tinyglobby@npm:^0.2.12, tinyglobby@npm:^0.2.15, tinyglobby@npm:^0.2.16, tinyglobby@npm:^0.2.17": version: 0.2.17 resolution: "tinyglobby@npm:0.2.17" dependencies: @@ -2596,6 +3152,13 @@ __metadata: languageName: node linkType: hard +"unbash@npm:^3.0.0": + version: 3.0.0 + resolution: "unbash@npm:3.0.0" + checksum: 10c0/8d237237805c8d23a6a7ba9ba1dac612b79431f2458aaa7975c472eba9f429991e46417fd8cdb14c1ad88adffbc0b914d0556ad5978bc42bbd2fa9b0942a4f91 + languageName: node + linkType: hard + "undici-types@npm:>=7.24.0 <7.24.7": version: 7.24.6 resolution: "undici-types@npm:7.24.6" @@ -2764,6 +3327,13 @@ __metadata: languageName: node linkType: hard +"walk-up-path@npm:^4.0.0": + version: 4.0.0 + resolution: "walk-up-path@npm:4.0.0" + checksum: 10c0/fabe344f91387d1d41df230af962ef18bf703dd4178006d55cd6412caacd187b54440002d4d53a982d4f7f0455567dcffb6d3884533c8b2268928eca3ebd8a19 + languageName: node + linkType: hard + "which@npm:^2.0.1": version: 2.0.2 resolution: "which@npm:2.0.2" @@ -2812,9 +3382,25 @@ __metadata: languageName: node linkType: hard +"yaml@npm:^2.9.0": + version: 2.9.0 + resolution: "yaml@npm:2.9.0" + bin: + yaml: bin.mjs + checksum: 10c0/f340718df45e97a9551b9bf9dac61c80050bc464513b710debfb5067c380c8472e3b67809cffacb4ab5ffb5e66ef9310816c88b05f371cec60abfedd8c88e0a2 + languageName: node + linkType: hard + "yocto-queue@npm:^0.1.0": version: 0.1.0 resolution: "yocto-queue@npm:0.1.0" checksum: 10c0/dceb44c28578b31641e13695d200d34ec4ab3966a5729814d5445b194933c096b7ced71494ce53a0e8820685d1d010df8b2422e5bf2cdea7e469d97ffbea306f languageName: node linkType: hard + +"zod@npm:^4.1.11": + version: 4.4.3 + resolution: "zod@npm:4.4.3" + checksum: 10c0/7ea31b558e88f9faf44f31dd185e2e1cbf51fed3081787fb96cc2534749b50c0acfc6da7f0922a7353ed092dd358c7d50c28ea96c94d04af64191bd33152eca3 + languageName: node + linkType: hard