feat: add billing type tracking and cost enhancements

Add AdapterBillingType (api/subscription/unknown) to adapter execution results
so the system can distinguish API-billed vs subscription-billed runs. Enhance
cost service to aggregate subscription vs API run counts and token breakdowns.
Add limit param to heartbeat runs list API and client.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Forgotten
2026-02-25 21:35:44 -06:00
parent 20a4ca08a5
commit 45c4df7b8a
8 changed files with 104 additions and 13 deletions

View File

@@ -22,9 +22,12 @@ export interface LiveRunForIssue {
}
export const heartbeatsApi = {
list: (companyId: string, agentId?: string) => {
const params = agentId ? `?agentId=${agentId}` : "";
return api.get<HeartbeatRun[]>(`/companies/${companyId}/heartbeat-runs${params}`);
list: (companyId: string, agentId?: string, limit?: number) => {
const searchParams = new URLSearchParams();
if (agentId) searchParams.set("agentId", agentId);
if (limit) searchParams.set("limit", String(limit));
const qs = searchParams.toString();
return api.get<HeartbeatRun[]>(`/companies/${companyId}/heartbeat-runs${qs ? `?${qs}` : ""}`);
},
events: (runId: string, afterSeq = 0, limit = 200) =>
api.get<HeartbeatRunEvent[]>(