mirror of
https://github.com/civitai/civitai.git
synced 2026-09-20 22:08:18 +08:00
e83150e84f
VS Code was watching and indexing every SvelteKit build artifact: `files.watcherExclude` covered `node_modules`, `.next` and `dist` but was never updated when the SvelteKit apps landed, so `.svelte-kit` (947 files) and `apps/*/build` (845) were unexcluded. A build writes ~1,800 files / 25MB into the workspace. `defender-exclusions.ps1` defaulted to `C:\Dev\Repos\work`, which is not where this repo lives. Add-MpPreference accepts a nonexistent path, so run with defaults it reported success and excluded nothing. It now resolves the repo from its own location and throws rather than silently no-op when the root is missing. Hook changes: drop the `svelte-kit sync` / `pnpm check` guard (sync alone is cheap - 121 generated files, not the ~690 the docs claim) and guard `build` instead, which is the expensive one and is not a check. Set to ask rather than block: diagnosing a build-only failure and producing a real artifact are both legitimate. check-svelte-ts.mjs removes the main reason to run a build at all. Svelte 5 strips the type annotation from `(n?: number)` but leaves the `?`, so rollup rejects it while typecheck, dev and every review agent pass. It now fails on write. Verified against all 148 committed .svelte files: catches the defect, zero false positives (the first version had five, all `?` in type position). Adds retool-fidelity-review, the export-vs-build pass. It was prose in the skill that got performed by hand, differently each time, and skipped twice - despite being the only review that can see a capability nobody wrote. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
177 lines
4.3 KiB
JSON
177 lines
4.3 KiB
JSON
{
|
|
"editor.formatOnSave": false,
|
|
"editor.codeActionsOnSave": {
|
|
"source.fixAll.eslint": "always",
|
|
},
|
|
"eslint.format.enable": true,
|
|
"eslint.validate": [
|
|
"javascript",
|
|
"javascriptreact",
|
|
"typescript",
|
|
"typescriptreact"
|
|
],
|
|
"eslint.workingDirectories": [{ "mode": "auto" }],
|
|
"editor.tabSize": 2,
|
|
"files.eol": "\n",
|
|
"[sql]": {
|
|
"editor.formatOnSave": false
|
|
},
|
|
// Forward slashes resolve on every platform; backslashes only work on Windows.
|
|
"js/ts.tsdk.path": "node_modules/typescript/lib",
|
|
// Without a prompt, VS Code keeps using its bundled TypeScript until someone runs
|
|
// "Select TypeScript Version" by hand, so the tsdk path above does nothing for teammates.
|
|
"js/ts.tsdk.promptToUseWorkspaceVersion": true,
|
|
"[typescriptreact]": {
|
|
"editor.defaultFormatter": "esbenp.prettier-vscode"
|
|
},
|
|
"js/ts.preferences.autoImportFileExcludePatterns": ["@prisma/client"],
|
|
"makefile.configureOnOpen": false,
|
|
"chat.agent.enabled": true,
|
|
"mcp": {
|
|
"servers": {
|
|
"Context7": {
|
|
"type": "stdio",
|
|
"command": "npx",
|
|
"args": ["-y", "@upstash/context7-mcp@latest"]
|
|
}
|
|
}
|
|
},
|
|
"github.copilot.chat.codeGeneration.instructions": [
|
|
{
|
|
"file": ".vscode/rules/global.md"
|
|
},
|
|
{
|
|
"file": ".vscode/rules/nextjs.md"
|
|
},
|
|
{
|
|
"file": ".vscode/rules/mantine-migration.md"
|
|
},
|
|
{
|
|
"file": ".vscode/rules/migrate-createStyles.md"
|
|
}
|
|
],
|
|
"cssVariables.lookupFiles": [
|
|
"**/*.css",
|
|
"**/*.scss",
|
|
"**/*.sass",
|
|
"**/*.less",
|
|
"node_modules/@mantine/core/styles.css"
|
|
],
|
|
"sqltools.connections": [
|
|
{
|
|
"previewLimit": 50,
|
|
"server": "db",
|
|
"port": 5432,
|
|
"driver": "PostgreSQL",
|
|
"name": "db",
|
|
"database": "civitai",
|
|
"username": "postgres",
|
|
"password": "postgres"
|
|
},
|
|
{
|
|
"server": "http://clickhouse",
|
|
"port": 8123,
|
|
"database": "default",
|
|
"username": "default",
|
|
"requestTimeout": 30000,
|
|
"enableTls": false,
|
|
"previewLimit": 50,
|
|
"driver": "ClickHouse",
|
|
"name": "clickhouse",
|
|
"password": ""
|
|
}
|
|
],
|
|
"files.associations": {
|
|
"*.md": "markdown"
|
|
},
|
|
"highlight.regexes": {
|
|
"(^|\\s)(@dev\\s*[:-]\\s*\\*)(.*)$": {
|
|
"filterFileRegex": ".*\\.(md|markdown|mdx)$",
|
|
"decorations": [
|
|
{},
|
|
{
|
|
"backgroundColor": "rgba(255, 235, 59, 0.3)",
|
|
"color": "#50FA7B",
|
|
"fontWeight": "bold",
|
|
"borderRadius": "3px",
|
|
"border": "1px solid rgba(255, 235, 59, 0.8)"
|
|
},
|
|
{
|
|
"color": "#50FA7B"
|
|
}
|
|
]
|
|
},
|
|
"(^|\\s)(@dev\\s*[:-]\\s*)(.*)$": {
|
|
"filterFileRegex": ".*\\.(md|markdown|mdx)$",
|
|
"decorations": [
|
|
{},
|
|
{
|
|
"backgroundColor": "rgba(80, 250, 123, 0.15)",
|
|
"color": "#50FA7B",
|
|
"fontWeight": "bold"
|
|
},
|
|
{
|
|
"color": "#50FA7B"
|
|
}
|
|
]
|
|
},
|
|
"(^|\\s)(@ai\\s*[:-]\\s*\\*)(.*)$": {
|
|
"filterFileRegex": ".*\\.(md|markdown|mdx)$",
|
|
"decorations": [
|
|
{},
|
|
{
|
|
"backgroundColor": "rgba(255, 235, 59, 0.3)",
|
|
"color": "#C678DD",
|
|
"fontWeight": "bold",
|
|
"borderRadius": "3px",
|
|
"border": "1px solid rgba(255, 235, 59, 0.8)"
|
|
},
|
|
{
|
|
"color": "#C678DD"
|
|
}
|
|
]
|
|
},
|
|
"(^|\\s)(@ai\\s*[:-]\\s*)(.*)$": {
|
|
"filterFileRegex": ".*\\.(md|markdown|mdx)$",
|
|
"decorations": [
|
|
{},
|
|
{
|
|
"backgroundColor": "rgba(198, 120, 221, 0.15)",
|
|
"color": "#C678DD",
|
|
"fontWeight": "bold"
|
|
},
|
|
{
|
|
"color": "#C678DD"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"highlight.maxMatches": 250,
|
|
"highlight.decorations": {
|
|
"rangeBehavior": 1
|
|
},
|
|
"highlight.regexFlags": "gm",
|
|
"terminal.integrated.macOptionIsMeta": true,
|
|
"files.watcherExclude": {
|
|
"**/node_modules/**": true,
|
|
"**/.next/**": true,
|
|
"**/dist/**": true,
|
|
"**/.git/objects/**": true,
|
|
"**/.git/subtree-cache/**": true,
|
|
"**/.svelte-kit/**": true,
|
|
"**/apps/*/build/**": true,
|
|
"**/.turbo/**": true,
|
|
"**/.vite/**": true,
|
|
"**/playwright-report/**": true,
|
|
"**/test-results/**": true
|
|
},
|
|
"search.exclude": {
|
|
"**/.svelte-kit": true,
|
|
"**/apps/*/build": true,
|
|
"**/.turbo": true
|
|
},
|
|
"files.exclude": {
|
|
"**/.svelte-kit": true
|
|
}
|
|
}
|