chore(root): scaffold monorepo — Phase 0 complete
This commit is contained in:
commit
f3a38d44be
32 changed files with 4659 additions and 0 deletions
38
eslint.config.js
Normal file
38
eslint.config.js
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
import tseslint from "typescript-eslint";
|
||||
|
||||
export default tseslint.config(
|
||||
{
|
||||
ignores: ["**/dist/**", "**/node_modules/**", "**/*.js", "**/*.mjs"],
|
||||
},
|
||||
...tseslint.configs.recommended,
|
||||
{
|
||||
rules: {
|
||||
"@typescript-eslint/no-explicit-any": "error",
|
||||
"@typescript-eslint/no-unused-vars": ["error", { argsIgnorePattern: "^_" }],
|
||||
},
|
||||
},
|
||||
// Engine RHS purity: ban impure globals in rete/src
|
||||
{
|
||||
files: ["packages/rete/src/**/*.ts"],
|
||||
rules: {
|
||||
"no-restricted-globals": [
|
||||
"error",
|
||||
{ name: "Date", message: "RHS purity: use session.now() instead" },
|
||||
{ name: "performance", message: "RHS purity: forbidden in engine" },
|
||||
{ name: "setTimeout", message: "RHS purity: forbidden in engine" },
|
||||
{ name: "setInterval", message: "RHS purity: forbidden in engine" },
|
||||
{ name: "clearTimeout", message: "RHS purity: forbidden in engine" },
|
||||
{ name: "clearInterval", message: "RHS purity: forbidden in engine" },
|
||||
{ name: "fetch", message: "RHS purity: forbidden in engine" },
|
||||
{ name: "console", message: "RHS purity: use debug flag instead" },
|
||||
],
|
||||
"no-restricted-syntax": [
|
||||
"error",
|
||||
{
|
||||
selector: "MemberExpression[object.name='Math'][property.name='random']",
|
||||
message: "RHS purity: Math.random() forbidden in engine",
|
||||
},
|
||||
],
|
||||
},
|
||||
}
|
||||
);
|
||||
Loading…
Add table
Add a link
Reference in a new issue