Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
A federated request with
offset=100&limit=25returned no jobs from a board with 150 matches, while still reportingtotal=150. Each source supplied only its first 100 rows before the global offset was applied.Fetch the required prefix in pages of at most 100, then merge and slice it. Explicit per-instance caps keep their existing 1–100 cumulative limit. Pages share the existing per-source timeout budget, and a failed later page discards that source's staged results while leaving other sources available. Raw row counts advance the source offset, including rows omitted from display.
Validation on Node 24.20.0:
npm run build;node --test test/federated-pagination.test.ts test/salary-search.test.ts(20 passed, none skipped);git diff --check. Coverage retains the earlier pagination cases and adds deep and boundary-crossing pages, uneven sources, caps, early completion, malformed rows, later-page failure, shared time limits and cancellation. Requests in these tests use local fixtures; no live board was exercised. AI-assisted contribution.