MCPcopy Create free account
hub / github.com/ChatLab/ChatLab / applySessionFacts

Function applySessionFacts

packages/node-runtime/src/services/contacts/compute.ts:249–276  ·  view source on GitHub ↗
(
  accumulators: Map<string, ContactAccumulator>,
  diagnostics: ContactsDiagnostics,
  sessionId: string,
  sessionFacts: ContactsSessionFacts
)

Source from the content-addressed store, hash-verified

247}
248
249function applySessionFacts(
250 accumulators: Map<string, ContactAccumulator>,
251 diagnostics: ContactsDiagnostics,
252 sessionId: string,
253 sessionFacts: ContactsSessionFacts
254): void {
255 if ('meta' in sessionFacts && sessionFacts.meta.type === ChatType.PRIVATE) diagnostics.privateSessionCount++
256
257 switch (sessionFacts.kind) {
258 case 'missing_owner':
259 diagnostics.skippedMissingOwnerSessions++
260 return
261 case 'unresolved_owner':
262 diagnostics.skippedUnresolvedOwnerSessions++
263 return
264 case 'private_ambiguous':
265 diagnostics.skippedAmbiguousPrivateSessions++
266 return
267 case 'private':
268 applyPrivateFacts(accumulators, diagnostics, sessionId, sessionFacts.meta, sessionFacts.facts)
269 return
270 case 'group':
271 applyGroupFacts(accumulators, sessionId, sessionFacts.meta, sessionFacts.facts)
272 return
273 default:
274 return
275 }
276}
277
278function applyPrivateFacts(
279 accumulators: Map<string, ContactAccumulator>,

Callers 1

computeContactsFunction · 0.70

Calls 2

applyPrivateFactsFunction · 0.70
applyGroupFactsFunction · 0.70

Tested by

no test coverage detected