@roj-ai/debug 0.1.3 → 0.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (153) hide show
  1. package/dist/components/debug/DebugContext.d.ts +1 -0
  2. package/dist/components/debug/DebugContext.d.ts.map +1 -0
  3. package/dist/components/debug/DebugContext.js +9 -0
  4. package/dist/components/debug/DebugContext.js.map +1 -0
  5. package/dist/components/debug/DebugNavigation.d.ts +1 -0
  6. package/dist/components/debug/DebugNavigation.d.ts.map +1 -0
  7. package/dist/components/debug/DebugNavigation.js +36 -0
  8. package/dist/components/debug/DebugNavigation.js.map +1 -0
  9. package/dist/components/debug/DebugShell.d.ts +1 -0
  10. package/dist/components/debug/DebugShell.d.ts.map +1 -0
  11. package/dist/components/debug/DebugShell.js +103 -0
  12. package/dist/components/debug/DebugShell.js.map +1 -0
  13. package/dist/components/debug/LLMCallDetail.d.ts +1 -0
  14. package/dist/components/debug/LLMCallDetail.d.ts.map +1 -0
  15. package/dist/components/debug/LLMCallDetail.js +204 -0
  16. package/dist/components/debug/LLMCallDetail.js.map +1 -0
  17. package/dist/components/debug/TimelineDetailInspector.d.ts +1 -0
  18. package/dist/components/debug/TimelineDetailInspector.d.ts.map +1 -0
  19. package/dist/components/debug/TimelineDetailInspector.js +48 -0
  20. package/dist/components/debug/TimelineDetailInspector.js.map +1 -0
  21. package/dist/components/debug/communication/CommunicationDiagram.d.ts +1 -0
  22. package/dist/components/debug/communication/CommunicationDiagram.d.ts.map +1 -0
  23. package/dist/components/debug/communication/CommunicationDiagram.js +67 -0
  24. package/dist/components/debug/communication/CommunicationDiagram.js.map +1 -0
  25. package/dist/components/debug/communication/DiagramHeader.d.ts +1 -0
  26. package/dist/components/debug/communication/DiagramHeader.d.ts.map +1 -0
  27. package/dist/components/debug/communication/DiagramHeader.js +44 -0
  28. package/dist/components/debug/communication/DiagramHeader.js.map +1 -0
  29. package/dist/components/debug/communication/ParticipantLane.d.ts +1 -0
  30. package/dist/components/debug/communication/ParticipantLane.d.ts.map +1 -0
  31. package/dist/components/debug/communication/ParticipantLane.js +10 -0
  32. package/dist/components/debug/communication/ParticipantLane.js.map +1 -0
  33. package/dist/components/debug/communication/TimeAxis.d.ts +1 -0
  34. package/dist/components/debug/communication/TimeAxis.d.ts.map +1 -0
  35. package/dist/components/debug/communication/TimeAxis.js +49 -0
  36. package/dist/components/debug/communication/TimeAxis.js.map +1 -0
  37. package/dist/components/debug/communication/elements/IdleGap.d.ts +1 -0
  38. package/dist/components/debug/communication/elements/IdleGap.d.ts.map +1 -0
  39. package/dist/components/debug/communication/elements/IdleGap.js +12 -0
  40. package/dist/components/debug/communication/elements/IdleGap.js.map +1 -0
  41. package/dist/components/debug/communication/elements/LLMBlock.d.ts +1 -0
  42. package/dist/components/debug/communication/elements/LLMBlock.d.ts.map +1 -0
  43. package/dist/components/debug/communication/elements/LLMBlock.js +30 -0
  44. package/dist/components/debug/communication/elements/LLMBlock.js.map +1 -0
  45. package/dist/components/debug/communication/elements/MessageArrow.d.ts +1 -0
  46. package/dist/components/debug/communication/elements/MessageArrow.d.ts.map +1 -0
  47. package/dist/components/debug/communication/elements/MessageArrow.js +34 -0
  48. package/dist/components/debug/communication/elements/MessageArrow.js.map +1 -0
  49. package/dist/components/debug/communication/elements/ToolBlock.d.ts +1 -0
  50. package/dist/components/debug/communication/elements/ToolBlock.d.ts.map +1 -0
  51. package/dist/components/debug/communication/elements/ToolBlock.js +27 -0
  52. package/dist/components/debug/communication/elements/ToolBlock.js.map +1 -0
  53. package/dist/components/debug/communication/hooks/useDiagramData.d.ts +1 -0
  54. package/dist/components/debug/communication/hooks/useDiagramData.d.ts.map +1 -0
  55. package/dist/components/debug/communication/hooks/useDiagramData.js +252 -0
  56. package/dist/components/debug/communication/hooks/useDiagramData.js.map +1 -0
  57. package/dist/components/debug/communication/hooks/useTimeCompression.d.ts +1 -0
  58. package/dist/components/debug/communication/hooks/useTimeCompression.d.ts.map +1 -0
  59. package/dist/components/debug/communication/hooks/useTimeCompression.js +109 -0
  60. package/dist/components/debug/communication/hooks/useTimeCompression.js.map +1 -0
  61. package/dist/components/debug/communication/hooks/useZoomPan.d.ts +1 -0
  62. package/dist/components/debug/communication/hooks/useZoomPan.d.ts.map +1 -0
  63. package/dist/components/debug/communication/hooks/useZoomPan.js +75 -0
  64. package/dist/components/debug/communication/hooks/useZoomPan.js.map +1 -0
  65. package/dist/components/debug/communication/popovers/ElementPopover.d.ts +1 -0
  66. package/dist/components/debug/communication/popovers/ElementPopover.d.ts.map +1 -0
  67. package/dist/components/debug/communication/popovers/ElementPopover.js +39 -0
  68. package/dist/components/debug/communication/popovers/ElementPopover.js.map +1 -0
  69. package/dist/components/debug/communication/types.d.ts +1 -0
  70. package/dist/components/debug/communication/types.d.ts.map +1 -0
  71. package/dist/components/debug/communication/types.js +52 -0
  72. package/dist/components/debug/communication/types.js.map +1 -0
  73. package/dist/components/debug/index.d.ts +1 -0
  74. package/dist/components/debug/index.d.ts.map +1 -0
  75. package/dist/components/debug/index.js +18 -0
  76. package/dist/components/debug/index.js.map +1 -0
  77. package/dist/components/debug/pages/AgentDetailPage.d.ts +1 -0
  78. package/dist/components/debug/pages/AgentDetailPage.d.ts.map +1 -0
  79. package/dist/components/debug/pages/AgentDetailPage.js +365 -0
  80. package/dist/components/debug/pages/AgentDetailPage.js.map +1 -0
  81. package/dist/components/debug/pages/AgentsPage.d.ts +1 -0
  82. package/dist/components/debug/pages/AgentsPage.d.ts.map +1 -0
  83. package/dist/components/debug/pages/AgentsPage.js +111 -0
  84. package/dist/components/debug/pages/AgentsPage.js.map +1 -0
  85. package/dist/components/debug/pages/CommunicationPage.d.ts +1 -0
  86. package/dist/components/debug/pages/CommunicationPage.d.ts.map +1 -0
  87. package/dist/components/debug/pages/CommunicationPage.js +19 -0
  88. package/dist/components/debug/pages/CommunicationPage.js.map +1 -0
  89. package/dist/components/debug/pages/DashboardPage.d.ts +1 -0
  90. package/dist/components/debug/pages/DashboardPage.d.ts.map +1 -0
  91. package/dist/components/debug/pages/DashboardPage.js +430 -0
  92. package/dist/components/debug/pages/DashboardPage.js.map +1 -0
  93. package/dist/components/debug/pages/EventsPage.d.ts +1 -0
  94. package/dist/components/debug/pages/EventsPage.d.ts.map +1 -0
  95. package/dist/components/debug/pages/EventsPage.js +137 -0
  96. package/dist/components/debug/pages/EventsPage.js.map +1 -0
  97. package/dist/components/debug/pages/FilesPage.d.ts +1 -0
  98. package/dist/components/debug/pages/FilesPage.d.ts.map +1 -0
  99. package/dist/components/debug/pages/FilesPage.js +187 -0
  100. package/dist/components/debug/pages/FilesPage.js.map +1 -0
  101. package/dist/components/debug/pages/LLMCallPage.d.ts +1 -0
  102. package/dist/components/debug/pages/LLMCallPage.d.ts.map +1 -0
  103. package/dist/components/debug/pages/LLMCallPage.js +12 -0
  104. package/dist/components/debug/pages/LLMCallPage.js.map +1 -0
  105. package/dist/components/debug/pages/LLMCallsPage.d.ts +1 -0
  106. package/dist/components/debug/pages/LLMCallsPage.d.ts.map +1 -0
  107. package/dist/components/debug/pages/LLMCallsPage.js +200 -0
  108. package/dist/components/debug/pages/LLMCallsPage.js.map +1 -0
  109. package/dist/components/debug/pages/LogsPage.d.ts +1 -0
  110. package/dist/components/debug/pages/LogsPage.d.ts.map +1 -0
  111. package/dist/components/debug/pages/LogsPage.js +107 -0
  112. package/dist/components/debug/pages/LogsPage.js.map +1 -0
  113. package/dist/components/debug/pages/MailboxPage.d.ts +1 -0
  114. package/dist/components/debug/pages/MailboxPage.d.ts.map +1 -0
  115. package/dist/components/debug/pages/MailboxPage.js +60 -0
  116. package/dist/components/debug/pages/MailboxPage.js.map +1 -0
  117. package/dist/components/debug/pages/ServicesPage.d.ts +1 -0
  118. package/dist/components/debug/pages/ServicesPage.d.ts.map +1 -0
  119. package/dist/components/debug/pages/ServicesPage.js +91 -0
  120. package/dist/components/debug/pages/ServicesPage.js.map +1 -0
  121. package/dist/components/debug/pages/TimelinePage.d.ts +1 -0
  122. package/dist/components/debug/pages/TimelinePage.d.ts.map +1 -0
  123. package/dist/components/debug/pages/TimelinePage.js +101 -0
  124. package/dist/components/debug/pages/TimelinePage.js.map +1 -0
  125. package/dist/components/debug/pages/UserChatPage.d.ts +1 -0
  126. package/dist/components/debug/pages/UserChatPage.d.ts.map +1 -0
  127. package/dist/components/debug/pages/UserChatPage.js +56 -0
  128. package/dist/components/debug/pages/UserChatPage.js.map +1 -0
  129. package/dist/components/debug/pages/index.d.ts +1 -0
  130. package/dist/components/debug/pages/index.d.ts.map +1 -0
  131. package/dist/components/debug/pages/index.js +14 -0
  132. package/dist/components/debug/pages/index.js.map +1 -0
  133. package/dist/index.d.ts +1 -0
  134. package/dist/index.d.ts.map +1 -0
  135. package/dist/index.js +12 -0
  136. package/dist/index.js.map +1 -0
  137. package/dist/lib/domain-utils.d.ts +1 -0
  138. package/dist/lib/domain-utils.d.ts.map +1 -0
  139. package/dist/lib/domain-utils.js +11 -0
  140. package/dist/lib/domain-utils.js.map +1 -0
  141. package/dist/providers/EventPollingProvider.d.ts +1 -0
  142. package/dist/providers/EventPollingProvider.d.ts.map +1 -0
  143. package/dist/providers/EventPollingProvider.js +49 -0
  144. package/dist/providers/EventPollingProvider.js.map +1 -0
  145. package/dist/stores/event-store.d.ts +1 -0
  146. package/dist/stores/event-store.d.ts.map +1 -0
  147. package/dist/stores/event-store.js +341 -0
  148. package/dist/stores/event-store.js.map +1 -0
  149. package/dist/utils/format.d.ts +1 -0
  150. package/dist/utils/format.d.ts.map +1 -0
  151. package/dist/utils/format.js +11 -0
  152. package/dist/utils/format.js.map +1 -0
  153. package/package.json +7 -7
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LLMCallsPage.js","sourceRoot":"","sources":["../../../../src/components/debug/pages/LLMCallsPage.tsx"],"names":[],"mappings":"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"}
@@ -1 +1,2 @@
1
1
  export declare function LogsPage(): import("react/jsx-runtime").JSX.Element | null;
2
+ //# sourceMappingURL=LogsPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LogsPage.d.ts","sourceRoot":"","sources":["../../../../src/components/debug/pages/LogsPage.tsx"],"names":[],"mappings":"AA6CA,wBAAgB,QAAQ,mDAyJvB"}
@@ -0,0 +1,107 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useCallback, useEffect, useRef, useState } from "react";
3
+ import { api } from "@roj-ai/client";
4
+ import { useDebugSessionId } from "../DebugNavigation";
5
+ const LOG_LEVELS = ["debug", "info", "warn", "error"];
6
+ const LEVEL_STYLES = {
7
+ debug: "text-slate-400",
8
+ info: "text-slate-700",
9
+ warn: "text-yellow-700 bg-yellow-50",
10
+ error: "text-red-700 bg-red-50",
11
+ };
12
+ const BADGE_STYLES = {
13
+ debug: "bg-slate-100 text-slate-500",
14
+ info: "bg-blue-100 text-blue-700",
15
+ warn: "bg-yellow-100 text-yellow-700",
16
+ error: "bg-red-100 text-red-700",
17
+ };
18
+ function parseLogEntry(line) {
19
+ try {
20
+ const parsed = JSON.parse(line);
21
+ return {
22
+ timestamp: parsed.timestamp ?? "",
23
+ level: (LOG_LEVELS.includes(parsed.level)
24
+ ? parsed.level
25
+ : "info"),
26
+ message: parsed.message ?? "",
27
+ ...parsed,
28
+ };
29
+ }
30
+ catch {
31
+ return null;
32
+ }
33
+ }
34
+ export function LogsPage() {
35
+ const sessionId = useDebugSessionId();
36
+ const [entries, setEntries] = useState([]);
37
+ const [offset, setOffset] = useState(0);
38
+ const [minLevel, setMinLevel] = useState("debug");
39
+ const [expandedRows, setExpandedRows] = useState(new Set());
40
+ const containerRef = useRef(null);
41
+ const autoScrollRef = useRef(true);
42
+ const poll = useCallback(async () => {
43
+ if (!sessionId)
44
+ return;
45
+ try {
46
+ const result = await api.call("logs.tail", { sessionId, since: offset });
47
+ if (!result.ok)
48
+ return;
49
+ const data = result.value;
50
+ if (data.lines.length > 0) {
51
+ const newEntries = data.lines
52
+ .map(parseLogEntry)
53
+ .filter((e) => e !== null);
54
+ setEntries((prev) => [...prev, ...newEntries]);
55
+ }
56
+ setOffset(data.offset);
57
+ }
58
+ catch {
59
+ // ignore fetch errors
60
+ }
61
+ }, [sessionId, offset]);
62
+ useEffect(() => {
63
+ poll();
64
+ const interval = setInterval(poll, 2000);
65
+ return () => clearInterval(interval);
66
+ }, [poll]);
67
+ // Auto-scroll
68
+ useEffect(() => {
69
+ if (autoScrollRef.current && containerRef.current) {
70
+ containerRef.current.scrollTop = containerRef.current.scrollHeight;
71
+ }
72
+ });
73
+ const handleScroll = () => {
74
+ const el = containerRef.current;
75
+ if (!el)
76
+ return;
77
+ const atBottom = el.scrollHeight - el.scrollTop - el.clientHeight < 40;
78
+ autoScrollRef.current = atBottom;
79
+ };
80
+ const toggleRow = (index) => {
81
+ setExpandedRows((prev) => {
82
+ const next = new Set(prev);
83
+ if (next.has(index)) {
84
+ next.delete(index);
85
+ }
86
+ else {
87
+ next.add(index);
88
+ }
89
+ return next;
90
+ });
91
+ };
92
+ if (!sessionId)
93
+ return null;
94
+ const minLevelIndex = LOG_LEVELS.indexOf(minLevel);
95
+ const filtered = entries.filter((e) => LOG_LEVELS.indexOf(e.level) >= minLevelIndex);
96
+ return (_jsxs("div", { className: "flex flex-col h-full gap-3", children: [_jsxs("div", { className: "flex items-center gap-4 text-sm shrink-0", children: [_jsxs("span", { className: "text-slate-600", children: [_jsx("span", { className: "font-medium text-slate-900", children: filtered.length }), filtered.length !== entries.length && (_jsxs("span", { className: "text-slate-400", children: [" / ", entries.length] })), " ", "lines"] }), _jsxs("label", { className: "flex items-center gap-2 text-slate-600", children: ["Min level:", _jsx("select", { value: minLevel, onChange: (e) => setMinLevel(e.target.value), className: "text-sm border border-slate-300 rounded px-2 py-1 bg-white", children: LOG_LEVELS.map((l) => (_jsx("option", { value: l, children: l }, l))) })] }), _jsx("span", { className: `text-xs px-2 py-0.5 rounded-full ${autoScrollRef.current ? "bg-green-100 text-green-700" : "bg-slate-100 text-slate-500"}`, children: autoScrollRef.current ? "auto-scroll on" : "auto-scroll off" })] }), _jsx("div", { ref: containerRef, onScroll: handleScroll, className: "flex-1 overflow-auto bg-white rounded-md border border-slate-200 font-mono text-xs", children: entries.length === 0 ? (_jsx("div", { className: "p-4 text-slate-500 text-sm font-sans", children: "No log entries yet" })) : (_jsx("table", { className: "w-full", children: _jsx("tbody", { children: filtered.map((entry) => {
97
+ const globalIndex = entries.indexOf(entry);
98
+ const expanded = expandedRows.has(globalIndex);
99
+ const { timestamp, level, message, ...context } = entry;
100
+ const hasContext = Object.keys(context).length > 0;
101
+ const time = timestamp
102
+ ? new Date(timestamp).toLocaleTimeString()
103
+ : "";
104
+ return (_jsxs("tr", { onClick: () => hasContext && toggleRow(globalIndex), className: `border-b border-slate-100 align-top ${LEVEL_STYLES[level]} ${hasContext ? "cursor-pointer hover:bg-slate-50" : ""}`, children: [_jsx("td", { className: "px-2 py-1 text-slate-400 whitespace-nowrap w-0", children: time }), _jsx("td", { className: "px-2 py-1 w-0", children: _jsx("span", { className: `px-1.5 py-0.5 rounded text-[10px] font-semibold uppercase ${BADGE_STYLES[level]}`, children: level }) }), _jsxs("td", { className: "px-2 py-1 break-all", children: [_jsx("div", { children: message }), expanded && hasContext && (_jsx("pre", { className: "mt-1 p-2 bg-slate-50 rounded border border-slate-200 text-[11px] whitespace-pre-wrap break-words", children: JSON.stringify(context, null, 2) }))] })] }, globalIndex));
105
+ }) }) })) })] }));
106
+ }
107
+ //# sourceMappingURL=LogsPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LogsPage.js","sourceRoot":"","sources":["../../../../src/components/debug/pages/LogsPage.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjE,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAWvD,MAAM,UAAU,GAAe,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AAElE,MAAM,YAAY,GAA6B;IAC9C,KAAK,EAAE,gBAAgB;IACvB,IAAI,EAAE,gBAAgB;IACtB,IAAI,EAAE,8BAA8B;IACpC,KAAK,EAAE,wBAAwB;CAC/B,CAAC;AAEF,MAAM,YAAY,GAA6B;IAC9C,KAAK,EAAE,6BAA6B;IACpC,IAAI,EAAE,2BAA2B;IACjC,IAAI,EAAE,+BAA+B;IACrC,KAAK,EAAE,yBAAyB;CAChC,CAAC;AAEF,SAAS,aAAa,CAAC,IAAY;IAClC,IAAI,CAAC;QACJ,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAA4B,CAAC;QAC3D,OAAO;YACN,SAAS,EAAG,MAAM,CAAC,SAAoB,IAAI,EAAE;YAC7C,KAAK,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAiB,CAAC;gBACpD,CAAC,CAAC,MAAM,CAAC,KAAK;gBACd,CAAC,CAAC,MAAM,CAAa;YACtB,OAAO,EAAG,MAAM,CAAC,OAAkB,IAAI,EAAE;YACzC,GAAG,MAAM;SACT,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED,MAAM,UAAU,QAAQ;IACvB,MAAM,SAAS,GAAG,iBAAiB,EAAE,CAAC;IACtC,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAa,EAAE,CAAC,CAAC;IACvD,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACxC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAW,OAAO,CAAC,CAAC;IAC5D,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAc,IAAI,GAAG,EAAE,CAAC,CAAC;IACzE,MAAM,YAAY,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAClD,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAEnC,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QACnC,IAAI,CAAC,SAAS;YAAE,OAAO;QACvB,IAAI,CAAC;YACJ,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;YACzE,IAAI,CAAC,MAAM,CAAC,EAAE;gBAAE,OAAO;YACvB,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC;YAC1B,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3B,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK;qBAC3B,GAAG,CAAC,aAAa,CAAC;qBAClB,MAAM,CAAC,CAAC,CAAkB,EAAiB,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;gBAC5D,UAAU,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC;YAChD,CAAC;YACD,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACxB,CAAC;QAAC,MAAM,CAAC;YACR,sBAAsB;QACvB,CAAC;IACF,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;IAExB,SAAS,CAAC,GAAG,EAAE;QACd,IAAI,EAAE,CAAC;QACP,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACzC,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IACtC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEX,cAAc;IACd,SAAS,CAAC,GAAG,EAAE;QACd,IAAI,aAAa,CAAC,OAAO,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;YACnD,YAAY,CAAC,OAAO,CAAC,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC,YAAY,CAAC;QACpE,CAAC;IACF,CAAC,CAAC,CAAC;IAEH,MAAM,YAAY,GAAG,GAAG,EAAE;QACzB,MAAM,EAAE,GAAG,YAAY,CAAC,OAAO,CAAC;QAChC,IAAI,CAAC,EAAE;YAAE,OAAO;QAChB,MAAM,QAAQ,GAAG,EAAE,CAAC,YAAY,GAAG,EAAE,CAAC,SAAS,GAAG,EAAE,CAAC,YAAY,GAAG,EAAE,CAAC;QACvE,aAAa,CAAC,OAAO,GAAG,QAAQ,CAAC;IAClC,CAAC,CAAC;IAEF,MAAM,SAAS,GAAG,CAAC,KAAa,EAAE,EAAE;QACnC,eAAe,CAAC,CAAC,IAAI,EAAE,EAAE;YACxB,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC;YAC3B,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBACrB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACpB,CAAC;iBAAM,CAAC;gBACP,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACjB,CAAC;YACD,OAAO,IAAI,CAAC;QACb,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC;IAEF,IAAI,CAAC,SAAS;QAAE,OAAO,IAAI,CAAC;IAE5B,MAAM,aAAa,GAAG,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACnD,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAC9B,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,aAAa,CACnD,CAAC;IAEF,OAAO,CACN,eAAK,SAAS,EAAC,4BAA4B,aAE1C,eAAK,SAAS,EAAC,0CAA0C,aACxD,gBAAM,SAAS,EAAC,gBAAgB,aAC/B,eAAM,SAAS,EAAC,4BAA4B,YAAE,QAAQ,CAAC,MAAM,GAAQ,EACpE,QAAQ,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,IAAI,CACtC,gBAAM,SAAS,EAAC,gBAAgB,oBAAK,OAAO,CAAC,MAAM,IAAQ,CAC3D,EAAE,GAAG,aAEA,EACP,iBAAO,SAAS,EAAC,wCAAwC,2BAExD,iBACC,KAAK,EAAE,QAAQ,EACf,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,KAAiB,CAAC,EACxD,SAAS,EAAC,4DAA4D,YAErE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACtB,iBAAgB,KAAK,EAAE,CAAC,YACtB,CAAC,IADU,CAAC,CAEL,CACT,CAAC,GACM,IACF,EACR,eACC,SAAS,EAAE,oCAAoC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CAAC,6BAA6B,EAAE,YAErI,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,iBAAiB,GACvD,IACF,EAGN,cACC,GAAG,EAAE,YAAY,EACjB,QAAQ,EAAE,YAAY,EACtB,SAAS,EAAC,oFAAoF,YAE7F,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CACvB,cAAK,SAAS,EAAC,sCAAsC,mCAE/C,CACN,CAAC,CAAC,CAAC,CACH,gBAAO,SAAS,EAAC,QAAQ,YACxB,0BACE,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;4BACvB,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;4BAC3C,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;4BAC/C,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE,GAAG,KAAK,CAAC;4BACxD,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;4BACnD,MAAM,IAAI,GAAG,SAAS;gCACrB,CAAC,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,kBAAkB,EAAE;gCAC1C,CAAC,CAAC,EAAE,CAAC;4BAEN,OAAO,CACN,cAEC,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,IAAI,SAAS,CAAC,WAAW,CAAC,EACnD,SAAS,EAAE,uCAAuC,YAAY,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,kCAAkC,CAAC,CAAC,CAAC,EAAE,EAAE,aAE/H,aAAI,SAAS,EAAC,gDAAgD,YAC5D,IAAI,GACD,EACL,aAAI,SAAS,EAAC,eAAe,YAC5B,eACC,SAAS,EAAE,6DAA6D,YAAY,CAAC,KAAK,CAAC,EAAE,YAE5F,KAAK,GACA,GACH,EACL,cAAI,SAAS,EAAC,qBAAqB,aAClC,wBAAM,OAAO,GAAO,EACnB,QAAQ,IAAI,UAAU,IAAI,CAC1B,cAAK,SAAS,EAAC,kGAAkG,YAC/G,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,GAC5B,CACN,IACG,KArBA,WAAW,CAsBZ,CACL,CAAC;wBACH,CAAC,CAAC,GACK,GACD,CACR,GACI,IACD,CACN,CAAC;AACH,CAAC"}
@@ -1 +1,2 @@
1
1
  export declare function MailboxPage(): import("react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=MailboxPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MailboxPage.d.ts","sourceRoot":"","sources":["../../../../src/components/debug/pages/MailboxPage.tsx"],"names":[],"mappings":"AAKA,wBAAgB,WAAW,4CAkF1B"}
@@ -0,0 +1,60 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useState } from 'react';
3
+ import { useEventStore, useGlobalMailbox } from '../../../stores/event-store';
4
+ import { DebugLink } from '../DebugNavigation';
5
+ export function MailboxPage() {
6
+ // Get mailbox from event store (already loaded by DebugLayout)
7
+ const messages = useGlobalMailbox();
8
+ const isLoading = useEventStore((s) => s.isLoading);
9
+ const error = useEventStore((s) => s.error);
10
+ const [expandedIds, setExpandedIds] = useState(new Set());
11
+ const toggleExpanded = (id) => {
12
+ setExpandedIds((prev) => {
13
+ const next = new Set(prev);
14
+ if (next.has(id)) {
15
+ next.delete(id);
16
+ }
17
+ else {
18
+ next.add(id);
19
+ }
20
+ return next;
21
+ });
22
+ };
23
+ // Calculate stats
24
+ const total = messages.length;
25
+ const pendingCount = messages.filter((m) => !m.consumed).length;
26
+ const consumedCount = messages.filter((m) => m.consumed).length;
27
+ return (_jsxs("div", { className: "space-y-4", children: [_jsxs("div", { className: "flex items-center gap-6 text-sm", children: [_jsxs("span", { className: "text-slate-600", children: [_jsx("span", { className: "font-medium text-slate-900", children: total }), " messages"] }), _jsxs("span", { className: "text-slate-600", children: [_jsx("span", { className: "font-medium text-green-600", children: consumedCount }), " read"] }), pendingCount > 0 && (_jsxs("span", { className: "text-slate-600", children: [_jsx("span", { className: "font-medium text-blue-600", children: pendingCount }), " pending"] }))] }), error && _jsx("div", { className: "text-red-500 text-sm", children: error }), isLoading && messages.length === 0 && _jsx("div", { className: "text-slate-500 text-sm", children: "Loading mailbox..." }), messages.length > 0 && (_jsx("div", { className: "bg-white rounded-md border border-slate-200 overflow-hidden", children: _jsx("div", { className: "overflow-x-auto", children: _jsxs("table", { className: "w-full text-sm", children: [_jsx("thead", { className: "bg-slate-50 border-b border-slate-200", children: _jsxs("tr", { children: [_jsx("th", { className: "px-3 py-2 text-left font-medium text-slate-600", children: "From" }), _jsx("th", { className: "px-3 py-2 text-center font-medium text-slate-600 w-8" }), _jsx("th", { className: "px-3 py-2 text-left font-medium text-slate-600", children: "To" }), _jsx("th", { className: "px-3 py-2 text-left font-medium text-slate-600", children: "Message" }), _jsx("th", { className: "px-3 py-2 text-left font-medium text-slate-600", children: "Time" }), _jsx("th", { className: "px-3 py-2 text-center font-medium text-slate-600", children: "Status" })] }) }), _jsx("tbody", { className: "divide-y divide-slate-200", children: messages.map((msg) => (_jsx(MessageRow, { message: msg, isExpanded: expandedIds.has(msg.id), onToggleExpand: () => toggleExpanded(msg.id) }, msg.id))) })] }) }) })), !isLoading && messages.length === 0 && _jsx("div", { className: "text-slate-500 text-sm", children: "No messages found" })] }));
28
+ }
29
+ function MessageRow({ message, isExpanded, onToggleExpand, }) {
30
+ const isLongMessage = message.content.length > 100;
31
+ const displayContent = isExpanded
32
+ ? message.content
33
+ : message.content.slice(0, 100) + (isLongMessage ? '...' : '');
34
+ return (_jsxs("tr", { className: "hover:bg-slate-50", children: [_jsx("td", { className: "px-3 py-2", children: _jsx(AgentBadge, { agentId: message.fromAgentId, agentName: message.fromAgentName }) }), _jsx("td", { className: "px-3 py-2 text-center text-slate-400", children: _jsx(ArrowIcon, {}) }), _jsx("td", { className: "px-3 py-2", children: _jsx(AgentBadge, { agentId: message.toAgentId, agentName: message.toAgentName }) }), _jsx("td", { className: "px-3 py-2", children: _jsxs("div", { className: `text-slate-700 ${isLongMessage ? 'cursor-pointer' : ''}`, onClick: isLongMessage ? onToggleExpand : undefined, children: [_jsx("span", { className: "whitespace-pre-wrap break-words", children: displayContent }), isLongMessage && (_jsx("button", { onClick: (e) => {
35
+ e.stopPropagation();
36
+ onToggleExpand();
37
+ }, className: "ml-2 text-violet-600 hover:text-violet-800 text-xs", children: isExpanded ? 'less' : 'more' }))] }) }), _jsx("td", { className: "px-3 py-2 font-mono text-xs text-slate-500 whitespace-nowrap", children: new Date(message.timestamp).toLocaleTimeString() }), _jsx("td", { className: "px-3 py-2 text-center", children: _jsx(StatusBadge, { consumed: message.consumed }) })] }));
38
+ }
39
+ function AgentBadge({ agentId, agentName, }) {
40
+ const isSpecial = agentId === 'user' || agentId === 'orchestrator' || agentId === 'communicator';
41
+ if (isSpecial) {
42
+ return (_jsx("span", { className: `inline-flex items-center gap-1 px-2 py-0.5 rounded text-xs font-medium ${agentId === 'user'
43
+ ? 'bg-blue-100 text-blue-700'
44
+ : 'bg-purple-100 text-purple-700'}`, children: _jsx("span", { className: "truncate max-w-24", title: agentName, children: agentName }) }));
45
+ }
46
+ return (_jsx(DebugLink, { to: `agents/${agentId}`, className: "inline-flex items-center gap-1 px-2 py-0.5 rounded text-xs font-medium bg-slate-100 text-slate-700 hover:bg-slate-200", children: _jsx("span", { className: "truncate max-w-24", title: agentName, children: agentName }) }));
47
+ }
48
+ function StatusBadge({ consumed }) {
49
+ if (consumed) {
50
+ return (_jsxs("span", { className: "inline-flex items-center gap-1 text-xs text-slate-500", children: [_jsx(CheckIcon, {}), _jsx("span", { children: "Read" })] }));
51
+ }
52
+ return (_jsxs("span", { className: "inline-flex items-center gap-1 text-xs text-blue-600", children: [_jsx("span", { className: "w-2 h-2 rounded-full bg-blue-500 animate-pulse" }), _jsx("span", { children: "Pending" })] }));
53
+ }
54
+ function ArrowIcon() {
55
+ return (_jsx("svg", { className: "w-4 h-4 inline", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: _jsx("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M14 5l7 7m0 0l-7 7m7-7H3" }) }));
56
+ }
57
+ function CheckIcon() {
58
+ return (_jsx("svg", { className: "w-3 h-3", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: _jsx("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M5 13l4 4L19 7" }) }));
59
+ }
60
+ //# sourceMappingURL=MailboxPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MailboxPage.js","sourceRoot":"","sources":["../../../../src/components/debug/pages/MailboxPage.tsx"],"names":[],"mappings":"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"}
@@ -1 +1,2 @@
1
1
  export declare function ServicesPage(): import("react/jsx-runtime").JSX.Element | null;
2
+ //# sourceMappingURL=ServicesPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ServicesPage.d.ts","sourceRoot":"","sources":["../../../../src/components/debug/pages/ServicesPage.tsx"],"names":[],"mappings":"AAoBA,wBAAgB,YAAY,mDAuC3B"}
@@ -0,0 +1,91 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { useCallback, useState } from 'react';
3
+ import { api } from '@roj-ai/client';
4
+ import { useDebugSessionId } from '../DebugNavigation';
5
+ import { useEventStore } from '../../../stores/event-store';
6
+ const statusColors = {
7
+ stopped: 'bg-slate-100 text-slate-700',
8
+ starting: 'bg-yellow-100 text-yellow-700',
9
+ ready: 'bg-green-100 text-green-700',
10
+ stopping: 'bg-orange-100 text-orange-700',
11
+ failed: 'bg-red-100 text-red-700',
12
+ paused: 'bg-blue-100 text-blue-700',
13
+ };
14
+ function formatTimestamp(ts) {
15
+ if (ts === undefined)
16
+ return '-';
17
+ return new Date(ts).toLocaleTimeString();
18
+ }
19
+ export function ServicesPage() {
20
+ const sessionId = useDebugSessionId();
21
+ const services = useEventStore((s) => s.servicesProjectionState.services);
22
+ if (!sessionId)
23
+ return null;
24
+ if (services.size === 0) {
25
+ return (_jsx("div", { className: "bg-white rounded-md border border-slate-200 p-8 text-center text-slate-500 text-sm", children: "No services configured" }));
26
+ }
27
+ return (_jsx("div", { className: "flex flex-col gap-4", children: _jsx("div", { className: "bg-white rounded-md border border-slate-200 overflow-hidden", children: _jsxs("table", { className: "w-full text-sm", children: [_jsx("thead", { children: _jsxs("tr", { className: "border-b border-slate-200 bg-slate-50 text-left text-xs font-medium text-slate-500 uppercase tracking-wider", children: [_jsx("th", { className: "px-4 py-3", children: "Service" }), _jsx("th", { className: "px-4 py-3", children: "Status" }), _jsx("th", { className: "px-4 py-3", children: "Port" }), _jsx("th", { className: "px-4 py-3", children: "Started" }), _jsx("th", { className: "px-4 py-3", children: "Ready" }), _jsx("th", { className: "px-4 py-3", children: "Stopped" }), _jsx("th", { className: "px-4 py-3", children: "Error" }), _jsx("th", { className: "px-4 py-3", children: "Actions" })] }) }), _jsx("tbody", { className: "divide-y divide-slate-100", children: [...services.entries()].map(([key, entry]) => (_jsx(ServiceRow, { entry: entry, sessionId: sessionId }, key))) })] }) }) }));
28
+ }
29
+ function ServiceRow({ entry, sessionId }) {
30
+ const [loading, setLoading] = useState(null);
31
+ const [error, setError] = useState(null);
32
+ const [logs, setLogs] = useState(null);
33
+ const callAction = useCallback(async (action) => {
34
+ setLoading(action);
35
+ setError(null);
36
+ try {
37
+ const result = action === 'start'
38
+ ? await api.call('services.start', { sessionId, serviceType: entry.serviceType })
39
+ : action === 'stop'
40
+ ? await api.call('services.stop', { sessionId, serviceType: entry.serviceType })
41
+ : await api.call('services.restart', { sessionId, serviceType: entry.serviceType });
42
+ if (!result.ok) {
43
+ setError(result.error.message);
44
+ }
45
+ }
46
+ catch (e) {
47
+ setError(e instanceof Error ? e.message : 'Unknown error');
48
+ }
49
+ finally {
50
+ setLoading(null);
51
+ }
52
+ }, [sessionId, entry.serviceType]);
53
+ const fetchLogs = useCallback(async () => {
54
+ if (logs !== null) {
55
+ setLogs(null);
56
+ return;
57
+ }
58
+ setLoading('logs');
59
+ setError(null);
60
+ try {
61
+ const result = await api.call('services.logs', { sessionId, serviceType: entry.serviceType, lines: 100 });
62
+ if (result.ok) {
63
+ setLogs(result.value.lines);
64
+ }
65
+ else {
66
+ setError(result.error.message);
67
+ }
68
+ }
69
+ catch (e) {
70
+ setError(e instanceof Error ? e.message : 'Unknown error');
71
+ }
72
+ finally {
73
+ setLoading(null);
74
+ }
75
+ }, [sessionId, entry.serviceType, logs]);
76
+ const isRunning = entry.status === 'ready' || entry.status === 'starting';
77
+ const isStopped = entry.status === 'stopped' || entry.status === 'failed';
78
+ return (_jsxs(_Fragment, { children: [_jsxs("tr", { className: "hover:bg-slate-50 transition-colors", children: [_jsx("td", { className: "px-4 py-3 font-mono font-medium text-slate-900", children: entry.serviceType }), _jsx("td", { className: "px-4 py-3", children: _jsx("span", { className: `inline-block text-xs px-2 py-0.5 rounded-full font-medium ${statusColors[entry.status]}`, children: entry.status }) }), _jsx("td", { className: "px-4 py-3 font-mono text-slate-600", children: entry.port ?? '-' }), _jsx("td", { className: "px-4 py-3 text-slate-500", children: formatTimestamp(entry.startedAt) }), _jsx("td", { className: "px-4 py-3 text-slate-500", children: formatTimestamp(entry.readyAt) }), _jsx("td", { className: "px-4 py-3 text-slate-500", children: formatTimestamp(entry.stoppedAt) }), _jsx("td", { className: "px-4 py-3 text-red-600 text-xs", children: entry.error ?? '-' }), _jsxs("td", { className: "px-4 py-3", children: [_jsxs("div", { className: "flex items-center gap-1.5", children: [isStopped && (_jsx(ActionButton, { onClick: () => callAction('start'), loading: loading === 'start', color: "green", children: "Start" })), isRunning && (_jsx(ActionButton, { onClick: () => callAction('stop'), loading: loading === 'stop', color: "red", children: "Stop" })), isRunning && (_jsx(ActionButton, { onClick: () => callAction('restart'), loading: loading === 'restart', color: "yellow", children: "Restart" })), _jsx(ActionButton, { onClick: fetchLogs, loading: loading === 'logs', color: "slate", active: logs !== null, children: "Logs" })] }), error && _jsx("div", { className: "mt-1 text-xs text-red-600", children: error })] })] }), logs !== null && (_jsx("tr", { children: _jsx("td", { colSpan: 8, className: "px-4 py-2 bg-slate-900", children: _jsx("div", { className: "max-h-80 overflow-auto font-mono text-xs text-slate-300 whitespace-pre-wrap", children: logs.length === 0
79
+ ? _jsx("span", { className: "text-slate-500", children: "No logs available" })
80
+ : logs.join('\n') }) }) }))] }));
81
+ }
82
+ const buttonColors = {
83
+ green: 'bg-green-50 text-green-700 hover:bg-green-100 border-green-200',
84
+ red: 'bg-red-50 text-red-700 hover:bg-red-100 border-red-200',
85
+ yellow: 'bg-yellow-50 text-yellow-700 hover:bg-yellow-100 border-yellow-200',
86
+ slate: 'bg-slate-50 text-slate-700 hover:bg-slate-100 border-slate-200',
87
+ };
88
+ function ActionButton({ onClick, loading, color, active, children, }) {
89
+ return (_jsx("button", { onClick: onClick, disabled: loading, className: `px-2 py-1 text-xs font-medium rounded border transition-colors disabled:opacity-50 ${active ? 'ring-1 ring-offset-1 ring-slate-400' : ''} ${buttonColors[color]}`, children: loading ? '...' : children }));
90
+ }
91
+ //# sourceMappingURL=ServicesPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ServicesPage.js","sourceRoot":"","sources":["../../../../src/components/debug/pages/ServicesPage.tsx"],"names":[],"mappings":"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"}
@@ -1 +1,2 @@
1
1
  export declare function TimelinePage(): import("react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=TimelinePage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TimelinePage.d.ts","sourceRoot":"","sources":["../../../../src/components/debug/pages/TimelinePage.tsx"],"names":[],"mappings":"AAMA,wBAAgB,YAAY,4CA+F3B"}
@@ -0,0 +1,101 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useState } from 'react';
3
+ import { DebugLink, useDebugSessionId } from '../DebugNavigation';
4
+ import { useEventStore, useTimeline } from '../../../stores/event-store';
5
+ import { LLMCallDetail } from '../LLMCallDetail';
6
+ export function TimelinePage() {
7
+ const sessionId = useDebugSessionId();
8
+ // Get timeline from event store (already loaded by DebugLayout)
9
+ const items = useTimeline();
10
+ const isLoading = useEventStore((s) => s.isLoading);
11
+ const error = useEventStore((s) => s.error);
12
+ const [selectedId, setSelectedId] = useState(null);
13
+ const selectedItem = selectedId ? items.find((i) => i.id === selectedId) : null;
14
+ const total = items.length;
15
+ // Calculate stats
16
+ const llmCount = items.filter((i) => i.type === 'llm').length;
17
+ const toolCount = items.filter((i) => i.type === 'tool').length;
18
+ const compactionCount = items.filter((i) => i.type === 'compaction').length;
19
+ const totalCost = items.reduce((sum, i) => sum + (i.cost ?? 0), 0);
20
+ const totalTokens = items.reduce((sum, i) => sum + (i.promptTokens ?? 0) + (i.completionTokens ?? 0), 0);
21
+ return (_jsxs("div", { className: "h-full flex flex-col gap-4", children: [_jsxs("div", { className: "flex items-center gap-6 text-sm shrink-0", children: [_jsxs("span", { className: "text-slate-600", children: [_jsx("span", { className: "font-medium text-slate-900", children: total }), " items"] }), _jsxs("span", { className: "flex items-center gap-1", children: [_jsx("span", { className: "w-2 h-2 rounded-full bg-violet-500" }), _jsxs("span", { className: "text-slate-600", children: [llmCount, " LLM"] })] }), _jsxs("span", { className: "flex items-center gap-1", children: [_jsx("span", { className: "w-2 h-2 rounded-full bg-emerald-500" }), _jsxs("span", { className: "text-slate-600", children: [toolCount, " Tools"] })] }), _jsxs("span", { className: "flex items-center gap-1", children: [_jsx("span", { className: "w-2 h-2 rounded-full bg-amber-500" }), _jsxs("span", { className: "text-slate-600", children: [compactionCount, " Compactions"] })] }), _jsxs("span", { className: "text-slate-600", children: [_jsx("span", { className: "font-medium text-slate-900", children: totalTokens.toLocaleString() }), " tokens"] }), totalCost > 0 && (_jsxs("span", { className: "text-slate-600", children: [_jsxs("span", { className: "font-medium text-green-600", children: ["$", totalCost.toFixed(4)] }), " cost"] }))] }), error && _jsx("div", { className: "text-red-500 text-sm shrink-0", children: error }), isLoading && items.length === 0 && _jsx("div", { className: "text-slate-500 text-sm", children: "Loading timeline..." }), items.length > 0 && (_jsxs("div", { className: "flex-1 flex gap-4 min-h-0", children: [_jsxs("div", { className: "w-96 shrink-0 bg-white rounded-md border border-slate-200 flex flex-col", children: [_jsx("div", { className: "p-3 border-b border-slate-200 shrink-0", children: _jsx("h3", { className: "font-medium text-slate-900", children: "Event Timeline" }) }), _jsx("div", { className: "flex-1 overflow-auto p-3", children: _jsx(TimelineList, { items: items, selectedId: selectedId, onSelect: setSelectedId }) })] }), _jsxs("div", { className: "flex-1 bg-white rounded-md border border-slate-200 flex flex-col min-w-0", children: [_jsx("div", { className: "p-3 border-b border-slate-200 shrink-0", children: _jsx("h3", { className: "font-medium text-slate-900", children: "Detail Inspector" }) }), _jsx("div", { className: "flex-1 overflow-auto p-4", children: selectedItem ? _jsx(TimelineDetail, { sessionId: sessionId, item: selectedItem }) : (_jsx("div", { className: "text-slate-500 text-sm", children: "Select an item from the timeline to view details" })) })] })] })), !isLoading && items.length === 0 && _jsx("div", { className: "text-slate-500 text-sm", children: "No timeline items found" })] }));
22
+ }
23
+ function TimelineList({ items, selectedId, onSelect, }) {
24
+ return (_jsxs("div", { className: "relative", children: [_jsx("div", { className: "absolute left-3 top-0 bottom-0 w-0.5 bg-slate-200" }), _jsx("div", { className: "space-y-2", children: items.map((item) => (_jsx(TimelineItemRow, { item: item, isSelected: selectedId === item.id, onClick: () => onSelect(item.id) }, item.id))) })] }));
25
+ }
26
+ function TimelineItemRow({ item, isSelected, onClick, }) {
27
+ const typeConfig = getTypeConfig(item.type);
28
+ return (_jsxs("div", { onClick: onClick, className: `relative pl-8 py-2 pr-3 rounded-md cursor-pointer transition-colors ${isSelected
29
+ ? 'bg-violet-50 border border-violet-200'
30
+ : 'hover:bg-slate-50 border border-transparent'}`, children: [_jsx("div", { className: `absolute left-1 top-3 w-5 h-5 rounded-full flex items-center justify-center ${item.status === 'running'
31
+ ? `${typeConfig.bgLight} animate-pulse`
32
+ : item.status === 'error'
33
+ ? 'bg-red-100'
34
+ : typeConfig.bgLight}`, children: item.status === 'running'
35
+ ? _jsx("span", { className: "w-2 h-2 rounded-full bg-blue-500" })
36
+ : item.status === 'error'
37
+ ? _jsx("span", { className: "text-red-500 text-xs", children: "!" })
38
+ : _jsx(typeConfig.Icon, {}) }), _jsxs("div", { className: "min-w-0", children: [_jsxs("div", { className: "flex items-center gap-2", children: [_jsx("span", { className: "font-mono text-xs text-slate-500", children: new Date(item.startedAt).toLocaleTimeString() }), _jsx(TypeBadge, { type: item.type }), item.status === 'running' && _jsx("span", { className: "text-xs text-violet-600 font-medium", children: "Running..." }), item.status === 'error' && _jsx("span", { className: "text-xs text-red-600 font-medium", children: "Error" })] }), _jsxs("div", { className: "mt-1 font-medium text-sm truncate", children: [item.type === 'llm' && (item.model?.split('/').pop() ?? 'LLM Call'), item.type === 'tool' && (item.toolName ?? 'Tool'), item.type === 'compaction' && 'Context Compaction'] }), _jsx("div", { className: "text-xs text-slate-500", children: _jsx(DebugLink, { to: `agents/${item.agentId}`, className: "hover:text-violet-600 hover:underline", children: item.agentName }) }), _jsxs("div", { className: "mt-1 flex items-center gap-3 text-xs text-slate-500", children: [item.durationMs !== undefined && _jsxs("span", { children: [(item.durationMs / 1000).toFixed(2), "s"] }), item.type === 'llm' && item.promptTokens !== undefined && (_jsxs("span", { children: [_jsx("span", { className: "text-green-600", children: item.promptTokens }), _jsx("span", { className: "text-slate-400", children: "/" }), _jsx("span", { className: "text-violet-600", children: item.completionTokens ?? 0 })] })), item.type === 'llm' && item.cost !== undefined && _jsxs("span", { className: "text-green-600", children: ["$", item.cost.toFixed(5)] })] })] })] }));
39
+ }
40
+ function TimelineDetail({ sessionId, item, }) {
41
+ // For LLM items with llmCallId, embed the full LLMCallDetail
42
+ if (item.type === 'llm' && item.llmCallId) {
43
+ return (_jsxs("div", { className: "space-y-4", children: [_jsxs("div", { className: "flex items-center justify-between", children: [_jsxs("div", { className: "flex items-center gap-3", children: [_jsx(TypeBadge, { type: item.type }), _jsx("span", { className: "font-medium", children: item.model?.split('/').pop() ?? 'LLM Call' }), item.status === 'error' && _jsx("span", { className: "text-xs bg-red-100 text-red-700 px-2 py-0.5 rounded-full font-medium", children: "Error" }), item.status === 'running' && (_jsx("span", { className: "text-xs bg-blue-100 text-blue-700 px-2 py-0.5 rounded-full font-medium animate-pulse", children: "Running" }))] }), _jsx(DebugLink, { to: `llm-calls/${item.llmCallId}`, className: "text-sm text-violet-600 hover:underline", children: "Open full page \u2192" })] }), _jsx(LLMCallDetail, { sessionId: sessionId, callId: item.llmCallId })] }));
44
+ }
45
+ // For LLM items without llmCallId, show what we have from the timeline item
46
+ if (item.type === 'llm') {
47
+ return (_jsxs("div", { className: "space-y-4", children: [_jsxs("div", { className: "flex items-center gap-3", children: [_jsx(TypeBadge, { type: item.type }), _jsx("span", { className: "font-medium", children: item.model?.split('/').pop() ?? 'LLM Call' }), item.status === 'error' && _jsx("span", { className: "text-xs bg-red-100 text-red-700 px-2 py-0.5 rounded-full font-medium", children: "Error" }), item.status === 'running' && (_jsx("span", { className: "text-xs bg-blue-100 text-blue-700 px-2 py-0.5 rounded-full font-medium animate-pulse", children: "Running" }))] }), _jsxs("div", { className: "grid grid-cols-2 md:grid-cols-4 gap-3 text-sm", children: [_jsx(MetricCard, { label: "Agent", children: _jsx(DebugLink, { to: `agents/${item.agentId}`, className: "text-violet-600 hover:underline", children: item.agentName }) }), item.model && (_jsx(MetricCard, { label: "Model", children: _jsx("span", { className: "font-mono text-xs", children: item.model }) })), item.durationMs !== undefined && _jsxs(MetricCard, { label: "Duration", children: [(item.durationMs / 1000).toFixed(2), "s"] }), item.cost !== undefined && (_jsx(MetricCard, { label: "Cost", children: _jsxs("span", { className: "text-green-600", children: ["$", item.cost.toFixed(6)] }) }))] }), (item.promptTokens !== undefined || item.completionTokens !== undefined) && (_jsxs("div", { className: "bg-violet-50 border border-violet-200 rounded-md p-4", children: [_jsx("h3", { className: "font-medium text-violet-800 mb-3", children: "Token Usage" }), _jsxs("div", { className: "grid grid-cols-3 gap-4 text-sm", children: [_jsxs("div", { children: [_jsx("div", { className: "text-xs text-violet-600 mb-1", children: "Prompt" }), _jsx("div", { className: "font-mono font-medium text-green-600", children: (item.promptTokens ?? 0).toLocaleString() })] }), _jsxs("div", { children: [_jsx("div", { className: "text-xs text-violet-600 mb-1", children: "Completion" }), _jsx("div", { className: "font-mono font-medium text-violet-600", children: (item.completionTokens ?? 0).toLocaleString() })] }), _jsxs("div", { children: [_jsx("div", { className: "text-xs text-violet-600 mb-1", children: "Total" }), _jsx("div", { className: "font-mono font-medium", children: ((item.promptTokens ?? 0) + (item.completionTokens ?? 0)).toLocaleString() })] })] })] })), _jsxs("div", { className: "text-xs text-slate-500 space-y-1", children: [_jsxs("div", { children: ["Started: ", new Date(item.startedAt).toLocaleString()] }), item.completedAt && _jsxs("div", { children: ["Completed: ", new Date(item.completedAt).toLocaleString()] })] }), item.error && (_jsxs("div", { className: "bg-red-50 border border-red-200 rounded-md p-4", children: [_jsx("h3", { className: "font-semibold text-red-800 mb-2", children: "Error" }), _jsx("div", { className: "text-red-700 font-mono text-sm whitespace-pre-wrap", children: item.error })] })), _jsx("div", { className: "text-xs text-slate-400 italic", children: "Detailed request/response log not available for this call." })] }));
48
+ }
49
+ // Tool detail
50
+ if (item.type === 'tool') {
51
+ return (_jsxs("div", { className: "space-y-4", children: [_jsxs("div", { className: "flex items-center gap-3", children: [_jsx(TypeBadge, { type: item.type }), _jsx("span", { className: "font-medium font-mono", children: item.toolName ?? 'Tool' }), item.status === 'error' && _jsx("span", { className: "text-xs bg-red-100 text-red-700 px-2 py-0.5 rounded-full font-medium", children: "Error" }), item.status === 'running' && (_jsx("span", { className: "text-xs bg-blue-100 text-blue-700 px-2 py-0.5 rounded-full font-medium animate-pulse", children: "Running" }))] }), _jsxs("div", { className: "grid grid-cols-2 md:grid-cols-4 gap-3 text-sm", children: [_jsx(MetricCard, { label: "Agent", children: _jsx(DebugLink, { to: `agents/${item.agentId}`, className: "text-violet-600 hover:underline", children: item.agentName }) }), item.durationMs !== undefined && _jsxs(MetricCard, { label: "Duration", children: [(item.durationMs / 1000).toFixed(2), "s"] }), _jsx(MetricCard, { label: "Started", children: new Date(item.startedAt).toLocaleTimeString() }), item.completedAt && (_jsx(MetricCard, { label: "Completed", children: new Date(item.completedAt).toLocaleTimeString() }))] }), item.toolInput !== undefined && (_jsxs("div", { className: "border border-slate-200 rounded-md overflow-hidden", children: [_jsx("div", { className: "px-4 py-2 bg-slate-50 border-b border-slate-200", children: _jsx("h3", { className: "text-sm font-medium text-slate-700", children: "Input" }) }), _jsx("div", { className: "p-4 max-h-64 overflow-auto", children: _jsx("pre", { className: "font-mono text-xs whitespace-pre-wrap break-words", children: JSON.stringify(item.toolInput, null, 2) }) })] })), item.toolResult !== undefined && (_jsxs("div", { className: "border border-emerald-200 rounded-md overflow-hidden", children: [_jsx("div", { className: "px-4 py-2 bg-emerald-50 border-b border-emerald-200", children: _jsx("h3", { className: "text-sm font-medium text-emerald-700", children: "Result" }) }), _jsx("div", { className: "p-4 max-h-64 overflow-auto", children: _jsx("pre", { className: "font-mono text-xs whitespace-pre-wrap break-words", children: JSON.stringify(item.toolResult, null, 2) }) })] })), item.error && (_jsxs("div", { className: "bg-red-50 border border-red-200 rounded-md p-4", children: [_jsx("h3", { className: "font-semibold text-red-800 mb-2", children: "Error" }), _jsx("div", { className: "text-red-700 font-mono text-sm whitespace-pre-wrap", children: item.error })] }))] }));
52
+ }
53
+ // Compaction detail
54
+ if (item.type === 'compaction') {
55
+ return (_jsxs("div", { className: "space-y-4", children: [_jsxs("div", { className: "flex items-center gap-3", children: [_jsx(TypeBadge, { type: item.type }), _jsx("span", { className: "font-medium", children: "Context Compaction" })] }), _jsxs("div", { className: "grid grid-cols-2 md:grid-cols-4 gap-3 text-sm", children: [_jsx(MetricCard, { label: "Agent", children: _jsx(DebugLink, { to: `agents/${item.agentId}`, className: "text-violet-600 hover:underline", children: item.agentName }) }), item.originalTokens !== undefined && (_jsx(MetricCard, { label: "Original Tokens", children: item.originalTokens.toLocaleString() })), item.compactedTokens !== undefined && (_jsx(MetricCard, { label: "Compacted Tokens", children: item.compactedTokens.toLocaleString() })), item.messagesRemoved !== undefined && (_jsx(MetricCard, { label: "Messages Removed", children: item.messagesRemoved }))] }), item.originalTokens !== undefined && item.compactedTokens !== undefined && (_jsxs("div", { className: "bg-amber-50 border border-amber-200 rounded-md p-4", children: [_jsx("h3", { className: "font-medium text-amber-800 mb-3", children: "Compression" }), _jsxs("div", { className: "flex items-center gap-4", children: [_jsxs("div", { className: "text-2xl font-bold text-amber-600", children: [Math.round((1 - item.compactedTokens / item.originalTokens) * 100), "%"] }), _jsxs("div", { className: "text-sm text-amber-700", children: ["reduced (", item.originalTokens.toLocaleString(), " \u2192 ", item.compactedTokens.toLocaleString(), " tokens)"] })] })] })), _jsxs("div", { className: "text-xs text-slate-500", children: ["Compacted at: ", new Date(item.startedAt).toLocaleString()] })] }));
56
+ }
57
+ // Fallback (shouldn't happen)
58
+ return _jsx("div", { className: "text-slate-500 text-sm", children: "Unknown item type" });
59
+ }
60
+ function MetricCard({ label, children, }) {
61
+ return (_jsxs("div", { className: "bg-slate-50 rounded-md p-3", children: [_jsx("div", { className: "text-xs text-slate-500 mb-1", children: label }), _jsx("div", { className: "font-medium text-slate-900", children: children })] }));
62
+ }
63
+ function TypeBadge({ type }) {
64
+ const config = getTypeConfig(type);
65
+ return (_jsx("span", { className: `text-xs px-1.5 py-0.5 rounded-full font-medium ${config.badge}`, children: config.label }));
66
+ }
67
+ function getTypeConfig(type) {
68
+ switch (type) {
69
+ case 'llm':
70
+ return {
71
+ label: 'LLM',
72
+ badge: 'bg-violet-100 text-violet-700',
73
+ bgLight: 'bg-violet-100',
74
+ Icon: LLMIcon,
75
+ };
76
+ case 'tool':
77
+ return {
78
+ label: 'Tool',
79
+ badge: 'bg-emerald-100 text-emerald-700',
80
+ bgLight: 'bg-emerald-100',
81
+ Icon: ToolIcon,
82
+ };
83
+ case 'compaction':
84
+ return {
85
+ label: 'Compact',
86
+ badge: 'bg-amber-100 text-amber-700',
87
+ bgLight: 'bg-amber-100',
88
+ Icon: CompactionIcon,
89
+ };
90
+ }
91
+ }
92
+ function LLMIcon() {
93
+ return (_jsx("svg", { className: "w-3 h-3 text-violet-600", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: _jsx("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M9.75 17L9 20l-1 1h8l-1-1-.75-3M3 13h18M5 17h14a2 2 0 002-2V5a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2z" }) }));
94
+ }
95
+ function ToolIcon() {
96
+ return (_jsxs("svg", { className: "w-3 h-3 text-emerald-600", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: [_jsx("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M10.325 4.317c.426-1.756 2.924-1.756 3.35 0a1.724 1.724 0 002.573 1.066c1.543-.94 3.31.826 2.37 2.37a1.724 1.724 0 001.065 2.572c1.756.426 1.756 2.924 0 3.35a1.724 1.724 0 00-1.066 2.573c.94 1.543-.826 3.31-2.37 2.37a1.724 1.724 0 00-2.572 1.065c-.426 1.756-2.924 1.756-3.35 0a1.724 1.724 0 00-2.573-1.066c-1.543.94-3.31-.826-2.37-2.37a1.724 1.724 0 00-1.065-2.572c-1.756-.426-1.756-2.924 0-3.35a1.724 1.724 0 001.066-2.573c-.94-1.543.826-3.31 2.37-2.37.996.608 2.296.07 2.572-1.065z" }), _jsx("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M15 12a3 3 0 11-6 0 3 3 0 016 0z" })] }));
97
+ }
98
+ function CompactionIcon() {
99
+ return (_jsx("svg", { className: "w-3 h-3 text-amber-600", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: _jsx("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M4 7v10c0 2.21 3.582 4 8 4s8-1.79 8-4V7M4 7c0 2.21 3.582 4 8 4s8-1.79 8-4M4 7c0-2.21 3.582-4 8-4s8 1.79 8 4m0 5c0 2.21-3.582 4-8 4s-8-1.79-8-4" }) }));
100
+ }
101
+ //# sourceMappingURL=TimelinePage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TimelinePage.js","sourceRoot":"","sources":["../../../../src/components/debug/pages/TimelinePage.tsx"],"names":[],"mappings":"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"}
@@ -1 +1,2 @@
1
1
  export declare function UserChatPage(): import("react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=UserChatPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserChatPage.d.ts","sourceRoot":"","sources":["../../../../src/components/debug/pages/UserChatPage.tsx"],"names":[],"mappings":"AAKA,wBAAgB,YAAY,4CAyF3B"}