chatlab-cli 0.34.0 → 0.34.2
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/dist/{chat-command-XPY3WURC.mjs → chat-command-6IOH2QRF.mjs} +9 -9
- package/dist/{chunk-S5NCEESV.mjs → chunk-2XCNTG4O.mjs} +403 -76
- package/dist/chunk-2XCNTG4O.mjs.map +1 -0
- package/dist/{chunk-AQPDZAWB.mjs → chunk-4LW6443F.mjs} +1802 -712
- package/dist/chunk-4LW6443F.mjs.map +1 -0
- package/dist/{chunk-ISRLGLUL.mjs → chunk-4RLZFGO5.mjs} +2 -2
- package/dist/{chunk-IGEHMLHM.mjs → chunk-52P5ZRBD.mjs} +2 -2
- package/dist/{chunk-JTOHAMIW.mjs → chunk-652KEAX3.mjs} +2 -2
- package/dist/{chunk-DGF3S3TZ.mjs → chunk-72RWABYJ.mjs} +15 -9
- package/dist/chunk-72RWABYJ.mjs.map +1 -0
- package/dist/{chunk-JCSPDTZL.mjs → chunk-H6D4DZOC.mjs} +4 -4
- package/dist/{chunk-OLE2USEN.mjs → chunk-INBJ7SND.mjs} +53 -26
- package/dist/chunk-INBJ7SND.mjs.map +1 -0
- package/dist/{chunk-IGK6UMN2.mjs → chunk-JX6MFS6F.mjs} +43 -23
- package/dist/chunk-JX6MFS6F.mjs.map +1 -0
- package/dist/{chunk-UO2XVFY6.mjs → chunk-MENKFEPC.mjs} +147 -73
- package/dist/chunk-MENKFEPC.mjs.map +1 -0
- package/dist/{chunk-BQ3QN4QT.mjs → chunk-U6MVJSXX.mjs} +170 -66
- package/dist/chunk-U6MVJSXX.mjs.map +1 -0
- package/dist/chunk-UMBEHBIZ.mjs +41 -0
- package/dist/chunk-UMBEHBIZ.mjs.map +1 -0
- package/dist/{chunk-GFHSSCCR.mjs → chunk-VSOWNKPA.mjs} +1 -11
- package/dist/cli.mjs +10 -9
- package/dist/contacts-worker.mjs +3 -3
- package/dist/global-insight-worker.mjs +2 -2
- package/dist/{http-HV6XWU6X.mjs → http-HSK46XEU.mjs} +13 -12
- package/dist/{import-DP2XLZ2H.mjs → import-DF2WD2HE.mjs} +10 -8
- package/dist/index.mjs +13 -12
- package/dist/{mcp-QDPFBPGW.mjs → mcp-A2RND7KN.mjs} +12 -12
- package/dist/people-relationships-worker.mjs +3 -3
- package/dist/semantic-index-worker.mjs +1 -1
- package/dist/{service-KGL3RAIA.mjs → service-KZTHBDQ5.mjs} +2 -2
- package/dist/{src-B3A2QHP5.mjs → src-SHFHW2QB.mjs} +29 -7
- package/dist/{stream-import-KEGNP3QK.mjs → stream-import-GZ2QDE3Z.mjs} +10 -8
- package/dist/{undici-ZSXBT7EA.mjs → undici-MU5I3L6Q.mjs} +2 -2
- package/dist/{update-checker-LGMTEKMT.mjs → update-checker-3N7HQEP2.mjs} +2 -2
- package/dist/{worker-runtime-MDYKX3BW.mjs → worker-runtime-OWN56GG5.mjs} +14 -8
- package/dist/worker-runtime-OWN56GG5.mjs.map +1 -0
- package/dist-cli-web/assets/{ActionToolsPanel.vue_vue_type_script_setup_true_lang-JxPR2O6b.js → ActionToolsPanel.vue_vue_type_script_setup_true_lang-B06LYYS9.js} +14 -14
- package/dist-cli-web/assets/{BufferResource--dSbJb0k.js → BufferResource-BdKXeRZS.js} +1 -1
- package/dist-cli-web/assets/{CanvasRenderer-Cm_dmJXZ.js → CanvasRenderer-DDRdIyZ8.js} +1 -1
- package/dist-cli-web/assets/{DataDirCleanupNotice-B0s5txX3.js → DataDirCleanupNotice-CP8P1lsL.js} +1 -1
- package/dist-cli-web/assets/{EChartWordcloud-CwMVJLBO.js → EChartWordcloud-CqknPGui.js} +1 -1
- package/dist-cli-web/assets/{Filter-BjYScRpK.js → Filter-B2eEAPxI.js} +1 -1
- package/dist-cli-web/assets/{LoadingState.vue_vue_type_script_setup_true_lang-BshQybD_.js → LoadingState.vue_vue_type_script_setup_true_lang-BFaXTz1c.js} +1 -1
- package/dist-cli-web/assets/{MessageExportModal-DAJW2mFj.js → MessageExportModal-CZge6qub.js} +1 -1
- package/dist-cli-web/assets/{PageHeader-BKAjCuqs.js → PageHeader-CxKbcLDc.js} +1 -1
- package/dist-cli-web/assets/{RelationshipGalaxyCanvas-mlZs7k4L.js → RelationshipGalaxyCanvas-CwQ63TPi.js} +7 -7
- package/dist-cli-web/assets/RelationshipGalaxyThreeCanvas-BLqISQe5.js +4108 -0
- package/dist-cli-web/assets/{RelationshipGalaxyThreeCanvas-CeYJABxI.css → RelationshipGalaxyThreeCanvas-CMuibfiA.css} +1 -1
- package/dist-cli-web/assets/{RenderTargetSystem-D00Ex44y.js → RenderTargetSystem-eC_VrDAr.js} +1 -1
- package/dist-cli-web/assets/{ThemeCard.vue_vue_type_script_setup_true_lang-Dsb6lzs-.js → ThemeCard.vue_vue_type_script_setup_true_lang-DVmpDz05.js} +1 -1
- package/dist-cli-web/assets/{TimeSelect.vue_vue_type_script_setup_true_lang-BfR3tlkz.js → TimeSelect.vue_vue_type_script_setup_true_lang-CCH1UQGc.js} +1 -1
- package/dist-cli-web/assets/{WebGLRenderer-CTTusm2n.js → WebGLRenderer-CRp_HC84.js} +1 -1
- package/dist-cli-web/assets/{WebGPURenderer-pyv3EXor.js → WebGPURenderer-WIUnEhpi.js} +1 -1
- package/dist-cli-web/assets/{annual-summary-time-range-C_d1oZrj.js → annual-summary-time-range-R3pLPEuN.js} +1 -1
- package/dist-cli-web/assets/{base-D91aVUwM.js → base-CLwWn3Rs.js} +1 -1
- package/dist-cli-web/assets/{browserAll-C9fW936Y.js → browserAll-B29Ox2in.js} +1 -1
- package/dist-cli-web/assets/cli-web-CVLb5Pkq.js +1 -0
- package/dist-cli-web/assets/{dateFormat-rY43adcv.js → dateFormat-T7kMS5IP.js} +1 -1
- package/dist-cli-web/assets/{fetch-PLrI3V67.js → fetch-BBgZQob_.js} +1 -1
- package/dist-cli-web/assets/{fetch-CS3T-v-1.js → fetch-BKBlpBl4.js} +1 -1
- package/dist-cli-web/assets/{fetch-CbnX5VoM.js → fetch-BLi6Jsjg.js} +1 -1
- package/dist-cli-web/assets/{fetch-Kk2knkEo.js → fetch-CYaGyohV.js} +1 -1
- package/dist-cli-web/assets/{fetch-CrSz5KJy.js → fetch-Cm2WR2Cv.js} +1 -1
- package/dist-cli-web/assets/{fetch-DYNgtIcU.js → fetch-D8hJZa8o.js} +1 -1
- package/dist-cli-web/assets/fetch-D9sn99zX.js +4 -0
- package/dist-cli-web/assets/{fetch-DZPC3D8R.js → fetch-DsHf-61a.js} +1 -1
- package/dist-cli-web/assets/{fetch-DG3AeEjW.js → fetch-DvrVGAzR.js} +1 -1
- package/dist-cli-web/assets/{fetch-CNy9OQ2g.js → fetch-L6PKD8-N.js} +1 -1
- package/dist-cli-web/assets/{index-BrkDgcJ6.js → index-0qcENyvH.js} +1 -1
- package/dist-cli-web/assets/{index-CGI3Y8pq.js → index-AkF_KqVI.js} +1 -1
- package/dist-cli-web/assets/index-BVOFyB9E.js +137 -0
- package/dist-cli-web/assets/{index-JYfjMRb-.js → index-BkdOH41D.js} +1 -1
- package/dist-cli-web/assets/index-C4TuoOLM.js +2 -0
- package/dist-cli-web/assets/{index-DsdMsKYT.js → index-C6Mk-Xqt.js} +1 -1
- package/dist-cli-web/assets/{index-DFHYr_-u.js → index-CkgUsaeX.js} +1 -1
- package/dist-cli-web/assets/{index-ZTgfCZvY.js → index-CuAy1Xmt.js} +3 -3
- package/dist-cli-web/assets/index-CxGtGxLW.css +1 -0
- package/dist-cli-web/assets/index-D_0qeKKc.js +53 -0
- package/dist-cli-web/assets/{index-2-OaYdzt.js → index-DeR0Vukh.js} +1 -1
- package/dist-cli-web/assets/{index-3YO6RI5e.js → index-Dx-XvfIK.js} +2 -2
- package/dist-cli-web/assets/{index-BKo68Iu5.js → index-_DrviTnP.js} +1 -1
- package/dist-cli-web/assets/{index-DA3Q0TGT.js → index-xN0sjOLK.js} +1 -1
- package/dist-cli-web/assets/{people-page-header-D-LWaEqn.js → people-page-header-CCNJOrmK.js} +1 -1
- package/dist-cli-web/assets/telemetry-DPC69b73.js +1 -0
- package/dist-cli-web/assets/{webworkerAll-CPOVECup.js → webworkerAll-B2qvP2qR.js} +1 -1
- package/dist-cli-web/index.html +1 -1
- package/package.json +3 -2
- package/dist/chunk-AQPDZAWB.mjs.map +0 -1
- package/dist/chunk-BQ3QN4QT.mjs.map +0 -1
- package/dist/chunk-DGF3S3TZ.mjs.map +0 -1
- package/dist/chunk-IGK6UMN2.mjs.map +0 -1
- package/dist/chunk-OLE2USEN.mjs.map +0 -1
- package/dist/chunk-S5NCEESV.mjs.map +0 -1
- package/dist/chunk-UO2XVFY6.mjs.map +0 -1
- package/dist/onnxruntime_binding-6Q6HXASN.node +0 -0
- package/dist/onnxruntime_binding-EKZT2NRK.node +0 -0
- package/dist/onnxruntime_binding-P6S7V3CI.node +0 -0
- package/dist/onnxruntime_binding-PJNNIIUO.node +0 -0
- package/dist/onnxruntime_binding-UN6SPTQK.node +0 -0
- package/dist/transformers.node-PUMHAODN.mjs +0 -42889
- package/dist/transformers.node-PUMHAODN.mjs.map +0 -1
- package/dist/worker-runtime-MDYKX3BW.mjs.map +0 -1
- package/dist-cli-web/assets/RelationshipGalaxyThreeCanvas-DgMG3jdU.js +0 -4108
- package/dist-cli-web/assets/cli-web-C7uGKz_E.js +0 -1
- package/dist-cli-web/assets/fetch-C6po4XYB.js +0 -3
- package/dist-cli-web/assets/index-2S80bo1s.js +0 -2
- package/dist-cli-web/assets/index-CW9H_fBd.js +0 -53
- package/dist-cli-web/assets/index-DmrrdYXH.css +0 -1
- package/dist-cli-web/assets/index-DmwA85vG.js +0 -173
- /package/dist/{chat-command-XPY3WURC.mjs.map → chat-command-6IOH2QRF.mjs.map} +0 -0
- /package/dist/{chunk-ISRLGLUL.mjs.map → chunk-4RLZFGO5.mjs.map} +0 -0
- /package/dist/{chunk-IGEHMLHM.mjs.map → chunk-52P5ZRBD.mjs.map} +0 -0
- /package/dist/{chunk-JTOHAMIW.mjs.map → chunk-652KEAX3.mjs.map} +0 -0
- /package/dist/{chunk-JCSPDTZL.mjs.map → chunk-H6D4DZOC.mjs.map} +0 -0
- /package/dist/{chunk-GFHSSCCR.mjs.map → chunk-VSOWNKPA.mjs.map} +0 -0
- /package/dist/{http-HV6XWU6X.mjs.map → http-HSK46XEU.mjs.map} +0 -0
- /package/dist/{import-DP2XLZ2H.mjs.map → import-DF2WD2HE.mjs.map} +0 -0
- /package/dist/{mcp-QDPFBPGW.mjs.map → mcp-A2RND7KN.mjs.map} +0 -0
- /package/dist/{service-KGL3RAIA.mjs.map → service-KZTHBDQ5.mjs.map} +0 -0
- /package/dist/{src-B3A2QHP5.mjs.map → src-SHFHW2QB.mjs.map} +0 -0
- /package/dist/{stream-import-KEGNP3QK.mjs.map → stream-import-GZ2QDE3Z.mjs.map} +0 -0
- /package/dist/{undici-ZSXBT7EA.mjs.map → undici-MU5I3L6Q.mjs.map} +0 -0
- /package/dist/{update-checker-LGMTEKMT.mjs.map → update-checker-3N7HQEP2.mjs.map} +0 -0
|
@@ -10,14 +10,16 @@ import {
|
|
|
10
10
|
analyzeAutoImportFile,
|
|
11
11
|
analyzeIncrementalImport,
|
|
12
12
|
analyzeNewImport,
|
|
13
|
+
autoImportBatch,
|
|
13
14
|
autoImportFile,
|
|
14
15
|
incrementalImport,
|
|
16
|
+
resolveDefaultBatchConcurrency,
|
|
15
17
|
streamingImport,
|
|
16
18
|
withDataDirImportLock
|
|
17
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-4LW6443F.mjs";
|
|
18
20
|
import {
|
|
19
21
|
DataDirCompatibilityError
|
|
20
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-INBJ7SND.mjs";
|
|
21
23
|
|
|
22
24
|
// src/import/stream-import.ts
|
|
23
25
|
import * as crypto from "crypto";
|
|
@@ -26,7 +28,7 @@ function generateSessionId() {
|
|
|
26
28
|
const rand = crypto.randomBytes(4).toString("hex");
|
|
27
29
|
return `chat_${ts}_${rand}`;
|
|
28
30
|
}
|
|
29
|
-
function buildStreamImportDeps(dbManager, onProgress) {
|
|
31
|
+
function buildStreamImportDeps(dbManager, onProgress, sessionGapThreshold) {
|
|
30
32
|
return {
|
|
31
33
|
openDatabase(sessionId) {
|
|
32
34
|
return dbManager.openRawSessionDatabase(sessionId, { create: true, initializeChatTables: true });
|
|
@@ -36,63 +38,66 @@ function buildStreamImportDeps(dbManager, onProgress) {
|
|
|
36
38
|
},
|
|
37
39
|
onProgress: onProgress ?? (() => {
|
|
38
40
|
}),
|
|
39
|
-
generateSessionId
|
|
41
|
+
generateSessionId,
|
|
42
|
+
sessionGapThreshold
|
|
40
43
|
};
|
|
41
44
|
}
|
|
42
45
|
function createProgressAdapter(onProgress) {
|
|
43
46
|
if (!onProgress) return () => {
|
|
44
47
|
};
|
|
45
|
-
return (progress) =>
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
48
|
+
return (progress) => onProgress(createProgressAdapterValue(progress));
|
|
49
|
+
}
|
|
50
|
+
function createProgressAdapterValue(progress) {
|
|
51
|
+
let stage = "parsing";
|
|
52
|
+
let pct = 0;
|
|
53
|
+
switch (progress.stage) {
|
|
54
|
+
case "detecting":
|
|
55
|
+
stage = "detecting";
|
|
56
|
+
pct = 5;
|
|
57
|
+
break;
|
|
58
|
+
case "parsing":
|
|
59
|
+
stage = "parsing";
|
|
60
|
+
pct = Math.min(Math.round(progress.percentage * 0.7), 70);
|
|
61
|
+
break;
|
|
62
|
+
case "saving":
|
|
63
|
+
stage = "saving";
|
|
64
|
+
pct = 80;
|
|
65
|
+
break;
|
|
66
|
+
case "indexing":
|
|
67
|
+
stage = "indexing";
|
|
68
|
+
pct = 90;
|
|
69
|
+
break;
|
|
70
|
+
case "done":
|
|
71
|
+
stage = "done";
|
|
72
|
+
pct = 100;
|
|
73
|
+
break;
|
|
74
|
+
case "error":
|
|
75
|
+
stage = "error";
|
|
76
|
+
pct = 0;
|
|
77
|
+
break;
|
|
78
|
+
}
|
|
79
|
+
return {
|
|
80
|
+
stage,
|
|
81
|
+
progress: pct,
|
|
82
|
+
message: progress.message || "",
|
|
83
|
+
bytesRead: progress.bytesRead,
|
|
84
|
+
totalBytes: progress.totalBytes,
|
|
85
|
+
messagesProcessed: progress.messagesProcessed
|
|
82
86
|
};
|
|
83
87
|
}
|
|
84
88
|
function deleteSessionDatabase(dbManager, sessionId) {
|
|
85
89
|
dbManager.deleteSessionDatabaseFiles(sessionId);
|
|
86
90
|
}
|
|
87
|
-
async function streamImportUnlocked(dbManager, filePath, options) {
|
|
88
|
-
const { formatId, chatIndex, onProgress, sessionId } = options || {};
|
|
91
|
+
async function streamImportUnlocked(dbManager, filePath, options, updateCompatibilityGate = true, progressOverride) {
|
|
92
|
+
const { formatId, chatIndex, sessionGapThreshold, onProgress, sessionId } = options || {};
|
|
89
93
|
const formatOptions = {};
|
|
90
94
|
if (formatId) formatOptions.formatId = formatId;
|
|
91
95
|
if (chatIndex !== void 0) formatOptions.chatIndex = chatIndex;
|
|
92
|
-
const progressAdapter = createProgressAdapter(onProgress);
|
|
93
|
-
const deps = buildStreamImportDeps(dbManager, progressAdapter);
|
|
96
|
+
const progressAdapter = progressOverride ?? createProgressAdapter(onProgress);
|
|
97
|
+
const deps = buildStreamImportDeps(dbManager, progressAdapter, sessionGapThreshold);
|
|
94
98
|
const result = await streamingImport(filePath, deps, formatOptions, sessionId);
|
|
95
99
|
if (!result.success || !result.sessionId) return result;
|
|
100
|
+
if (!updateCompatibilityGate) return result;
|
|
96
101
|
try {
|
|
97
102
|
dbManager.raiseCurrentChatDbCompatibilityGate();
|
|
98
103
|
} catch (error) {
|
|
@@ -119,40 +124,137 @@ async function streamImport(dbManager, filePath, options) {
|
|
|
119
124
|
}
|
|
120
125
|
}
|
|
121
126
|
async function autoImport(dbManager, filePath, options) {
|
|
127
|
+
try {
|
|
128
|
+
return await withDataDirImportLock(
|
|
129
|
+
dbManager.getUserDataDir(),
|
|
130
|
+
() => autoImportUnlocked(dbManager, filePath, options)
|
|
131
|
+
);
|
|
132
|
+
} catch (error) {
|
|
133
|
+
if (error instanceof ImportInProgressError) {
|
|
134
|
+
return { success: false, error: IMPORT_IN_PROGRESS_ERROR_KEY };
|
|
135
|
+
}
|
|
136
|
+
throw error;
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
async function autoImportUnlocked(dbManager, filePath, options, updateCompatibilityGate = true) {
|
|
122
140
|
const { formatId, chatIndex, onProgress, sessionId } = options ?? {};
|
|
123
141
|
const formatOptions = {};
|
|
124
142
|
if (formatId) formatOptions.formatId = formatId;
|
|
125
143
|
if (chatIndex !== void 0) formatOptions.chatIndex = chatIndex;
|
|
126
144
|
const progressAdapter = createProgressAdapter(onProgress);
|
|
145
|
+
return autoImportFile(
|
|
146
|
+
filePath,
|
|
147
|
+
{
|
|
148
|
+
listSessionIds: () => dbManager.listSessionIds(),
|
|
149
|
+
openReadonly: (candidateSessionId) => dbManager.openRawSessionDatabase(candidateSessionId, { readonly: true }),
|
|
150
|
+
onProgress: progressAdapter,
|
|
151
|
+
sessionExists: (candidateSessionId) => dbManager.listSessionIds().includes(candidateSessionId),
|
|
152
|
+
createSession: (sourcePath, sourceFormatOptions, explicitSessionId, itemProgress) => streamImportUnlocked(
|
|
153
|
+
dbManager,
|
|
154
|
+
sourcePath,
|
|
155
|
+
{
|
|
156
|
+
...options,
|
|
157
|
+
...sourceFormatOptions,
|
|
158
|
+
sessionId: explicitSessionId
|
|
159
|
+
},
|
|
160
|
+
updateCompatibilityGate,
|
|
161
|
+
itemProgress
|
|
162
|
+
),
|
|
163
|
+
appendSession: (targetSessionId, sourcePath, sourceFormatOptions, itemProgress) => incrementalImportUnlocked(
|
|
164
|
+
dbManager,
|
|
165
|
+
targetSessionId,
|
|
166
|
+
sourcePath,
|
|
167
|
+
{
|
|
168
|
+
...sourceFormatOptions,
|
|
169
|
+
onProgress: itemProgress ?? progressAdapter
|
|
170
|
+
},
|
|
171
|
+
updateCompatibilityGate
|
|
172
|
+
)
|
|
173
|
+
},
|
|
174
|
+
{
|
|
175
|
+
explicitSessionId: sessionId,
|
|
176
|
+
formatOptions
|
|
177
|
+
}
|
|
178
|
+
);
|
|
179
|
+
}
|
|
180
|
+
async function autoImportBatch2(dbManager, items, options = {}) {
|
|
127
181
|
try {
|
|
128
|
-
return await withDataDirImportLock(
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
182
|
+
return await withDataDirImportLock(dbManager.getUserDataDir(), async () => {
|
|
183
|
+
const results = await autoImportBatch(
|
|
184
|
+
items.map((item) => ({
|
|
185
|
+
id: item.id,
|
|
186
|
+
filePath: item.filePath,
|
|
187
|
+
options: {
|
|
188
|
+
explicitSessionId: item.sessionId,
|
|
189
|
+
formatOptions: {
|
|
190
|
+
...item.formatId ? { formatId: item.formatId } : {},
|
|
191
|
+
...item.chatIndex !== void 0 ? { chatIndex: item.chatIndex } : {}
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
})),
|
|
132
195
|
{
|
|
133
196
|
listSessionIds: () => dbManager.listSessionIds(),
|
|
134
197
|
openReadonly: (candidateSessionId) => dbManager.openRawSessionDatabase(candidateSessionId, { readonly: true }),
|
|
135
|
-
onProgress: progressAdapter,
|
|
136
198
|
sessionExists: (candidateSessionId) => dbManager.listSessionIds().includes(candidateSessionId),
|
|
137
|
-
createSession: (sourcePath, sourceFormatOptions, explicitSessionId) => streamImportUnlocked(
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
199
|
+
createSession: (sourcePath, sourceFormatOptions, explicitSessionId, itemProgress) => streamImportUnlocked(
|
|
200
|
+
dbManager,
|
|
201
|
+
sourcePath,
|
|
202
|
+
{
|
|
203
|
+
...sourceFormatOptions,
|
|
204
|
+
sessionId: explicitSessionId,
|
|
205
|
+
sessionGapThreshold: options.sessionGapThreshold
|
|
206
|
+
},
|
|
207
|
+
false,
|
|
208
|
+
itemProgress
|
|
209
|
+
),
|
|
210
|
+
appendSession: (targetSessionId, sourcePath, sourceFormatOptions, itemProgress) => incrementalImportUnlocked(
|
|
211
|
+
dbManager,
|
|
212
|
+
targetSessionId,
|
|
213
|
+
sourcePath,
|
|
214
|
+
{
|
|
215
|
+
...sourceFormatOptions,
|
|
216
|
+
onProgress: itemProgress
|
|
217
|
+
},
|
|
218
|
+
false
|
|
219
|
+
)
|
|
146
220
|
},
|
|
147
221
|
{
|
|
148
|
-
|
|
149
|
-
|
|
222
|
+
concurrency: options.concurrency ?? resolveDefaultBatchConcurrency(items.length),
|
|
223
|
+
signal: options.signal,
|
|
224
|
+
onItemStart: (_item, index) => options.onItemStart?.(items[index], index),
|
|
225
|
+
onItemProgress: (_item, index, progress) => options.onItemProgress?.(items[index], index, createProgressAdapterValue(progress)),
|
|
226
|
+
onItemComplete: (_item, index, result) => options.onItemComplete?.(items[index], index, result)
|
|
150
227
|
}
|
|
151
|
-
)
|
|
152
|
-
|
|
228
|
+
);
|
|
229
|
+
if (results.some((result) => result.status === "success")) {
|
|
230
|
+
try {
|
|
231
|
+
dbManager.raiseCurrentChatDbCompatibilityGate();
|
|
232
|
+
} catch (error) {
|
|
233
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
234
|
+
for (const result of results) {
|
|
235
|
+
if (result.status === "success" && result.result.importMode === "created" && result.result.sessionId) {
|
|
236
|
+
deleteSessionDatabase(dbManager, result.result.sessionId);
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
return results.map(
|
|
240
|
+
(result) => result.status === "success" ? {
|
|
241
|
+
id: result.id,
|
|
242
|
+
status: "failed",
|
|
243
|
+
error: message,
|
|
244
|
+
result: { ...result.result, success: false, error: message }
|
|
245
|
+
} : result
|
|
246
|
+
);
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
return results;
|
|
250
|
+
});
|
|
153
251
|
} catch (error) {
|
|
154
252
|
if (error instanceof ImportInProgressError) {
|
|
155
|
-
return
|
|
253
|
+
return items.map((item) => ({
|
|
254
|
+
id: item.id,
|
|
255
|
+
status: "failed",
|
|
256
|
+
error: IMPORT_IN_PROGRESS_ERROR_KEY
|
|
257
|
+
}));
|
|
156
258
|
}
|
|
157
259
|
throw error;
|
|
158
260
|
}
|
|
@@ -201,7 +303,7 @@ function buildIncrementalDeps(dbManager, onProgress, onCompatibilityError) {
|
|
|
201
303
|
})
|
|
202
304
|
};
|
|
203
305
|
}
|
|
204
|
-
async function incrementalImportUnlocked(dbManager, sessionId, filePath, options) {
|
|
306
|
+
async function incrementalImportUnlocked(dbManager, sessionId, filePath, options, updateCompatibilityGate = true) {
|
|
205
307
|
const { onProgress, ...importOpts } = options || {};
|
|
206
308
|
let compatibilityError = null;
|
|
207
309
|
const result = await incrementalImport(
|
|
@@ -214,6 +316,7 @@ async function incrementalImportUnlocked(dbManager, sessionId, filePath, options
|
|
|
214
316
|
);
|
|
215
317
|
if (compatibilityError) throw compatibilityError;
|
|
216
318
|
if (!result.success) return result;
|
|
319
|
+
if (!updateCompatibilityGate) return result;
|
|
217
320
|
try {
|
|
218
321
|
dbManager.raiseCurrentChatDbCompatibilityGate();
|
|
219
322
|
} catch (error) {
|
|
@@ -260,9 +363,10 @@ async function analyzeNewImport2(filePath, onProgress, options) {
|
|
|
260
363
|
export {
|
|
261
364
|
streamImport,
|
|
262
365
|
autoImport,
|
|
366
|
+
autoImportBatch2 as autoImportBatch,
|
|
263
367
|
analyzeAutoImport,
|
|
264
368
|
incrementalImport2 as incrementalImport,
|
|
265
369
|
analyzeIncrementalImport2 as analyzeIncrementalImport,
|
|
266
370
|
analyzeNewImport2 as analyzeNewImport
|
|
267
371
|
};
|
|
268
|
-
//# sourceMappingURL=chunk-
|
|
372
|
+
//# sourceMappingURL=chunk-U6MVJSXX.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/import/stream-import.ts"],"sourcesContent":["/**\n * Server/CLI streaming import — adapter for @openchatlab/node-runtime StreamingImporter.\n *\n * Replaces the old buffered-in-memory approach with the same high-performance\n * streaming pipeline used by Electron (batched transactions, deferred indexes,\n * nickname history, FTS, format fallback).\n */\n\nimport type { DatabaseManager } from '@openchatlab/node-runtime'\nimport {\n DataDirCompatibilityError,\n IMPORT_IN_PROGRESS_ERROR_KEY,\n ImportInProgressError,\n resolveDefaultBatchConcurrency,\n analyzeAutoImportFile as sharedAnalyzeAutoImportFile,\n autoImportBatch as sharedAutoImportBatch,\n autoImportFile as sharedAutoImportFile,\n streamingImport,\n analyzeNewImport as sharedAnalyzeNewImport,\n analyzeIncrementalImport as sharedAnalyzeIncremental,\n incrementalImport as sharedIncrementalImport,\n withDataDirImportLock,\n} from '@openchatlab/node-runtime'\nimport type {\n StreamImportResult,\n StreamImportDeps,\n ImportProgressCallback,\n IncrementalImportResult,\n IncrementalAnalyzeResult,\n IncrementalImportDeps,\n ImportOptions,\n AnalyzeNewImportResult,\n AutoImportAnalysisResult,\n AutoImportBatchItemResult,\n AutoImportResult,\n} from '@openchatlab/node-runtime'\nimport {\n detectFormat as parserDetectFormat,\n detectAllFormats,\n getFormatFeatureById,\n getSupportedFormats as parserGetSupportedFormats,\n scanMultiChatFile as parserScanMultiChatFile,\n findEntryFileInDirectory,\n type FormatFeature,\n type MultiChatInfo,\n type ParseProgress,\n} from '@openchatlab/parser'\nimport * as crypto from 'crypto'\n\n// ==================== Legacy progress interface (for SSE routes) ====================\n\nexport interface StreamImportProgress {\n stage: 'detecting' | 'parsing' | 'saving' | 'indexing' | 'done' | 'error'\n progress: number\n message: string\n bytesRead?: number\n totalBytes?: number\n messagesProcessed?: number\n}\n\nexport interface StreamImportOptions {\n formatId?: string\n chatIndex?: number\n sessionGapThreshold?: number\n nativeBinding?: string\n onProgress?: (progress: StreamImportProgress) => void\n /** Fix the target session ID instead of auto-generating one. Used by sync/pull adapters. */\n sessionId?: string\n}\n\nfunction generateSessionId(): string {\n const ts = Date.now()\n const rand = crypto.randomBytes(4).toString('hex')\n return `chat_${ts}_${rand}`\n}\n\nfunction buildStreamImportDeps(\n dbManager: DatabaseManager,\n onProgress?: ImportProgressCallback,\n sessionGapThreshold?: number\n): StreamImportDeps {\n return {\n openDatabase(sessionId: string) {\n return dbManager.openRawSessionDatabase(sessionId, { create: true, initializeChatTables: true })\n },\n deleteDatabase(sessionId: string) {\n dbManager.deleteSessionDatabaseFiles(sessionId)\n },\n onProgress: onProgress ?? (() => {}),\n generateSessionId,\n sessionGapThreshold,\n }\n}\n\nfunction createProgressAdapter(onProgress?: (progress: StreamImportProgress) => void): ImportProgressCallback {\n if (!onProgress) return () => {}\n return (progress) => onProgress(createProgressAdapterValue(progress))\n}\n\nfunction createProgressAdapterValue(progress: Parameters<ImportProgressCallback>[0]): StreamImportProgress {\n let stage: StreamImportProgress['stage'] = 'parsing'\n let pct = 0\n switch (progress.stage) {\n case 'detecting':\n stage = 'detecting'\n pct = 5\n break\n case 'parsing':\n stage = 'parsing'\n pct = Math.min(Math.round(progress.percentage * 0.7), 70)\n break\n case 'saving':\n stage = 'saving'\n pct = 80\n break\n case 'indexing':\n stage = 'indexing'\n pct = 90\n break\n case 'done':\n stage = 'done'\n pct = 100\n break\n case 'error':\n stage = 'error'\n pct = 0\n break\n }\n return {\n stage,\n progress: pct,\n message: progress.message || '',\n bytesRead: progress.bytesRead,\n totalBytes: progress.totalBytes,\n messagesProcessed: progress.messagesProcessed,\n }\n}\n\nfunction deleteSessionDatabase(dbManager: DatabaseManager, sessionId: string): void {\n dbManager.deleteSessionDatabaseFiles(sessionId)\n}\n\n/**\n * High-performance streaming import: parse a file and write to DB\n * with batched transactions, deferred indexes, and FTS.\n */\nasync function streamImportUnlocked(\n dbManager: DatabaseManager,\n filePath: string,\n options?: StreamImportOptions,\n updateCompatibilityGate = true,\n progressOverride?: ImportProgressCallback\n): Promise<StreamImportResult> {\n const { formatId, chatIndex, sessionGapThreshold, onProgress, sessionId } = options || {}\n\n const formatOptions: Record<string, unknown> = {}\n if (formatId) formatOptions.formatId = formatId\n if (chatIndex !== undefined) formatOptions.chatIndex = chatIndex\n\n const progressAdapter = progressOverride ?? createProgressAdapter(onProgress)\n\n const deps = buildStreamImportDeps(dbManager, progressAdapter, sessionGapThreshold)\n const result = await streamingImport(filePath, deps, formatOptions, sessionId)\n if (!result.success || !result.sessionId) return result\n\n if (!updateCompatibilityGate) return result\n\n try {\n dbManager.raiseCurrentChatDbCompatibilityGate()\n } catch (error) {\n deleteSessionDatabase(dbManager, result.sessionId)\n return {\n success: false,\n error: error instanceof Error ? error.message : String(error),\n diagnostics: result.diagnostics,\n }\n }\n\n return result\n}\n\nexport async function streamImport(\n dbManager: DatabaseManager,\n filePath: string,\n options?: StreamImportOptions\n): Promise<StreamImportResult> {\n try {\n return await withDataDirImportLock(dbManager.getUserDataDir(), () =>\n streamImportUnlocked(dbManager, filePath, options)\n )\n } catch (error) {\n if (error instanceof ImportInProgressError) {\n return { success: false, error: IMPORT_IN_PROGRESS_ERROR_KEY }\n }\n throw error\n }\n}\n\nexport async function autoImport(\n dbManager: DatabaseManager,\n filePath: string,\n options?: StreamImportOptions\n): Promise<AutoImportResult> {\n try {\n return await withDataDirImportLock(dbManager.getUserDataDir(), () =>\n autoImportUnlocked(dbManager, filePath, options)\n )\n } catch (error) {\n if (error instanceof ImportInProgressError) {\n return { success: false, error: IMPORT_IN_PROGRESS_ERROR_KEY }\n }\n throw error\n }\n}\n\nasync function autoImportUnlocked(\n dbManager: DatabaseManager,\n filePath: string,\n options?: StreamImportOptions,\n updateCompatibilityGate = true\n): Promise<AutoImportResult> {\n const { formatId, chatIndex, onProgress, sessionId } = options ?? {}\n const formatOptions: Record<string, unknown> = {}\n if (formatId) formatOptions.formatId = formatId\n if (chatIndex !== undefined) formatOptions.chatIndex = chatIndex\n const progressAdapter = createProgressAdapter(onProgress)\n\n return sharedAutoImportFile(\n filePath,\n {\n listSessionIds: () => dbManager.listSessionIds(),\n openReadonly: (candidateSessionId) => dbManager.openRawSessionDatabase(candidateSessionId, { readonly: true }),\n onProgress: progressAdapter,\n sessionExists: (candidateSessionId) => dbManager.listSessionIds().includes(candidateSessionId),\n createSession: (sourcePath, sourceFormatOptions, explicitSessionId, itemProgress) =>\n streamImportUnlocked(\n dbManager,\n sourcePath,\n {\n ...options,\n ...sourceFormatOptions,\n sessionId: explicitSessionId,\n },\n updateCompatibilityGate,\n itemProgress\n ),\n appendSession: (targetSessionId, sourcePath, sourceFormatOptions, itemProgress) =>\n incrementalImportUnlocked(\n dbManager,\n targetSessionId,\n sourcePath,\n {\n ...sourceFormatOptions,\n onProgress: itemProgress ?? progressAdapter,\n },\n updateCompatibilityGate\n ),\n },\n {\n explicitSessionId: sessionId,\n formatOptions,\n }\n )\n}\n\nexport interface AutoImportBatchRequest {\n id: string\n filePath: string\n formatId?: string\n chatIndex?: number\n sessionId?: string\n}\n\nexport interface AutoImportBatchOptions {\n concurrency?: number\n sessionGapThreshold?: number\n signal?: AbortSignal\n onItemStart?: (item: AutoImportBatchRequest, index: number) => void\n onItemProgress?: (item: AutoImportBatchRequest, index: number, progress: StreamImportProgress) => void\n onItemComplete?: (item: AutoImportBatchRequest, index: number, result: AutoImportBatchItemResult) => void\n}\n\nexport async function autoImportBatch(\n dbManager: DatabaseManager,\n items: AutoImportBatchRequest[],\n options: AutoImportBatchOptions = {}\n): Promise<AutoImportBatchItemResult[]> {\n try {\n return await withDataDirImportLock(dbManager.getUserDataDir(), async () => {\n const results = await sharedAutoImportBatch(\n items.map((item) => ({\n id: item.id,\n filePath: item.filePath,\n options: {\n explicitSessionId: item.sessionId,\n formatOptions: {\n ...(item.formatId ? { formatId: item.formatId } : {}),\n ...(item.chatIndex !== undefined ? { chatIndex: item.chatIndex } : {}),\n },\n },\n })),\n {\n listSessionIds: () => dbManager.listSessionIds(),\n openReadonly: (candidateSessionId) =>\n dbManager.openRawSessionDatabase(candidateSessionId, { readonly: true }),\n sessionExists: (candidateSessionId) => dbManager.listSessionIds().includes(candidateSessionId),\n createSession: (sourcePath, sourceFormatOptions, explicitSessionId, itemProgress) =>\n streamImportUnlocked(\n dbManager,\n sourcePath,\n {\n ...sourceFormatOptions,\n sessionId: explicitSessionId,\n sessionGapThreshold: options.sessionGapThreshold,\n },\n false,\n itemProgress\n ),\n appendSession: (targetSessionId, sourcePath, sourceFormatOptions, itemProgress) =>\n incrementalImportUnlocked(\n dbManager,\n targetSessionId,\n sourcePath,\n {\n ...sourceFormatOptions,\n onProgress: itemProgress,\n },\n false\n ),\n },\n {\n concurrency: options.concurrency ?? resolveDefaultBatchConcurrency(items.length),\n signal: options.signal,\n onItemStart: (_item, index) => options.onItemStart?.(items[index], index),\n onItemProgress: (_item, index, progress) =>\n options.onItemProgress?.(items[index], index, createProgressAdapterValue(progress)),\n onItemComplete: (_item, index, result) => options.onItemComplete?.(items[index], index, result),\n }\n )\n\n if (results.some((result) => result.status === 'success')) {\n try {\n dbManager.raiseCurrentChatDbCompatibilityGate()\n } catch (error) {\n const message = error instanceof Error ? error.message : String(error)\n for (const result of results) {\n if (result.status === 'success' && result.result.importMode === 'created' && result.result.sessionId) {\n deleteSessionDatabase(dbManager, result.result.sessionId)\n }\n }\n return results.map((result) =>\n result.status === 'success'\n ? {\n id: result.id,\n status: 'failed' as const,\n error: message,\n result: { ...result.result, success: false, error: message },\n }\n : result\n )\n }\n }\n return results\n })\n } catch (error) {\n if (error instanceof ImportInProgressError) {\n return items.map((item) => ({\n id: item.id,\n status: 'failed' as const,\n error: IMPORT_IN_PROGRESS_ERROR_KEY,\n }))\n }\n throw error\n }\n}\n\nexport async function analyzeAutoImport(\n dbManager: DatabaseManager,\n filePath: string,\n options?: StreamImportOptions\n): Promise<AutoImportAnalysisResult> {\n const { formatId, chatIndex, onProgress, sessionId } = options ?? {}\n const formatOptions: Record<string, unknown> = {}\n if (formatId) formatOptions.formatId = formatId\n if (chatIndex !== undefined) formatOptions.chatIndex = chatIndex\n const progressAdapter = createProgressAdapter(onProgress)\n let readonlySessionIds: string[] | undefined\n const listSessionIdsReadonly = (): string[] => (readonlySessionIds ??= dbManager.listSessionIdsReadonly())\n\n return sharedAnalyzeAutoImportFile(\n filePath,\n {\n listSessionIds: listSessionIdsReadonly,\n openReadonly: (candidateSessionId) => dbManager.openRawSessionDatabase(candidateSessionId, { readonly: true }),\n onProgress: progressAdapter,\n sessionExists: (candidateSessionId) => listSessionIdsReadonly().includes(candidateSessionId),\n analyzeCreateSession: (sourcePath, sourceFormatOptions) =>\n sharedAnalyzeNewImport(sourcePath, progressAdapter, {\n formatId: typeof sourceFormatOptions?.formatId === 'string' ? sourceFormatOptions.formatId : undefined,\n chatIndex: typeof sourceFormatOptions?.chatIndex === 'number' ? sourceFormatOptions.chatIndex : undefined,\n }),\n analyzeAppendSession: (targetSessionId, sourcePath, sourceFormatOptions) =>\n sharedAnalyzeIncremental(targetSessionId, sourcePath, buildIncrementalDeps(dbManager, progressAdapter), {\n formatId: typeof sourceFormatOptions?.formatId === 'string' ? sourceFormatOptions.formatId : undefined,\n chatIndex: typeof sourceFormatOptions?.chatIndex === 'number' ? sourceFormatOptions.chatIndex : undefined,\n }),\n },\n {\n explicitSessionId: sessionId,\n formatOptions,\n }\n )\n}\n\n// ==================== Incremental import ====================\n\nfunction buildIncrementalDeps(\n dbManager: DatabaseManager,\n onProgress?: ImportProgressCallback,\n onCompatibilityError?: (error: DataDirCompatibilityError) => void\n): IncrementalImportDeps {\n return {\n openDatabase(sessionId: string, readonly?: boolean) {\n try {\n return dbManager.openRawSessionDatabase(sessionId, { readonly: readonly ?? false })\n } catch (error) {\n if (error instanceof DataDirCompatibilityError) onCompatibilityError?.(error)\n throw error\n }\n },\n onProgress: onProgress ?? (() => {}),\n }\n}\n\nasync function incrementalImportUnlocked(\n dbManager: DatabaseManager,\n sessionId: string,\n filePath: string,\n options?: ImportOptions & { onProgress?: ImportProgressCallback },\n updateCompatibilityGate = true\n): Promise<IncrementalImportResult> {\n const { onProgress, ...importOpts } = options || {}\n let compatibilityError: DataDirCompatibilityError | null = null\n const result = await sharedIncrementalImport(\n sessionId,\n filePath,\n buildIncrementalDeps(dbManager, onProgress, (error) => {\n compatibilityError = error\n }),\n importOpts\n )\n if (compatibilityError) throw compatibilityError\n if (!result.success) return result\n if (!updateCompatibilityGate) return result\n\n try {\n dbManager.raiseCurrentChatDbCompatibilityGate()\n } catch (error) {\n return {\n ...result,\n success: false,\n newMessageCount: 0,\n error: error instanceof Error ? error.message : String(error),\n }\n }\n\n return result\n}\n\nexport async function incrementalImport(\n dbManager: DatabaseManager,\n sessionId: string,\n filePath: string,\n options?: ImportOptions & { onProgress?: ImportProgressCallback }\n): Promise<IncrementalImportResult> {\n try {\n return await withDataDirImportLock(dbManager.getUserDataDir(), () =>\n incrementalImportUnlocked(dbManager, sessionId, filePath, options)\n )\n } catch (error) {\n if (error instanceof ImportInProgressError) {\n return { success: false, newMessageCount: 0, error: IMPORT_IN_PROGRESS_ERROR_KEY }\n }\n throw error\n }\n}\n\nexport async function analyzeIncrementalImport(\n dbManager: DatabaseManager,\n sessionId: string,\n filePath: string,\n onProgress?: ImportProgressCallback,\n options?: ImportOptions\n): Promise<IncrementalAnalyzeResult> {\n let compatibilityError: DataDirCompatibilityError | null = null\n const result = await sharedAnalyzeIncremental(\n sessionId,\n filePath,\n buildIncrementalDeps(dbManager, onProgress, (error) => {\n compatibilityError = error\n }),\n options\n )\n if (compatibilityError) throw compatibilityError\n return result\n}\n\nexport async function analyzeNewImport(\n filePath: string,\n onProgress?: ImportProgressCallback,\n options?: Pick<ImportOptions, 'formatId' | 'chatIndex'>\n): Promise<AnalyzeNewImportResult> {\n return sharedAnalyzeNewImport(filePath, onProgress ?? (() => {}), options)\n}\n\n// ==================== Re-exports from parser ====================\n\nexport {\n parserDetectFormat as detectFormat,\n detectAllFormats,\n getFormatFeatureById,\n parserGetSupportedFormats as getSupportedFormats,\n parserScanMultiChatFile as scanMultiChatFile,\n findEntryFileInDirectory,\n}\nexport type { FormatFeature, MultiChatInfo, ParseProgress }\nexport type {\n StreamImportResult,\n IncrementalImportResult,\n IncrementalAnalyzeResult,\n AnalyzeNewImportResult,\n AutoImportAnalysisResult,\n ImportOptions,\n AutoImportResult,\n}\n"],"mappings":"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","names":["autoImportBatch","incrementalImport","analyzeIncrementalImport","analyzeNewImport"]}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { createRequire as __createRequire } from 'module';
|
|
2
|
+
import { dirname as __pathDirname } from 'path';
|
|
3
|
+
import { fileURLToPath as __fileURLToPath } from 'url';
|
|
4
|
+
const require = __createRequire(import.meta.url);
|
|
5
|
+
const __filename = __fileURLToPath(import.meta.url);
|
|
6
|
+
const __dirname = __pathDirname(__filename);
|
|
7
|
+
import {
|
|
8
|
+
createLocalEmbeddingRuntimeManager
|
|
9
|
+
} from "./chunk-4LW6443F.mjs";
|
|
10
|
+
|
|
11
|
+
// src/semantic-index/local-runtime.ts
|
|
12
|
+
import path from "path";
|
|
13
|
+
var LOCAL_EMBEDDING_RUNTIME_DIR_ENV = "CHATLAB_LOCAL_EMBEDDING_RUNTIME_DIR";
|
|
14
|
+
function resolveCliLocalEmbeddingRuntimeConfig(aiDataDir, env = process.env) {
|
|
15
|
+
const preinstalledDir = env[LOCAL_EMBEDDING_RUNTIME_DIR_ENV]?.trim();
|
|
16
|
+
if (preinstalledDir) {
|
|
17
|
+
return {
|
|
18
|
+
baseDir: path.resolve(preinstalledDir),
|
|
19
|
+
installMode: "preinstalled"
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
return {
|
|
23
|
+
baseDir: path.join(aiDataDir, "runtime", "local-embedding"),
|
|
24
|
+
installMode: "auto"
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
async function installCliLocalEmbeddingRuntime(aiDataDir, env = process.env) {
|
|
28
|
+
const config = resolveCliLocalEmbeddingRuntimeConfig(aiDataDir, env);
|
|
29
|
+
const manager = createLocalEmbeddingRuntimeManager({
|
|
30
|
+
...config,
|
|
31
|
+
// The build-time installer populates a directory that normal app startup treats as read-only.
|
|
32
|
+
installMode: "auto"
|
|
33
|
+
});
|
|
34
|
+
return await manager.ensureInstalled();
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export {
|
|
38
|
+
resolveCliLocalEmbeddingRuntimeConfig,
|
|
39
|
+
installCliLocalEmbeddingRuntime
|
|
40
|
+
};
|
|
41
|
+
//# sourceMappingURL=chunk-UMBEHBIZ.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/semantic-index/local-runtime.ts"],"sourcesContent":["import path from 'node:path'\nimport { createLocalEmbeddingRuntimeManager, type LocalEmbeddingRuntimeConfig } from '@openchatlab/node-runtime'\n\nexport const LOCAL_EMBEDDING_RUNTIME_DIR_ENV = 'CHATLAB_LOCAL_EMBEDDING_RUNTIME_DIR'\n\nexport function resolveCliLocalEmbeddingRuntimeConfig(\n aiDataDir: string,\n env: NodeJS.ProcessEnv = process.env\n): LocalEmbeddingRuntimeConfig {\n const preinstalledDir = env[LOCAL_EMBEDDING_RUNTIME_DIR_ENV]?.trim()\n if (preinstalledDir) {\n return {\n baseDir: path.resolve(preinstalledDir),\n installMode: 'preinstalled',\n }\n }\n return {\n baseDir: path.join(aiDataDir, 'runtime', 'local-embedding'),\n installMode: 'auto',\n }\n}\n\nexport async function installCliLocalEmbeddingRuntime(\n aiDataDir: string,\n env: NodeJS.ProcessEnv = process.env\n): Promise<string> {\n const config = resolveCliLocalEmbeddingRuntimeConfig(aiDataDir, env)\n const manager = createLocalEmbeddingRuntimeManager({\n ...config,\n // The build-time installer populates a directory that normal app startup treats as read-only.\n installMode: 'auto',\n })\n return await manager.ensureInstalled()\n}\n"],"mappings":";;;;;;;;;;;AAAA,OAAO,UAAU;AAGV,IAAM,kCAAkC;AAExC,SAAS,sCACd,WACA,MAAyB,QAAQ,KACJ;AAC7B,QAAM,kBAAkB,IAAI,+BAA+B,GAAG,KAAK;AACnE,MAAI,iBAAiB;AACnB,WAAO;AAAA,MACL,SAAS,KAAK,QAAQ,eAAe;AAAA,MACrC,aAAa;AAAA,IACf;AAAA,EACF;AACA,SAAO;AAAA,IACL,SAAS,KAAK,KAAK,WAAW,WAAW,iBAAiB;AAAA,IAC1D,aAAa;AAAA,EACf;AACF;AAEA,eAAsB,gCACpB,WACA,MAAyB,QAAQ,KAChB;AACjB,QAAM,SAAS,sCAAsC,WAAW,GAAG;AACnE,QAAM,UAAU,mCAAmC;AAAA,IACjD,GAAG;AAAA;AAAA,IAEH,aAAa;AAAA,EACf,CAAC;AACD,SAAO,MAAM,QAAQ,gBAAgB;AACvC;","names":[]}
|
|
@@ -16,14 +16,6 @@ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require
|
|
|
16
16
|
if (typeof require !== "undefined") return require.apply(this, arguments);
|
|
17
17
|
throw Error('Dynamic require of "' + x + '" is not supported');
|
|
18
18
|
});
|
|
19
|
-
var __glob = (map) => (path) => {
|
|
20
|
-
var fn = map[path];
|
|
21
|
-
if (fn) return fn();
|
|
22
|
-
throw new Error("Module not found in bundle: " + path);
|
|
23
|
-
};
|
|
24
|
-
var __esm = (fn, res) => function __init() {
|
|
25
|
-
return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
|
|
26
|
-
};
|
|
27
19
|
var __commonJS = (cb, mod) => function __require2() {
|
|
28
20
|
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
29
21
|
};
|
|
@@ -50,10 +42,8 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
50
42
|
|
|
51
43
|
export {
|
|
52
44
|
__require,
|
|
53
|
-
__glob,
|
|
54
|
-
__esm,
|
|
55
45
|
__commonJS,
|
|
56
46
|
__export,
|
|
57
47
|
__toESM
|
|
58
48
|
};
|
|
59
|
-
//# sourceMappingURL=chunk-
|
|
49
|
+
//# sourceMappingURL=chunk-VSOWNKPA.mjs.map
|
package/dist/cli.mjs
CHANGED
|
@@ -6,19 +6,20 @@ const __filename = __fileURLToPath(import.meta.url);
|
|
|
6
6
|
const __dirname = __pathDirname(__filename);
|
|
7
7
|
import {
|
|
8
8
|
run
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-JX6MFS6F.mjs";
|
|
10
|
+
import "./chunk-UMBEHBIZ.mjs";
|
|
10
11
|
import "./chunk-5FGB42EQ.mjs";
|
|
11
|
-
import "./chunk-
|
|
12
|
-
import "./chunk-
|
|
12
|
+
import "./chunk-U6MVJSXX.mjs";
|
|
13
|
+
import "./chunk-4RLZFGO5.mjs";
|
|
13
14
|
import "./chunk-5ADKYYNA.mjs";
|
|
14
|
-
import "./chunk-S5NCEESV.mjs";
|
|
15
|
-
import "./chunk-AQPDZAWB.mjs";
|
|
16
15
|
import "./chunk-FJ35V3TE.mjs";
|
|
17
|
-
import "./chunk-
|
|
18
|
-
import "./chunk-
|
|
16
|
+
import "./chunk-2XCNTG4O.mjs";
|
|
17
|
+
import "./chunk-4LW6443F.mjs";
|
|
18
|
+
import "./chunk-52P5ZRBD.mjs";
|
|
19
|
+
import "./chunk-652KEAX3.mjs";
|
|
19
20
|
import "./chunk-QZCNVAH6.mjs";
|
|
20
|
-
import "./chunk-
|
|
21
|
-
import "./chunk-
|
|
21
|
+
import "./chunk-INBJ7SND.mjs";
|
|
22
|
+
import "./chunk-VSOWNKPA.mjs";
|
|
22
23
|
export {
|
|
23
24
|
run
|
|
24
25
|
};
|
package/dist/contacts-worker.mjs
CHANGED
|
@@ -6,15 +6,15 @@ const __filename = __fileURLToPath(import.meta.url);
|
|
|
6
6
|
const __dirname = __pathDirname(__filename);
|
|
7
7
|
import {
|
|
8
8
|
computeContactsSnapshot
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-52P5ZRBD.mjs";
|
|
10
10
|
import {
|
|
11
11
|
DatabaseManager,
|
|
12
12
|
StaticPathProvider,
|
|
13
13
|
createDatabaseManagerAdapter,
|
|
14
14
|
getContactsFactsCacheDir,
|
|
15
15
|
initAppLogger
|
|
16
|
-
} from "./chunk-
|
|
17
|
-
import "./chunk-
|
|
16
|
+
} from "./chunk-INBJ7SND.mjs";
|
|
17
|
+
import "./chunk-VSOWNKPA.mjs";
|
|
18
18
|
|
|
19
19
|
// ../../packages/node-runtime/src/services/contacts/worker-entry.ts
|
|
20
20
|
import { parentPort, workerData } from "worker_threads";
|
|
@@ -21,8 +21,8 @@ import {
|
|
|
21
21
|
initAppLogger,
|
|
22
22
|
setCache,
|
|
23
23
|
toAnnualSummaryRangeKey
|
|
24
|
-
} from "./chunk-
|
|
25
|
-
import "./chunk-
|
|
24
|
+
} from "./chunk-INBJ7SND.mjs";
|
|
25
|
+
import "./chunk-VSOWNKPA.mjs";
|
|
26
26
|
|
|
27
27
|
// ../../packages/node-runtime/src/services/global-insight/worker-entry.ts
|
|
28
28
|
import { parentPort, workerData } from "worker_threads";
|
|
@@ -9,25 +9,26 @@ import {
|
|
|
9
9
|
registerWebRoutes,
|
|
10
10
|
startHttpServer,
|
|
11
11
|
stopHttpServer
|
|
12
|
-
} from "./chunk-
|
|
13
|
-
import "./chunk-
|
|
14
|
-
import "./chunk-
|
|
12
|
+
} from "./chunk-MENKFEPC.mjs";
|
|
13
|
+
import "./chunk-H6D4DZOC.mjs";
|
|
14
|
+
import "./chunk-72RWABYJ.mjs";
|
|
15
|
+
import "./chunk-UMBEHBIZ.mjs";
|
|
15
16
|
import "./chunk-5FGB42EQ.mjs";
|
|
16
|
-
import "./chunk-
|
|
17
|
-
import "./chunk-
|
|
17
|
+
import "./chunk-U6MVJSXX.mjs";
|
|
18
|
+
import "./chunk-4RLZFGO5.mjs";
|
|
18
19
|
import "./chunk-5ADKYYNA.mjs";
|
|
19
|
-
import "./chunk-S5NCEESV.mjs";
|
|
20
|
-
import "./chunk-AQPDZAWB.mjs";
|
|
21
20
|
import "./chunk-FJ35V3TE.mjs";
|
|
22
|
-
import "./chunk-
|
|
23
|
-
import "./chunk-
|
|
21
|
+
import "./chunk-2XCNTG4O.mjs";
|
|
22
|
+
import "./chunk-4LW6443F.mjs";
|
|
23
|
+
import "./chunk-52P5ZRBD.mjs";
|
|
24
|
+
import "./chunk-652KEAX3.mjs";
|
|
24
25
|
import "./chunk-QZCNVAH6.mjs";
|
|
25
|
-
import "./chunk-
|
|
26
|
-
import "./chunk-
|
|
26
|
+
import "./chunk-INBJ7SND.mjs";
|
|
27
|
+
import "./chunk-VSOWNKPA.mjs";
|
|
27
28
|
export {
|
|
28
29
|
createServer,
|
|
29
30
|
registerWebRoutes,
|
|
30
31
|
startHttpServer,
|
|
31
32
|
stopHttpServer
|
|
32
33
|
};
|
|
33
|
-
//# sourceMappingURL=http-
|
|
34
|
+
//# sourceMappingURL=http-HSK46XEU.mjs.map
|
|
@@ -10,10 +10,11 @@ import {
|
|
|
10
10
|
analyzeIncrementalImport,
|
|
11
11
|
analyzeNewImport,
|
|
12
12
|
autoImport,
|
|
13
|
+
autoImportBatch,
|
|
13
14
|
incrementalImport,
|
|
14
15
|
streamImport
|
|
15
|
-
} from "./chunk-
|
|
16
|
-
import "./chunk-
|
|
16
|
+
} from "./chunk-U6MVJSXX.mjs";
|
|
17
|
+
import "./chunk-2XCNTG4O.mjs";
|
|
17
18
|
import {
|
|
18
19
|
detectAllFormats,
|
|
19
20
|
detectFormat,
|
|
@@ -21,17 +22,18 @@ import {
|
|
|
21
22
|
getFormatFeatureById,
|
|
22
23
|
getSupportedFormats,
|
|
23
24
|
scanMultiChatFile
|
|
24
|
-
} from "./chunk-
|
|
25
|
-
import "./chunk-
|
|
26
|
-
import "./chunk-
|
|
25
|
+
} from "./chunk-4LW6443F.mjs";
|
|
26
|
+
import "./chunk-52P5ZRBD.mjs";
|
|
27
|
+
import "./chunk-652KEAX3.mjs";
|
|
27
28
|
import "./chunk-QZCNVAH6.mjs";
|
|
28
|
-
import "./chunk-
|
|
29
|
-
import "./chunk-
|
|
29
|
+
import "./chunk-INBJ7SND.mjs";
|
|
30
|
+
import "./chunk-VSOWNKPA.mjs";
|
|
30
31
|
export {
|
|
31
32
|
analyzeAutoImport,
|
|
32
33
|
analyzeIncrementalImport,
|
|
33
34
|
analyzeNewImport,
|
|
34
35
|
autoImport,
|
|
36
|
+
autoImportBatch,
|
|
35
37
|
detectAllFormats,
|
|
36
38
|
detectFormat,
|
|
37
39
|
findEntryFileInDirectory,
|
|
@@ -41,4 +43,4 @@ export {
|
|
|
41
43
|
scanMultiChatFile,
|
|
42
44
|
streamImport
|
|
43
45
|
};
|
|
44
|
-
//# sourceMappingURL=import-
|
|
46
|
+
//# sourceMappingURL=import-DF2WD2HE.mjs.map
|
package/dist/index.mjs
CHANGED
|
@@ -7,24 +7,25 @@ const __dirname = __pathDirname(__filename);
|
|
|
7
7
|
import {
|
|
8
8
|
startHttpServer,
|
|
9
9
|
stopHttpServer
|
|
10
|
-
} from "./chunk-
|
|
11
|
-
import "./chunk-
|
|
12
|
-
import "./chunk-
|
|
10
|
+
} from "./chunk-MENKFEPC.mjs";
|
|
11
|
+
import "./chunk-H6D4DZOC.mjs";
|
|
12
|
+
import "./chunk-72RWABYJ.mjs";
|
|
13
13
|
import {
|
|
14
14
|
run
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-JX6MFS6F.mjs";
|
|
16
|
+
import "./chunk-UMBEHBIZ.mjs";
|
|
16
17
|
import "./chunk-5FGB42EQ.mjs";
|
|
17
|
-
import "./chunk-
|
|
18
|
-
import "./chunk-
|
|
18
|
+
import "./chunk-U6MVJSXX.mjs";
|
|
19
|
+
import "./chunk-4RLZFGO5.mjs";
|
|
19
20
|
import "./chunk-5ADKYYNA.mjs";
|
|
20
|
-
import "./chunk-S5NCEESV.mjs";
|
|
21
|
-
import "./chunk-AQPDZAWB.mjs";
|
|
22
21
|
import "./chunk-FJ35V3TE.mjs";
|
|
23
|
-
import "./chunk-
|
|
24
|
-
import "./chunk-
|
|
22
|
+
import "./chunk-2XCNTG4O.mjs";
|
|
23
|
+
import "./chunk-4LW6443F.mjs";
|
|
24
|
+
import "./chunk-52P5ZRBD.mjs";
|
|
25
|
+
import "./chunk-652KEAX3.mjs";
|
|
25
26
|
import "./chunk-QZCNVAH6.mjs";
|
|
26
|
-
import "./chunk-
|
|
27
|
-
import "./chunk-
|
|
27
|
+
import "./chunk-INBJ7SND.mjs";
|
|
28
|
+
import "./chunk-VSOWNKPA.mjs";
|
|
28
29
|
export {
|
|
29
30
|
run,
|
|
30
31
|
startHttpServer,
|