openclaw-observability 1.0.4 → 1.0.6

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.
@@ -1 +1 @@
1
- {"version":3,"file":"duckdb-local-writer.js","sourceRoot":"","sources":["../../src/storage/duckdb-local-writer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"duckdb-local-writer.js","sourceRoot":"","sources":["../../src/storage/duckdb-local-writer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Unit tests for DuckDBLocalWriter
3
+ * Tests critical functionality including main file pre-creation, WAL handling, and checkpoint logic
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=duckdb-local-writer.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"duckdb-local-writer.test.d.ts","sourceRoot":"","sources":["../../src/storage/duckdb-local-writer.test.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
@@ -0,0 +1,343 @@
1
+ "use strict";
2
+ /**
3
+ * Unit tests for DuckDBLocalWriter
4
+ * Tests critical functionality including main file pre-creation, WAL handling, and checkpoint logic
5
+ */
6
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
7
+ if (k2 === undefined) k2 = k;
8
+ var desc = Object.getOwnPropertyDescriptor(m, k);
9
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
10
+ desc = { enumerable: true, get: function() { return m[k]; } };
11
+ }
12
+ Object.defineProperty(o, k2, desc);
13
+ }) : (function(o, m, k, k2) {
14
+ if (k2 === undefined) k2 = k;
15
+ o[k2] = m[k];
16
+ }));
17
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
18
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
19
+ }) : function(o, v) {
20
+ o["default"] = v;
21
+ });
22
+ var __importStar = (this && this.__importStar) || (function () {
23
+ var ownKeys = function(o) {
24
+ ownKeys = Object.getOwnPropertyNames || function (o) {
25
+ var ar = [];
26
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
27
+ return ar;
28
+ };
29
+ return ownKeys(o);
30
+ };
31
+ return function (mod) {
32
+ if (mod && mod.__esModule) return mod;
33
+ var result = {};
34
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
35
+ __setModuleDefault(result, mod);
36
+ return result;
37
+ };
38
+ })();
39
+ Object.defineProperty(exports, "__esModule", { value: true });
40
+ const vitest_1 = require("vitest");
41
+ const fs = __importStar(require("fs"));
42
+ const path = __importStar(require("path"));
43
+ const os = __importStar(require("os"));
44
+ const duckdb_local_writer_1 = require("./duckdb-local-writer");
45
+ const types_1 = require("../types");
46
+ (0, vitest_1.describe)('DuckDBLocalWriter', () => {
47
+ let testDir;
48
+ let dbPath;
49
+ let config;
50
+ (0, vitest_1.beforeEach)(() => {
51
+ // Create a temporary directory for each test
52
+ testDir = fs.mkdtempSync(path.join(os.tmpdir(), 'duckdb-test-'));
53
+ dbPath = path.join(testDir, 'test.duckdb');
54
+ config = { path: dbPath };
55
+ });
56
+ (0, vitest_1.afterEach)(async () => {
57
+ // Clean up: close writer and remove test directory
58
+ // Note: We can't easily access the writer instance to close it in tests,
59
+ // but the test directory will be cleaned up by the OS eventually
60
+ try {
61
+ if (fs.existsSync(testDir)) {
62
+ // Remove all files in test directory
63
+ const files = fs.readdirSync(testDir);
64
+ for (const file of files) {
65
+ fs.unlinkSync(path.join(testDir, file));
66
+ }
67
+ fs.rmdirSync(testDir);
68
+ }
69
+ }
70
+ catch (e) {
71
+ // Ignore cleanup errors
72
+ }
73
+ });
74
+ (0, vitest_1.describe)('Initialization', () => {
75
+ (0, vitest_1.it)('should create main database file before first write', async () => {
76
+ const writer = new duckdb_local_writer_1.DuckDBLocalWriter(config);
77
+ // Before initialization, main file should not exist
78
+ (0, vitest_1.expect)(fs.existsSync(dbPath)).toBe(false);
79
+ // Initialize (this should create the main file)
80
+ await writer.initialize();
81
+ // After initialization, main file should exist
82
+ (0, vitest_1.expect)(fs.existsSync(dbPath)).toBe(true);
83
+ // WAL file may or may not exist, but main file must exist
84
+ const walPath = dbPath + '.wal';
85
+ // Main file is the critical one - WAL is optional
86
+ (0, vitest_1.expect)(fs.existsSync(dbPath)).toBe(true);
87
+ });
88
+ (0, vitest_1.it)('should create parent directory if it does not exist', async () => {
89
+ const nestedPath = path.join(testDir, 'nested', 'deep', 'test.duckdb');
90
+ const nestedConfig = { path: nestedPath };
91
+ const writer = new duckdb_local_writer_1.DuckDBLocalWriter(nestedConfig);
92
+ // Parent directory should not exist
93
+ (0, vitest_1.expect)(fs.existsSync(path.dirname(nestedPath))).toBe(false);
94
+ // Initialize should create parent directory
95
+ await writer.initialize();
96
+ // Parent directory should now exist
97
+ (0, vitest_1.expect)(fs.existsSync(path.dirname(nestedPath))).toBe(true);
98
+ (0, vitest_1.expect)(fs.existsSync(nestedPath)).toBe(true);
99
+ });
100
+ (0, vitest_1.it)('should handle lock conflicts gracefully', async () => {
101
+ const writer = new duckdb_local_writer_1.DuckDBLocalWriter(config);
102
+ // First initialization should succeed
103
+ await writer.initialize();
104
+ // Try to initialize again (should be idempotent)
105
+ await writer.initialize();
106
+ // Should not throw
107
+ (0, vitest_1.expect)(true).toBe(true);
108
+ });
109
+ (0, vitest_1.it)('should be idempotent (multiple initialize calls)', async () => {
110
+ const writer = new duckdb_local_writer_1.DuckDBLocalWriter(config);
111
+ // Call initialize multiple times
112
+ await writer.initialize();
113
+ await writer.initialize();
114
+ await writer.initialize();
115
+ // Should not throw and file should exist
116
+ (0, vitest_1.expect)(fs.existsSync(dbPath)).toBe(true);
117
+ });
118
+ });
119
+ (0, vitest_1.describe)('Main file pre-creation', () => {
120
+ (0, vitest_1.it)('should create main file before opening for writes', async () => {
121
+ const writer = new duckdb_local_writer_1.DuckDBLocalWriter(config);
122
+ // Ensure file does not exist
123
+ (0, vitest_1.expect)(fs.existsSync(dbPath)).toBe(false);
124
+ // Initialize - this should create main file first
125
+ await writer.initialize();
126
+ // Main file must exist
127
+ (0, vitest_1.expect)(fs.existsSync(dbPath)).toBe(true);
128
+ // Check file size (should be > 0, indicating it's a real database file)
129
+ const stats = fs.statSync(dbPath);
130
+ (0, vitest_1.expect)(stats.size).toBeGreaterThan(0);
131
+ });
132
+ (0, vitest_1.it)('should not create WAL file if main file is pre-created', async () => {
133
+ const writer = new duckdb_local_writer_1.DuckDBLocalWriter(config);
134
+ // Initialize
135
+ await writer.initialize();
136
+ // Main file should exist
137
+ (0, vitest_1.expect)(fs.existsSync(dbPath)).toBe(true);
138
+ // After initialization and checkpoint, WAL file should ideally not exist
139
+ // (or be very small if it exists)
140
+ const walPath = dbPath + '.wal';
141
+ if (fs.existsSync(walPath)) {
142
+ const walStats = fs.statSync(walPath);
143
+ // WAL should be small or non-existent after checkpoint
144
+ // Main file is the critical one
145
+ (0, vitest_1.expect)(fs.existsSync(dbPath)).toBe(true);
146
+ }
147
+ });
148
+ });
149
+ (0, vitest_1.describe)('Write operations', () => {
150
+ (0, vitest_1.it)('should write actions to database', async () => {
151
+ const writer = new duckdb_local_writer_1.DuckDBLocalWriter(config);
152
+ await writer.initialize();
153
+ const action = {
154
+ sessionId: 'test-session-1',
155
+ actionType: types_1.ActionType.Message,
156
+ actionName: 'test_action',
157
+ modelName: 'test-model',
158
+ inputParams: { test: 'data' },
159
+ outputResult: { result: 'success' },
160
+ promptTokens: 10,
161
+ completionTokens: 20,
162
+ durationMs: 100,
163
+ userId: 'test-user',
164
+ createdAt: new Date(),
165
+ };
166
+ const entries = [
167
+ { type: 'action', data: action },
168
+ ];
169
+ // Should not throw
170
+ await (0, vitest_1.expect)(writer.writeBatch(entries)).resolves.not.toThrow();
171
+ // Verify data was written by querying
172
+ const pool = writer.getPool();
173
+ (0, vitest_1.expect)(pool).not.toBeNull();
174
+ if (pool) {
175
+ const result = await pool.query('SELECT COUNT(*) as count FROM audit_actions');
176
+ (0, vitest_1.expect)(result).not.toBeNull();
177
+ // query() returns [rows[], null] format
178
+ if (result && Array.isArray(result) && result[0] && Array.isArray(result[0]) && result[0].length > 0) {
179
+ const count = result[0][0].count;
180
+ (0, vitest_1.expect)(count).toBeGreaterThanOrEqual(1);
181
+ }
182
+ }
183
+ });
184
+ (0, vitest_1.it)('should write sessions to database', async () => {
185
+ const writer = new duckdb_local_writer_1.DuckDBLocalWriter(config);
186
+ await writer.initialize();
187
+ const session = {
188
+ sessionId: 'test-session-1',
189
+ userId: 'test-user',
190
+ modelName: 'test-model',
191
+ startTime: new Date(),
192
+ endTime: null,
193
+ totalActions: 1,
194
+ totalTokens: 30,
195
+ };
196
+ const entries = [
197
+ { type: 'session', data: session },
198
+ ];
199
+ // Should not throw
200
+ await (0, vitest_1.expect)(writer.writeBatch(entries)).resolves.not.toThrow();
201
+ // Verify data was written
202
+ const pool = writer.getPool();
203
+ (0, vitest_1.expect)(pool).not.toBeNull();
204
+ if (pool) {
205
+ const result = await pool.query('SELECT COUNT(*) as count FROM audit_sessions');
206
+ (0, vitest_1.expect)(result).not.toBeNull();
207
+ // query() returns [rows[], null] format
208
+ if (result && Array.isArray(result) && result[0] && Array.isArray(result[0]) && result[0].length > 0) {
209
+ const count = result[0][0].count;
210
+ (0, vitest_1.expect)(count).toBeGreaterThanOrEqual(1);
211
+ }
212
+ }
213
+ });
214
+ (0, vitest_1.it)('should support lazy initialization on first write', async () => {
215
+ const writer = new duckdb_local_writer_1.DuckDBLocalWriter(config);
216
+ // File should not exist before write
217
+ (0, vitest_1.expect)(fs.existsSync(dbPath)).toBe(false);
218
+ // Write should trigger initialization
219
+ const action = {
220
+ sessionId: 'test-session-1',
221
+ actionType: types_1.ActionType.Message,
222
+ actionName: 'test_action',
223
+ modelName: 'test-model',
224
+ inputParams: {},
225
+ outputResult: {},
226
+ promptTokens: 0,
227
+ completionTokens: 0,
228
+ durationMs: 0,
229
+ userId: 'test-user',
230
+ createdAt: new Date(),
231
+ };
232
+ const entries = [
233
+ { type: 'action', data: action },
234
+ ];
235
+ // Initialize first to ensure database is ready
236
+ await writer.initialize();
237
+ // Now write should work
238
+ await (0, vitest_1.expect)(writer.writeBatch(entries)).resolves.not.toThrow();
239
+ // File should now exist
240
+ (0, vitest_1.expect)(fs.existsSync(dbPath)).toBe(true);
241
+ });
242
+ });
243
+ (0, vitest_1.describe)('ensureReady', () => {
244
+ (0, vitest_1.it)('should return true if already initialized', async () => {
245
+ const writer = new duckdb_local_writer_1.DuckDBLocalWriter(config);
246
+ await writer.initialize();
247
+ const ready = await writer.ensureReady();
248
+ (0, vitest_1.expect)(ready).toBe(true);
249
+ });
250
+ (0, vitest_1.it)('should initialize if not ready', async () => {
251
+ const writer = new duckdb_local_writer_1.DuckDBLocalWriter(config);
252
+ // Should not be initialized yet
253
+ const ready1 = await writer.ensureReady();
254
+ // ensureReady() should initialize and return true (or false if lock conflict)
255
+ // In test environment, it should succeed
256
+ (0, vitest_1.expect)(typeof ready1).toBe('boolean');
257
+ // If ready, file should exist
258
+ if (ready1) {
259
+ (0, vitest_1.expect)(fs.existsSync(dbPath)).toBe(true);
260
+ }
261
+ });
262
+ (0, vitest_1.it)('should handle lock conflicts in ensureReady', async () => {
263
+ const writer = new duckdb_local_writer_1.DuckDBLocalWriter(config);
264
+ // This test is hard to simulate without actual lock conflicts
265
+ // But we can verify the method exists and doesn't throw
266
+ const ready = await writer.ensureReady();
267
+ (0, vitest_1.expect)(typeof ready).toBe('boolean');
268
+ });
269
+ });
270
+ (0, vitest_1.describe)('Checkpoint logic', () => {
271
+ (0, vitest_1.it)('should execute checkpoint on initialization', async () => {
272
+ const writer = new duckdb_local_writer_1.DuckDBLocalWriter(config);
273
+ // Initialize (includes checkpoint)
274
+ await writer.initialize();
275
+ // Main file should exist after checkpoint
276
+ (0, vitest_1.expect)(fs.existsSync(dbPath)).toBe(true);
277
+ // Verify we can query (database is functional)
278
+ const pool = writer.getPool();
279
+ (0, vitest_1.expect)(pool).not.toBeNull();
280
+ if (pool) {
281
+ const result = await pool.query('SELECT 1 as test');
282
+ (0, vitest_1.expect)(result).not.toBeNull();
283
+ }
284
+ });
285
+ });
286
+ (0, vitest_1.describe)('Error handling', () => {
287
+ (0, vitest_1.it)('should throw error if DuckDB package is not installed', async () => {
288
+ // This test would require mocking require(), which is complex
289
+ // Instead, we test that the error message is informative
290
+ const writer = new duckdb_local_writer_1.DuckDBLocalWriter(config);
291
+ // If @duckdb/node-api is installed, this should work
292
+ // If not, it should throw with a helpful error message
293
+ try {
294
+ await writer.initialize();
295
+ // If it succeeds, that's fine - package is installed
296
+ (0, vitest_1.expect)(true).toBe(true);
297
+ }
298
+ catch (error) {
299
+ // If it fails, error message should be helpful
300
+ (0, vitest_1.expect)(error.message).toContain('@duckdb/node-api');
301
+ }
302
+ });
303
+ (0, vitest_1.it)('should handle write errors gracefully', async () => {
304
+ const writer = new duckdb_local_writer_1.DuckDBLocalWriter(config);
305
+ await writer.initialize();
306
+ // Try to write invalid data (should not crash)
307
+ const invalidEntries = [
308
+ {
309
+ type: 'action',
310
+ data: {
311
+ sessionId: 'test',
312
+ actionType: types_1.ActionType.Message,
313
+ actionName: 'test',
314
+ modelName: '',
315
+ inputParams: null,
316
+ outputResult: null,
317
+ promptTokens: null,
318
+ completionTokens: null,
319
+ durationMs: null,
320
+ userId: '',
321
+ createdAt: new Date(),
322
+ },
323
+ },
324
+ ];
325
+ // Should handle null values gracefully
326
+ await (0, vitest_1.expect)(writer.writeBatch(invalidEntries)).resolves.not.toThrow();
327
+ });
328
+ });
329
+ (0, vitest_1.describe)('Pool access', () => {
330
+ (0, vitest_1.it)('should return null pool if not initialized', () => {
331
+ const writer = new duckdb_local_writer_1.DuckDBLocalWriter(config);
332
+ const pool = writer.getPool();
333
+ (0, vitest_1.expect)(pool).toBeNull();
334
+ });
335
+ (0, vitest_1.it)('should return pool after initialization', async () => {
336
+ const writer = new duckdb_local_writer_1.DuckDBLocalWriter(config);
337
+ await writer.initialize();
338
+ const pool = writer.getPool();
339
+ (0, vitest_1.expect)(pool).not.toBeNull();
340
+ });
341
+ });
342
+ });
343
+ //# sourceMappingURL=duckdb-local-writer.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"duckdb-local-writer.test.js","sourceRoot":"","sources":["../../src/storage/duckdb-local-writer.test.ts"],"names":[],"mappings":"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"}
package/dist/web/ui.d.ts CHANGED
@@ -1,7 +1,10 @@
1
1
  /**
2
2
  * Observability panel SPA — single-page HTML application
3
- * Contains Dashboard overview + Session Trace detail views
4
- * Uses hash routing: #/ = Dashboard, #/trace/{sessionId} = Trace
3
+ * Uses hash routing:
4
+ * #/ = Dashboard (analytics overview)
5
+ * #/traces = Trace list (session list + filters)
6
+ * #/trace/{sessionId} = Trace detail (waterfall view)
7
+ * #/security = Security alerts
5
8
  *
6
9
  * Fully aligned with OpenClaw Control design system (CSS variables + dark/light themes)
7
10
  */
@@ -1 +1 @@
1
- {"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../src/web/ui.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,wBAAgB,UAAU,IAAI,MAAM,CAmBnC"}
1
+ {"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../src/web/ui.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,wBAAgB,UAAU,IAAI,MAAM,CAmBnC"}
package/dist/web/ui.js CHANGED
@@ -1,8 +1,11 @@
1
1
  "use strict";
2
2
  /**
3
3
  * Observability panel SPA — single-page HTML application
4
- * Contains Dashboard overview + Session Trace detail views
5
- * Uses hash routing: #/ = Dashboard, #/trace/{sessionId} = Trace
4
+ * Uses hash routing:
5
+ * #/ = Dashboard (analytics overview)
6
+ * #/traces = Trace list (session list + filters)
7
+ * #/trace/{sessionId} = Trace detail (waterfall view)
8
+ * #/security = Security alerts
6
9
  *
7
10
  * Fully aligned with OpenClaw Control design system (CSS variables + dark/light themes)
8
11
  */
@@ -565,9 +568,9 @@ function router() {
565
568
  var qIdx = raw.indexOf('?');
566
569
  var sid = decodeURIComponent(qIdx >= 0 ? raw.substring(0, qIdx) : raw);
567
570
  var params = parseHashParams(hash);
568
- renderTrace(sid, params.action, params.t);
569
- } else if (hash.indexOf('#/analytics') === 0) {
570
- renderAnalytics();
571
+ renderTraceDetail(sid, params.action, params.t);
572
+ } else if (hash.indexOf('#/traces') === 0) {
573
+ renderTraceList();
571
574
  } else if (hash.indexOf('#/security') === 0) {
572
575
  renderSecurity();
573
576
  } else {
@@ -594,7 +597,7 @@ function renderLayout(active, content) {
594
597
  '</div>' +
595
598
  '<div class="topbar-nav">' +
596
599
  '<a href="#/" class="' + (active==='dashboard'?'active':'') + '">Dashboard</a>' +
597
- '<a href="#/analytics" class="' + (active==='analytics'?'active':'') + '">Analytics</a>' +
600
+ '<a href="#/traces" class="' + (active==='traces'?'active':'') + '">Trace</a>' +
598
601
  '<a href="#/security" class="' + (active==='security'?'active':'') + '">Security' + (window.__alertCount > 0 ? '<span class="nav-badge">' + window.__alertCount + '</span>' : '') + '</a>' +
599
602
  '</div>' +
600
603
  '</div>' +
@@ -608,11 +611,11 @@ function renderLayout(active, content) {
608
611
  }
609
612
 
610
613
  /* ================================================================ */
611
- /* Dashboard */
614
+ /* Trace List (session list + filters) */
612
615
  /* ================================================================ */
613
616
 
614
- async function renderDashboard() {
615
- app.innerHTML = renderLayout('dashboard', '<div class="loading">Loading...</div>');
617
+ async function renderTraceList() {
618
+ app.innerHTML = renderLayout('traces', '<div class="loading">Loading...</div>');
616
619
 
617
620
  try {
618
621
  // Build sessions request with filter params
@@ -703,10 +706,10 @@ async function renderDashboard() {
703
706
  html += '<button onclick="goPage(' + (currentPage+1) + ')" ' + (currentPage>=totalPages?'disabled':'') + '>Next &raquo;</button>';
704
707
  html += '</div>';
705
708
 
706
- app.innerHTML = renderLayout('dashboard', html);
709
+ app.innerHTML = renderLayout('traces', html);
707
710
 
708
711
  } catch(err) {
709
- app.innerHTML = renderLayout('dashboard',
712
+ app.innerHTML = renderLayout('traces',
710
713
  '<div class="empty"><div class="icon">⚠️</div><div class="text">Failed to load: ' + esc(String(err)) + '</div></div>');
711
714
  }
712
715
  }
@@ -718,21 +721,21 @@ function statCard(label, value) {
718
721
  window.goPage = function(p) {
719
722
  if (p < 1) return;
720
723
  currentPage = p;
721
- renderDashboard();
724
+ renderTraceList();
722
725
  };
723
726
 
724
727
  window.applyFilter = function() {
725
728
  var s = document.getElementById('f-search');
726
729
  filterSearch = s ? s.value.trim() : '';
727
730
  currentPage = 1;
728
- renderDashboard();
731
+ renderTraceList();
729
732
  };
730
733
 
731
734
  window.clearFilter = function() {
732
735
  filterSearch = '';
733
736
  filterTimeRange = '';
734
737
  currentPage = 1;
735
- renderDashboard();
738
+ renderTraceList();
736
739
  };
737
740
 
738
741
  window.toggleTimeMenu = function(e) {
@@ -746,7 +749,7 @@ window.selectTimeRange = function(key) {
746
749
  currentPage = 1;
747
750
  var menu = document.getElementById('time-menu');
748
751
  if (menu) menu.classList.remove('open');
749
- renderDashboard();
752
+ renderTraceList();
750
753
  };
751
754
 
752
755
  // Click anywhere on page to close dropdowns
@@ -759,7 +762,7 @@ document.addEventListener('click', function() {
759
762
  });
760
763
 
761
764
  /* ================================================================ */
762
- /* Analytics tab */
765
+ /* Dashboard (Analytics overview) */
763
766
  /* ================================================================ */
764
767
 
765
768
  var anTimeRange = '24h';
@@ -778,8 +781,8 @@ function anGetTimeLabel() {
778
781
  return preset ? preset.label : 'All time';
779
782
  }
780
783
 
781
- async function renderAnalytics() {
782
- app.innerHTML = renderLayout('analytics', '<div class="loading">Loading analytics...</div>');
784
+ async function renderDashboard() {
785
+ app.innerHTML = renderLayout('dashboard', '<div class="loading">Loading dashboard...</div>');
783
786
 
784
787
  try {
785
788
  var qs = '';
@@ -873,11 +876,11 @@ async function renderAnalytics() {
873
876
 
874
877
  html += '</div>';
875
878
 
876
- app.innerHTML = renderLayout('analytics', html);
879
+ app.innerHTML = renderLayout('dashboard', html);
877
880
 
878
881
  } catch(err) {
879
- app.innerHTML = renderLayout('analytics',
880
- '<div class="empty"><div class="icon">⚠️</div><div class="text">Failed to load analytics: ' + esc(String(err)) + '</div></div>');
882
+ app.innerHTML = renderLayout('dashboard',
883
+ '<div class="empty"><div class="icon">⚠️</div><div class="text">Failed to load dashboard: ' + esc(String(err)) + '</div></div>');
881
884
  }
882
885
  }
883
886
 
@@ -1095,7 +1098,7 @@ function buildAgentsTable(ta) {
1095
1098
  return h;
1096
1099
  }
1097
1100
 
1098
- /* Analytics event handlers */
1101
+ /* Dashboard event handlers */
1099
1102
  window.anToggleTimeMenu = function(e) {
1100
1103
  e.stopPropagation();
1101
1104
  var menu = document.getElementById('an-time-menu');
@@ -1106,12 +1109,12 @@ window.anSelectTime = function(key) {
1106
1109
  anTimeRange = key;
1107
1110
  var menu = document.getElementById('an-time-menu');
1108
1111
  if (menu) menu.classList.remove('open');
1109
- renderAnalytics();
1112
+ renderDashboard();
1110
1113
  };
1111
1114
 
1112
1115
  window.anSwitchMetric = function(metric) {
1113
1116
  anMetricTab = metric;
1114
- renderAnalytics();
1117
+ renderDashboard();
1115
1118
  };
1116
1119
 
1117
1120
  /* ================================================================ */
@@ -1412,7 +1415,7 @@ document.addEventListener('click', function() {
1412
1415
 
1413
1416
  var selectedActionIdx = -1;
1414
1417
 
1415
- async function renderTrace(sessionId, highlightAction, highlightTime) {
1418
+ async function renderTraceDetail(sessionId, highlightAction, highlightTime) {
1416
1419
  selectedActionIdx = -1;
1417
1420
  app.innerHTML = renderLayout('trace',
1418
1421
  '<div class="trace-header"><div class="loading">Loading trace...</div></div>');
@@ -1430,7 +1433,7 @@ async function renderTrace(sessionId, highlightAction, highlightTime) {
1430
1433
  if (actions.length === 0) {
1431
1434
  app.innerHTML = renderLayout('trace',
1432
1435
  '<div class="trace-header">' +
1433
- '<a href="#/" class="trace-back">← Back</a>' +
1436
+ '<a href="#/traces" class="trace-back">← Back</a>' +
1434
1437
  '<div class="empty"><div class="icon">📭</div><div class="text">No actions found for this session</div></div>' +
1435
1438
  '</div>');
1436
1439
  return;
@@ -1513,7 +1516,7 @@ async function renderTrace(sessionId, highlightAction, highlightTime) {
1513
1516
 
1514
1517
  // Trace header
1515
1518
  html += '<div class="trace-header">';
1516
- html += '<a href="#/" class="trace-back">← Back to Traces</a>';
1519
+ html += '<a href="#/traces" class="trace-back">← Back to Traces</a>';
1517
1520
  html += '<div class="trace-title">Session: ' + esc(sessionId) + '</div>';
1518
1521
  html += '<div class="trace-meta">';
1519
1522
  html += '<span class="trace-meta-item"><b>Agent:</b> ' + esc(userId) + '</span>';
@@ -1623,7 +1626,7 @@ async function renderTrace(sessionId, highlightAction, highlightTime) {
1623
1626
  } catch(err) {
1624
1627
  app.innerHTML = renderLayout('trace',
1625
1628
  '<div class="trace-header">' +
1626
- '<a href="#/" class="trace-back">← Back</a>' +
1629
+ '<a href="#/traces" class="trace-back">← Back</a>' +
1627
1630
  '<div class="empty"><div class="icon">⚠️</div><div class="text">Failed to load: ' + esc(String(err)) + '</div></div>' +
1628
1631
  '</div>');
1629
1632
  }