MCPcopy Create free account
hub / github.com/WJX20/claude-code / findLatestMessage

Function findLatestMessage

src/utils/sessionStorage.ts:2047–2062  ·  view source on GitHub ↗

* O(n) single-pass: find the message with the latest timestamp matching a predicate. * Replaces the `[...values].filter(pred).sort((a,b) => Date(b)-Date(a))[0]` pattern * which is O(n log n) + 2n Date allocations.

(
  messages: Iterable<T>,
  predicate: (m: T) => boolean,
)

Source from the content-addressed store, hash-verified

2045 * which is O(n log n) + 2n Date allocations.
2046 */
2047function findLatestMessage<T extends { timestamp: string }>(
2048 messages: Iterable<T>,
2049 predicate: (m: T) => boolean,
2050): T | undefined {
2051 let latest: T | undefined
2052 let maxTime = -Infinity
2053 for (const m of messages) {
2054 if (!predicate(m)) continue
2055 const t = Date.parse(m.timestamp)
2056 if (t > maxTime) {
2057 maxTime = t
2058 latest = m
2059 }
2060 }
2061 return latest
2062}
2063
2064/**
2065 * Builds a conversation chain from a leaf message to root

Callers 4

loadTranscriptFromFileFunction · 0.85
loadFullLogFunction · 0.85
getLastSessionLogFunction · 0.85
getAgentTranscriptFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected