@optave/codegraph 3.9.2 → 3.9.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.
Files changed (42) hide show
  1. package/README.md +93 -10
  2. package/dist/ast-analysis/engine.d.ts.map +1 -1
  3. package/dist/ast-analysis/engine.js +64 -0
  4. package/dist/ast-analysis/engine.js.map +1 -1
  5. package/dist/domain/analysis/diff-impact.d.ts +12 -0
  6. package/dist/domain/analysis/diff-impact.d.ts.map +1 -1
  7. package/dist/domain/analysis/diff-impact.js +20 -1
  8. package/dist/domain/analysis/diff-impact.js.map +1 -1
  9. package/dist/domain/graph/builder/native-db-proxy.d.ts.map +1 -1
  10. package/dist/domain/graph/builder/native-db-proxy.js +8 -4
  11. package/dist/domain/graph/builder/native-db-proxy.js.map +1 -1
  12. package/dist/domain/graph/builder/pipeline.d.ts.map +1 -1
  13. package/dist/domain/graph/builder/pipeline.js +89 -84
  14. package/dist/domain/graph/builder/pipeline.js.map +1 -1
  15. package/dist/domain/parser.d.ts.map +1 -1
  16. package/dist/domain/parser.js +6 -2
  17. package/dist/domain/parser.js.map +1 -1
  18. package/dist/features/ast.js +2 -2
  19. package/dist/features/ast.js.map +1 -1
  20. package/dist/features/cfg.d.ts +1 -1
  21. package/dist/features/cfg.d.ts.map +1 -1
  22. package/dist/features/cfg.js +52 -6
  23. package/dist/features/cfg.js.map +1 -1
  24. package/dist/features/complexity.d.ts.map +1 -1
  25. package/dist/features/complexity.js +7 -0
  26. package/dist/features/complexity.js.map +1 -1
  27. package/dist/infrastructure/update-check.d.ts +1 -1
  28. package/dist/infrastructure/update-check.js +3 -3
  29. package/dist/infrastructure/update-check.js.map +1 -1
  30. package/dist/types.d.ts +1 -0
  31. package/dist/types.d.ts.map +1 -1
  32. package/package.json +7 -7
  33. package/src/ast-analysis/engine.ts +83 -0
  34. package/src/domain/analysis/diff-impact.ts +28 -1
  35. package/src/domain/graph/builder/native-db-proxy.ts +10 -4
  36. package/src/domain/graph/builder/pipeline.ts +108 -89
  37. package/src/domain/parser.ts +6 -2
  38. package/src/features/ast.ts +2 -2
  39. package/src/features/cfg.ts +51 -6
  40. package/src/features/complexity.ts +7 -0
  41. package/src/infrastructure/update-check.ts +3 -3
  42. package/src/types.ts +1 -0
package/README.md CHANGED
@@ -544,6 +544,35 @@ The graph stays current without re-parsing your entire codebase. Three-tier chan
544
544
 
545
545
  **Result:** change one file in a 3,000-file project and the rebuild completes in under a second. Put it in a commit hook, a file watcher, or let your AI agent trigger it.
546
546
 
547
+ #### What incremental rebuilds refresh — and what they don't
548
+
549
+ Incremental builds re-parse changed files and rebuild their edges, structure metrics, and role classifications. But some data is **only fully refreshed on a full rebuild:**
550
+
551
+ | Data | Incremental | Full rebuild |
552
+ |------|:-----------:|:------------:|
553
+ | Symbols & edges for changed files | Yes | Yes |
554
+ | Reverse-dependency cascade (importers of changed files) | Yes | Yes |
555
+ | AST nodes, complexity, CFG, dataflow for changed files | Yes | Yes |
556
+ | Directory-level cohesion metrics | Partial (skipped for ≤5 files) | Yes |
557
+ | Advisory checks (orphaned embeddings, stale embeddings, unused exports) | Skipped | Yes |
558
+ | Build metadata persistence | Skipped for ≤3 files | Yes |
559
+ | Incremental drift detection | Skipped | Yes |
560
+
561
+ **When to run a full rebuild:**
562
+
563
+ ```bash
564
+ codegraph build --no-incremental # Force full rebuild
565
+ ```
566
+
567
+ - **After large refactors** (renames, moves, deleted files) — the reverse-dependency cascade handles most cases, but a full rebuild ensures nothing is stale
568
+ - **If you suspect stale analysis data** — complexity or dataflow results for files you didn't directly edit won't update incrementally
569
+ - **Periodically** — if you rely heavily on `complexity`, `dataflow`, `roles --role dead`, or `communities` queries, run a full rebuild weekly or after major merges
570
+ - **After upgrading codegraph** — engine, schema, or version changes trigger an automatic full rebuild, but if you skip versions you may want to force one
571
+
572
+ Codegraph auto-detects and forces a full rebuild when the engine, schema version, or codegraph version changes between builds. For everything else, incremental is the safe default — a full rebuild is a correctness guarantee, not a frequent necessity.
573
+
574
+ > **Detailed guide:** See [docs/guides/incremental-builds.md](docs/guides/incremental-builds.md) for a complete breakdown of what each build mode refreshes and recommended rebuild schedules.
575
+
547
576
  ### Dual Engine
548
577
 
549
578
  Codegraph ships with two parsing engines:
@@ -588,22 +617,76 @@ Codegraph also extracts symbols from common callback patterns: Commander `.comma
588
617
 
589
618
  Self-measured on every release via CI ([build benchmarks](generated/benchmarks/BUILD-BENCHMARKS.md) | [embedding benchmarks](generated/benchmarks/EMBEDDING-BENCHMARKS.md) | [query benchmarks](generated/benchmarks/QUERY-BENCHMARKS.md) | [incremental benchmarks](generated/benchmarks/INCREMENTAL-BENCHMARKS.md) | [resolution precision/recall](tests/benchmarks/resolution/)):
590
619
 
591
- *Last updated: v3.9.1 (2026-04-06)*
620
+ *Last updated: v3.9.2 (2026-04-09)*
592
621
 
593
622
  | Metric | Native | WASM |
594
623
  |---|---|---|
595
- | Build speed | **10.2 ms/file** | **13.7 ms/file** |
596
- | Query time | **23ms** | **36ms** |
597
- | No-op rebuild | **17ms** | **15ms** |
598
- | 1-file rebuild | **767ms** | **639ms** |
599
- | Query: fn-deps | **2.2ms** | **2.2ms** |
600
- | Query: path | **2.2ms** | **2.2ms** |
601
- | ~50,000 files (est.) | **~510.0s build** | **~685.0s build** |
602
- | Resolution precision | **100.0%** | — |
603
- | Resolution recall | **71.1%** | — |
624
+ | Build speed | **15.7 ms/file** | **15 ms/file** |
625
+ | Query time | **27ms** | **40ms** |
626
+ | No-op rebuild | **9ms** | **20ms** |
627
+ | 1-file rebuild | **558ms** | **624ms** |
628
+ | Query: fn-deps | **2.3ms** | **2.4ms** |
629
+ | Query: path | **2.5ms** | **2.4ms** |
630
+ | ~50,000 files (est.) | **~785.0s build** | **~750.0s build** |
631
+ | Resolution precision | **90.7%** | — |
632
+ | Resolution recall | **42.9%** | — |
604
633
 
605
634
  Metrics are normalized per file for cross-version comparability. Times above are for a full initial build — incremental rebuilds only re-parse changed files.
606
635
 
636
+ <details><summary>Per-language resolution precision/recall</summary>
637
+
638
+ | Language | Precision | Recall | TP | FP | FN | Edges | Dynamic |
639
+ |----------|----------:|-------:|---:|---:|---:|------:|--------:|
640
+ | javascript | 100.0% | 66.7% | 12 | 0 | 6 | 18 | 14/28 |
641
+ | typescript | 100.0% | 75.0% | 15 | 0 | 5 | 20 | — |
642
+ | bash | 100.0% | 100.0% | 12 | 0 | 0 | 12 | 0/1 |
643
+ | c | 100.0% | 100.0% | 9 | 0 | 0 | 9 | — |
644
+ | clojure | 80.0% | 26.7% | 4 | 1 | 11 | 15 | — |
645
+ | cpp | 100.0% | 57.1% | 8 | 0 | 6 | 14 | — |
646
+ | csharp | 100.0% | 52.6% | 10 | 0 | 9 | 19 | — |
647
+ | cuda | 50.0% | 33.3% | 4 | 4 | 8 | 12 | — |
648
+ | dart | 0.0% | 0.0% | 0 | 0 | 18 | 18 | — |
649
+ | elixir | 0.0% | 0.0% | 0 | 0 | 15 | 15 | — |
650
+ | erlang | 100.0% | 100.0% | 12 | 0 | 0 | 12 | — |
651
+ | fsharp | 0.0% | 0.0% | 0 | 9 | 12 | 12 | — |
652
+ | gleam | 100.0% | 26.7% | 4 | 0 | 11 | 15 | — |
653
+ | go | 100.0% | 69.2% | 9 | 0 | 4 | 13 | 13/14 |
654
+ | groovy | 100.0% | 7.7% | 1 | 0 | 12 | 13 | — |
655
+ | haskell | 100.0% | 33.3% | 4 | 0 | 8 | 12 | — |
656
+ | hcl | 0.0% | 0.0% | 0 | 0 | 2 | 2 | — |
657
+ | java | 100.0% | 52.9% | 9 | 0 | 8 | 17 | — |
658
+ | julia | 0.0% | 0.0% | 0 | 0 | 15 | 15 | — |
659
+ | kotlin | 92.3% | 63.2% | 12 | 1 | 7 | 19 | — |
660
+ | lua | 100.0% | 15.4% | 2 | 0 | 11 | 13 | — |
661
+ | objc | 0.0% | 0.0% | 0 | 1 | 12 | 12 | — |
662
+ | ocaml | 100.0% | 8.3% | 1 | 0 | 11 | 12 | — |
663
+ | php | 100.0% | 31.6% | 6 | 0 | 13 | 19 | — |
664
+ | python | 100.0% | 60.0% | 9 | 0 | 6 | 15 | 15/15 |
665
+ | r | 100.0% | 100.0% | 11 | 0 | 0 | 11 | — |
666
+ | ruby | 100.0% | 100.0% | 11 | 0 | 0 | 11 | 11/11 |
667
+ | rust | 100.0% | 35.7% | 5 | 0 | 9 | 14 | — |
668
+ | scala | 100.0% | 71.4% | 5 | 0 | 2 | 7 | — |
669
+ | solidity | 33.3% | 7.7% | 1 | 2 | 12 | 13 | — |
670
+ | swift | 75.0% | 42.9% | 6 | 2 | 8 | 14 | 9/9 |
671
+ | tsx | 100.0% | 100.0% | 13 | 0 | 0 | 13 | — |
672
+ | verilog | 0.0% | 0.0% | 0 | 0 | 4 | 4 | — |
673
+ | zig | 0.0% | 0.0% | 0 | 0 | 15 | 15 | — |
674
+
675
+ **By resolution mode (all languages):**
676
+
677
+ | Mode | Resolved | Expected | Recall |
678
+ |------|--------:|---------:|-------:|
679
+ | module-function | 16 | 106 | 15.1% |
680
+ | receiver-typed | 17 | 104 | 16.3% |
681
+ | static | 66 | 93 | 71.0% |
682
+ | same-file | 48 | 86 | 55.8% |
683
+ | interface-dispatched | 7 | 12 | 58.3% |
684
+ | class-inheritance | 0 | 4 | 0.0% |
685
+ | trait-dispatch | 0 | 2 | 0.0% |
686
+ | package-function | 1 | 1 | 100.0% |
687
+
688
+ </details>
689
+
607
690
  ### Lightweight Footprint
608
691
 
609
692
  <a href="https://www.npmjs.com/package/@optave/codegraph"><img src="https://img.shields.io/npm/unpacked-size/@optave/codegraph?style=flat-square&label=unpacked%20size" alt="npm unpacked size" /></a>
@@ -1 +1 @@
1
- {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../src/ast-analysis/engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AASH,OAAO,KAAK,EACV,YAAY,EACZ,cAAc,EAEd,qBAAqB,EAKrB,UAAU,EACV,eAAe,EAQhB,MAAM,aAAa,CAAC;AAonBrB,wBAAsB,WAAW,CAC/B,EAAE,EAAE,qBAAqB,EACzB,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,EACzC,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,YAAY,EAClB,UAAU,CAAC,EAAE,UAAU,GACtB,OAAO,CAAC,cAAc,CAAC,CA0FzB"}
1
+ {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../src/ast-analysis/engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AASH,OAAO,KAAK,EACV,YAAY,EACZ,cAAc,EAEd,qBAAqB,EAKrB,UAAU,EACV,eAAe,EAQhB,MAAM,aAAa,CAAC;AA6rBrB,wBAAsB,WAAW,CAC/B,EAAE,EAAE,qBAAqB,EACzB,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,EACzC,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,YAAY,EAClB,UAAU,CAAC,EAAE,UAAU,GACtB,OAAO,CAAC,cAAc,CAAC,CAoGzB"}
@@ -481,6 +481,60 @@ async function delegateToBuildFunctions(db, fileSymbols, rootDir, opts, engineOp
481
481
  timing.dataflowMs += performance.now() - t0;
482
482
  }
483
483
  }
484
+ // ─── Native full-analysis fast path ────────────────────────────────────
485
+ /**
486
+ * Check whether all files already have complete analysis data from the native
487
+ * parse pass (parseFilesFull). When true, no WASM re-parse or JS visitor walk
488
+ * is needed — the engine can skip directly to DB persistence.
489
+ */
490
+ function allNativeDataComplete(fileSymbols, opts) {
491
+ const doAst = opts.ast !== false;
492
+ const doComplexity = opts.complexity !== false;
493
+ const doCfg = opts.cfg !== false;
494
+ const doDataflow = opts.dataflow !== false;
495
+ for (const [relPath, symbols] of fileSymbols) {
496
+ // If any file has a WASM tree, it was parsed by WASM — not native full
497
+ if (symbols._tree)
498
+ return false;
499
+ const ext = path.extname(relPath).toLowerCase();
500
+ const langId = symbols._langId || '';
501
+ // AST nodes: native must have produced them
502
+ if (doAst &&
503
+ !Array.isArray(symbols.astNodes) &&
504
+ (WALK_EXTENSIONS.has(ext) || AST_TYPE_MAPS.has(langId))) {
505
+ debug(`allNativeDataComplete: ${relPath} missing astNodes`);
506
+ return false;
507
+ }
508
+ // Dataflow: native must have produced it
509
+ if (doDataflow &&
510
+ !symbols.dataflow &&
511
+ (DATAFLOW_EXTENSIONS.has(ext) || DATAFLOW_RULES.has(langId))) {
512
+ debug(`allNativeDataComplete: ${relPath} missing dataflow`);
513
+ return false;
514
+ }
515
+ const defs = symbols.definitions || [];
516
+ for (const def of defs) {
517
+ if (!hasFuncBody(def))
518
+ continue;
519
+ // Complexity: every function must already have it
520
+ if (doComplexity &&
521
+ !def.complexity &&
522
+ (COMPLEXITY_EXTENSIONS.has(ext) || COMPLEXITY_RULES.has(langId))) {
523
+ debug(`allNativeDataComplete: ${relPath}:${def.name} missing complexity`);
524
+ return false;
525
+ }
526
+ // CFG: every function must already have blocks
527
+ if (doCfg &&
528
+ def.cfg !== null &&
529
+ !Array.isArray(def.cfg?.blocks) &&
530
+ (CFG_EXTENSIONS.has(ext) || CFG_RULES.has(langId))) {
531
+ debug(`allNativeDataComplete: ${relPath}:${def.name} missing cfg blocks`);
532
+ return false;
533
+ }
534
+ }
535
+ }
536
+ return fileSymbols.size > 0;
537
+ }
484
538
  // ─── Public API ──────────────────────────────────────────────────────────
485
539
  export async function runAnalyses(db, fileSymbols, rootDir, opts, engineOpts) {
486
540
  const timing = { astMs: 0, complexityMs: 0, cfgMs: 0, dataflowMs: 0 };
@@ -491,6 +545,16 @@ export async function runAnalyses(db, fileSymbols, rootDir, opts, engineOpts) {
491
545
  if (!doAst && !doComplexity && !doCfg && !doDataflow)
492
546
  return timing;
493
547
  const extToLang = buildExtToLangMap();
548
+ // Fast path: when all files were parsed by the native engine with full analysis
549
+ // (parseFilesFull), all data is already present — skip WASM re-parse and JS
550
+ // visitor walks entirely, go straight to DB persistence.
551
+ if (allNativeDataComplete(fileSymbols, opts)) {
552
+ debug('native full-analysis fast path: all data present, skipping WASM/visitor passes');
553
+ if (doComplexity && doCfg)
554
+ reconcileCfgCyclomatic(fileSymbols);
555
+ await delegateToBuildFunctions(db, fileSymbols, rootDir, opts, engineOpts, timing);
556
+ return timing;
557
+ }
494
558
  // Native analysis pass: try Rust standalone functions before WASM fallback.
495
559
  // This fills in complexity/CFG/dataflow for files that the native parse pipeline
496
560
  // missed, avoiding the need to parse with WASM + run JS visitors.
@@ -1 +1 @@
1
- {"version":3,"file":"engine.js","sourceRoot":"","sources":["../../src/ast-analysis/engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAoBrD,OAAO,EAAE,iBAAiB,EAAE,2BAA2B,EAAE,MAAM,cAAc,CAAC;AAC9E,OAAO,EACL,aAAa,EACb,SAAS,EACT,gBAAgB,EAChB,cAAc,EACd,cAAc,GACf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,YAAY,IAAI,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAC3E,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AA+BvE,4EAA4E;AAE5E,MAAM,cAAc,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC;AACpD,MAAM,qBAAqB,GAAG,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;AAClE,MAAM,mBAAmB,GAAG,iBAAiB,CAAC,cAAc,CAAC,CAAC;AAC9D,MAAM,eAAe,GAAG,iBAAiB,CAAC,aAAa,CAAC,CAAC;AAEzD,4EAA4E;AAE5E,IAAI,aAAa,GAAyD,IAAI,CAAC;AAC/E,KAAK,UAAU,eAAe;IAC5B,IAAI,CAAC,aAAa;QAAE,aAAa,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;IACxE,OAAO,aAAa,CAAC;AACvB,CAAC;AAUD;;;;GAIG;AAEH,0DAA0D;AAC1D,SAAS,iBAAiB,CACxB,OAAwB,EACxB,GAAW,EACX,MAAc,EACd,IAAoE;IAEpE,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC;IACvC,MAAM,sBAAsB,GAAG,qBAAqB,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC9F,MAAM,eAAe,GAAG,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACzE,MAAM,oBAAoB,GAAG,mBAAmB,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAExF,OAAO;QACL,UAAU,EACR,IAAI,CAAC,YAAY;YACjB,sBAAsB;YACtB,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC;QACnD,GAAG,EACD,IAAI,CAAC,KAAK;YACV,eAAe;YACf,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QACrF,QAAQ,EAAE,IAAI,CAAC,UAAU,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,oBAAoB;KACvE,CAAC;AACJ,CAAC;AAED,oDAAoD;AACpD,SAAS,qBAAqB,CAC5B,MAAmB,EACnB,MAAc,EACd,OAAe,EACf,OAAe,EACf,MAAc,EACd,OAAwB,EACxB,KAA0B;IAE1B,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC;IAEvC,IAAI,KAAK,CAAC,UAAU,IAAI,MAAM,CAAC,iBAAiB,EAAE,CAAC;QACjD,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,CAAC,iBAAiB,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YAClE,4BAA4B,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC9C,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,KAAK,CAAC,uCAAuC,OAAO,KAAK,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClF,CAAC;IACH,CAAC;IAED,IAAI,KAAK,CAAC,GAAG,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;QACzC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YACjE,qBAAqB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACvC,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,KAAK,CAAC,sCAAsC,OAAO,KAAK,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACjF,CAAC;IACH,CAAC;IAED,IAAI,KAAK,CAAC,QAAQ,IAAI,MAAM,CAAC,uBAAuB,EAAE,CAAC;QACrD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,CAAC,uBAAuB,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YACvE,IAAI,MAAM;gBAAE,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC;QACxC,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,KAAK,CAAC,6CAA6C,OAAO,KAAK,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACxF,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CACxB,MAAmB,EACnB,WAAyC,EACzC,OAAe,EACf,IAAkB,EAClB,SAA8B;IAE9B,MAAM,SAAS,GAAG;QAChB,YAAY,EAAE,IAAI,CAAC,UAAU,KAAK,KAAK;QACvC,KAAK,EAAE,IAAI,CAAC,GAAG,KAAK,KAAK;QACzB,UAAU,EAAE,IAAI,CAAC,QAAQ,KAAK,KAAK;KACpC,CAAC;IAEF,KAAK,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,WAAW,EAAE,CAAC;QAC7C,IAAI,OAAO,CAAC,KAAK;YAAE,SAAS;QAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;QAChD,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACrD,IAAI,CAAC,MAAM;YAAE,SAAS;QAEtB,MAAM,KAAK,GAAG,iBAAiB,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;QACjE,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ;YAAE,SAAS;QAEjE,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC5C,IAAI,MAAc,CAAC;QACnB,IAAI,CAAC;YACH,MAAM,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC7C,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,KAAK,CAAC,qCAAqC,OAAO,KAAK,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAC5E,SAAS;QACX,CAAC;QAED,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IAClF,CAAC;AACH,CAAC;AAED,6EAA6E;AAC7E,SAAS,iBAAiB,CACxB,OAAY;IAEZ,MAAM,MAAM,GAAG,IAAI,GAAG,EAAe,CAAC;IACtC,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;YAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAChD,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC9B,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,iBAAiB,CACxB,UAA2B,EAC3B,OAAe;IAEf,IAAI,CAAC,UAAU;QAAE,OAAO,SAAS,CAAC;IAClC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC;IAClD,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC;AACrE,CAAC;AAED,8EAA8E;AAC9E,SAAS,4BAA4B,CACnC,OAAyC,EACzC,IAAkB;IAElB,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAE1C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,UAAU,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;YACtF,MAAM,KAAK,GAAG,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YAChE,IAAI,CAAC,KAAK;gBAAE,SAAS;YACrB,MAAM,EAAE,UAAU,EAAE,CAAC,EAAE,GAAG,KAAK,CAAC;YAChC,GAAG,CAAC,UAAU,GAAG;gBACf,SAAS,EAAE,CAAC,CAAC,SAAS;gBACtB,UAAU,EAAE,CAAC,CAAC,UAAU;gBACxB,UAAU,EAAE,CAAC,CAAC,UAAU;gBACxB,QAAQ,EAAE,CAAC,CAAC,QAAQ;oBAClB,CAAC,CAAC;wBACE,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE;wBACjB,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE;wBACjB,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK;wBACvB,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK;wBACvB,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,UAAU;wBACjC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM;wBACzB,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM;wBACzB,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,UAAU;wBACjC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM;wBACzB,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI;qBACtB;oBACH,CAAC,CAAC,SAAS;gBACb,GAAG,EAAE,CAAC,CAAC,GAAG;oBACR,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE;oBACxE,CAAC,CAAC,SAAS;gBACb,oBAAoB,EAAE,CAAC,CAAC,oBAAoB,IAAI,SAAS;aAC1D,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC;AAED,+FAA+F;AAC/F,SAAS,yBAAyB,CAAC,GAAe,EAAE,aAAqB;IACvE,IAAI,CAAC,GAAG,CAAC,UAAU;QAAE,OAAO;IAC5B,IAAI,aAAa,IAAI,CAAC,EAAE,CAAC;QACvB,KAAK,CAAC,uCAAuC,GAAG,CAAC,IAAI,oBAAoB,aAAa,EAAE,CAAC,CAAC;QAC1F,OAAO;IACT,CAAC;IACD,GAAG,CAAC,UAAU,CAAC,UAAU,GAAG,aAAa,CAAC;IAC1C,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,UAAU,CAAC;IACzC,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9C,MAAM,YAAY,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACzE,GAAG,CAAC,UAAU,CAAC,oBAAoB,GAAG,2BAA2B,CAC/D,MAAM,EACN,aAAa,EACb,GAAG,EAAE,IAAI,IAAI,CAAC,EACd,YAAY,CACb,CAAC;AACJ,CAAC;AAED,uEAAuE;AACvE,SAAS,qBAAqB,CAAC,OAAkC,EAAE,IAAkB;IACnF,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAE1C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IACE,CAAC,GAAG,CAAC,IAAI,KAAK,UAAU,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC;YAClD,GAAG,CAAC,IAAI;YACR,GAAG,CAAC,GAAG,KAAK,IAAI;YAChB,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EACxB,CAAC;YACD,MAAM,KAAK,GAAG,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YAChE,IAAI,CAAC,KAAK;gBAAE,SAAS;YACrB,GAAG,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;YAEpB,wDAAwD;YACxD,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC;YACpC,IAAI,KAAK,IAAI,MAAM,EAAE,CAAC;gBACpB,yBAAyB,CAAC,GAAG,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACnE,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED,2EAA2E;AAE3E;;;;;GAKG;AACH,+DAA+D;AAC/D,SAAS,oBAAoB,CAAC,GAAY;IACxC,OAAO,CACL,GAAG,IAAI,IAAI;QACX,OAAO,GAAG,KAAK,QAAQ;QACvB,KAAK,CAAC,OAAO,CAAE,GAA4B,CAAC,MAAM,CAAC;QACnD,KAAK,CAAC,OAAO,CAAE,GAA2B,CAAC,KAAK,CAAC,CAClD,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,WAAyC;IACvE,KAAK,MAAM,CAAC,EAAE,OAAO,CAAC,IAAI,WAAW,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC;QACvC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,IACE,CAAC,GAAG,CAAC,IAAI,KAAK,UAAU,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC;gBAClD,GAAG,CAAC,UAAU;gBACd,oBAAoB,CAAC,GAAG,CAAC,GAAG,CAAC,EAC7B,CAAC;gBACD,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;gBACpF,IAAI,aAAa,KAAK,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;oBAChD,yBAAyB,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;gBAChD,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED,2EAA2E;AAE3E,mFAAmF;AACnF,SAAS,iBAAiB,CACxB,OAAe,EACf,OAAwB,EACxB,KAAqF;IAErF,IAAI,OAAO,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IAChC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;IAChD,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC;IACvC,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;IAElC,IACE,KAAK,CAAC,KAAK;QACX,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC;QAChC,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAEpD,OAAO,IAAI,CAAC;IACd,IACE,KAAK,CAAC,YAAY;QAClB,CAAC,qBAAqB,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC7D,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC;QAEjD,OAAO,IAAI,CAAC;IACd,IACE,KAAK,CAAC,KAAK;QACX,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC/C,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAEnF,OAAO,IAAI,CAAC;IACd,IACE,KAAK,CAAC,UAAU;QAChB,CAAC,OAAO,CAAC,QAAQ;QACjB,CAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAEzD,OAAO,IAAI,CAAC;IACd,OAAO,KAAK,CAAC;AACf,CAAC;AAED,KAAK,UAAU,uBAAuB,CACpC,WAAyC,EACzC,IAAkB,EAClB,OAAe;IAEf,MAAM,KAAK,GAAG;QACZ,KAAK,EAAE,IAAI,CAAC,GAAG,KAAK,KAAK;QACzB,YAAY,EAAE,IAAI,CAAC,UAAU,KAAK,KAAK;QACvC,KAAK,EAAE,IAAI,CAAC,GAAG,KAAK,KAAK;QACzB,UAAU,EAAE,IAAI,CAAC,QAAQ,KAAK,KAAK;KACpC,CAAC;IAEF,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,YAAY,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,UAAU;QAAE,OAAO;IAErF,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,KAAK,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,WAAW,EAAE,CAAC;QAC7C,IAAI,iBAAiB,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;YAC/C,cAAc,GAAG,IAAI,CAAC;YACtB,MAAM;QACR,CAAC;IACH,CAAC;IAED,IAAI,cAAc,EAAE,CAAC;QACnB,IAAI,CAAC;YACH,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,eAAe,EAAE,CAAC;YACpD,MAAM,eAAe,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAC9C,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,KAAK,CAAC,2BAA2B,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;AACH,CAAC;AAED,2EAA2E;AAE3E,6EAA6E;AAC7E,SAAS,WAAW,CAAC,CAKpB;IACC,OAAO,CACL,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC;QAC9C,CAAC,CAAC,IAAI,GAAG,CAAC;QACV,CAAC,CAAC,OAAO,IAAI,IAAI;QACjB,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,IAAI;QAClB,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CACtB,CAAC;AACJ,CAAC;AAED,8CAA8C;AAC9C,SAAS,eAAe,CACtB,EAAyB,EACzB,OAAe,EACf,OAAwB,EACxB,MAAc,EACd,GAAW;IAEX,MAAM,UAAU,GAAG,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC7C,IAAI,CAAC,UAAU,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC;QAAE,OAAO,IAAI,CAAC;IAC7F,MAAM,SAAS,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC5C,KAAK,MAAM,GAAG,IAAI,iBAAiB,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,CAAC;QACjD,SAAS,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;IAC/D,CAAC;IACD,OAAO,qBAAqB,CAAC,UAAU,EAAE,OAAO,CAAC,WAAW,IAAI,EAAE,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;AAC1F,CAAC;AAED,kFAAkF;AAClF,SAAS,6BAA6B,CACpC,IAAkB,EAClB,MAAc,EACd,UAAuB;IAEvB,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC5C,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAEzB,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC1C,MAAM,mBAAmB,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAC9E,IAAI,CAAC,mBAAmB;QAAE,OAAO,IAAI,CAAC;IAEtC,MAAM,OAAO,GAAG,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IAEzF,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,YAAY;QAAE,UAAU,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;IAEzE,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3C,UAAU,CAAC,eAAe,GAAG,CAAC,IAAoB,EAAiB,EAAE;QACnE,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC,IAAI,CAAC;QACnC,IAAI,OAAO;YAAE,OAAO,WAAW,CAAC,IAAI,EAAE,OAAc,CAAC,CAAC;QACtD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,oEAAoE;AACpE,SAAS,sBAAsB,CAAC,IAAkB,EAAE,MAAc;IAChE,MAAM,eAAe,GAAG,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC9C,IAAI,CAAC,eAAe;QAAE,OAAO,IAAI,CAAC;IAElC,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAC5B,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,CACzE,CAAC;IACF,IAAI,CAAC,YAAY;QAAE,OAAO,IAAI,CAAC;IAE/B,OAAO,gBAAgB,CAAC,eAAe,CAAC,CAAC;AAC3C,CAAC;AAED,SAAS,aAAa,CACpB,EAAyB,EACzB,OAAe,EACf,OAAwB,EACxB,MAAc,EACd,IAAkB;IAElB,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;IAChD,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC;IAEvC,MAAM,QAAQ,GAAc,EAAE,CAAC;IAC/B,MAAM,UAAU,GAAgB;QAC9B,iBAAiB,EAAE,IAAI,GAAG,EAAU;QACpC,gBAAgB,EAAE,IAAI,GAAG,EAAU;QACnC,eAAe,EAAE,CAAC,KAAqB,EAAE,EAAE,CAAC,IAAI;KACjD,CAAC;IAEF,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAClG,IAAI,UAAU;QAAE,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAE1C,MAAM,iBAAiB,GACrB,IAAI,CAAC,UAAU,KAAK,KAAK,CAAC,CAAC,CAAC,6BAA6B,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC7F,IAAI,iBAAiB;QAAE,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAExD,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,sBAAsB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACpF,IAAI,UAAU;QAAE,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAE1C,IAAI,eAAe,GAAmB,IAAI,CAAC;IAC3C,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3C,IAAI,IAAI,CAAC,QAAQ,KAAK,KAAK,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;QAC5D,eAAe,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;QACjD,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACjC,CAAC;IAED,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,iBAAiB,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC;AAC9F,CAAC;AAED,2EAA2E;AAE3E,gEAAgE;AAChE,SAAS,WAAW,CAAyC,OAAY;IACvE,MAAM,MAAM,GAAG,IAAI,GAAG,EAAe,CAAC;IACtC,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,IAAI,CAAC,CAAC,CAAC,QAAQ;YAAE,SAAS;QAC1B,MAAM,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,GAAG,GAAG,CAAC,CAAC;QAC9C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC5C,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAC5B,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,qEAAqE;AACrE,SAAS,gBAAgB,CACvB,UAA2B,EAC3B,OAAe;IAEf,IAAI,CAAC,UAAU;QAAE,OAAO,SAAS,CAAC;IAClC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC;IAClD,OAAO,CACL,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;QACpB,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAC/C,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC;IACjC,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CACpB,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,OAAoB,EAAE,IAAkB,EAAE,MAAc;IACtF,MAAM,MAAM,GAAG,WAAW,CAAC,CAAC,OAAO,CAAC,UAAU,IAAI,EAAE,CAA2B,CAAC,CAAC;IACjF,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,UAAU,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;YACtF,MAAM,UAAU,GAAG,gBAAgB,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YACpE,IAAI,CAAC,UAAU;gBAAE,SAAS;YAC1B,MAAM,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;YAC/B,MAAM,GAAG,GAAG,iBAAiB,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC3D,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9D,MAAM,YAAY,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAClE,MAAM,EAAE,GAAG,2BAA2B,CAAC,MAAM,EAAE,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;YAC3F,GAAG,CAAC,UAAU,GAAG;gBACf,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,GAAG;gBACH,oBAAoB,EAAE,EAAE;aACzB,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CAAC,OAAoB,EAAE,IAAkB;IAC/D,MAAM,MAAM,GAAG,WAAW,CAAC,CAAC,OAAO,CAAC,GAAG,IAAI,EAAE,CAAoB,CAAC,CAAC;IACnE,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IACE,CAAC,GAAG,CAAC,IAAI,KAAK,UAAU,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC;YAClD,GAAG,CAAC,IAAI;YACR,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EACxB,CAAC;YACD,MAAM,SAAS,GAAG,gBAAgB,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YACnE,IAAI,CAAC,SAAS;gBAAE,SAAS;YACzB,GAAG,CAAC,GAAG,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,EAAE,CAAC;YAE/D,mFAAmF;YACnF,IAAI,SAAS,CAAC,UAAU,IAAI,IAAI,EAAE,CAAC;gBACjC,yBAAyB,CAAC,GAAG,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC;YACvD,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED,2EAA2E;AAE3E,KAAK,UAAU,wBAAwB,CACrC,EAAyB,EACzB,WAAyC,EACzC,OAAe,EACf,IAAkB,EAClB,UAAkC,EAClC,MAAsB;IAEtB,IAAI,IAAI,CAAC,GAAG,KAAK,KAAK,EAAE,CAAC;QACvB,MAAM,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QAC7B,IAAI,CAAC;YACH,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;YAC7D,MAAM,aAAa,CAAC,EAAE,EAAE,WAA+B,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;QAChF,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,KAAK,CAAC,yBAAyB,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACxD,CAAC;QACD,MAAM,CAAC,KAAK,IAAI,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;IACzC,CAAC;IAED,IAAI,IAAI,CAAC,UAAU,KAAK,KAAK,EAAE,CAAC;QAC9B,MAAM,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QAC7B,IAAI,CAAC;YACH,MAAM,EAAE,sBAAsB,EAAE,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC;YAC7E,MAAM,sBAAsB,CAAC,EAAE,EAAE,WAA+B,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;QACzF,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,KAAK,CAAC,kCAAkC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACjE,CAAC;QACD,MAAM,CAAC,YAAY,IAAI,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;IAChD,CAAC;IAED,IAAI,IAAI,CAAC,GAAG,KAAK,KAAK,EAAE,CAAC;QACvB,MAAM,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QAC7B,IAAI,CAAC;YACH,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;YAC5D,MAAM,YAAY,CAAC,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;QAC3D,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,KAAK,CAAC,wBAAwB,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACvD,CAAC;QACD,MAAM,CAAC,KAAK,IAAI,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;IACzC,CAAC;IAED,IAAI,IAAI,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;QAC5B,MAAM,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QAC7B,IAAI,CAAC;YACH,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,CAAC;YACvE,MAAM,kBAAkB,CAAC,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;QACjE,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,KAAK,CAAC,8BAA8B,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC7D,CAAC;QACD,MAAM,CAAC,UAAU,IAAI,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;IAC9C,CAAC;AACH,CAAC;AAED,4EAA4E;AAE5E,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,EAAyB,EACzB,WAAyC,EACzC,OAAe,EACf,IAAkB,EAClB,UAAuB;IAEvB,MAAM,MAAM,GAAmB,EAAE,KAAK,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC;IAEtF,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,KAAK,KAAK,CAAC;IACjC,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,KAAK,KAAK,CAAC;IAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,KAAK,KAAK,CAAC;IACjC,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,KAAK,KAAK,CAAC;IAE3C,IAAI,CAAC,KAAK,IAAI,CAAC,YAAY,IAAI,CAAC,KAAK,IAAI,CAAC,UAAU;QAAE,OAAO,MAAM,CAAC;IAEpE,MAAM,SAAS,GAAG,iBAAiB,EAAE,CAAC;IAEtC,4EAA4E;IAC5E,iFAAiF;IACjF,kEAAkE;IAClE,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;IAC5B,IAAI,MAAM,EAAE,iBAAiB,IAAI,MAAM,EAAE,gBAAgB,IAAI,MAAM,EAAE,uBAAuB,EAAE,CAAC;QAC7F,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QACnC,iBAAiB,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;QACjE,KAAK,CAAC,+BAA+B,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACtF,CAAC;IAED,0EAA0E;IAC1E,MAAM,uBAAuB,CAAC,WAAW,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAE1D,0EAA0E;IAC1E,qEAAqE;IACrE,2EAA2E;IAC3E,sDAAsD;IACtD,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IAEjC,KAAK,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,WAAW,EAAE,CAAC;QAC7C,IAAI,CAAC,OAAO,CAAC,KAAK;YAAE,SAAS;QAE7B,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;QAChD,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACrD,IAAI,CAAC,MAAM;YAAE,SAAS;QAEtB,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,iBAAiB,EAAE,UAAU,EAAE,eAAe,EAAE,GACxF,aAAa,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;QAEpD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QAEpC,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QACpC,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;QACvF,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QAE7C,qDAAqD;QACrD,MAAM,WAAW,GAAG,CAAC,UAAU,EAAE,iBAAiB,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC,MAAM,CACrF,OAAO,CACR,CAAC,MAAM,CAAC;QACT,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;YACpB,MAAM,KAAK,GAAG,MAAM,GAAG,WAAW,CAAC;YACnC,IAAI,UAAU;gBAAE,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC;YACtC,IAAI,iBAAiB;gBAAE,MAAM,CAAC,YAAY,IAAI,KAAK,CAAC;YACpD,IAAI,UAAU;gBAAE,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC;YACtC,IAAI,eAAe;gBAAE,MAAM,CAAC,UAAU,IAAI,KAAK,CAAC;QAClD,CAAC;QAED,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC;QAEvC,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,CAAiB,CAAC;YAC7D,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;gBAAE,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC;QACrD,CAAC;QAED,IAAI,iBAAiB;YAAE,sBAAsB,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;QACrE,IAAI,UAAU;YAAE,eAAe,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC/C,IAAI,eAAe;YAAE,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC,QAA0B,CAAC;IAC7E,CAAC;IAED,sEAAsE;IACtE,0EAA0E;IAC1E,0EAA0E;IAC1E,kEAAkE;IAClE,MAAM,CAAC,cAAc,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC;IAEnD,iFAAiF;IACjF,sFAAsF;IACtF,kFAAkF;IAClF,iFAAiF;IACjF,kDAAkD;IAClD,IAAI,YAAY,IAAI,KAAK,EAAE,CAAC;QAC1B,sBAAsB,CAAC,WAAW,CAAC,CAAC;IACtC,CAAC;IAED,iEAAiE;IACjE,MAAM,wBAAwB,CAAC,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;IAEnF,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"engine.js","sourceRoot":"","sources":["../../src/ast-analysis/engine.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,18 @@ export declare function diffImpactData(customDbPath: string, opts?: {
12
12
  offset?: number;
13
13
  config?: any;
14
14
  }): ({
15
+ changedFiles: number;
16
+ newFiles: string[];
17
+ affectedFunctions: unknown[];
18
+ affectedFiles: string[];
19
+ historicallyCoupled: unknown[];
20
+ ownership: null;
21
+ boundaryViolations: import("../../features/boundaries.js").BoundaryViolation[];
22
+ boundaryViolationCount: number;
23
+ summary: null;
24
+ } & {
25
+ _pagination?: import("../../shared/paginate.js").PaginationMeta;
26
+ }) | ({
15
27
  changedFiles: number;
16
28
  newFiles: string[];
17
29
  affectedFunctions: {
@@ -1 +1 @@
1
- {"version":3,"file":"diff-impact.d.ts","sourceRoot":"","sources":["../../../src/domain/analysis/diff-impact.ts"],"names":[],"mappings":"AA6PA;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,YAAY,EAAE,MAAM,EACpB,IAAI,GAAE;IACJ,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,GAAG,CAAC;CACT;;;;;;;;;;;;;;;;;;;kBAhIuB,MAAM;gBAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqNhD"}
1
+ {"version":3,"file":"diff-impact.d.ts","sourceRoot":"","sources":["../../../src/domain/analysis/diff-impact.ts"],"names":[],"mappings":"AA6PA;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,YAAY,EAAE,MAAM,EACpB,IAAI,GAAE;IACJ,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,GAAG,CAAC;CACT;;;uBAyDyB,OAAO,EAAE;mBACb,MAAM,EAAE;yBACF,OAAO,EAAE;;;;aAInB,IAAI;;;;;;;;;;;;;;;;;;;;;;kBA/LE,MAAM;gBAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgPhD"}
@@ -247,6 +247,25 @@ export function diffImpactData(customDbPath, opts = {}) {
247
247
  };
248
248
  }
249
249
  const affectedFunctions = findAffectedFunctions(db, changedRanges, noTests);
250
+ // Short-circuit: when no function-level changes detected, skip expensive
251
+ // lookups (BFS, co-change, ownership). Boundary checks are preserved
252
+ // because they are file-scoped and can surface real violations even when
253
+ // no function bodies were touched (e.g. import or type-alias changes).
254
+ if (affectedFunctions.length === 0) {
255
+ const { boundaryViolations, boundaryViolationCount } = checkBoundaryViolations(db, changedRanges, noTests, { ...opts, config }, repoRoot);
256
+ const base = {
257
+ changedFiles: changedRanges.size,
258
+ newFiles: [...newFiles],
259
+ affectedFunctions: [],
260
+ affectedFiles: [],
261
+ historicallyCoupled: [],
262
+ ownership: null,
263
+ boundaryViolations,
264
+ boundaryViolationCount,
265
+ summary: null,
266
+ };
267
+ return paginateResult(base, 'affectedFunctions', { limit: opts.limit, offset: opts.offset });
268
+ }
250
269
  const includeImplementors = opts.includeImplementors !== false;
251
270
  const { functionResults, allAffected } = buildFunctionImpactResults(db, affectedFunctions, noTests, maxDepth, includeImplementors);
252
271
  const affectedFiles = new Set();
@@ -254,7 +273,7 @@ export function diffImpactData(customDbPath, opts = {}) {
254
273
  affectedFiles.add(key.split(':')[0]);
255
274
  const historicallyCoupled = lookupCoChanges(db, changedRanges, affectedFiles, noTests);
256
275
  const ownership = lookupOwnership(changedRanges, affectedFiles, repoRoot);
257
- const { boundaryViolations, boundaryViolationCount } = checkBoundaryViolations(db, changedRanges, noTests, opts, repoRoot);
276
+ const { boundaryViolations, boundaryViolationCount } = checkBoundaryViolations(db, changedRanges, noTests, { ...opts, config }, repoRoot);
258
277
  const base = {
259
278
  changedFiles: changedRanges.size,
260
279
  newFiles: [...newFiles],
@@ -1 +1 @@
1
- {"version":3,"file":"diff-impact.js","sourceRoot":"","sources":["../../../src/domain/analysis/diff-impact.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"diff-impact.js","sourceRoot":"","sources":["../../../src/domain/analysis/diff-impact.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"native-db-proxy.d.ts","sourceRoot":"","sources":["../../../../src/domain/graph/builder/native-db-proxy.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,qBAAqB,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAQhG,qBAAa,aAAc,YAAW,qBAAqB;;IAEzD,4EAA4E;IAC5E,UAAU,CAAC,EAAE,MAAM,CAAC;gBAER,QAAQ,EAAE,cAAc;IAIpC,OAAO,CAAC,IAAI,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,eAAe,CAAC,IAAI,CAAC;IA0B3D,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAKvB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAI5B,KAAK,IAAI,IAAI;IAKb,IAAI,IAAI,IAAI,OAAO,CAElB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,WAAW,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAC3C,EAAE,EAAE,CAAC,GACJ,CAAC,GAAG,IAAI,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,KAAK,OAAO,GAAG,CAAC,GAAG,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC;CAoBhF"}
1
+ {"version":3,"file":"native-db-proxy.d.ts","sourceRoot":"","sources":["../../../../src/domain/graph/builder/native-db-proxy.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,qBAAqB,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAQhG,qBAAa,aAAc,YAAW,qBAAqB;;IAEzD,4EAA4E;IAC5E,UAAU,CAAC,EAAE,MAAM,CAAC;gBAER,QAAQ,EAAE,cAAc;IAIpC,OAAO,CAAC,IAAI,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,eAAe,CAAC,IAAI,CAAC;IAgC3D,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAKvB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAI5B,KAAK,IAAI,IAAI;IAKb,IAAI,IAAI,IAAI,OAAO,CAElB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,WAAW,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAC3C,EAAE,EAAE,CAAC,GACJ,CAAC,GAAG,IAAI,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,KAAK,OAAO,GAAG,CAAC,GAAG,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC;CAoBhF"}
@@ -21,6 +21,9 @@ export class NativeDbProxy {
21
21
  }
22
22
  prepare(sql) {
23
23
  const ndb = this.#ndb;
24
+ // Only INSERT statements need last_insert_rowid — skip the extra napi
25
+ // call for UPDATE/DELETE/other DML to halve per-statement overhead.
26
+ const isInsert = sql.trimStart().substring(0, 6).toUpperCase() === 'INSERT';
24
27
  const stmt = {
25
28
  all(...params) {
26
29
  return ndb.queryAll(sql, sanitize(params));
@@ -30,10 +33,11 @@ export class NativeDbProxy {
30
33
  },
31
34
  run(...params) {
32
35
  ndb.queryAll(sql, sanitize(params));
33
- // Retrieve last_insert_rowid via SQLite scalar function so callers
34
- // that depend on it (e.g. CFG block edge mapping) get correct values.
35
- const row = ndb.queryGet('SELECT last_insert_rowid() AS rid', []);
36
- return { changes: 0, lastInsertRowid: row?.rid ?? 0 };
36
+ if (isInsert) {
37
+ const row = ndb.queryGet('SELECT last_insert_rowid() AS rid', []);
38
+ return { changes: 0, lastInsertRowid: row?.rid ?? 0 };
39
+ }
40
+ return { changes: 0, lastInsertRowid: 0 };
37
41
  },
38
42
  iterate() {
39
43
  throw new Error('iterate() is not supported via NativeDbProxy');
@@ -1 +1 @@
1
- {"version":3,"file":"native-db-proxy.js","sourceRoot":"","sources":["../../../../src/domain/graph/builder/native-db-proxy.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH;wEACwE;AACxE,SAAS,QAAQ,CAAC,MAAiB;IACjC,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAkC,CAAC;AAC1F,CAAC;AAED,MAAM,OAAO,aAAa;IACf,IAAI,CAAiB;IAC9B,4EAA4E;IAC5E,UAAU,CAAU;IAEpB,YAAY,QAAwB;QAClC,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC;IACvB,CAAC;IAED,OAAO,CAAiB,GAAW;QACjC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,MAAM,IAAI,GAA0B;YAClC,GAAG,CAAC,GAAG,MAAiB;gBACtB,OAAO,GAAG,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAW,CAAC;YACvD,CAAC;YACD,GAAG,CAAC,GAAG,MAAiB;gBACtB,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,SAAS,CAAqB,CAAC;YAChF,CAAC;YACD,GAAG,CAAC,GAAG,MAAiB;gBACtB,GAAG,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;gBACpC,mEAAmE;gBACnE,sEAAsE;gBACtE,MAAM,GAAG,GAAG,GAAG,CAAC,QAAQ,CAAC,mCAAmC,EAAE,EAAE,CAA2B,CAAC;gBAC5F,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,eAAe,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;YACxD,CAAC;YACD,OAAO;gBACL,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;YAClE,CAAC;YACD,GAAG;gBACD,OAAO,IAAI,CAAC,CAAC,mDAAmD;YAClE,CAAC;SACF,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC,GAAW;QACd,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACpB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,CAAC,GAAW;QAChB,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC/B,CAAC;IAED,KAAK;QACH,qEAAqE;QACrE,mDAAmD;IACrD,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;IAC1B,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;IAC1B,CAAC;IAED,WAAW,CACT,EAAK;QAEL,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,OAAO,CAAC,CAAC,GAAG,IAAe,EAAE,EAAE;YAC7B,4EAA4E;YAC5E,6EAA6E;YAC7E,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAClB,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;gBAC3B,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACnB,OAAO,MAAM,CAAC;YAChB,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,IAAI,CAAC;oBACH,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACvB,CAAC;gBAAC,MAAM,CAAC;oBACP,gEAAgE;gBAClE,CAAC;gBACD,MAAM,CAAC,CAAC;YACV,CAAC;QACH,CAAC,CAAQ,CAAC;IACZ,CAAC;CACF"}
1
+ {"version":3,"file":"native-db-proxy.js","sourceRoot":"","sources":["../../../../src/domain/graph/builder/native-db-proxy.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../../../../src/domain/graph/builder/pipeline.ts"],"names":[],"mappings":"AAyBA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAA+B,MAAM,mBAAmB,CAAC;AA2uBlG;;;;GAIG;AACH,wBAAsB,UAAU,CAC9B,OAAO,EAAE,MAAM,EACf,IAAI,GAAE,cAAmB,GACxB,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAiClC"}
1
+ {"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../../../../src/domain/graph/builder/pipeline.ts"],"names":[],"mappings":"AAyBA,OAAO,KAAK,EAEV,cAAc,EACd,WAAW,EAGZ,MAAM,mBAAmB,CAAC;AAwvB3B;;;;GAIG;AACH,wBAAsB,UAAU,CAC9B,OAAO,EAAE,MAAM,EACf,IAAI,GAAE,cAAmB,GACxB,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAiClC"}