superlocalmemory 3.8.5 → 3.8.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/CHANGELOG.md +34 -0
- package/README.md +3 -3
- package/package.json +1 -1
- package/plugin/.claude-plugin/plugin.json +1 -1
- package/plugin/CLAUDE.md +3 -3
- package/plugin/agents/slm-governance-advisor.md +1 -1
- package/plugin/agents/slm-loop-runner.md +1 -1
- package/plugin/agents/slm-memory-advisor.md +1 -1
- package/plugin/agents/slm-optimize-advisor.md +1 -1
- package/plugin/requirements.txt +1 -1
- package/plugin/skills/slm-cache/SKILL.md +1 -1
- package/plugin/skills/slm-compress/SKILL.md +1 -1
- package/plugin/skills/slm-governance/SKILL.md +1 -1
- package/plugin/skills/slm-graph/SKILL.md +1 -1
- package/plugin/skills/slm-loop/SKILL.md +1 -1
- package/plugin/skills/slm-mesh/SKILL.md +1 -1
- package/plugin/skills/slm-profile/SKILL.md +1 -1
- package/plugin/skills/slm-recall/SKILL.md +1 -1
- package/plugin/skills/slm-remember/SKILL.md +1 -1
- package/plugin/skills/slm-scope/SKILL.md +1 -1
- package/plugin/skills/slm-session/SKILL.md +1 -1
- package/plugin/skills/slm-status/SKILL.md +1 -1
- package/plugin-src/rules/AGENTS.md +1 -1
- package/plugin-src/skills/slm-cache/SKILL.md +1 -1
- package/plugin-src/skills/slm-compress/SKILL.md +1 -1
- package/plugin-src/skills/slm-graph/SKILL.md +1 -1
- package/plugin-src/skills/slm-recall/SKILL.md +1 -1
- package/plugin-src/skills/slm-remember/SKILL.md +1 -1
- package/plugin-src/skills/slm-session/SKILL.md +1 -1
- package/plugin-src/skills/slm-status/SKILL.md +1 -1
- package/pyproject.toml +9 -4
- package/src/superlocalmemory/__init__.py +1 -1
- package/src/superlocalmemory/cli/commands.py +139 -404
- package/src/superlocalmemory/core/component_registry.py +4 -2
- package/src/superlocalmemory/core/embeddings.py +33 -6
- package/src/superlocalmemory/core/engine.py +94 -49
- package/src/superlocalmemory/core/engine_ingestion.py +150 -63
- package/src/superlocalmemory/core/ingestion_command.py +133 -21
- package/src/superlocalmemory/core/mutations.py +32 -10
- package/src/superlocalmemory/core/recall_pipeline.py +111 -77
- package/src/superlocalmemory/core/remember_admission.py +152 -0
- package/src/superlocalmemory/core/remember_runtime.py +712 -0
- package/src/superlocalmemory/graph/cozo_backend.py +5 -5
- package/src/superlocalmemory/learning/bandit.py +50 -1
- package/src/superlocalmemory/learning/source_quality.py +38 -35
- package/src/superlocalmemory/mcp/_daemon_proxy.py +38 -15
- package/src/superlocalmemory/mcp/tools_active.py +4 -41
- package/src/superlocalmemory/mcp/tools_core.py +26 -87
- package/src/superlocalmemory/mcp/tools_evolution.py +5 -10
- package/src/superlocalmemory/optimize/proxy/capture.py +196 -8
- package/src/superlocalmemory/retrieval/engine.py +8 -3
- package/src/superlocalmemory/retrieval/reranker.py +35 -10
- package/src/superlocalmemory/server/loopback.py +7 -13
- package/src/superlocalmemory/server/profile_runtime.py +14 -0
- package/src/superlocalmemory/server/routes/abstraction.py +2 -4
- package/src/superlocalmemory/server/routes/agents.py +3 -5
- package/src/superlocalmemory/server/routes/behavioral.py +5 -13
- package/src/superlocalmemory/server/routes/brain.py +6 -9
- package/src/superlocalmemory/server/routes/entity.py +3 -7
- package/src/superlocalmemory/server/routes/evolution.py +3 -5
- package/src/superlocalmemory/server/routes/helpers.py +44 -23
- package/src/superlocalmemory/server/routes/insights.py +2 -4
- package/src/superlocalmemory/server/routes/learning.py +2 -5
- package/src/superlocalmemory/server/routes/lifecycle.py +2 -4
- package/src/superlocalmemory/server/routes/memories.py +122 -100
- package/src/superlocalmemory/server/routes/tiers.py +3 -22
- package/src/superlocalmemory/server/routes/timeline.py +2 -4
- package/src/superlocalmemory/server/routes/v3_api.py +18 -16
- package/src/superlocalmemory/server/unified_daemon.py +200 -109
- package/src/superlocalmemory/storage/admission_codec.py +119 -0
- package/src/superlocalmemory/storage/admission_journal.py +728 -0
- package/src/superlocalmemory/storage/database.py +59 -0
- package/src/superlocalmemory/storage/deferred_writes.py +67 -11
- package/src/superlocalmemory/storage/memory_write.py +8 -12
- package/src/superlocalmemory/storage/migration_runner.py +37 -0
- package/src/superlocalmemory/storage/migrations/M032_write_coordinator_admission.py +188 -0
- package/src/superlocalmemory/storage/read_connection.py +115 -0
- package/src/superlocalmemory/storage/write_coordinator.py +756 -0
- package/src/superlocalmemory/ui/index.html +1 -1
- package/src/superlocalmemory/ui/js/auto-settings.js +14 -1
- package/src/superlocalmemory/ui/js/od-settings.js +9 -3
|
@@ -1578,7 +1578,7 @@
|
|
|
1578
1578
|
<script src="static/js/od-skills.js?v=379"></script>
|
|
1579
1579
|
<script src="static/js/od-mesh.js?v=379"></script>
|
|
1580
1580
|
<script src="static/js/od-optimize.js?v=379"></script>
|
|
1581
|
-
<script src="static/js/od-settings.js?v=
|
|
1581
|
+
<script src="static/js/od-settings.js?v=386"></script>
|
|
1582
1582
|
<script src="static/js/od-backup.js?v=379"></script>
|
|
1583
1583
|
<!-- MCP & Integrations pane (v3.8.0): shows exposed MCP tool profile + counts -->
|
|
1584
1584
|
<script src="static/js/od-mcp.js?v=380"></script>
|
|
@@ -463,7 +463,10 @@ async function saveAllSettings() {
|
|
|
463
463
|
async function loadEmbeddingSettings() {
|
|
464
464
|
try {
|
|
465
465
|
var resp = await fetch('/api/v3/embedding/config');
|
|
466
|
-
if (!resp.ok)
|
|
466
|
+
if (!resp.ok) {
|
|
467
|
+
showEmbeddingConfigUnavailable();
|
|
468
|
+
return;
|
|
469
|
+
}
|
|
467
470
|
var data = await resp.json();
|
|
468
471
|
|
|
469
472
|
var provEl = document.getElementById('settings-emb-provider');
|
|
@@ -495,9 +498,19 @@ async function loadEmbeddingSettings() {
|
|
|
495
498
|
}
|
|
496
499
|
} catch (e) {
|
|
497
500
|
console.log('Load embedding settings error:', e);
|
|
501
|
+
showEmbeddingConfigUnavailable();
|
|
498
502
|
}
|
|
499
503
|
}
|
|
500
504
|
|
|
505
|
+
function showEmbeddingConfigUnavailable() {
|
|
506
|
+
var info = document.getElementById('settings-emb-info');
|
|
507
|
+
if (!info) return;
|
|
508
|
+
// Do not alter any form values here: rendering fallback values would make
|
|
509
|
+
// a transient daemon/config failure look like a valid Mode A setup.
|
|
510
|
+
info.textContent = 'Embedding configuration unavailable. Check daemon health and retry.';
|
|
511
|
+
info.className = 'text-warning small';
|
|
512
|
+
}
|
|
513
|
+
|
|
501
514
|
function updateEmbeddingUI() {
|
|
502
515
|
var provider = document.getElementById('settings-emb-provider')?.value || 'default';
|
|
503
516
|
var isCustom = provider === 'openai';
|
|
@@ -368,9 +368,12 @@
|
|
|
368
368
|
]);
|
|
369
369
|
}
|
|
370
370
|
function loadEmb() {
|
|
371
|
-
fetch('/api/v3/embedding/config').then(function (r) {
|
|
371
|
+
fetch('/api/v3/embedding/config').then(function (r) {
|
|
372
|
+
if (!r.ok) throw new Error('embedding config unavailable');
|
|
373
|
+
return r.json();
|
|
374
|
+
})
|
|
372
375
|
.then(function (d) {
|
|
373
|
-
if (!d)
|
|
376
|
+
if (!d) throw new Error('embedding config unavailable');
|
|
374
377
|
var p = q('emb-prov');
|
|
375
378
|
if (p) { p.value = d.is_openai_compatible ? 'openai' : 'default'; p.dispatchEvent(new Event('change')); }
|
|
376
379
|
var m = q('emb-model'); if (m) m.value = d.model_name || '';
|
|
@@ -378,7 +381,10 @@
|
|
|
378
381
|
var ep = q('emb-endpoint'); if (ep) ep.value = d.api_endpoint || '';
|
|
379
382
|
var inf = q('emb-info');
|
|
380
383
|
if (inf) inf.textContent = 'Current: ' + (d.model_name || 'nomic-embed-text') + ' (' + (d.dimension || 768) + 'd)';
|
|
381
|
-
}).catch(function () {
|
|
384
|
+
}).catch(function () {
|
|
385
|
+
var inf = q('emb-info');
|
|
386
|
+
if (inf) inf.textContent = 'Embedding configuration unavailable. Check daemon health and retry.';
|
|
387
|
+
});
|
|
382
388
|
}
|
|
383
389
|
function saveEmb() {
|
|
384
390
|
setSt('emb', 'Saving…', null);
|