# Codegraph Incremental Build Benchmarks

Self-measured on every release by running codegraph on its own codebase.
Build tiers: full (cold), no-op (nothing changed), 1-file (single file modified).
Import resolution: native batch vs JS fallback throughput.

| Version | Engine | Files | Full Build | No-op | 1-File | Resolve (native) | Resolve (JS) |
|---------|--------|------:|-----------:|------:|-------:|------------------:|-------------:|
| 3.10.0 | native | 745 | 2.0s ↓34% | 15ms ↑50% | 66ms ↑22% | 5ms ↓18% | 7ms ↓38% |
| 3.10.0 | wasm | 745 | 8.4s ↓40% | 13ms ↓90% | 51ms ↓18% | 5ms ↓18% | 7ms ↓38% |
| 3.9.6 | native | 744 | 3.0s ↑39% | 10ms ↑11% | 54ms ↓87% | 7ms ~ | 11ms ↑7% |
| 3.9.6 | wasm | 744 | 14.0s ↑86% | 131ms ↑589% | 62ms ~ | 7ms ~ | 11ms ↑7% |
| 3.9.4 | native | 668 | 2.1s ↓4% | 9ms ~ | 406ms ↑7% | 6ms ↑7% | 9ms ↓15% |
| 3.9.4 | wasm | 668 | 7.6s ~ | 19ms ↑6% | 61ms ↓90% | 6ms ↑7% | 9ms ↓15% |
| 3.9.3 | native | 667 | 2.2s ↓76% | 9ms ↑13% | 380ms ↓32% | 6ms ↓5% | 11ms ↑6% |
| 3.9.3 | wasm | 667 | 7.5s ↑3% | 18ms ↑6% | 635ms ↑6% | 6ms ↓5% | 11ms ↑6% |
| 3.9.2 | native | 667 | 9.4s ↑81% | 8ms ↓47% | 555ms ↓27% | 6ms ↓17% | 11ms ↓14% |
| 3.9.2 | wasm | 667 | 7.2s ↑4% | 17ms ↑21% | 598ms ~ | 6ms ↓17% | 11ms ↓14% |
| 3.9.1 | native | 570 | 5.2s ↓20% | 15ms ↑150% | 757ms ↑44% | 7ms ↑37% | 12ms ↑13% |
| 3.9.1 | wasm | 570 | 6.9s ↑2% | 14ms ↑17% | 603ms ↑11% | 7ms ↑37% | 12ms ↑13% |
| 3.9.0 | native | 567 | 6.5s ~ | 6ms ↓25% | 527ms ↑1185% | 5ms ↓18% | 11ms ~ |
| 3.9.0 | wasm | 567 | 6.8s ↓3% | 12ms ↓20% | 541ms ↓10% | 5ms ↓18% | 11ms ~ |
| 3.8.1 | native | 565 | 6.6s ↑468% | 8ms ↑14% | 41ms ↑24% | 6ms ↑51% | 11ms ↓14% |
| 3.8.1 | wasm | 565 | 7.0s ↑493% | 15ms ↑88% | 603ms ↑1727% | 6ms ↑51% | 11ms ↓14% |
| 3.8.0 | native | 564 | 1.2s ↓50% | 7ms ↓46% | 33ms ↓90% | 4ms ↑2% | 12ms ↓19% |
| 3.8.0 | wasm | 564 | 1.2s ↓82% | 8ms ↓58% | 33ms ↓94% | 4ms ↑2% | 12ms ↓19% |
| 3.7.0 | wasm | 532 | 6.4s ↑5% | 19ms ↑46% | 558ms ↑2% | 4ms ↑3% | 15ms ↑31% |
| 3.6.0 | wasm | 514 | 6.1s ↑20% | 13ms ~ | 545ms ↑7% | 4ms ↓3% | 12ms ↑9% |
| 3.4.1 | native | 473 | 2.4s ↑3% | 13ms ↑8% | 331ms ↓26% | 4ms ~ | 13ms ↑8% |
| 3.4.1 | wasm | 473 | 5.1s ~ | 13ms ↑8% | 511ms ↓17% | 4ms ~ | 13ms ↑8% |
| 3.4.0 | native | 473 | 2.3s ↓4% | 12ms ↑9% | 448ms ↑29% | 4ms ↓58% | 12ms ↓54% |
| 3.4.0 | wasm | 473 | 5.0s ↑15% | 12ms ↑20% | 617ms ↑21% | 4ms ↓58% | 12ms ↓54% |
| 3.3.1 | native | 442 | 2.4s ↓22% | 11ms ↑10% | 346ms ↓17% | 9ms ↓6% | 26ms ~ |
| 3.3.1 | wasm | 442 | 4.4s ↑2% | 10ms ↓9% | 508ms ↑6% | 9ms ↓6% | 26ms ~ |
| 3.3.0 | native | 429 | 3.0s ↑141% | 10ms ↑67% | 417ms ↑74% | 10ms ↑700% | 26ms ↑888% |
| 3.3.0 | wasm | 429 | 4.3s ↑29% | 11ms ~ | 479ms ↑41% | 10ms ↑700% | 26ms ↑888% |
| 3.1.4 | native | 398 | 1.3s ↑9% | 6ms ~ | 240ms ↓11% | 1ms ↓37% | 3ms ↓45% |
| 3.1.4 | wasm | 398 | 3.3s ↑10% | 11ms ↑83% | 340ms ↓28% | 1ms ↓37% | 3ms ↓45% |
| 3.1.3 | native | 236 | 1.2s ~ | 6ms ↑20% | 271ms ↑3% | 2ms ↓5% | 5ms ~ |
| 3.1.3 | wasm | 236 | 3.0s ↑3% | 6ms ~ | 473ms ↓3% | 2ms ↓5% | 5ms ~ |
| 3.1.2 | native | 235 | 1.2s ↑6% | 5ms ~ | 264ms ↓20% | 2ms ↓9% | 5ms ↑12% |
| 3.1.2 | wasm | 235 | 2.9s ~ | 6ms ~ | 488ms ↓9% | 2ms ↓9% | 5ms ↑12% |
| 3.1.0 | native | 180 | 1.1s ↑7% | 5ms ↓98% | 329ms ↓3% | 2ms ↓39% | 4ms ↑5% |
| 3.1.0 | wasm | 180 | 2.9s ↑13% | 6ms ↑20% | 536ms ↓6% | 2ms ↓39% | 4ms ↑5% |
| 3.0.4 | native | 177 | 1.0s ↓41% | 319ms ↑7875% | 338ms ↓2% | 4ms ↑6% | 4ms ~ |
| 3.0.4 | wasm | 177 | 2.5s ↑6% | 5ms ~ | 568ms ↑12% | 4ms ↑6% | 4ms ~ |
| 3.0.3 | native | 172 | 1.8s ↓9% | 4ms ↓20% | 346ms ~ | 3ms ↓3% | 4ms ↓7% |
| 3.0.3 | wasm | 172 | 2.4s ↓6% | 5ms ↓17% | 505ms ~ | 3ms ↓3% | 4ms ↓7% |
| 3.0.2 | native | 172 | 1.9s ↓17% | 5ms ↑25% | 349ms ↓62% | 4ms ↓3% | 4ms ↑7% |
| 3.0.2 | wasm | 172 | 2.5s ↓23% | 6ms ~ | 515ms ↓50% | 4ms ↓3% | 4ms ↑7% |
| 3.0.1 | native | 165 | 2.3s ↑223% | 4ms ↓20% | 928ms ↑186% | 4ms ↑3% | 4ms ↓7% |
| 3.0.1 | wasm | 165 | 3.3s ↑62% | 6ms ↑20% | 1.0s ↓4% | 4ms ↑3% | 4ms ↓7% |
| 3.0.0 | native | 164 | 721ms ↑152% | 5ms ↑25% | 325ms ↑141% | 4ms ↑21% | 4ms ↑30% |
| 3.0.0 | wasm | 164 | 2.0s ↑128% | 5ms ↑25% | 1.1s ↑112% | 4ms ↑21% | 4ms ↑30% |
| 2.6.0 | native | 146 | 286ms ↑3% | 4ms ↓33% | 135ms ↑5% | 3ms ~ | 3ms ↓3% |
| 2.6.0 | wasm | 146 | 899ms ~ | 4ms ↓20% | 503ms ↑37% | 3ms ~ | 3ms ↓3% |
| 2.5.1 | native | 142 | 277ms | 6ms | 129ms | 3ms | 3ms |
| 2.5.1 | wasm | 142 | 888ms | 5ms | 368ms | 3ms | 3ms |

### Latest results

**Version:** 3.10.0 | **Files:** 745 | **Date:** 2026-05-11

#### Native (Rust)

| Metric | Value |
|--------|------:|
| Full build | 2.0s |
| No-op rebuild | 15ms |
| 1-file rebuild | 66ms |

#### WASM

| Metric | Value |
|--------|------:|
| Full build | 8.4s |
| No-op rebuild | 13ms |
| 1-file rebuild | 51ms |

#### Import Resolution

| Metric | Value |
|--------|------:|
| Import pairs | 987 |
| Native batch | 5ms |
| JS fallback | 7ms |
| Per-import (native) | 0ms |
| Per-import (JS) | 0ms |
| Speedup ratio | 1.2x |

<!-- NOTES_START -->
**Note (3.9.5):** No build/rebuild metrics for this release (both engines null) — only import resolution data was collected. Both the WASM and native workers reached the 1-file rebuild phase and then hung past the benchmark's 10-minute per-engine timeout (see `scripts/lib/fork-engine.ts`), so each was killed (`SIGKILL`) before returning results. Import resolution is unaffected because it runs in the parent process and doesn't depend on the full build. 3.9.5 is consequently absent from the top-level version-history comparison table since there are no build-time figures to compare against prior releases. The workflow run is [here](https://github.com/optave/ops-codegraph-tool/actions/runs/24863501577); the root cause will be investigated and the numbers backfilled in a follow-up if possible.
<!-- NOTES_END -->

<!-- INCREMENTAL_BENCHMARK_DATA
[
  {
    "version": "3.10.0",
    "date": "2026-05-11",
    "files": 745,
    "wasm": {
      "fullBuildMs": 8404,
      "noopRebuildMs": 13,
      "oneFileRebuildMs": 51,
      "oneFilePhases": {
        "setupMs": 4.1,
        "collectMs": 4.1,
        "detectMs": 9.4,
        "parseMs": 1.5,
        "insertMs": 0.3,
        "resolveMs": 0.5,
        "edgesMs": 1.3,
        "structureMs": 2.8,
        "rolesMs": 22.8,
        "astMs": 0.4,
        "complexityMs": 0.7,
        "cfgMs": 0.2,
        "dataflowMs": 0.3,
        "finalizeMs": 0.4
      }
    },
    "native": {
      "fullBuildMs": 1959,
      "noopRebuildMs": 15,
      "oneFileRebuildMs": 66,
      "oneFilePhases": {
        "setupMs": 2.5,
        "collectMs": 3.2,
        "detectMs": 2.1,
        "parseMs": 0.3,
        "insertMs": 0.2,
        "resolveMs": 0.3,
        "edgesMs": 4.7,
        "structureMs": 4.2,
        "rolesMs": 23.7,
        "astMs": 0.2,
        "complexityMs": 0,
        "cfgMs": 0,
        "dataflowMs": 0,
        "finalizeMs": 0.5
      }
    },
    "resolve": {
      "imports": 987,
      "nativeBatchMs": 5.3,
      "jsFallbackMs": 6.5,
      "perImportNativeMs": 0,
      "perImportJsMs": 0
    }
  },
  {
    "version": "3.9.6",
    "date": "2026-04-30",
    "files": 744,
    "wasm": {
      "fullBuildMs": 14036,
      "noopRebuildMs": 131,
      "oneFileRebuildMs": 62,
      "oneFilePhases": {
        "setupMs": 5.1,
        "collectMs": 6.6,
        "detectMs": 10,
        "parseMs": 4.3,
        "insertMs": 0.4,
        "resolveMs": 0.5,
        "edgesMs": 1.7,
        "structureMs": 3.1,
        "rolesMs": 25.4,
        "astMs": 0.6,
        "complexityMs": 0.6,
        "cfgMs": 0.4,
        "dataflowMs": 0.4,
        "finalizeMs": 0.4
      }
    },
    "native": {
      "fullBuildMs": 2986,
      "noopRebuildMs": 10,
      "oneFileRebuildMs": 54,
      "oneFilePhases": {
        "setupMs": 2.9,
        "collectMs": 4.6,
        "detectMs": 3,
        "parseMs": 0.3,
        "insertMs": 0.3,
        "resolveMs": 0.4,
        "edgesMs": 5.2,
        "structureMs": 4.6,
        "rolesMs": 24.9,
        "astMs": 0.2,
        "complexityMs": 0,
        "cfgMs": 0,
        "dataflowMs": 0,
        "finalizeMs": 0.5
      }
    },
    "resolve": {
      "imports": 986,
      "nativeBatchMs": 6.5,
      "jsFallbackMs": 10.5,
      "perImportNativeMs": 0,
      "perImportJsMs": 0
    }
  },
  {
    "version": "3.9.5",
    "date": "2026-04-23",
    "files": 742,
    "wasm": null,
    "native": null,
    "resolve": {
      "imports": 987,
      "nativeBatchMs": 6.5,
      "jsFallbackMs": 9.8,
      "perImportNativeMs": 0,
      "perImportJsMs": 0
    }
  },
  {
    "version": "3.9.4",
    "date": "2026-04-18",
    "files": 668,
    "wasm": {
      "fullBuildMs": 7563,
      "noopRebuildMs": 19,
      "oneFileRebuildMs": 61,
      "oneFilePhases": {
        "setupMs": 6.6,
        "parseMs": 1,
        "insertMs": 0.3,
        "resolveMs": 0.6,
        "edgesMs": 1.5,
        "structureMs": 3,
        "rolesMs": 27.3,
        "astMs": 0.7,
        "complexityMs": 1,
        "cfgMs": 0.4,
        "dataflowMs": 0.6,
        "finalizeMs": 0.3
      }
    },
    "native": {
      "fullBuildMs": 2148,
      "noopRebuildMs": 9,
      "oneFileRebuildMs": 406,
      "oneFilePhases": {
        "setupMs": 42.5,
        "parseMs": 55.1,
        "insertMs": 30.5,
        "resolveMs": 0.8,
        "edgesMs": 32.2,
        "structureMs": 124.2,
        "rolesMs": 107.7,
        "astMs": 0.9,
        "complexityMs": 0.7,
        "cfgMs": 1.6,
        "dataflowMs": 0,
        "finalizeMs": 0.4
      }
    },
    "resolve": {
      "imports": 957,
      "nativeBatchMs": 5.9,
      "jsFallbackMs": 9.4,
      "perImportNativeMs": 0,
      "perImportJsMs": 0
    }
  },
  {
    "version": "3.9.3",
    "date": "2026-04-13",
    "files": 667,
    "wasm": {
      "fullBuildMs": 7450,
      "noopRebuildMs": 18,
      "oneFileRebuildMs": 635,
      "oneFilePhases": {
        "setupMs": 1.3,
        "parseMs": 262.6,
        "insertMs": 20.4,
        "resolveMs": 2.1,
        "edgesMs": 26.1,
        "structureMs": 38.5,
        "rolesMs": 89.9,
        "astMs": 1.1,
        "complexityMs": 0.6,
        "cfgMs": 0.5,
        "dataflowMs": 0.6,
        "finalizeMs": 6.2
      }
    },
    "native": {
      "fullBuildMs": 2243,
      "noopRebuildMs": 9,
      "oneFileRebuildMs": 380,
      "oneFilePhases": {
        "setupMs": 39.9,
        "parseMs": 49.5,
        "insertMs": 27.2,
        "resolveMs": 0.8,
        "edgesMs": 30.4,
        "structureMs": 124.9,
        "rolesMs": 94.4,
        "astMs": 0.6,
        "complexityMs": 0.7,
        "cfgMs": 1.6,
        "dataflowMs": 0.1,
        "finalizeMs": 0.4
      }
    },
    "resolve": {
      "imports": 957,
      "nativeBatchMs": 5.5,
      "jsFallbackMs": 11.1,
      "perImportNativeMs": 0,
      "perImportJsMs": 0
    }
  },
  {
    "version": "3.9.2",
    "date": "2026-04-09",
    "files": 667,
    "wasm": {
      "fullBuildMs": 7216,
      "noopRebuildMs": 17,
      "oneFileRebuildMs": 598,
      "oneFilePhases": {
        "setupMs": 1.8,
        "parseMs": 256.9,
        "insertMs": 18.6,
        "resolveMs": 1.8,
        "edgesMs": 26.2,
        "structureMs": 34.6,
        "rolesMs": 80,
        "astMs": 0.7,
        "complexityMs": 0.5,
        "cfgMs": 0.3,
        "dataflowMs": 0.5,
        "finalizeMs": 6.5
      }
    },
    "native": {
      "fullBuildMs": 9403,
      "noopRebuildMs": 8,
      "oneFileRebuildMs": 555,
      "oneFilePhases": {
        "setupMs": 37.8,
        "parseMs": 50.8,
        "insertMs": 25.5,
        "resolveMs": 0.7,
        "edgesMs": 28.6,
        "structureMs": 127.9,
        "rolesMs": 74,
        "astMs": 25.6,
        "complexityMs": 3,
        "cfgMs": 53.6,
        "dataflowMs": 31.3,
        "finalizeMs": 0.7
      }
    },
    "resolve": {
      "imports": 958,
      "nativeBatchMs": 5.8,
      "jsFallbackMs": 10.5,
      "perImportNativeMs": 0,
      "perImportJsMs": 0
    }
  },
  {
    "version": "3.9.1",
    "date": "2026-04-06",
    "files": 570,
    "wasm": {
      "fullBuildMs": 6949,
      "noopRebuildMs": 14,
      "oneFileRebuildMs": 603,
      "oneFilePhases": {
        "setupMs": 1.5,
        "parseMs": 263.1,
        "insertMs": 19,
        "resolveMs": 1.8,
        "edgesMs": 20.5,
        "structureMs": 30.8,
        "rolesMs": 81.5,
        "astMs": 1,
        "complexityMs": 0.6,
        "cfgMs": 0.3,
        "dataflowMs": 0.6,
        "finalizeMs": 5.1
      }
    },
    "native": {
      "fullBuildMs": 5206,
      "noopRebuildMs": 15,
      "oneFileRebuildMs": 757,
      "oneFilePhases": {
        "setupMs": 4.1,
        "parseMs": 341.9,
        "insertMs": 33.3,
        "resolveMs": 2.3,
        "edgesMs": 56.1,
        "structureMs": 31.1,
        "rolesMs": 83,
        "astMs": 11.7,
        "complexityMs": 0.3,
        "cfgMs": 0.3,
        "dataflowMs": 0.3,
        "finalizeMs": 1
      }
    },
    "resolve": {
      "imports": 951,
      "nativeBatchMs": 7,
      "jsFallbackMs": 12.2,
      "perImportNativeMs": 0,
      "perImportJsMs": 0
    }
  },
  {
    "version": "3.9.0",
    "date": "2026-04-04",
    "files": 567,
    "wasm": {
      "fullBuildMs": 6793,
      "noopRebuildMs": 12,
      "oneFileRebuildMs": 541,
      "oneFilePhases": {
        "setupMs": 1.6,
        "parseMs": 264.6,
        "insertMs": 16.2,
        "resolveMs": 2,
        "edgesMs": 20.7,
        "structureMs": 25.7,
        "rolesMs": 46.6,
        "astMs": 0.4,
        "complexityMs": 0.4,
        "cfgMs": 0.2,
        "dataflowMs": 0.3,
        "finalizeMs": 6.2
      }
    },
    "native": {
      "fullBuildMs": 6520,
      "noopRebuildMs": 6,
      "oneFileRebuildMs": 527,
      "oneFilePhases": {
        "setupMs": 31.1,
        "parseMs": 54,
        "insertMs": 21.1,
        "resolveMs": 0.8,
        "edgesMs": 25.1,
        "structureMs": 140.6,
        "rolesMs": 59.3,
        "astMs": 14.4,
        "complexityMs": 4.2,
        "cfgMs": 25.6,
        "dataflowMs": 11.7,
        "finalizeMs": 0.4
      }
    },
    "resolve": {
      "imports": 951,
      "nativeBatchMs": 5.1,
      "jsFallbackMs": 10.8,
      "perImportNativeMs": 0,
      "perImportJsMs": 0
    }
  },
  {
    "version": "3.8.1",
    "date": "2026-04-03",
    "files": 565,
    "wasm": {
      "fullBuildMs": 7018,
      "noopRebuildMs": 15,
      "oneFileRebuildMs": 603,
      "oneFilePhases": {
        "setupMs": 3.7,
        "parseMs": 272.3,
        "insertMs": 18.4,
        "resolveMs": 1.8,
        "edgesMs": 29.7,
        "structureMs": 28.2,
        "rolesMs": 52.2,
        "astMs": 11.5,
        "complexityMs": 0.7,
        "cfgMs": 0.4,
        "dataflowMs": 0.4,
        "finalizeMs": 6
      }
    },
    "native": {
      "fullBuildMs": 6618,
      "noopRebuildMs": 8,
      "oneFileRebuildMs": 41,
      "oneFilePhases": {
        "setupMs": 6.8,
        "parseMs": 0.3,
        "insertMs": 0.2,
        "resolveMs": 0.3,
        "edgesMs": 8,
        "structureMs": 0.3,
        "rolesMs": 13.2,
        "astMs": 2.7,
        "complexityMs": 0.6,
        "cfgMs": 0.3,
        "dataflowMs": 0.3,
        "finalizeMs": 0.4
      }
    },
    "resolve": {
      "imports": 951,
      "nativeBatchMs": 6.2,
      "jsFallbackMs": 10.7,
      "perImportNativeMs": 0,
      "perImportJsMs": 0
    }
  },
  {
    "version": "3.8.0",
    "date": "2026-04-02",
    "files": 564,
    "wasm": {
      "fullBuildMs": 1184,
      "noopRebuildMs": 8,
      "oneFileRebuildMs": 33,
      "oneFilePhases": {
        "setupMs": 5.3,
        "parseMs": 0.3,
        "insertMs": 0.8,
        "resolveMs": 0.4,
        "edgesMs": 8.7,
        "structureMs": 0.2,
        "rolesMs": 13.9,
        "astMs": 0,
        "complexityMs": 0,
        "cfgMs": 0,
        "dataflowMs": 0,
        "finalizeMs": 0.3
      }
    },
    "native": {
      "fullBuildMs": 1166,
      "noopRebuildMs": 7,
      "oneFileRebuildMs": 33,
      "oneFilePhases": {
        "setupMs": 5.5,
        "parseMs": 0.3,
        "insertMs": 0.8,
        "resolveMs": 0.4,
        "edgesMs": 8.2,
        "structureMs": 0.2,
        "rolesMs": 14,
        "astMs": 0,
        "complexityMs": 0,
        "cfgMs": 0,
        "dataflowMs": 0,
        "finalizeMs": 0.3
      }
    },
    "resolve": {
      "imports": 933,
      "nativeBatchMs": 4.1,
      "jsFallbackMs": 12.4,
      "perImportNativeMs": 0,
      "perImportJsMs": 0
    }
  },
  {
    "version": "3.7.0",
    "date": "2026-04-01",
    "files": 532,
    "wasm": {
      "fullBuildMs": 6440,
      "noopRebuildMs": 19,
      "oneFileRebuildMs": 558,
      "oneFilePhases": {
        "setupMs": 2.7,
        "parseMs": 248.2,
        "insertMs": 18.4,
        "resolveMs": 1.7,
        "edgesMs": 24.2,
        "structureMs": 32,
        "rolesMs": 54.5,
        "astMs": 11.8,
        "complexityMs": 4.2,
        "cfgMs": 0.3,
        "dataflowMs": 0.3,
        "finalizeMs": 5.6
      }
    },
    "native": null,
    "resolve": {
      "imports": 912,
      "nativeBatchMs": 4,
      "jsFallbackMs": 15.3,
      "perImportNativeMs": 0,
      "perImportJsMs": 0
    }
  },
  {
    "version": "3.6.0",
    "date": "2026-03-30",
    "files": 514,
    "wasm": {
      "fullBuildMs": 6128,
      "noopRebuildMs": 13,
      "oneFileRebuildMs": 545,
      "oneFilePhases": {
        "setupMs": 2.5,
        "parseMs": 246.6,
        "insertMs": 17.7,
        "resolveMs": 1.6,
        "edgesMs": 19,
        "structureMs": 28.8,
        "rolesMs": 45.2,
        "astMs": 12.9,
        "complexityMs": 0.6,
        "cfgMs": 0.3,
        "dataflowMs": 0.3,
        "finalizeMs": 4.3
      }
    },
    "native": null,
    "resolve": {
      "imports": 904,
      "nativeBatchMs": 3.9,
      "jsFallbackMs": 11.7,
      "perImportNativeMs": 0,
      "perImportJsMs": 0
    }
  },
  {
    "version": "3.5.0",
    "date": "2026-03-30",
    "files": 0,
    "wasm": null,
    "native": null,
    "resolve": {
      "imports": 896,
      "nativeBatchMs": 4,
      "jsFallbackMs": 10.7,
      "perImportNativeMs": 0,
      "perImportJsMs": 0
    }
  },
  {
    "version": "3.4.1",
    "date": "2026-03-27",
    "files": 473,
    "wasm": {
      "fullBuildMs": 5105,
      "noopRebuildMs": 13,
      "oneFileRebuildMs": 511,
      "oneFilePhases": {
        "setupMs": 2.4,
        "parseMs": 233.6,
        "insertMs": 17.6,
        "resolveMs": 1.7,
        "edgesMs": 16.3,
        "structureMs": 33.9,
        "rolesMs": 40,
        "astMs": 0.6,
        "complexityMs": 9.7,
        "cfgMs": 0.4,
        "dataflowMs": 0.5,
        "finalizeMs": 5
      }
    },
    "native": {
      "fullBuildMs": 2350,
      "noopRebuildMs": 13,
      "oneFileRebuildMs": 331,
      "oneFilePhases": {
        "setupMs": 1.4,
        "parseMs": 77.2,
        "insertMs": 18.9,
        "resolveMs": 1.7,
        "edgesMs": 33.6,
        "structureMs": 26.4,
        "rolesMs": 46.5,
        "astMs": 0.6,
        "complexityMs": 0.6,
        "cfgMs": 0.3,
        "dataflowMs": 0.5,
        "finalizeMs": 0.5
      }
    },
    "resolve": {
      "imports": 888,
      "nativeBatchMs": 3.8,
      "jsFallbackMs": 12.7,
      "perImportNativeMs": 0,
      "perImportJsMs": 0
    }
  },
  {
    "version": "3.4.0",
    "date": "2026-03-26",
    "files": 473,
    "wasm": {
      "fullBuildMs": 5033,
      "noopRebuildMs": 12,
      "oneFileRebuildMs": 617,
      "oneFilePhases": {
        "setupMs": 1.9,
        "parseMs": 223,
        "insertMs": 14.1,
        "resolveMs": 1.6,
        "edgesMs": 13.6,
        "structureMs": 29,
        "rolesMs": 69.1,
        "astMs": 0.6,
        "complexityMs": 0.7,
        "cfgMs": 0.5,
        "dataflowMs": 0.5,
        "finalizeMs": 14.6
      }
    },
    "native": {
      "fullBuildMs": 2276,
      "noopRebuildMs": 12,
      "oneFileRebuildMs": 448,
      "oneFilePhases": {
        "setupMs": 2,
        "parseMs": 73.5,
        "insertMs": 14.3,
        "resolveMs": 1.6,
        "edgesMs": 24.5,
        "structureMs": 39.6,
        "rolesMs": 54.3,
        "astMs": 0.6,
        "complexityMs": 0.6,
        "cfgMs": 0.4,
        "dataflowMs": 0.4,
        "finalizeMs": 9.7
      }
    },
    "resolve": {
      "imports": 891,
      "nativeBatchMs": 3.8,
      "jsFallbackMs": 11.8,
      "perImportNativeMs": 0,
      "perImportJsMs": 0
    }
  },
  {
    "version": "3.3.1",
    "date": "2026-03-20",
    "files": 442,
    "wasm": {
      "fullBuildMs": 4363,
      "noopRebuildMs": 10,
      "oneFileRebuildMs": 508,
      "oneFilePhases": {
        "setupMs": 1.1,
        "parseMs": 201.2,
        "insertMs": 8.1,
        "resolveMs": 1.6,
        "edgesMs": 18.4,
        "structureMs": 24.1,
        "rolesMs": 52.1,
        "astMs": 0.2,
        "complexityMs": 0.1,
        "cfgMs": 0.1,
        "dataflowMs": 0.2,
        "finalizeMs": 13.9
      }
    },
    "native": {
      "fullBuildMs": 2369,
      "noopRebuildMs": 11,
      "oneFileRebuildMs": 346,
      "oneFilePhases": {
        "setupMs": 1.2,
        "parseMs": 59.2,
        "insertMs": 8.1,
        "resolveMs": 1.9,
        "edgesMs": 27.3,
        "structureMs": 23.4,
        "rolesMs": 44.9,
        "astMs": 0.3,
        "complexityMs": 0.1,
        "cfgMs": 0.1,
        "dataflowMs": 0.2,
        "finalizeMs": 9.1
      }
    },
    "resolve": {
      "imports": 665,
      "nativeBatchMs": 9,
      "jsFallbackMs": 25.8,
      "perImportNativeMs": 0,
      "perImportJsMs": 0
    }
  },
  {
    "version": "3.3.0",
    "date": "2026-03-19",
    "files": 429,
    "wasm": {
      "fullBuildMs": 4265,
      "noopRebuildMs": 11,
      "oneFileRebuildMs": 479,
      "oneFilePhases": {
        "setupMs": 1.7,
        "parseMs": 193.6,
        "insertMs": 8.3,
        "resolveMs": 1.7,
        "edgesMs": 14.7,
        "structureMs": 16.5,
        "rolesMs": 50.4,
        "astMs": 0.2,
        "complexityMs": 0.1,
        "cfgMs": 0.1,
        "dataflowMs": 0.2,
        "finalizeMs": 13.3
      }
    },
    "native": {
      "fullBuildMs": 3048,
      "noopRebuildMs": 10,
      "oneFileRebuildMs": 417,
      "oneFilePhases": {
        "setupMs": 1.2,
        "parseMs": 134,
        "insertMs": 7.9,
        "resolveMs": 1.6,
        "edgesMs": 25.1,
        "structureMs": 19.6,
        "rolesMs": 45.9,
        "astMs": 0.3,
        "complexityMs": 0.1,
        "cfgMs": 0.2,
        "dataflowMs": 0.2,
        "finalizeMs": 12
      }
    },
    "resolve": {
      "imports": 664,
      "nativeBatchMs": 9.6,
      "jsFallbackMs": 25.7,
      "perImportNativeMs": 0,
      "perImportJsMs": 0
    }
  },
  {
    "version": "3.1.4",
    "date": "2026-03-16",
    "files": 398,
    "wasm": {
      "fullBuildMs": 3295,
      "noopRebuildMs": 11,
      "oneFileRebuildMs": 340,
      "oneFilePhases": {
        "setupMs": 1.1,
        "parseMs": 135.9,
        "insertMs": 6.3,
        "resolveMs": 1.5,
        "edgesMs": 14.1,
        "structureMs": 14.6,
        "rolesMs": 26.7,
        "astMs": 0.3,
        "complexityMs": 0.1,
        "cfgMs": 0.1,
        "dataflowMs": 0.2,
        "finalizeMs": 13.9
      }
    },
    "native": {
      "fullBuildMs": 1267,
      "noopRebuildMs": 6,
      "oneFileRebuildMs": 240,
      "oneFilePhases": {
        "setupMs": 0.8,
        "parseMs": 51,
        "insertMs": 6.5,
        "resolveMs": 1.5,
        "edgesMs": 14.5,
        "structureMs": 12.1,
        "rolesMs": 32.7,
        "astMs": 0.3,
        "complexityMs": 0.1,
        "cfgMs": 0.1,
        "dataflowMs": 0.2,
        "finalizeMs": 7
      }
    },
    "resolve": {
      "imports": 175,
      "nativeBatchMs": 1.2,
      "jsFallbackMs": 2.6,
      "perImportNativeMs": 0,
      "perImportJsMs": 0
    }
  },
  {
    "version": "3.1.3",
    "date": "2026-03-12",
    "files": 236,
    "wasm": {
      "fullBuildMs": 2988,
      "noopRebuildMs": 6,
      "oneFileRebuildMs": 473,
      "oneFilePhases": {
        "setupMs": 31.7,
        "parseMs": 225.7,
        "insertMs": 12.9,
        "resolveMs": 1.5,
        "edgesMs": 19.6,
        "structureMs": 7.9,
        "rolesMs": 29.3,
        "astMs": 14.3,
        "complexityMs": 2.8,
        "cfgMs": 5.3,
        "dataflowMs": 4.2,
        "finalizeMs": 9.9
      }
    },
    "native": {
      "fullBuildMs": 1164,
      "noopRebuildMs": 6,
      "oneFileRebuildMs": 271,
      "oneFilePhases": {
        "setupMs": 33.8,
        "parseMs": 88.8,
        "insertMs": 9.9,
        "resolveMs": 1.6,
        "edgesMs": 16.8,
        "structureMs": 8.4,
        "rolesMs": 20.3,
        "astMs": 14.1,
        "complexityMs": 1,
        "cfgMs": 5.2,
        "dataflowMs": 6.5,
        "finalizeMs": 4.7
      }
    },
    "resolve": {
      "imports": 218,
      "nativeBatchMs": 1.9,
      "jsFallbackMs": 4.7,
      "perImportNativeMs": 0,
      "perImportJsMs": 0
    }
  },
  {
    "version": "3.1.2",
    "date": "2026-03-11",
    "files": 235,
    "wasm": {
      "fullBuildMs": 2906,
      "noopRebuildMs": 6,
      "oneFileRebuildMs": 488,
      "oneFilePhases": {
        "parseMs": 223.6,
        "insertMs": 13.4,
        "resolveMs": 1.5,
        "edgesMs": 35.6,
        "structureMs": 11.6,
        "rolesMs": 25.6,
        "astMs": 14.9,
        "complexityMs": 0.4,
        "cfgMs": 5.7,
        "dataflowMs": 5
      }
    },
    "native": {
      "fullBuildMs": 1168,
      "noopRebuildMs": 5,
      "oneFileRebuildMs": 264,
      "oneFilePhases": {
        "parseMs": 85,
        "insertMs": 10,
        "resolveMs": 1.2,
        "edgesMs": 15.9,
        "structureMs": 7.7,
        "rolesMs": 29.2,
        "astMs": 14.6,
        "complexityMs": 1,
        "cfgMs": 5.5,
        "dataflowMs": 4.2
      }
    },
    "resolve": {
      "imports": 218,
      "nativeBatchMs": 2,
      "jsFallbackMs": 4.7,
      "perImportNativeMs": 0,
      "perImportJsMs": 0
    }
  },
  {
    "version": "3.1.0",
    "date": "2026-03-08",
    "files": 180,
    "wasm": {
      "fullBuildMs": 2860,
      "noopRebuildMs": 6,
      "oneFileRebuildMs": 536
    },
    "native": {
      "fullBuildMs": 1101,
      "noopRebuildMs": 5,
      "oneFileRebuildMs": 329
    },
    "resolve": {
      "imports": 207,
      "nativeBatchMs": 2.2,
      "jsFallbackMs": 4.2,
      "perImportNativeMs": 0,
      "perImportJsMs": 0
    }
  },
  {
    "version": "3.0.4",
    "date": "2026-03-06",
    "files": 177,
    "wasm": {
      "fullBuildMs": 2539,
      "noopRebuildMs": 5,
      "oneFileRebuildMs": 568
    },
    "native": {
      "fullBuildMs": 1030,
      "noopRebuildMs": 319,
      "oneFileRebuildMs": 338
    },
    "resolve": {
      "imports": 202,
      "nativeBatchMs": 3.6,
      "jsFallbackMs": 4,
      "perImportNativeMs": 0,
      "perImportJsMs": 0
    }
  },
  {
    "version": "3.0.3",
    "date": "2026-03-04",
    "files": 172,
    "wasm": {
      "fullBuildMs": 2395,
      "noopRebuildMs": 5,
      "oneFileRebuildMs": 505
    },
    "native": {
      "fullBuildMs": 1757,
      "noopRebuildMs": 4,
      "oneFileRebuildMs": 346
    },
    "resolve": {
      "imports": 202,
      "nativeBatchMs": 3.4,
      "jsFallbackMs": 4,
      "perImportNativeMs": 0,
      "perImportJsMs": 0
    }
  },
  {
    "version": "3.0.2",
    "date": "2026-03-04",
    "files": 172,
    "wasm": {
      "fullBuildMs": 2549,
      "noopRebuildMs": 6,
      "oneFileRebuildMs": 515
    },
    "native": {
      "fullBuildMs": 1941,
      "noopRebuildMs": 5,
      "oneFileRebuildMs": 349
    },
    "resolve": {
      "imports": 202,
      "nativeBatchMs": 3.5,
      "jsFallbackMs": 4.3,
      "perImportNativeMs": 0,
      "perImportJsMs": 0
    }
  },
  {
    "version": "3.0.1",
    "date": "2026-03-04",
    "files": 165,
    "wasm": {
      "fullBuildMs": 3313,
      "noopRebuildMs": 6,
      "oneFileRebuildMs": 1025
    },
    "native": {
      "fullBuildMs": 2327,
      "noopRebuildMs": 4,
      "oneFileRebuildMs": 928
    },
    "resolve": {
      "imports": 201,
      "nativeBatchMs": 3.6,
      "jsFallbackMs": 4,
      "perImportNativeMs": 0,
      "perImportJsMs": 0
    }
  },
  {
    "version": "3.0.0",
    "date": "2026-03-03",
    "files": 164,
    "wasm": {
      "fullBuildMs": 2049,
      "noopRebuildMs": 5,
      "oneFileRebuildMs": 1064
    },
    "native": {
      "fullBuildMs": 721,
      "noopRebuildMs": 5,
      "oneFileRebuildMs": 325
    },
    "resolve": {
      "imports": 201,
      "nativeBatchMs": 3.5,
      "jsFallbackMs": 4.3,
      "perImportNativeMs": 0,
      "perImportJsMs": 0
    }
  },
  {
    "version": "2.6.0",
    "date": "2026-03-02",
    "files": 146,
    "wasm": {
      "fullBuildMs": 899,
      "noopRebuildMs": 4,
      "oneFileRebuildMs": 503
    },
    "native": {
      "fullBuildMs": 286,
      "noopRebuildMs": 4,
      "oneFileRebuildMs": 135
    },
    "resolve": {
      "imports": 171,
      "nativeBatchMs": 2.9,
      "jsFallbackMs": 3.3,
      "perImportNativeMs": 0,
      "perImportJsMs": 0
    }
  },
  {
    "version": "2.5.1",
    "date": "2026-03-02",
    "files": 142,
    "wasm": {
      "fullBuildMs": 888,
      "noopRebuildMs": 5,
      "oneFileRebuildMs": 368
    },
    "native": {
      "fullBuildMs": 277,
      "noopRebuildMs": 6,
      "oneFileRebuildMs": 129
    },
    "resolve": {
      "imports": 171,
      "nativeBatchMs": 2.9,
      "jsFallbackMs": 3.4,
      "perImportNativeMs": 0,
      "perImportJsMs": 0
    }
  }
]
-->
