renma 0.11.0 → 0.12.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.
Files changed (40) hide show
  1. package/CHANGELOG.md +28 -1
  2. package/README.md +2 -0
  3. package/dist/cli.js +16 -4
  4. package/dist/cli.js.map +1 -1
  5. package/dist/commands/catalog.d.ts +2 -0
  6. package/dist/commands/catalog.d.ts.map +1 -1
  7. package/dist/commands/catalog.js +8 -1
  8. package/dist/commands/catalog.js.map +1 -1
  9. package/dist/commands/ci-report.d.ts.map +1 -1
  10. package/dist/commands/ci-report.js +8 -1
  11. package/dist/commands/ci-report.js.map +1 -1
  12. package/dist/commands/diff.d.ts +2 -0
  13. package/dist/commands/diff.d.ts.map +1 -1
  14. package/dist/commands/diff.js +1 -0
  15. package/dist/commands/diff.js.map +1 -1
  16. package/dist/commands/graph.d.ts +1 -1
  17. package/dist/commands/graph.d.ts.map +1 -1
  18. package/dist/commands/graph.js +118 -1
  19. package/dist/commands/graph.js.map +1 -1
  20. package/dist/commands/inspect.d.ts +2 -0
  21. package/dist/commands/inspect.d.ts.map +1 -1
  22. package/dist/commands/inspect.js +44 -17
  23. package/dist/commands/inspect.js.map +1 -1
  24. package/dist/commands/readiness.d.ts +3 -1
  25. package/dist/commands/readiness.d.ts.map +1 -1
  26. package/dist/commands/readiness.js +79 -2
  27. package/dist/commands/readiness.js.map +1 -1
  28. package/dist/context-lens.d.ts +56 -0
  29. package/dist/context-lens.d.ts.map +1 -0
  30. package/dist/context-lens.js +481 -0
  31. package/dist/context-lens.js.map +1 -0
  32. package/dist/report.d.ts.map +1 -1
  33. package/dist/report.js +6 -0
  34. package/dist/report.js.map +1 -1
  35. package/dist/scanner.d.ts.map +1 -1
  36. package/dist/scanner.js +8 -1
  37. package/dist/scanner.js.map +1 -1
  38. package/dist/types.d.ts +3 -0
  39. package/dist/types.d.ts.map +1 -1
  40. package/package.json +1 -1
@@ -0,0 +1,481 @@
1
+ import path from "node:path";
2
+ export const CONTEXT_LENS_DIAGNOSTIC_CODES = {
3
+ DEPRECATED_FIELD: "CONTEXT-LENS-DEPRECATED-FIELD",
4
+ DUPLICATE_ID: "CONTEXT-LENS-DUPLICATE-ID",
5
+ EMPTY_DEFINITION: "CONTEXT-LENS-EMPTY-DEFINITION",
6
+ GOVERNANCE_MEANINGLESS: "CONTEXT-LENS-GOVERNANCE-MEANINGLESS",
7
+ MISSING_REQUIRED_FIELD: "CONTEXT-LENS-MISSING-REQUIRED-FIELD",
8
+ PATH_NORMALIZATION_MISMATCH: "CONTEXT-LENS-PATH-NORMALIZATION-MISMATCH",
9
+ TARGET_NOT_FOUND: "CONTEXT-LENS-TARGET-NOT-FOUND",
10
+ UNPARSEABLE_FRONTMATTER: "CONTEXT-LENS-UNPARSEABLE-FRONTMATTER",
11
+ UNSUPPORTED_KIND: "CONTEXT-LENS-UNSUPPORTED-KIND",
12
+ UNSUPPORTED_SCOPE: "CONTEXT-LENS-UNSUPPORTED-SCOPE",
13
+ UNSUPPORTED_VERSION: "CONTEXT-LENS-UNSUPPORTED-VERSION",
14
+ };
15
+ const SUPPORTED_LENS_SCOPES = new Set(["context"]);
16
+ const SUPPORTED_LENS_VERSIONS = new Set(["1"]);
17
+ const DEPRECATED_LENS_FIELDS = new Map([
18
+ ["target", "applies_to"],
19
+ ["targets", "applies_to"],
20
+ ["output", "expected_outputs"],
21
+ ["outputs", "expected_outputs"],
22
+ ]);
23
+ const REQUIRED_LENS_FIELDS = ["id", "owner", "purpose", "applies_to"];
24
+ /** Deterministically summarize and validate Context Lens governance state. */
25
+ export function summarizeContextLensGovernance(documents, catalog) {
26
+ const diagnostics = [];
27
+ const resolver = createCatalogReferenceResolver(catalog.entries);
28
+ const lensDocuments = documents
29
+ .flatMap((document) => {
30
+ diagnostics.push(...unsupportedKindDiagnostics(document));
31
+ if (!isLensDocument(document))
32
+ return [];
33
+ const entry = catalog.entries.find((candidate) => candidate.sourcePath === document.artifact.path);
34
+ const id = textMetadata(document, "id") ?? document.artifact.path;
35
+ const scope = textMetadata(document, "scope") ?? "context";
36
+ const targets = listMetadata(document, "applies_to");
37
+ const targetPaths = targets
38
+ .map((target) => resolver.resolve(target)?.sourcePath)
39
+ .filter((targetPath) => targetPath !== undefined)
40
+ .sort((a, b) => a.localeCompare(b));
41
+ return [
42
+ {
43
+ document,
44
+ ...(entry ? { entry } : {}),
45
+ id,
46
+ scope,
47
+ targets,
48
+ targetPaths,
49
+ },
50
+ ];
51
+ })
52
+ .sort((a, b) => a.document.artifact.path.localeCompare(b.document.artifact.path));
53
+ for (const lens of lensDocuments) {
54
+ diagnostics.push(...frontmatterDiagnostics(lens.document), ...requiredFieldDiagnostics(lens.document), ...unsupportedValueDiagnostics(lens.document), ...deprecatedFieldDiagnostics(lens.document), ...targetDiagnostics(lens.document, resolver), ...definitionBodyDiagnostics(lens.document));
55
+ }
56
+ diagnostics.push(...duplicateIdDiagnostics(lensDocuments));
57
+ const sortedDiagnostics = stableDiagnostics(diagnostics);
58
+ const diagnosticCounts = countDiagnostics(sortedDiagnostics);
59
+ const diagnosticsByPath = diagnosticsByLensPath(sortedDiagnostics);
60
+ const lenses = lensDocuments.map((lens) => {
61
+ const lensDiagnostics = diagnosticsByPath.get(lens.document.artifact.path) ?? [];
62
+ const lensCounts = countDiagnostics(lensDiagnostics);
63
+ return {
64
+ id: lens.id,
65
+ path: lens.document.artifact.path,
66
+ valid: lensCounts.error === 0,
67
+ scope: lens.scope,
68
+ targets: stableUnique(lens.targets.map(normalizeReference)),
69
+ targetPaths: stableUnique(lens.targetPaths),
70
+ diagnosticCounts: lensCounts,
71
+ diagnosticCodes: stableUnique(lensDiagnostics
72
+ .map((diagnostic) => diagnostic.code)
73
+ .filter((code) => code !== undefined)),
74
+ };
75
+ });
76
+ const invalidLensCount = lenses.filter((lens) => !lens.valid).length;
77
+ return {
78
+ summary: {
79
+ enabled: true,
80
+ detected: lenses.length > 0,
81
+ totalLensCount: lenses.length,
82
+ validLensCount: lenses.length - invalidLensCount,
83
+ invalidLensCount,
84
+ diagnosticCounts,
85
+ ...(sortedDiagnostics[0]?.code
86
+ ? { representativeDiagnosticCode: sortedDiagnostics[0].code }
87
+ : {}),
88
+ definitionPaths: lenses.map((lens) => lens.path),
89
+ targetReferences: stableUnique(lenses.flatMap((lens) => lens.targets.map(normalizeReference))),
90
+ targetPaths: stableUnique(lenses.flatMap((lens) => lens.targetPaths)),
91
+ unresolvedTargetReferences: stableUnique(sortedDiagnostics
92
+ .filter((diagnostic) => diagnostic.code ===
93
+ CONTEXT_LENS_DIAGNOSTIC_CODES.TARGET_NOT_FOUND)
94
+ .map(unresolvedReferenceFromDiagnostic)
95
+ .filter((reference) => reference !== undefined)),
96
+ scopeSummary: summarizeScopes(lenses),
97
+ lenses,
98
+ },
99
+ diagnostics: sortedDiagnostics,
100
+ };
101
+ }
102
+ export function zeroContextLensSummary() {
103
+ return {
104
+ enabled: true,
105
+ detected: false,
106
+ totalLensCount: 0,
107
+ validLensCount: 0,
108
+ invalidLensCount: 0,
109
+ diagnosticCounts: zeroDiagnosticCounts(),
110
+ definitionPaths: [],
111
+ targetReferences: [],
112
+ targetPaths: [],
113
+ unresolvedTargetReferences: [],
114
+ scopeSummary: [],
115
+ lenses: [],
116
+ };
117
+ }
118
+ function isLensDocument(document) {
119
+ if (document.artifact.kind === "context_lens")
120
+ return true;
121
+ return (document.artifact.kind === "context" &&
122
+ textMetadata(document, "type") === "context_lens");
123
+ }
124
+ function unsupportedKindDiagnostics(document) {
125
+ if (textMetadata(document, "type") !== "context_lens")
126
+ return [];
127
+ if (document.artifact.kind === "context_lens" ||
128
+ document.artifact.kind === "context") {
129
+ return [];
130
+ }
131
+ return [
132
+ {
133
+ code: CONTEXT_LENS_DIAGNOSTIC_CODES.UNSUPPORTED_KIND,
134
+ severity: "warning",
135
+ path: document.artifact.path,
136
+ message: "Context lens type metadata is only supported under lenses/**, context/**, or contexts/**.",
137
+ evidence: fieldEvidence(document, "type"),
138
+ },
139
+ ];
140
+ }
141
+ function frontmatterDiagnostics(document) {
142
+ if (document.lines[0]?.trim() !== "---")
143
+ return [];
144
+ const closingIndex = document.lines.findIndex((line, index) => index > 0 && line.trim() === "---");
145
+ if (closingIndex >= 0)
146
+ return [];
147
+ return [
148
+ {
149
+ code: CONTEXT_LENS_DIAGNOSTIC_CODES.UNPARSEABLE_FRONTMATTER,
150
+ severity: "error",
151
+ path: document.artifact.path,
152
+ message: "Context lens frontmatter starts with --- but does not include a closing --- delimiter.",
153
+ evidence: {
154
+ path: document.artifact.path,
155
+ startLine: 1,
156
+ endLine: document.lines.length,
157
+ snippet: "unclosed frontmatter",
158
+ },
159
+ },
160
+ ];
161
+ }
162
+ function requiredFieldDiagnostics(document) {
163
+ return REQUIRED_LENS_FIELDS.flatMap((field) => {
164
+ const present = field === "applies_to"
165
+ ? listMetadata(document, field).length > 0
166
+ : Boolean(textMetadata(document, field));
167
+ if (present)
168
+ return [];
169
+ return [
170
+ {
171
+ code: CONTEXT_LENS_DIAGNOSTIC_CODES.MISSING_REQUIRED_FIELD,
172
+ severity: "error",
173
+ path: document.artifact.path,
174
+ message: `Context lens definition is missing required field "${field}".`,
175
+ evidence: missingFieldEvidence(document, field),
176
+ },
177
+ ];
178
+ });
179
+ }
180
+ function unsupportedValueDiagnostics(document) {
181
+ const diagnostics = [];
182
+ const type = textMetadata(document, "type");
183
+ if (type !== undefined && type !== "context_lens") {
184
+ diagnostics.push({
185
+ code: CONTEXT_LENS_DIAGNOSTIC_CODES.UNSUPPORTED_KIND,
186
+ severity: "error",
187
+ path: document.artifact.path,
188
+ message: `Context lens definition uses unsupported type "${type}". Expected context_lens.`,
189
+ evidence: fieldEvidence(document, "type"),
190
+ });
191
+ }
192
+ const scope = textMetadata(document, "scope");
193
+ if (scope !== undefined && !SUPPORTED_LENS_SCOPES.has(scope)) {
194
+ diagnostics.push({
195
+ code: CONTEXT_LENS_DIAGNOSTIC_CODES.UNSUPPORTED_SCOPE,
196
+ severity: "error",
197
+ path: document.artifact.path,
198
+ message: `Context lens definition uses unsupported scope "${scope}". Expected one of: ${[
199
+ ...SUPPORTED_LENS_SCOPES,
200
+ ].join(", ")}.`,
201
+ evidence: fieldEvidence(document, "scope"),
202
+ });
203
+ }
204
+ const version = textMetadata(document, "version");
205
+ if (version !== undefined && !SUPPORTED_LENS_VERSIONS.has(version)) {
206
+ diagnostics.push({
207
+ code: CONTEXT_LENS_DIAGNOSTIC_CODES.UNSUPPORTED_VERSION,
208
+ severity: "error",
209
+ path: document.artifact.path,
210
+ message: `Context lens definition uses unsupported version "${version}". Expected one of: ${[
211
+ ...SUPPORTED_LENS_VERSIONS,
212
+ ].join(", ")}.`,
213
+ evidence: fieldEvidence(document, "version"),
214
+ });
215
+ }
216
+ return diagnostics;
217
+ }
218
+ function deprecatedFieldDiagnostics(document) {
219
+ return [...DEPRECATED_LENS_FIELDS.entries()].flatMap(([field, replacement]) => {
220
+ if (document.metadata[field] === undefined)
221
+ return [];
222
+ return [
223
+ {
224
+ code: CONTEXT_LENS_DIAGNOSTIC_CODES.DEPRECATED_FIELD,
225
+ severity: "warning",
226
+ path: document.artifact.path,
227
+ message: `Context lens field "${field}" is deprecated. Use "${replacement}" instead.`,
228
+ evidence: fieldEvidence(document, field),
229
+ },
230
+ ];
231
+ });
232
+ }
233
+ function targetDiagnostics(document, resolver) {
234
+ return listMetadata(document, "applies_to").flatMap((target, index) => {
235
+ const diagnostics = [];
236
+ const normalized = normalizeReference(target);
237
+ if (isPathReference(target) && normalized !== target) {
238
+ diagnostics.push({
239
+ code: CONTEXT_LENS_DIAGNOSTIC_CODES.PATH_NORMALIZATION_MISMATCH,
240
+ severity: "warning",
241
+ path: document.artifact.path,
242
+ message: `Context lens target path "${target}" normalizes to "${normalized}".`,
243
+ evidence: listItemEvidence(document, "applies_to", index),
244
+ });
245
+ }
246
+ if (!resolver.resolve(target)) {
247
+ diagnostics.push({
248
+ code: CONTEXT_LENS_DIAGNOSTIC_CODES.TARGET_NOT_FOUND,
249
+ severity: "error",
250
+ path: document.artifact.path,
251
+ message: `Context lens target "${target}" does not resolve to a cataloged asset.`,
252
+ evidence: listItemEvidence(document, "applies_to", index),
253
+ });
254
+ }
255
+ return diagnostics;
256
+ });
257
+ }
258
+ function definitionBodyDiagnostics(document) {
259
+ if (document.artifact.content.trim().length === 0) {
260
+ return [
261
+ {
262
+ code: CONTEXT_LENS_DIAGNOSTIC_CODES.EMPTY_DEFINITION,
263
+ severity: "error",
264
+ path: document.artifact.path,
265
+ message: "Context lens definition is empty.",
266
+ evidence: {
267
+ path: document.artifact.path,
268
+ startLine: 1,
269
+ endLine: 1,
270
+ snippet: "empty context lens definition",
271
+ },
272
+ },
273
+ ];
274
+ }
275
+ const meaningfulMetadata = [
276
+ "purpose",
277
+ "applies_to",
278
+ "focus",
279
+ "expected_outputs",
280
+ ].some((field) => field === "purpose"
281
+ ? Boolean(textMetadata(document, field))
282
+ : listMetadata(document, field).length > 0);
283
+ const meaningfulBody = bodyLines(document).some((line) => line.trim().length > 0 && !line.trimStart().startsWith("#"));
284
+ if (meaningfulMetadata || meaningfulBody)
285
+ return [];
286
+ return [
287
+ {
288
+ code: CONTEXT_LENS_DIAGNOSTIC_CODES.GOVERNANCE_MEANINGLESS,
289
+ severity: "warning",
290
+ path: document.artifact.path,
291
+ message: "Context lens definition has no governance-meaningful purpose, target, focus, expected output, or body guidance.",
292
+ evidence: missingFieldEvidence(document, "purpose"),
293
+ },
294
+ ];
295
+ }
296
+ function duplicateIdDiagnostics(lenses) {
297
+ const byId = new Map();
298
+ for (const lens of lenses) {
299
+ if (!textMetadata(lens.document, "id"))
300
+ continue;
301
+ byId.set(lens.id, [...(byId.get(lens.id) ?? []), lens]);
302
+ }
303
+ return [...byId.entries()].flatMap(([id, duplicates]) => {
304
+ if (duplicates.length < 2)
305
+ return [];
306
+ const paths = duplicates
307
+ .map((lens) => lens.document.artifact.path)
308
+ .sort((a, b) => a.localeCompare(b));
309
+ return duplicates.map((lens) => ({
310
+ code: CONTEXT_LENS_DIAGNOSTIC_CODES.DUPLICATE_ID,
311
+ severity: "error",
312
+ path: lens.document.artifact.path,
313
+ message: `Context lens id "${id}" is duplicated by ${paths.join(", ")}.`,
314
+ evidence: fieldEvidence(lens.document, "id"),
315
+ }));
316
+ });
317
+ }
318
+ function createCatalogReferenceResolver(entries) {
319
+ const byId = new Map();
320
+ const byPath = new Map();
321
+ for (const entry of entries) {
322
+ if (!byId.has(entry.id))
323
+ byId.set(entry.id, entry);
324
+ for (const reference of [
325
+ entry.sourcePath,
326
+ normalizeReference(entry.sourcePath),
327
+ `./${entry.sourcePath}`,
328
+ ]) {
329
+ const normalized = normalizeReference(reference);
330
+ if (!byPath.has(normalized))
331
+ byPath.set(normalized, entry);
332
+ }
333
+ }
334
+ return {
335
+ resolve(reference) {
336
+ return byId.get(reference) ?? byPath.get(normalizeReference(reference));
337
+ },
338
+ };
339
+ }
340
+ function diagnosticsByLensPath(diagnostics) {
341
+ const result = new Map();
342
+ for (const diagnostic of diagnostics) {
343
+ if (!diagnostic.path)
344
+ continue;
345
+ result.set(diagnostic.path, [
346
+ ...(result.get(diagnostic.path) ?? []),
347
+ diagnostic,
348
+ ]);
349
+ }
350
+ return result;
351
+ }
352
+ function countDiagnostics(diagnostics) {
353
+ const counts = zeroDiagnosticCounts();
354
+ for (const diagnostic of diagnostics) {
355
+ counts[diagnostic.severity] += 1;
356
+ }
357
+ return counts;
358
+ }
359
+ function zeroDiagnosticCounts() {
360
+ return {
361
+ error: 0,
362
+ warning: 0,
363
+ info: 0,
364
+ };
365
+ }
366
+ function summarizeScopes(lenses) {
367
+ const counts = new Map();
368
+ for (const lens of lenses) {
369
+ counts.set(lens.scope, (counts.get(lens.scope) ?? 0) + 1);
370
+ }
371
+ return [...counts.entries()]
372
+ .map(([scope, count]) => ({ scope, count }))
373
+ .sort((a, b) => a.scope.localeCompare(b.scope));
374
+ }
375
+ function stableDiagnostics(diagnostics) {
376
+ return [...diagnostics].sort((a, b) => {
377
+ const byPath = (a.path ?? "").localeCompare(b.path ?? "");
378
+ if (byPath !== 0)
379
+ return byPath;
380
+ const byCode = (a.code ?? "").localeCompare(b.code ?? "");
381
+ if (byCode !== 0)
382
+ return byCode;
383
+ const byLine = (a.evidence?.startLine ?? 0) - (b.evidence?.startLine ?? 0);
384
+ if (byLine !== 0)
385
+ return byLine;
386
+ return a.message.localeCompare(b.message);
387
+ });
388
+ }
389
+ function stableUnique(values) {
390
+ return [...new Set(values)].sort((a, b) => a.localeCompare(b));
391
+ }
392
+ function unresolvedReferenceFromDiagnostic(diagnostic) {
393
+ return diagnostic.message.match(/"([^"]+)"/)?.[1];
394
+ }
395
+ function textMetadata(document, field) {
396
+ const value = document.metadata[field];
397
+ if (typeof value !== "string")
398
+ return undefined;
399
+ const trimmed = value.trim();
400
+ return trimmed.length > 0 ? trimmed : undefined;
401
+ }
402
+ function listMetadata(document, field) {
403
+ const value = document.metadata[field];
404
+ if (Array.isArray(value)) {
405
+ return value.map((item) => item.trim()).filter(Boolean);
406
+ }
407
+ if (typeof value === "string") {
408
+ return value
409
+ .split(",")
410
+ .map((item) => item.trim())
411
+ .filter(Boolean);
412
+ }
413
+ return [];
414
+ }
415
+ function fieldEvidence(document, field) {
416
+ const metadata = document.metadataFields[field];
417
+ if (metadata) {
418
+ return {
419
+ path: metadata.path,
420
+ startLine: metadata.startLine,
421
+ endLine: metadata.endLine,
422
+ snippet: metadata.raw,
423
+ };
424
+ }
425
+ return missingFieldEvidence(document, field);
426
+ }
427
+ function listItemEvidence(document, field, index) {
428
+ const item = document.metadataListItems[field]?.[index];
429
+ if (item) {
430
+ return {
431
+ path: item.path,
432
+ startLine: item.startLine,
433
+ endLine: item.endLine,
434
+ snippet: item.raw,
435
+ };
436
+ }
437
+ return fieldEvidence(document, field);
438
+ }
439
+ function missingFieldEvidence(document, field) {
440
+ const frontmatter = frontmatterRange(document);
441
+ if (frontmatter) {
442
+ return {
443
+ path: document.artifact.path,
444
+ startLine: frontmatter.startLine,
445
+ endLine: frontmatter.endLine,
446
+ snippet: `frontmatter missing ${field}`,
447
+ };
448
+ }
449
+ return {
450
+ path: document.artifact.path,
451
+ startLine: 1,
452
+ endLine: 1,
453
+ snippet: `missing ${field}`,
454
+ };
455
+ }
456
+ function frontmatterRange(document) {
457
+ if (document.lines[0]?.trim() !== "---")
458
+ return undefined;
459
+ const endIndex = document.lines.findIndex((line, index) => index > 0 && line.trim() === "---");
460
+ if (endIndex < 0)
461
+ return undefined;
462
+ return { startLine: 1, endLine: endIndex + 1 };
463
+ }
464
+ function bodyLines(document) {
465
+ const frontmatter = frontmatterRange(document);
466
+ return document.lines.slice(frontmatter ? frontmatter.endLine : 0);
467
+ }
468
+ function isPathReference(reference) {
469
+ return (reference.includes("/") ||
470
+ reference.includes("\\") ||
471
+ reference.startsWith(".") ||
472
+ reference.endsWith(".md") ||
473
+ path.isAbsolute(reference));
474
+ }
475
+ function normalizeReference(reference) {
476
+ return reference
477
+ .replace(/\\/g, "/")
478
+ .replace(/\/+/g, "/")
479
+ .replace(/^\.\//, "");
480
+ }
481
+ //# sourceMappingURL=context-lens.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context-lens.js","sourceRoot":"","sources":["../src/context-lens.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../src/report.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,0DAA0D;AAC1D,wBAAgB,UAAU,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAErD;AAED,4DAA4D;AAC5D,wBAAgB,UAAU,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAwCrD"}
1
+ {"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../src/report.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,0DAA0D;AAC1D,wBAAgB,UAAU,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAErD;AAED,4DAA4D;AAC5D,wBAAgB,UAAU,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CA8CrD"}
package/dist/report.js CHANGED
@@ -9,6 +9,12 @@ export function formatText(result) {
9
9
  `Root: ${result.root}`,
10
10
  `Config: ${result.configPath ?? "(defaults)"}`,
11
11
  `Files scanned: ${result.scannedFileCount}`,
12
+ ...(result.contextLens
13
+ ? [
14
+ `Context lenses: ${result.contextLens.validLensCount}/${result.contextLens.totalLensCount} valid (${result.contextLens.invalidLensCount} invalid)`,
15
+ `Context lens diagnostics: error ${result.contextLens.diagnosticCounts.error}, warning ${result.contextLens.diagnosticCounts.warning}, info ${result.contextLens.diagnosticCounts.info}`,
16
+ ]
17
+ : []),
12
18
  `Diagnostics: ${result.diagnostics.length}`,
13
19
  `Exit threshold: ${result.exitThreshold}`,
14
20
  `Findings: ${result.findings.length}`,
@@ -1 +1 @@
1
- {"version":3,"file":"report.js","sourceRoot":"","sources":["../src/report.ts"],"names":[],"mappings":"AAEA,0DAA0D;AAC1D,MAAM,UAAU,UAAU,CAAC,MAAkB;IAC3C,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC;AAChD,CAAC;AAED,4DAA4D;AAC5D,MAAM,UAAU,UAAU,CAAC,MAAkB;IAC3C,MAAM,KAAK,GAAG;QACZ,YAAY;QACZ,SAAS,MAAM,CAAC,IAAI,EAAE;QACtB,WAAW,MAAM,CAAC,UAAU,IAAI,YAAY,EAAE;QAC9C,kBAAkB,MAAM,CAAC,gBAAgB,EAAE;QAC3C,gBAAgB,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE;QAC3C,mBAAmB,MAAM,CAAC,aAAa,EAAE;QACzC,aAAa,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE;KACtC,CAAC;IAEF,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAC7B,CAAC;IAED,KAAK,MAAM,UAAU,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;QAC5C,KAAK,CAAC,IAAI,CACR,cAAc,UAAU,CAAC,QAAQ,KAAK,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,UAAU,CAAC,OAAO,EAAE,CAC3G,CAAC;IACJ,CAAC;IAED,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACtC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAChE,KAAK,CAAC,IAAI,CACR,GAAG,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,GAAG,IAAI,IAAI,OAAO,CAAC,EAAE,KAAK,OAAO,CAAC,KAAK,EAAE,CAC3E,CAAC;QACF,KAAK,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,QAAQ,CAAC,IAAI,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC;QACvE,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO;YAC1B,KAAK,CAAC,IAAI,CAAC,eAAe,OAAO,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;QACxD,KAAK,CAAC,IAAI,CAAC,UAAU,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;QAC7C,KAAK,CAAC,IAAI,CAAC,UAAU,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;QAC5C,IAAI,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC;YACvD,KAAK,CAAC,IAAI,CAAC,kBAAkB,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjE,IAAI,OAAO,CAAC,iBAAiB,IAAI,OAAO,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC;YACnE,KAAK,CAAC,IAAI,CAAC,aAAa,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClE,IAAI,OAAO,CAAC,OAAO;YAAE,KAAK,CAAC,IAAI,CAAC,UAAU,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;AACjC,CAAC"}
1
+ {"version":3,"file":"report.js","sourceRoot":"","sources":["../src/report.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"scanner.d.ts","sourceRoot":"","sources":["../src/scanner.ts"],"names":[],"mappings":"AAEA,OAAO,EAAc,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AAS/D,OAAO,KAAK,EAAuB,UAAU,EAAE,MAAM,YAAY,CAAC;AAElE,sEAAsE;AACtE,wBAAsB,IAAI,CACxB,UAAU,EAAE,MAAM,EAClB,SAAS,GAAE,eAAoB,GAC9B,OAAO,CAAC,UAAU,CAAC,CAgCrB"}
1
+ {"version":3,"file":"scanner.d.ts","sourceRoot":"","sources":["../src/scanner.ts"],"names":[],"mappings":"AAEA,OAAO,EAAc,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AAU/D,OAAO,KAAK,EAAuB,UAAU,EAAE,MAAM,YAAY,CAAC;AAElE,sEAAsE;AACtE,wBAAsB,IAAI,CACxB,UAAU,EAAE,MAAM,EAClB,SAAS,GAAE,eAAoB,GAC9B,OAAO,CAAC,UAAU,CAAC,CAyCrB"}
package/dist/scanner.js CHANGED
@@ -1,6 +1,7 @@
1
1
  import path from "node:path";
2
2
  import { buildCatalog } from "./catalog.js";
3
3
  import { loadConfig } from "./config.js";
4
+ import { summarizeContextLensGovernance } from "./context-lens.js";
4
5
  import { DIAGNOSTIC_IDS } from "./diagnostic-ids.js";
5
6
  import { discoverArtifacts } from "./discovery.js";
6
7
  import { parseDocument } from "./markdown.js";
@@ -17,6 +18,7 @@ export async function scan(targetPath, overrides = {}) {
17
18
  const securityPolicyInventory = summarizeSecurityPolicyInventory(artifacts, config.security);
18
19
  const documents = artifacts.map(parseDocument);
19
20
  const catalogResult = buildCatalog(documents);
21
+ const contextLens = summarizeContextLensGovernance(documents, catalogResult.catalog);
20
22
  const rawFindings = [
21
23
  ...runRules(documents, config, catalogResult.catalog),
22
24
  ...detectRepeatedContextPatterns(documents),
@@ -34,9 +36,14 @@ export async function scan(targetPath, overrides = {}) {
34
36
  ...(configPath ? { configPath } : {}),
35
37
  scannedFileCount: artifacts.length,
36
38
  format: config.format,
39
+ contextLens: contextLens.summary,
37
40
  securityPolicyInventory,
38
41
  findings: suppressed.findings,
39
- diagnostics: [...diagnostics, ...suppressed.diagnostics],
42
+ diagnostics: [
43
+ ...diagnostics,
44
+ ...contextLens.diagnostics,
45
+ ...suppressed.diagnostics,
46
+ ],
40
47
  exitThreshold: config.failOn,
41
48
  };
42
49
  }
@@ -1 +1 @@
1
- {"version":3,"file":"scanner.js","sourceRoot":"","sources":["../src/scanner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scanner.js","sourceRoot":"","sources":["../src/scanner.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import type { ContextLensSummary } from "./context-lens.js";
1
2
  import type { SecurityPolicyInventorySummary } from "./security-policy-inventory.js";
2
3
  /** Finding severity used for scan reports and failure thresholds. */
3
4
  export type Severity = "low" | "medium" | "high" | "critical";
@@ -38,6 +39,7 @@ export interface SuppressionConfig {
38
39
  export type SuppressionExpiration = "never" | `${number}-${number}-${number}`;
39
40
  /** Non-finding diagnostic produced while loading, discovering, or parsing input. */
40
41
  export interface Diagnostic {
42
+ code?: string;
41
43
  severity: "info" | "warning" | "error";
42
44
  message: string;
43
45
  path?: string;
@@ -144,6 +146,7 @@ export interface ScanResult {
144
146
  configPath?: string;
145
147
  scannedFileCount: number;
146
148
  format: "text" | "json";
149
+ contextLens?: ContextLensSummary;
147
150
  securityPolicyInventory?: SecurityPolicyInventorySummary;
148
151
  findings: Finding[];
149
152
  diagnostics: Diagnostic[];
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}