MCPcopy Index your code
hub / github.com/CodebuffAI/codebuff / handleResponse

Function handleResponse

web/src/llm-api/openrouter.ts:623–706  ·  view source on GitHub ↗
({
  userId,
  stripeCustomerId,
  agentId,
  clientId,
  clientRequestId,
  costMode,
  byok,
  startTime,
  request,
  data,
  state,
  logger,
  insertMessage,
}: {
  userId: string
  stripeCustomerId?: string | null
  agentId: string
  clientId: string | null
  clientRequestId: string | null
  costMode: string | undefined
  byok: boolean
  startTime: Date
  request: unknown
  data: OpenRouterStreamChatCompletionChunk
  state: StreamState
  logger: Logger
  insertMessage: InsertMessageBigqueryFn
})

Source from the content-addressed store, hash-verified

621}
622
623async function handleResponse({
624 userId,
625 stripeCustomerId,
626 agentId,
627 clientId,
628 clientRequestId,
629 costMode,
630 byok,
631 startTime,
632 request,
633 data,
634 state,
635 logger,
636 insertMessage,
637}: {
638 userId: string
639 stripeCustomerId?: string | null
640 agentId: string
641 clientId: string | null
642 clientRequestId: string | null
643 costMode: string | undefined
644 byok: boolean
645 startTime: Date
646 request: unknown
647 data: OpenRouterStreamChatCompletionChunk
648 state: StreamState
649 logger: Logger
650 insertMessage: InsertMessageBigqueryFn
651}): Promise<LineResult> {
652 const model = 'model' in data ? data.model : undefined
653 state = await handleStreamChunk({
654 data,
655 state,
656 startTime,
657 logger,
658 userId,
659 agentId,
660 model,
661 })
662
663 if ('error' in data || !data.usage) {
664 // Stream not finished
665 return { state }
666 }
667
668 const usageData = extractUsageAndCost(data.usage)
669
670 // Insert into BigQuery (don't await)
671 insertMessageToBigQuery({
672 messageId: data.id,
673 userId,
674 startTime,
675 request,
676 reasoningText: state.reasoningText,
677 responseText: state.responseText,
678 usageData,
679 logger,
680 insertMessageBigquery: insertMessage,

Callers 1

handleLineFunction · 0.70

Calls 4

insertMessageToBigQueryFunction · 0.90
consumeCreditsForMessageFunction · 0.90
handleStreamChunkFunction · 0.70
extractUsageAndCostFunction · 0.70

Tested by

no test coverage detected