diff --git a/gitnexus/src/core/ingestion/pipeline-phases/parse-impl.ts b/gitnexus/src/core/ingestion/pipeline-phases/parse-impl.ts index c0752aa28..a99343b34 100644 --- a/gitnexus/src/core/ingestion/pipeline-phases/parse-impl.ts +++ b/gitnexus/src/core/ingestion/pipeline-phases/parse-impl.ts @@ -386,10 +386,10 @@ export async function runChunkedParseAndResolve( if (chunkHasWorkerUnsafeFiles && !hasWarnedAboutCppChunks) { hasWarnedAboutCppChunks = true; logger.warn( - 'C/C++ files detected — parsing those chunks in sequential mode to avoid known ' + - 'worker-thread native binding errors (e.g. `Napi::Error`). C/C++ source files ' + - 'are still fully indexed; chunks with no C/C++ continue using workers. ' + - 'Set GITNEXUS_ALLOW_CPP_WORKERS=1 if you use a custom tree-sitter build without this issue.', + `C/C++ files detected — parsing those chunks in sequential mode to avoid known ` + + `worker-thread native binding errors (e.g. \`Napi::Error\`). C/C++ source files ` + + `are still fully indexed; chunks with no C/C++ continue using workers. ` + + `Set GITNEXUS_ALLOW_CPP_WORKERS=1 if you use a custom tree-sitter build without this issue.`, ); } chunkWorkerData = await processParsing( diff --git a/gitnexus/test/unit/parse-impl-worker-guard.test.ts b/gitnexus/test/unit/parse-impl-worker-guard.test.ts index 245c22bf1..5438ccbf1 100644 --- a/gitnexus/test/unit/parse-impl-worker-guard.test.ts +++ b/gitnexus/test/unit/parse-impl-worker-guard.test.ts @@ -29,9 +29,10 @@ describe('hasWorkerUnsafeLanguages', () => { expect(hasWorkerUnsafeLanguages([{ path: 'include/api.h', size: 100 }])).toBe(true); }); - it('returns true when C++ header files (.hpp, .hxx) are present', () => { + it('returns true when C++ header files (.hpp, .hxx, .hh) are present', () => { expect(hasWorkerUnsafeLanguages([{ path: 'include/api.hpp', size: 100 }])).toBe(true); expect(hasWorkerUnsafeLanguages([{ path: 'include/core.hxx', size: 100 }])).toBe(true); + expect(hasWorkerUnsafeLanguages([{ path: 'include/util.hh', size: 100 }])).toBe(true); }); it('returns false for an empty list', () => {