각 get마다 timeout을 새로 시작하면 전체 응답 상한이 작업 수만큼 늘어납니다.
요청 시작 + 예산
수집 대상
deadline - now
remaining만 대기
값·실패·timeout
핵심: 남은 시간이 0이면 뒤 작업을 기다리지 않고 취소·부분 결과 정책으로 전환합니다.