@knowledgine/cli 0.6.0 → 0.6.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/commands/deprecation-check.d.ts +1 -0
- package/dist/commands/deprecation-check.d.ts.map +1 -1
- package/dist/commands/deprecation-check.js +23 -5
- package/dist/commands/deprecation-check.js.map +1 -1
- package/dist/commands/doctor.d.ts +23 -0
- package/dist/commands/doctor.d.ts.map +1 -0
- package/dist/commands/doctor.js +600 -0
- package/dist/commands/doctor.js.map +1 -0
- package/dist/commands/explain.d.ts.map +1 -1
- package/dist/commands/explain.js +4 -1
- package/dist/commands/explain.js.map +1 -1
- package/dist/commands/ingest.d.ts +1 -0
- package/dist/commands/ingest.d.ts.map +1 -1
- package/dist/commands/ingest.js +142 -2
- package/dist/commands/ingest.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +2 -0
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/search.d.ts.map +1 -1
- package/dist/commands/search.js +43 -10
- package/dist/commands/search.js.map +1 -1
- package/dist/commands/serve.d.ts +1 -0
- package/dist/commands/serve.d.ts.map +1 -1
- package/dist/commands/serve.js +16 -1
- package/dist/commands/serve.js.map +1 -1
- package/dist/commands/setup.d.ts.map +1 -1
- package/dist/commands/setup.js +8 -0
- package/dist/commands/setup.js.map +1 -1
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +5 -2
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/suggest.d.ts.map +1 -1
- package/dist/commands/suggest.js +12 -0
- package/dist/commands/suggest.js.map +1 -1
- package/dist/commands/upgrade.d.ts +1 -0
- package/dist/commands/upgrade.d.ts.map +1 -1
- package/dist/commands/upgrade.js +99 -2
- package/dist/commands/upgrade.js.map +1 -1
- package/dist/index.js +32 -9
- package/dist/index.js.map +1 -1
- package/dist/lib/formatter.d.ts.map +1 -1
- package/dist/lib/formatter.js +13 -8
- package/dist/lib/formatter.js.map +1 -1
- package/package.json +4 -4
|
@@ -2,6 +2,7 @@ export interface DeprecationCheckOptions {
|
|
|
2
2
|
path?: string;
|
|
3
3
|
apply?: boolean;
|
|
4
4
|
threshold?: string;
|
|
5
|
+
excludeTranslations?: boolean;
|
|
5
6
|
}
|
|
6
7
|
export declare function deprecationCheckCommand(options: DeprecationCheckOptions): Promise<void>;
|
|
7
8
|
//# sourceMappingURL=deprecation-check.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deprecation-check.d.ts","sourceRoot":"","sources":["../../src/commands/deprecation-check.ts"],"names":[],"mappings":"AAUA,MAAM,WAAW,uBAAuB;IACtC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"deprecation-check.d.ts","sourceRoot":"","sources":["../../src/commands/deprecation-check.ts"],"names":[],"mappings":"AAUA,MAAM,WAAW,uBAAuB;IACtC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AA4CD,wBAAsB,uBAAuB,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CA0E7F"}
|
|
@@ -3,10 +3,24 @@ import { loadConfig, resolveDefaultPath, createDatabase, Migrator, KnowledgeRepo
|
|
|
3
3
|
* 簡易テキスト類似度(Jaccard係数)でdeprecation候補を検出する
|
|
4
4
|
*/
|
|
5
5
|
function jaccardSimilarity(a, b) {
|
|
6
|
-
const tokenize = (text) =>
|
|
7
|
-
.toLowerCase()
|
|
8
|
-
|
|
9
|
-
|
|
6
|
+
const tokenize = (text) => {
|
|
7
|
+
const lower = text.toLowerCase();
|
|
8
|
+
const tokens = new Set();
|
|
9
|
+
// Word-level tokens for Latin/Cyrillic text
|
|
10
|
+
for (const token of lower.split(/\W+/)) {
|
|
11
|
+
if (token.length > 2)
|
|
12
|
+
tokens.add(token);
|
|
13
|
+
}
|
|
14
|
+
// Bigram tokens for CJK characters
|
|
15
|
+
const cjkRe = /[\u3040-\u309F\u30A0-\u30FF\u4E00-\u9FFF\uAC00-\uD7AF]/g;
|
|
16
|
+
const cjkChars = lower.match(cjkRe);
|
|
17
|
+
if (cjkChars && cjkChars.length >= 2) {
|
|
18
|
+
for (let i = 0; i < cjkChars.length - 1; i++) {
|
|
19
|
+
tokens.add(cjkChars[i] + cjkChars[i + 1]);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
return tokens;
|
|
23
|
+
};
|
|
10
24
|
const setA = tokenize(a);
|
|
11
25
|
const setB = tokenize(b);
|
|
12
26
|
if (setA.size === 0 || setB.size === 0)
|
|
@@ -31,7 +45,11 @@ export async function deprecationCheckCommand(options) {
|
|
|
31
45
|
new Migrator(db, ALL_MIGRATIONS).migrate();
|
|
32
46
|
const repository = new KnowledgeRepository(db);
|
|
33
47
|
try {
|
|
34
|
-
|
|
48
|
+
let allNotes = repository.getAllNotes().filter((n) => !n.deprecated);
|
|
49
|
+
if (options.excludeTranslations) {
|
|
50
|
+
const translationPattern = /\.(po|pot|mo|xlf|xliff)$|[\\/](locales?|i18n|translations?)[\\/]|\.i18n\./i;
|
|
51
|
+
allNotes = allNotes.filter((n) => !translationPattern.test(n.file_path));
|
|
52
|
+
}
|
|
35
53
|
const candidates = [];
|
|
36
54
|
// O(n²) comparison — intended for small knowledge bases
|
|
37
55
|
// For large bases, use findNotesByTimeProximity() as pre-filter
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deprecation-check.js","sourceRoot":"","sources":["../../src/commands/deprecation-check.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,kBAAkB,EAClB,cAAc,EACd,QAAQ,EACR,mBAAmB,EACnB,cAAc,GACf,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"deprecation-check.js","sourceRoot":"","sources":["../../src/commands/deprecation-check.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export interface DiagnosticResult {
|
|
2
|
+
name: string;
|
|
3
|
+
status: "pass" | "warning" | "error";
|
|
4
|
+
message: string;
|
|
5
|
+
fix?: string;
|
|
6
|
+
}
|
|
7
|
+
export interface DoctorOptions {
|
|
8
|
+
path?: string;
|
|
9
|
+
fix?: boolean;
|
|
10
|
+
}
|
|
11
|
+
export declare function checkKnowledgineDir(knowledgineDir: string): DiagnosticResult;
|
|
12
|
+
export declare function checkDatabaseExists(dbPath: string): DiagnosticResult;
|
|
13
|
+
export declare function checkDatabaseNotEmpty(dbPath: string): DiagnosticResult;
|
|
14
|
+
export declare function checkDatabasePermissions(dbPath: string): DiagnosticResult;
|
|
15
|
+
export declare function checkFTS5Integrity(dbPath: string): DiagnosticResult;
|
|
16
|
+
export declare function checkModelFiles(): DiagnosticResult;
|
|
17
|
+
export declare function checkEmbeddingCoverage(dbPath: string): DiagnosticResult;
|
|
18
|
+
export declare function checkSqliteVec(dbPath: string): Promise<DiagnosticResult>;
|
|
19
|
+
export declare function checkStaleEmbeddings(dbPath: string): DiagnosticResult;
|
|
20
|
+
export declare function checkNodeVersion(): DiagnosticResult;
|
|
21
|
+
export declare function checkSearchLatency(dbPath: string): Promise<DiagnosticResult>;
|
|
22
|
+
export declare function doctorCommand(options: DoctorOptions): Promise<void>;
|
|
23
|
+
//# sourceMappingURL=doctor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AAaA,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAGD,wBAAgB,mBAAmB,CAAC,cAAc,EAAE,MAAM,GAAG,gBAAgB,CAc5E;AAGD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,CAwBpE;AAGD,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,CAsBtE;AAGD,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,CA+BzE;AAGD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,CA8CnE;AAGD,wBAAgB,eAAe,IAAI,gBAAgB,CA0BlD;AAGD,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,CAsEvE;AAGD,wBAAsB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAqC9E;AAGD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,CA8DrE;AAGD,wBAAgB,gBAAgB,IAAI,gBAAgB,CAwBnD;AAGD,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAuDlF;AAED,wBAAsB,aAAa,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CA2KzE"}
|