* Initial plan
* fix: surface actionable HF_ENDPOINT guidance on embedding model download failure
When `gitnexus analyze --embeddings` fails because huggingface.co is
unreachable (e.g. the GFW, corporate proxies), the error was shown as a
raw `TypeError: fetch failed` with no actionable guidance.
Changes:
- `hf-env.ts`: add and export `isNetworkFetchError()` helper that
detects network-level fetch errors (fetch failed, ECONNREFUSED,
ENOTFOUND, ETIMEDOUT, ECONNRESET)
- `core/embeddings/embedder.ts`: in the device-fallback loop, detect
network errors and rethrow immediately with a message telling the user
to set HF_ENDPOINT to a mirror (hf-mirror.com) — device fallback is
meaningless for network errors that will fail on every device
- `mcp/core/embedder.ts`: same fix for the MCP embedder entry point
- `cli/analyze.ts`: add a new error branch that detects fetch/network
failures and prints a concrete 3-step remediation hint (HF_ENDPOINT,
proxy/VPN, offline caching)
- `test/unit/hf-env.test.ts`: add 8 unit tests covering all five
network error patterns and three negative cases
Agent-Logs-Url: https://github.com/abhigyanpatwari/GitNexus/sessions/3e314b1c-ca74-44d5-9913-c1418d4e160a
Co-authored-by: magyargergo <11230420+magyargergo@users.noreply.github.com>
* refactor: use isNetworkFetchError helper in analyze.ts to eliminate duplication
Agent-Logs-Url: https://github.com/abhigyanpatwari/GitNexus/sessions/3e314b1c-ca74-44d5-9913-c1418d4e160a
Co-authored-by: magyargergo <11230420+magyargergo@users.noreply.github.com>
* feat: add retry, timeout and circuit breaker for HF model download
Agent-Logs-Url: https://github.com/abhigyanpatwari/GitNexus/sessions/6e6f509a-e4d5-4d1f-b0de-b2d30e0a0dce
Co-authored-by: magyargergo <11230420+magyargergo@users.noreply.github.com>
* style: apply prettier formatting to changed files
Agent-Logs-Url: https://github.com/abhigyanpatwari/GitNexus/sessions/cda38cc4-1c18-4be8-8d7b-e5f00dceaa22
Co-authored-by: magyargergo <11230420+magyargergo@users.noreply.github.com>
* fix: address all adversarial review findings (duplicate output, env overrides, tests, Windows note)
Agent-Logs-Url: https://github.com/abhigyanpatwari/GitNexus/sessions/eb1b4f9a-79da-4084-8f7b-dc056d2f7e5a
Co-authored-by: magyargergo <11230420+magyargergo@users.noreply.github.com>
* refactor: extract resolved env-var defaults to named variables for clarity
Agent-Logs-Url: https://github.com/abhigyanpatwari/GitNexus/sessions/eb1b4f9a-79da-4084-8f7b-dc056d2f7e5a
Co-authored-by: magyargergo <11230420+magyargergo@users.noreply.github.com>
* fix: add upper bound clamping and unit tests for HF env override parsing
Agent-Logs-Url: https://github.com/abhigyanpatwari/GitNexus/sessions/198700cc-4191-4ac1-94ec-33d61f2a99f7
Co-authored-by: magyargergo <11230420+magyargergo@users.noreply.github.com>
* style: use consistent 99_999 threshold notation in env override tests
Agent-Logs-Url: https://github.com/abhigyanpatwari/GitNexus/sessions/198700cc-4191-4ac1-94ec-33d61f2a99f7
Co-authored-by: magyargergo <11230420+magyargergo@users.noreply.github.com>
* fix: remove pipeline as any cast; type progress callback with ProgressInfo; remove unused HF_DOWNLOAD_TIMEOUT_MS import
Agent-Logs-Url: https://github.com/abhigyanpatwari/GitNexus/sessions/43e60ccd-6f01-4cec-8ee3-c22e8b000efe
Co-authored-by: magyargergo <11230420+magyargergo@users.noreply.github.com>
* fix: add safe fallback for progress_total status mapping in typed progress callback
Agent-Logs-Url: https://github.com/abhigyanpatwari/GitNexus/sessions/43e60ccd-6f01-4cec-8ee3-c22e8b000efe
Co-authored-by: magyargergo <11230420+magyargergo@users.noreply.github.com>
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: magyargergo <11230420+magyargergo@users.noreply.github.com>
Co-authored-by: Gergő Magyar <gergomagyar@icloud.com>