Files
suaveplan/turbo.json
2026-05-27 23:47:53 +01:00

245 lines
6.4 KiB
JSON

{
"$schema": "https://turborepo.com/schema.json",
"ui": "stream",
"globalDependencies": [
".env",
"tsconfig.base.json",
"tsconfig.json",
"package.json",
"biome.json",
"crypto.config.ts",
"scripts/gen-crypto-selects.ts",
"scripts/check-crypto-selects.ts"
],
"globalEnv": ["NODE_ENV", "NPM_TOKEN"],
"globalPassThroughEnv": ["CI"],
"tasks": {
"//#check": {
"cache": false,
"outputLogs": "new-only"
},
"//#lint:test-runner-imports": {
"inputs": [
"scripts/lint/check-test-runner-imports.ts",
"packages/*/*/*/package.json",
"packages/*/*/*/src/**/*.ts",
"packages/*/*/*/src/**/*.tsx",
"wip/*/*/package.json",
"wip/*/*/src/**/*.ts",
"wip/*/*/src/**/*.tsx"
],
"outputs": [],
"cache": true,
"outputLogs": "errors-only"
},
"//#lint:preflight": {
"inputs": [
"scripts/openspec/check-preflight.ts",
"openspec/changes/*/tasks.md"
],
"outputs": [],
"cache": true,
"outputLogs": "errors-only"
},
"//#lint:feature-layout": {
"inputs": [
"scripts/lint/check-feature-layout.ts",
"packages/*/*/*/src/**/*.ts",
"packages/*/*/*/src/**/*.tsx",
"packages/*/*/*/src/**/*.md"
],
"outputs": [],
"cache": true,
"outputLogs": "errors-only"
},
"//#lint:error-subclass-constructors": {
"inputs": [
"scripts/lint/check-error-subclass-constructors.ts",
"packages/*/*/*/src/**/*.ts"
],
"outputs": [],
"cache": true,
"outputLogs": "errors-only"
},
"//#lint:carry-forward-deps": {
"inputs": [
"scripts/lint/check-carry-forward-deps.ts",
"openspec/changes/*/tasks.md"
],
"outputs": [],
"cache": true,
"outputLogs": "errors-only"
},
"//#lint:verified-by": {
"inputs": [
"scripts/lint/check-verified-by.ts",
"openspec/changes/*/specs/*/spec.md"
],
"outputs": [],
"cache": true,
"outputLogs": "errors-only"
},
"//#lint:stage-smoke": {
"inputs": [
"scripts/lint/check-stage-smoke.ts",
"openspec/changes/*/tasks.md"
],
"outputs": [],
"cache": true,
"outputLogs": "errors-only"
},
"//#lint:primitive-host-integration": {
"inputs": [
"scripts/lint/check-primitive-host-integration.ts",
"scripts/lint/primitives.json",
"openspec/changes/*/proposal.md"
],
"outputs": [],
"cache": true,
"outputLogs": "errors-only"
},
"//#lint:wasm-subpath-deps": {
"inputs": [
"scripts/lint/check-wasm-subpath-deps.ts",
"packages/api-stack/api/api-plugin-example/src/wasm/**/*.ts",
"packages/api-stack/api/api-plugin-example/src/domain/**/*.ts",
"packages/api-stack/api/api-plugin-example/src/error-codes/**/*.ts",
"packages/api-stack/api/api-plugin-example/package.json"
],
"outputs": [],
"cache": true,
"outputLogs": "errors-only"
},
"//#check:fixture-resolves": {
"dependsOn": [
"@suaveplan/testing-integration#build",
"@suaveplan/testing-integration-garage-s3#build",
"@suaveplan/testing-integration-mailpit#build",
"@suaveplan/testing-integration-postgres#build",
"@suaveplan/testing-integration-redis#build",
"@suaveplan/testing-integration-step-ca#build",
"@suaveplan/testing-integration-surrealdb#build",
"@suaveplan/testing-integration-typesense#build"
],
"inputs": [
"scripts/check-fixture-resolves.ts",
"packages/testkit/testing/testing-integration*/package.json",
"packages/testkit/testing/testing-integration*/dist/**"
],
"outputs": [],
"cache": false,
"outputLogs": "new-only"
},
"build": {
"dependsOn": ["^build"],
"inputs": [
"$TURBO_DEFAULT$",
".env*",
"tsconfig.json",
"tsconfig.lib.json",
"vite.config.ts",
"vitest.config.ts"
],
"outputs": ["dist/**", "!dist/**/*.map"],
"outputLogs": "new-only"
},
"lint": {
"inputs": ["src/**/*.ts", "src/**/*.tsx", "biome.json", "package.json"],
"cache": true,
"outputLogs": "errors-only"
},
"docs:check": {
"inputs": ["src/**/*.ts", "src/**/*.tsx", "src/**/*.md"],
"cache": true,
"outputLogs": "errors-only"
},
"typecheck": {
"dependsOn": ["^build"],
"inputs": [
"src/**/*.ts",
"src/**/*.tsx",
"tsconfig.json",
"tsconfig.lib.json"
],
"cache": true,
"outputLogs": "errors-only"
},
"test": {
"dependsOn": ["^build", "build"],
"inputs": [
"src/**/*.ts",
"src/**/*.tsx",
"src/**/*.test.ts",
"src/**/*.test.tsx",
"vitest.config.ts",
"package.json"
],
"outputs": [],
"cache": true,
"outputLogs": "new-only"
},
"test:watch": {
"dependsOn": ["^build"],
"cache": false,
"persistent": true,
"outputLogs": "new-only"
},
"test:integration": {
"dependsOn": ["^build"],
"inputs": [
"src/**/*.ts",
"tests/integration/**/*.ts",
"vitest.integration.config.ts",
"package.json"
],
"outputs": [],
"cache": false,
"outputLogs": "new-only"
},
"test:coverage": {
"dependsOn": ["^build", "build"],
"inputs": [
"src/**/*.ts",
"src/**/*.tsx",
"src/**/*.test.ts",
"src/**/*.test.tsx",
"vitest.config.ts",
"package.json"
],
"outputs": ["coverage/**"],
"cache": true,
"outputLogs": "new-only"
},
"bench": {
"dependsOn": ["^build", "build"],
"inputs": ["src/**/*.bench.ts"],
"cache": false,
"outputLogs": "new-only"
},
"crypto:kat": {
"dependsOn": ["^build", "build"],
"inputs": [
"src/**/*.ts",
"src/**/*.test.ts",
"vitest.config.ts",
"package.json"
],
"outputs": [],
"cache": true,
"outputLogs": "new-only"
},
"//#crypto:fuzz": {
"cache": false,
"outputLogs": "new-only"
},
"//#crypto:timing": {
"cache": false,
"outputLogs": "new-only"
},
"//#ct-lint": {
"cache": false,
"outputLogs": "new-only"
}
}
}