MCPcopy Index your code
hub / github.com/simstudioai/sim / compactSubflowResults

Function compactSubflowResults

apps/sim/lib/execution/payloads/serializer.ts:234–253  ·  view source on GitHub ↗
(
  results: T[],
  options: CompactExecutionPayloadOptions = {}
)

Source from the content-addressed store, hash-verified

232 * Compacts subflow result aggregates while preserving indexable `results`.
233 */
234export async function compactSubflowResults<T>(
235 results: T[],
236 options: CompactExecutionPayloadOptions = {}
237): Promise<T[]> {
238 const entryOptions = { ...options, preserveRoot: false }
239 let compactedResults = (await Promise.all(
240 results.map((result) => compactExecutionPayload(result, entryOptions))
241 )) as T[]
242
243 const aggregate = getJsonAndSize({ results: compactedResults })
244 if (aggregate && aggregate.size <= (options.thresholdBytes ?? LARGE_VALUE_THRESHOLD_BYTES)) {
245 return compactedResults
246 }
247
248 compactedResults = (await Promise.all(
249 compactedResults.map((result) => forceStoreValue(result, options))
250 )) as T[]
251
252 return compactedResults
253}
254
255export async function compactBlockLogs(
256 logs: BlockLog[] | undefined,

Callers 4

serializer.test.tsFile · 0.90
createExitResultMethod · 0.90

Calls 3

compactExecutionPayloadFunction · 0.85
getJsonAndSizeFunction · 0.85
forceStoreValueFunction · 0.85

Tested by

no test coverage detected