Implement Continuation Token Pagination#11
Merged
fredvisser merged 4 commits intomainfrom Jul 30, 2025
Merged
Conversation
There was a problem hiding this comment.
Pull Request Overview
This PR implements continuation token pagination across SystemLink CLI services to replace hardcoded Take=1000 parameters with proper pagination. The change improves memory efficiency and scalability for workspaces with thousands of items while maintaining backward compatibility.
- Replaces hardcoded large
takevalues (1000) with continuation token pagination using smaller page sizes (100-500) - Adds new helper functions
_query_all_*for each service to handle continuation token logic - Updates workspace utilities and test mocks to support filtered responses with the new pagination approach
Reviewed Changes
Copilot reviewed 9 out of 9 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| slcli/dff_click.py | Added continuation token pagination for DFF configurations, groups, and fields with _query_all_* functions |
| slcli/templates_click.py | Implemented _query_all_templates() with continuation token support and updated list command |
| slcli/workflows_click.py | Added _query_all_workflows() function with continuation token pagination |
| slcli/notebook_click.py | Enhanced _query_notebooks_http() to use continuation token pagination instead of single large request |
| slcli/user_click.py | Improved existing continuation token implementation with proper filtering and pagination logic |
| slcli/workspace_click.py | Updated workspace template/workflow queries to use continuation token pagination |
| slcli/universal_handlers.py | Added FilteredResponse class to support mock responses with pagination results |
| tests/unit/test_templates_click.py | Updated test mock to handle workspace filtering in paginated responses |
| .github/copilot-instructions.md | Added HTTP API documentation guidelines and OpenAPI specification references |
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.
Fixes DFF config list pagination behavior and implements continuation tokens across all SystemLink CLI services
Key Changes:
_query_all_configurations(),_query_all_groups(),_query_all_fields()with continuation token pagination, replacing hardcodedTake=1000_query_all_templates()and_query_all_workflows()with continuation token support_query_notebooks_http()with proper continuation token paginationBenefits:
Services Updated:
✅ Dynamic Form Fields, Templates, Workflows, Notebooks, User management, Workspace utilities
❌ Auth-mapping APIs (only support skip/take pagination)