feat(embeddings): control request-body dimensions via GITNEXUS_EMBEDDING_REQUEST_DIMS#2574
Conversation
ChamHerry
commented
Jul 20, 2026
- fix(ci): shard platform-sensitive matrix + spawn built CLI to fix Windows cross-platform timeout (fix(ci): shard platform-sensitive matrix + spawn built CLI to fix Windows cross-platform timeout #2394)
- fix(hook): emit MCP query hint when server owns DB lock (PreToolUse hook silently skips when MCP server owns DB lock — defeats the purpose #2396) (fix(hook): emit MCP query hint when server owns DB lock (#2396) #2397)
- feat: gate Icebug community engine prototype (feat: gate Icebug community engine prototype #2376)
- chore(deps): bump release-drafter/release-drafter from 7.4.0 to 7.5.1 (chore(deps): bump release-drafter/release-drafter from 7.4.0 to 7.5.1 #2398)
- chore(deps): bump raven-actions/actionlint from 2.1.2 to 2.2.0 (chore(deps): bump raven-actions/actionlint from 2.1.2 to 2.2.0 #2399)
- chore(deps)(deps): bump @tailwindcss/vite in /gitnexus-web (chore(deps)(deps): bump @tailwindcss/vite from 4.3.0 to 4.3.2 in /gitnexus-web #2400)
- chore(deps)(deps): bump uuid from 14.0.0 to 14.0.1 in /gitnexus-web (chore(deps)(deps): bump uuid from 14.0.0 to 14.0.1 in /gitnexus-web #2401)
- chore(deps): bump docker/build-push-action from 7.2.0 to 7.3.0 (chore(deps): bump docker/build-push-action from 7.2.0 to 7.3.0 #2404)
- chore(deps): bump actions/attest-build-provenance from 4.1.0 to 4.1.1 (chore(deps): bump actions/attest-build-provenance from 4.1.0 to 4.1.1 #2406)
- chore(deps)(deps-dev): bump @vercel/node in /gitnexus-web (chore(deps)(deps-dev): bump @vercel/node from 5.8.12 to 5.8.22 in /gitnexus-web #2407)
- chore(deps): bump docker/setup-qemu-action from 4.1.0 to 4.2.0 (chore(deps): bump docker/setup-qemu-action from 4.1.0 to 4.2.0 #2408)
- chore(deps)(deps-dev): bump vite from 8.0.16 to 8.1.3 in /gitnexus-web (chore(deps)(deps-dev): bump vite from 8.0.16 to 8.1.3 in /gitnexus-web #2403)
- chore(deps)(deps-dev): bump wait-on in /gitnexus-web (chore(deps)(deps-dev): bump wait-on from 9.0.5 to 9.0.10 in /gitnexus-web #2405)
- fix(web): improve repository dropdown search (fix(web): improve repository dropdown search #2381)
- fix: surface incremental dirty state diagnostics (fix: surface incremental dirty state diagnostics #2410)
- chore(deps)(deps-dev): bump @vitest/coverage-v8 in /gitnexus (chore(deps)(deps-dev): bump @vitest/coverage-v8 from 4.1.9 to 4.1.10 in /gitnexus #2422)
- chore(deps)(deps-dev): bump vitest from 4.1.9 to 4.1.10 in /gitnexus (chore(deps)(deps-dev): bump vitest from 4.1.9 to 4.1.10 in /gitnexus #2423)
- fix: make large incremental writebacks commit reliably (Incremental analyze silently fails to commit (commitOK=False) on every large BFS importer-set expansion (>=~150 importers) — 100% reproducible on gitnexus 1.6.8 #2409) (fix: make large incremental writebacks commit reliably (#2409) #2425)
- fix(cli): actionable diagnostics for non-4K page-size buffer manager failures (fix(cli): actionable diagnostics for non-4K page-size buffer manager failures #2424)
- chore(deps)(deps-dev): bump tsx from 4.22.5 to 4.23.0 in /gitnexus (chore(deps)(deps-dev): bump tsx from 4.22.5 to 4.23.0 in /gitnexus #2428)
- fix(tree-sitter): recover declarations after embedded NUL bytes (fix(tree-sitter): recover declarations after embedded NUL bytes #2430)
- fix(web): use repo path identity in switcher (fix(web): use repo path identity in switcher #2420)
- fix: stop Napi::Error SIGABRT on analyze — index C++ type lookups, terminate workers only at JS-safe points ([Bugfix] This issue still exists: Analysis aborted in a native worker or native binding path. #2432) (fix: stop Napi::Error SIGABRT on analyze — index C++ type lookups, terminate workers only at JS-safe points (#2432) #2436)
- fix(embeddings): fall back to text-bearing file nodes
- feat(eval): require bearer auth for remote binding
- feat(mcp): add deterministic output budgets
- feat(mcp): normalize impact and context aliases
- feat(mcp): add fail-closed read-only mode
- feat(mcp): enforce repository allowlist
- fix(embeddings): make HTTP generation resumable
- fix(cli): fail cypher errors loudly
- fix(cache): bound parsedfile generations
- fix(communities): canonicalize projection order
- fix(scope): stabilize graph lookup collisions
- chore(deps)(deps-dev): bump @types/node in /gitnexus (chore(deps)(deps-dev): bump @types/node from 25.9.4 to 25.9.5 in /gitnexus #2472)
- chore(deps)(deps): bump ignore from 7.0.5 to 7.0.6 in /gitnexus (chore(deps)(deps): bump ignore from 7.0.5 to 7.0.6 in /gitnexus #2474)
- fix(scan): canonicalize traversal without order-sensitive Rust binding
- fix(php): resolve function imports by declaring file
- test(bench): rebaseline PHP import capture shape
- fix(php): resolve symbol-named PSR-4 imports
- chore(deps)(deps): bump @ladybugdb/core in /gitnexus (chore(deps)(deps): bump @ladybugdb/core from 0.18.0 to 0.18.1 in /gitnexus #2473)
- ci: update setup composites to setup-node v6 (ci: update setup composites to setup-node v6 #2451)
- fix(cli): make Claude skills discoverable (fix(cli): make Claude skills discoverable #2434)
- fix(eval): address auth configuration feedback
- docs(eval): avoid secret-scanner auth fixture
- fix(ingestion): canonicalize parse node insertion
- docs(mcp): explain response budget guardrails
- fix(mcp): validate aliases without schema combinators
- fix(mcp): close read-only resource routing bypass
- fix(mcp): validate repository policy before embedded serving
- fix(embeddings): bind resume checkpoints to provider
- fix(php): index import declaration directories
- fix(mcp): ignore undefined alias inputs
- chore(security): suppress deleted auth placeholder
- chore(deps): npm audit fix — resolve @babel/core and brace-expansion advisories (chore(deps): npm audit fix — resolve @babel/core and brace-expansion advisories #2444)
- test(communities): rebaseline canonical projection
- docs: build shared package before CLI setup (docs: document shared-first contributor setup #2448)
- chore(deps)(deps-dev): bump @vitejs/plugin-react in /gitnexus-web (chore(deps)(deps-dev): bump @vitejs/plugin-react from 5.2.0 to 6.0.2 in /gitnexus-web #2498)
- chore(deps)(deps): bump lucide-react in /gitnexus-web (chore(deps)(deps): bump lucide-react from 1.21.0 to 1.23.0 in /gitnexus-web #2503)
- chore(deps): bump dorny/paths-filter from 4.0.1 to 4.0.2 (chore(deps): bump dorny/paths-filter from 4.0.1 to 4.0.2 #2505)
- chore(deps): bump docker/login-action from 4.2.0 to 4.4.0 (chore(deps): bump docker/login-action from 4.2.0 to 4.4.0 #2507)
- chore(deps): bump docker/setup-buildx-action from 4.1.0 to 4.2.0 (chore(deps): bump docker/setup-buildx-action from 4.1.0 to 4.2.0 #2500)
- chore(deps)(deps-dev): bump vite from 8.1.3 to 8.1.4 in /gitnexus-web (chore(deps)(deps-dev): bump vite from 8.1.3 to 8.1.4 in /gitnexus-web #2497)
- fix(mcp): context resource reads stale lastCommit/stats after out-of-process analyze (MCP context resource keeps stale staleness banner and stats after analyze --index-only refresh #2438) (fix(mcp): context resource reads stale lastCommit/stats after out-of-process analyze (#2438) #2439)
- fix(eval): defer env file read errors to binds that need a token
- fix(scan): lock in Rust publish order and guard PHP suffix roots
- fix(mcp): reject group-only args at read-only dispatch
- test(communities): rebaseline pipeline-pdg goldens for projection order
- chore(deps)(deps-dev): bump @vercel/node in /gitnexus-web (chore(deps)(deps-dev): bump @vercel/node from 5.8.22 to 5.8.23 in /gitnexus-web #2502)
- chore(deps)(deps): bump axios from 1.16.1 to 1.18.1 in /gitnexus-web (chore(deps)(deps): bump axios from 1.16.1 to 1.18.1 in /gitnexus-web #2499)
- fix(cache): degrade when the durable generation reset fails
- fix(cli): fail every tool command loudly on backend error payloads
- fix(embeddings): include File rows in the incremental delete sweeps
- test(cli): pin the non-zero exit for not-found context payloads
- test(embeddings): cover File-row deletion
- ci(release): sync plugin manifests on every version bump (RC19 unit suite fails because plugin manifests remain at 1.6.9 #2445)
- ci(tests): widen the Windows shard watchdog and keep exit diagnostics (CI: Windows platform shard 1/3 has only 3 seconds of watchdog headroom on RC19 #2449)
- feat(taint): expand TS/JS sink model (feat(taint): expand TS/JS sink model #2490)
- feat(wiki): allow explicit HTTP LLM hosts (feat(wiki): allow explicit HTTP LLM hosts #2491)
- fix(mcp): avoid api impact schema combinators (fix(mcp): avoid top-level api_impact schema combinators #2489)
- fix(embeddings): make batch inserts retry-safe (fix(embeddings): make batch inserts retry-safe #2453)
- test(cli): lock native load guard for lazy actions (test(cli): lock native load guard for analyze #2442)
- chore(deps)(deps-dev): bump @babel/parser in /gitnexus (chore(deps)(deps-dev): bump @babel/parser from 7.29.7 to 8.0.0 in /gitnexus #2521)
- chore(deps)(deps-dev): bump tsx from 4.23.0 to 4.23.1 in /gitnexus (chore(deps)(deps-dev): bump tsx from 4.23.0 to 4.23.1 in /gitnexus #2517)
- chore(deps)(deps-dev): bump @babel/traverse in /gitnexus (chore(deps)(deps-dev): bump @babel/traverse from 7.29.7 to 8.0.0 in /gitnexus #2520)
- chore(deps)(deps-dev): bump @babel/generator in /gitnexus (chore(deps)(deps-dev): bump @babel/generator from 7.29.7 to 8.0.0 in /gitnexus #2519)
- chore(deps)(deps-dev): bump @babel/types in /gitnexus (chore(deps)(deps-dev): bump @babel/types from 7.29.7 to 8.0.0 in /gitnexus #2518)
- chore(deps): bump github/codeql-action/analyze from 4.36.2 to 4.37.0 (chore(deps): bump github/codeql-action/analyze from 4.36.2 to 4.37.0 #2506)
- chore(deps): bump marocchino/sticky-pull-request-comment (chore(deps): bump marocchino/sticky-pull-request-comment from 3.0.4 to 3.0.5 #2537)
- chore(deps): bump docker/metadata-action from 6.1.0 to 6.2.0 (chore(deps): bump docker/metadata-action from 6.1.0 to 6.2.0 #2536)
- chore(deps): bump github/codeql-action/upload-sarif (chore(deps): bump github/codeql-action/upload-sarif from 4.36.2 to 4.37.0 in the codeql-action group #2535)
- chore(deps)(deps-dev): bump vitest from 4.1.9 to 4.1.10 in /gitnexus-web (chore(deps)(deps-dev): bump vitest from 4.1.9 to 4.1.10 in /gitnexus-web #2533)
- chore(deps)(deps): bump @langchain/core in /gitnexus-web (chore(deps)(deps): bump @langchain/core from 1.2.1 to 1.2.2 in /gitnexus-web #2530)
- chore(deps)(deps): bump @langchain/ollama in /gitnexus-web (chore(deps)(deps): bump @langchain/ollama from 1.2.7 to 1.3.0 in /gitnexus-web #2527)
- chore(deps): bump github/codeql-action/init from 4.36.2 to 4.37.0 (chore(deps): bump github/codeql-action/init from 4.36.2 to 4.37.0 #2504)
- chore(deps)(deps-dev): bump @babel/types in /gitnexus (chore(deps)(deps-dev): bump @babel/types from 8.0.0 to 8.0.4 in /gitnexus #2534)
- chore(deps)(deps-dev): bump @babel/traverse in /gitnexus (chore(deps)(deps-dev): bump @babel/traverse from 8.0.0 to 8.0.4 in /gitnexus #2532)
- chore(deps)(deps-dev): bump @babel/parser in /gitnexus (chore(deps)(deps-dev): bump @babel/parser from 8.0.0 to 8.0.4 in /gitnexus #2531)
- chore(deps)(deps-dev): bump @types/node in /gitnexus-web (chore(deps)(deps-dev): bump @types/node from 25.9.1 to 25.9.5 in /gitnexus-web #2528)
- chore(deps)(deps): bump @langchain/anthropic in /gitnexus-web (chore(deps)(deps): bump @langchain/anthropic from 1.3.29 to 1.5.1 in /gitnexus-web #2526)
- fix(scope-resolution): resolve callable reference flows (impact/context report 0 upstream dependents for provider-hook implementations (emitScopeCaptures et al.) #2437) (fix(scope-resolution): resolve callable reference flows (#2437) #2522)
- fix(analyze): degrade FTS search instead of aborting analyze on index-build failure (fix(analyze): degrade FTS search instead of aborting analyze on index-build failure #2548)
- fix(scope-resolution): stop platform builtins resolving to unrelated same-file symbols (fix(scope-resolution): stop platform builtins resolving to unrelated same-file symbols #2549)
- fix(lbug): bound the LadybugDB buffer pool instead of the native 80%-of-RAM default (fix(lbug): bound the LadybugDB buffer pool instead of the native 80%-of-RAM default #2560)
- fix(dart): extract extension type symbols (fix(dart): extract extension type symbols #2539)
- feat(java): model enum constant bodies as first-class instances; JLS 13.1 anonymous naming (feat(java): model enum constant bodies as first-class instances; JLS 13.1 anonymous naming #2558)
- feat(skills): GitNexus Engineering Tool Kits (feat(skills): GitNexus Engineering Tool Kits #2566)
- fix(ci): unblock the review agent dispatch and publisher lanes (fix(ci): unblock the review agent dispatch and publisher lanes #2567)
- feat(ci): review agent on Sonnet 5 with structured, linked reviews (feat(ci): review agent on Sonnet 5 with structured, linked reviews #2570)
- feat(embeddings): support GITNEXUS_EMBEDDING_REQUEST_DIMS=omit
What: Honor GITNEXUS_EMBEDDING_REQUEST_DIMS=omit by suppressing the request-body `dimensions` field sent to HTTP embedding backends. Why: Strict OpenAI-compatible backends return vectors in the model's native size but reject an unfamiliar `dimensions` field, breaking `analyze --embeddings` against them. The var was parsed but never propagated, so `omit` was a no-op. How: Add `requestDimensions` to HttpConfig, return it from readConfig, and forward `config.requestDimensions` (not the validation-only `config.dimensions`) to `httpEmbedBatch`. Local dimension checks still use `config.dimensions`. Details: Coexists with the retry/pacing fields introduced upstream; both feature sets are preserved. Default behavior unchanged when REQUEST_DIMS is unset. Impact: gitnexus/src/core/embeddings/http-client.ts; README; unit tests.
|
Someone is attempting to deploy a commit to the NexusCore Team on Vercel. A member of the Team first needs to authorize it. |
CI Report✅ All checks passed Pipeline Status
Test Results
✅ All 15086 tests passed 62 test(s) skipped — expand for details
Code CoverageTests
📋 View full run · Generated by CI |
|
@GitNexus review |
|
REQUEST CHANGES. This PR adds a Findings
Change summary and blast radiusTarget: PR #2574, base/merge-base Core change: Coverage and residual riskTests present: two new tests cover the Review limitations: I made a direct, verified GitNexus Analyzed base: |
|
Thanks for the focused fix. I tested this against the current review branch (
Result: 57 tests passed. I still think this needs a small follow-up before approval:
Also, the PR title validation check is currently failing, so that needs to be fixed before merge. |
…ig error Address the review findings on abhigyanpatwari#2574. What: - A malformed GITNEXUS_EMBEDDING_REQUEST_DIMS now throws an error naming GITNEXUS_EMBEDDING_REQUEST_DIMS, not the sibling GITNEXUS_EMBEDDING_DIMS. - isHttpEmbeddingDimsError recognizes both leads, so the CLI still classifies the REQUEST_DIMS config mistake as a clean config error, not a stack dump. - Tests: numeric-override decoupling (DIMS=1024 validates the response while REQUEST_DIMS=512 is sent in the body), the omit aliases (none/off/false/0), and the malformed-value error path (which also pins the naming fix). - README documents the full accepted values: omit-aliases and integer override. Why: readConfig reused the DIMS error lead for the REQUEST_DIMS branch, so REQUEST_DIMS=garbage misdirected the operator to edit the wrong variable. The feature's actual decoupling and its non-omit inputs had no test coverage. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>