We currently do not have the ability to easily paginate results in the local search task suggester.
What we do instead is:
- make a query
- keep track of the page IDs that we've received
- when we make a query for more results, we pass and exclude page IDs we've already received
We should be able to make use of the user_random sort flag in CirrusSearch added in rECIR92ad47f7c93a: Provider a stable random sort. That should provide the ability for us to have a stable randomize search per user through results.
Acceptance Criteria
- Use CirrusSearch pagination instead of relying on the excludepageids parameter.
- Make use of the offset parameter in the growth tasks API
Completion checklist
Functionality
- The patches have been code reviewed and merged
- The task passes its acceptance criteria
Engineering
- There are existing and passing unit/integration tests
- Tests for every involved patch should pass
- Coverage for every involved project should have improved or stayed the same
Design & QA
- If the task is UX/Design related: it must be reviewed and approved by the UX/Design team
- Must be reviewed and approved by Quality Assurance.
Documentation
- Related and updated documentation done where necessary
- Internal technical changes: internal repository documentation must be updated (README.md, JSDoc, PHPDoc)
- Infrastructure technical changes: technical changes that reflect on environment, infrastructure, endpoints or any other area of interest for technical contributors should be reflected on Extension:GrowthExperiments or Extension:GrowthExperiments/Technical documentation pages.