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.
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +54 -40
- package/dist/index.js.map +1 -1
- package/dist/storage/buffer.d.ts +5 -1
- package/dist/storage/buffer.d.ts.map +1 -1
- package/dist/storage/buffer.js +27 -14
- package/dist/storage/buffer.js.map +1 -1
- package/dist/storage/duckdb-local-writer.d.ts.map +1 -1
- package/dist/storage/duckdb-local-writer.js +104 -22
- package/dist/storage/duckdb-local-writer.js.map +1 -1
- package/dist/storage/duckdb-local-writer.test.d.ts +6 -0
- package/dist/storage/duckdb-local-writer.test.d.ts.map +1 -0
- package/dist/storage/duckdb-local-writer.test.js +343 -0
- package/dist/storage/duckdb-local-writer.test.js.map +1 -0
- package/dist/web/ui.d.ts +5 -2
- package/dist/web/ui.d.ts.map +1 -1
- package/dist/web/ui.js +31 -28
- package/dist/web/ui.js.map +1 -1
- package/openclaw.plugin.json +1 -1
- package/package.json +10 -3
|
@@ -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 @@
|
|
|
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
|
-
*
|
|
4
|
-
*
|
|
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
|
*/
|
package/dist/web/ui.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../src/web/ui.ts"],"names":[],"mappings":"AAAA
|
|
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
|
-
*
|
|
5
|
-
*
|
|
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
|
-
|
|
569
|
-
} else if (hash.indexOf('#/
|
|
570
|
-
|
|
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="#/
|
|
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
|
-
/*
|
|
614
|
+
/* Trace List (session list + filters) */
|
|
612
615
|
/* ================================================================ */
|
|
613
616
|
|
|
614
|
-
async function
|
|
615
|
-
app.innerHTML = renderLayout('
|
|
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 »</button>';
|
|
704
707
|
html += '</div>';
|
|
705
708
|
|
|
706
|
-
app.innerHTML = renderLayout('
|
|
709
|
+
app.innerHTML = renderLayout('traces', html);
|
|
707
710
|
|
|
708
711
|
} catch(err) {
|
|
709
|
-
app.innerHTML = renderLayout('
|
|
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
|
-
|
|
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
|
-
|
|
731
|
+
renderTraceList();
|
|
729
732
|
};
|
|
730
733
|
|
|
731
734
|
window.clearFilter = function() {
|
|
732
735
|
filterSearch = '';
|
|
733
736
|
filterTimeRange = '';
|
|
734
737
|
currentPage = 1;
|
|
735
|
-
|
|
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
|
-
|
|
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
|
|
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
|
|
782
|
-
app.innerHTML = renderLayout('
|
|
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('
|
|
879
|
+
app.innerHTML = renderLayout('dashboard', html);
|
|
877
880
|
|
|
878
881
|
} catch(err) {
|
|
879
|
-
app.innerHTML = renderLayout('
|
|
880
|
-
'<div class="empty"><div class="icon">⚠️</div><div class="text">Failed to load
|
|
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
|
-
/*
|
|
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
|
-
|
|
1112
|
+
renderDashboard();
|
|
1110
1113
|
};
|
|
1111
1114
|
|
|
1112
1115
|
window.anSwitchMetric = function(metric) {
|
|
1113
1116
|
anMetricTab = metric;
|
|
1114
|
-
|
|
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
|
|
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
|
}
|