adc62957a7
CI / Multi-repo Path Gate (AST-grep) (windows-latest) (push) Has been cancelled
CI / Version Consistency Check (push) Has been cancelled
CI / npm pack + install test (push) Has been cancelled
CI / Lint & Type Check (push) Has been cancelled
CI / Test (push) Has been cancelled
CI / Test (Windows path suite) (push) Has been cancelled
CI / Build (push) Has been cancelled
CI / No Committed Build Artifacts (push) Has been cancelled
CI / Multi-repo Path Gate (AST-grep) (ubuntu-latest) (push) Has been cancelled
Upgrade Test / omc update + session-start hook (push) Has been cancelled
59 lines
2.1 KiB
YAML
59 lines
2.1 KiB
YAML
# AST-grep rules for detecting raw .omc path constructions that bypass resolveSessionStatePaths.
|
|
# Any match outside the whitelisted files is a contract violation.
|
|
# Whitelist is enforced in check-multirepo-paths.mjs, not here.
|
|
|
|
rules:
|
|
- id: join-omc-literal-single
|
|
language: TypeScript
|
|
rule:
|
|
pattern: join($_, '.omc', $$$)
|
|
message: "Raw join(..., '.omc', ...) detected — use resolveSessionStatePaths() or getOmcRoot() instead"
|
|
|
|
- id: join-omc-literal-double
|
|
language: TypeScript
|
|
rule:
|
|
pattern: join($_, ".omc", $$$)
|
|
message: "Raw join(..., \".omc\", ...) detected — use resolveSessionStatePaths() or getOmcRoot() instead"
|
|
|
|
- id: template-omc-forward-slash
|
|
language: TypeScript
|
|
rule:
|
|
pattern: "`${$_}/.omc/$$$`"
|
|
message: "Raw template `.../.omc/...` detected — use resolveSessionStatePaths() or getOmcRoot() instead"
|
|
|
|
- id: template-omc-backslash
|
|
language: TypeScript
|
|
rule:
|
|
pattern: "`${$_}\\.omc\\$$$`"
|
|
message: "Raw template `...\\.omc\\...` detected — use resolveSessionStatePaths() or getOmcRoot() instead"
|
|
|
|
- id: path-join-omc
|
|
language: TypeScript
|
|
rule:
|
|
pattern: path.join($_, '.omc', $$$)
|
|
message: "Raw path.join(..., '.omc', ...) detected — use resolveSessionStatePaths() or getOmcRoot() instead"
|
|
|
|
- id: join-omc-literal-single-js
|
|
language: JavaScript
|
|
rule:
|
|
pattern: join($_, '.omc', $$$)
|
|
message: "Raw join(..., '.omc', ...) detected — use resolveOmcStateRoot() instead"
|
|
|
|
- id: join-omc-literal-double-js
|
|
language: JavaScript
|
|
rule:
|
|
pattern: join($_, ".omc", $$$)
|
|
message: "Raw join(..., \".omc\", ...) detected — use resolveOmcStateRoot() instead"
|
|
|
|
- id: template-omc-forward-slash-js
|
|
language: JavaScript
|
|
rule:
|
|
pattern: "`${$_}/.omc/$$$`"
|
|
message: "Raw template `.../.omc/...` detected — use resolveOmcStateRoot() instead"
|
|
|
|
- id: path-join-omc-js
|
|
language: JavaScript
|
|
rule:
|
|
pattern: path.join($_, '.omc', $$$)
|
|
message: "Raw path.join(..., '.omc', ...) detected — use resolveOmcStateRoot() instead"
|