@mmnto/cli 1.104.0 → 1.106.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/commands/docs.test.js +1 -0
- package/dist/commands/docs.test.js.map +1 -1
- package/dist/commands/lint-staleness.d.ts +4 -2
- package/dist/commands/lint-staleness.d.ts.map +1 -1
- package/dist/commands/lint-staleness.js +4 -2
- package/dist/commands/lint-staleness.js.map +1 -1
- package/dist/commands/lint.d.ts.map +1 -1
- package/dist/commands/lint.js +38 -1
- package/dist/commands/lint.js.map +1 -1
- package/dist/commands/lint.test.js +72 -0
- package/dist/commands/lint.test.js.map +1 -1
- package/dist/commands/mail-degraded-e4.test.d.ts +43 -0
- package/dist/commands/mail-degraded-e4.test.d.ts.map +1 -0
- package/dist/commands/mail-degraded-e4.test.js +317 -0
- package/dist/commands/mail-degraded-e4.test.js.map +1 -0
- package/dist/commands/run-compiled-rules.d.ts +11 -1
- package/dist/commands/run-compiled-rules.d.ts.map +1 -1
- package/dist/commands/run-compiled-rules.js +271 -14
- package/dist/commands/run-compiled-rules.js.map +1 -1
- package/dist/commands/run-compiled-rules.test.js +540 -1
- package/dist/commands/run-compiled-rules.test.js.map +1 -1
- package/dist/commands/shield-learn.test.js +1 -0
- package/dist/commands/shield-learn.test.js.map +1 -1
- package/dist/utils/pilot.test.js +1 -0
- package/dist/utils/pilot.test.js.map +1 -1
- package/dist/utils.test.js +1 -0
- package/dist/utils.test.js.map +1 -1
- package/package.json +2 -2
|
@@ -1,5 +1,211 @@
|
|
|
1
1
|
// ─── Constants ──────────────────────────────────────
|
|
2
2
|
const COMPILED_RULES_FILE = 'compiled-rules.json';
|
|
3
|
+
// ─── Corpus-bearing derivation (mmnto-ai/totem-strategy#971, Prop 309) ─
|
|
4
|
+
/**
|
|
5
|
+
* Count the lesson-corpus files a repo carries on disk: every existing file
|
|
6
|
+
* matched by a lesson-kind ingest target's glob in the loaded totem config,
|
|
7
|
+
* deduplicated across targets.
|
|
8
|
+
*
|
|
9
|
+
* This is the discriminator {@link runCompiledRules} uses when zero compiled
|
|
10
|
+
* rules load. A count > 0 means the repo genuinely HAS lessons, so a
|
|
11
|
+
* zero-rules run has silently disarmed the enforcement gate and must fail loud
|
|
12
|
+
* (mmnto-ai/totem-strategy#971, Prop 309). A count of 0 is a legitimate
|
|
13
|
+
* empty-corpus / early-adoption repo that skips (mmnto-ai/totem#1831).
|
|
14
|
+
*
|
|
15
|
+
* Config-driven — the lesson paths come from `config.targets`, never a
|
|
16
|
+
* hardcoded `.totem/lessons` (`totem describe`'s "Lessons: N" reads the fixed
|
|
17
|
+
* dir; this derivation honors a config that relocates the corpus). Pure
|
|
18
|
+
* filesystem scan with NO git spawn, so it stays Windows-temp-dir safe under
|
|
19
|
+
* test: each target's static path prefix bounds the walk, and candidate paths
|
|
20
|
+
* are matched with the shared glob matcher.
|
|
21
|
+
*/
|
|
22
|
+
async function countLessonCorpusFiles(config, projectRoot) {
|
|
23
|
+
const fs = await import('node:fs');
|
|
24
|
+
const path = await import('node:path');
|
|
25
|
+
const { matchesGlob } = await import('@mmnto/totem');
|
|
26
|
+
const WILDCARD = /[*?{}[\]]/;
|
|
27
|
+
// Bound the walk so a broad lesson glob can never blow up on heavy trees. A
|
|
28
|
+
// non-terminal wildcard (e.g. '.totem/*/lessons/*.md') collapses the static
|
|
29
|
+
// prefix to a shallow dir, so the heavy subtrees lessons never live in —
|
|
30
|
+
// embedding stores and build output — are skipped by name alongside the
|
|
31
|
+
// usual suspects.
|
|
32
|
+
const SKIP_DIRS = new Set(['.git', 'node_modules', '.lancedb', 'dist']);
|
|
33
|
+
const toPosix = (p) => p.replace(/\\/g, '/');
|
|
34
|
+
const matched = new Set();
|
|
35
|
+
for (const target of config.targets) {
|
|
36
|
+
if (target.type !== 'lesson')
|
|
37
|
+
continue;
|
|
38
|
+
const glob = target.glob;
|
|
39
|
+
// Concrete path (no wildcard) — a direct existence check (e.g. a single
|
|
40
|
+
// aggregated `.totem/lessons.md`).
|
|
41
|
+
if (!WILDCARD.test(glob)) {
|
|
42
|
+
try {
|
|
43
|
+
if (fs.statSync(path.join(projectRoot, glob)).isFile())
|
|
44
|
+
matched.add(toPosix(glob));
|
|
45
|
+
// totem-context: best-effort — an absent concrete lesson path is simply not counted; ENOENT here is expected, never surfaced.
|
|
46
|
+
}
|
|
47
|
+
catch {
|
|
48
|
+
// path absent — contributes nothing
|
|
49
|
+
}
|
|
50
|
+
continue;
|
|
51
|
+
}
|
|
52
|
+
// Wildcard glob — walk the static prefix directory (segments before the
|
|
53
|
+
// first wildcard segment) and match each candidate against the full config
|
|
54
|
+
// glob. The prefix scopes the walk to the lessons subtree.
|
|
55
|
+
const segments = glob.split('/');
|
|
56
|
+
const firstWildcard = segments.findIndex((s) => WILDCARD.test(s));
|
|
57
|
+
const baseRel = segments.slice(0, firstWildcard).join('/');
|
|
58
|
+
const stack = [baseRel ? path.join(projectRoot, baseRel) : projectRoot];
|
|
59
|
+
while (stack.length > 0) {
|
|
60
|
+
const dir = stack.pop();
|
|
61
|
+
let entries;
|
|
62
|
+
try {
|
|
63
|
+
entries = fs.readdirSync(dir, { withFileTypes: true });
|
|
64
|
+
// totem-context: best-effort — an unreadable/absent lesson subtree contributes nothing rather than throwing; this cold-path scan must never crash lint.
|
|
65
|
+
}
|
|
66
|
+
catch {
|
|
67
|
+
continue;
|
|
68
|
+
}
|
|
69
|
+
for (const entry of entries) {
|
|
70
|
+
const abs = path.join(dir, entry.name);
|
|
71
|
+
if (entry.isDirectory()) {
|
|
72
|
+
if (!SKIP_DIRS.has(entry.name))
|
|
73
|
+
stack.push(abs);
|
|
74
|
+
}
|
|
75
|
+
else if (entry.isFile()) {
|
|
76
|
+
const rel = toPosix(path.relative(projectRoot, abs));
|
|
77
|
+
if (matchesGlob(rel, glob))
|
|
78
|
+
matched.add(rel);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
return matched.size;
|
|
84
|
+
}
|
|
85
|
+
// ─── Target-mismatch derivation (mmnto-ai/totem-strategy#971, Prop 309 Class 7) ─
|
|
86
|
+
/**
|
|
87
|
+
* Hard-error when a loaded AST rule can never execute because NONE of its
|
|
88
|
+
* declared `fileGlobs` targets an extension the engine has a registered
|
|
89
|
+
* Tree-sitter language for (mmnto-ai/totem-strategy#971, Prop 309 Class 7).
|
|
90
|
+
*
|
|
91
|
+
* The failure this closes: `resolveAstGrepLangs` (ast-grep-query.ts) silently
|
|
92
|
+
* falls back to `Lang.Tsx` when no glob resolves, so a target-mismatched rule
|
|
93
|
+
* looks healthy at load. It then detonates at RUN time — `rule-engine.ts`'s
|
|
94
|
+
* language check throws `TotemParseError` the first time a diff happens to
|
|
95
|
+
* contain a file the rule's globs match, and that throw escapes the per-file
|
|
96
|
+
* loop and aborts the WHOLE lint. The observed specimen was an `ast-grep` rule
|
|
97
|
+
* whose four globs all pointed at `.json` files, which no language registration
|
|
98
|
+
* covers. Diff-dependent detonation is the worst property: the gate is green on
|
|
99
|
+
* every run until the one run where it isn't.
|
|
100
|
+
*
|
|
101
|
+
* The guard converts that into a deterministic load-time failure. It runs on
|
|
102
|
+
* EVERY invocation regardless of the diff, and — unlike the corpus-bearing gate
|
|
103
|
+
* above — it is deliberately NOT gated on `options.config`. That opt-out exists
|
|
104
|
+
* because zero-rules is genuinely ambiguous (empty-corpus repo vs disarmed gate)
|
|
105
|
+
* and the config is the only discriminator. Target-mismatch is unambiguous from
|
|
106
|
+
* the manifest alone: no discriminator is needed, so there is nothing to opt out
|
|
107
|
+
* of and `shield estimate` gets the same protection. The one escape is the
|
|
108
|
+
* pre-existing `--ast-parse-mode lenient` operator flag (see the branch below),
|
|
109
|
+
* which is opt-in and leaves the strict default fail-closed.
|
|
110
|
+
*
|
|
111
|
+
* Scope matches the abort seam exactly. `rule-engine.ts` searches the
|
|
112
|
+
* `allAstRules` union (Tree-sitter `'ast'` ∪ `'ast-grep'`) for a rule whose
|
|
113
|
+
* globs claim the unparseable file, so BOTH engines are validated here.
|
|
114
|
+
*
|
|
115
|
+
* Two shapes stay permitted:
|
|
116
|
+
*
|
|
117
|
+
* - **Globless rules** (`fileGlobs` absent or empty). The documented
|
|
118
|
+
* `Lang.Tsx` fallback is their intended behavior — many pre-1.16 rules ship
|
|
119
|
+
* unscoped — and `rule-engine.ts` only throws for a rule with non-empty
|
|
120
|
+
* `fileGlobs`, so a globless rule cannot arm the landmine.
|
|
121
|
+
* - **Extensionless positive globs** — a recursive `src/**`, a bare-star
|
|
122
|
+
* leaf, or a brace-set leaf like `.{ts,json}` (glob literals are omitted
|
|
123
|
+
* here because a star-slash pair would close this comment).
|
|
124
|
+
* `TRAILING_EXT_RE` extracts nothing from these, but at run time they can
|
|
125
|
+
* and do match `.ts` files and dispatch correctly. Absence of a trailing
|
|
126
|
+
* extension is absence of evidence, not proof of mismatch — treating it as
|
|
127
|
+
* unresolvable would hard-error legitimately broad rules. A rule is only
|
|
128
|
+
* condemned when EVERY positive glob names a concrete extension and NOT ONE
|
|
129
|
+
* of those extensions resolves.
|
|
130
|
+
*
|
|
131
|
+
* Lifecycle status needs no filtering here: `loadCompiledRules` has already
|
|
132
|
+
* dropped `archived` / `untested-against-codebase` / `pending-verification`
|
|
133
|
+
* (compiler.ts), so an archived specimen never reaches this function — which is
|
|
134
|
+
* exactly why archiving is the offered remedy.
|
|
135
|
+
*
|
|
136
|
+
* Pack-contributed languages are honored: CLI commands call `bootstrapEngine`
|
|
137
|
+
* (→ `loadInstalledPacks`) before this point, so a pack that registers `.rs`
|
|
138
|
+
* has already populated the registry when the check reads it.
|
|
139
|
+
*/
|
|
140
|
+
async function assertRulesCanTargetTheirGlobs(rules, astParseMode, onWarn) {
|
|
141
|
+
const { extensionToLanguage, registeredExtensions, sanitizeForTerminal, TotemError, TRAILING_EXT_RE, } = await import('@mmnto/totem');
|
|
142
|
+
const offenders = [];
|
|
143
|
+
for (const rule of rules) {
|
|
144
|
+
if (rule.engine !== 'ast-grep' && rule.engine !== 'ast')
|
|
145
|
+
continue;
|
|
146
|
+
const globs = rule.fileGlobs;
|
|
147
|
+
if (!globs || globs.length === 0)
|
|
148
|
+
continue;
|
|
149
|
+
// Negations describe files the rule must NOT match, so they never carry a
|
|
150
|
+
// dispatch target — same skip `resolveAstGrepLangs` performs.
|
|
151
|
+
const positive = globs.filter((g) => typeof g === 'string' && !g.startsWith('!'));
|
|
152
|
+
// An all-negation glob list matches every file (see the zero-match
|
|
153
|
+
// derivation below, where `positive.length === 0` matches unconditionally),
|
|
154
|
+
// so it necessarily reaches resolvable files. Permitted.
|
|
155
|
+
if (positive.length === 0)
|
|
156
|
+
continue;
|
|
157
|
+
const extensions = [];
|
|
158
|
+
let resolvable = false;
|
|
159
|
+
for (const glob of positive) {
|
|
160
|
+
const match = glob.match(TRAILING_EXT_RE);
|
|
161
|
+
if (!match) {
|
|
162
|
+
// Extensionless positive glob — unprovable, therefore permitted.
|
|
163
|
+
resolvable = true;
|
|
164
|
+
break;
|
|
165
|
+
}
|
|
166
|
+
const ext = `.${match[1].toLowerCase()}`;
|
|
167
|
+
if (extensionToLanguage(ext)) {
|
|
168
|
+
resolvable = true;
|
|
169
|
+
break;
|
|
170
|
+
}
|
|
171
|
+
if (!extensions.includes(ext))
|
|
172
|
+
extensions.push(ext);
|
|
173
|
+
}
|
|
174
|
+
if (!resolvable)
|
|
175
|
+
offenders.push({ rule, globs: positive, extensions });
|
|
176
|
+
}
|
|
177
|
+
if (offenders.length === 0)
|
|
178
|
+
return;
|
|
179
|
+
// Deterministic detail line per offender — corpus order, every field the
|
|
180
|
+
// operator needs to act without opening the manifest.
|
|
181
|
+
const detail = offenders
|
|
182
|
+
.map((o) => `'${o.rule.lessonHash}' (${o.rule.lessonHeading}) engine '${o.rule.engine}' fileGlobs [${o.globs.join(', ')}] → unregistered extension(s) ${o.extensions.join(', ')}`)
|
|
183
|
+
.join('; ');
|
|
184
|
+
// Manifest-derived fields (lessonHash, lessonHeading, fileGlobs) are
|
|
185
|
+
// repo-controlled text reaching operator terminals and CI logs — sanitize the
|
|
186
|
+
// whole rendered summary so a corrupted or hostile manifest cannot inject
|
|
187
|
+
// control sequences through the guard's own report. The remedy line is
|
|
188
|
+
// engine-derived only and needs no sanitizing.
|
|
189
|
+
const summary = sanitizeForTerminal(`${offenders.length} active AST rule(s) declare fileGlobs whose extensions have no registered Tree-sitter language, so they can never match and instead abort the entire lint on first contact with a file they claim — ${detail}.`);
|
|
190
|
+
// Three remedies, deliberately un-ranked: the manifest alone cannot tell a
|
|
191
|
+
// permanently-broken rule (`.json`, which no pack will ever register) from an
|
|
192
|
+
// incomplete environment (`.rs`, which a pack provides but which has not been
|
|
193
|
+
// installed/synced here). Leading with "archive it" would misdiagnose the
|
|
194
|
+
// second case, which `rule-engine.ts`'s STALE_MANIFEST path handles well.
|
|
195
|
+
const remedy = `Install or sync the pack that provides the language ('totem sync --packs-only'), archive each rule (set status: 'archived'), or correct its fileGlobs/engine so at least one positive glob targets a registered extension. Registered now: ${registeredExtensions().join(', ')}.`;
|
|
196
|
+
if (astParseMode === 'lenient') {
|
|
197
|
+
// Honor the operator escape (mmnto-ai/totem#1982). `--ast-parse-mode lenient`
|
|
198
|
+
// already means "an AST language the engine cannot parse degrades this run
|
|
199
|
+
// instead of failing it", and a target-mismatched rule is exactly that class
|
|
200
|
+
// — it simply fails at load rather than at dispatch. Without this branch the
|
|
201
|
+
// guard would REMOVE the only escape for a repo whose rules target a pack
|
|
202
|
+
// language it has not installed, leaving the operator no way to lint at all.
|
|
203
|
+
// The rules stay inert either way, so lenient loses no enforcement it had.
|
|
204
|
+
onWarn(`AST rules target-mismatched (--ast-parse-mode lenient): ${summary} ${remedy}`);
|
|
205
|
+
return;
|
|
206
|
+
}
|
|
207
|
+
throw new TotemError('LINT_LESSONS_FAILED', `Enforcement disarmed: ${summary}`, remedy);
|
|
208
|
+
}
|
|
3
209
|
// ─── Core logic ─────────────────────────────────────
|
|
4
210
|
/**
|
|
5
211
|
* Compiled-rules execution engine used by `totem lint`. Loads rules, extracts additions, enriches
|
|
@@ -19,17 +225,28 @@ export async function runCompiledRules(options) {
|
|
|
19
225
|
state: { hasWarnedShieldContext: false },
|
|
20
226
|
};
|
|
21
227
|
const resolvedTotemDir = path.join(options.configRoot ?? cwd, totemDir);
|
|
22
|
-
// Load compiled rules
|
|
228
|
+
// Load compiled rules. Thread an `onWarn` that both RECORDS the load-time
|
|
229
|
+
// warning and RENDERS it (log.warn). The lint call site historically omitted
|
|
230
|
+
// onWarn, so a truncated / unreadable manifest dropped even the accounting
|
|
231
|
+
// line and lint passed vacuously (mmnto-ai/totem-strategy#971, Prop 309).
|
|
232
|
+
// Zod-shape errors still THROW from core (a corrupt SCHEMA is never a skip).
|
|
23
233
|
const rulesPath = path.join(resolvedTotemDir, COMPILED_RULES_FILE);
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
// `compiled-rules.json` length directly in their pipeline.
|
|
234
|
+
let loadWarning;
|
|
235
|
+
const rules = loadCompiledRules(rulesPath, (msg) => {
|
|
236
|
+
loadWarning = msg;
|
|
237
|
+
log.warn(tag, msg);
|
|
238
|
+
});
|
|
30
239
|
if (rules.length === 0) {
|
|
31
|
-
|
|
32
|
-
|
|
240
|
+
// Zero rules can mean two very different things. An empty-corpus /
|
|
241
|
+
// early-adoption repo legitimately skips (mmnto-ai/totem#1831). But a repo
|
|
242
|
+
// that ACTUALLY carries a lesson corpus and still loads zero rules has its
|
|
243
|
+
// entire enforcement gate silently disarmed behind a green exit
|
|
244
|
+
// (mmnto-ai/totem-strategy#971, Prop 309) — a missing manifest, a
|
|
245
|
+
// truncated/unreadable one (onWarn fired above), or a manifest that
|
|
246
|
+
// filtered down to zero ACTIVE rules. Discriminate on corpus-bearing: does
|
|
247
|
+
// the config declare lesson-kind targets that match real files on disk?
|
|
248
|
+
const fs = await import('node:fs');
|
|
249
|
+
const emptyResult = {
|
|
33
250
|
violations: [],
|
|
34
251
|
findings: [],
|
|
35
252
|
rules: [],
|
|
@@ -37,7 +254,50 @@ export async function runCompiledRules(options) {
|
|
|
37
254
|
regexTimeouts: [],
|
|
38
255
|
astParseFailures: [],
|
|
39
256
|
};
|
|
257
|
+
const lessonCount = options.config
|
|
258
|
+
? await countLessonCorpusFiles(options.config, options.configRoot ?? cwd)
|
|
259
|
+
: 0;
|
|
260
|
+
if (lessonCount > 0) {
|
|
261
|
+
const manifestRel = `${totemDir}/${COMPILED_RULES_FILE}`;
|
|
262
|
+
// This existsSync re-derives what loadCompiledRules saw internally
|
|
263
|
+
// (compiler.ts checks the same path). A manifest CREATED between the two
|
|
264
|
+
// reads would fall through to the zero-active-rules info-skip — an
|
|
265
|
+
// accepted single-shot-CLI race (mmnto-ai/totem#2499 review): the window
|
|
266
|
+
// is microseconds and a concurrent compile implies an imminent re-lint.
|
|
267
|
+
if (!fs.existsSync(rulesPath)) {
|
|
268
|
+
throw new TotemError('LINT_LESSONS_FAILED', `Enforcement disarmed: ${lessonCount} lesson file(s) present but no compiled-rules manifest at ${manifestRel} — 'totem lint' would pass every diff vacuously.`, "Regenerate the manifest with 'totem lesson compile' so the compiled rules are enforced.");
|
|
269
|
+
}
|
|
270
|
+
if (loadWarning) {
|
|
271
|
+
throw new TotemError('LINT_LESSONS_FAILED', `Enforcement disarmed: ${lessonCount} lesson file(s) present but the compiled-rules manifest at ${manifestRel} could not be loaded — ${loadWarning}. 'totem lint' would pass every diff vacuously.`, "Repair or regenerate the manifest with 'totem lesson compile' so the compiled rules are enforced.");
|
|
272
|
+
}
|
|
273
|
+
// Manifest present and loaded validly, but every rule filtered out as
|
|
274
|
+
// inert (archived / pending-verification / untested-against-codebase).
|
|
275
|
+
// Archived-in-place rules preserve telemetry by design — a legitimate
|
|
276
|
+
// lifecycle state, NOT a disarmed gate — so this stays an info-skip, but
|
|
277
|
+
// one that NAMES the zero-active-rules condition instead of masquerading
|
|
278
|
+
// as an empty corpus.
|
|
279
|
+
log.info(tag, `${manifestRel} is present with zero ACTIVE rules (all archived / pending-verification / untested-against-codebase) — skipping. Legitimate lifecycle state, not a disarmed gate.`);
|
|
280
|
+
return emptyResult;
|
|
281
|
+
}
|
|
282
|
+
// Not corpus-bearing — preserve the mmnto-ai/totem#1831 empty-corpus skip
|
|
283
|
+
// exactly (early-adoption / aspirational repos with a valid lint config but
|
|
284
|
+
// no lessons compiled yet). Consumers that need a "rule count > 0" CI
|
|
285
|
+
// guardrail can check `compiled-rules.json` length directly in their
|
|
286
|
+
// pipeline.
|
|
287
|
+
log.info(tag, `No compiled rules at ${totemDir}/${COMPILED_RULES_FILE} — skipping (empty-corpus repo). Run 'totem lesson compile' once you have lessons.`);
|
|
288
|
+
return emptyResult;
|
|
40
289
|
}
|
|
290
|
+
// mmnto-ai/totem#1982. Resolved here rather than at the AST dispatch site
|
|
291
|
+
// because the rule-load guard below shares the mode (CLI flag > env > strict).
|
|
292
|
+
const effectiveAstParseMode = astParseMode ??
|
|
293
|
+
// totem-context: reading Node's process.env (cleaned by the runtime), not parsing a custom .env file; CRLF/quote-stripping rule doesn't apply.
|
|
294
|
+
(process.env['TOTEM_LINT_AST_PARSE_MODE'] === 'lenient' ? 'lenient' : 'strict');
|
|
295
|
+
// Rule-LOAD validation (mmnto-ai/totem-strategy#971, Prop 309 Class 7). Runs
|
|
296
|
+
// before any diff is touched so a rule whose engine cannot process ANY of its
|
|
297
|
+
// declared globs fails on every run, not on the unlucky run whose diff happens
|
|
298
|
+
// to contain a file it claims. Ordered AFTER the corpus-bearing block so a
|
|
299
|
+
// missing/unloadable manifest still reports its own (more fundamental) cause.
|
|
300
|
+
await assertRulesCanTargetTheirGlobs(rules, effectiveAstParseMode, (msg) => log.warn(tag, msg));
|
|
41
301
|
log.info(tag, `Running ${rules.length} rules (zero LLM)...`);
|
|
42
302
|
// Extract additions, exclude compiled rules file, export targets, and binary files
|
|
43
303
|
const BINARY_EXTENSIONS = new Set([
|
|
@@ -172,11 +432,8 @@ export async function runCompiledRules(options) {
|
|
|
172
432
|
const astRules = rules.filter((r) => r.engine === 'ast' || r.engine === 'ast-grep');
|
|
173
433
|
let astViolations = [];
|
|
174
434
|
const astParseFailures = [];
|
|
175
|
-
// mmnto-ai/totem#1982
|
|
176
|
-
//
|
|
177
|
-
const effectiveAstParseMode = astParseMode ??
|
|
178
|
-
// totem-context: reading Node's process.env (cleaned by the runtime), not parsing a custom .env file; CRLF/quote-stripping rule doesn't apply.
|
|
179
|
-
(process.env['TOTEM_LINT_AST_PARSE_MODE'] === 'lenient' ? 'lenient' : 'strict');
|
|
435
|
+
// `effectiveAstParseMode` (mmnto-ai/totem#1982) is resolved above the rule-load
|
|
436
|
+
// guard, which shares the same operator escape.
|
|
180
437
|
if (astRules.length > 0) {
|
|
181
438
|
log.dim(tag, `Running ${astRules.length} AST rule(s)...`);
|
|
182
439
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-compiled-rules.js","sourceRoot":"","sources":["../../src/commands/run-compiled-rules.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"run-compiled-rules.js","sourceRoot":"","sources":["../../src/commands/run-compiled-rules.ts"],"names":[],"mappings":"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"}
|