The resolve_task_id function in post_merge.py only fetched 50 tasks via list_tasks(per_page=50). With more than 50 tasks in Vikunja, newly created tasks (with higher IDs) were not in the first page and could not be found.
Fix:
Add VikunjaClient.list_project_tasks() using the project-specific endpoint GET /projects/{id}/tasks
Update resolve_task_id to paginate through all pages until the task is found or pages are exhausted
Add tests for pagination (found on page 2, stops on partial page)
The `resolve_task_id` function in `post_merge.py` only fetched 50 tasks via `list_tasks(per_page=50)`. With more than 50 tasks in Vikunja, newly created tasks (with higher IDs) were not in the first page and could not be found.
**Fix:**
- Add `VikunjaClient.list_project_tasks()` using the project-specific endpoint `GET /projects/{id}/tasks`
- Update `resolve_task_id` to paginate through all pages until the task is found or pages are exhausted
- Add tests for pagination (found on page 2, stops on partial page)
emil
merged commit 3364355c73 into master2026-06-20 17:48:09 +00:00
emil
deleted branch GRM-28-fix-vikunja-pagination2026-06-20 17:48:09 +00:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
The
resolve_task_idfunction inpost_merge.pyonly fetched 50 tasks vialist_tasks(per_page=50). With more than 50 tasks in Vikunja, newly created tasks (with higher IDs) were not in the first page and could not be found.Fix:
VikunjaClient.list_project_tasks()using the project-specific endpointGET /projects/{id}/tasksresolve_task_idto paginate through all pages until the task is found or pages are exhausted