GitNexus 1.6.6 is a large release — ~190 PRs since v1.6.5 (50 features, 96 fixes, 6 performance overhauls). The theme: scale and breadth — GitNexus now indexes Linux-kernel-scale repositories, every language runs on one unified resolution engine, and it traces API calls across service boundaries.
Drop-in upgrade — no breaking changes.
npm i -g gitnexus@1.6.6and re-rungitnexus analyze.
✨ Highlights
🧠 Scope-resolution migration complete across every language
Call and inheritance resolution now runs on the unified registry-primary engine (RFC #909) for the entire language matrix. Rust, JavaScript, Ruby, Swift, Vue SFC, Dart, COBOL, and Kotlin all migrated this release, and Java reached 100% parity. The payoff: more accurate cross-file call graphs, inheritance edges, and type resolution — with consistent behaviour across languages.
⚡ Indexes Linux-kernel-scale repositories
A major scalability overhaul (#1983, #2038) lets gitnexus analyze handle massive codebases without running out of memory: a parallel worker-pool parse, an O(n²)→indexed finalize pass, and a RAM-aware memory wall for scope resolution. On top of that, scope-capture was linearized O(n²)→O(n) across all languages (#1918, #1915) and C++ ADL lookup is now indexed once instead of rescanned per call-site (#1990) — together cutting analyze time and peak memory dramatically on large repos.
🗺️ Cross-service API call graphs
GitNexus now traces HTTP requests across service boundaries. Route and consumer contracts are extracted for Spring (Java/Kotlin), OpenFeign, FastAPI (including include_router(prefix=…) and Depends()), gRPC, and frontend HTTP clients — connecting "who calls this endpoint" across repositories and languages.
🧹 Legacy resolution engine removed (Ring 4)
With every language migrated, the old call-resolution DAG, heritage processor, tiered-lookup resolution context, and shadow-mode parity harness were deleted (#942, #943, #944) — a large code reduction and a single, predictable resolution pipeline.
🔬 Language coverage & correctness
Parsing-layer coverage gaps were closed across the whole matrix (umbrella #1919) — Java, PHP, COBOL, Rust, Python, JS/TS, and Ruby — alongside deep C++ (ADL, templates, overload ranking, SFINAE), C#, Kotlin, and Go resolution fixes.
🛠️ Developer experience
.gitnexusrcproject config +analyze --default-branch(#243, #1996)- A devcontainer for the Claude / Codex / Cursor CLIs (#1875)
- Web viewer: new Tree View and Circles View (#1799), GitLab repo URLs (#1565), and full UI/CLI internationalization (#1748)
- Wiki: local Claude/Codex/opencode providers (#1769, #2039) and multilanguage wikis via
--lang(#1613) - DeepSeek V4 support (#1594); self-healing worker pool (#1741); plus many MCP, Windows, and LadybugDB reliability fixes
📋 Full categorized changelog (every change, grouped)
Added
- Scope-resolution (RFC #909) migrations completed across the language matrix — Rust (#1639), JavaScript (#1640), Ruby (#1831), Swift (#937, #1948), Vue SFC (#940, #1950), Dart (#939, #1970), COBOL (#941, #1835, #1842), and Kotlin (#1727, #1746, #1782) now run on the registry-primary path; Java reached 100% scope-resolution parity and joined
MIGRATED_LANGUAGES(#1805); per-language progress reporting added to the scope-resolution phase (#1813) - HTTP route & consumer contract extraction (group mode) — Spring interface routes attributed to controllers (#1743); named/positional Java Spring route args (#1834); Kotlin Spring HTTP route, consumer, and WebClient long-form extraction (#1849, #1855, #1884); Java HTTP consumer contracts (#1872); OpenFeign
@RequestLineconsumer contracts incl. plain interfaces without@FeignClient(#1904, #1917); FastAPIinclude_router(prefix=...)cross-file routes (#1877); indirect call patterns via FastAPIDepends()and frontend HTTP consumers (#1852); gRPC consumer FQN derivation from Java imports for client-jar consumers (#1889) - C++ overload & template resolution — operator-call resolution (#1754), template partial ordering (#1885), user-defined conversion ranking (#1829), nullptr/ellipsis pointer conversion ranks (#1708), SFINAE filter (#1623), expanded
type_traitsconstraint registry (#1648), structured resolver-suppression outcomes (#1785), function-type ADL entities (#1822), and a parameter-type class sidecar (#1642) - Go enhancements — structural interface implementation inference (#1966) and a
builtInNamesset for the Go language provider (#1886) - Self-healing worker pool — automatic worker replacement plus deferred-resolution observability and verbose progress logging (#1741, #1773, #1947)
.gitnexusrcconfig file andgitnexus analyze --default-branch(#243, #1996)- CLI / MCP impact ergonomics —
--uid/--file/--kinddisambiguation flags (#1907, #1914),limit/offset/summaryOnlypagination on the impact tool (#1818), and a per-symbolprocessesfield onbyDepthitems (#1867) gitnexus analyze --repair-fts— enforces FTS verification with hardened repair safeguards (#1720)- Web viewer — Tree View and Circles View (#1799), GitLab repository URLs (#1565),
GITNEXUS_BACKEND_URLenv var for Docker deployments (#1286), and web + CLI internationalization (#1748) - Wiki — local Claude/Codex providers (#1769), an opencode local provider (#2039), and
gitnexus wiki --lang <lang>for multilanguage wiki generation (#1613) detect-changesgit-worktree support (#1654)- DeepSeek V4 API support (#1594)
- Devcontainer for the Claude / Codex / Cursor CLIs (#1875) and antigravity integration setup + hook adapter (#1730)
- Object-literal methods linked to exported bindings (#1718)
eval-server --hostfor a user-configured bind IP (#1667)- PR reviewer swarm agents (#1851)
- tree-sitter node-type/field validation gate — validates against the grammar and removes dead literal handling (#1937)
Fixed
- Parsing-layer coverage gaps closed across the language matrix (umbrella #1919) — remaining open gaps (#2072) plus Java F35/F38/F41 (#1928, #2045), PHP F53/F54/F55 (#1931, #1989), COBOL F17–F23 (#1925, #1959), Rust F66/F68/F71/F72 (#1934, #1974), Python F57/F58/F61 (#1932, #1964), JS/TS F44/F83/F85/F86/F87 (#1929, #1968), and Ruby F62 (#1933, #1972)
- Fully-qualified nested-type identity for C++ and Ruby — distinct nodes for union-, anonymous-namespace-, and same-tail-nested types (#1978, #1981, #2004, #2005); cross-namespace same-tail inheritance bases resolved (#1993, #2005); Ruby same-tail nested mixin modules qualified with
IMPLEMENTSrouted by scope (#1991, #2006); shared codec for__heritage__/__property__markers (#1994, #2007); graph nodes materialized for scoped class/module/impl declarations (#1975, #1977); generic Rust inherent-impl methods owned through the mod-qualifiedImplnode (#1992, #2003) - C# resolution & memory — global-namespace
typeBindingsO(files²) OOM eliminated (#1871, #1954) and namespace-siblings OOM with worker-path re-parse removed (#1905); qualified/alias constructor names,:base/:thisinitializers, and generic type-arg stripping (#2046); primary-base receiver type normalization (#2036); spuriousIMPORTSedges from ungatedusingresolution stopped (#1881, #1908) - C++ dependent-base and member lookup — resolution across nested/inline namespaces (#1634, #1814), base-specifier qualifier threading (#1815, #1819), call-site types threaded into qualified member lookup (#1632, #1810), variadic pack dependent lookup (#1909), uninitialized multi-declarators (#1965), and typedef-enum / anonymous-struct declarations (#1941)
- Kotlin type resolution — smart-cast refinement for
when/isandif/is(#1758, #1774), overload target-id by parameter types (#1761, #1777), cross-file iterable return propagation (#1759, #1775), method-chain fixpoint receiver types (#1760, #1776), virtual dispatch via constructor type override (#1762, #1778), interface default-method dispatch via implements-split MRO (#1763, #1779), and default-parameter arity detection (#2034) - Go declarations — multi-name declaration capture (#2032), fixed-array parameter binding normalization (#1988), and generic composite-literal constructor inference F33 (#1976)
- Rust / PHP / Vue / Java parsing — Rust
struct_expressionname pattern split (#2051); PHP import decomposition, namespace-less.phtmlmodule scopes, and Blade-template exclusion (#1801, #1790, #1989); Vue JSDoc, dual-script merge, and lang plumbing F89/F90/F92 (#1936, #2050); Java inheritedRequestMappingprefix deduplication (#2057) and same-module type resolution for duplicate FQNs (#1712) - TypeScript — HOC pattern false positives fixed with
export defaultHOC support (#1943) and suffix-index reuse in the scope resolver (#1840) - Inheritance on the worker path — all languages' inheritance migrated to scope-resolution in worker mode (#1951, #1956); centralized heritage supertype matching (#1921, #1922, #1940);
File->MemberDEFINESedges skipped for class members (#1949); phantomFunctiondefs for array-method callbacks no longer emitted (#1906) - MCP — sibling-clone repo-ID collisions prevented and generated MCP tool names corrected (#2067); orphan processes avoided by handling stdin close/end and the startup race (#2049); duplicate-name repo resolution disambiguated for worktrees (#1753); Windows setup fallback when global
gitnexusresolves to a non-spawnable shim (#1694) - Worker pool — resilient zero-copy ingestion worker pool prevents analyze hangs on TS-root-scale loads (#1693); cache-hit native workers no longer abort (#1751, #1833); worker-pool docs drift corrected and worker-side stack surfaced on crash (#2068, #2070)
- LadybugDB — FTS loaded in the Windows read pool (#2040) and probed-then-loaded on Windows (#1690, #1692); non-ASCII KuzuDB paths resolved on Windows (#1811, #1817); WAL corruption detected in schema init with recovery surfaced (#1647, #1650); WAL checkpoint-threshold control (#1772); init lock skipped for read-only opens (#1783, #1784);
servekept stable when sidecars are missing (#1747) - Server / API —
gitnexus servestartup restored under Express 5 (#1749);/api/graph,/api/search,/api/grepopened read-only (#1686); native read-only enforcement and prepared statements for Cypher query paths (#1655);eval-serverlocalhost binding left to the OS (#1722) - Embeddings — local ONNX runtime guarded on macOS Intel before the transformers.js import (#1987)
- Web agent — Nexus AI agent system prompt aligned with registered tools (#1984) and the agent stopped cleanly on user Stop (#1820)
- Group / contracts — HTTP graph and source contracts unioned (#1709);
httpxAsyncClientalias imports detected (#1687); Node gRPCloadPackageDefinitiongate no longer matches every member call (#1916); manifest/workspace extraction moved beforecloseLbug(#1802, #1807) - Hooks / install —
gitnexusresolved onPATHvia a pure-Node, all-OS scan (#1938, #1980); offline-first extension installs (#1161); actionable error and docs for thepnpm dlx/pnpxnative-load crash (#307, #1967);onnxruntime-commondeclared as a runtime dependency (#2074); vendored grammars materialized to fix Windows EPERM (#1728, #1729) - CLI — missing LadybugDB native binary detected at startup with actionable guidance (#835, #1837);
--no-statsapplied to the keep-marker stats line (#1706, #1765); skipped large-file paths surfaced by default (#1659, #1661); build.js skipped when running outside the monorepo (#1795, #1816); auto-heap raised to 16 GB with tightened cross-platform OOM guidance for UE5-scale repos (#1652) - Wiki — hidden 60s default timeout removed with timeout/retry flag validation and surfaced timeout errors (#1651); budget-aware grouping to prevent context overflow on large repos (#627, #1832)
detect-changes—resolveWorktreeCwdguarded against overriding a separately-indexed worktree (#1691)- Windows reliability —
windowsHide:truepassed to everychild_processspawn-family call (#1794)
Changed
- Legacy resolution deletion (Ring 4) — removed the legacy call-resolution DAG + heritage processor (RING4-1, #942, #2023), the legacy resolution-context + tiered-lookup plumbing (RING4-2, #943, #2033), and the shadow-mode parity harness (RING4-3, #944, #2071)
- CONTRIBUTING — clarified local development setup (#2024)
- Tests / CI — cli-e2e made read-only and eval-server tests hardened under load (#2000, #1786, #1838, #1688); parity shards consolidated and the cross-platform matrix narrowed (#1798); devcontainer smoke build hardened against Docker Hub flakes (#1969); gitleaks stabilized (#2027)
Performance
- Linux-kernel-scale analysis overhaul — worker-pool parse, finalize O(n²), and the scope-resolution memory wall (#1983, #2038)
- Scope-capture linearized across all languages (O(n²)→O(n)) plus Python import-resolution linearization (#1918), the Go-specific re-walk fix (#1848, #1915), and owner-keyed lookup for Step 2 member resolution (#1657)
- C++ ADL candidates indexed once instead of per-site rescans (#1990)
- Inert local value symbols pruned during ingestion (#2065)
Chore / Dependencies
@ladybugdb/corebump in /gitnexus (#2056)- Routine dependency bumps across /gitnexus, /gitnexus-web, /eval, and GitHub Actions — incl.
hono,vitest,@vitest/coverage-v8,tsx,lru-cache,express/@types/express,express-rate-limit,qs,node-addon-api,brace-expansion,langchain,i18next,dompurify,lucide-react,axios,zod,@langchain/langgraph,@vercel/node,langsmith,aiohttp,idna, and thedocker/*/github/codeql-action/release-drafter/dependency-review-actionactions (#2056, #2044, #2043, #2042, #2016, #2015, #2013, #2012, #2011, #2010, #2009, #2008, #2018, #2019, #2017, #2020, #1986, #1911, #1864, #1863, #1861, #1860, #1866, #1844, #1845, #1826, #1825, #1824, #1791, #1789, #1768, #1767, #1739, #1740, #1738, #1736, #1735, #1734, #1731, #1713, #1698, #1697, #1696, #1689, #1604, #1552, #1464, #872) - Security —
@vercel/nodeupgraded in /gitnexus-web with transitive advisories remediated (#1705)
📦 Install & upgrade
npm install -g gitnexus@1.6.6
# or run without installing:
npx gitnexus@1.6.6 analyzeNo breaking changes — 1.6.6 is a drop-in upgrade from 1.6.5. Re-run gitnexus analyze to pick up the improved resolution accuracy and the faster, lower-memory indexing.
🙌 New Contributors
Huge thanks to the 19 first-time contributors in this release:
@NilotpalK (#1650) · @TonyReg (#1657) · @LocallyInsaneDB (#1692) · @ChamHerry (#1747) · @luyua9 (#1718) · @oddFEELING (#1765) · @Minidoracat (#1790) · @ProxiBlue (#1800) · @prajapatisparsh (#1810) · @geekalaa (#1286) · @lianliankan007 (#1769) · @basseyriman (#1820) · @anhle128 (#1840) · @TuZaaaaa (#1961) · @tupe12334 (#1967) · @Arvuno (#2024) · @Sweetdevil144 (#2045) · @jwcrystal (#2049) · @xianzuyang9-blip (#2074)
…and everyone who reported issues, reviewed PRs, and tested release candidates. 💜
Full Changelog: v1.6.5...v1.6.6