···44message: Public modules must not import private internal/runtime/domain modules directly.
55files:
66 - "**/src/public/**/*.ts"
77+ignores:
88+ - "**/*.test.ts"
79rule:
810 any:
99- - pattern: "import $A from '../internal/$B'"
1010- - pattern: "import $A from '../runtime/$B'"
1111- - pattern: "import $A from '../domain/$B'"
1212- - pattern: "import { $$$A } from '../internal/$B'"
1313- - pattern: "import { $$$A } from '../runtime/$B'"
1414- - pattern: "import { $$$A } from '../domain/$B'"
1111+ - pattern: 'import $$$A from "$MODULE"'
1212+ - pattern: "import '$MODULE'"
1313+ - pattern: 'import "$MODULE"'
1414+ - pattern: 'export * from "$MODULE"'
1515+ - pattern: 'export { $$$A } from "$MODULE"'
1616+ - pattern: 'export type { $$$A } from "$MODULE"'
1717+constraints:
1818+ MODULE:
1919+ regex: "(^|/)(internal|runtime|domain)/"
+3-1
.ast-grep/rules/no-raw-promise.yml
···33severity: error
44message: Raw Promise construction is disallowed; use Effect abstractions.
55rule:
66- pattern: "new Promise($A)"
66+ any:
77+ - pattern: "new Promise<$T>($A)"
88+ - pattern: "new Promise($A)"