@memtensor/memos-local-openclaw-plugin 0.3.11 → 0.3.13

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":"html.d.ts","sourceRoot":"","sources":["../../src/viewer/html.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,UAAU,qtmOAkrHf,CAAC"}
1
+ {"version":3,"file":"html.d.ts","sourceRoot":"","sources":["../../src/viewer/html.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,UAAU,+9mOA8rHf,CAAC"}
@@ -2871,17 +2871,22 @@ async function loadAll(){
2871
2871
  }
2872
2872
 
2873
2873
  async function loadStats(){
2874
- const r=await fetch('/api/stats');
2875
- const d=await r.json();
2874
+ let d;
2875
+ try{
2876
+ const r=await fetch('/api/stats');
2877
+ d=await r.json();
2878
+ }catch(e){ d={}; }
2879
+ if(!d||typeof d!=='object') d={};
2880
+ const tm=d.totalMemories||0;
2876
2881
  const dedupB=d.dedupBreakdown||{};
2877
- const activeCount=dedupB.active||d.totalMemories;
2882
+ const activeCount=dedupB.active||tm;
2878
2883
  const inactiveCount=(dedupB.duplicate||0)+(dedupB.merged||0);
2879
- document.getElementById('statTotal').textContent=d.totalMemories;
2884
+ document.getElementById('statTotal').textContent=tm;
2880
2885
  if(inactiveCount>0){
2881
2886
  document.getElementById('statTotal').title=activeCount+' '+t('stat.active')+', '+inactiveCount+' '+t('stat.deduped');
2882
2887
  }
2883
- document.getElementById('statSessions').textContent=d.totalSessions;
2884
- document.getElementById('statEmbeddings').textContent=d.totalEmbeddings;
2888
+ document.getElementById('statSessions').textContent=d.totalSessions||0;
2889
+ document.getElementById('statEmbeddings').textContent=d.totalEmbeddings||0;
2885
2890
  let days=0;
2886
2891
  if(d.timeRange&&d.timeRange.earliest!=null&&d.timeRange.latest!=null){
2887
2892
  let e=Number(d.timeRange.earliest), l=Number(d.timeRange.latest);
@@ -2903,7 +2908,7 @@ async function loadStats(){
2903
2908
  }
2904
2909
 
2905
2910
  const sl=document.getElementById('sessionList');
2906
- sl.innerHTML='<div class="session-item'+(activeSession===null?' active':'')+'" onclick="filterSession(null)"><span>'+t('sidebar.allsessions')+'</span><span class="count">'+d.totalMemories+'</span></div>';
2911
+ sl.innerHTML='<div class="session-item'+(activeSession===null?' active':'')+'" onclick="filterSession(null)"><span>'+t('sidebar.allsessions')+'</span><span class="count">'+tm+'</span></div>';
2907
2912
  (d.sessions||[]).forEach(s=>{
2908
2913
  const isActive=activeSession===s.session_key;
2909
2914
  const name=s.session_key.length>20?s.session_key.slice(0,8)+'...'+s.session_key.slice(-8):s.session_key;
@@ -2930,16 +2935,23 @@ async function loadMemories(page){
2930
2935
  if(page) currentPage=page;
2931
2936
  const list=document.getElementById('memoryList');
2932
2937
  list.innerHTML='<div class="spinner"></div>';
2933
- const p=getFilterParams();
2934
- p.set('limit',PAGE_SIZE);
2935
- p.set('page',currentPage);
2936
- const r=await fetch('/api/memories?'+p.toString());
2937
- const d=await r.json();
2938
- totalPages=d.totalPages||1;
2939
- totalCount=d.total||0;
2940
- document.getElementById('searchMeta').textContent=totalCount+t('search.meta.total');
2941
- renderMemories(d.memories||[]);
2942
- renderPagination();
2938
+ try{
2939
+ const p=getFilterParams();
2940
+ p.set('limit',PAGE_SIZE);
2941
+ p.set('page',currentPage);
2942
+ const r=await fetch('/api/memories?'+p.toString());
2943
+ const d=await r.json();
2944
+ totalPages=d.totalPages||1;
2945
+ totalCount=d.total||0;
2946
+ document.getElementById('searchMeta').textContent=totalCount+t('search.meta.total');
2947
+ renderMemories(d.memories||[]);
2948
+ renderPagination();
2949
+ }catch(e){
2950
+ list.innerHTML='';
2951
+ totalPages=1;totalCount=0;
2952
+ renderMemories([]);
2953
+ renderPagination();
2954
+ }
2943
2955
  }
2944
2956
 
2945
2957
  async function doSearch(q){
@@ -3264,11 +3276,11 @@ async function migrateScan(){
3264
3276
 
3265
3277
  try{
3266
3278
  const r=await fetch('/api/migrate/scan');
3267
- if(!r.ok){ const err=await r.text(); throw new Error(err); }
3268
- const d=await r.json();
3279
+ const d=await r.json().catch(()=>({}));
3280
+ if(d.error && !d.sqliteFiles) throw new Error(d.error);
3269
3281
  migrateScanData=d;
3270
3282
 
3271
- const files=d.sqliteFiles||[];
3283
+ const files=Array.isArray(d.sqliteFiles)?d.sqliteFiles:[];
3272
3284
  const sess=d.sessions||{count:0,messages:0};
3273
3285
  const sqliteTotal=files.reduce((s,f)=>s+f.chunks,0);
3274
3286
  document.getElementById('migrateSqliteCount').textContent=sqliteTotal;
@@ -1 +1 @@
1
- {"version":3,"file":"html.js","sourceRoot":"","sources":["../../src/viewer/html.ts"],"names":[],"mappings":";;;AAAa,QAAA,UAAU,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAkrHlB,CAAC"}
1
+ {"version":3,"file":"html.js","sourceRoot":"","sources":["../../src/viewer/html.ts"],"names":[],"mappings":";;;AAAa,QAAA,UAAU,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA8rHlB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/viewer/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/viewer/server.ts"],"names":[],"mappings":"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"}
@@ -442,35 +442,56 @@ class ViewerServer {
442
442
  });
443
443
  }
444
444
  serveStats(res) {
445
- const db = this.store.db;
446
- const total = db.prepare("SELECT COUNT(*) as count FROM chunks").get();
447
- const sessions = db.prepare("SELECT COUNT(DISTINCT session_key) as count FROM chunks").get();
448
- const roles = db.prepare("SELECT role, COUNT(*) as count FROM chunks GROUP BY role").all();
449
- const timeRange = db.prepare("SELECT MIN(created_at) as earliest, MAX(created_at) as latest FROM chunks").get();
450
- const embeddings = db.prepare("SELECT COUNT(*) as count FROM embeddings").get();
451
- const kinds = db.prepare("SELECT kind, COUNT(*) as count FROM chunks GROUP BY kind").all();
452
- const sessionList = db.prepare("SELECT session_key, COUNT(*) as count, MIN(created_at) as earliest, MAX(created_at) as latest FROM chunks GROUP BY session_key ORDER BY latest DESC").all();
453
- let skillCount = 0;
454
- try {
455
- skillCount = db.prepare("SELECT COUNT(*) as count FROM skills").get().count;
445
+ const emptyStats = {
446
+ totalMemories: 0, totalSessions: 0, totalEmbeddings: 0, totalSkills: 0,
447
+ embeddingProvider: this.embedder?.provider ?? "none",
448
+ roleBreakdown: {}, kindBreakdown: {}, dedupBreakdown: {},
449
+ timeRange: { earliest: null, latest: null },
450
+ sessions: [],
451
+ };
452
+ if (!this.store || !this.store.db) {
453
+ this.jsonResponse(res, emptyStats);
454
+ return;
456
455
  }
457
- catch { /* table may not exist yet */ }
458
- let dedupBreakdown = {};
459
456
  try {
460
- const dedupRows = db.prepare("SELECT dedup_status, COUNT(*) as count FROM chunks GROUP BY dedup_status").all();
461
- dedupBreakdown = Object.fromEntries(dedupRows.map((d) => [d.dedup_status ?? "active", d.count]));
457
+ const db = this.store.db;
458
+ const total = db.prepare("SELECT COUNT(*) as count FROM chunks").get();
459
+ const sessions = db.prepare("SELECT COUNT(DISTINCT session_key) as count FROM chunks").get();
460
+ const roles = db.prepare("SELECT role, COUNT(*) as count FROM chunks GROUP BY role").all();
461
+ const timeRange = db.prepare("SELECT MIN(created_at) as earliest, MAX(created_at) as latest FROM chunks").get();
462
+ let embCount = 0;
463
+ try {
464
+ embCount = db.prepare("SELECT COUNT(*) as count FROM embeddings").get().count;
465
+ }
466
+ catch { /* table may not exist */ }
467
+ const kinds = db.prepare("SELECT kind, COUNT(*) as count FROM chunks GROUP BY kind").all();
468
+ const sessionList = db.prepare("SELECT session_key, COUNT(*) as count, MIN(created_at) as earliest, MAX(created_at) as latest FROM chunks GROUP BY session_key ORDER BY latest DESC").all();
469
+ let skillCount = 0;
470
+ try {
471
+ skillCount = db.prepare("SELECT COUNT(*) as count FROM skills").get().count;
472
+ }
473
+ catch { /* table may not exist yet */ }
474
+ let dedupBreakdown = {};
475
+ try {
476
+ const dedupRows = db.prepare("SELECT dedup_status, COUNT(*) as count FROM chunks GROUP BY dedup_status").all();
477
+ dedupBreakdown = Object.fromEntries(dedupRows.map((d) => [d.dedup_status ?? "active", d.count]));
478
+ }
479
+ catch { /* column may not exist yet */ }
480
+ this.jsonResponse(res, {
481
+ totalMemories: total.count, totalSessions: sessions.count, totalEmbeddings: embCount,
482
+ totalSkills: skillCount,
483
+ embeddingProvider: this.embedder.provider,
484
+ roleBreakdown: Object.fromEntries(roles.map((r) => [r.role, r.count])),
485
+ kindBreakdown: Object.fromEntries(kinds.map((k) => [k.kind, k.count])),
486
+ dedupBreakdown,
487
+ timeRange: { earliest: timeRange.earliest, latest: timeRange.latest },
488
+ sessions: sessionList,
489
+ });
490
+ }
491
+ catch (e) {
492
+ this.log.warn(`stats error: ${e}`);
493
+ this.jsonResponse(res, emptyStats);
462
494
  }
463
- catch { /* column may not exist yet */ }
464
- this.jsonResponse(res, {
465
- totalMemories: total.count, totalSessions: sessions.count, totalEmbeddings: embeddings.count,
466
- totalSkills: skillCount,
467
- embeddingProvider: this.embedder.provider,
468
- roleBreakdown: Object.fromEntries(roles.map((r) => [r.role, r.count])),
469
- kindBreakdown: Object.fromEntries(kinds.map((k) => [k.kind, k.count])),
470
- dedupBreakdown,
471
- timeRange: { earliest: timeRange.earliest, latest: timeRange.latest },
472
- sessions: sessionList,
473
- });
474
495
  }
475
496
  async serveSearch(_req, res, url) {
476
497
  const q = url.searchParams.get("q") ?? "";
@@ -947,8 +968,17 @@ class ViewerServer {
947
968
  }
948
969
  catch (e) {
949
970
  this.log.warn(`migrate/scan error: ${e}`);
950
- res.writeHead(500, { "Content-Type": "application/json" });
951
- res.end(JSON.stringify({ error: String(e) }));
971
+ this.jsonResponse(res, {
972
+ sqliteFiles: [],
973
+ sessions: { count: 0, messages: 0 },
974
+ totalItems: 0,
975
+ configReady: false,
976
+ hasEmbedding: false,
977
+ hasSummarizer: false,
978
+ hasImportedData: false,
979
+ importedSessionCount: 0,
980
+ error: String(e),
981
+ });
952
982
  }
953
983
  }
954
984
  // ─── Migration: start import with SSE progress ───
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/viewer/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/viewer/server.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@memtensor/memos-local-openclaw-plugin",
3
- "version": "0.3.11",
3
+ "version": "0.3.13",
4
4
  "description": "MemOS Local memory plugin for OpenClaw — full-write, hybrid-recall, progressive retrieval",
5
5
  "type": "module",
6
6
  "main": "index.ts",
@@ -83,9 +83,15 @@ export function captureMessages(
83
83
  * Also strips the envelope timestamp prefix like "[Tue 2026-03-03 21:58 GMT+8] "
84
84
  */
85
85
  export function stripInboundMetadata(text: string): string {
86
- if (!SENTINEL_FAST_RE.test(text)) return text;
86
+ // Strip envelope timestamp prefix: "[Tue 2026-03-03 21:58 GMT+8] actual message"
87
+ let cleaned = text.replace(
88
+ /^\[(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun)\s+\d{4}-\d{2}-\d{2}\s+\d{2}:\d{2}(?::\d{2})?\s+[A-Z]{3}[+-]\d{1,2}\]\s*/,
89
+ "",
90
+ );
91
+
92
+ if (!SENTINEL_FAST_RE.test(cleaned)) return cleaned.trim();
87
93
 
88
- const lines = text.split("\n");
94
+ const lines = cleaned.split("\n");
89
95
  const result: string[] = [];
90
96
  let inMetaBlock = false;
91
97
  let inFencedJson = false;
@@ -100,7 +106,6 @@ export function stripInboundMetadata(text: string): string {
100
106
  inFencedJson = false;
101
107
  continue;
102
108
  }
103
- // Sentinel without fenced JSON — skip this line only
104
109
  continue;
105
110
  }
106
111
 
@@ -120,13 +125,5 @@ export function stripInboundMetadata(text: string): string {
120
125
  result.push(line);
121
126
  }
122
127
 
123
- let cleaned = result.join("\n").trim();
124
-
125
- // Strip envelope timestamp prefix: "[Tue 2026-03-03 21:58 GMT+8] actual message"
126
- cleaned = cleaned.replace(
127
- /^\[(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun)\s+\d{4}-\d{2}-\d{2}\s+\d{2}:\d{2}(?::\d{2})?\s+[A-Z]{3}[+-]\d{1,2}\]\s*/,
128
- "",
129
- );
130
-
131
- return cleaned;
128
+ return result.join("\n").trim();
132
129
  }