diff --git a/gitnexus/package.json b/gitnexus/package.json index 891efe4a1..26fdfce39 100644 --- a/gitnexus/package.json +++ b/gitnexus/package.json @@ -1,6 +1,6 @@ { "name": "gitnexus", - "version": "1.3.1", + "version": "1.3.2", "description": "Graph-powered code intelligence for AI agents. Index any codebase, query via MCP or CLI.", "author": "Abhigyan Patwari", "license": "PolyForm-Noncommercial-1.0.0", diff --git a/gitnexus/src/cli/analyze.ts b/gitnexus/src/cli/analyze.ts index d3fbf6ba7..6ed6c05ef 100644 --- a/gitnexus/src/cli/analyze.ts +++ b/gitnexus/src/cli/analyze.ts @@ -343,12 +343,13 @@ export const analyzeCommand = async ( console.log(` Hooks: ${hookResult.message}`); } - // Show warnings (missing schema pairs, etc.) after the clean output + // Show a quiet summary if some edge types needed fallback insertion if (kuzuWarnings.length > 0) { - console.log(`\n Warnings (${kuzuWarnings.length}):`); - for (const w of kuzuWarnings) { - console.log(` ${w}`); - } + const totalFallback = kuzuWarnings.reduce((sum, w) => { + const m = w.match(/\((\d+) edges\)/); + return sum + (m ? parseInt(m[1]) : 0); + }, 0); + console.log(` Note: ${totalFallback} edges across ${kuzuWarnings.length} types inserted via fallback (schema will be updated in next release)`); } try { diff --git a/gitnexus/src/core/ingestion/filesystem-walker.ts b/gitnexus/src/core/ingestion/filesystem-walker.ts index b17403238..c9365d3b0 100644 --- a/gitnexus/src/core/ingestion/filesystem-walker.ts +++ b/gitnexus/src/core/ingestion/filesystem-walker.ts @@ -21,8 +21,8 @@ export interface FilePath { const READ_CONCURRENCY = 32; -/** Skip files larger than 512KB — they're usually generated/vendored and crash tree-sitter */ -const MAX_FILE_SIZE = 512 * 1024; +/** Skip files larger than 2MB — covers all real source files, excludes minified bundles/generated code */ +const MAX_FILE_SIZE = 2 * 1024 * 1024; /** * Phase 1: Scan repository — stat files to get paths + sizes, no content loaded. @@ -69,7 +69,7 @@ export const walkRepositoryPaths = async ( } if (skippedLarge > 0) { - console.warn(` Skipped ${skippedLarge} files larger than ${MAX_FILE_SIZE / 1024}KB`); + console.warn(` Skipped ${skippedLarge} files larger than ${Math.round(MAX_FILE_SIZE / 1024 / 1024)}MB (likely generated/vendored)`); } return entries; diff --git a/gitnexus/src/core/ingestion/parsing-processor.ts b/gitnexus/src/core/ingestion/parsing-processor.ts index c15d39a17..1134ebe49 100644 --- a/gitnexus/src/core/ingestion/parsing-processor.ts +++ b/gitnexus/src/core/ingestion/parsing-processor.ts @@ -207,7 +207,7 @@ const processParsingSequential = async ( if (!language) continue; // Skip very large files — they can crash tree-sitter or cause OOM - if (file.content.length > 512 * 1024) continue; + if (file.content.length > 2 * 1024 * 1024) continue; await loadLanguage(language, file.path); diff --git a/gitnexus/src/core/ingestion/workers/parse-worker.ts b/gitnexus/src/core/ingestion/workers/parse-worker.ts index 2eee2c5bc..a89d8b402 100644 --- a/gitnexus/src/core/ingestion/workers/parse-worker.ts +++ b/gitnexus/src/core/ingestion/workers/parse-worker.ts @@ -426,7 +426,7 @@ const processFileGroup = ( for (const file of files) { // Skip very large files — they can crash tree-sitter or cause OOM - if (file.content.length > 512 * 1024) continue; + if (file.content.length > 2 * 1024 * 1024) continue; let tree; try {