feat(core-eslint): rule no-direct-socket-io

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-05-08 21:59:52 +02:00
parent 928357f221
commit 77467de702
4 changed files with 74 additions and 1 deletions

View File

@@ -4,6 +4,7 @@ import tseslint from "typescript-eslint";
import turboPlugin from "eslint-plugin-turbo";
import boundaries from "eslint-plugin-boundaries";
import globals from "globals";
import noDirectSocketIO from "./rules/no-direct-socket-io.js";
export default [
{ ignores: ["dist/**", "node_modules/**", ".next/**", ".turbo/**", "storybook-static/**"] },
@@ -169,4 +170,13 @@ export default [
],
},
},
// R2 — `socket.io` and `socket.io-client` must not be imported outside
// core-realtime/src/ and apps/*/server.ts. Use @repo/core-realtime helpers.
{
files: ["**/*.{ts,tsx,mjs,cjs,js}"],
plugins: { "repo-rules": { rules: { "no-direct-socket-io": noDirectSocketIO } } },
rules: {
"repo-rules/no-direct-socket-io": "error",
},
},
];