@pcircle/memesh 4.3.0 → 4.5.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 +2 -2
- package/.claude-plugin/plugin.json +2 -2
- package/README.de.md +35 -12
- package/README.es.md +13 -9
- package/README.fr.md +33 -10
- package/README.ja.md +13 -9
- package/README.ko.md +14 -10
- package/README.md +18 -11
- package/README.pt.md +32 -9
- package/README.th.md +18 -8
- package/README.vi.md +34 -11
- package/README.zh-CN.md +14 -10
- package/README.zh-TW.md +14 -10
- package/dashboard/dist/index.html +10 -10
- package/dist/cli/view-live.js +2 -2
- package/dist/cli/view.js +1 -1
- package/dist/core/analytics.d.ts +4 -0
- package/dist/core/analytics.d.ts.map +1 -1
- package/dist/core/analytics.js +8 -8
- package/dist/core/analytics.js.map +1 -1
- package/dist/core/auto-tagger.d.ts.map +1 -1
- package/dist/core/auto-tagger.js.map +1 -1
- package/dist/core/config.d.ts +5 -2
- package/dist/core/config.d.ts.map +1 -1
- package/dist/core/config.js +28 -13
- package/dist/core/config.js.map +1 -1
- package/dist/core/demo.d.ts +1 -0
- package/dist/core/demo.d.ts.map +1 -1
- package/dist/core/demo.js +24 -0
- package/dist/core/demo.js.map +1 -1
- package/dist/core/digest-validator.d.ts.map +1 -1
- package/dist/core/digest-validator.js +3 -1
- package/dist/core/digest-validator.js.map +1 -1
- package/dist/core/doctor.d.ts +2 -0
- package/dist/core/doctor.d.ts.map +1 -1
- package/dist/core/doctor.js +70 -60
- package/dist/core/doctor.js.map +1 -1
- package/dist/core/dreamer.d.ts +21 -1
- package/dist/core/dreamer.d.ts.map +1 -1
- package/dist/core/dreamer.js +86 -8
- package/dist/core/dreamer.js.map +1 -1
- package/dist/core/embedder.d.ts +1 -4
- package/dist/core/embedder.d.ts.map +1 -1
- package/dist/core/embedder.js +5 -92
- package/dist/core/embedder.js.map +1 -1
- package/dist/core/failure-analyzer.d.ts.map +1 -1
- package/dist/core/failure-analyzer.js +2 -1
- package/dist/core/failure-analyzer.js.map +1 -1
- package/dist/core/llm-client.d.ts.map +1 -1
- package/dist/core/llm-client.js.map +1 -1
- package/dist/core/llm-validator.d.ts +1 -0
- package/dist/core/llm-validator.d.ts.map +1 -1
- package/dist/core/llm-validator.js +33 -10
- package/dist/core/llm-validator.js.map +1 -1
- package/dist/core/operations.d.ts.map +1 -1
- package/dist/core/operations.js +10 -3
- package/dist/core/operations.js.map +1 -1
- package/dist/core/output-language.d.ts +6 -0
- package/dist/core/output-language.d.ts.map +1 -0
- package/dist/core/output-language.js +25 -0
- package/dist/core/output-language.js.map +1 -0
- package/dist/core/patterns.d.ts +0 -1
- package/dist/core/patterns.d.ts.map +1 -1
- package/dist/core/patterns.js +1 -5
- package/dist/core/patterns.js.map +1 -1
- package/dist/core/transcript-extractor.d.ts +89 -0
- package/dist/core/transcript-extractor.d.ts.map +1 -0
- package/dist/core/transcript-extractor.js +437 -0
- package/dist/core/transcript-extractor.js.map +1 -0
- package/dist/core/transcript-source.d.ts +21 -0
- package/dist/core/transcript-source.d.ts.map +1 -0
- package/dist/core/transcript-source.js +142 -0
- package/dist/core/transcript-source.js.map +1 -0
- package/dist/core/types.d.ts +4 -0
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/verifier.js +1 -1
- package/dist/core/verifier.js.map +1 -1
- package/dist/db.d.ts.map +1 -1
- package/dist/db.js +10 -0
- package/dist/db.js.map +1 -1
- package/dist/skills-manifest.json +11 -11
- package/dist/transports/cli/cli.d.ts.map +1 -1
- package/dist/transports/cli/cli.js +229 -65
- package/dist/transports/cli/cli.js.map +1 -1
- package/dist/transports/http/server.d.ts +7 -0
- package/dist/transports/http/server.d.ts.map +1 -1
- package/dist/transports/http/server.js +145 -50
- package/dist/transports/http/server.js.map +1 -1
- package/dist/transports/mcp/handlers.d.ts +1 -1
- package/dist/transports/mcp/handlers.d.ts.map +1 -1
- package/dist/transports/mcp/handlers.js +3 -2
- package/dist/transports/mcp/handlers.js.map +1 -1
- package/dist/transports/schemas.d.ts.map +1 -1
- package/dist/transports/schemas.js.map +1 -1
- package/package.json +2 -11
- package/scripts/hooks/post-commit.js +8 -2
- package/scripts/hooks/pre-compact.js +9 -0
- package/scripts/hooks/session-start.js +1 -1
- package/skills/agentic-orchestration/SKILL.md +1 -1
- package/skills/memesh/SKILL.md +2 -0
package/dist/core/embedder.js
CHANGED
|
@@ -1,38 +1,16 @@
|
|
|
1
|
-
import { createRequire } from 'node:module';
|
|
2
|
-
import { existsSync } from 'fs';
|
|
3
1
|
import { getDatabase } from '../db.js';
|
|
4
|
-
import { join } from 'path';
|
|
5
2
|
import { detectCapabilities, getEmbeddingDimension } from './config.js';
|
|
6
|
-
|
|
7
|
-
let onnxPipelineInstance = null;
|
|
8
|
-
let onnxPipelineLoading = null;
|
|
9
|
-
let onnxAvailableChecked = false;
|
|
10
|
-
let onnxAvailableResult = false;
|
|
11
|
-
export const MAX_VECTOR_DISTANCE = 1.30;
|
|
3
|
+
export const MAX_VECTOR_DISTANCE = 1.00;
|
|
12
4
|
export function vectorSimilarity(distance) {
|
|
13
5
|
return Math.max(0, 1 - distance / 2);
|
|
14
6
|
}
|
|
15
|
-
const ONNX_TRANSFORMERS_PACKAGE = '@huggingface/transformers';
|
|
16
|
-
const ONNX_MODEL_ID = 'Xenova/all-MiniLM-L6-v2';
|
|
17
|
-
const ONNX_CACHE_SUBDIR = 'models';
|
|
18
7
|
const pendingEmbeddingWrites = new Set();
|
|
19
|
-
export function isOnnxModelCached() {
|
|
20
|
-
try {
|
|
21
|
-
const [org, name] = ONNX_MODEL_ID.split('/');
|
|
22
|
-
return existsSync(join(memeshDir(), ONNX_CACHE_SUBDIR, org, name, 'onnx', 'model.onnx'));
|
|
23
|
-
}
|
|
24
|
-
catch {
|
|
25
|
-
return false;
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
8
|
export function isEmbeddingAvailable() {
|
|
29
9
|
const caps = detectCapabilities();
|
|
30
10
|
if (caps.embeddings === 'openai')
|
|
31
11
|
return true;
|
|
32
12
|
if (caps.embeddings === 'ollama')
|
|
33
13
|
return true;
|
|
34
|
-
if (caps.embeddings === 'onnx')
|
|
35
|
-
return isOnnxAvailable();
|
|
36
14
|
return false;
|
|
37
15
|
}
|
|
38
16
|
export async function canRefillVectorIndex() {
|
|
@@ -48,12 +26,6 @@ export async function canRefillVectorIndex() {
|
|
|
48
26
|
}
|
|
49
27
|
}
|
|
50
28
|
export { getEmbeddingDimension } from './config.js';
|
|
51
|
-
export function resetEmbeddingState() {
|
|
52
|
-
onnxAvailableChecked = false;
|
|
53
|
-
onnxAvailableResult = false;
|
|
54
|
-
onnxPipelineInstance = null;
|
|
55
|
-
onnxPipelineLoading = null;
|
|
56
|
-
}
|
|
57
29
|
export function scheduleEmbedAndStore(entityId, text) {
|
|
58
30
|
const pending = embedAndStore(entityId, text);
|
|
59
31
|
const tracked = pending.finally(() => {
|
|
@@ -86,11 +58,9 @@ export async function embedText(text) {
|
|
|
86
58
|
if (caps.embeddings === 'openai' || caps.embeddings === 'ollama') {
|
|
87
59
|
const sharedKey = caps.llm?.provider === caps.embeddings ? caps.llm.apiKey : undefined;
|
|
88
60
|
const cfg = { provider: caps.embeddings, model: undefined, apiKey: sharedKey };
|
|
89
|
-
|
|
90
|
-
if (result)
|
|
91
|
-
return result;
|
|
61
|
+
return embedWithProvider(text, cfg);
|
|
92
62
|
}
|
|
93
|
-
return
|
|
63
|
+
return null;
|
|
94
64
|
}
|
|
95
65
|
export async function embedAndStore(entityId, text) {
|
|
96
66
|
try {
|
|
@@ -104,9 +74,8 @@ export async function embedAndStore(entityId, text) {
|
|
|
104
74
|
if (expectedDim > 0 && actualDim !== expectedDim) {
|
|
105
75
|
process.stderr.write(`MeMesh: Embedding dimension mismatch (got ${actualDim}, expected ${expectedDim}). ` +
|
|
106
76
|
`Skipping vector write for entity ${entityId}. ` +
|
|
107
|
-
`If
|
|
108
|
-
`'memesh reindex'
|
|
109
|
-
`rebuilt at the new dimension: 'memesh reindex --vectors'.\n`);
|
|
77
|
+
`If you switched embedders, the vector index has to be rebuilt at the new ` +
|
|
78
|
+
`dimension: 'memesh reindex --vectors'.\n`);
|
|
110
79
|
return 'dimension_mismatch';
|
|
111
80
|
}
|
|
112
81
|
const rowId = toVectorRowId(entityId);
|
|
@@ -191,60 +160,4 @@ async function embedWithOllama(text, config) {
|
|
|
191
160
|
return null;
|
|
192
161
|
return new Float32Array(embedding);
|
|
193
162
|
}
|
|
194
|
-
function isOnnxAvailable() {
|
|
195
|
-
if (onnxAvailableChecked)
|
|
196
|
-
return onnxAvailableResult;
|
|
197
|
-
onnxAvailableChecked = true;
|
|
198
|
-
try {
|
|
199
|
-
const require = createRequire(import.meta.url);
|
|
200
|
-
require.resolve(ONNX_TRANSFORMERS_PACKAGE);
|
|
201
|
-
onnxAvailableResult = true;
|
|
202
|
-
}
|
|
203
|
-
catch {
|
|
204
|
-
onnxAvailableResult = false;
|
|
205
|
-
}
|
|
206
|
-
return onnxAvailableResult;
|
|
207
|
-
}
|
|
208
|
-
export function onnxCacheDir() {
|
|
209
|
-
const override = process.env.MEMESH_MODEL_CACHE_DIR;
|
|
210
|
-
if (override && override.trim() !== '')
|
|
211
|
-
return override;
|
|
212
|
-
return join(memeshDir(), ONNX_CACHE_SUBDIR);
|
|
213
|
-
}
|
|
214
|
-
async function getOnnxPipeline() {
|
|
215
|
-
if (onnxPipelineInstance)
|
|
216
|
-
return onnxPipelineInstance;
|
|
217
|
-
if (onnxPipelineLoading)
|
|
218
|
-
return onnxPipelineLoading;
|
|
219
|
-
onnxPipelineLoading = (async () => {
|
|
220
|
-
try {
|
|
221
|
-
const mod = await import(ONNX_TRANSFORMERS_PACKAGE);
|
|
222
|
-
const createPipeline = mod.pipeline;
|
|
223
|
-
const env = mod.env;
|
|
224
|
-
if (env) {
|
|
225
|
-
env.cacheDir = onnxCacheDir();
|
|
226
|
-
env.allowLocalModels = true;
|
|
227
|
-
}
|
|
228
|
-
onnxPipelineInstance = await createPipeline('feature-extraction', ONNX_MODEL_ID);
|
|
229
|
-
return onnxPipelineInstance;
|
|
230
|
-
}
|
|
231
|
-
catch (err) {
|
|
232
|
-
onnxPipelineLoading = null;
|
|
233
|
-
throw err;
|
|
234
|
-
}
|
|
235
|
-
})();
|
|
236
|
-
return onnxPipelineLoading;
|
|
237
|
-
}
|
|
238
|
-
async function embedWithOnnx(text) {
|
|
239
|
-
if (!isOnnxAvailable())
|
|
240
|
-
return null;
|
|
241
|
-
try {
|
|
242
|
-
const pipe = await getOnnxPipeline();
|
|
243
|
-
const output = await pipe(text, { pooling: 'mean', normalize: true });
|
|
244
|
-
return new Float32Array(output.data);
|
|
245
|
-
}
|
|
246
|
-
catch {
|
|
247
|
-
return null;
|
|
248
|
-
}
|
|
249
|
-
}
|
|
250
163
|
//# sourceMappingURL=embedder.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"embedder.js","sourceRoot":"","sources":["../../src/core/embedder.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"embedder.js","sourceRoot":"","sources":["../../src/core/embedder.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAkB,MAAM,aAAa,CAAC;AAsCxF,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,CAAC;AAYxC,MAAM,UAAU,gBAAgB,CAAC,QAAgB;IAC/C,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,QAAQ,GAAG,CAAC,CAAC,CAAC;AACvC,CAAC;AACD,MAAM,sBAAsB,GAAG,IAAI,GAAG,EAAoB,CAAC;AAW3D,MAAM,UAAU,oBAAoB;IAClC,MAAM,IAAI,GAAG,kBAAkB,EAAE,CAAC;IAClC,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC9C,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAG9C,OAAO,KAAK,CAAC;AACf,CAAC;AAyBD,MAAM,CAAC,KAAK,UAAU,oBAAoB;IACxC,MAAM,MAAM,GAAG,qBAAqB,EAAE,CAAC;IACvC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC;QAAE,OAAO,KAAK,CAAC;IAC3D,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,mCAAmC,CAAC,CAAC;QACnE,OAAO,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC;IACnD,CAAC;IAAC,MAAM,CAAC;QAIP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAGD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEpD,MAAM,UAAU,qBAAqB,CAAC,QAAgB,EAAE,IAAY;IAClE,MAAM,OAAO,GAAG,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC9C,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE;QACnC,sBAAsB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;IACH,sBAAsB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AACtC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB;IAC1C,OAAO,sBAAsB,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QACvC,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,sBAAsB,CAAC,CAAC,CAAC;IACxD,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,QAAgB;IACrC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,QAAQ,IAAI,CAAC,EAAE,CAAC;QACrD,MAAM,IAAI,KAAK,CAAC,yCAAyC,QAAQ,EAAE,CAAC,CAAC;IACvE,CAAC;IACD,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,YAAY,CAAC,SAAuB;IAC3C,OAAO,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,UAAU,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC;AACnF,CAAC;AAED,SAAS,wBAAwB,CAAC,GAAY;IAC5C,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,CAAC,SAAS,IAAI,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC;IACzE,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACpC,OAAO,OAAO,KAAK,qBAAqB,IAAI,OAAO,CAAC,QAAQ,CAAC,iCAAiC,CAAC,CAAC;AAClG,CAAC;AAaD,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,IAAY;IAC1C,MAAM,IAAI,GAAG,kBAAkB,EAAE,CAAC;IAElC,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;QAIjE,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,QAAQ,KAAK,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;QACvF,MAAM,GAAG,GAAG,EAAE,QAAQ,EAAE,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAe,CAAC;QAC5F,OAAO,iBAAiB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IACtC,CAAC;IAGD,OAAO,IAAI,CAAC;AACd,CAAC;AAkCD,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,QAAgB,EAAE,IAAY;IAChE,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,CAAC,SAAS;YAAE,OAAO,cAAc,CAAC;QAEtC,MAAM,EAAE,GAAG,WAAW,EAAE,CAAC;QAMzB,MAAM,SAAS,GAAG,EAAE,CAAC,OAAO,CAC1B,qEAAqE,CACtE,CAAC,GAAG,EAAmC,CAAC;QAEzC,MAAM,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAClE,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC;QAEnC,IAAI,WAAW,GAAG,CAAC,IAAI,SAAS,KAAK,WAAW,EAAE,CAAC;YAKjD,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,6CAA6C,SAAS,cAAc,WAAW,KAAK;gBACpF,oCAAoC,QAAQ,IAAI;gBAChD,2EAA2E;gBAC3E,0CAA0C,CAC3C,CAAC;YACF,OAAO,oBAAoB,CAAC;QAC9B,CAAC;QAED,MAAM,KAAK,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;QACtC,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CACvB,0CAA0C,CAC3C,CAAC,GAAG,CAAC,QAAQ,CAAmC,CAAC;QAElD,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YAC5C,EAAE,CAAC,OAAO,CAAC,0CAA0C,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAClE,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,WAAW,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE;YAEtC,EAAE,CAAC,OAAO,CAAC,0CAA0C,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAClE,EAAE,CAAC,OAAO,CAAC,2DAA2D,CAAC,CAAC,GAAG,CACzE,KAAK,EACL,YAAY,CAAC,SAAS,CAAC,CACxB,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,WAAW,EAAE,CAAC;QACd,OAAO,QAAQ,CAAC;IAClB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,wBAAwB,CAAC,GAAG,CAAC;YAAE,OAAO,iBAAiB,CAAC;QAG5D,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,SAAS,IAAI,GAAG,EAAE,CAAC;YACvD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,0CAA0C,QAAQ,KAAK,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC;QAC/F,CAAC;QACD,OAAO,cAAc,CAAC;IACxB,CAAC;AACH,CAAC;AAKD,MAAM,UAAU,YAAY,CAC1B,cAA4B,EAC5B,QAAgB,EAAE;IAElB,IAAI,CAAC;QACH,MAAM,EAAE,GAAG,WAAW,EAAE,CAAC;QACzB,MAAM,IAAI,GAAG,EAAE;aACZ,OAAO,CACN,kGAAkG,CACnG;aACA,GAAG,CACF,YAAY,CAAC,cAAc,CAAC,EAC5B,KAAK,CACqC,CAAC;QAC/C,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,GAAG,mBAAmB,CAAC,CAAC;IAClE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAID,KAAK,UAAU,iBAAiB,CAAC,IAAY,EAAE,MAAiB;IAC9D,IAAI,CAAC;QACH,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ;YAAE,OAAO,MAAM,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC7E,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ;YAAE,OAAO,MAAM,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAE7E,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,IAAY,EAAE,MAAiB;IAS5D,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;IAC3D,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAEzB,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,sCAAsC,EAAE;QAC9D,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,EAAE,eAAe,EAAE,UAAU,MAAM,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;QACpF,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;YACnB,KAAK,EAAE,wBAAwB;YAC/B,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC;SAC3B,CAAC;KACH,CAAC,CAAC;IACH,IAAI,CAAC,GAAG,CAAC,EAAE;QAAE,OAAO,IAAI,CAAC;IAEzB,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAgD,CAAC;IAC5E,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC;IAC5C,IAAI,CAAC,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAEzD,OAAO,IAAI,YAAY,CAAC,SAAS,CAAC,CAAC;AACrC,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,IAAY,EAAE,MAAiB;IAC5D,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,wBAAwB,CAAC;IACjE,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,kBAAkB,CAAC;IAEjD,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,YAAY,EAAE;QAC3C,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;QAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC;KAC5D,CAAC,CAAC;IACH,IAAI,CAAC,GAAG,CAAC,EAAE;QAAE,OAAO,IAAI,CAAC;IAEzB,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAiC,CAAC;IAC7D,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC;IACvC,IAAI,CAAC,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAEzD,OAAO,IAAI,YAAY,CAAC,SAAS,CAAC,CAAC;AACrC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"failure-analyzer.d.ts","sourceRoot":"","sources":["../../src/core/failure-analyzer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAW,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"failure-analyzer.d.ts","sourceRoot":"","sources":["../../src/core/failure-analyzer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAW,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAI3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,cAAc,CAAC;CAC1B;AAOD,MAAM,WAAW,qBAAqB;IAEpC,SAAS,CAAC,EAAE,SAAS,EAAE,CAAC;IAExB,SAAS,CAAC,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,KAAK,IAAI,CAAC;CAC9C;AAED,wBAAsB,cAAc,CAClC,MAAM,EAAE,MAAM,EAAE,EAChB,WAAW,EAAE,MAAM,EAAE,EACrB,SAAS,EAAE,SAAS,EACpB,IAAI,GAAE,qBAA0B,GAC/B,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CA2ElC;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CAyBjE"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { callLLM } from './llm-client.js';
|
|
2
2
|
import { recordTelemetry } from './llm-telemetry.js';
|
|
3
3
|
import { sanitizeForPrompt, sanitizeListForPrompt } from './prompt-safety.js';
|
|
4
|
+
import { outputLanguageInstruction } from './output-language.js';
|
|
4
5
|
export async function analyzeFailure(errors, filesEdited, llmConfig, opts = {}) {
|
|
5
6
|
const unique = [...new Set(errors)].slice(0, 5);
|
|
6
7
|
if (unique.length === 0)
|
|
@@ -29,7 +30,7 @@ Analyze the root cause and return a JSON object (ONLY the JSON, no explanation):
|
|
|
29
30
|
"errorPattern": "category: null-reference | type-error | import-missing | config-error | test-failure | build-error | runtime-error | logic-error | other",
|
|
30
31
|
"fixPattern": "category: defensive-coding | type-guard | validation | config-fix | dependency-update | refactor | test-fix | other",
|
|
31
32
|
"severity": "critical | major | minor"
|
|
32
|
-
}`;
|
|
33
|
+
}${outputLanguageInstruction()}`;
|
|
33
34
|
try {
|
|
34
35
|
const text = await callLLM(prompt, llmConfig, {
|
|
35
36
|
maxTokens: 300,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"failure-analyzer.js","sourceRoot":"","sources":["../../src/core/failure-analyzer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAmB,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"failure-analyzer.js","sourceRoot":"","sources":["../../src/core/failure-analyzer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llm-client.d.ts","sourceRoot":"","sources":["../../src/core/llm-client.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"llm-client.d.ts","sourceRoot":"","sources":["../../src/core/llm-client.ts"],"names":[],"mappings":"AAyCA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAG7C,MAAM,MAAM,aAAa,GACrB,MAAM,GACN,YAAY,GACZ,UAAU,GACV,aAAa,GACb,SAAS,GACT,OAAO,GACP,SAAS,CAAC;AASd,qBAAa,qBAAsB,SAAQ,KAAK;gBAClC,QAAQ,EAAE,SAAS,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,MAAM;CAI5D;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,IAAI,GAAG,MAAM,CAAC;IAEtB,SAAS,EAAE,MAAM,CAAC;IAElB,UAAU,CAAC,EAAE,aAAa,CAAC;IAE3B,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,cAAc;IAE7B,SAAS,CAAC,EAAE,MAAM,CAAC;IAMnB,SAAS,CAAC,EAAE,SAAS,EAAE,CAAC;IAQxB,SAAS,CAAC,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,KAAK,IAAI,CAAC;CAC9C;AAoBD,wBAAsB,OAAO,CAC3B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,SAAS,EACjB,IAAI,GAAE,cAAmB,GACxB,OAAO,CAAC,MAAM,CAAC,CAqCjB;AAsKD,wBAAgB,aAAa,CAAC,CAAC,EAAE,KAAK,GAAG,aAAa,CAmBrD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llm-client.js","sourceRoot":"","sources":["../../src/core/llm-client.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"llm-client.js","sourceRoot":"","sources":["../../src/core/llm-client.ts"],"names":[],"mappings":"AA4DA,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IAC9C,YAAY,QAA+B,EAAE,MAAc;QACzD,KAAK,CAAC,GAAG,QAAQ,6BAA6B,MAAM,EAAE,CAAC,CAAC;QACxD,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;IACtC,CAAC;CACF;AAqDD,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,MAAc,EACd,MAAiB,EACjB,OAAuB,EAAE;IAEzB,MAAM,KAAK,GAAgB,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,CAAC;IAC/D,MAAM,QAAQ,GAAiB,EAAE,CAAC;IAClC,MAAM,cAAc,GAAG,GAAG,EAAE;QAC1B,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAO;QAC5B,IAAI,CAAC;YAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAyC,CAAC;IACrF,CAAC,CAAC;IAEF,IAAI,OAAO,GAAiB,IAAI,CAAC;IACjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACrB,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACtB,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,SAAS,IAAI,GAAG,CAAC,CAAC;YAClE,QAAQ,CAAC,IAAI,CAAC;gBACZ,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK;gBACxC,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC;aACnD,CAAC,CAAC;YACH,cAAc,EAAE,CAAC;YACjB,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YAC9D,MAAM,KAAK,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;YAC/B,QAAQ,CAAC,IAAI,CAAC;gBACZ,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK;gBACxC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE;gBAC1C,UAAU,EAAE,KAAK,EAAE,YAAY,EAAE,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC;aACpE,CAAC,CAAC;YACH,OAAO,GAAG,CAAC,CAAC;YAGZ,IAAI,KAAK,KAAK,aAAa;gBAAE,MAAM;QACrC,CAAC;IACH,CAAC;IAED,cAAc,EAAE,CAAC;IACjB,MAAM,OAAO,IAAI,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;AACjE,CAAC;AAGD,KAAK,UAAU,UAAU,CACvB,MAAc,EACd,MAAiB,EACjB,SAAiB;IAEjB,IAAI,MAAM,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;QACpC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;QAC9D,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;QACjE,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,uCAAuC,EAAE;YAC/D,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,WAAW,EAAE,MAAM;gBACnB,mBAAmB,EAAE,YAAY;gBACjC,cAAc,EAAE,kBAAkB;aACnC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,kBAAkB;gBACzC,UAAU,EAAE,SAAS;gBACrB,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;aAC9C,CAAC;SACH,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;QACnE,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;QACrD,MAAM,IAAI,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;YACjB,MAAM,IAAI,qBAAqB,CAAC,WAAW,EAAE,8BAA8B,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACpG,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACjC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;QAC3D,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAC9D,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,4CAA4C,EAAE;YACpE,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,eAAe,EAAE,UAAU,MAAM,EAAE;gBACnC,cAAc,EAAE,kBAAkB;aACnC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,aAAa;gBACpC,UAAU,EAAE,SAAS;gBACrB,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;aAC9C,CAAC;SACH,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;QAChE,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAClD,MAAM,IAAI,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;YACjB,MAAM,IAAI,qBAAqB,CAAC,QAAQ,EAAE,yCAAyC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC5G,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACjC,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,wBAAwB,CAAC;QACjE,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,eAAe,EAAE;YAC9C,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,UAAU;gBACjC,MAAM;gBACN,MAAM,EAAE,KAAK;aAKd,CAAC;SACH,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;QAC5D,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAClD,MAAM,IAAI,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;YACjB,MAAM,IAAI,qBAAqB,CAAC,QAAQ,EAAE,6BAA6B,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAChG,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,EAAE,CAAC;AACZ,CAAC;AAoBD,KAAK,UAAU,eAAe,CAAC,GAAa,EAAE,QAA+B;IAC3E,IAAI,CAAC;QACH,OAAO,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;IAC1B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7D,MAAM,IAAI,qBAAqB,CAAC,QAAQ,EAAE,2BAA2B,GAAG,GAAG,CAAC,CAAC;IAC/E,CAAC;AACH,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAa;IACzC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACjC,MAAM,OAAO,GAAI,IAA0B,CAAC,OAAO,CAAC;IACpD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACjE,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACzB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAClC,MAAM,IAAI,GAAI,KAA4B,CAAC,IAAI,CAAC;IAChD,OAAO,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;AAChD,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAa;IACtC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACjC,MAAM,OAAO,GAAI,IAAuB,CAAC,OAAO,CAAC;IACjD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACjE,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACzB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAClC,MAAM,OAAO,GAAI,KAA+B,CAAC,OAAO,CAAC;IACzD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;QAAE,OAAO,IAAI,CAAC;IACpC,MAAM,OAAO,GAAI,OAAiC,CAAC,OAAO,CAAC;IAC3D,OAAO,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;AACtD,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAa;IACtC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACjC,MAAM,QAAQ,GAAI,IAAuB,CAAC,QAAQ,CAAC;IACnD,OAAO,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;AACxD,CAAC;AAED,SAAS,QAAQ,CAAC,CAAU;IAC1B,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,CAAC;AAC7C,CAAC;AAUD,SAAS,aAAa,CAAC,CAAU;IAC/B,IAAI,CAAC,IAAI,IAAI;QAAE,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;IAChC,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAAE,OAAO,aAAa,CAAC,CAAC,MAAM,GAAG,CAAC;IACtD,IAAI,OAAO,CAAC,KAAK,QAAQ;QAAE,OAAO,OAAO,CAAC,CAAC;IAC3C,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,CAA4B,CAAC,CAAC,MAAM,CAAC;IAClE,OAAO,UAAU,QAAQ,QAAQ,CAAC;AACpC,CAAC;AASD,MAAM,UAAU,aAAa,CAAC,CAAQ;IAGpC,IAAI,CAAC,YAAY,qBAAqB;QAAE,OAAO,OAAO,CAAC;IACvD,MAAM,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC;IAEtB,IAAI,sEAAsE,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,MAAM,CAAC;IAEpG,IAAI,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,MAAM,CAAC;IAE3C,IAAI,8BAA8B,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,YAAY,CAAC;IAElE,IAAI,gDAAgD,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,UAAU,CAAC;IAGlF,IAAI,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,aAAa,CAAC;IAE9C,IAAI,qEAAqE,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,SAAS,CAAC;IACtG,OAAO,SAAS,CAAC;AACnB,CAAC;AAQD,SAAS,aAAa,CAAC,GAAW;IAChC,OAAO,GAAG;SACP,OAAO,CAAC,uBAAuB,EAAE,eAAe,CAAC;SACjD,OAAO,CAAC,+BAA+B,EAAE,mBAAmB,CAAC,CAAC;AACnE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llm-validator.d.ts","sourceRoot":"","sources":["../../src/core/llm-validator.ts"],"names":[],"mappings":"AAYA,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IAEX,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"llm-validator.d.ts","sourceRoot":"","sources":["../../src/core/llm-validator.ts"],"names":[],"mappings":"AAYA,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IAEX,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IAaf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC;IAErB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAuHD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,GAAG,SAAS,CAc1E;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA8B9E;AAED,wBAAsB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA6B3E;AAqBD,wBAAsB,WAAW,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAqC1E;AAED,wBAAsB,aAAa,CACjC,QAAQ,EAAE,WAAW,GAAG,QAAQ,GAAG,QAAQ,EAC3C,MAAM,CAAC,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,gBAAgB,CAAC,CAK3B"}
|
|
@@ -1,3 +1,24 @@
|
|
|
1
|
+
class ProbeError extends Error {
|
|
2
|
+
errorCode;
|
|
3
|
+
constructor(message, errorCode) {
|
|
4
|
+
super(message);
|
|
5
|
+
this.errorCode = errorCode;
|
|
6
|
+
this.name = 'ProbeError';
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
function codeForStatus(status) {
|
|
10
|
+
if (status === 401 || status === 403)
|
|
11
|
+
return 'auth';
|
|
12
|
+
return `http_${status}`;
|
|
13
|
+
}
|
|
14
|
+
function probeErrorCode(err) {
|
|
15
|
+
if (err instanceof ProbeError)
|
|
16
|
+
return err.errorCode;
|
|
17
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
18
|
+
if (/(ENOTFOUND|ECONNREFUSED|ECONNRESET|ETIMEDOUT|fetch failed|abort)/i.test(msg))
|
|
19
|
+
return 'network';
|
|
20
|
+
return 'unknown';
|
|
21
|
+
}
|
|
1
22
|
const FETCH_TIMEOUT_MS = 8000;
|
|
2
23
|
const MAX_BODY_BYTES = 8192;
|
|
3
24
|
const MAX_ERROR_CHARS = 300;
|
|
@@ -63,7 +84,7 @@ async function fetchJson(url, init) {
|
|
|
63
84
|
const res = await fetch(url, { ...init, signal: ctrl.signal });
|
|
64
85
|
if (!res.ok) {
|
|
65
86
|
const body = await readBodyCapped(res).catch(() => '');
|
|
66
|
-
throw new
|
|
87
|
+
throw new ProbeError(extractProviderError(res.status, body), codeForStatus(res.status));
|
|
67
88
|
}
|
|
68
89
|
return (await res.json());
|
|
69
90
|
}
|
|
@@ -86,7 +107,7 @@ export function pickSuggestedModel(models) {
|
|
|
86
107
|
}
|
|
87
108
|
export async function probeAnthropic(apiKey) {
|
|
88
109
|
if (!apiKey)
|
|
89
|
-
return { valid: false, error: 'API key is empty' };
|
|
110
|
+
return { valid: false, error: 'API key is empty', errorCode: 'auth' };
|
|
90
111
|
try {
|
|
91
112
|
const data = await fetchJson('https://api.anthropic.com/v1/models?limit=200', {
|
|
92
113
|
method: 'GET',
|
|
@@ -100,17 +121,17 @@ export async function probeAnthropic(apiKey) {
|
|
|
100
121
|
created: m.created_at,
|
|
101
122
|
}));
|
|
102
123
|
if (models.length === 0) {
|
|
103
|
-
return { valid: false, error: 'Anthropic answered, but returned no models — a proxy or gateway may be intercepting the request. Check the endpoint and API key.' };
|
|
124
|
+
return { valid: false, error: 'Anthropic answered, but returned no models — a proxy or gateway may be intercepting the request. Check the endpoint and API key.', errorCode: 'no_models' };
|
|
104
125
|
}
|
|
105
126
|
return { valid: true, models, suggested: pickSuggestedModel(models) };
|
|
106
127
|
}
|
|
107
128
|
catch (err) {
|
|
108
|
-
return { valid: false, error: err instanceof Error ? err.message : String(err) };
|
|
129
|
+
return { valid: false, error: err instanceof Error ? err.message : String(err), errorCode: probeErrorCode(err) };
|
|
109
130
|
}
|
|
110
131
|
}
|
|
111
132
|
export async function probeOpenAI(apiKey) {
|
|
112
133
|
if (!apiKey)
|
|
113
|
-
return { valid: false, error: 'API key is empty' };
|
|
134
|
+
return { valid: false, error: 'API key is empty', errorCode: 'auth' };
|
|
114
135
|
try {
|
|
115
136
|
const data = await fetchJson('https://api.openai.com/v1/models', {
|
|
116
137
|
method: 'GET',
|
|
@@ -124,12 +145,12 @@ export async function probeOpenAI(apiKey) {
|
|
|
124
145
|
created: m.created ? new Date(m.created * 1000).toISOString() : undefined,
|
|
125
146
|
}));
|
|
126
147
|
if (models.length === 0) {
|
|
127
|
-
return { valid: false, error: 'OpenAI answered, but returned no chat-capable models — a proxy or gateway may be intercepting the request. Check the endpoint and API key.' };
|
|
148
|
+
return { valid: false, error: 'OpenAI answered, but returned no chat-capable models — a proxy or gateway may be intercepting the request. Check the endpoint and API key.', errorCode: 'no_models' };
|
|
128
149
|
}
|
|
129
150
|
return { valid: true, models, suggested: pickSuggestedModel(models) };
|
|
130
151
|
}
|
|
131
152
|
catch (err) {
|
|
132
|
-
return { valid: false, error: err instanceof Error ? err.message : String(err) };
|
|
153
|
+
return { valid: false, error: err instanceof Error ? err.message : String(err), errorCode: probeErrorCode(err) };
|
|
133
154
|
}
|
|
134
155
|
}
|
|
135
156
|
const OLLAMA_LOOPBACK_HOSTS = new Set(['localhost', '127.0.0.1', '0.0.0.0', '::1', '[::1]']);
|
|
@@ -151,6 +172,7 @@ export async function probeOllama(host) {
|
|
|
151
172
|
return {
|
|
152
173
|
valid: false,
|
|
153
174
|
error: `Ollama host must be loopback (localhost / 127.0.0.1). For non-local Ollama, set the OLLAMA_HOST environment variable on the server.`,
|
|
175
|
+
errorCode: 'bad_host',
|
|
154
176
|
};
|
|
155
177
|
}
|
|
156
178
|
const base = requestedBase;
|
|
@@ -164,6 +186,7 @@ export async function probeOllama(host) {
|
|
|
164
186
|
return {
|
|
165
187
|
valid: false,
|
|
166
188
|
error: `Ollama is reachable at ${base} but has no models installed. Run \`ollama pull <model>\` first.`,
|
|
189
|
+
errorCode: 'no_models',
|
|
167
190
|
};
|
|
168
191
|
}
|
|
169
192
|
return { valid: true, models, suggested: pickSuggestedModel(models) };
|
|
@@ -171,9 +194,9 @@ export async function probeOllama(host) {
|
|
|
171
194
|
catch (err) {
|
|
172
195
|
const msg = err instanceof Error ? err.message : String(err);
|
|
173
196
|
if (msg.includes('ECONNREFUSED') || msg.includes('fetch failed')) {
|
|
174
|
-
return { valid: false, error: `Ollama not reachable at ${base}. Is it installed and running
|
|
197
|
+
return { valid: false, error: `Ollama not reachable at ${base}. Is it installed and running?`, errorCode: 'network' };
|
|
175
198
|
}
|
|
176
|
-
return { valid: false, error: msg };
|
|
199
|
+
return { valid: false, error: msg, errorCode: probeErrorCode(err) };
|
|
177
200
|
}
|
|
178
201
|
}
|
|
179
202
|
export async function probeProvider(provider, apiKey, host) {
|
|
@@ -183,6 +206,6 @@ export async function probeProvider(provider, apiKey, host) {
|
|
|
183
206
|
return probeOpenAI(apiKey ?? '');
|
|
184
207
|
if (provider === 'ollama')
|
|
185
208
|
return probeOllama(host);
|
|
186
|
-
return { valid: false, error: `Unknown provider: ${provider}
|
|
209
|
+
return { valid: false, error: `Unknown provider: ${provider}`, errorCode: 'unknown' };
|
|
187
210
|
}
|
|
188
211
|
//# sourceMappingURL=llm-validator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llm-validator.js","sourceRoot":"","sources":["../../src/core/llm-validator.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"llm-validator.js","sourceRoot":"","sources":["../../src/core/llm-validator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../../src/core/operations.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAGlD,OAAO,KAAK,EACV,aAAa,EACb,cAAc,EACd,WAAW,EACX,WAAW,EACX,YAAY,EACZ,UAAU,EACV,WAAW,EACX,MAAM,EACP,MAAM,YAAY,CAAC;AAgDpB,wBAAgB,QAAQ,CAAC,IAAI,EAAE,aAAa,GAAG,cAAc,CAgF5D;AAUD,wBAAgB,MAAM,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,EAAE,CAGlD;
|
|
1
|
+
{"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../../src/core/operations.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAGlD,OAAO,KAAK,EACV,aAAa,EACb,cAAc,EACd,WAAW,EACX,WAAW,EACX,YAAY,EACZ,UAAU,EACV,WAAW,EACX,MAAM,EACP,MAAM,YAAY,CAAC;AAgDpB,wBAAgB,QAAQ,CAAC,IAAI,EAAE,aAAa,GAAG,cAAc,CAgF5D;AAUD,wBAAgB,MAAM,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,EAAE,CAGlD;AA4HD,wBAAsB,cAAc,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAwBzE;AASD,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,WAAW;;;GAK1D;AAGD,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAYjE,wBAAgB,KAAK,CAAC,IAAI,EAAE,UAAU,GAAG,WAAW,CAmBnD;AAMD,wBAAgB,MAAM,CAAC,IAAI,EAAE,WAAW,GAAG,YAAY,CAuBtD;AAYD,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,CAe1G;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAElB,QAAQ,EAAE,MAAM,CAAC;IAEjB,OAAO,EAAE,MAAM,CAAC;IAEhB,QAAQ,EAAE,MAAM,CAAC,YAAY,GAAG,gBAAgB,GAAG,kBAAkB,EAAE,MAAM,CAAC,CAAC;IAgB/E,MAAM,EAAE,MAAM,CAAC;IAYf,cAAc,EAAE,MAAM,CAAC;IAOvB,0BAA0B,EAAE,MAAM,CAAC;IAEnC,qBAAqB,EAAE,OAAO,CAAC;CAChC;AAwCD,wBAAsB,OAAO,CAAC,IAAI,CAAC,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,aAAa,CAAC,CAwInF"}
|
package/dist/core/operations.js
CHANGED
|
@@ -128,9 +128,11 @@ async function supplementWithVectors(query, args, kg, merged, relevanceMap) {
|
|
|
128
128
|
for (const entity of hitEntities) {
|
|
129
129
|
if (existingNames.has(entity.name))
|
|
130
130
|
continue;
|
|
131
|
-
merged.push(entity);
|
|
132
131
|
const dist = vectorHits.find(h => h.id === entity.id)?.distance ?? MAX_VECTOR_DISTANCE;
|
|
133
|
-
|
|
132
|
+
const relevance = vectorSimilarity(dist);
|
|
133
|
+
entity.match = { source: 'semantic', relevance };
|
|
134
|
+
merged.push(entity);
|
|
135
|
+
relevanceMap.set(entity.name, relevance);
|
|
134
136
|
}
|
|
135
137
|
}
|
|
136
138
|
catch {
|
|
@@ -138,6 +140,11 @@ async function supplementWithVectors(query, args, kg, merged, relevanceMap) {
|
|
|
138
140
|
}
|
|
139
141
|
export async function recallEnhanced(args) {
|
|
140
142
|
const { kg, entities, relevanceMap } = searchAndScore(args);
|
|
143
|
+
if (args.query) {
|
|
144
|
+
for (const e of entities) {
|
|
145
|
+
e.match = { source: 'keyword', relevance: relevanceMap.get(e.name) ?? 0 };
|
|
146
|
+
}
|
|
147
|
+
}
|
|
141
148
|
const mergedEntities = [...entities];
|
|
142
149
|
if (args.query && hasSearchableTerms(args.query)) {
|
|
143
150
|
await supplementWithVectors(args.query, args, kg, mergedEntities, relevanceMap);
|
|
@@ -210,7 +217,7 @@ function countMissingVectors(db, namespace) {
|
|
|
210
217
|
}
|
|
211
218
|
export async function reindex(opts) {
|
|
212
219
|
if (!isEmbeddingAvailable()) {
|
|
213
|
-
throw new Error('No embedding provider
|
|
220
|
+
throw new Error('No embedding provider configured, so there are no vectors to build. Run Ollama (or set an OpenAI API key) and set embedder.provider, then retry. Without an embedder, recall runs on FTS5 keyword search alone.');
|
|
214
221
|
}
|
|
215
222
|
const db = getDatabase();
|
|
216
223
|
const kg = new KnowledgeGraph(db);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"operations.js","sourceRoot":"","sources":["../../src/core/operations.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"operations.js","sourceRoot":"","sources":["../../src/core/operations.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { type MeMeshConfig } from './config.js';
|
|
2
|
+
export declare const MAX_LANGUAGE_LENGTH = 60;
|
|
3
|
+
export declare function languageValueError(value: string): string | null;
|
|
4
|
+
export declare function getOutputLanguage(config?: MeMeshConfig): string | null;
|
|
5
|
+
export declare function outputLanguageInstruction(config?: MeMeshConfig): string;
|
|
6
|
+
//# sourceMappingURL=output-language.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"output-language.d.ts","sourceRoot":"","sources":["../../src/core/output-language.ts"],"names":[],"mappings":"AAkCA,OAAO,EAAc,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAI5D,eAAO,MAAM,mBAAmB,KAAK,CAAC;AAYtC,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAM/D;AAMD,wBAAgB,iBAAiB,CAAC,MAAM,CAAC,EAAE,YAAY,GAAG,MAAM,GAAG,IAAI,CAatE;AAQD,wBAAgB,yBAAyB,CAAC,MAAM,CAAC,EAAE,YAAY,GAAG,MAAM,CAIvE"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { readConfig } from './config.js';
|
|
2
|
+
import { sanitizeForPrompt } from './prompt-safety.js';
|
|
3
|
+
export const MAX_LANGUAGE_LENGTH = 60;
|
|
4
|
+
export function languageValueError(value) {
|
|
5
|
+
if (/[\x00-\x1f\x7f]/.test(value)) {
|
|
6
|
+
return 'must not contain line breaks or other control characters';
|
|
7
|
+
}
|
|
8
|
+
return null;
|
|
9
|
+
}
|
|
10
|
+
export function getOutputLanguage(config) {
|
|
11
|
+
const cfg = config ?? readConfig();
|
|
12
|
+
if (typeof cfg.language !== 'string')
|
|
13
|
+
return null;
|
|
14
|
+
const singleLine = cfg.language
|
|
15
|
+
.replace(/[\x00-\x1f\x7f]+/g, ' ');
|
|
16
|
+
const cleaned = sanitizeForPrompt(singleLine).trim().slice(0, MAX_LANGUAGE_LENGTH);
|
|
17
|
+
return cleaned.length > 0 ? cleaned : null;
|
|
18
|
+
}
|
|
19
|
+
export function outputLanguageInstruction(config) {
|
|
20
|
+
const lang = getOutputLanguage(config);
|
|
21
|
+
if (!lang)
|
|
22
|
+
return '';
|
|
23
|
+
return `\nWrite all human-readable output text (names, observations, summaries, descriptions, reasons) in ${lang}. Keep JSON keys, category values, entity type slugs and tags in English exactly as specified.`;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=output-language.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"output-language.js","sourceRoot":"","sources":["../../src/core/output-language.ts"],"names":[],"mappings":"AAkCA,OAAO,EAAE,UAAU,EAAqB,MAAM,aAAa,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAGvD,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,CAAC;AAYtC,MAAM,UAAU,kBAAkB,CAAC,KAAa;IAE9C,IAAI,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAClC,OAAO,0DAA0D,CAAC;IACpE,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAMD,MAAM,UAAU,iBAAiB,CAAC,MAAqB;IACrD,MAAM,GAAG,GAAG,MAAM,IAAI,UAAU,EAAE,CAAC;IACnC,IAAI,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAMlD,MAAM,UAAU,GAAG,GAAG,CAAC,QAAQ;SAE5B,OAAO,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAC;IACrC,MAAM,OAAO,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,mBAAmB,CAAC,CAAC;IACnF,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7C,CAAC;AAQD,MAAM,UAAU,yBAAyB,CAAC,MAAqB;IAC7D,MAAM,IAAI,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACvC,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,CAAC;IACrB,OAAO,qGAAqG,IAAI,gGAAgG,CAAC;AACnN,CAAC"}
|
package/dist/core/patterns.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"patterns.d.ts","sourceRoot":"","sources":["../../src/core/patterns.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAM3C,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE;QACZ,gBAAgB,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"patterns.d.ts","sourceRoot":"","sources":["../../src/core/patterns.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAM3C,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE;QACZ,gBAAgB,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAKzD,eAAe,EAAE,KAAK,CAAC;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAC3D,CAAC;IACF,eAAe,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC3D,UAAU,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACnD,QAAQ,EAAE;QACR,iBAAiB,EAAE,MAAM,CAAC;QAC1B,iBAAiB,EAAE,MAAM,CAAC;QAC1B,aAAa,EAAE,MAAM,CAAC;QACtB,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,SAAS,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACzE,aAAa,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACtD;AAaD,wBAAgB,eAAe,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG,cAAc,CA+H5F"}
|
package/dist/core/patterns.js
CHANGED
|
@@ -11,11 +11,7 @@ export function computePatterns(db, categories) {
|
|
|
11
11
|
GROUP BY hour ORDER BY hour
|
|
12
12
|
`).all();
|
|
13
13
|
dayDistribution = db.prepare(`
|
|
14
|
-
SELECT
|
|
15
|
-
WHEN 0 THEN 'Sunday' WHEN 1 THEN 'Monday' WHEN 2 THEN 'Tuesday'
|
|
16
|
-
WHEN 3 THEN 'Wednesday' WHEN 4 THEN 'Thursday' WHEN 5 THEN 'Friday'
|
|
17
|
-
WHEN 6 THEN 'Saturday' END as day,
|
|
18
|
-
CAST(strftime('%w', created_at, 'localtime') AS INTEGER) as dayNum,
|
|
14
|
+
SELECT CAST(strftime('%w', created_at, 'localtime') AS INTEGER) as dayNum,
|
|
19
15
|
COUNT(*) as count
|
|
20
16
|
FROM entities GROUP BY dayNum ORDER BY dayNum
|
|
21
17
|
`).all();
|