@pcircle/memesh 4.8.5 → 4.9.0
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/.claude-plugin/marketplace.json +1 -1
- package/.claude-plugin/plugin.json +1 -1
- package/.codex-plugin/mcp.json +6 -4
- package/.codex-plugin/plugin.json +1 -1
- package/AGENTS.md +60 -14
- package/README.de.md +83 -556
- package/README.md +83 -582
- package/README.zh-TW.md +84 -573
- package/dashboard/dist/index.html +10 -10
- package/dist/cli/view-live.d.ts.map +1 -1
- package/dist/cli/view-live.js +154 -384
- package/dist/cli/view-live.js.map +1 -1
- package/dist/core/agent-router.d.ts +11 -10
- package/dist/core/agent-router.d.ts.map +1 -1
- package/dist/core/agent-router.js +29 -14
- package/dist/core/agent-router.js.map +1 -1
- package/dist/core/agent-scope-id.d.ts.map +1 -1
- package/dist/core/agent-scope-id.js.map +1 -1
- package/dist/core/analytics.d.ts.map +1 -1
- package/dist/core/analytics.js.map +1 -1
- package/dist/core/config.d.ts +4 -40
- package/dist/core/config.d.ts.map +1 -1
- package/dist/core/config.js +75 -141
- package/dist/core/config.js.map +1 -1
- package/dist/core/demo.d.ts.map +1 -1
- package/dist/core/demo.js +6 -6
- package/dist/core/demo.js.map +1 -1
- package/dist/core/doctor.d.ts +1 -6
- package/dist/core/doctor.d.ts.map +1 -1
- package/dist/core/doctor.js +55 -227
- package/dist/core/doctor.js.map +1 -1
- package/dist/core/dreamer.d.ts +32 -47
- package/dist/core/dreamer.d.ts.map +1 -1
- package/dist/core/dreamer.js +211 -703
- package/dist/core/dreamer.js.map +1 -1
- package/dist/core/install-channel.d.ts.map +1 -1
- package/dist/core/install-channel.js +4 -47
- package/dist/core/install-channel.js.map +1 -1
- package/dist/core/install-id.d.ts.map +1 -1
- package/dist/core/install-id.js.map +1 -1
- package/dist/core/kg-backfill.d.ts.map +1 -1
- package/dist/core/kg-backfill.js.map +1 -1
- package/dist/core/lesson-engine.d.ts +0 -5
- package/dist/core/lesson-engine.d.ts.map +1 -1
- package/dist/core/lesson-engine.js +0 -25
- package/dist/core/lesson-engine.js.map +1 -1
- package/dist/core/lifecycle.d.ts.map +1 -1
- package/dist/core/lifecycle.js +54 -48
- package/dist/core/lifecycle.js.map +1 -1
- package/dist/core/memory-tool.d.ts.map +1 -1
- package/dist/core/memory-tool.js +17 -17
- package/dist/core/memory-tool.js.map +1 -1
- package/dist/core/operations.d.ts +2 -26
- package/dist/core/operations.d.ts.map +1 -1
- package/dist/core/operations.js +9 -244
- package/dist/core/operations.js.map +1 -1
- package/dist/core/paths.d.ts +4 -1
- package/dist/core/paths.d.ts.map +1 -1
- package/dist/core/paths.js +88 -14
- package/dist/core/paths.js.map +1 -1
- package/dist/core/product-improvements.js +2 -2
- package/dist/core/product-improvements.js.map +1 -1
- package/dist/core/schema-export.d.ts.map +1 -1
- package/dist/core/schema-export.js +10 -0
- package/dist/core/schema-export.js.map +1 -1
- package/dist/core/semver.d.ts +7 -0
- package/dist/core/semver.d.ts.map +1 -0
- package/dist/core/semver.js +49 -0
- package/dist/core/semver.js.map +1 -0
- package/dist/core/serializer.d.ts.map +1 -1
- package/dist/core/serializer.js +69 -57
- package/dist/core/serializer.js.map +1 -1
- package/dist/core/signal-scorer.d.ts.map +1 -1
- package/dist/core/signal-scorer.js.map +1 -1
- package/dist/core/transcript-extractor.d.ts +1 -85
- package/dist/core/transcript-extractor.d.ts.map +1 -1
- package/dist/core/transcript-extractor.js +5 -364
- package/dist/core/transcript-extractor.js.map +1 -1
- package/dist/core/transcript-source.d.ts +22 -6
- package/dist/core/transcript-source.d.ts.map +1 -1
- package/dist/core/transcript-source.js +108 -69
- package/dist/core/transcript-source.js.map +1 -1
- package/dist/core/types.d.ts +1 -17
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/version-check.d.ts.map +1 -1
- package/dist/core/version-check.js +11 -1
- package/dist/core/version-check.js.map +1 -1
- package/dist/db.d.ts +0 -34
- package/dist/db.d.ts.map +1 -1
- package/dist/db.js +3 -287
- package/dist/db.js.map +1 -1
- package/dist/host-runtime/acp.d.ts.map +1 -1
- package/dist/host-runtime/acp.js +2 -2
- package/dist/host-runtime/acp.js.map +1 -1
- package/dist/host-runtime/claude.d.ts.map +1 -1
- package/dist/host-runtime/claude.js +9 -7
- package/dist/host-runtime/claude.js.map +1 -1
- package/dist/host-runtime/codex-session.d.ts +9 -1
- package/dist/host-runtime/codex-session.d.ts.map +1 -1
- package/dist/host-runtime/codex-session.js +474 -29
- package/dist/host-runtime/codex-session.js.map +1 -1
- package/dist/host-runtime/codex.d.ts.map +1 -1
- package/dist/host-runtime/codex.js +2 -2
- package/dist/host-runtime/codex.js.map +1 -1
- package/dist/host-runtime/config.d.ts +1 -0
- package/dist/host-runtime/config.d.ts.map +1 -1
- package/dist/host-runtime/config.js +4 -0
- package/dist/host-runtime/config.js.map +1 -1
- package/dist/host-runtime/router-client.d.ts.map +1 -1
- package/dist/host-runtime/router-client.js +62 -15
- package/dist/host-runtime/router-client.js.map +1 -1
- package/dist/host-runtime/router.js +2 -2
- package/dist/host-runtime/router.js.map +1 -1
- package/dist/knowledge-graph.d.ts.map +1 -1
- package/dist/knowledge-graph.js +54 -45
- package/dist/knowledge-graph.js.map +1 -1
- package/dist/mcp/THIRD_PARTY_NOTICES.txt +217 -0
- package/dist/mcp/server.js +30685 -38
- package/dist/mcp/server.js.map +6 -1
- package/dist/skills-manifest.json +22 -22
- package/dist/storage/entity-index.d.ts +0 -1
- package/dist/storage/entity-index.d.ts.map +1 -1
- package/dist/storage/entity-index.js +0 -7
- package/dist/storage/entity-index.js.map +1 -1
- package/dist/storage/fts-index.d.ts.map +1 -1
- package/dist/storage/fts-index.js +6 -7
- package/dist/storage/fts-index.js.map +1 -1
- package/dist/storage/graph-repairs.d.ts +0 -5
- package/dist/storage/graph-repairs.d.ts.map +1 -1
- package/dist/storage/graph-repairs.js +4 -91
- package/dist/storage/graph-repairs.js.map +1 -1
- package/dist/storage/schema.d.ts +1 -1
- package/dist/storage/schema.d.ts.map +1 -1
- package/dist/storage/schema.js +1 -2
- package/dist/storage/schema.js.map +1 -1
- package/dist/storage/sqlite.d.ts +0 -1
- package/dist/storage/sqlite.d.ts.map +1 -1
- package/dist/storage/sqlite.js.map +1 -1
- package/dist/transports/agent-messaging.d.ts.map +1 -1
- package/dist/transports/agent-messaging.js +5 -7
- package/dist/transports/agent-messaging.js.map +1 -1
- package/dist/transports/cli/cli.d.ts.map +1 -1
- package/dist/transports/cli/cli.js +52 -674
- package/dist/transports/cli/cli.js.map +1 -1
- package/dist/transports/http/retired-routes.js +1 -1
- package/dist/transports/http/retired-routes.js.map +1 -1
- package/dist/transports/http/server.d.ts.map +1 -1
- package/dist/transports/http/server.js +13 -232
- package/dist/transports/http/server.js.map +1 -1
- package/dist/transports/mcp/handlers.d.ts +127 -1
- package/dist/transports/mcp/handlers.d.ts.map +1 -1
- package/dist/transports/mcp/handlers.js +53 -4
- package/dist/transports/mcp/handlers.js.map +1 -1
- package/dist/transports/schemas.d.ts +52 -0
- package/dist/transports/schemas.d.ts.map +1 -1
- package/dist/transports/schemas.js +39 -0
- package/dist/transports/schemas.js.map +1 -1
- package/docs/platforms/README.md +5 -4
- package/docs/platforms/agent-messaging.md +124 -60
- package/hooks/hooks.json +13 -2
- package/llms-install.md +62 -30
- package/package.json +4 -5
- package/scripts/hooks/_generated/core-paths.js +88 -14
- package/scripts/hooks/_generated/fts-index.js +6 -7
- package/scripts/hooks/_generated/schema.js +1 -2
- package/scripts/hooks/_shared.js +14 -20
- package/scripts/hooks/session-start.js +8 -6
- package/scripts/hooks/session-summary.js +19 -374
- package/skills/memesh/SKILL.md +19 -14
- package/skills/memesh-review/SKILL.md +7 -6
- package/dist/core/auto-tagger.d.ts +0 -10
- package/dist/core/auto-tagger.d.ts.map +0 -1
- package/dist/core/auto-tagger.js +0 -63
- package/dist/core/auto-tagger.js.map +0 -1
- package/dist/core/conflict-candidates.d.ts +0 -20
- package/dist/core/conflict-candidates.d.ts.map +0 -1
- package/dist/core/conflict-candidates.js +0 -71
- package/dist/core/conflict-candidates.js.map +0 -1
- package/dist/core/conflict-judge.d.ts +0 -58
- package/dist/core/conflict-judge.d.ts.map +0 -1
- package/dist/core/conflict-judge.js +0 -189
- package/dist/core/conflict-judge.js.map +0 -1
- package/dist/core/digest-validator.d.ts +0 -18
- package/dist/core/digest-validator.d.ts.map +0 -1
- package/dist/core/digest-validator.js +0 -85
- package/dist/core/digest-validator.js.map +0 -1
- package/dist/core/embedder.d.ts +0 -20
- package/dist/core/embedder.d.ts.map +0 -1
- package/dist/core/embedder.js +0 -245
- package/dist/core/embedder.js.map +0 -1
- package/dist/core/failure-analyzer.d.ts +0 -19
- package/dist/core/failure-analyzer.d.ts.map +0 -1
- package/dist/core/failure-analyzer.js +0 -83
- package/dist/core/failure-analyzer.js.map +0 -1
- package/dist/core/json-utils.d.ts +0 -3
- package/dist/core/json-utils.d.ts.map +0 -1
- package/dist/core/json-utils.js +0 -46
- package/dist/core/json-utils.js.map +0 -1
- package/dist/core/llm-client.d.ts +0 -22
- package/dist/core/llm-client.d.ts.map +0 -1
- package/dist/core/llm-client.js +0 -203
- package/dist/core/llm-client.js.map +0 -1
- package/dist/core/llm-telemetry.d.ts +0 -47
- package/dist/core/llm-telemetry.d.ts.map +0 -1
- package/dist/core/llm-telemetry.js +0 -117
- package/dist/core/llm-telemetry.js.map +0 -1
- package/dist/core/llm-validator.d.ts +0 -20
- package/dist/core/llm-validator.d.ts.map +0 -1
- package/dist/core/llm-validator.js +0 -231
- package/dist/core/llm-validator.js.map +0 -1
- package/dist/core/ollama-host.d.ts +0 -6
- package/dist/core/ollama-host.d.ts.map +0 -1
- package/dist/core/ollama-host.js +0 -62
- package/dist/core/ollama-host.js.map +0 -1
- package/dist/core/output-language.d.ts +0 -6
- package/dist/core/output-language.d.ts.map +0 -1
- package/dist/core/output-language.js +0 -25
- package/dist/core/output-language.js.map +0 -1
- package/dist/core/prompt-safety.d.ts +0 -4
- package/dist/core/prompt-safety.d.ts.map +0 -1
- package/dist/core/prompt-safety.js +0 -20
- package/dist/core/prompt-safety.js.map +0 -1
- package/dist/storage/vector-index.d.ts +0 -3
- package/dist/storage/vector-index.d.ts.map +0 -1
- package/dist/storage/vector-index.js +0 -13
- package/dist/storage/vector-index.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,YAAY;IAC3B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,KAAK,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC;IACjD,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAGD,eAAO,MAAM,mBAAmB,8EAMtB,CAAC;AACX,MAAM,MAAM,gBAAgB,GAAG,OAAO,mBAAmB,CAAC,MAAM,CAAC,CAAC;AAgBlE,MAAM,MAAM,eAAe,GAAG,IAAI,GAAG,QAAQ,GAAG,YAAY,CAAC;AAE7D,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,YAAY,CAAC;IACrB,KAAK,EAAE,eAAe,CAAC;CACxB;AA2DD,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,gBAAgB,EAAE,CAGrE;AAED,wBAAgB,gBAAgB,IAAI,gBAAgB,CAGnD;AAED,wBAAgB,UAAU,IAAI,YAAY,CAEzC;AAmBD,qBAAa,qBAAsB,SAAQ,KAAK;gBAClC,CAAC,EAAE,MAAM;CAOtB;AAOD,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,YAAY,CAYzE;AAED,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAED,wBAAgB,aAAa,IAAI,MAAM,CAEtC"}
|
package/dist/core/config.js
CHANGED
|
@@ -1,6 +1,14 @@
|
|
|
1
1
|
import fs from 'fs';
|
|
2
2
|
import path from 'path';
|
|
3
3
|
import { memeshDir } from './paths.js';
|
|
4
|
+
const CONFIG_KEYS = ['autoCapture', 'sessionLimit', 'autoUpdate', 'setupCompleted'];
|
|
5
|
+
export const RETIRED_CONFIG_KEYS = [
|
|
6
|
+
'llm',
|
|
7
|
+
'llmFallbacks',
|
|
8
|
+
'embedder',
|
|
9
|
+
'language',
|
|
10
|
+
'transcriptMining',
|
|
11
|
+
];
|
|
4
12
|
const PRIVATE_DIR_MODE = 0o700;
|
|
5
13
|
const PRIVATE_FILE_MODE = 0o600;
|
|
6
14
|
function configDir() {
|
|
@@ -10,32 +18,63 @@ function configFilePath() {
|
|
|
10
18
|
return path.join(configDir(), 'config.json');
|
|
11
19
|
}
|
|
12
20
|
let lastConfigReadWarning = null;
|
|
13
|
-
|
|
21
|
+
function warnUnreadable(p, detail) {
|
|
22
|
+
const key = `${p}::${detail}`;
|
|
23
|
+
if (key === lastConfigReadWarning)
|
|
24
|
+
return;
|
|
25
|
+
lastConfigReadWarning = key;
|
|
26
|
+
try {
|
|
27
|
+
process.stderr.write(`[memesh config] ${p} exists but could not be read as a settings object (${detail}). ` +
|
|
28
|
+
'Existing settings are ignored and will not be overwritten until the file is fixed.\n');
|
|
29
|
+
}
|
|
30
|
+
catch {
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
function readRawConfigResult() {
|
|
14
34
|
const p = configFilePath();
|
|
15
35
|
if (!fs.existsSync(p))
|
|
16
|
-
return {
|
|
36
|
+
return { raw: {}, state: 'absent' };
|
|
17
37
|
try {
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
const msg = err instanceof Error ? err.message : String(err);
|
|
22
|
-
const key = `${p}::${msg}`;
|
|
23
|
-
if (key !== lastConfigReadWarning) {
|
|
24
|
-
lastConfigReadWarning = key;
|
|
25
|
-
try {
|
|
26
|
-
process.stderr.write(`[memesh config] ${p} exists but could not be read/parsed (${msg}). ` +
|
|
27
|
-
`Every setting in it — LLM provider, fallbacks, embedder — is being ignored, ` +
|
|
28
|
-
`so Smart Mode is off until this is fixed.\n`);
|
|
29
|
-
}
|
|
30
|
-
catch { }
|
|
38
|
+
const parsed = JSON.parse(fs.readFileSync(p, 'utf8'));
|
|
39
|
+
if (!parsed || typeof parsed !== 'object' || Array.isArray(parsed)) {
|
|
40
|
+
throw new Error('top-level JSON value is not an object');
|
|
31
41
|
}
|
|
32
|
-
return {
|
|
42
|
+
return { raw: parsed, state: 'ok' };
|
|
43
|
+
}
|
|
44
|
+
catch (error) {
|
|
45
|
+
warnUnreadable(p, error instanceof Error ? error.message : String(error));
|
|
46
|
+
return { raw: {}, state: 'unreadable' };
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
function selectConfig(raw) {
|
|
50
|
+
const config = {};
|
|
51
|
+
if (typeof raw.autoCapture === 'boolean')
|
|
52
|
+
config.autoCapture = raw.autoCapture;
|
|
53
|
+
if (typeof raw.sessionLimit === 'number' && Number.isFinite(raw.sessionLimit)) {
|
|
54
|
+
config.sessionLimit = raw.sessionLimit;
|
|
55
|
+
}
|
|
56
|
+
if (raw.autoUpdate === 'off' ||
|
|
57
|
+
raw.autoUpdate === 'patch' ||
|
|
58
|
+
raw.autoUpdate === 'minor' ||
|
|
59
|
+
raw.autoUpdate === 'major') {
|
|
60
|
+
config.autoUpdate = raw.autoUpdate;
|
|
33
61
|
}
|
|
62
|
+
if (typeof raw.setupCompleted === 'boolean')
|
|
63
|
+
config.setupCompleted = raw.setupCompleted;
|
|
64
|
+
return config;
|
|
65
|
+
}
|
|
66
|
+
export function findRetiredConfigKeys(raw) {
|
|
67
|
+
const present = new Set(Object.keys(raw));
|
|
68
|
+
return RETIRED_CONFIG_KEYS.filter((key) => present.has(key));
|
|
69
|
+
}
|
|
70
|
+
export function readConfigResult() {
|
|
71
|
+
const result = readRawConfigResult();
|
|
72
|
+
return { config: selectConfig(result.raw), state: result.state };
|
|
34
73
|
}
|
|
35
74
|
export function readConfig() {
|
|
36
75
|
return readConfigResult().config;
|
|
37
76
|
}
|
|
38
|
-
|
|
77
|
+
function writeRawConfig(raw) {
|
|
39
78
|
const dir = configDir();
|
|
40
79
|
const p = configFilePath();
|
|
41
80
|
fs.mkdirSync(dir, { recursive: true, mode: PRIVATE_DIR_MODE });
|
|
@@ -44,7 +83,7 @@ export function writeConfig(config) {
|
|
|
44
83
|
}
|
|
45
84
|
catch {
|
|
46
85
|
}
|
|
47
|
-
fs.writeFileSync(p, JSON.stringify(
|
|
86
|
+
fs.writeFileSync(p, JSON.stringify(raw, null, 2), { mode: PRIVATE_FILE_MODE });
|
|
48
87
|
try {
|
|
49
88
|
fs.chmodSync(p, PRIVATE_FILE_MODE);
|
|
50
89
|
}
|
|
@@ -54,136 +93,31 @@ export function writeConfig(config) {
|
|
|
54
93
|
export class ConfigUnreadableError extends Error {
|
|
55
94
|
constructor(p) {
|
|
56
95
|
super(`Refusing to modify ${p}: the existing config could not be read, so saving ` +
|
|
57
|
-
|
|
96
|
+
'would silently delete settings already in it. Fix or remove the file, then retry.');
|
|
58
97
|
this.name = 'ConfigUnreadableError';
|
|
59
98
|
}
|
|
60
99
|
}
|
|
61
100
|
export function updateConfig(partial) {
|
|
62
|
-
const
|
|
63
|
-
if (state === 'unreadable')
|
|
101
|
+
const result = readRawConfigResult();
|
|
102
|
+
if (result.state === 'unreadable')
|
|
64
103
|
throw new ConfigUnreadableError(configFilePath());
|
|
65
|
-
const
|
|
66
|
-
const
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
config.llm = partialLlm;
|
|
75
|
-
}
|
|
76
|
-
if (partialEmbedder === null) {
|
|
77
|
-
delete config.embedder;
|
|
104
|
+
const raw = { ...result.raw };
|
|
105
|
+
for (const key of CONFIG_KEYS) {
|
|
106
|
+
if (!Object.prototype.hasOwnProperty.call(partial, key))
|
|
107
|
+
continue;
|
|
108
|
+
const value = partial[key];
|
|
109
|
+
if (value === undefined)
|
|
110
|
+
delete raw[key];
|
|
111
|
+
else
|
|
112
|
+
raw[key] = value;
|
|
78
113
|
}
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
}
|
|
82
|
-
writeConfig(config);
|
|
83
|
-
return config;
|
|
84
|
-
}
|
|
85
|
-
export function maskApiKey(key) {
|
|
86
|
-
if (key.length <= 8)
|
|
87
|
-
return '***';
|
|
88
|
-
return key.slice(0, 4) + '***' + key.slice(-4);
|
|
114
|
+
writeRawConfig(raw);
|
|
115
|
+
return selectConfig(raw);
|
|
89
116
|
}
|
|
90
|
-
function
|
|
91
|
-
|
|
92
|
-
if (raw === undefined)
|
|
93
|
-
return false;
|
|
94
|
-
const v = raw.trim().toLowerCase();
|
|
95
|
-
return v === '0' || v === 'false' || v === 'no' || v === 'off';
|
|
117
|
+
export function getConfigDir() {
|
|
118
|
+
return configDir();
|
|
96
119
|
}
|
|
97
|
-
function
|
|
98
|
-
|
|
99
|
-
return null;
|
|
100
|
-
if (process.env.ANTHROPIC_API_KEY) {
|
|
101
|
-
return { provider: 'anthropic', model: 'claude-haiku-4-5', apiKey: process.env.ANTHROPIC_API_KEY };
|
|
102
|
-
}
|
|
103
|
-
if (process.env.OPENAI_API_KEY) {
|
|
104
|
-
return { provider: 'openai', model: 'gpt-4o-mini', apiKey: process.env.OPENAI_API_KEY };
|
|
105
|
-
}
|
|
106
|
-
if (process.env.OLLAMA_HOST) {
|
|
107
|
-
return { provider: 'ollama', model: 'llama3.2' };
|
|
108
|
-
}
|
|
109
|
-
return null;
|
|
110
|
-
}
|
|
111
|
-
export function detectCapabilities(config) {
|
|
112
|
-
const cfg = config ?? readConfig();
|
|
113
|
-
const configuredLlm = cfg.llm?.provider ? cfg.llm : null;
|
|
114
|
-
const environmentLlm = configuredLlm ? null : detectFromEnv();
|
|
115
|
-
const llm = configuredLlm ?? environmentLlm;
|
|
116
|
-
const llmSource = configuredLlm ? 'config' : environmentLlm ? 'environment' : 'none';
|
|
117
|
-
const embeddings = detectEmbeddingSource(cfg.llm ?? null, cfg.embedder);
|
|
118
|
-
return {
|
|
119
|
-
fts5: true,
|
|
120
|
-
vectorSearch: true,
|
|
121
|
-
scoring: true,
|
|
122
|
-
knowledgeEvolution: true,
|
|
123
|
-
embeddings,
|
|
124
|
-
llm,
|
|
125
|
-
llmSource,
|
|
126
|
-
llmFallbacks: cfg.llmFallbacks ?? [],
|
|
127
|
-
searchLevel: llm ? 1 : 0,
|
|
128
|
-
};
|
|
129
|
-
}
|
|
130
|
-
function detectEmbeddingSource(llm, embedder) {
|
|
131
|
-
const provider = embedder?.provider;
|
|
132
|
-
if (provider !== undefined && provider !== null) {
|
|
133
|
-
if (provider === 'openai' || provider === 'ollama')
|
|
134
|
-
return provider;
|
|
135
|
-
return 'tfidf';
|
|
136
|
-
}
|
|
137
|
-
if (llm?.provider === 'openai')
|
|
138
|
-
return 'openai';
|
|
139
|
-
if (llm?.provider === 'ollama')
|
|
140
|
-
return 'ollama';
|
|
141
|
-
return 'tfidf';
|
|
142
|
-
}
|
|
143
|
-
const EMBEDDING_DIMENSIONS = {
|
|
144
|
-
openai: 1536,
|
|
145
|
-
ollama: 768,
|
|
146
|
-
};
|
|
147
|
-
const KEYWORD_ONLY_DIMENSION = 384;
|
|
148
|
-
export function getEmbeddingDimension(config) {
|
|
149
|
-
const cfg = config ?? readConfig();
|
|
150
|
-
const source = detectEmbeddingSource(cfg.llm ?? null, cfg.embedder);
|
|
151
|
-
return EMBEDDING_DIMENSIONS[source] ?? KEYWORD_ONLY_DIMENSION;
|
|
152
|
-
}
|
|
153
|
-
export function isTranscriptMiningEnabled(config) {
|
|
154
|
-
const env = process.env.MEMESH_TRANSCRIPT_MINING;
|
|
155
|
-
if (env !== undefined) {
|
|
156
|
-
const v = env.trim().toLowerCase();
|
|
157
|
-
if (v === '1' || v === 'true' || v === 'yes' || v === 'on')
|
|
158
|
-
return true;
|
|
159
|
-
if (v === '0' || v === 'false' || v === 'no' || v === 'off' || v === '')
|
|
160
|
-
return false;
|
|
161
|
-
}
|
|
162
|
-
const cfg = config ?? readConfig();
|
|
163
|
-
return cfg.transcriptMining === true;
|
|
164
|
-
}
|
|
165
|
-
export function resolveEmbeddingDimension() {
|
|
166
|
-
const { config, state } = readConfigResult();
|
|
167
|
-
return {
|
|
168
|
-
dimension: getEmbeddingDimension(config),
|
|
169
|
-
confident: state !== 'unreadable',
|
|
170
|
-
configured: state === 'ok',
|
|
171
|
-
};
|
|
172
|
-
}
|
|
173
|
-
export function logCapabilities(config) {
|
|
174
|
-
const caps = detectCapabilities(config);
|
|
175
|
-
process.stderr.write(`MeMesh: Level ${caps.searchLevel} (${caps.searchLevel === 1 ? 'Smart Mode' : 'Core'})\n`);
|
|
176
|
-
if (caps.llm) {
|
|
177
|
-
process.stderr.write(`MeMesh: LLM: ${caps.llm.provider} (${caps.llm.model ?? 'default'})\n`);
|
|
178
|
-
}
|
|
179
|
-
if (caps.embeddings === 'openai' || caps.embeddings === 'ollama') {
|
|
180
|
-
process.stderr.write(`MeMesh: Semantic (meaning-based) search: ON (${caps.embeddings}).\n`);
|
|
181
|
-
}
|
|
182
|
-
else {
|
|
183
|
-
process.stderr.write(`MeMesh: Semantic (meaning-based) search: OFF — keyword search only. ` +
|
|
184
|
-
`Configure ollama or an embedder to enable it.\n`);
|
|
185
|
-
}
|
|
120
|
+
export function getConfigPath() {
|
|
121
|
+
return configFilePath();
|
|
186
122
|
}
|
|
187
|
-
export function getConfigDir() { return configDir(); }
|
|
188
|
-
export function getConfigPath() { return configFilePath(); }
|
|
189
123
|
//# sourceMappingURL=config.js.map
|
package/dist/core/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"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"}
|
package/dist/core/demo.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"demo.d.ts","sourceRoot":"","sources":["../../src/core/demo.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAG3D,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AA0HD,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,CAsB1E,CAAC;AAEF,wBAAgB,QAAQ,CACtB,EAAE,EAAE,cAAc,EAClB,IAAI,GAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAO,GAC7B,UAAU,
|
|
1
|
+
{"version":3,"file":"demo.d.ts","sourceRoot":"","sources":["../../src/core/demo.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAG3D,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AA0HD,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,CAsB1E,CAAC;AAEF,wBAAgB,QAAQ,CACtB,EAAE,EAAE,cAAc,EAClB,IAAI,GAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAO,GAC7B,UAAU,CAkFZ"}
|
package/dist/core/demo.js
CHANGED
|
@@ -8,13 +8,13 @@ const DEMO_DATA = [
|
|
|
8
8
|
{ daysAgo: 28, name: 'testing-strategy', type: 'best_practice', observations: ['vitest with forks pool mode for native modules', 'Real DB in tests; no SQL mocks'] },
|
|
9
9
|
{ daysAgo: 22, name: 'feature-auth-flow', type: 'feature', observations: ['Email + password with TOTP fallback', 'Session cookies HttpOnly + Secure + SameSite=Lax'] },
|
|
10
10
|
{ daysAgo: 21, name: 'plan-billing-rollout', type: 'plan', observations: ['Plan: stripe-billing-rollout', 'Steps: webhook ingest, idempotent invoice processor, customer portal embed'] },
|
|
11
|
-
{ daysAgo: 20, name: 'lesson-api-import-missing', type: 'lesson_learned', observations: ['Error:
|
|
12
|
-
{ daysAgo: 20, name: 'arch-storage-layer', type: 'architecture', observations: ['SQLite
|
|
11
|
+
{ daysAgo: 20, name: 'lesson-api-import-missing', type: 'lesson_learned', observations: ['Error: a database module imported through the wrong dependency layer', 'Root cause: function placed by domain instead of dependency direction', 'Fix: moved the shared rule to the lower-level module', 'Prevention: check for cycles before adding new imports'], tags: ['error-pattern:import-missing', 'severity:minor'] },
|
|
12
|
+
{ daysAgo: 20, name: 'arch-storage-layer', type: 'architecture', observations: ['SQLite stores the durable memory graph', 'FTS5 provides local full-text recall without a model provider'] },
|
|
13
13
|
{ daysAgo: 19, name: 'pattern-event-sourcing', type: 'technical_pattern', observations: ['Append-only event log with periodic snapshots', 'Replay rebuilds projections deterministically'] },
|
|
14
14
|
{ daysAgo: 14, name: 'lesson-billing-config-error', type: 'lesson_learned', observations: ['Error: billing webhook env var not propagated to staging', 'Root cause: secrets manager only synced production tier', 'Fix: extended sync to all tiers, added smoke check in CI', 'Prevention: env-var presence assertion at startup, fail fast'], tags: ['error-pattern:config-error', 'severity:major'] },
|
|
15
15
|
{ daysAgo: 13, name: 'bugfix-race-on-double-submit', type: 'bug_fix', observations: ['Symptom: double charges on slow networks', 'Cause: idempotency key derived after request body parse', 'Fix: derive key in middleware before any I/O'] },
|
|
16
|
-
{ daysAgo: 13, name: 'decision-graceful-degradation', type: 'decision', observations: ['
|
|
17
|
-
{ daysAgo: 12, name: 'arch-recall-pipeline', type: 'architecture', observations: ['FTS5
|
|
16
|
+
{ daysAgo: 13, name: 'decision-graceful-degradation', type: 'decision', observations: ['Core recall must not depend on a model provider', 'Agent work packages stage optional suggestions for human review'] },
|
|
17
|
+
{ daysAgo: 12, name: 'arch-recall-pipeline', type: 'architecture', observations: ['FTS5 match order → access-count boost → impact score', 'One authoritative retrieval path keeps provenance understandable'] },
|
|
18
18
|
{ daysAgo: 11, name: 'lesson-test-failure-flake', type: 'lesson_learned', observations: ['Error: integration tests passed locally, failed in CI 30% of the time', 'Root cause: tests shared a global temp dir cleared at suite end', 'Fix: per-test mkdtemp + per-test cleanup in afterEach', 'Prevention: assume parallelism; never share mutable state across tests'], tags: ['error-pattern:test-failure', 'severity:major'] },
|
|
19
19
|
{ daysAgo: 7, name: 'pattern-noise-filter', type: 'pattern', observations: ['Auto-tag commits + sessions with type-specific labels', 'UI default-hides noise types; dashboard uses signal-first surfacing'] },
|
|
20
20
|
{ daysAgo: 7, name: 'bugfix-stale-cache-banner', type: 'bug_fix', observations: ['Symptom: deprecation banner stayed visible after upgrade', 'Cause: cache TTL only refreshed on explicit "check now"', 'Fix: also refresh on session-start when cache is fresh'] },
|
|
@@ -84,7 +84,7 @@ export function seedDemo(db, opts = {}) {
|
|
|
84
84
|
}
|
|
85
85
|
return n;
|
|
86
86
|
});
|
|
87
|
-
return { inserted: 0, removed: removeAll(rows.map((r) => r.name)) };
|
|
87
|
+
return { inserted: 0, removed: removeAll.immediate(rows.map((r) => r.name)) };
|
|
88
88
|
}
|
|
89
89
|
const kg = new KnowledgeGraph(db);
|
|
90
90
|
let inserted = 0;
|
|
@@ -115,7 +115,7 @@ export function seedDemo(db, opts = {}) {
|
|
|
115
115
|
continue;
|
|
116
116
|
kg.createRelation(from, to, type);
|
|
117
117
|
}
|
|
118
|
-
})();
|
|
118
|
+
}).immediate();
|
|
119
119
|
}
|
|
120
120
|
return { inserted, removed: 0 };
|
|
121
121
|
}
|
package/dist/core/demo.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"demo.js","sourceRoot":"","sources":["../../src/core/demo.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAOvD,MAAM,QAAQ,GAAG,qBAAqB,CAAC;AAYvC,MAAM,SAAS,GAAiB;IAE9B,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC,2CAA2C,EAAE,sCAAsC,CAAC,EAAE;IAC7J,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC,gCAAgC,EAAE,iCAAiC,CAAC,EAAE;IACzI,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC,kCAAkC,EAAE,0CAA0C,CAAC,EAAE;IACpJ,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC,4DAA4D,CAAC,EAAE;IACrI,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,eAAe,EAAE,YAAY,EAAE,CAAC,gDAAgD,EAAE,gCAAgC,CAAC,EAAE;IAGpK,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC,qCAAqC,EAAE,kDAAkD,CAAC,EAAE;IACtK,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,8BAA8B,EAAE,4EAA4E,CAAC,EAAE;IACzL,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,2BAA2B,EAAE,IAAI,EAAE,gBAAgB,EAAE,YAAY,EAAE,CAAC
|
|
1
|
+
{"version":3,"file":"demo.js","sourceRoot":"","sources":["../../src/core/demo.ts"],"names":[],"mappings":"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"}
|
package/dist/core/doctor.d.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import fs from 'fs';
|
|
2
|
-
import {
|
|
3
|
-
import { probeProvider } from './llm-validator.js';
|
|
2
|
+
import { getConfigPath } from './config.js';
|
|
4
3
|
import { openDatabase, closeDatabase, isDatabaseOpen } from '../db.js';
|
|
5
4
|
import { getUpdateCheck } from './version-check.js';
|
|
6
5
|
import { getCurrentInstallChannel, getInstallChannelSupport } from './install-channel.js';
|
|
@@ -25,15 +24,11 @@ interface DoctorOptions {
|
|
|
25
24
|
packageRoot: string;
|
|
26
25
|
packageVersion: string;
|
|
27
26
|
probeHttp?: boolean;
|
|
28
|
-
probeCapabilities?: boolean;
|
|
29
|
-
embedTextImpl?: (text: string) => Promise<Float32Array | null>;
|
|
30
|
-
probeProviderImpl?: typeof probeProvider;
|
|
31
27
|
httpBaseUrl?: string;
|
|
32
28
|
platform?: NodeJS.Platform;
|
|
33
29
|
openDatabaseImpl?: typeof openDatabase;
|
|
34
30
|
closeDatabaseImpl?: typeof closeDatabase;
|
|
35
31
|
isDatabaseOpenImpl?: typeof isDatabaseOpen;
|
|
36
|
-
detectCapabilitiesImpl?: typeof detectCapabilities;
|
|
37
32
|
getConfigPathImpl?: typeof getConfigPath;
|
|
38
33
|
getUpdateCheckImpl?: typeof getUpdateCheck;
|
|
39
34
|
getCurrentInstallChannelImpl?: typeof getCurrentInstallChannel;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/core/doctor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/core/doctor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AAOpB,OAAO,EAAyB,aAAa,EAAc,MAAM,aAAa,CAAC;AAC/E,OAAO,EACL,YAAY,EAAE,aAAa,EAAE,cAAc,EAC5C,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,OAAO,EACL,wBAAwB,EAAE,wBAAwB,EAGnD,MAAM,sBAAsB,CAAC;AAc9B,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AACzD,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,oBAAoB,GAAG,MAAM,CAAC;AAEzE,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,iBAAiB,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IAQb,KAAK,CAAC,EAAE,eAAe,GAAG,aAAa,GAAG,UAAU,CAAC;IAkBrD,aAAa,CAAC,EAAE,OAAO,CAAC;IAYxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;CAC1C;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,mBAAmB,CAAC;IAC5B,MAAM,EAAE,WAAW,EAAE,CAAC;CACvB;AAuBD,UAAU,aAAa;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC;IAC3B,gBAAgB,CAAC,EAAE,OAAO,YAAY,CAAC;IACvC,iBAAiB,CAAC,EAAE,OAAO,aAAa,CAAC;IACzC,kBAAkB,CAAC,EAAE,OAAO,cAAc,CAAC;IAC3C,iBAAiB,CAAC,EAAE,OAAO,aAAa,CAAC;IACzC,kBAAkB,CAAC,EAAE,OAAO,cAAc,CAAC;IAC3C,4BAA4B,CAAC,EAAE,OAAO,wBAAwB,CAAC;IAG/D,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAGlC,sBAAsB,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,sBAAsB,EAAE,UAAU,KAAK,MAAM,GAAG,IAAI,CAAC;IAE5F,wBAAwB,CAAC,EAAE,MAAM,oBAAoB,EAAE,CAAC;IACxD,4BAA4B,CAAC,EAAE,OAAO,wBAAwB,CAAC;IAC/D,cAAc,CAAC,EAAE,OAAO,EAAE,CAAC,UAAU,CAAC;IACtC,gBAAgB,CAAC,EAAE,OAAO,EAAE,CAAC,YAAY,CAAC;IAC1C,YAAY,CAAC,EAAE,OAAO,EAAE,CAAC,QAAQ,CAAC;IAIlC,OAAO,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IAC5B,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IAKzB,yBAAyB,CAAC,EAAE;QAC1B,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,gBAAgB,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;KAClC,CAAC;IAIF,sBAAsB,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK;QAAE,EAAE,EAAE,IAAI,CAAA;KAAE,GAAG;QAAE,EAAE,EAAE,KAAK,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAMhG,sBAAsB,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;IAM7C,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,0BAA0B,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK;QAAE,EAAE,EAAE,IAAI,CAAA;KAAE,GAAG;QAAE,EAAE,EAAE,KAAK,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAKpG,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,4BAA4B,CAAC,EAAE,MAAM,OAAO,CAAC,wBAAwB,CAAC,CAAC;CACxE;AAED,UAAU,oBAAoB;IAC5B,IAAI,EAAE,OAAO,sBAAsB,EAAE,UAAU,CAAC;IAChD,WAAW,EAAE,MAAM,CAAC;IACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAUD,KAAK,wBAAwB,GAAG;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,WAAW,GAAG,SAAS,GAAG,UAAU,GAAG,aAAa,CAAC;IAC7D,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AA0rCF,wBAAgB,UAAU,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAMjE;AAsDD,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,OAAO,GAAG,IAAI,CAYhB;AAsBD,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,OAAO,EAAE,CAAC,UAAU,EACpC,gBAAgB,EAAE,OAAO,EAAE,CAAC,YAAY,EACxC,WAAW,GAAE,MAAwB,EACrC,SAAS,GAAE,MAAiC,EAC5C,iBAAiB,GAAE,MAAM,OAA0B,GAClD,WAAW,CAqDb;AAWD,wBAAgB,gBAAgB,IAAI,OAAO,CAO1C;AAgjCD,wBAAsB,SAAS,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CA0d7E;AAaD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,GAAG,MAAM,EAAE,CAgBzF"}
|