Files
wehub-resource-sync 0d3cb498a3
Deploy local.promptfoo.app / Deploy to Cloudflare Pages (push) Waiting to run
Test and Publish Multi-arch Docker Image / test (push) Waiting to run
Test and Publish Multi-arch Docker Image / build-docker-and-push-digests (map[digest-suffix:linux-amd64 platform:linux/amd64 runner:ubuntu-latest]) (push) Blocked by required conditions
Test and Publish Multi-arch Docker Image / build-docker-and-push-digests (map[digest-suffix:linux-arm64 platform:linux/arm64 runner:ubuntu-24.04-arm]) (push) Blocked by required conditions
Test and Publish Multi-arch Docker Image / merge-docker-digests (push) Blocked by required conditions
Test and Publish Multi-arch Docker Image / Attest Multi-arch Image (push) Blocked by required conditions
CI / Shell Format Check (push) Waiting to run
CI / Check Ruby (3.4) (push) Waiting to run
CI / CI Config (push) Waiting to run
CI / Test on Node ${{ matrix.node }} and ${{ matrix.os }}${{ matrix.shard && format(' (shard {0}/3)', matrix.shard) || '' }} (push) Blocked by required conditions
CI / Build on Node ${{ matrix.node }} (push) Blocked by required conditions
CI / Style Check (push) Waiting to run
CI / Generate Assets (push) Waiting to run
CI / Check Python (3.14) (push) Waiting to run
CI / Check Python (3.9) (push) Waiting to run
CI / Build Docs (push) Waiting to run
CI / Code Scan Action (push) Waiting to run
CI / Site tests (push) Waiting to run
CI / webui tests (push) Waiting to run
CI / Run Integration Tests (push) Waiting to run
CI / Run Smoke Tests (push) Waiting to run
CI / Go Tests (push) Waiting to run
CI / Share Test (push) Waiting to run
CI / Redteam (Production API) (push) Waiting to run
CI / Redteam (Staging API) (push) Waiting to run
CI / GitHub Actions Lint (push) Waiting to run
CI / Check Ruby (3.0) (push) Waiting to run
release-please / release-please (push) Waiting to run
release-please / build (push) Blocked by required conditions
release-please / publish-npm (push) Blocked by required conditions
release-please / publish-npm-backfill (push) Waiting to run
release-please / docker (push) Blocked by required conditions
release-please / publish-code-scan-action (push) Blocked by required conditions
release-please / attest-code-scan-action (push) Blocked by required conditions
Validate Renovate Config / Validate Renovate Configuration (push) Waiting to run
chore: import upstream snapshot with attribution
2026-07-13 13:24:08 +08:00

376 lines
9.4 KiB
JSON

{
"$schema": "https://biomejs.dev/schemas/2.5.1/schema.json",
"vcs": {
"enabled": true,
"clientKind": "git",
"useIgnoreFile": true
},
"files": {
"ignoreUnknown": false,
"includes": [
"**/*.js",
"**/*.jsx",
"**/*.ts",
"**/*.tsx",
"**/*.json",
"**/*.jsonc",
"**/*.grit",
"**/*.mjs",
"**/*.cjs",
"!!.codex",
"!!drizzle",
"!!src/app/src/polyfills",
"!!**/node_modules",
"!!**/dist",
"!!**/build",
"!!**/public",
"!!examples/config-multi-turn/prompt.json",
"!!examples/openai-chat-history/prompt.json",
"!!test/fixtures/rubric-json-template/**/*.json",
// Excluded due to stack overflow crash in biome - see https://github.com/biomejs/biome/issues/8783
"!!src/redteam/shared/runtimeTransform.ts",
"!!plugins/promptfoo/skills/promptfoo-provider-setup/scripts/openapi-operation-to-config.mjs",
"!!plugins/promptfoo/skills/promptfoo-redteam-setup/scripts/openapi-operation-to-redteam-config.mjs"
]
},
"formatter": {
"enabled": true,
"formatWithErrors": false,
"indentStyle": "space",
"indentWidth": 2,
"lineWidth": 100,
"lineEnding": "lf"
},
"assist": {
"actions": {
"source": {
"noDuplicateClasses": "on",
"organizeImports": {
"level": "on",
"options": {
"groups": [
{
"type": false,
"source": ["react", "react-dom", "react/**", "react-dom/**"]
},
["react", "react-dom", "react/**", "react-dom/**"],
":BLANK_LINE:",
{
"type": false,
"source": [":NODE:", ":BUN:"]
},
[":NODE:", ":BUN:"],
":BLANK_LINE:",
{
"type": false,
"source": ["**"]
},
[
"**",
"!./**",
"!../**",
"!src/**",
"!test/**",
"!examples/**",
"!react",
"!react-dom",
"!react/**",
"!react-dom/**"
],
":BLANK_LINE:",
{
"type": false,
"source": ["src/**", "test/**", "examples/**"]
},
["src/**", "test/**", "examples/**"],
":BLANK_LINE:",
{
"type": false,
"source": ["./**", "../**"]
},
["./**", "../**"]
]
}
}
}
}
},
"linter": {
"enabled": true,
"rules": {
"preset": "none",
"complexity": {
"noUselessConstructor": "error",
"noUselessRename": "error",
"noUselessTernary": "error",
"noUselessFragments": "error",
"useOptionalChain": "off",
"noExcessiveCognitiveComplexity": {
"level": "warn",
"options": {
"maxAllowedComplexity": 30
}
}
},
"correctness": {
"noUnusedVariables": "error",
"noUnusedImports": "error",
"useExhaustiveDependencies": "error",
"noUnusedFunctionParameters": "error",
"useJsxKeyInIterable": "error",
"useIsNan": "error"
},
"style": {
"noEnum": "error",
"noNegationElse": "error",
"useConst": "error",
"useBlockStatements": "error",
"useShorthandAssign": "off",
"useShorthandFunctionType": "off",
"useTemplate": "off",
"useNumberNamespace": "off",
"useSingleVarDeclarator": "off",
"useImportType": "off",
"useNodejsImportProtocol": "off",
"noNonNullAssertion": "off",
"noRestrictedGlobals": {
"level": "error",
"options": {
"deniedGlobals": {
"fetch": "Use fetchWithProxy() instead of global fetch()."
}
}
},
"noRestrictedImports": {
"level": "error",
"options": {
"paths": {
"node-fetch": "Use fetchWithProxy() (do not import node-fetch directly).",
"undici": {
"importNames": ["fetch", "default"],
"message": "Use fetchWithProxy() instead of undici.fetch."
},
"cross-fetch": "Use fetchWithProxy() instead."
},
"patterns": [{ "group": ["whatwg-fetch", "isomorphic-fetch"] }]
}
}
},
"suspicious": {
"noAsyncPromiseExecutor": "error",
"noDebugger": "error",
"noExplicitAny": "error",
"noArrayIndexKey": "off",
"noCommentText": "off",
"noConfusingVoidType": "error",
"noDuplicateCase": "error",
"noDuplicateClassMembers": "error",
"noDuplicateElseIf": "error",
"noDuplicateJsxProps": "error",
"noDuplicateObjectKeys": "error",
"noDuplicateParameters": "error",
"noDuplicateTestHooks": "error",
"noFocusedTests": "error",
"noSkippedTests": "error",
"noRedundantUseStrict": "error",
"noThenProperty": "error",
"useErrorMessage": "warn",
"useIterableCallbackReturn": "off",
"noSelfCompare": "error"
},
"performance": {
"noDelete": "off",
"noBarrelFile": "off",
"noReExportAll": "off"
},
"a11y": {
"preset": "none",
"useButtonType": "off"
},
"nursery": {
"noFloatingPromises": "error",
"noMisusedPromises": "error",
"noUselessTypeConversion": "error",
"noIdenticalTestTitle": "error",
"useReduceTypeParameter": "warn"
}
}
},
"javascript": {
"formatter": {
"enabled": true,
"quoteStyle": "single",
"jsxQuoteStyle": "double",
"trailingCommas": "all",
"semicolons": "always",
"arrowParentheses": "always",
"bracketSpacing": true,
"bracketSameLine": false,
"quoteProperties": "asNeeded",
"attributePosition": "auto"
},
"parser": {
"unsafeParameterDecoratorsEnabled": true
},
"globals": [
"process",
"Buffer",
"__dirname",
"__filename",
"console",
"global",
"require",
"module",
"exports"
]
},
"css": {
"formatter": {
"enabled": false
}
},
"overrides": [
{
"includes": [
"examples/config-multi-turn/prompt.json",
"examples/openai-chat-history/prompt.json"
],
"linter": {
"enabled": false
},
"formatter": {
"enabled": false
}
},
{
"includes": ["examples/provider-custom/basic/vercelAiSdkExample.js"],
"linter": {
"enabled": false
},
"formatter": {
"enabled": false
}
},
{
"includes": [".jest/**/*.js"],
"linter": {
"enabled": false
},
"formatter": {
"enabled": false
}
},
{
"includes": ["*.mdc"],
"formatter": {
"enabled": false
}
},
{
"includes": ["*.j2"],
"formatter": {
"enabled": false
}
},
{
"includes": ["test/**/*", "**/*.test.ts", "**/*.test.tsx", "**/*.spec.ts", "**/*.spec.tsx"],
"linter": {
"rules": {
"correctness": {
"noUnusedVariables": "error"
},
"style": {
"noRestrictedGlobals": "off"
},
"suspicious": {
"noExplicitAny": "off"
},
"nursery": {
"noFloatingPromises": "off"
}
}
}
},
{
"includes": [
"*.js",
"*.jsx",
"*.ts",
"*.tsx",
"*.mjs",
"*.cjs",
"**/*.js",
"**/*.jsx",
"**/*.ts",
"**/*.tsx",
"**/*.mjs",
"**/*.cjs"
],
"plugins": ["./tools/biome/no-direct-process-env-mutation.grit"]
},
{
"includes": ["src/app/**/*"],
"linter": {
"rules": {
"style": {
"noRestrictedGlobals": "off"
},
"performance": {
"noBarrelFile": "off",
"noReExportAll": "off"
},
"nursery": {
"noFloatingPromises": "off"
}
}
}
},
{
"includes": [
"src/providers/**/*",
"src/redteam/**/*",
"src/util/**/*",
"src/commands/**/*",
"src/node/doEval.ts",
"src/contracts/**/*",
"src/types/**/*",
"src/tracing/**/*"
],
"linter": {
"rules": {
"suspicious": {
"noExplicitAny": "off"
}
}
}
},
{
"includes": ["examples/**/*", "site/**/*"],
"linter": {
"rules": {
"preset": "none",
"correctness": {
"noUnusedImports": "off",
"noUnusedVariables": "off",
"noUnusedFunctionParameters": "off"
},
"style": {
"noRestrictedGlobals": "off",
"useBlockStatements": "off"
},
"suspicious": {
"noExplicitAny": "off"
},
"performance": {
"noBarrelFile": "off",
"noReExportAll": "off"
},
"nursery": {
"noFloatingPromises": "off"
}
}
}
}
]
}