Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
210 commits
Select commit Hold shift + click to select a range
ec0c625
chore(release): bump version to 1.1.1
colbymchenry Jun 24, 2026
4077ed1
docs(changelog): promote [Unreleased] into [1.1.1]
github-actions[bot] Jun 24, 2026
dfe13b0
feat(mcp): off-load read-tool dispatch to a worker pool to fix concur…
colbymchenry Jun 26, 2026
703629e
feat(c/c++): resolve function-pointer command tables — macro-built, c…
colbymchenry Jun 26, 2026
b45f309
fix(prompt-hook): fire front-load hook for non-English prompts (#994)…
colbymchenry Jun 26, 2026
d3179f5
feat(mcp): require projectPath when the MCP server has no default pro…
colbymchenry Jun 27, 2026
45d3293
fix(resolution): stop "Resolving refs" wedge on theme-vendoring repos…
colbymchenry Jun 27, 2026
7a361ef
docs: document the `exclude` codegraph.json option (#999) (#1010)
colbymchenry Jun 27, 2026
f83a1ec
fix(mcp): start the daemon on ExFAT/FAT/network filesystems (#997) (#…
colbymchenry Jun 27, 2026
30dc303
fix(db): chunk deleteResolvedReferences IN-list under the SQLite para…
colbymchenry Jun 27, 2026
b3f59c7
fix(extraction): index Swift computed properties so they're findable …
colbymchenry Jun 27, 2026
9716fb2
feat(extraction): parallelize indexing across a parse worker pool (#1…
colbymchenry Jun 27, 2026
a79fa51
feat(mcp): add readOnlyHint annotations so tools work in Cursor Ask m…
colbymchenry Jun 27, 2026
fcc275e
Bump version from 1.1.1 to 1.1.2
colbymchenry Jun 27, 2026
82b62a2
Bump version to 1.1.2 in package-lock.json
colbymchenry Jun 27, 2026
c5bd6e2
docs(changelog): promote [Unreleased] into [1.1.2]
github-actions[bot] Jun 28, 2026
a4dfc34
fix(extraction): index nested repos recorded as gitlinks (#1031, #103…
colbymchenry Jun 28, 2026
f73227d
fix(mcp): don't warn "different git working tree" for submodules cove…
colbymchenry Jun 29, 2026
cfa2935
fix(mcp): drain the event loop on Windows daemon shutdown instead of …
colbymchenry Jun 29, 2026
4c0c87f
docs(changelog): note the Windows daemon shutdown fix (#1041) (#1042)
colbymchenry Jun 29, 2026
f4e03e9
fix(extraction): resolve C++ inheritance from templated base classes …
colbymchenry Jun 29, 2026
2176a7a
fix(extraction): record instantiates for C++ stack/brace construction…
colbymchenry Jun 29, 2026
0da2dce
fix(db): dedup edges with a UNIQUE identity index so INSERT OR IGNORE…
colbymchenry Jun 29, 2026
0d331b9
fix(cli): make `node` symbol positional optional so `node -f <file>` …
colbymchenry Jun 29, 2026
4b58a6d
fix(cli): stop rendering raw FTS score as nonsensical percentages in …
colbymchenry Jun 29, 2026
9bce41b
fix(explore): report the curated result count, not the raw candidate …
colbymchenry Jun 29, 2026
ffff9c2
fix(index): exclude Android resource XML from the index by default (#…
colbymchenry Jun 29, 2026
c0284ae
chore: bump version to 1.1.3 (#1055)
colbymchenry Jun 29, 2026
738d2dc
docs(changelog): promote [Unreleased] into [1.1.3]
github-actions[bot] Jun 29, 2026
4159539
fix(index): respect .gitignore for tracked gitlink embedded repos (#1…
colbymchenry Jun 29, 2026
1c67ac0
chore: bump version to 1.1.4
colbymchenry Jun 29, 2026
575d960
docs(changelog): promote [Unreleased] into [1.1.4]
github-actions[bot] Jun 29, 2026
2b256b9
fix(explore): surface a named method's buried signature type (#1064) …
colbymchenry Jun 30, 2026
e596c96
fix(cpp): recover export-macro-annotated classes instead of dropping …
colbymchenry Jun 30, 2026
9e5f466
chore: bump version to 1.1.5
colbymchenry Jun 30, 2026
236fb10
docs(changelog): promote [Unreleased] into [1.1.5]
github-actions[bot] Jun 30, 2026
7e3da77
fix(install): warn when another codegraph on PATH shadows the new ins…
colbymchenry Jun 30, 2026
9684b3b
fix(index): rebuild a poisoned/oversized index by recreating the DB, …
colbymchenry Jun 30, 2026
31a5807
fix(install): prune old version bundles instead of piling them up (#1…
colbymchenry Jun 30, 2026
fedb564
chore: bump version to 1.1.6 (#1076)
colbymchenry Jun 30, 2026
da72946
docs(changelog): promote [Unreleased] into [1.1.6]
github-actions[bot] Jun 30, 2026
ad03d24
Fix formatting in README for upgrade instruction
colbymchenry Jun 30, 2026
f856f7a
fix(extraction): skip bodiless C++ forward declarations (#1093) (#1095)
colbymchenry Jul 1, 2026
712a406
fix(extraction): correct C++ reference-return and conversion-operator…
colbymchenry Jul 1, 2026
9b2ce1c
fix(extraction): recover C++ function names prefixed by an inline-spe…
colbymchenry Jul 1, 2026
a164cea
fix(extraction): recognize common third-party C++ inline macros, not …
colbymchenry Jul 1, 2026
cb20a3b
feat(extraction): universal recovery of macro-mangled C/C++ function …
colbymchenry Jul 1, 2026
0076520
fix(extraction): broaden the curated C++ inline-macro library list (#…
colbymchenry Jul 1, 2026
6dd5512
fix(windows): set windowsHide on remaining child spawns to stop conso…
colbymchenry Jul 1, 2026
ed39233
fix(index): yield during resolution so the liveness watchdog can't ki…
colbymchenry Jul 1, 2026
43a6fa6
fix(graph): complete edge sets & correct node limits in traversal (#1…
colbymchenry Jul 1, 2026
63bc0fd
fix(resolution): resolve same-named methods to the call site's own fi…
colbymchenry Jul 1, 2026
ed64db0
feat(resolution): infer local-variable receiver types across language…
colbymchenry Jul 1, 2026
3424ff3
fix(extraction/ruby): build receiver.method calls so instance calls r…
colbymchenry Jul 1, 2026
358f400
feat(resolution): local-variable method calls in Lua, Luau, R, Pascal…
colbymchenry Jul 1, 2026
6c50e96
chore: bump version to 1.2.0
colbymchenry Jul 2, 2026
325f59e
release: sync package-lock.json to 1.2.0
github-actions[bot] Jul 2, 2026
3460acc
docs(changelog): promote [Unreleased] into [1.2.0]
github-actions[bot] Jul 2, 2026
7c7514f
fix(sync): degrade auto-sync on a persistent non-lock sync failure (#…
colbymchenry Jul 2, 2026
3850013
fix(resolution): infer typed-parameter receivers in TS/JS (#1125) (#1…
colbymchenry Jul 2, 2026
cf86fe8
fix(resolution): extend typed-parameter receiver inference to Rust/Go…
colbymchenry Jul 2, 2026
e53968c
fix(resolution): gate the Lua/Luau annotation pattern against method-…
colbymchenry Jul 2, 2026
04e2391
chore(security): remove dead reasoning-offload modules flagged in #11…
colbymchenry Jul 2, 2026
317e7f4
fix(prompt-hook): make the structural-question gate multilingual (#11…
colbymchenry Jul 2, 2026
e699ee9
feat(prompt-hook): graph-derived gate tier + confidence-tiered inject…
colbymchenry Jul 2, 2026
81cb59a
fix(resolution): yield per ref and cache hot per-ref work so the watc…
colbymchenry Jul 2, 2026
713ab7a
fix(prompt-hook): bound the call/trace/affect/connect stems on the ri…
colbymchenry Jul 2, 2026
2f70eb3
fix(sync,installer): time-bound the git/npm subprocess calls that had…
colbymchenry Jul 2, 2026
be55b93
fix(prompt-hook): record high-tier gate telemetry only when context w…
colbymchenry Jul 2, 2026
35611b9
fix(prompt-hook): close the segment-vocab integrity gaps (#1141, #114…
colbymchenry Jul 2, 2026
cc89146
feat(extraction): index Metal shader files (.metal) via the C++ gramm…
colbymchenry Jul 2, 2026
816bacb
feat(extraction): add CFML language support (.cfc/.cfm/.cfs) (#1118) …
colbymchenry Jul 2, 2026
5f22da3
feat(resolution): resolve CFML dotted and relative component-path inh…
colbymchenry Jul 2, 2026
7d624ec
feat(resolution): CFML receiver-type inference for locals, typed args…
colbymchenry Jul 3, 2026
41620c6
feat(extraction): add COBOL language support (.cbl/.cob/.cpy) (#590, …
colbymchenry Jul 3, 2026
d7afc8c
docs(grammars): record the sent upstream tree-sitter-cobol PR (#41) (…
colbymchenry Jul 3, 2026
63e1b5a
feat(extraction): add Visual Basic .NET language support (.vb) (#648,…
colbymchenry Jul 3, 2026
6511722
feat(extraction): add Erlang language support (.erl/.hrl) (#635, #648…
colbymchenry Jul 3, 2026
2217a35
feat(resolution): Erlang behaviour-callback dispatch synthesizer (#63…
colbymchenry Jul 3, 2026
7e3d44f
feat(extraction): Erlang gen_server registered-name dispatch targets …
colbymchenry Jul 3, 2026
a5b8cd8
feat(extraction): Erlang macro-body call linkage (#635, #648) (#1168)
colbymchenry Jul 3, 2026
a0208fe
feat(extraction): index Erlang escripts and OTP app resource files (#…
colbymchenry Jul 3, 2026
1441933
feat(extraction): add Solidity language support (.sol) (#374, #648) (…
colbymchenry Jul 3, 2026
e1a8d88
feat(extraction): add CUDA language support (.cu/.cuh) (#387, #648) (…
colbymchenry Jul 3, 2026
6c24f4b
feat(extraction): add Terraform/OpenTofu language support with module…
colbymchenry Jul 3, 2026
f8cdbe3
feat(terraform): remote-state bridge, provider aliases, moved/import/…
colbymchenry Jul 4, 2026
9915221
feat(extraction): add ArkTS language support with ArkUI dispatch brid…
colbymchenry Jul 6, 2026
7f32513
feat(extraction): add Nix language support with module-system option …
colbymchenry Jul 6, 2026
4c15f84
fix(resolution): sweep orphaned unresolved refs so an interrupted ind…
colbymchenry Jul 6, 2026
6ea6524
readme updated
colbymchenry Jul 6, 2026
c9f8c0e
fix(mcp): reap the server when its launcher is killed during startup …
colbymchenry Jul 7, 2026
1b13d79
docs(readme): add table of contents
colbymchenry Jul 7, 2026
356f5f7
fix(daemon): gate the inactivity backstop on client liveness (#1200) …
colbymchenry Jul 7, 2026
f5edf8c
fix(mybatis): quote/comment robustness, iBatis <sqlMap> coverage, dup…
colbymchenry Jul 7, 2026
2a06d9a
feat(config): codegraph.json `include` to force gitignored first-part…
luoyxy Jul 7, 2026
8e697a0
fix(extraction): recover heavily-reflected Unreal Engine C++ classes …
luoyxy Jul 7, 2026
8db8ad5
test(extraction): dense-header regression guard for UE class recovery…
colbymchenry Jul 7, 2026
c049d9e
fix(extraction): detect export-macro-annotated class in .h language c…
colbymchenry Jul 7, 2026
a9e8fa4
fix(extraction): detect export-macro-annotated class in .h language c…
colbymchenry Jul 7, 2026
e65a397
fix(init): surface and offer to opt in gitignored child repos on an e…
colbymchenry Jul 7, 2026
625b4fe
fix(resolution): stop per-call config-key scan that made large Java/K…
colbymchenry Jul 7, 2026
bbf0f90
chore(release): 1.3.0
colbymchenry Jul 7, 2026
58b6bf5
docs(changelog): promote [Unreleased] into [1.3.0]
github-actions[bot] Jul 7, 2026
a3f9008
fix(indexing): bounded-memory yielding pipeline tail + daemon session…
colbymchenry Jul 9, 2026
6a8463f
chore(release): 1.3.1
colbymchenry Jul 9, 2026
2a4d9f9
release: sync package-lock.json to 1.3.1
github-actions[bot] Jul 9, 2026
e552dc2
docs(changelog): promote [Unreleased] into [1.3.1]
github-actions[bot] Jul 9, 2026
e76a355
fix(resolution): gate closure-collection synthesis to Swift/Kotlin an…
colbymchenry Jul 10, 2026
a11a439
fix(indexing): HDD-class storage — false parse timeouts, dropped file…
colbymchenry Jul 10, 2026
50e978e
release: 1.4.0
colbymchenry Jul 10, 2026
531a046
release: sync package-lock.json to 1.4.0
github-actions[bot] Jul 10, 2026
116cb59
docs(changelog): promote [Unreleased] into [1.4.0]
github-actions[bot] Jul 10, 2026
edb9f2f
fix(watchdog): don't kill a healthy index on degraded storage — requi…
colbymchenry Jul 10, 2026
63eb488
fix(upgrade): stop npm installs self-shadowing on upgrade; verify the…
colbymchenry Jul 10, 2026
386bff0
fix(upgrade): refresh installer-written agent surfaces after a binary…
xuing Jul 10, 2026
9d0cd3a
fix(sync): resolve cross-file refs when an edit adds or removes the s…
colbymchenry Jul 10, 2026
70b1be6
fix(php): resolve method calls through $this-> properties on their de…
colbymchenry Jul 10, 2026
8b82fe7
fix(explore): stop NL-question words from hijacking the named-symbol …
colbymchenry Jul 10, 2026
4782394
feat(mcp): notice when a newer CodeGraph release exists, without chan…
colbymchenry Jul 10, 2026
40aa092
fix(uninstall): remove the CLI binaries too, not just agent configs (…
colbymchenry Jul 10, 2026
f8a47bd
chore: bump version to 1.4.1
colbymchenry Jul 10, 2026
7155952
release: sync package-lock.json to 1.4.1
github-actions[bot] Jul 10, 2026
ecc8b30
docs(changelog): promote [Unreleased] into [1.4.1]
github-actions[bot] Jul 10, 2026
6103f5e
fix(cpp): resolve explicit operator calls (a.operator+(b)) to the ope…
colbymchenry Jul 13, 2026
e871c49
fix(resolution): clean up processed refs by row id so batch boundarie…
colbymchenry Jul 13, 2026
2b0b4b5
ci(release): publish npm packages with provenance and attest release …
colbymchenry Jul 16, 2026
a66683d
feat(installer): offer CodeGraph Pro beta signup after install and up…
colbymchenry Jul 16, 2026
243ef1d
ci(release): switch npm publishing to OIDC trusted publishing; docume…
colbymchenry Jul 16, 2026
ad5300a
fix(ui): show synthesis as a 'Linking dynamic dispatch' phase; mute n…
colbymchenry Jul 16, 2026
246aee8
fix(ui): within-pass progress for the C fn-pointer linking pass (#1300)
colbymchenry Jul 16, 2026
5736e24
perf(index): faster fresh indexing + parallel reference resolution, b…
colbymchenry Jul 16, 2026
d6efd43
fix(cli): honor NO_COLOR/--no-color and go plain when stdout is piped…
colbymchenry Jul 16, 2026
3042195
fix(ui): consistent frame glyphs on Windows — agree with clack, keep …
colbymchenry Jul 16, 2026
e1f339f
fix(go): require URL-shaped paths for route detection (#1308)
colbymchenry Jul 16, 2026
4dd29ea
fix(cpp): strip template args from out-of-line method receiver qualif…
colbymchenry Jul 16, 2026
e437918
fix(cpp): compose namespace prefix into out-of-line method qualified …
colbymchenry Jul 16, 2026
b6a05d1
fix(c): blank leading attribute macros so functions index under real …
colbymchenry Jul 16, 2026
18f0745
perf(sync): defer WAL autocheckpoint for the whole incremental run (#…
colbymchenry Jul 16, 2026
8dcf92f
fix(watch): schedule a sync when a directory is deleted (#1313)
colbymchenry Jul 16, 2026
ce983a0
fix(cli): `node <symbol> -f <file>` includes the source body (#1314)
colbymchenry Jul 16, 2026
2ec877b
fix(resolution): calls through an imported singleton resolve to the m…
colbymchenry Jul 16, 2026
41c2029
fix(go): field-chain calls resolve via validated type inference, neve…
colbymchenry Jul 16, 2026
c472cfb
fix(resolution): literal-receiver builtins and nested locals stop fab…
colbymchenry Jul 16, 2026
a5a8942
fix(scan): includeIgnored child patterns revive repos under a gitigno…
colbymchenry Jul 16, 2026
1de7e8f
fix(retrieval): multi-hump field-name queries reach their definers (#…
colbymchenry Jul 16, 2026
a2f3c31
perf(resolution): defer checkpoints and double-buffer persist during …
colbymchenry Jul 16, 2026
cf38ef6
perf(synthesis): fan dynamic-dispatch passes across the resolver pool…
colbymchenry Jul 16, 2026
567b4ad
perf(resolution): drop non-unique edge indexes during the bulk resolu…
colbymchenry Jul 16, 2026
4efc6c7
fix(scale): kernel-scale hardening — OOM-safe pass skipping + watchdo…
colbymchenry Jul 17, 2026
c5eebe6
feat(kernel): R1 scaffold — napi-rs extraction kernel, buffer contrac…
colbymchenry Jul 17, 2026
9ad5cd7
feat(kernel): R2 — full TypeScript/JavaScript extraction port, byte-p…
colbymchenry Jul 17, 2026
c8cca9a
feat(kernel): R3 — TS/JS equivalence gate passed, kernel default-on
colbymchenry Jul 17, 2026
03d54e4
feat(kernel): R4 — Java port with Lombok synthesis, gate passed, defa…
colbymchenry Jul 17, 2026
28068fa
perf(kernel): direct-to-store decode — buffers flow to the store work…
colbymchenry Jul 17, 2026
c2503e2
feat(kernel): R5 — Python and Go ports, gates passed, default-on
colbymchenry Jul 17, 2026
f07fd54
docs(kernel): record 2-CPU django/prometheus benchmarks in §4e
colbymchenry Jul 17, 2026
2a79432
docs(kernel): R6 — kernel-scale re-validation record (§4f) + parity-h…
colbymchenry Jul 17, 2026
8060da2
docs(kernel): make the migration plan a cold-start handoff — status c…
colbymchenry Jul 17, 2026
c1dc78d
Merge pull request #1326 from colbymchenry/rust-kernel
colbymchenry Jul 17, 2026
9e18ac2
docs(kernel): P1 first measurement round — premise correction (cpuset…
colbymchenry Jul 17, 2026
5e329ad
fix(kernel): CRLF docstring parity — JS multiline ^ anchors after \r,…
colbymchenry Jul 17, 2026
04ab45c
docs(kernel): O2 Windows VM validation closed — win32-arm64 native bu…
colbymchenry Jul 17, 2026
6e52295
fix(resolution): WAL containment for the pooled superphase — writer b…
colbymchenry Jul 17, 2026
b8833fe
feat(resolution): memory-aware, cgroup-honest worker-pool sizing + CO…
colbymchenry Jul 17, 2026
8c1e821
fix(db): WAL valve — TRUNCATE at parked barriers, futility latch, COD…
colbymchenry Jul 17, 2026
ca88d3b
fix(db,resolution): WAL file cap + cgroup cache credit + pool/parse s…
colbymchenry Jul 17, 2026
2adc7f6
fix(db): WAL truncate at parked barriers ONLY — the timer-path trunca…
colbymchenry Jul 17, 2026
19cf1ec
docs(kernel): P1 record runs — 2c 20.4min (-23%), 8c 18.3min no-OOM, …
colbymchenry Jul 17, 2026
7cc2366
perf(resolution): batch-loop de-quadratic — keyset reads, changes-bas…
colbymchenry Jul 17, 2026
9f10318
docs(kernel): §7a.3 batch-loop profile round — countGuard quadratic e…
colbymchenry Jul 17, 2026
d510de4
perf(synthesis): cFnPtrEdges 2.07x at kernel scale — probe-profiled, …
colbymchenry Jul 17, 2026
636c74a
docs(kernel): §7a.4 cFnPtr round record — 2.07x standalone, 17.6min e…
colbymchenry Jul 17, 2026
705e501
docs(kernel): sync §0 P1 checklist with the completed §7a.3/§7a.4 rou…
colbymchenry Jul 17, 2026
34ad080
docs(kernel): R7a survey complete — the C/C++ bug-for-bug port checkl…
colbymchenry Jul 17, 2026
44561b6
feat(extraction): vendor current C/C++ grammars (R7a prep) — c v0.24.…
colbymchenry Jul 17, 2026
2d72891
feat(kernel): R7a C/C++ walker — dual-lang ccpp module, preParse hois…
colbymchenry Jul 17, 2026
b9d0f57
feat(extraction): C deferral round 2 — 8 new preParse passes, linux k…
colbymchenry Jul 18, 2026
5955d04
docs(kernel): §7a.6 per-ref measurement round — pool works, two cache…
colbymchenry Jul 18, 2026
971a5a0
perf(resolution): worker connection recycling — WAL-depth writes-unde…
colbymchenry Jul 18, 2026
b877db6
docs(kernel): §7a.8 cFnPtr calibration — strip rewrite killed by meas…
colbymchenry Jul 18, 2026
c6850d7
perf(resolution): cFnPtr fuse-then-link — one extraction sweep + filt…
colbymchenry Jul 19, 2026
69ea438
perf(kernel): cFnPtr native extraction sweep — step 2, pass 230→151s …
colbymchenry Jul 19, 2026
9647771
docs(kernel): §7a.11 continuous-shallow WAL probe — killed by measure…
colbymchenry Jul 20, 2026
f6d8e8f
perf(store): parse-lane index deferral — dubbo fresh init −19%, kerne…
colbymchenry Jul 20, 2026
ce0ae30
perf(store): resolution ref-index window — kernel-scale resolution 42…
colbymchenry Jul 20, 2026
f1ca991
feat(kernel): R7b Rust walker — rustlang module, tree-sitter-rust 0.2…
colbymchenry Jul 20, 2026
286e9cc
feat(kernel): R7b C# walker — csharp module, tree-sitter-c-sharp 0.23…
colbymchenry Jul 20, 2026
1909931
feat(kernel): R7b Ruby walker — ruby module, tree-sitter-ruby 0.23.1 …
colbymchenry Jul 20, 2026
a6c62d7
feat(kernel): R7b PHP walker — php module, tree-sitter-php 0.24.2 bum…
colbymchenry Jul 20, 2026
09e301b
feat(kernel): R7b Swift walker — swift module, tree-sitter-swift 0.7.…
colbymchenry Jul 20, 2026
45a53eb
feat(kernel): R7b Kotlin walker — kotlin module, vendored-grammar-C b…
colbymchenry Jul 20, 2026
b2f9ab1
feat(kernel): R7b R walker — rlang module, tree-sitter-r 1.2.0 crate …
colbymchenry Jul 20, 2026
e321351
feat(kernel): R7b Lua+Luau walker — one lua module, vendored-grammar-…
colbymchenry Jul 20, 2026
bdd687b
feat(kernel): R7b Scala walker — scala module, vendored-grammar-C mas…
colbymchenry Jul 21, 2026
d1b75a1
feat(kernel): R7b Dart walker — dart module, vendored-grammar-C d4d8f…
colbymchenry Jul 21, 2026
3c1f30a
docs(kernel): mark R7b complete — 20 languages default-routed, Linux …
colbymchenry Jul 21, 2026
27c3c55
perf(resolution): darwin-honest memory budget — vm_stat-based availab…
colbymchenry Jul 21, 2026
082ea65
perf(synthesis): provably-empty pass gates + prefilters — render/expo…
colbymchenry Jul 21, 2026
1aa4de6
perf(resolution): adaptive pool engagement — projected-settle bar rep…
colbymchenry Jul 21, 2026
abb0a91
perf(resolution): per-context basename index for Lua/Luau require res…
colbymchenry Jul 21, 2026
974e6c8
perf(resolution): incremental receiver-inference scan memo + compiled…
colbymchenry Jul 21, 2026
157c8e7
perf(resolution): generation-tagged supertype memo + method owner ind…
colbymchenry Jul 21, 2026
c74e8b0
perf(sync): adaptive quick-fire debounce + scoped watcher sync — save…
colbymchenry Jul 21, 2026
f8e6f00
chore: gitignore target-linux/ cross-build cache (two cache files sli…
colbymchenry Jul 21, 2026
0f1096e
docs: Opus 4.8 benchmark re-validation + release-notes headline (#1399)
colbymchenry Jul 21, 2026
7d4a3d0
docs(release): README polish + v1.5.0 (#1400)
colbymchenry Jul 21, 2026
a6682c6
ci(release): kernel builds required + full walker-parity gate (#1401)
colbymchenry Jul 21, 2026
9b1fd6d
release: sync package-lock.json to 1.5.0
github-actions[bot] Jul 21, 2026
ea72e1b
docs(changelog): promote [Unreleased] into [1.5.0]
github-actions[bot] Jul 21, 2026
572d22b
fix(installer): Codex TOML block finder preserves trailing array-of-t…
KtzeAbyss Jul 22, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
188 changes: 186 additions & 2 deletions .claude/skills/agent-eval/corpus.json
Original file line number Diff line number Diff line change
Expand Up @@ -421,7 +421,191 @@
"repo": "https://github.com/tidyverse/ggplot2",
"size": "Large",
"files": "~1150",
"question": "When a ggplot object is printed, how does the plot actually get built and drawn \u2014 trace the path from print/plot to where geoms render. Name the key functions in order."
"question": "When a ggplot object is printed, how does the plot actually get built and drawn — trace the path from print/plot to where geoms render. Name the key functions in order."
}
],
"COBOL": [
{
"name": "cics-genapp",
"repo": "https://github.com/cicsdev/cics-genapp",
"size": "Small",
"files": "~60",
"question": "When a new insurance policy is added through the LGTESTP1 CICS test harness, which programs handle the request on the way to the DB2 insert? Trace the path and name the programs in order."
},
{
"name": "carddemo",
"repo": "https://github.com/aws-samples/aws-mainframe-modernization-carddemo",
"size": "Medium",
"files": "~75",
"question": "How does the online bill-payment flow work — from the COBIL00C screen program to the transaction record being written? Name the paragraphs performed in order and the copybooks that define the records involved."
},
{
"name": "CobolCraft",
"repo": "https://github.com/meyfa/CobolCraft",
"size": "Medium",
"files": "~270",
"question": "How does an incoming player chat message travel from packet handling to being broadcast to the other connected players? Name the programs on the path in order."
}
],
"VB.NET": [
{
"name": "policyplus",
"repo": "https://github.com/Fleex255/PolicyPlus",
"size": "Small",
"files": "~94",
"question": "When the user toggles a policy to Enabled in the policy-setting editor and clicks OK, how does the new state end up written into the loaded policy source (POL file or registry)? Trace the path from the EditSetting dialog to the concrete write."
},
{
"name": "scrawler",
"repo": "https://github.com/AAndyProgram/SCrawler",
"size": "Medium",
"files": "~320",
"question": "When a user download is started for a Reddit user, how does the request flow from the user-level download entry point through the shared downloader base into the Reddit site plugin, and where do downloaded media items get appended to the user's content list?"
},
{
"name": "staxrip",
"repo": "https://github.com/staxrip/staxrip",
"size": "Medium",
"files": "~145",
"question": "When a job finishes video encoding, how does staxrip decide which muxer runs and how does the muxer command line get built and executed? Trace from job processing to the mkvmerge invocation."
}
],
"Erlang": [
{
"name": "cowboy",
"repo": "https://github.com/ninenines/cowboy",
"size": "Small",
"files": "~190",
"question": "How does an incoming HTTP request travel from cowboy's connection process to a user-defined handler's init/2 callback? Trace the path through the stream handler and middleware chain."
},
{
"name": "ejabberd",
"repo": "https://github.com/processone/ejabberd",
"size": "Medium",
"files": "~410",
"question": "When a client sends a chat message, how does the stanza get from the receiving C2S process to the recipient's session on the same node? Trace the path through the router and session manager."
},
{
"name": "emqx",
"repo": "https://github.com/emqx/emqx",
"size": "Large",
"files": "~2450",
"question": "How does a PUBLISH packet from an MQTT client reach the sessions of matching subscribers? Trace the flow from the connection/channel layer through the broker's routing to session delivery."
}
],
"Solidity": [
{
"name": "solmate",
"repo": "https://github.com/transmissions11/solmate",
"size": "Small",
"files": "~60",
"question": "How does solmate's ERC20 transferFrom enforce allowance and update balances? Trace the flow including the permit() signature path."
},
{
"name": "solady",
"repo": "https://github.com/Vectorized/solady",
"size": "Medium",
"files": "~270",
"question": "How does solady's ERC20 implementation handle a permit() call — from signature recovery through nonce update to allowance write?"
},
{
"name": "openzeppelin-contracts",
"repo": "https://github.com/OpenZeppelin/openzeppelin-contracts",
"size": "Large",
"files": "~400",
"question": "How does an OpenZeppelin AccessControl-protected function check the caller's role? Trace from the onlyRole modifier through hasRole to the role storage."
}
],
"CUDA": [
{
"name": "llm.c",
"repo": "https://github.com/karpathy/llm.c",
"size": "Small",
"files": "~76",
"question": "How does the attention forward pass reach the GPU in the CUDA training path? Trace from attention_forward to the kernels it launches, and explain where softmax happens."
},
{
"name": "flash-attention",
"repo": "https://github.com/Dao-AILab/flash-attention",
"size": "Medium",
"files": "~900",
"question": "How does a Python call to flash_attn_func reach the CUDA kernel that computes forward attention? Trace the dispatch path from the Python API through the C++ binding to the kernel launch."
},
{
"name": "cutlass",
"repo": "https://github.com/NVIDIA/cutlass",
"size": "Large",
"files": "~2700",
"question": "When a cutlass device-level GEMM (cutlass::gemm::device::Gemm) is invoked, how does it reach the GPU kernel? Trace from the operator() call to the kernel entry point and its launch site."
}
],
"Terraform": [
{
"name": "terraform-aws-vpc",
"repo": "https://github.com/terraform-aws-modules/terraform-aws-vpc",
"size": "Small",
"files": "~77",
"question": "How does the private_subnets variable shape the NAT gateway setup? Trace from the variable through the subnet and NAT gateway resources to the outputs that expose the private subnets."
},
{
"name": "cloud-foundation-fabric",
"repo": "https://github.com/GoogleCloudPlatform/cloud-foundation-fabric",
"size": "Medium",
"files": "~990",
"question": "In the project module (modules/project), how does the iam variable turn into actual IAM bindings on the project, and what depends on the module's project_id output elsewhere in the repo?"
},
{
"name": "terraform-aws-components",
"repo": "https://github.com/cloudposse/terraform-aws-components",
"size": "Large",
"files": "~1800",
"question": "In the eks/cluster component, how does the cluster IAM role get created and reach the EKS cluster resource, and which outputs expose cluster identity to other components?"
}
],
"ArkTS": [
{
"name": "HarmoneyOpenEye",
"repo": "https://github.com/WinWang/HarmoneyOpenEye",
"size": "Small",
"files": "~82",
"question": "How does the home page get its feed data from the network layer, and how does that data end up rendered as the list on screen? Trace the flow from the HTTP request through the view model into the home page UI."
},
{
"name": "CoolMallArkTS",
"repo": "https://github.com/Joker-x-dev/CoolMallArkTS",
"size": "Medium",
"files": "~528",
"question": "When the user adds a product to the cart from the goods detail page, how does the item travel from the UI action to persistent storage? Trace the flow across the feature and core modules."
},
{
"name": "applications_app_samples",
"repo": "https://github.com/openharmony/applications_app_samples",
"size": "Large",
"files": "~9500",
"question": "In the OrangeShopping sample app, how does the product detail page's bottom bar (add to cart / buy) lead to the order placement flow? Trace from the bottom navigation component to where the order is created."
}
],
"Nix": [
{
"name": "agenix",
"repo": "https://github.com/ryantm/agenix",
"size": "Small",
"files": "~13",
"question": "When a NixOS system activates, how does a secret declared under age.secrets get decrypted and installed at its runtime path? Trace the flow from the age.secrets option definition to the activation machinery that performs the decryption."
},
{
"name": "nix-darwin",
"repo": "https://github.com/nix-darwin/nix-darwin",
"size": "Medium",
"files": "~207",
"question": "How does setting services.yabai.enable = true become a running launchd service? Trace the flow from the yabai module's options to the launchd daemon definition that generates the plist."
},
{
"name": "home-manager",
"repo": "https://github.com/nix-community/home-manager",
"size": "Large",
"files": "~3390",
"question": "How does programs.git.enable produce the final git config file in the user's home directory? Trace the flow from the git program module to the home-files machinery that links generated files into place."
}
]
}
}
10 changes: 10 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
node_modules
dist
.git
.codegraph
.kommandr
docs
assets
codegraph-kernel/target
codegraph-kernel/prebuilds
release
111 changes: 105 additions & 6 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,16 +13,64 @@ name: Release
# 5. publishes the npm thin-installer (shim + per-platform packages).
#
# Before triggering: bump package.json. CHANGELOG.md entries can live under
# `## [Unreleased]` — step 2 takes care of moving them. Set the NPM_TOKEN secret.
# `## [Unreleased]` — step 2 takes care of moving them.
#
# npm auth is OIDC trusted publishing (no NPM_TOKEN): every published package
# (@colbymchenry/codegraph + the per-platform bundles) has this repo +
# release.yml configured as its trusted publisher on npmjs.com. Adding a new
# platform package means configuring its trusted publisher there before the
# first release that includes it.
on:
workflow_dispatch: {}

permissions:
contents: write # create the GitHub Release + tag, push the CHANGELOG promote
contents: write # create the GitHub Release + tag, push the CHANGELOG promote
id-token: write # OIDC token for npm --provenance and Sigstore signing
attestations: write # store the GitHub artifact attestations for the bundles

jobs:
# Native extraction-kernel prebuilds (docs/design/rust-kernel-migration-plan.md).
# As of 1.5.0 the kernel is the release's HEADLINE, not an optional extra, so
# this matrix is REQUIRED: a failed kernel build blocks the release instead of
# silently shipping wasm-only bundles under a Rust-engine banner. Per-file
# wasm fallback still exists at runtime for erroring files and unsupported
# platforms — but every published bundle must carry its .node. Note the
# vendored-grammar-C languages (kotlin/lua/scala/dart) compile parser.c via
# the cc crate, so each leg needs its platform C toolchain (runner images
# ship one). (Runner images ship rustup; build-kernel.sh
# adds each cross target itself.)
kernel:
strategy:
fail-fast: false
matrix:
include:
- runner: macos-14
targets: aarch64-apple-darwin x86_64-apple-darwin
- runner: ubuntu-22.04 # oldest glibc runner → widest compatibility
targets: x86_64-unknown-linux-gnu
- runner: ubuntu-22.04-arm
targets: aarch64-unknown-linux-gnu
- runner: windows-latest
targets: x86_64-pc-windows-msvc aarch64-pc-windows-msvc
runs-on: ${{ matrix.runner }}
steps:
- uses: actions/checkout@v6
- name: Build kernel prebuilds
shell: bash
run: |
for t in ${{ matrix.targets }}; do
bash scripts/build-kernel.sh --target "$t"
done
ls -R codegraph-kernel/prebuilds
- uses: actions/upload-artifact@v4
with:
name: kernel-${{ matrix.runner }}
path: codegraph-kernel/prebuilds/
if-no-files-found: error

release:
runs-on: ubuntu-latest
needs: kernel
steps:
- uses: actions/checkout@v6
with:
Expand All @@ -45,7 +93,13 @@ jobs:
- uses: actions/setup-node@v6
with:
node-version: 22
registry-url: https://registry.npmjs.org
# No registry-url here: it writes an .npmrc that requires a
# NODE_AUTH_TOKEN env var to exist, and we publish via OIDC
# trusted publishing instead of a token.

- name: Upgrade npm for OIDC trusted publishing
# Trusted publishing needs npm >= 11.5; Node 22 bundles npm 10.
run: npm install -g npm@11 && npm --version

- name: Sync package-lock.json if version drifted
# When the maintainer bumps the version on package.json only — for
Expand Down Expand Up @@ -113,6 +167,33 @@ jobs:
git push origin "HEAD:${GITHUB_REF#refs/heads/}"
fi

- name: Download kernel prebuilds
# All legs are required (see the kernel job), so every target's
# <target>/codegraph-kernel.node must be present in release/kernel/.
uses: actions/download-artifact@v4
with:
pattern: kernel-*
merge-multiple: true
path: release/kernel/

- name: Kernel contract + full walker-parity gate
# Runs EVERY kernel suite (__tests__/kernel-*.test.ts — the wire
# contract, the grammar-source parity table checks, and all 20
# languages' walker byte-parity suites incl. torture/CRLF/defer pins)
# against the freshly built linux-x64 .node. The glob keeps this gate
# current as languages are added. CODEGRAPH_KERNEL_EXPECT=1 turns a
# missing binary into a FAILURE, and a missing prebuild fails outright
# — the matrix is required, so absence here means a wiring bug.
run: |
if [ -f release/kernel/linux-x64/codegraph-kernel.node ]; then
mkdir -p codegraph-kernel/prebuilds/linux-x64
cp release/kernel/linux-x64/codegraph-kernel.node codegraph-kernel/prebuilds/linux-x64/
CODEGRAPH_KERNEL_EXPECT=1 npx vitest run __tests__/kernel-*.test.ts
else
echo "::error::linux-x64 kernel prebuild missing despite required matrix"
exit 1
fi

- name: Build all platform bundles
run: |
for t in darwin-arm64 darwin-x64 linux-x64 linux-arm64 win32-x64 win32-arm64; do
Expand All @@ -127,6 +208,18 @@ jobs:
( cd release && sha256sum codegraph-* > SHA256SUMS )
cat release/SHA256SUMS

- name: Attest build provenance for release bundles
# Signed, publicly-verifiable proof that each bundle (and SHA256SUMS)
# was built by this workflow from this repo — SHA256SUMS alone only
# proves integrity, not origin, since it ships next to the bundles.
# Verify any downloaded artifact with:
# gh attestation verify <file> -R colbymchenry/codegraph
uses: actions/attest-build-provenance@v4
with:
subject-path: |
release/codegraph-*
release/SHA256SUMS

- name: Release notes from CHANGELOG.md
# The [<version>] block was guaranteed-populated by the
# "Promote" step above, so the [Unreleased] fallback should
Expand Down Expand Up @@ -154,8 +247,11 @@ jobs:
fi

- name: Publish to npm
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
# Auth is OIDC trusted publishing (id-token: write above) — npm mints
# a short-lived credential from the workflow's identity; there is no
# NPM_TOKEN. Provenance is generated automatically on this path; the
# explicit --provenance keeps the intent visible and fails loudly if
# OIDC is ever unavailable.
run: |
V="${{ steps.ver.outputs.version }}"
bash scripts/pack-npm.sh "$V"
Expand All @@ -167,7 +263,10 @@ jobs:
echo "skip $name@$V (already published)"
else
echo "publishing $name@$V"
( cd "$dir" && npm publish --access public )
# --provenance: publish with an npm provenance attestation
# (needs the id-token: write permission above and the
# repository field pack-npm.sh writes into each package.json).
( cd "$dir" && npm publish --access public --provenance )
fi
done

Expand Down
8 changes: 8 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -68,3 +68,11 @@ tmux-web/
assets/__pycache__/

assets/generate-waitlist.py

.kommandr/

# Local scratch tests (never commit)
__tests__/zz-scratch*

# linux-arm64 kernel cross-build cache (rust:1-bookworm builder)
target-linux/
Binary file added .kommandr/kommandr.db
Binary file not shown.
Loading