Skip to content

feat:(wiki) added --timeout and --retries flags for large module pages to mitigate timeout aborts#1543

Merged
magyargergo merged 6 commits into
abhigyanpatwari:mainfrom
sanguine59:feat/wiki
May 13, 2026
Merged

feat:(wiki) added --timeout and --retries flags for large module pages to mitigate timeout aborts#1543
magyargergo merged 6 commits into
abhigyanpatwari:mainfrom
sanguine59:feat/wiki

Conversation

@sanguine59

@sanguine59 sanguine59 commented May 13, 2026

Copy link
Copy Markdown
Contributor

Summary

Add --timeout and --retries flags to gitnexus wiki so users can override the default 60s per-attempt LLM request timeout and 3-attempt retry cap when generating large module pages.

Motivation / context

Related to Issue: #1537
Large module pages with heavy source code cause the LLM fetch to exceed the hardcoded AbortSignal.timeout(60_000) in llm-client.ts, which throws a DOMException [TimeoutError]: The operation was aborted due to timeout. classified as
terminal-network by resilientFetch, meaning no retries happen. Users had no way to work around this without patching the source.

Related to #1537

Areas touched

  • gitnexus/ (CLI / core / MCP server)
  • gitnexus-web/ (Vite / React UI)
  • .github/ (workflows, actions)
  • eval/ or other tooling
  • Docs / agent config only (AGENTS.md, CLAUDE.md, .cursor/, llms.txt, etc.)

Scope & constraints

In scope

  • --timeout flag: sets per-attempt fetch timeout in seconds
  • --retries flag: sets max retry attempts
  • Both are per-run only — not saved to ~/.gitnexus/config.json

Explicitly out of scope / not done here

  • Rolling/idle timeout on the SSE stream (would fix the root cause more precisely but is a larger change)
  • Cursor CLI path (unchanged)

Implementation notes

requestTimeoutMs and maxAttempts added as optional fields on LLMConfig. Defaults remain 60_000ms and 3 respectively, so existing behavior is unchanged. Flags are applied after resolveLLMConfig and before the generator runs.

Testing & verification

  • cd gitnexus && npm test
  • cd gitnexus && npm run test:integration (if core/indexing/MCP paths changed)
  • cd gitnexus && npx tsc --noEmit
  • cd gitnexus-web && npm test (if web changed)
  • cd gitnexus-web && npx tsc -b --noEmit (if web changed)
  • Manual / Playwright E2E (note environment — see gitnexus-web/e2e/)

Risk & rollout

No breaking changes. All new fields are optional with existing defaults.

Checklist

  • PR body meets repo minimum length (workflow may label short descriptions)
  • If AGENTS.md / overlays changed: headers, scope block, and changelog updated per project conventions
  • No secrets, tokens, or machine-specific paths committed

@vercel

vercel Bot commented May 13, 2026

Copy link
Copy Markdown

@sanguine59 is attempting to deploy a commit to the NexusCore Team on Vercel.

A member of the Team first needs to authorize it.

@github-actions

github-actions Bot commented May 13, 2026

Copy link
Copy Markdown
Contributor

CI Report

All checks passed

Pipeline Status

Stage Status Details
✅ Typecheck success tsc --noEmit
✅ Tests success unit tests, 3 platforms
✅ E2E success gitnexus-web changes only

Test Results

Tests Passed Failed Skipped Duration
8844 8843 0 1 415s

✅ All 8843 tests passed

1 test(s) skipped — expand for details
  • buildTypeEnv > known limitations (documented skip tests) > Ruby block parameter: users.each { |user| } — closure param inference, different feature

Code Coverage

Tests

Metric Coverage Covered Base Delta Status
Statements 77.64% 27140/34955 N/A% 🟢 ███████████████░░░░░
Branches 66.06% 17114/25906 N/A% 🟢 █████████████░░░░░░░
Functions 82.37% 2735/3320 N/A% 🟢 ████████████████░░░░
Lines 80.81% 24529/30353 N/A% 🟢 ████████████████░░░░

📋 View full run · Generated by CI

@magyargergo

Copy link
Copy Markdown
Collaborator

@sanguine59 Can you please make sure these new options are documented in the readme as well?

@sanguine59

Copy link
Copy Markdown
Contributor Author

it is done, also noticed that README's wiki section only shows a few example flags rather than the full list, is that intentional?

@magyargergo

Copy link
Copy Markdown
Collaborator

No, it definitely needs to be complete. Thank you for raising it! Could you please submit an issue ticket for it? 🙏

@sanguine59

Copy link
Copy Markdown
Contributor Author

Thanks for the follow-up. I submitted an issue regarding the incomplete documentation and will also look into other features that lack documentation

@magyargergo

Copy link
Copy Markdown
Collaborator

Thanks for the follow-up. I submitted an issue regarding the incomplete documentation and will also look into other features that lack documentation

Thank you! We appreciate any help! :) If you want to contribute more and want to get the latest updates of GitNexus, feel free to join our Discord community.

@magyargergo magyargergo merged commit 88d3df7 into abhigyanpatwari:main May 13, 2026
28 of 29 checks passed
dp-web4 pushed a commit to dp-web4/GitNexus that referenced this pull request May 13, 2026
…s to mitigate timeout aborts (abhigyanpatwari#1543)

* feat:(wiki) added --timeout and --retries flags for large module pages to mitigate timeout aborts

* docs(wiki): document --timeout and --retries options

* docs(wiki): document --timeout and --retries in SKILL.md

---------

Co-authored-by: Gergő Magyar <gergomagyar@icloud.com>
hohaivu pushed a commit to hohaivu/GitNexus that referenced this pull request May 19, 2026
…s to mitigate timeout aborts (abhigyanpatwari#1543)

* feat:(wiki) added --timeout and --retries flags for large module pages to mitigate timeout aborts

* docs(wiki): document --timeout and --retries options

* docs(wiki): document --timeout and --retries in SKILL.md

---------

Co-authored-by: Gergő Magyar <gergomagyar@icloud.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants