fix: add safety limit to pagination loop and hoist baseUrl

- Add MAX_PAGES=50 guard to prevent unbounded fetching (caps at 5,000 logs)
- Move baseUrl computation outside the loop since it's invariant

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
marwanakeel 2026-02-16 14:52:09 +04:00
parent 9e1000d17a
commit 5e80234379

View file

@ -7026,15 +7026,17 @@ export const teamPermissionsUpdateCall = async (accessToken: string, teamId: str
*/
export const sessionSpendLogsCall = async (accessToken: string, session_id: string) => {
const pageSize = 100; // backend maximum
const maxPages = 50; // safety limit — caps at 5,000 logs
let currentPage = 1;
let allData: any[] = [];
let total = 0;
const baseUrl = proxyBaseUrl
? `${proxyBaseUrl}/spend/logs/session/ui`
: `/spend/logs/session/ui`;
try {
while (true) {
const baseUrl = proxyBaseUrl
? `${proxyBaseUrl}/spend/logs/session/ui`
: `/spend/logs/session/ui`;
while (currentPage <= maxPages) {
const url = `${baseUrl}?session_id=${encodeURIComponent(session_id)}&page=${currentPage}&page_size=${pageSize}`;
const response = await fetch(url, {