|
|
|
|
@ -15,7 +15,7 @@
@@ -15,7 +15,7 @@
|
|
|
|
|
var CALL_HASH_CAP = 100; var cfgToken = ''; var execMode = 'dom'; var lastSsePid = ''; var domDebugSeen = new Set(); var domDebugCount = 0; |
|
|
|
|
if (UI) { |
|
|
|
|
UI.onResetLoops(function () { queue.length = 0; pending.clear(); seenHashes.clear(); pumping = false; if (UI) UI.log('loops reset'); }); |
|
|
|
|
UI.onStop(function () { queue.length = 0; started = false; try { obs.disconnect(); } catch (e) {} if (UI) { UI.setPhase('off'); UI.setStartEnabled(true); UI.log('stopped'); } }); |
|
|
|
|
UI.onStop(function () { queue.length = 0; started = false; try { obs.disconnect(); } catch (e) {} if (UI) { UI.setPhase('off'); UI.setStartEnabled(true); if (UI.setDot) UI.setDot('stopped'); UI.log('stopped'); } }); |
|
|
|
|
UI.onSaveToken(function (v) { chrome.storage.local.set({ 'dshmem-bridge-token': v }, function () { if (UI) UI.log('token saved, reload page'); }); }); |
|
|
|
|
} |
|
|
|
|
if (UI) { UI.onStart(function () { if (!canStart) { if (UI.setStartEnabled) UI.setStartEnabled(true); return; } started = true; markExistingAsProcessed(); obs.observe(document.documentElement, { childList: true, subtree: true, characterData: true }); UI.setPhase('idle'); UI.setConnected(true); UI.log('started'); }); } |
|
|
|
|
@ -276,7 +276,7 @@ if (parsed.calls.length === 0) { if (hasMarker) { try { var __dh = hashText(text
@@ -276,7 +276,7 @@ if (parsed.calls.length === 0) { if (hasMarker) { try { var __dh = hashText(text
|
|
|
|
|
if (results.length > 0) { |
|
|
|
|
var payload = buildResultMessage(results); |
|
|
|
|
if (UI) UI.setPhase('sending'); |
|
|
|
|
var anyFail = results.some(function (r) { return !r || !r.ok; }); sendText(payload).then(function () { if (UI) { UI.setPhase('idle'); if (UI.setDot) UI.setDot(anyFail ? 'busy' : 'ok'); } }).catch(function (err) { console.warn('[dsh-memory] sendText failed', String(err)); if (UI) { UI.setPhase('idle'); if (UI.setDot) UI.setDot('busy'); } }); |
|
|
|
|
var anyFail = results.some(function (r) { return !r || !r.ok; }); sendText(payload).then(function () { if (UI) { UI.setPhase('idle'); if (UI.setDot) UI.setDot(anyFail ? 'error' : 'ok'); } }).catch(function (err) { console.warn('[dsh-memory] sendText failed', String(err)); if (UI) { UI.setPhase('idle'); if (UI.setDot) UI.setDot('error'); } }); |
|
|
|
|
} else { if (UI) UI.setPhase('idle'); } |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
@ -354,7 +354,22 @@ if (parsed.calls.length === 0) { if (hasMarker) { try { var __dh = hashText(text
@@ -354,7 +354,22 @@ if (parsed.calls.length === 0) { if (hasMarker) { try { var __dh = hashText(text
|
|
|
|
|
characterData: true |
|
|
|
|
}); |
|
|
|
|
console.log("[dsh-memory] content.js active"); |
|
|
|
|
if (UI) { UI.setPhase('off'); UI.setConnected(true); canStart = true; UI.log('ready, press Start'); } __refreshStats(); |
|
|
|
|
BRIDGE.health().then(function (r) { |
|
|
|
|
if (UI) { |
|
|
|
|
UI.setPhase('off'); |
|
|
|
|
UI.setConnected(!!(r && r.ok)); |
|
|
|
|
if (!r || !r.ok) UI.log('bridge down: ' + ((r && r.error && r.error.message) || '?')); |
|
|
|
|
else UI.log('ready, press Start'); |
|
|
|
|
} |
|
|
|
|
canStart = true; |
|
|
|
|
}).catch(function (e) { |
|
|
|
|
if (UI) { UI.setPhase('off'); UI.setConnected(false); UI.log('bridge down: ' + String(e)); } |
|
|
|
|
canStart = true; |
|
|
|
|
}); |
|
|
|
|
setInterval(function () { |
|
|
|
|
BRIDGE.health().then(function (r) { if (UI && UI.setConnected) UI.setConnected(!!(r && r.ok)); }); |
|
|
|
|
}, 30000); |
|
|
|
|
__refreshStats(); |
|
|
|
|
}); |
|
|
|
|
}); |
|
|
|
|
function __refreshStats() { try { var SB = globalThis.STORAGE_BRIDGE; if (!SB || !UI || !UI.setStats) return; SB.getState().then(function (st) { var mN = st && st.memories ? Object.keys(st.memories).length : 0; var sN = st && st.skills && st.skills.length ? st.skills.length : 0; return SB.authHeaders().then(function (h) { return fetch(SB.BU + '/health', { headers: h }); }).then(function (r) { return r.json(); }).then(function (j) { UI.setStats((j && j.workspace) || '?', mN, sN); }); }).catch(function () { UI.setStats('?', 0, 0); }); } catch (e) { console.warn('[dsh-memory] stats ' + String(e)); } } |
|
|
|
|
|