Files
8f498b4439 chore: add Turborepo with remote caching (#7697)
* chore: add Turborepo with remote caching

Pipeline lint, type-check, test, prettier, and knip:exports through
Turborepo so repeat runs (locally and in CI) hit a shared cache instead
of re-executing. Wire Vercel remote cache via TURBO_TOKEN/TURBO_TEAM
in .github/actions/yarn, and route web-checks.yml through turbo.

Co-authored-by: Hanzo Dev <dev@hanzo.ai>

* chore: pass extra args through turbo to underlying tasks

Husky pre-push calls `yarn run lint --fix`, and turbo was swallowing
`--fix` as its own flag. Appending `--` in the root scripts forwards
extra args straight to each workspace's command.

Co-authored-by: Hanzo Dev <dev@hanzo.ai>

---------

Co-authored-by: Hanzo Dev <dev@hanzo.ai>
2026-04-22 18:53:53 +02:00

48 lines
1.4 KiB
JSON

{
"$schema": "https://turborepo.com/schema.json",
"ui": "stream",
"globalDependencies": [
"tsconfig.base.json",
".prettierrc",
".prettierignore",
"config/tsconfig/*",
"config/eslint/*"
],
"globalEnv": ["NODE_ENV", "CI", "TZ"],
"globalPassThroughEnv": ["TURBO_TOKEN", "TURBO_TEAM", "TURBO_API", "TURBO_REMOTE_CACHE_SIGNATURE_KEY"],
"tasks": {
"type-check": {
"inputs": ["src/**/*.{ts,tsx,js,jsx,json}", "tsconfig*.json", "package.json", "next-env.d.ts", "**/*.d.ts"],
"outputs": [],
"outputLogs": "new-only"
},
"lint": {
"inputs": ["src/**/*.{ts,tsx,js,jsx}", "eslint.config.{js,mjs,cjs,ts}", ".eslintrc*", "package.json"],
"outputs": [],
"outputLogs": "new-only"
},
"test": {
"inputs": [
"src/**/*.{ts,tsx,js,jsx,json,snap}",
"jest.config.{js,cjs,mjs,ts}",
"jest.setup.{js,cjs,mjs,ts}",
"package.json",
"**/*.d.ts"
],
"outputs": ["coverage/**"],
"env": ["NEXT_PUBLIC_IS_OFFICIAL_HOST", "DEBUG_PRINT_LIMIT", "LC_ALL"],
"outputLogs": "new-only"
},
"prettier": {
"inputs": ["**/*.{ts,tsx,js,jsx,json,md,yml,yaml,css,scss}", "../../.prettierrc", "../../.prettierignore"],
"outputs": [],
"outputLogs": "new-only"
},
"knip:exports": {
"inputs": ["src/**", "knip.{js,ts,json}", "package.json"],
"outputs": [],
"outputLogs": "new-only"
}
}
}