You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
#642 asked for a stable, time-filterable, paginated way to list on-call pages. #670 added on-call pages list, but only as a wrapper around the same unstable endpoint #642 already documented the limitations of — no time filter, no working pagination, oldest-first ordering, and a 1000-record cap.
Once a team's total page count exceeds 1000, its current pages become permanently unreachable through this command. Not delayed — unreachable, since there's no way to skip past the first 1000 results.
Describe the solution you'd like
The original ask from #642: a stable GET /api/v2/on-call/pages list endpoint with real time-window filtering and pagination, exposed as pup on-call pages list --from/--to. The wrapper in #670 was always scoped as a stopgap, not this fix.
Describe alternatives you've considered
If the stable endpoint isn't close, sort the existing unstable-endpoint wrapper newest-first instead of oldest-first. That alone would make --page-size bound "how far back you can see" instead of "how far behind the start of a team's history you are," which is usable for ongoing monitoring even without full pagination.
Additional context
Verified live against pup 1.10.2:
--page-size returns the oldest N pages, not the most recent N.
--from, --to, --cursor, --after are all rejected: error: unexpected argument '...' found.
--page-size is capped at 1000: error: invalid value '5000' ... 5000 is not in 1..=1000.
Confirmed in src/commands/on_call.rs (Add on-call pages list #670): the query sent is always just page[size] and an optional filter=team:<handle>. No sort, cursor, or time parameter is ever sent.
These match the limitations #642 and #641 already documented before #670 merged — they weren't resolved, just carried forward into the shipped command. At current volume, one team crosses the 1000-record threshold in about a month, at which point this command returns zero current pages for that team with no workaround.
Proposed command syntax (if applicable)
pup on-call pages list --team=<team> --from=2026-08-01 --to=2026-08-07
# or, as a no-backend-work interim fix:
pup on-call pages list --team=<team> --page-size=100 --sort=-created_at
Is your feature request related to a problem?
#642 asked for a stable, time-filterable, paginated way to list on-call pages. #670 added
on-call pages list, but only as a wrapper around the same unstable endpoint #642 already documented the limitations of — no time filter, no working pagination, oldest-first ordering, and a 1000-record cap.Once a team's total page count exceeds 1000, its current pages become permanently unreachable through this command. Not delayed — unreachable, since there's no way to skip past the first 1000 results.
Describe the solution you'd like
The original ask from #642: a stable
GET /api/v2/on-call/pageslist endpoint with real time-window filtering and pagination, exposed aspup on-call pages list --from/--to. The wrapper in #670 was always scoped as a stopgap, not this fix.Describe alternatives you've considered
If the stable endpoint isn't close, sort the existing unstable-endpoint wrapper newest-first instead of oldest-first. That alone would make
--page-sizebound "how far back you can see" instead of "how far behind the start of a team's history you are," which is usable for ongoing monitoring even without full pagination.Additional context
Verified live against pup 1.10.2:
--page-sizereturns the oldest N pages, not the most recent N.--from,--to,--cursor,--afterare all rejected:error: unexpected argument '...' found.--page-sizeis capped at 1000:error: invalid value '5000' ... 5000 is not in 1..=1000.src/commands/on_call.rs(Add on-call pages list #670): the query sent is always justpage[size]and an optionalfilter=team:<handle>. No sort, cursor, or time parameter is ever sent.These match the limitations #642 and #641 already documented before #670 merged — they weren't resolved, just carried forward into the shipped command. At current volume, one team crosses the 1000-record threshold in about a month, at which point this command returns zero current pages for that team with no workaround.
Proposed command syntax (if applicable)