From adbcd2d26b0b74fac834cc081f33db68b8ce2843 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Wed, 17 Jun 2026 09:41:13 +0000 Subject: [PATCH 1/2] chore: release v3.13.0 --- crates/codegraph-core/Cargo.toml | 2 +- generated/DEPENDENCIES.json | 18 ++++---- package-lock.json | 70 ++++++++++++++++---------------- package.json | 14 +++---- 4 files changed, 52 insertions(+), 52 deletions(-) diff --git a/crates/codegraph-core/Cargo.toml b/crates/codegraph-core/Cargo.toml index c7c40cb2..c8489e58 100644 --- a/crates/codegraph-core/Cargo.toml +++ b/crates/codegraph-core/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "codegraph-core" -version = "3.12.0" +version = "3.13.0" edition = "2021" license = "Apache-2.0" diff --git a/generated/DEPENDENCIES.json b/generated/DEPENDENCIES.json index ca0140d4..19d12c1c 100644 --- a/generated/DEPENDENCIES.json +++ b/generated/DEPENDENCIES.json @@ -1,5 +1,5 @@ { - "version": "3.12.0", + "version": "3.13.0", "name": "@optave/codegraph", "dependencies": { "@modelcontextprotocol/sdk": { @@ -14,7 +14,7 @@ "overridden": false, "dependencies": { "hono": { - "version": "4.12.18" + "version": "4.12.25" } } }, @@ -187,7 +187,7 @@ "version": "2.4.1" }, "qs": { - "version": "6.15.0" + "version": "6.15.2" }, "raw-body": { "version": "3.0.2" @@ -369,8 +369,8 @@ } }, "qs": { - "version": "6.15.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.15.0.tgz", + "version": "6.15.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.15.2.tgz", "overridden": false, "dependencies": { "side-channel": { @@ -666,8 +666,8 @@ } }, "hono": { - "version": "4.12.18", - "resolved": "https://registry.npmjs.org/hono/-/hono-4.12.18.tgz", + "version": "4.12.25", + "resolved": "https://registry.npmjs.org/hono/-/hono-4.12.25.tgz", "overridden": false }, "jose": { @@ -738,8 +738,8 @@ "@optave/codegraph-darwin-x64": {}, "@optave/codegraph-linux-arm64-gnu": {}, "@optave/codegraph-linux-x64-gnu": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/@optave/codegraph-linux-x64-gnu/-/codegraph-linux-x64-gnu-3.12.0.tgz", + "version": "3.13.0", + "resolved": "https://registry.npmjs.org/@optave/codegraph-linux-x64-gnu/-/codegraph-linux-x64-gnu-3.13.0.tgz", "overridden": false }, "@optave/codegraph-linux-x64-musl": {}, diff --git a/package-lock.json b/package-lock.json index 59b8fa1a..d5a3bd6c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@optave/codegraph", - "version": "3.12.0", + "version": "3.13.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@optave/codegraph", - "version": "3.12.0", + "version": "3.13.0", "license": "Apache-2.0", "dependencies": { "better-sqlite3": "^12.6.2", @@ -66,12 +66,12 @@ }, "optionalDependencies": { "@modelcontextprotocol/sdk": "^1.0.0", - "@optave/codegraph-darwin-arm64": "3.12.0", - "@optave/codegraph-darwin-x64": "3.12.0", - "@optave/codegraph-linux-arm64-gnu": "3.12.0", - "@optave/codegraph-linux-x64-gnu": "3.12.0", - "@optave/codegraph-linux-x64-musl": "3.12.0", - "@optave/codegraph-win32-x64-msvc": "3.12.0" + "@optave/codegraph-darwin-arm64": "3.13.0", + "@optave/codegraph-darwin-x64": "3.13.0", + "@optave/codegraph-linux-arm64-gnu": "3.13.0", + "@optave/codegraph-linux-x64-gnu": "3.13.0", + "@optave/codegraph-linux-x64-musl": "3.13.0", + "@optave/codegraph-win32-x64-msvc": "3.13.0" }, "peerDependencies": { "@huggingface/transformers": "^4.0.1" @@ -1445,9 +1445,9 @@ "license": "MIT" }, "node_modules/@optave/codegraph-darwin-arm64": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/@optave/codegraph-darwin-arm64/-/codegraph-darwin-arm64-3.12.0.tgz", - "integrity": "sha512-E/hjPWjaWWvulCQ5wqcw+kRNhX8nzjmF70vVmQv1Hu1Cj+DbzMA9cOoGz8UhVCjL+vs+D8fP/9e0V4fOpbvqog==", + "version": "3.13.0", + "resolved": "https://registry.npmjs.org/@optave/codegraph-darwin-arm64/-/codegraph-darwin-arm64-3.13.0.tgz", + "integrity": "sha512-XCddNSS0Bj8MAN0tfG81sQSd9ftAsbOkaM2SbVSW4ikMwKorj9rrsOLuaXNLkSWhzueMT6oCsBLUk8WGwaD4GA==", "cpu": [ "arm64" ], @@ -1458,9 +1458,9 @@ ] }, "node_modules/@optave/codegraph-darwin-x64": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/@optave/codegraph-darwin-x64/-/codegraph-darwin-x64-3.12.0.tgz", - "integrity": "sha512-RYkneJADaks2cdkTOzWEdVS346ctgofdUpjWZ+fK41tuND3XRmgpnBgJRCnEnwUTWhNND4di+7j6+W/lom34jA==", + "version": "3.13.0", + "resolved": "https://registry.npmjs.org/@optave/codegraph-darwin-x64/-/codegraph-darwin-x64-3.13.0.tgz", + "integrity": "sha512-2NGLfopiRGdPRBZ+SzIMlwMq1Pyr5ZpJu5+o2lf+T6yFIfuFux6XWJ12jvWrHwffz5/nXTItFahfSISMA6YbmQ==", "cpu": [ "x64" ], @@ -1471,57 +1471,57 @@ ] }, "node_modules/@optave/codegraph-linux-arm64-gnu": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/@optave/codegraph-linux-arm64-gnu/-/codegraph-linux-arm64-gnu-3.12.0.tgz", - "integrity": "sha512-GEKcBxN6ttQmiZeSP+T+tP1Afbbv4ALuLiXNp+92aby7+nwDcEIVZIMz52AFrzZu0FIuNGNJtSwPIG5ygX5cLQ==", + "version": "3.13.0", + "resolved": "https://registry.npmjs.org/@optave/codegraph-linux-arm64-gnu/-/codegraph-linux-arm64-gnu-3.13.0.tgz", + "integrity": "sha512-5f1zLbs+98pLAm+0TYuiuHnZn2DidB7AzyHZ08y6T86hRw2Twn9qpVSl3EZbIHL3S3ajXlmphdNFZYLl8thYdA==", "cpu": [ "arm64" ], + "libc": [ + "glibc" + ], "license": "Apache-2.0", "optional": true, "os": [ "linux" - ], - "libc": [ - "glibc" ] }, "node_modules/@optave/codegraph-linux-x64-gnu": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/@optave/codegraph-linux-x64-gnu/-/codegraph-linux-x64-gnu-3.12.0.tgz", - "integrity": "sha512-2cvCq7CBQ1mJPTmqRkG9UX7l5mnNyQbvrMV608ZWqKc30X2EzNEuPCuV3te7Yue2sJB+6RfSK9lGPDqgnuo9Nw==", + "version": "3.13.0", + "resolved": "https://registry.npmjs.org/@optave/codegraph-linux-x64-gnu/-/codegraph-linux-x64-gnu-3.13.0.tgz", + "integrity": "sha512-/0apK1z7O6ZnbMxVTFdFcCk3ZLQCHbAmyTYc1SF8dx3f1kiJ9TbrBo7olnfBsoajKSBHkiIteyal8IvswnxdAQ==", "cpu": [ "x64" ], + "libc": [ + "glibc" + ], "license": "Apache-2.0", "optional": true, "os": [ "linux" - ], - "libc": [ - "glibc" ] }, "node_modules/@optave/codegraph-linux-x64-musl": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/@optave/codegraph-linux-x64-musl/-/codegraph-linux-x64-musl-3.12.0.tgz", - "integrity": "sha512-6dBiR7lcoQI9i4a5JADM9JBSPE+D9vabIskArPIrP8yUehFyt/DrbXLDINQ1jzgLPhhvUg/Uu1+A+znyPaV+dQ==", + "version": "3.13.0", + "resolved": "https://registry.npmjs.org/@optave/codegraph-linux-x64-musl/-/codegraph-linux-x64-musl-3.13.0.tgz", + "integrity": "sha512-qxZsAKLYHPDMWZL0gdAs7oHOSnuhwf909jsvKrGjy+RA0WEupiCd8J+1KRgy+NEM5C3XasNz/iPl9UnsvXCGbQ==", "cpu": [ "x64" ], + "libc": [ + "musl" + ], "license": "Apache-2.0", "optional": true, "os": [ "linux" - ], - "libc": [ - "musl" ] }, "node_modules/@optave/codegraph-win32-x64-msvc": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/@optave/codegraph-win32-x64-msvc/-/codegraph-win32-x64-msvc-3.12.0.tgz", - "integrity": "sha512-hMIX17QwjQOXrbYpIPvBA6/tQS6ZdPTVz+rSiQtRMXZ6ghHc95m1DPApdq3CwdwcC4cBLP7BLIoF1iifE2e15g==", + "version": "3.13.0", + "resolved": "https://registry.npmjs.org/@optave/codegraph-win32-x64-msvc/-/codegraph-win32-x64-msvc-3.13.0.tgz", + "integrity": "sha512-7ne0V5IcOSr3mhFjeuUyUxRcPGfaOXqIPtG3GoKDfShy3oI1vdf9W02t06dqpSnC1Dvy9VKIrLy1IyyI+/vr0Q==", "cpu": [ "x64" ], diff --git a/package.json b/package.json index a9cb0852..d35638ee 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@optave/codegraph", - "version": "3.12.0", + "version": "3.13.0", "description": "Local code graph CLI — parse codebases with tree-sitter, build dependency graphs, query them", "type": "module", "main": "dist/index.js", @@ -132,12 +132,12 @@ }, "optionalDependencies": { "@modelcontextprotocol/sdk": "^1.0.0", - "@optave/codegraph-darwin-arm64": "3.12.0", - "@optave/codegraph-darwin-x64": "3.12.0", - "@optave/codegraph-linux-arm64-gnu": "3.12.0", - "@optave/codegraph-linux-x64-gnu": "3.12.0", - "@optave/codegraph-linux-x64-musl": "3.12.0", - "@optave/codegraph-win32-x64-msvc": "3.12.0" + "@optave/codegraph-darwin-arm64": "3.13.0", + "@optave/codegraph-darwin-x64": "3.13.0", + "@optave/codegraph-linux-arm64-gnu": "3.13.0", + "@optave/codegraph-linux-x64-gnu": "3.13.0", + "@optave/codegraph-linux-x64-musl": "3.13.0", + "@optave/codegraph-win32-x64-msvc": "3.13.0" }, "devDependencies": { "@biomejs/biome": "^2.4.4", From 7ebab306da8be732ec40a735322e0f37874fa84e Mon Sep 17 00:00:00 2001 From: carlos-alm Date: Wed, 17 Jun 2026 11:39:49 -0600 Subject: [PATCH 2/2] chore(bench): prune stale 3.11.x KNOWN_REGRESSIONS entries Remove 12 entries for 3.11.0/3.11.1/3.11.2 that are now >1 minor version behind 3.13.0, unblocking the pre-publish benchmark gate. --- tests/benchmarks/regression-guard.test.ts | 125 +--------------------- 1 file changed, 1 insertion(+), 124 deletions(-) diff --git a/tests/benchmarks/regression-guard.test.ts b/tests/benchmarks/regression-guard.test.ts index 230568bc..f0499bb4 100644 --- a/tests/benchmarks/regression-guard.test.ts +++ b/tests/benchmarks/regression-guard.test.ts @@ -227,118 +227,7 @@ const SKIP_VERSIONS = new Set(['3.8.0']); * latest, when `previous.version` matches via the baseline fallback). Once * a version is no longer the latest in committed history and no longer the * baseline used for `dev` comparisons, its entries become dead weight and - * should be removed (last pruned: 3.9.0/3.9.1/3.9.2/3.9.6/3.10.0). - * - * - 3.11.0:Query time / 3.11.0:No-op rebuild / 3.11.0:fnDeps depth 3 / - * 3.11.0:fnDeps depth 5 — CI runner variance on sub-50ms WASM metrics - * when the per-PR gate replays dev against the just-published 3.11.0 - * baseline. The dev source tree between commit f7c29c5 (3.11.0 release) - * and the post-publish docs PR (#1217) contains only version-bump diffs - * in package.json/Cargo.toml/package-lock.json — no extractor, query, - * or DB changes. Published 3.11.0 numbers were captured by the publish - * workflow on one runner; the per-PR gate re-measures on a fresh runner - * and lands ~10ms higher on every sub-50ms WASM metric: - * - Query time: 32.5 → 44.2 (+36%) on run 26426483639 - * - No-op rebuild: 18 → 29 (+61%) - * - fnDeps depth 3: 33.6 → 44.1 (+31%) - * - fnDeps depth 5: 33.3 → 44.4 (+33%) - * The 3.11.0 vs 3.10.0 release-time comparison shows these metrics - * either flat or improved (Query time 37.6 → 32.5 = -14%, fnDeps depth 3 - * 33 → 33.6 = ~flat, fnDeps depth 5 33 → 33.3 = ~flat, No-op rebuild - * 15 → 18 = +20% but at runner noise floor) — confirming no underlying - * regression and ruling out a real slowdown introduced in 3.11.0. Same - * shape and root cause as the pruned 3.10.0 entries. Exempt this release; - * remove once 3.13.0+ data confirms the new steady-state on whatever - * runner generation is current at that time. - * - * - 3.11.0:1-file rebuild — CI runner variance on a sub-100ms native - * incremental metric. The 3.11.0 baseline was captured at 64ms; the - * per-PR gate re-measures dev on a fresh runner and can land +45ms - * higher (e.g. 64 → 109ms = +70%, threshold 50%) on runs where the - * runner is under load. No incremental, Rust, or JS change in the - * dev tree accounts for this delta — other dep-only PRs running - * concurrently measured 64 → 80ms (+25%) on the same corpus - * (run 26706695868), confirming per-runner noise rather than a - * structural slowdown. The 50% NOISY_METRIC_THRESHOLD is razor-thin - * for a sub-100ms metric at shared-runner noise floor (~20ms). Exempt - * this release; remove once 3.13.0+ data confirms stabilization. - * - * - 3.11.0:Full build — same CI runner-variance root cause as the four - * 3.11.0 entries above, but on the multi-second WASM full-build metric - * rather than the sub-50ms group. Surfaced on the embedding-bench docs - * PR (#1218) when the per-PR gate re-measured dev (byte-identical to - * released 3.11.0 modulo EMBEDDING-BENCHMARKS.md) against the published - * 3.11.0 baseline: - * - Full build (wasm): 7664 → 9765 (+27%, threshold 25%) on run 26431397916 - * Historical WASM full-build numbers on the same corpus span 7.2s–14.0s - * across 3.9.0–3.11.0, so 9.8s on a single dev re-measurement sits well - * inside the runner-noise envelope (3.10.0 baseline was 8.4s, 3.9.6 was - * 14.0s). PR #1217's gate measured 7664 — the same code on a fresh - * runner instance later measured 9765. No extractor, builder, or DB - * layer changed between 3.11.0 release and #1218; only EMBEDDING- - * BENCHMARKS.md, which is not loaded at build time. Exempt this release; - * remove once 3.13.0+ data confirms stabilization under whatever runner - * generation is current at that time. - * - * - 3.11.1:DB bytes/file — same methodology-scope artifact as 3.10.0:DB - * bytes/file. The 3.11.0 release does not have query benchmark data - * committed to history, so findLatestPair falls back to 3.10.0 as the - * baseline. The 3.10.0 corpus included resolution fixtures (~745 files); - * 3.11.1 measures only the codegraph source (~607 files) after #1134 - * excluded resolution fixtures from the build sweep. The denominator - * shrinks while total DB content stays roughly constant, inflating - * dbSizeBytes/file: native 41614 → 54107 (+30%), wasm 41543 → 53517 - * (+29%). No schema or extraction change; remove once 3.13.0+ data is - * captured with the full 3.11.x baseline in committed query history. - * - * - 3.11.1:fnDeps depth 3 / 3.11.1:fnDeps depth 5 — same baseline-gap - * root cause as 3.11.1:DB bytes/file. Because 3.11.0 query benchmark - * data is absent from committed history, the guard compares 3.11.1 - * against the pre-3.11.0 3.10.0 baseline. The 3.10.0 query numbers - * predate the steady-state established in 3.11.0 (fnDeps depth 3: 33ms, - * depth 5: 33ms), so 3.11.1's equivalent values appear as regressions: - * - native fnDeps depth 3: 24.3 → 34.7 (+43%) - * - native fnDeps depth 5: 24.7 → 34.7 (+40%) - * - wasm fnDeps depth 3: 33 → 43.2 (+31%) - * - wasm fnDeps depth 5: 33 → 43.5 (+32%) - * No fn_deps Rust implementation, fnDepsData JS wrapper, or DB index - * changed between 3.10.0 and 3.11.1. Remove once 3.12.0+ data confirms - * stable query numbers against a 3.11.x baseline. - * - * - 3.11.2:No-op rebuild — CI runner variance on a sub-30ms native metric. - * The 3.11.2 baseline captures noopRebuildMs=25 (build benchmark) and - * noopRebuildMs=19 (incremental benchmark); the per-PR gate re-measures - * dev on a fresh runner and lands at 45ms (+80%) and 37ms (+95%) on run - * 26792023287 — both exceed the NOISY_METRIC_THRESHOLD of 50% due to - * sub-30ms variance. No watcher, builder, or incremental-orchestrator - * change is present in the dev tree for this docs-only PR (#1282); - * the delta is entirely shared-runner scheduling noise. Same shape and - * root cause as the 3.11.0 and 3.11.1 entries above. Exempt this - * release; remove once 3.13.0+ data confirms the steady-state. - * - * - 3.11.2:1-file rebuild — CI runner variance on the sub-100ms native - * incremental metric. The 3.11.2 baseline was captured at 83ms; the - * per-PR gate for the Phase 8.1 TypeScript resolver PR (#1278) re-measured - * dev on a fresh runner and landed at 212ms (+155%, threshold 50%) on run - * 26793082961. The same PR modifies only: (a) a new ts-resolver.ts module - * gated behind `typescriptResolver: false` (was the default at the time), (b) an import of - * that module in build-edges.ts, and (c) a config field — none of which - * execute on the incremental hot path. Locally the same PR measures 86ms - * (within noise of the 83ms baseline). The 3.11.0:1-file rebuild exemption - * above documents the same pattern for the same baseline range. Exempt - * this release; remove once 3.13.0+ data confirms stabilization. - * - * - 3.11.2:Full build — CI runner variance on the multi-second native - * full-build metric. The 3.11.2 baseline captures fullBuildMs=2231; the - * per-PR gate for the Phase 8.3c parameter-flow PR (#1308) re-measured dev - * on a fresh runner and landed at 2852ms (+28%, threshold 25%) on run - * 27003863932. The PR adds CHA post-pass and parameter-flow tracking that - * each contribute microseconds-level overhead per call site — not hundreds - * of milliseconds. Historical native full-build numbers on this corpus span - * 1959ms (3.10.0) to 2986ms (3.9.6), so 2852ms sits well within the - * runner-noise envelope. Same shape and root cause as the 3.11.0:Full build - * exemption above (which was a WASM metric; this is native). Exempt this - * release; remove once 3.13.0+ data confirms the steady-state. + * should be removed (last pruned: 3.9.0/3.9.1/3.9.2/3.9.6/3.10.0/3.11.0/3.11.1/3.11.2). * * - 3.12.0:No-op rebuild — CI runner variance on a sub-50ms native metric. * The 3.12.0 baseline captures noopRebuildMs=30 (build benchmark) and @@ -404,18 +293,6 @@ const SKIP_VERSIONS = new Set(['3.8.0']); * (DB bytes/file), neither of which the WASM widening covers. */ const KNOWN_REGRESSIONS = new Set([ - '3.11.0:Query time', - '3.11.0:No-op rebuild', - '3.11.0:1-file rebuild', - '3.11.0:fnDeps depth 3', - '3.11.0:fnDeps depth 5', - '3.11.0:Full build', - '3.11.1:DB bytes/file', - '3.11.1:fnDeps depth 3', - '3.11.1:fnDeps depth 5', - '3.11.2:No-op rebuild', - '3.11.2:1-file rebuild', - '3.11.2:Full build', '3.12.0:No-op rebuild', '3.12.0:Full build', '3.12.0:1-file rebuild',