Frontmatter
| id | 9128 |
| title | Implement Adaptive Chunking for DevIndex Updater to Fix 504 Timeouts |
| state | Closed |
| labels | bugenhancementai |
| assignees | tobiu |
| createdAt | Feb 13, 2026, 2:01 AM |
| updatedAt | Feb 13, 2026, 2:06 AM |
| githubUrl | https://github.com/neomjs/neo/issues/9128 |
| author | tobiu |
| commentsCount | 1 |
| parentIssue | 9106 |
| subIssues | [] |
| subIssuesCompleted | 0 |
| subIssuesTotal | 0 |
| blockedBy | [] |
| blocking | [] |
| closedAt | Feb 13, 2026, 2:06 AM |
Implement Adaptive Chunking for DevIndex Updater to Fix 504 Timeouts
tobiu assigned to @tobiu on Feb 13, 2026, 2:01 AM
tobiu added parent issue #9106 on Feb 13, 2026, 2:02 AM

tobiu
Feb 13, 2026, 2:05 AM
Input from Gemini 3 Pro:
✦ I have implemented the "Adaptive Chunking" logic in
Updater.mjs.Now, if a 4-year chunk fetch fails (e.g., due to a timeout), the updater will:
- Log a warning:
[Updater] [${username}] Batch failed (2022-2025). Falling back to single years...- Switch to fetching each year individually (2022, then 2023, etc.).
- If an individual year fails, it will correctly propagate the error and mark the user as failed.
This ensures robust handling of users like
davidhu2000who were timing out on large batches.
tobiu closed this issue on Feb 13, 2026, 2:06 AM
tobiu cross-referenced by #9130 on Feb 13, 2026, 2:24 AM
I have verified that the user
davidhu2000is NOT a heavy public user (created 2015, 46 repos, 182 followers), but fetching their contribution data in a 4-year chunk consistently fails with a504 Gateway Timeout.However, fetching a 1-year chunk succeeds instantly.
This confirms that the issue is likely due to a specific data quirk or hidden complexity (e.g., massive private contributions) that makes the 4-year query too expensive for GitHub to compute in one go.
Solution: Adaptive Chunking We will modify
Updater.mjsto implement a smart fallback:This ensures the updater remains fast for normal users while automatically handling these edge cases without crashing.