File size: 1,371 Bytes
064bfd6
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
type ContextCollapseStats = {
  collapsedSpans: number
  collapsedMessages: number
  stagedSpans: number
  health: {
    totalErrors: number
    totalEmptySpawns: number
    totalSpawns: number
    emptySpawnWarningEmitted: boolean
    lastError: string | null
  }
}

const EMPTY_STATS: ContextCollapseStats = {
  collapsedSpans: 0,
  collapsedMessages: 0,
  stagedSpans: 0,
  health: {
    totalErrors: 0,
    totalEmptySpawns: 0,
    totalSpawns: 0,
    emptySpawnWarningEmitted: false,
    lastError: null,
  },
}

export function initContextCollapse(): void {}

export function resetContextCollapse(): void {}

export function isContextCollapseEnabled(): boolean {
  return false
}

export function getStats(): ContextCollapseStats {
  return EMPTY_STATS
}

export function subscribe(_callback: () => void): () => void {
  return () => {}
}

export async function applyCollapsesIfNeeded<T>(
  messages: T[],
  _toolUseContext: unknown,
  _querySource?: string,
): Promise<{ messages: T[] }> {
  return { messages }
}

export function recoverFromOverflow<T>(
  messages: T[],
  _querySource?: string,
): { messages: T[]; committed: number } {
  return {
    messages,
    committed: 0,
  }
}

export function isWithheldPromptTooLong(
  _message: unknown,
  _isPromptTooLongMessage: (message: unknown) => boolean,
  _querySource?: string,
): boolean {
  return false
}