MCPcopy
hub / github.com/Narcooo/inkos / readTranscriptEvents

Function readTranscriptEvents

packages/core/src/interaction/session-transcript.ts:23–46  ·  view source on GitHub ↗
(
  projectRoot: string,
  sessionId: string,
)

Source from the content-addressed store, hash-verified

21}
22
23export async function readTranscriptEvents(
24 projectRoot: string,
25 sessionId: string,
26): Promise<TranscriptEvent[]> {
27 let raw: string;
28 try {
29 raw = await readFile(transcriptPath(projectRoot, sessionId), "utf-8");
30 } catch {
31 return [];
32 }
33
34 const events: TranscriptEvent[] = [];
35 for (const line of raw.split(/\r?\n/)) {
36 if (!line.trim()) continue;
37 try {
38 const parsed = TranscriptEventSchema.safeParse(JSON.parse(line));
39 if (parsed.success) events.push(parsed.data);
40 } catch {
41 continue;
42 }
43 }
44
45 return events.sort((a, b) => a.seq - b.seq);
46}
47
48export async function nextTranscriptSeq(projectRoot: string, sessionId: string): Promise<number> {
49 const events = await readTranscriptEvents(projectRoot, sessionId);

Calls 1

transcriptPathFunction · 0.85

Tested by

no test coverage detected