@mmnto/totem 1.5.8 → 1.5.9

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.
@@ -1 +1 @@
1
- {"version":3,"file":"lesson-linter.d.ts","sourceRoot":"","sources":["../src/lesson-linter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAIxD,MAAM,WAAW,oBAAoB;IACnC,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,WAAW,EAAE,oBAAoB,EAAE,CAAC;CACrC;AAgJD,wBAAgB,eAAe,CAAC,OAAO,EAAE,YAAY,EAAE,GAAG,gBAAgB,CAQzE"}
1
+ {"version":3,"file":"lesson-linter.d.ts","sourceRoot":"","sources":["../src/lesson-linter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAIxD,MAAM,WAAW,oBAAoB;IACnC,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,WAAW,EAAE,oBAAoB,EAAE,CAAC;CACrC;AA0MD,wBAAgB,eAAe,CAAC,OAAO,EAAE,YAAY,EAAE,GAAG,gBAAgB,CAQzE"}
@@ -123,6 +123,59 @@ function lintLesson(lesson) {
123
123
  message: 'Missing **Scope:** field — rule will match all files',
124
124
  });
125
125
  }
126
+ // ── Test exclusion check ──
127
+ if (scopeRaw) {
128
+ const hasSourceDir = /(?:^|,\s*)(?:\*\*\/)?(?:src|commands)\//.test(scopeRaw);
129
+ const hasTestExclusion = /!\*\*\/\*\.(?:test|spec)\.[\w*]+|!\*\*\/__tests__\//.test(scopeRaw);
130
+ if (hasSourceDir && !hasTestExclusion) {
131
+ diags.push({
132
+ ...base,
133
+ severity: 'warning',
134
+ field: 'Scope',
135
+ message: 'Scope targets src/ or commands/ without a test file exclusion (e.g. !**/*.test.*)',
136
+ });
137
+ }
138
+ }
139
+ // ── Cross-language sync ──
140
+ if (scopeRaw) {
141
+ const hasTs = /\*\.tsx?\b/.test(scopeRaw);
142
+ const hasJs = /\*\.jsx?\b/.test(scopeRaw);
143
+ if (hasTs && !hasJs) {
144
+ diags.push({
145
+ ...base,
146
+ severity: 'warning',
147
+ field: 'Scope',
148
+ message: 'Scope targets .ts files but not .js — consider adding **/*.js for compiled output',
149
+ });
150
+ }
151
+ if (hasJs && !hasTs) {
152
+ diags.push({
153
+ ...base,
154
+ severity: 'warning',
155
+ field: 'Scope',
156
+ message: 'Scope targets .js files but not .ts — consider adding **/*.ts for source files',
157
+ });
158
+ }
159
+ }
160
+ // ── Drift safety: bare file paths ──
161
+ {
162
+ // Strip fenced code blocks, inline code, and URLs to avoid false positives
163
+ const strippedBody = body
164
+ .replace(/```[\s\S]*?```/g, '')
165
+ .replace(/`[^`]+`/g, '')
166
+ .replace(/https?:\/\/\S+/g, '');
167
+ // Match path-like strings: word/word/word.ext
168
+ const barePathRe = /(?:[\w.-]+\/){2,}[\w.-]+\.\w{1,10}/g;
169
+ const bareMatches = strippedBody.match(barePathRe);
170
+ if (bareMatches && bareMatches.length > 0) {
171
+ diags.push({
172
+ ...base,
173
+ severity: 'warning',
174
+ field: 'body',
175
+ message: `${bareMatches.length} bare file path(s) found — wrap in backticks to prevent drift (e.g. \`${bareMatches[0]}\`)`,
176
+ });
177
+ }
178
+ }
126
179
  // ── Engine vs examples ──
127
180
  if ((exampleHits.length > 0 || exampleMisses.length > 0) && engine && engine !== 'regex') {
128
181
  diags.push({
@@ -1 +1 @@
1
- {"version":3,"file":"lesson-linter.js","sourceRoot":"","sources":["../src/lesson-linter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lesson-linter.js","sourceRoot":"","sources":["../src/lesson-linter.ts"],"names":[],"mappings":"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"}
@@ -65,7 +65,7 @@ describe('lesson-linter', () => {
65
65
  it('passes with all required fields', () => {
66
66
  const result = validateLessons([
67
67
  makeParsedLesson({
68
- raw: '## Lesson — Test\n\n**Pattern:** \\bfoo\\b\n**Engine:** regex\n**Scope:** **/*.ts\n**Severity:** warning',
68
+ raw: '## Lesson — Test\n\n**Pattern:** \\bfoo\\b\n**Engine:** regex\n**Scope:** **/*.ts, **/*.js\n**Severity:** warning',
69
69
  }),
70
70
  ]);
71
71
  expect(result.valid).toBe(true);
@@ -160,8 +160,8 @@ describe('lesson-linter', () => {
160
160
  raw: '## Lesson — Test\n\n**Pattern:** foo\n**Engine:** regex\n**Scope:** **/*.ts, **/*.tsx, !**/*.test.ts\n**Severity:** warning',
161
161
  }),
162
162
  ]);
163
- const scopeDiags = result.diagnostics.filter((d) => d.field === 'Scope');
164
- expect(scopeDiags).toHaveLength(0);
163
+ const scopeErrors = result.diagnostics.filter((d) => d.field === 'Scope' && d.severity === 'error');
164
+ expect(scopeErrors).toHaveLength(0);
165
165
  });
166
166
  });
167
167
  describe('Example Hit/Miss validation', () => {
@@ -210,16 +210,124 @@ describe('lesson-linter', () => {
210
210
  expect(result.diagnostics.some((d) => d.field === 'Example Hit' && d.message.includes('empty'))).toBe(true);
211
211
  });
212
212
  });
213
+ describe('test exclusion check', () => {
214
+ it('warns when src/ is targeted without a test file exclusion pattern', () => {
215
+ const result = validateLessons([
216
+ makeParsedLesson({
217
+ raw: '## Lesson — Test\n\n**Pattern:** \\bfoo\\b\n**Engine:** regex\n**Scope:** src/**/*.ts\n**Severity:** warning\n\nSome body text.',
218
+ }),
219
+ ]);
220
+ expect(result.valid).toBe(true); // warning, not error
221
+ const scopeWarnings = result.diagnostics.filter((d) => d.field === 'Scope' &&
222
+ d.severity === 'warning' &&
223
+ d.message.includes('test file exclusion'));
224
+ expect(scopeWarnings).toHaveLength(1);
225
+ });
226
+ it('passes when src/ scope includes test exclusion', () => {
227
+ const result = validateLessons([
228
+ makeParsedLesson({
229
+ raw: '## Lesson — Test\n\n**Pattern:** \\bfoo\\b\n**Engine:** regex\n**Scope:** src/**/*.ts, !**/*.test.ts\n**Severity:** warning\n\nSome body text.',
230
+ }),
231
+ ]);
232
+ const scopeWarnings = result.diagnostics.filter((d) => d.field === 'Scope' && d.message.includes('test file exclusion'));
233
+ expect(scopeWarnings).toHaveLength(0);
234
+ });
235
+ it('passes when scope does not target src/ or commands/', () => {
236
+ const result = validateLessons([
237
+ makeParsedLesson({
238
+ raw: '## Lesson — Test\n\n**Pattern:** \\bfoo\\b\n**Engine:** regex\n**Scope:** **/*.ts\n**Severity:** warning\n\nSome body text.',
239
+ }),
240
+ ]);
241
+ const scopeWarnings = result.diagnostics.filter((d) => d.field === 'Scope' && d.message.includes('test file exclusion'));
242
+ expect(scopeWarnings).toHaveLength(0);
243
+ });
244
+ });
245
+ describe('cross-language sync', () => {
246
+ it('warns when only .ts is targeted', () => {
247
+ const result = validateLessons([
248
+ makeParsedLesson({
249
+ raw: '## Lesson — Test\n\n**Pattern:** \\bfoo\\b\n**Engine:** regex\n**Scope:** **/*.ts\n**Severity:** warning\n\nSome body text.',
250
+ }),
251
+ ]);
252
+ const syncWarnings = result.diagnostics.filter((d) => d.field === 'Scope' && d.message.includes('.ts files but not .js'));
253
+ expect(syncWarnings).toHaveLength(1);
254
+ });
255
+ it('warns when only .js is targeted', () => {
256
+ const result = validateLessons([
257
+ makeParsedLesson({
258
+ raw: '## Lesson — Test\n\n**Pattern:** \\bfoo\\b\n**Engine:** regex\n**Scope:** **/*.js\n**Severity:** warning\n\nSome body text.',
259
+ }),
260
+ ]);
261
+ const syncWarnings = result.diagnostics.filter((d) => d.field === 'Scope' && d.message.includes('.js files but not .ts'));
262
+ expect(syncWarnings).toHaveLength(1);
263
+ });
264
+ it('passes when both .ts and .js are targeted', () => {
265
+ const result = validateLessons([
266
+ makeParsedLesson({
267
+ raw: '## Lesson — Test\n\n**Pattern:** \\bfoo\\b\n**Engine:** regex\n**Scope:** **/*.ts, **/*.js\n**Severity:** warning\n\nSome body text.',
268
+ }),
269
+ ]);
270
+ const syncWarnings = result.diagnostics.filter((d) => d.field === 'Scope' && d.message.includes('consider adding'));
271
+ expect(syncWarnings).toHaveLength(0);
272
+ });
273
+ it('passes when using wildcards that cover both', () => {
274
+ const result = validateLessons([
275
+ makeParsedLesson({
276
+ raw: '## Lesson — Test\n\n**Pattern:** \\bfoo\\b\n**Engine:** regex\n**Scope:** **/*.{ts,js}\n**Severity:** warning\n\nSome body text.',
277
+ }),
278
+ ]);
279
+ const syncWarnings = result.diagnostics.filter((d) => d.field === 'Scope' && d.message.includes('consider adding'));
280
+ expect(syncWarnings).toHaveLength(0);
281
+ });
282
+ });
283
+ describe('drift safety: bare file paths', () => {
284
+ it('warns on bare unquoted file paths in lesson body', () => {
285
+ const result = validateLessons([
286
+ makeParsedLesson({
287
+ raw: '## Lesson — Test\n\n**Pattern:** \\bfoo\\b\n**Engine:** regex\n**Scope:** **/*.ts, **/*.js\n**Severity:** warning\n\nDo not modify packages/cli/src/index.ts directly.',
288
+ }),
289
+ ]);
290
+ const driftWarnings = result.diagnostics.filter((d) => d.field === 'body' && d.message.includes('bare file path'));
291
+ expect(driftWarnings).toHaveLength(1);
292
+ });
293
+ it('passes when file paths are in backticks', () => {
294
+ const result = validateLessons([
295
+ makeParsedLesson({
296
+ raw: '## Lesson — Test\n\n**Pattern:** \\bfoo\\b\n**Engine:** regex\n**Scope:** **/*.ts, **/*.js\n**Severity:** warning\n\nDo not modify `packages/cli/src/index.ts` directly.',
297
+ }),
298
+ ]);
299
+ const driftWarnings = result.diagnostics.filter((d) => d.field === 'body' && d.message.includes('bare file path'));
300
+ expect(driftWarnings).toHaveLength(0);
301
+ });
302
+ it('passes when file paths are in code blocks', () => {
303
+ const result = validateLessons([
304
+ makeParsedLesson({
305
+ raw: '## Lesson — Test\n\n**Pattern:** \\bfoo\\b\n**Engine:** regex\n**Scope:** **/*.ts, **/*.js\n**Severity:** warning\n\n```\npackages/cli/src/index.ts\n```',
306
+ }),
307
+ ]);
308
+ const driftWarnings = result.diagnostics.filter((d) => d.field === 'body' && d.message.includes('bare file path'));
309
+ expect(driftWarnings).toHaveLength(0);
310
+ });
311
+ it('does not warn on URLs', () => {
312
+ const result = validateLessons([
313
+ makeParsedLesson({
314
+ raw: '## Lesson — Test\n\n**Pattern:** \\bfoo\\b\n**Engine:** regex\n**Scope:** **/*.ts, **/*.js\n**Severity:** warning\n\nSee https://github.com/foo/bar/baz.ts for details.',
315
+ }),
316
+ ]);
317
+ const driftWarnings = result.diagnostics.filter((d) => d.field === 'body' && d.message.includes('bare file path'));
318
+ expect(driftWarnings).toHaveLength(0);
319
+ });
320
+ });
213
321
  describe('multiple lessons', () => {
214
322
  it('aggregates diagnostics across lessons', () => {
215
323
  const result = validateLessons([
216
324
  makeParsedLesson({
217
325
  heading: 'Good lesson',
218
- raw: '## Lesson — Good lesson\n\n**Pattern:** foo\n**Engine:** regex\n**Scope:** **/*.ts\n**Severity:** warning',
326
+ raw: '## Lesson — Good lesson\n\n**Pattern:** foo\n**Engine:** regex\n**Scope:** **/*.ts, **/*.js\n**Severity:** warning',
219
327
  }),
220
328
  makeParsedLesson({
221
329
  heading: 'Bad lesson',
222
- raw: '## Lesson — Bad lesson\n\n**Pattern:** \\b(broken\n**Engine:** regex\n**Scope:** **/*.ts\n**Severity:** error',
330
+ raw: '## Lesson — Bad lesson\n\n**Pattern:** \\b(broken\n**Engine:** regex\n**Scope:** **/*.ts, **/*.js\n**Severity:** error',
223
331
  }),
224
332
  ]);
225
333
  expect(result.valid).toBe(false);
@@ -1 +1 @@
1
- {"version":3,"file":"lesson-linter.test.js","sourceRoot":"","sources":["../src/lesson-linter.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lesson-linter.test.js","sourceRoot":"","sources":["../src/lesson-linter.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mmnto/totem",
3
- "version": "1.5.8",
3
+ "version": "1.5.9",
4
4
  "description": "Persistent memory and context layer for AI agents",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",