@neurcode-ai/governance-runtime 0.1.2 → 0.1.3

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.
@@ -6,13 +6,21 @@ export interface DeterministicConstraintRule {
6
6
  displayName: string;
7
7
  pattern: RegExp;
8
8
  matchToken: string;
9
+ provenance?: DeterministicConstraintProvenance;
9
10
  pathIncludePatterns?: string[];
10
11
  pathExcludePatterns?: string[];
11
12
  pathIncludes?: RegExp[];
12
13
  pathExcludes?: RegExp[];
13
14
  minMatchesPerFile?: number;
14
15
  maxMatchesPerFile?: number;
15
- evaluationMode?: 'added_lines' | 'full_file';
16
+ evaluationMode?: 'added_lines' | 'full_file' | 'signature_delta';
17
+ evaluationScope?: 'file' | 'repo';
18
+ }
19
+ export interface DeterministicConstraintProvenance {
20
+ why: string;
21
+ evidence: string[];
22
+ contributingGraphPaths: string[];
23
+ trustBoundaries: string[];
16
24
  }
17
25
  export interface DeterministicConstraintCompilation {
18
26
  rules: DeterministicConstraintRule[];
@@ -1 +1 @@
1
- {"version":3,"file":"constraints.d.ts","sourceRoot":"","sources":["../src/constraints.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,6BAA6B,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEhE,MAAM,WAAW,2BAA2B;IAC1C,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,6BAA6B,CAAC;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC/B,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,cAAc,CAAC,EAAE,aAAa,GAAG,WAAW,CAAC;CAC9C;AAED,MAAM,WAAW,kCAAkC;IACjD,KAAK,EAAE,2BAA2B,EAAE,CAAC;IACrC,mBAAmB,EAAE,MAAM,EAAE,CAAC;CAC/B;AAED,MAAM,WAAW,uCAAuC;IACtD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB;AAsYD,wBAAgB,+BAA+B,CAC7C,KAAK,EAAE,uCAAuC,GAC7C,kCAAkC,CAapC"}
1
+ {"version":3,"file":"constraints.d.ts","sourceRoot":"","sources":["../src/constraints.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,6BAA6B,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEhE,MAAM,WAAW,2BAA2B;IAC1C,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,6BAA6B,CAAC;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,iCAAiC,CAAC;IAC/C,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC/B,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,cAAc,CAAC,EAAE,aAAa,GAAG,WAAW,GAAG,iBAAiB,CAAC;IACjE,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACnC;AAED,MAAM,WAAW,iCAAiC;IAChD,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,sBAAsB,EAAE,MAAM,EAAE,CAAC;IACjC,eAAe,EAAE,MAAM,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,kCAAkC;IACjD,KAAK,EAAE,2BAA2B,EAAE,CAAC;IACrC,mBAAmB,EAAE,MAAM,EAAE,CAAC;CAC/B;AAED,MAAM,WAAW,uCAAuC;IACtD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB;AAywBD,wBAAgB,+BAA+B,CAC7C,KAAK,EAAE,uCAAuC,GAC7C,kCAAkC,CAapC"}
@@ -146,6 +146,39 @@ function parsePathScopes(statement) {
146
146
  excludePatterns: [...excludePatterns],
147
147
  };
148
148
  }
149
+ function uniqueSorted(values) {
150
+ return [...new Set(values.filter(Boolean))].sort((left, right) => left.localeCompare(right));
151
+ }
152
+ function buildProvenance(input) {
153
+ const contributingGraphPaths = input.pathScopes.includePatterns.length > 0
154
+ ? uniqueSorted(input.pathScopes.includePatterns)
155
+ : ['<repo-scope>'];
156
+ return {
157
+ why: input.why,
158
+ evidence: uniqueSorted(input.evidence),
159
+ contributingGraphPaths,
160
+ trustBoundaries: uniqueSorted(input.trustBoundaries),
161
+ };
162
+ }
163
+ function applyPathScopes(rule, pathScopes) {
164
+ const includePatterns = [...pathScopes.includePatterns];
165
+ const excludePatterns = [...pathScopes.excludePatterns];
166
+ return {
167
+ ...rule,
168
+ ...(includePatterns.length > 0
169
+ ? {
170
+ pathIncludePatterns: includePatterns,
171
+ pathIncludes: compilePathPatterns(includePatterns),
172
+ }
173
+ : {}),
174
+ ...(excludePatterns.length > 0
175
+ ? {
176
+ pathExcludePatterns: excludePatterns,
177
+ pathExcludes: compilePathPatterns(excludePatterns),
178
+ }
179
+ : {}),
180
+ };
181
+ }
149
182
  function escapeRegex(value) {
150
183
  return value.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
151
184
  }
@@ -221,8 +254,7 @@ function parseInvocationLimitRule(statement, source, pathScopes) {
221
254
  if (!Number.isFinite(limit) || limit < 0) {
222
255
  return null;
223
256
  }
224
- const includePatterns = [...pathScopes.includePatterns];
225
- const excludePatterns = [...pathScopes.excludePatterns];
257
+ const repoScopeHint = /\b(across\s+(?:the\s+)?(?:repo|repository|codebase)|globally|in\s+the\s+entire\s+repo)\b/i.test(normalized);
226
258
  const displaySuffix = comparator === 'exact'
227
259
  ? `exactly ${limit}`
228
260
  : comparator === 'min'
@@ -230,56 +262,234 @@ function parseInvocationLimitRule(statement, source, pathScopes) {
230
262
  : `at most ${limit}`;
231
263
  const minMatches = comparator === 'min' || comparator === 'exact' ? limit : undefined;
232
264
  const maxMatches = comparator === 'max' || comparator === 'exact' ? limit : undefined;
233
- return {
234
- id: `${source}:${comparator}_invocations_${fnName.toLowerCase()}`,
265
+ return applyPathScopes({
266
+ id: `${source}:${comparator}_invocations_${fnName.toLowerCase()}${repoScopeHint ? '_repo' : ''}`,
235
267
  source,
236
268
  statement,
237
- displayName: `${fnName}() invocation limit (${displaySuffix})`,
269
+ displayName: `${fnName}() invocation limit (${displaySuffix}${repoScopeHint ? ', repo-wide' : ''})`,
238
270
  pattern: new RegExp(`(?<!function\\s)\\b${escapeRegex(fnName)}\\s*\\(`, 'i'),
239
271
  matchToken: `${fnName}(`,
240
272
  ...(typeof minMatches === 'number' ? { minMatchesPerFile: minMatches } : {}),
241
273
  ...(typeof maxMatches === 'number' ? { maxMatchesPerFile: maxMatches } : {}),
242
274
  evaluationMode: 'full_file',
243
- ...(includePatterns.length > 0
244
- ? {
245
- pathIncludePatterns: includePatterns,
246
- pathIncludes: compilePathPatterns(includePatterns),
247
- }
248
- : {}),
249
- ...(excludePatterns.length > 0
250
- ? {
251
- pathExcludePatterns: excludePatterns,
252
- pathExcludes: compilePathPatterns(excludePatterns),
253
- }
254
- : {}),
255
- };
275
+ evaluationScope: repoScopeHint ? 'repo' : 'file',
276
+ provenance: buildProvenance({
277
+ why: 'Statement imposes deterministic invocation cardinality limits.',
278
+ evidence: [fnName, rawLimit, comparator, repoScopeHint ? 'repo-scope' : 'file-scope'],
279
+ trustBoundaries: repoScopeHint ? ['cross-module'] : ['local-module'],
280
+ pathScopes,
281
+ }),
282
+ }, pathScopes);
283
+ }
284
+ const EXPORTED_SIGNATURE_PATTERN = /\bexport\s+(?:async\s+)?function\s+[A-Za-z_$][A-Za-z0-9_$]*\s*\(|\bexport\s+const\s+[A-Za-z_$][A-Za-z0-9_$]*\s*=\s*(?:async\s*)?\([^)]*\)\s*=>|\bexport\s+(?:interface|type)\s+[A-Za-z_$][A-Za-z0-9_$]*/i;
285
+ function parseSignatureDriftRule(statement, source, pathScopes) {
286
+ const normalized = normalizeStatement(statement);
287
+ const mentionsSignature = /\b(signature|contract|public api|api surface|exported api)\b/i.test(normalized);
288
+ const mentionsChange = /\b(change|changed|modify|modified|drift|mutation|alter)\b/i.test(normalized);
289
+ const prohibitive = PROHIBITIVE_PATTERN.test(normalized)
290
+ || /\bkeep\b/i.test(normalized)
291
+ || /\bpreserve\b/i.test(normalized);
292
+ if (!mentionsSignature || !mentionsChange || !prohibitive) {
293
+ return null;
294
+ }
295
+ return applyPathScopes({
296
+ id: `${source}:no_api_signature_drift`,
297
+ source,
298
+ statement,
299
+ displayName: 'No exported API signature drift',
300
+ pattern: EXPORTED_SIGNATURE_PATTERN,
301
+ matchToken: 'api-signature-drift',
302
+ evaluationMode: 'signature_delta',
303
+ evaluationScope: 'file',
304
+ provenance: buildProvenance({
305
+ why: 'Statement protects external API signature stability.',
306
+ evidence: ['signature', 'public api', 'change/modify'],
307
+ trustBoundaries: ['public-api', 'external-consumer'],
308
+ pathScopes,
309
+ }),
310
+ }, pathScopes);
311
+ }
312
+ function parseBackwardCompatibilityRule(statement, source, pathScopes) {
313
+ const normalized = normalizeStatement(statement);
314
+ const mentionsCompatibility = /\b(backward compatibility|backwards compatibility|breaking change|non-breaking|existing consumers?)\b/i.test(normalized);
315
+ if (!mentionsCompatibility) {
316
+ return null;
317
+ }
318
+ return applyPathScopes({
319
+ id: `${source}:backward_compatibility`,
320
+ source,
321
+ statement,
322
+ displayName: 'Backward compatibility guard (public contract drift)',
323
+ pattern: EXPORTED_SIGNATURE_PATTERN,
324
+ matchToken: 'backward-compatibility',
325
+ evaluationMode: 'signature_delta',
326
+ evaluationScope: 'file',
327
+ provenance: buildProvenance({
328
+ why: 'Statement requires non-breaking compatibility guarantees for existing consumers.',
329
+ evidence: ['backward compatibility', 'breaking change', 'existing consumers'],
330
+ trustBoundaries: ['public-api', 'external-consumer'],
331
+ pathScopes,
332
+ }),
333
+ }, pathScopes);
334
+ }
335
+ function parseAsyncOrderingRule(statement, source, pathScopes) {
336
+ const normalized = normalizeStatement(statement);
337
+ const mentionsOrdering = /\b(async ordering|message ordering|out of order|preserve order|ordered workflow|ordering guarantees?|fifo)\b/i.test(normalized);
338
+ const mentionsParallelRisk = /\b(parallel|promise\.all|allsettled|race|fan-?out|parallelize)\b/i.test(normalized);
339
+ if (!mentionsOrdering && !mentionsParallelRisk) {
340
+ return null;
341
+ }
342
+ return applyPathScopes({
343
+ id: `${source}:async_ordering`,
344
+ source,
345
+ statement,
346
+ displayName: 'Async ordering guard (parallelization risk)',
347
+ pattern: /\bPromise\.(?:all|allSettled|race|any)\s*\(|\bp-?map\s*\(|\bparallel(?:ize|Map)?\s*\(/i,
348
+ matchToken: 'async-ordering',
349
+ evaluationMode: 'added_lines',
350
+ evaluationScope: 'file',
351
+ provenance: buildProvenance({
352
+ why: 'Statement flags async ordering sensitivity and blocks risky parallel fan-out patterns.',
353
+ evidence: ['ordering', 'out of order', 'parallel execution'],
354
+ trustBoundaries: ['async-workflow', 'downstream-capacity'],
355
+ pathScopes,
356
+ }),
357
+ }, pathScopes);
358
+ }
359
+ function parseEventSchemaConsistencyRule(statement, source, pathScopes) {
360
+ const normalized = normalizeStatement(statement);
361
+ const mentionsEventSchema = /\b(event schema|event payload|event contract|subscriber|downstream event|schema evolution|required fields?)\b/i.test(normalized);
362
+ if (!mentionsEventSchema) {
363
+ return null;
364
+ }
365
+ return applyPathScopes({
366
+ id: `${source}:event_schema_consistency`,
367
+ source,
368
+ statement,
369
+ displayName: 'Event/schema consistency guard',
370
+ pattern: /\b(?:interface|type)\s+[A-Za-z_$][A-Za-z0-9_$]*(?:Event|Payload|Message|Envelope)\b|\bevent[A-Za-z0-9_$]*\s*:\s*|\bschemaVersion\b/i,
371
+ matchToken: 'event-schema-drift',
372
+ evaluationMode: 'signature_delta',
373
+ evaluationScope: 'file',
374
+ provenance: buildProvenance({
375
+ why: 'Statement requires event contract continuity for downstream consumers.',
376
+ evidence: ['event schema', 'subscriber', 'required fields'],
377
+ trustBoundaries: ['event-bus', 'external-subscriber'],
378
+ pathScopes,
379
+ }),
380
+ }, pathScopes);
381
+ }
382
+ function parseMultiTenantIsolationRule(statement, source, pathScopes) {
383
+ const normalized = normalizeStatement(statement);
384
+ const mentionsTenantIsolation = /\b(multi-tenant|tenant isolation|cross-tenant|tenant boundaries?|tenant_id|tenant guard)\b/i.test(normalized);
385
+ if (!mentionsTenantIsolation) {
386
+ return null;
387
+ }
388
+ return applyPathScopes({
389
+ id: `${source}:multi_tenant_isolation`,
390
+ source,
391
+ statement,
392
+ displayName: 'Multi-tenant isolation guard',
393
+ pattern: /\b(?:bypassTenant(?:Guard|Scope)?|ignoreTenant(?:Scope)?|crossTenant|allTenants|tenantScope\s*:\s*false|setTenantContext\s*\(\s*null\s*\)|withoutTenantScope)\b/i,
394
+ matchToken: 'tenant-isolation',
395
+ evaluationMode: 'full_file',
396
+ evaluationScope: 'file',
397
+ provenance: buildProvenance({
398
+ why: 'Statement enforces tenant boundary safety and isolation constraints.',
399
+ evidence: ['multi-tenant', 'tenant_id', 'cross-tenant'],
400
+ trustBoundaries: ['tenant-boundary', 'data-access-layer'],
401
+ pathScopes,
402
+ }),
403
+ }, pathScopes);
404
+ }
405
+ function parseCacheInvariantRule(statement, source, pathScopes) {
406
+ const normalized = normalizeStatement(statement);
407
+ const mentionsCache = /\b(cache invalidation|cache invariant|cache keys?|cache consistency|evict cache|clear(?:ing)? (?:shared )?cache|shared cache|invalidate .*cache)\b/i.test(normalized);
408
+ if (!mentionsCache) {
409
+ return null;
410
+ }
411
+ return applyPathScopes({
412
+ id: `${source}:cache_invariant`,
413
+ source,
414
+ statement,
415
+ displayName: 'Cache invariant guard (global invalidation risk)',
416
+ pattern: /\b(?:cache\.(?:clear|reset)\s*\(\s*\)|invalidateAll\s*\(|flushAll\s*\(|redis\.flush(?:all|db)\s*\(|\bFLUSH(?:ALL|DB)\b)\b/i,
417
+ matchToken: 'cache-invariant',
418
+ evaluationMode: 'added_lines',
419
+ evaluationScope: 'file',
420
+ provenance: buildProvenance({
421
+ why: 'Statement marks cache behavior as operationally sensitive and blocks global flush patterns.',
422
+ evidence: ['cache invalidation', 'cache key', 'clear cache'],
423
+ trustBoundaries: ['cache-layer', 'operational-safety'],
424
+ pathScopes,
425
+ }),
426
+ }, pathScopes);
427
+ }
428
+ function parseIdempotencyRule(statement, source, pathScopes) {
429
+ const normalized = normalizeStatement(statement);
430
+ const mentionsIdempotency = /\b(idempotency|idempotent|retryable write|retries|exactly once|at-least-once)\b/i.test(normalized);
431
+ if (!mentionsIdempotency) {
432
+ return null;
433
+ }
434
+ return applyPathScopes({
435
+ id: `${source}:idempotency`,
436
+ source,
437
+ statement,
438
+ displayName: 'Idempotency expectation guard',
439
+ pattern: /\b(?:idempotency[-_ ]key|x-idempotency-key|idempotencyKey|dedupe(?:Key|Id)?)\b/i,
440
+ matchToken: 'idempotency-key',
441
+ minMatchesPerFile: 1,
442
+ evaluationMode: 'full_file',
443
+ evaluationScope: 'repo',
444
+ provenance: buildProvenance({
445
+ why: 'Statement requires deterministic retry safety via idempotency markers.',
446
+ evidence: ['idempotency', 'retryable write', 'exactly once'],
447
+ trustBoundaries: ['api-edge', 'write-path'],
448
+ pathScopes,
449
+ }),
450
+ }, pathScopes);
451
+ }
452
+ function parseMigrationSafetyRule(statement, source, pathScopes) {
453
+ const normalized = normalizeStatement(statement);
454
+ const mentionsMigration = /\b(migration safety|schema migration|destructive migration|drop column|drop table|truncate table|backfill safety)\b/i.test(normalized);
455
+ if (!mentionsMigration) {
456
+ return null;
457
+ }
458
+ return applyPathScopes({
459
+ id: `${source}:migration_safety`,
460
+ source,
461
+ statement,
462
+ displayName: 'Migration safety guard (destructive operation risk)',
463
+ pattern: /\b(?:DROP\s+COLUMN|DROP\s+TABLE|TRUNCATE\s+TABLE|ALTER\s+TABLE\s+[A-Za-z0-9_`".]+\s+DROP\s+COLUMN|DELETE\s+FROM\s+[A-Za-z0-9_`".]+\s*;)\b/i,
464
+ matchToken: 'destructive-migration',
465
+ evaluationMode: 'added_lines',
466
+ evaluationScope: 'file',
467
+ provenance: buildProvenance({
468
+ why: 'Statement requires non-destructive migration behavior for production safety.',
469
+ evidence: ['migration safety', 'drop column', 'truncate table'],
470
+ trustBoundaries: ['data-store', 'migration-pipeline'],
471
+ pathScopes,
472
+ }),
473
+ }, pathScopes);
256
474
  }
257
475
  function statementMatchesTemplate(normalizedStatement, template) {
258
476
  return template.triggerTokens.some((token) => normalizedStatement.includes(token));
259
477
  }
260
478
  function createRule(template, source, statement, pathScopes) {
261
- const includePatterns = [...pathScopes.includePatterns];
262
- const excludePatterns = [...pathScopes.excludePatterns];
263
- return {
479
+ return applyPathScopes({
264
480
  id: `${source}:${template.id}`,
265
481
  source,
266
482
  statement,
267
483
  displayName: template.displayName,
268
484
  pattern: template.pattern,
269
485
  matchToken: template.matchToken,
270
- ...(includePatterns.length > 0
271
- ? {
272
- pathIncludePatterns: includePatterns,
273
- pathIncludes: compilePathPatterns(includePatterns),
274
- }
275
- : {}),
276
- ...(excludePatterns.length > 0
277
- ? {
278
- pathExcludePatterns: excludePatterns,
279
- pathExcludes: compilePathPatterns(excludePatterns),
280
- }
281
- : {}),
282
- };
486
+ provenance: buildProvenance({
487
+ why: 'Statement matched deterministic constraint template.',
488
+ evidence: template.triggerTokens,
489
+ trustBoundaries: ['code-hygiene'],
490
+ pathScopes,
491
+ }),
492
+ }, pathScopes);
283
493
  }
284
494
  function compileStatements(statements, source) {
285
495
  const rules = [];
@@ -295,6 +505,46 @@ function compileStatements(statements, source) {
295
505
  rules.push(invocationLimitRule);
296
506
  continue;
297
507
  }
508
+ const signatureDriftRule = parseSignatureDriftRule(rawStatement, source, pathScopes);
509
+ if (signatureDriftRule) {
510
+ rules.push(signatureDriftRule);
511
+ continue;
512
+ }
513
+ const backwardCompatibilityRule = parseBackwardCompatibilityRule(rawStatement, source, pathScopes);
514
+ if (backwardCompatibilityRule) {
515
+ rules.push(backwardCompatibilityRule);
516
+ continue;
517
+ }
518
+ const asyncOrderingRule = parseAsyncOrderingRule(rawStatement, source, pathScopes);
519
+ if (asyncOrderingRule) {
520
+ rules.push(asyncOrderingRule);
521
+ continue;
522
+ }
523
+ const eventSchemaRule = parseEventSchemaConsistencyRule(rawStatement, source, pathScopes);
524
+ if (eventSchemaRule) {
525
+ rules.push(eventSchemaRule);
526
+ continue;
527
+ }
528
+ const multiTenantRule = parseMultiTenantIsolationRule(rawStatement, source, pathScopes);
529
+ if (multiTenantRule) {
530
+ rules.push(multiTenantRule);
531
+ continue;
532
+ }
533
+ const cacheInvariantRule = parseCacheInvariantRule(rawStatement, source, pathScopes);
534
+ if (cacheInvariantRule) {
535
+ rules.push(cacheInvariantRule);
536
+ continue;
537
+ }
538
+ const idempotencyRule = parseIdempotencyRule(rawStatement, source, pathScopes);
539
+ if (idempotencyRule) {
540
+ rules.push(idempotencyRule);
541
+ continue;
542
+ }
543
+ const migrationSafetyRule = parseMigrationSafetyRule(rawStatement, source, pathScopes);
544
+ if (migrationSafetyRule) {
545
+ rules.push(migrationSafetyRule);
546
+ continue;
547
+ }
298
548
  const requiresProhibitiveLanguage = source === 'intent';
299
549
  if (requiresProhibitiveLanguage && !PROHIBITIVE_PATTERN.test(normalized)) {
300
550
  continue;
@@ -325,6 +575,7 @@ function dedupeRules(rules) {
325
575
  typeof rule.minMatchesPerFile === 'number' ? String(rule.minMatchesPerFile) : '',
326
576
  typeof rule.maxMatchesPerFile === 'number' ? String(rule.maxMatchesPerFile) : '',
327
577
  rule.evaluationMode || '',
578
+ rule.evaluationScope || '',
328
579
  ].join('::');
329
580
  if (seen.has(key)) {
330
581
  continue;
@@ -1 +1 @@
1
- {"version":3,"file":"constraints.js","sourceRoot":"","sources":["../src/constraints.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constraints.js","sourceRoot":"","sources":["../src/constraints.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -38,6 +38,10 @@ function detectConstraintViolations(intentConstraints, policyRules, extraConstra
38
38
  }
39
39
  const violations = [];
40
40
  const seenViolations = new Set();
41
+ const normalizedFileContents = {};
42
+ for (const [path, content] of Object.entries(fileContents || {})) {
43
+ normalizedFileContents[normalizeRepoPath(path)] = content;
44
+ }
41
45
  const pathMatchesRule = (rule, filePath) => {
42
46
  const include = rule.pathIncludes || [];
43
47
  const exclude = rule.pathExcludes || [];
@@ -60,7 +64,84 @@ function detectConstraintViolations(intentConstraints, policyRules, extraConstra
60
64
  }
61
65
  return total;
62
66
  };
67
+ const addedLinesByPath = new Map();
68
+ for (const file of changedFiles) {
69
+ const addedLines = (file.hunks || []).flatMap((hunk) => hunk.lines
70
+ .filter((line) => line.type === 'added')
71
+ .map((line) => line.content));
72
+ addedLinesByPath.set(file.path, addedLines.join('\n'));
73
+ }
74
+ const candidateRepoPaths = new Set([
75
+ ...changedFiles.map((file) => file.path),
76
+ ...Object.keys(normalizedFileContents),
77
+ ]);
63
78
  for (const rule of rules) {
79
+ if (rule.evaluationMode === 'signature_delta') {
80
+ for (const file of changedFiles) {
81
+ if (!pathMatchesRule(rule, file.path)) {
82
+ continue;
83
+ }
84
+ const addedSignatureLines = (file.hunks || []).flatMap((hunk) => hunk.lines
85
+ .filter((line) => line.type === 'added' && new RegExp(rule.pattern.source, rule.pattern.flags).test(line.content))
86
+ .map((line) => line.content));
87
+ const removedSignatureLines = (file.hunks || []).flatMap((hunk) => hunk.lines
88
+ .filter((line) => line.type === 'removed' && new RegExp(rule.pattern.source, rule.pattern.flags).test(line.content))
89
+ .map((line) => line.content));
90
+ const deltaCount = addedSignatureLines.length + removedSignatureLines.length;
91
+ if (deltaCount === 0) {
92
+ continue;
93
+ }
94
+ const violation = `Exported API signature delta detected in ${file.path} ` +
95
+ `(added ${addedSignatureLines.length}, removed ${removedSignatureLines.length}, violates constraint: "${rule.displayName}")`;
96
+ if (!seenViolations.has(violation)) {
97
+ seenViolations.add(violation);
98
+ violations.push(violation);
99
+ }
100
+ }
101
+ continue;
102
+ }
103
+ const hasMatchBounds = (typeof rule.maxMatchesPerFile === 'number' && Number.isFinite(rule.maxMatchesPerFile))
104
+ || (typeof rule.minMatchesPerFile === 'number' && Number.isFinite(rule.minMatchesPerFile));
105
+ if (rule.evaluationScope === 'repo' && hasMatchBounds) {
106
+ let repoMatchCount = 0;
107
+ let scannedPaths = 0;
108
+ for (const filePath of candidateRepoPaths) {
109
+ if (!pathMatchesRule(rule, filePath)) {
110
+ continue;
111
+ }
112
+ const fullContent = normalizedFileContents[filePath];
113
+ const addedFallback = addedLinesByPath.get(filePath) || '';
114
+ const haystack = rule.evaluationMode === 'full_file' && typeof fullContent === 'string'
115
+ ? fullContent
116
+ : addedFallback;
117
+ if (!haystack) {
118
+ continue;
119
+ }
120
+ scannedPaths += 1;
121
+ repoMatchCount += countMatches(rule.pattern, haystack);
122
+ }
123
+ if (typeof rule.maxMatchesPerFile === 'number'
124
+ && Number.isFinite(rule.maxMatchesPerFile)
125
+ && repoMatchCount > rule.maxMatchesPerFile) {
126
+ const violation = `${rule.matchToken} matched ${repoMatchCount} times across repository scope ` +
127
+ `(limit ${rule.maxMatchesPerFile}, scanned ${scannedPaths} file(s), violates constraint: "${rule.displayName}")`;
128
+ if (!seenViolations.has(violation)) {
129
+ seenViolations.add(violation);
130
+ violations.push(violation);
131
+ }
132
+ }
133
+ if (typeof rule.minMatchesPerFile === 'number'
134
+ && Number.isFinite(rule.minMatchesPerFile)
135
+ && repoMatchCount < rule.minMatchesPerFile) {
136
+ const violation = `${rule.matchToken} matched ${repoMatchCount} times across repository scope ` +
137
+ `(minimum ${rule.minMatchesPerFile}, scanned ${scannedPaths} file(s), violates constraint: "${rule.displayName}")`;
138
+ if (!seenViolations.has(violation)) {
139
+ seenViolations.add(violation);
140
+ violations.push(violation);
141
+ }
142
+ }
143
+ continue;
144
+ }
64
145
  for (const file of changedFiles) {
65
146
  if (!pathMatchesRule(rule, file.path)) {
66
147
  continue;
@@ -68,17 +149,12 @@ function detectConstraintViolations(intentConstraints, policyRules, extraConstra
68
149
  if (!file.hunks || file.hunks.length === 0) {
69
150
  continue;
70
151
  }
71
- const addedLines = file.hunks.flatMap((hunk) => hunk.lines
72
- .filter((line) => line.type === 'added')
73
- .map((line) => line.content));
74
- if ((typeof rule.maxMatchesPerFile === 'number'
75
- && Number.isFinite(rule.maxMatchesPerFile)) || (typeof rule.minMatchesPerFile === 'number'
76
- && Number.isFinite(rule.minMatchesPerFile))) {
77
- const fallbackText = addedLines.join('\n');
78
- const fullContent = fileContents?.[file.path];
152
+ const addedLines = addedLinesByPath.get(file.path) || '';
153
+ if (hasMatchBounds) {
154
+ const fullContent = normalizedFileContents[file.path];
79
155
  const haystack = rule.evaluationMode === 'full_file' && typeof fullContent === 'string'
80
156
  ? fullContent
81
- : fallbackText;
157
+ : addedLines;
82
158
  const matchCount = countMatches(rule.pattern, haystack);
83
159
  if (typeof rule.maxMatchesPerFile === 'number'
84
160
  && Number.isFinite(rule.maxMatchesPerFile)
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAuFA,0DAeC;AA8ND,gDAyBC;AAED,oEAqBC;AAED,4DAwFC;AA7cD,6CAMuB;AALrB,8HAAA,+BAA+B,OAAA;AAMjC,+CAAkG;AA2ElG,SAAS,iBAAiB,CAAC,SAAiB;IAC1C,OAAO,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;AACnE,CAAC;AAED,SAAgB,uBAAuB,CAAC,SAA8B;IACpE,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAU,CAAC;IAE3C,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;QAC7B,MAAM,cAAc,GAAG,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,SAAS;QACX,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACzD,gBAAgB,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;AACtC,CAAC;AAED,SAAS,0BAA0B,CACjC,iBAAqC,EACrC,WAAiC,EACjC,oBAA+D,EAC/D,YAA4B,EAC5B,YAAqC;IAErC,MAAM,QAAQ,GAAG,IAAA,6CAA+B,EAAC;QAC/C,iBAAiB;QACjB,WAAW;KACZ,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG;QACZ,GAAG,QAAQ,CAAC,KAAK;QACjB,GAAG,CAAC,oBAAoB,IAAI,EAAE,CAAC;KAChC,CAAC;IAEF,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,MAAM,cAAc,GAAG,IAAI,GAAG,EAAU,CAAC;IACzC,MAAM,sBAAsB,GAA2B,EAAE,CAAC;IAC1D,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,IAAI,EAAE,CAAC,EAAE,CAAC;QACjE,sBAAsB,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,GAAG,OAAO,CAAC;IAC5D,CAAC;IAED,MAAM,eAAe,GAAG,CAAC,IAAiC,EAAE,QAAgB,EAAW,EAAE;QACvF,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC;QACxC,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC;QACxC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;YAC7E,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;YAC5E,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,CAAC,OAAe,EAAE,KAAa,EAAU,EAAE;QAC9D,IAAI,CAAC,KAAK;YAAE,OAAO,CAAC,CAAC;QACrB,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,GAAG,CAAC;QAChF,MAAM,EAAE,GAAG,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC7C,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;YACxC,KAAK,IAAI,CAAC,CAAC;QACb,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IAEF,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAkB,CAAC;IACnD,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;QAChC,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CACrD,IAAI,CAAC,KAAK;aACP,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC;aACvC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAC/B,CAAC;QACF,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACzD,CAAC;IAED,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAS;QACzC,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;QACxC,GAAG,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC;KACvC,CAAC,CAAC;IAEH,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,cAAc,KAAK,iBAAiB,EAAE,CAAC;YAC9C,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;gBAChC,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;oBACtC,SAAS;gBACX,CAAC;gBACD,MAAM,mBAAmB,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAC9D,IAAI,CAAC,KAAK;qBACP,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;qBACjH,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAC/B,CAAC;gBACF,MAAM,qBAAqB,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAChE,IAAI,CAAC,KAAK;qBACP,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;qBACnH,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAC/B,CAAC;gBACF,MAAM,UAAU,GAAG,mBAAmB,CAAC,MAAM,GAAG,qBAAqB,CAAC,MAAM,CAAC;gBAC7E,IAAI,UAAU,KAAK,CAAC,EAAE,CAAC;oBACrB,SAAS;gBACX,CAAC;gBACD,MAAM,SAAS,GACb,4CAA4C,IAAI,CAAC,IAAI,GAAG;oBACxD,UAAU,mBAAmB,CAAC,MAAM,aAAa,qBAAqB,CAAC,MAAM,2BAA2B,IAAI,CAAC,WAAW,IAAI,CAAC;gBAC/H,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;oBACnC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;oBAC9B,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC7B,CAAC;YACH,CAAC;YACD,SAAS;QACX,CAAC;QAED,MAAM,cAAc,GAClB,CAAC,OAAO,IAAI,CAAC,iBAAiB,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;eACpF,CAAC,OAAO,IAAI,CAAC,iBAAiB,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;QAE7F,IAAI,IAAI,CAAC,eAAe,KAAK,MAAM,IAAI,cAAc,EAAE,CAAC;YACtD,IAAI,cAAc,GAAG,CAAC,CAAC;YACvB,IAAI,YAAY,GAAG,CAAC,CAAC;YACrB,KAAK,MAAM,QAAQ,IAAI,kBAAkB,EAAE,CAAC;gBAC1C,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC;oBACrC,SAAS;gBACX,CAAC;gBACD,MAAM,WAAW,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAC;gBACrD,MAAM,aAAa,GAAG,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;gBAC3D,MAAM,QAAQ,GACZ,IAAI,CAAC,cAAc,KAAK,WAAW,IAAI,OAAO,WAAW,KAAK,QAAQ;oBACpE,CAAC,CAAC,WAAW;oBACb,CAAC,CAAC,aAAa,CAAC;gBACpB,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACd,SAAS;gBACX,CAAC;gBACD,YAAY,IAAI,CAAC,CAAC;gBAClB,cAAc,IAAI,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACzD,CAAC;YAED,IACE,OAAO,IAAI,CAAC,iBAAiB,KAAK,QAAQ;mBACvC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC;mBACvC,cAAc,GAAG,IAAI,CAAC,iBAAiB,EAC1C,CAAC;gBACD,MAAM,SAAS,GACb,GAAG,IAAI,CAAC,UAAU,YAAY,cAAc,iCAAiC;oBAC7E,UAAU,IAAI,CAAC,iBAAiB,aAAa,YAAY,mCAAmC,IAAI,CAAC,WAAW,IAAI,CAAC;gBACnH,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;oBACnC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;oBAC9B,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC7B,CAAC;YACH,CAAC;YAED,IACE,OAAO,IAAI,CAAC,iBAAiB,KAAK,QAAQ;mBACvC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC;mBACvC,cAAc,GAAG,IAAI,CAAC,iBAAiB,EAC1C,CAAC;gBACD,MAAM,SAAS,GACb,GAAG,IAAI,CAAC,UAAU,YAAY,cAAc,iCAAiC;oBAC7E,YAAY,IAAI,CAAC,iBAAiB,aAAa,YAAY,mCAAmC,IAAI,CAAC,WAAW,IAAI,CAAC;gBACrH,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;oBACnC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;oBAC9B,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC7B,CAAC;YACH,CAAC;YACD,SAAS;QACX,CAAC;QAED,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;YAChC,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACtC,SAAS;YACX,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC3C,SAAS;YACX,CAAC;YAED,MAAM,UAAU,GAAG,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YAEzD,IAAI,cAAc,EAAE,CAAC;gBACnB,MAAM,WAAW,GAAG,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACtD,MAAM,QAAQ,GACZ,IAAI,CAAC,cAAc,KAAK,WAAW,IAAI,OAAO,WAAW,KAAK,QAAQ;oBACpE,CAAC,CAAC,WAAW;oBACb,CAAC,CAAC,UAAU,CAAC;gBACjB,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;gBACxD,IACE,OAAO,IAAI,CAAC,iBAAiB,KAAK,QAAQ;uBACvC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC;uBACvC,UAAU,GAAG,IAAI,CAAC,iBAAiB,EACtC,CAAC;oBACD,MAAM,SAAS,GACb,GAAG,IAAI,CAAC,UAAU,YAAY,UAAU,aAAa,IAAI,CAAC,IAAI,GAAG;wBACjE,UAAU,IAAI,CAAC,iBAAiB,2BAA2B,IAAI,CAAC,WAAW,IAAI,CAAC;oBAClF,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;wBACnC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;wBAC9B,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBAC7B,CAAC;gBACH,CAAC;gBACD,IACE,OAAO,IAAI,CAAC,iBAAiB,KAAK,QAAQ;uBACvC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC;uBACvC,UAAU,GAAG,IAAI,CAAC,iBAAiB,EACtC,CAAC;oBACD,MAAM,SAAS,GACb,GAAG,IAAI,CAAC,UAAU,YAAY,UAAU,aAAa,IAAI,CAAC,IAAI,GAAG;wBACjE,YAAY,IAAI,CAAC,iBAAiB,2BAA2B,IAAI,CAAC,WAAW,IAAI,CAAC;oBACpF,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;wBACnC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;wBAC9B,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBAC7B,CAAC;gBACH,CAAC;gBACD,SAAS;YACX,CAAC;YAED,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBAC9B,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;oBAC9B,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;wBAC1B,SAAS;oBACX,CAAC;oBACD,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;oBACpE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;wBAChC,SAAS;oBACX,CAAC;oBACD,MAAM,SAAS,GAAG,GAAG,IAAI,CAAC,UAAU,aAAa,IAAI,CAAC,IAAI,4BAA4B,IAAI,CAAC,WAAW,KAAK,CAAC;oBAC5G,IAAI,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;wBAClC,SAAS;oBACX,CAAC;oBACD,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;oBAC9B,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC7B,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAgB,kBAAkB,CAAC,KAMlC;IACC,IAAI,KAAK,CAAC,oBAAoB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1C,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,KAAK,CAAC,iBAAiB,KAAK,CAAC,IAAI,KAAK,CAAC,oBAAoB,KAAK,CAAC,EAAE,CAAC;QACtE,uDAAuD;QACvD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,KAAK,CAAC,UAAU,GAAG,CAAC,IAAI,KAAK,CAAC,cAAc,GAAG,EAAE,EAAE,CAAC;QACtD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,KAAK,CAAC,UAAU,GAAG,CAAC,IAAI,KAAK,CAAC,cAAc,GAAG,EAAE,EAAE,CAAC;QACtD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAgB,4BAA4B,CAAC,MAG5C;IACC,IAAI,MAAM,CAAC,oBAAoB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3C,OAAO,2BAA2B,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,oBAAoB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,oBAAoB,CAAC,MAAM,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IAC1K,CAAC;IAED,IAAI,MAAM,CAAC,iBAAiB,KAAK,CAAC,IAAI,MAAM,CAAC,oBAAoB,KAAK,CAAC,EAAE,CAAC;QACxE,OAAO,wEAAwE,CAAC;IAClF,CAAC;IAED,IAAI,MAAM,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;QAC9B,OAAO,qBAAqB,MAAM,CAAC,cAAc,MAAM,MAAM,CAAC,oBAAoB,IAAI,MAAM,CAAC,iBAAiB,0BAA0B,CAAC;IAC3I,CAAC;IAED,IAAI,MAAM,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;QAC9B,OAAO,uBAAuB,MAAM,CAAC,cAAc,MAAM,MAAM,CAAC,oBAAoB,IAAI,MAAM,CAAC,iBAAiB,2BAA2B,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,UAAU,6BAA6B,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IAChO,CAAC;IAED,OAAO,qBAAqB,MAAM,CAAC,cAAc,MAAM,MAAM,CAAC,oBAAoB,IAAI,MAAM,CAAC,iBAAiB,6BAA6B,MAAM,CAAC,UAAU,6BAA6B,CAAC;AAC5L,CAAC;AAED,SAAgB,wBAAwB,CAAC,KAA4B;IACnE,MAAM,gBAAgB,GAAG,uBAAuB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAClE,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAE7C,MAAM,sBAAsB,GAAG,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC/D,GAAG,IAAI;QACP,IAAI,EAAE,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC;QAClC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS;QACnE,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE;KACxB,CAAC,CAAC,CAAC;IAEJ,MAAM,gBAAgB,GAAG,KAAK,CAAC,IAAI,CACjC,IAAI,GAAG,CACL,sBAAsB;SACnB,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;SACxB,MAAM,CAAC,OAAO,CAAC,CACnB,CACF,CAAC;IACF,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAE7C,MAAM,UAAU,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;IACtF,MAAM,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC;IAErC,MAAM,iBAAiB,GAAG,UAAU,CAAC,IAAI,CAAC;IAC1C,MAAM,oBAAoB,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;IACtG,MAAM,cAAc,GAAG,iBAAiB,GAAG,CAAC;QAC1C,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,oBAAoB,GAAG,iBAAiB,CAAC,GAAG,GAAG,CAAC;QAC9D,CAAC,CAAC,CAAC,CAAC;IAEN,MAAM,oBAAoB,GAAG,0BAA0B,CACrD,KAAK,CAAC,iBAAiB,EACvB,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,oBAAoB,EAC1B,sBAAsB,EACtB,KAAK,CAAC,YAAY,CACnB,CAAC;IACF,MAAM,OAAO,GAAG,kBAAkB,CAAC;QACjC,UAAU;QACV,cAAc;QACd,iBAAiB;QACjB,oBAAoB;QACpB,oBAAoB;KACrB,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,KAAK,CAAC,SAAS;QAChC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,UAAU;QAC5B,CAAC,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACtE,MAAM,YAAY,GAAG,KAAK,CAAC,SAAS;QAClC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,YAAY;QAC9B,CAAC,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAExE,MAAM,WAAW,GAAoB;QACnC,KAAK,EAAE,UAAU;QACjB,OAAO,EAAE,YAAY;QACrB,KAAK,EAAE,sBAAsB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC3C,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE;SACxB,CAAC,CAAC;QACH,UAAU;QACV,oBAAoB;QACpB,iBAAiB;KAClB,CAAC;IAEF,MAAM,OAAO,GAAG,4BAA4B,CAAC;QAC3C,oBAAoB;QACpB,iBAAiB;QACjB,oBAAoB;QACpB,OAAO;QACP,cAAc;QACd,UAAU;KACX,CAAC,CAAC;IAEH,OAAO;QACL,cAAc;QACd,UAAU;QACV,UAAU;QACV,oBAAoB;QACpB,iBAAiB;QACjB,gBAAgB,EAAE,UAAU,KAAK,CAAC;QAClC,oBAAoB;QACpB,OAAO;QACP,WAAW;QACX,OAAO;KACR,CAAC;AACJ,CAAC"}