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

Function handleResponse

web/src/llm-api/moonshot.ts:588–680  ·  view source on GitHub ↗
({
  userId,
  stripeCustomerId,
  agentId,
  clientId,
  clientRequestId,
  costMode,
  startTime,
  request,
  originalModel,
  data,
  state,
  logger,
  insertMessage,
}: {
  userId: string
  stripeCustomerId?: string | null
  agentId: string
  clientId: string | null
  clientRequestId: string | null
  costMode: string | undefined
  startTime: Date
  request: unknown
  originalModel: string
  data: Record<string, unknown>
  state: StreamState
  logger: Logger
  insertMessage: InsertMessageBigqueryFn
})

Source from the content-addressed store, hash-verified

586}
587
588async function handleResponse({
589 userId,
590 stripeCustomerId,
591 agentId,
592 clientId,
593 clientRequestId,
594 costMode,
595 startTime,
596 request,
597 originalModel,
598 data,
599 state,
600 logger,
601 insertMessage,
602}: {
603 userId: string
604 stripeCustomerId?: string | null
605 agentId: string
606 clientId: string | null
607 clientRequestId: string | null
608 costMode: string | undefined
609 startTime: Date
610 request: unknown
611 originalModel: string
612 data: Record<string, unknown>
613 state: StreamState
614 logger: Logger
615 insertMessage: InsertMessageBigqueryFn
616}): Promise<{ state: StreamState; billedCredits?: number }> {
617 state = handleStreamChunk({
618 data,
619 state,
620 startTime,
621 logger,
622 userId,
623 agentId,
624 model: originalModel,
625 })
626
627 if (
628 'error' in data ||
629 !data.usage ||
630 state.billedAlready ||
631 !isFinalChunk(data)
632 ) {
633 if (data.usage && (!isFinalChunk(data) || state.billedAlready)) {
634 delete data.usage
635 }
636 return { state }
637 }
638
639 const usageData = extractUsageAndCost(
640 data.usage as Record<string, unknown>,
641 originalModel,
642 )
643 const messageId = typeof data.id === 'string' ? data.id : 'unknown'
644
645 state.billedAlready = true

Callers 1

handleLineFunction · 0.70

Calls 5

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

Tested by

no test coverage detected