mirror of
https://github.com/diegosouzapw/OmniRoute.git
synced 2026-09-14 02:42:24 +03:00
* feat(ui): enable React Compiler (#67) Enable reactCompiler: true in next.config.mjs (Next 16 + React 19.2.8). This automates memoization at build time, removing manual useCallback/useMemo debt (591 + 283 instances respectively) and preventing stale-closure bugs. Test results (pre-existing failures unchanged): vitest UI: 282/295 files pass (13 fail = missing router/ReactFlow mocks) vitest: 1805/1857 tests pass (52 fail = same pre-existing mock issues) node:test: api/services/db all pass (except platform-specific serviceSupervisorSpawnError — Windows spawn("ls") issue) No new failures introduced by the compiler transform. Optional cleanup: remove now-redundant useCallback/useMemo in hot components. * fix(build): add babel-plugin-react-compiler peer dependency (#67) React Compiler (reactCompiler: true in next.config.mjs) requires babel-plugin-react-compiler as an explicit peer dependency — Next.js declares it as optional ("*") and does not auto-install it. Installed babel-plugin-react-compiler@1.0.0 as a devDependency. Resolves correctly from both the project root and the next package context (Turbopack resolution path). * fix(ci): allowlist babel-plugin-react-compiler for React Compiler The React Compiler peer is a real npm package (facebook/react, MIT) required by Next 16 `reactCompiler: true`. Adding it to the anti-slopsquat allowlist unblocks check:deps and the 6A.8 unit-test gate. Co-authored-by: diegosouzapw <8016841+diegosouzapw@users.noreply.github.com> * fix(ci): drop unused collectSSE helper that trips ESLint The helper was leftover from #12151 and fails the absolute lint:json --max-warnings 0 gate on every PR that includes it. Co-authored-by: diegosouzapw <8016841+diegosouzapw@users.noreply.github.com> --------- Co-authored-by: diegosouzapw <8016841+diegosouzapw@users.noreply.github.com> Co-authored-by: WebPerson <jonlwheat2-gif@users.noreply.github.com>
166 lines
3.9 KiB
JSON
166 lines
3.9 KiB
JSON
{
|
|
"_comment": "Allowlist anti-slopsquatting (check-deps.mjs). Toda dep nova exige adicao EXPLICITA aqui apos verificar que e legitima.",
|
|
"_justifications": {
|
|
"@testing-library/dom": "Peer dep obrigatoria de @testing-library/react v16 (adicionada no PR #11224); Refs #9985.",
|
|
"@testing-library/user-event": "Utilitario oficial do ecossistema testing-library para testes de UI (adicionada no PR #11224); Refs #9985.",
|
|
"babel-plugin-react-compiler": "Official React Compiler Babel plugin (facebook/react, MIT). Required peer of Next.js 16 `reactCompiler: true`; Next declares it optional (`*`) and does not auto-install. Added by PR #11783 / issue #67.",
|
|
"eslint-plugin-react-hooks": "React Hooks lint rules (set-state-in-effect, immutability, refs, purity) pinned at 7.0.1 by the release/v3.8.51 cycle; the 224 findings it raised are tracked in #11924. Refs #11924."
|
|
},
|
|
"allowed": [
|
|
"@atjsh/llmlingua-2",
|
|
"@aws-sdk/client-bedrock-runtime",
|
|
"@axe-core/playwright",
|
|
"@cyclonedx/cyclonedx-npm",
|
|
"@dnd-kit/core",
|
|
"@dnd-kit/sortable",
|
|
"@dnd-kit/utilities",
|
|
"@eslint/compat",
|
|
"@huggingface/transformers",
|
|
"@lobehub/icons",
|
|
"@modelcontextprotocol/sdk",
|
|
"@monaco-editor/react",
|
|
"@ngrok/ngrok",
|
|
"@opencode-ai/plugin",
|
|
"@playwright/test",
|
|
"@size-limit/file",
|
|
"@stryker-mutator/core",
|
|
"@stryker-mutator/tap-runner",
|
|
"@swc/helpers",
|
|
"@tailwindcss/postcss",
|
|
"@testing-library/dom",
|
|
"@testing-library/jest-dom",
|
|
"@testing-library/react",
|
|
"@testing-library/user-event",
|
|
"@toon-format/toon",
|
|
"@types/better-sqlite3",
|
|
"@types/bun",
|
|
"@types/mdx",
|
|
"@types/node",
|
|
"@types/react",
|
|
"@types/react-dom",
|
|
"@types/safe-regex",
|
|
"@types/ws",
|
|
"@vitejs/plugin-react",
|
|
"@xyflow/react",
|
|
"ajv",
|
|
"ajv-formats",
|
|
"axios",
|
|
"babel-plugin-react-compiler",
|
|
"bcryptjs",
|
|
"better-sqlite3",
|
|
"bottleneck",
|
|
"bun",
|
|
"c8",
|
|
"clsx",
|
|
"commander",
|
|
"concurrently",
|
|
"cron-parser",
|
|
"cross-env",
|
|
"csv-stringify",
|
|
"ctrf",
|
|
"dompurify",
|
|
"dpdm",
|
|
"electron",
|
|
"electron-builder",
|
|
"electron-updater",
|
|
"esbuild",
|
|
"eslint",
|
|
"eslint-config-next",
|
|
"eslint-plugin-react-hooks",
|
|
"eslint-plugin-sonarjs",
|
|
"espree",
|
|
"express",
|
|
"fast-check",
|
|
"fetch-socks",
|
|
"fflate",
|
|
"fumadocs-core",
|
|
"fumadocs-mdx",
|
|
"fumadocs-ui",
|
|
"glob",
|
|
"http-proxy-middleware",
|
|
"https-proxy-agent",
|
|
"httpyac",
|
|
"husky",
|
|
"ink",
|
|
"ink-spinner",
|
|
"ink-text-input",
|
|
"ioredis",
|
|
"jose",
|
|
"js-tiktoken",
|
|
"js-yaml",
|
|
"jscpd",
|
|
"jsdom",
|
|
"jsonc-parser",
|
|
"junit-to-ctrf",
|
|
"keytar",
|
|
"knip",
|
|
"license-checker-rseidelsohn",
|
|
"lint-staged",
|
|
"lockfile-lint",
|
|
"lowdb",
|
|
"lucide-react",
|
|
"marked",
|
|
"marked-terminal",
|
|
"material-symbols",
|
|
"mermaid",
|
|
"monaco-editor",
|
|
"next",
|
|
"next-intl",
|
|
"next-themes",
|
|
"node-loader",
|
|
"node-machine-id",
|
|
"omniglyph",
|
|
"onnxruntime-node",
|
|
"open",
|
|
"opencode-ai",
|
|
"ora",
|
|
"parse5",
|
|
"pino",
|
|
"pino-abstract-transport",
|
|
"pino-pretty",
|
|
"playwright",
|
|
"playwright-core",
|
|
"playwright-ctrf-json-reporter",
|
|
"prettier",
|
|
"promptfoo",
|
|
"react",
|
|
"react-dom",
|
|
"react-is",
|
|
"react18-json-view",
|
|
"react-markdown",
|
|
"react-reconciler",
|
|
"recharts",
|
|
"safe-regex",
|
|
"selfsigned",
|
|
"sharp",
|
|
"size-limit",
|
|
"smol-toml",
|
|
"socks",
|
|
"sql.js",
|
|
"sqlite-vec",
|
|
"tailwind-merge",
|
|
"tailwindcss",
|
|
"tiktoken",
|
|
"tls-client-node",
|
|
"tsup",
|
|
"tsx",
|
|
"turndown",
|
|
"turndown-plugin-gfm",
|
|
"type-coverage",
|
|
"typescript",
|
|
"typescript-eslint",
|
|
"undici",
|
|
"update-notifier",
|
|
"uuid",
|
|
"vitest",
|
|
"wait-on",
|
|
"wreq-js",
|
|
"ws",
|
|
"wtfnode",
|
|
"xxhash-wasm",
|
|
"yazl",
|
|
"zod",
|
|
"zustand"
|
|
]
|
|
}
|