chore(root): scaffold monorepo — Phase 0 complete

This commit is contained in:
Joey Yakimowich-Payne 2026-04-16 13:32:21 -06:00
commit f3a38d44be
No known key found for this signature in database
32 changed files with 4659 additions and 0 deletions

38
eslint.config.js Normal file
View 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",
},
],
},
}
);