MCPcopy Create free account
hub / github.com/anomalyco/opencode / fetchMessages

Function fetchMessages

packages/app/src/context/server-session.ts:445–460  ·  view source on GitHub ↗
(sessionID: string, limit: number, before?: string, onAttempt?: () => void)

Source from the content-addressed store, hash-verified

443 )
444
445 const fetchMessages = async (sessionID: string, limit: number, before?: string, onAttempt?: () => void) => {
446 const response = await (options?.retry ?? retry)(() => {
447 onAttempt?.()
448 return client.session.messages({ sessionID, limit, before })
449 })
450 const items = (response.data ?? []).filter((item) => !!item?.info?.id)
451 return {
452 session: items.map((item) => cleanMessage(item.info)).sort((a, b) => cmp(a.id, b.id)),
453 part: items.map((item) => ({
454 id: item.info.id,
455 part: item.parts.filter((part) => !!part?.id).sort((a, b) => cmp(a.id, b.id)),
456 })),
457 cursor: response.response.headers.get("x-next-cursor") ?? undefined,
458 complete: !response.response.headers.get("x-next-cursor"),
459 }
460 }
461
462 const replaceMessages = (sessionID: string, messages: Message[]) => {
463 const messageIDs = new Set(messages.map((message) => message.id))

Callers 1

loadMessagesFunction · 0.85

Calls 3

cmpFunction · 0.70
getMethod · 0.65
messagesMethod · 0.45

Tested by

no test coverage detected