@pella-labs/pinakes 0.1.10 → 0.3.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/README.md +20 -20
- package/dist/cli/audit.d.ts +5 -3
- package/dist/cli/audit.d.ts.map +1 -1
- package/dist/cli/audit.js +3 -24
- package/dist/cli/audit.js.map +1 -1
- package/dist/cli/contradiction-cli.d.ts +12 -0
- package/dist/cli/contradiction-cli.d.ts.map +1 -0
- package/dist/cli/contradiction-cli.js +35 -0
- package/dist/cli/contradiction-cli.js.map +1 -0
- package/dist/cli/contradiction.d.ts +59 -0
- package/dist/cli/contradiction.d.ts.map +1 -0
- package/dist/cli/contradiction.js +172 -0
- package/dist/cli/contradiction.js.map +1 -0
- package/dist/cli/export.d.ts +1 -1
- package/dist/cli/export.d.ts.map +1 -1
- package/dist/cli/export.js +7 -28
- package/dist/cli/export.js.map +1 -1
- package/dist/cli/import.d.ts +2 -2
- package/dist/cli/import.d.ts.map +1 -1
- package/dist/cli/import.js +5 -26
- package/dist/cli/import.js.map +1 -1
- package/dist/cli/index.js +39 -11
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/purge.d.ts +2 -2
- package/dist/cli/purge.d.ts.map +1 -1
- package/dist/cli/purge.js +2 -23
- package/dist/cli/purge.js.map +1 -1
- package/dist/cli/rebuild.d.ts +8 -6
- package/dist/cli/rebuild.d.ts.map +1 -1
- package/dist/cli/rebuild.js +9 -31
- package/dist/cli/rebuild.js.map +1 -1
- package/dist/cli/serve.d.ts +9 -7
- package/dist/cli/serve.d.ts.map +1 -1
- package/dist/cli/serve.js +71 -41
- package/dist/cli/serve.js.map +1 -1
- package/dist/cli/status.d.ts +7 -5
- package/dist/cli/status.d.ts.map +1 -1
- package/dist/cli/status.js +10 -29
- package/dist/cli/status.js.map +1 -1
- package/dist/db/client.d.ts +4 -4
- package/dist/db/client.js +3 -3
- package/dist/db/client.js.map +1 -1
- package/dist/db/migrations/migrations/0002_rename_kg_to_pinakes.sql +49 -0
- package/dist/db/migrations/migrations/meta/0002_snapshot.json +504 -0
- package/dist/db/migrations/migrations/meta/_journal.json +7 -0
- package/dist/db/repository.js +5 -5
- package/dist/db/repository.js.map +1 -1
- package/dist/db/schema.d.ts +84 -84
- package/dist/db/schema.d.ts.map +1 -1
- package/dist/db/schema.js +49 -49
- package/dist/db/schema.js.map +1 -1
- package/dist/db/types.d.ts +2 -2
- package/dist/db/types.js +1 -1
- package/dist/gaps/detector.d.ts +5 -5
- package/dist/gaps/detector.js +15 -15
- package/dist/gaps/detector.js.map +1 -1
- package/dist/ingest/chokidar.js +1 -1
- package/dist/ingest/ingester.d.ts +9 -4
- package/dist/ingest/ingester.d.ts.map +1 -1
- package/dist/ingest/ingester.js +82 -17
- package/dist/ingest/ingester.js.map +1 -1
- package/dist/ingest/manifest.d.ts +5 -3
- package/dist/ingest/manifest.d.ts.map +1 -1
- package/dist/ingest/manifest.js +23 -14
- package/dist/ingest/manifest.js.map +1 -1
- package/dist/ingest/parse/chunk.js +1 -1
- package/dist/ingest/parse/markdown.d.ts +2 -2
- package/dist/ingest/queue.d.ts +1 -1
- package/dist/ingest/queue.js +1 -1
- package/dist/ingest/source.d.ts +2 -2
- package/dist/ingest/source.d.ts.map +1 -1
- package/dist/ingest/source.js +1 -1
- package/dist/llm/provider.d.ts +70 -0
- package/dist/llm/provider.d.ts.map +1 -0
- package/dist/llm/provider.js +235 -0
- package/dist/llm/provider.js.map +1 -0
- package/dist/mcp/envelope.d.ts +1 -1
- package/dist/mcp/tools/execute.d.ts +7 -7
- package/dist/mcp/tools/execute.d.ts.map +1 -1
- package/dist/mcp/tools/execute.js +41 -59
- package/dist/mcp/tools/execute.js.map +1 -1
- package/dist/mcp/tools/search.d.ts +13 -8
- package/dist/mcp/tools/search.d.ts.map +1 -1
- package/dist/mcp/tools/search.js +53 -28
- package/dist/mcp/tools/search.js.map +1 -1
- package/dist/observability/audit.d.ts +2 -2
- package/dist/observability/audit.js +3 -3
- package/dist/observability/audit.js.map +1 -1
- package/dist/observability/logger.js +4 -4
- package/dist/observability/logger.js.map +1 -1
- package/dist/observability/metrics.js +1 -1
- package/dist/observability/metrics.js.map +1 -1
- package/dist/paths.d.ts +61 -0
- package/dist/paths.d.ts.map +1 -0
- package/dist/paths.js +106 -0
- package/dist/paths.js.map +1 -0
- package/dist/retrieval/dedup.d.ts +25 -0
- package/dist/retrieval/dedup.d.ts.map +1 -0
- package/dist/retrieval/dedup.js +97 -0
- package/dist/retrieval/dedup.js.map +1 -0
- package/dist/retrieval/embedder.d.ts +9 -9
- package/dist/retrieval/embedder.d.ts.map +1 -1
- package/dist/retrieval/embedder.js +17 -17
- package/dist/retrieval/embedder.js.map +1 -1
- package/dist/retrieval/expand.d.ts +18 -0
- package/dist/retrieval/expand.d.ts.map +1 -0
- package/dist/retrieval/expand.js +89 -0
- package/dist/retrieval/expand.js.map +1 -0
- package/dist/retrieval/fts.d.ts +3 -3
- package/dist/retrieval/fts.js +8 -8
- package/dist/retrieval/graph.d.ts +47 -0
- package/dist/retrieval/graph.d.ts.map +1 -0
- package/dist/retrieval/graph.js +144 -0
- package/dist/retrieval/graph.js.map +1 -0
- package/dist/retrieval/hybrid.d.ts +10 -0
- package/dist/retrieval/hybrid.d.ts.map +1 -1
- package/dist/retrieval/hybrid.js +57 -2
- package/dist/retrieval/hybrid.js.map +1 -1
- package/dist/retrieval/vec.d.ts +2 -2
- package/dist/retrieval/vec.js +3 -3
- package/dist/sandbox/bindings/install.d.ts +5 -5
- package/dist/sandbox/bindings/install.d.ts.map +1 -1
- package/dist/sandbox/bindings/install.js +3 -3
- package/dist/sandbox/bindings/install.js.map +1 -1
- package/dist/sandbox/bindings/kg.d.ts.map +1 -1
- package/dist/sandbox/bindings/kg.js +10 -0
- package/dist/sandbox/bindings/kg.js.map +1 -1
- package/dist/sandbox/bindings/pinakes.d.ts +29 -0
- package/dist/sandbox/bindings/pinakes.d.ts.map +1 -0
- package/dist/sandbox/bindings/pinakes.js +333 -0
- package/dist/sandbox/bindings/pinakes.js.map +1 -0
- package/dist/sandbox/bindings/write.d.ts +1 -1
- package/dist/sandbox/bindings/write.d.ts.map +1 -1
- package/dist/sandbox/bindings/write.js +9 -9
- package/dist/sandbox/bindings/write.js.map +1 -1
- package/dist/sandbox/executor.d.ts +3 -3
- package/dist/sandbox/executor.js +6 -6
- package/dist/sandbox/executor.js.map +1 -1
- package/dist/sandbox/helpers.d.ts +1 -1
- package/dist/sandbox/helpers.d.ts.map +1 -1
- package/dist/sandbox/helpers.js +2 -2
- package/dist/sandbox/vendored-codemode.d.ts +1 -1
- package/dist/sandbox/vendored-codemode.js +1 -1
- package/dist/server.js +15 -6
- package/dist/server.js.map +1 -1
- package/package.json +22 -27
package/dist/cli/import.js
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { existsSync, readFileSync } from 'node:fs';
|
|
2
|
-
import { homedir } from 'node:os';
|
|
3
|
-
import { dirname, isAbsolute, resolve } from 'node:path';
|
|
4
2
|
import { closeDb, openDb } from '../db/client.js';
|
|
5
3
|
import { logger } from '../observability/logger.js';
|
|
4
|
+
import { resolveCliDbPath } from '../paths.js';
|
|
6
5
|
export function importCommand(options) {
|
|
7
6
|
if (!existsSync(options.inFile)) {
|
|
8
7
|
throw new Error(`input file does not exist: ${options.inFile}`);
|
|
@@ -12,7 +11,7 @@ export function importCommand(options) {
|
|
|
12
11
|
if (data.scope && data.scope !== options.scope) {
|
|
13
12
|
logger.warn({ fileScope: data.scope, requestedScope: options.scope }, 'import file scope does not match requested scope');
|
|
14
13
|
}
|
|
15
|
-
const dbPath =
|
|
14
|
+
const dbPath = resolveCliDbPath(options, options.scope);
|
|
16
15
|
const bundle = openDb(dbPath);
|
|
17
16
|
try {
|
|
18
17
|
const result = { scope: options.scope, nodes: 0, edges: 0, chunks: 0 };
|
|
@@ -20,7 +19,7 @@ export function importCommand(options) {
|
|
|
20
19
|
try {
|
|
21
20
|
// Import nodes
|
|
22
21
|
if (data.nodes?.length) {
|
|
23
|
-
const insertNode = bundle.writer.prepare(`INSERT OR REPLACE INTO
|
|
22
|
+
const insertNode = bundle.writer.prepare(`INSERT OR REPLACE INTO pinakes_nodes
|
|
24
23
|
(id, scope, source_uri, section_path, kind, title, content, source_sha, token_count, confidence, created_at, updated_at, last_accessed_at)
|
|
25
24
|
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`);
|
|
26
25
|
for (const n of data.nodes) {
|
|
@@ -30,7 +29,7 @@ export function importCommand(options) {
|
|
|
30
29
|
}
|
|
31
30
|
// Import edges
|
|
32
31
|
if (data.edges?.length) {
|
|
33
|
-
const insertEdge = bundle.writer.prepare(`INSERT OR REPLACE INTO
|
|
32
|
+
const insertEdge = bundle.writer.prepare(`INSERT OR REPLACE INTO pinakes_edges (src_id, dst_id, edge_kind)
|
|
34
33
|
VALUES (?, ?, ?)`);
|
|
35
34
|
for (const e of data.edges) {
|
|
36
35
|
try {
|
|
@@ -45,7 +44,7 @@ export function importCommand(options) {
|
|
|
45
44
|
}
|
|
46
45
|
// Import chunks
|
|
47
46
|
if (data.chunks?.length) {
|
|
48
|
-
const insertChunk = bundle.writer.prepare(`INSERT OR REPLACE INTO
|
|
47
|
+
const insertChunk = bundle.writer.prepare(`INSERT OR REPLACE INTO pinakes_chunks
|
|
49
48
|
(id, node_id, chunk_index, text, chunk_sha, token_count, created_at)
|
|
50
49
|
VALUES (?, ?, ?, ?, ?, ?, ?)`);
|
|
51
50
|
for (const c of data.chunks) {
|
|
@@ -73,24 +72,4 @@ export function importCommand(options) {
|
|
|
73
72
|
export function renderImport(result) {
|
|
74
73
|
return `${result.scope}: imported ${result.nodes} nodes, ${result.edges} edges, ${result.chunks} chunks`;
|
|
75
74
|
}
|
|
76
|
-
// ----------------------------------------------------------------------------
|
|
77
|
-
// Path helpers
|
|
78
|
-
// ----------------------------------------------------------------------------
|
|
79
|
-
function resolveDbPath(options, scope) {
|
|
80
|
-
if (scope === 'personal') {
|
|
81
|
-
if (options.profileDbPath)
|
|
82
|
-
return resolveAbs(options.profileDbPath);
|
|
83
|
-
const env = process.env.KG_PROFILE_PATH;
|
|
84
|
-
const profileDir = env ? resolveAbs(env) : resolve(homedir(), '.pharos/profile');
|
|
85
|
-
return resolve(profileDir, 'kg.db');
|
|
86
|
-
}
|
|
87
|
-
if (options.dbPath)
|
|
88
|
-
return resolveAbs(options.dbPath);
|
|
89
|
-
if (options.wikiPath)
|
|
90
|
-
return resolve(dirname(resolveAbs(options.wikiPath)), '.pinakes', 'pinakes.db');
|
|
91
|
-
return resolve(process.cwd(), '.pinakes', 'pinakes.db');
|
|
92
|
-
}
|
|
93
|
-
function resolveAbs(p) {
|
|
94
|
-
return isAbsolute(p) ? p : resolve(process.cwd(), p);
|
|
95
|
-
}
|
|
96
75
|
//# sourceMappingURL=import.js.map
|
package/dist/cli/import.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"import.js","sourceRoot":"","sources":["../../src/cli/import.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"import.js","sourceRoot":"","sources":["../../src/cli/import.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/index.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { auditCommand, renderAudit } from './audit.js';
|
|
3
|
+
import { contradictionScanCommand } from './contradiction-cli.js';
|
|
3
4
|
import { exportCommand, renderExport } from './export.js';
|
|
4
5
|
import { importCommand, renderImport } from './import.js';
|
|
5
6
|
import { purgeCommand, renderPurge } from './purge.js';
|
|
@@ -51,7 +52,8 @@ async function main() {
|
|
|
51
52
|
switch (subcommand) {
|
|
52
53
|
case 'serve': {
|
|
53
54
|
await serveCommand({
|
|
54
|
-
|
|
55
|
+
projectRoot: getString(flags, 'project-root'),
|
|
56
|
+
wikiPath: getString(flags, 'wiki-path'),
|
|
55
57
|
dbPath: getString(flags, 'db-path'),
|
|
56
58
|
profilePath: getString(flags, 'profile-path'),
|
|
57
59
|
profileDbPath: getString(flags, 'profile-db-path'),
|
|
@@ -61,7 +63,8 @@ async function main() {
|
|
|
61
63
|
case 'rebuild': {
|
|
62
64
|
const scope = getString(flags, 'scope');
|
|
63
65
|
const summaries = await rebuildCommand({
|
|
64
|
-
|
|
66
|
+
projectRoot: getString(flags, 'project-root'),
|
|
67
|
+
wikiPath: getString(flags, 'wiki-path'),
|
|
65
68
|
dbPath: getString(flags, 'db-path'),
|
|
66
69
|
profilePath: getString(flags, 'profile-path'),
|
|
67
70
|
profileDbPath: getString(flags, 'profile-db-path'),
|
|
@@ -143,21 +146,46 @@ async function main() {
|
|
|
143
146
|
console.log(renderImport(result));
|
|
144
147
|
break;
|
|
145
148
|
}
|
|
149
|
+
case 'contradiction-scan': {
|
|
150
|
+
const scope = (getString(flags, 'scope') ?? 'project');
|
|
151
|
+
const result = await contradictionScanCommand({
|
|
152
|
+
scope,
|
|
153
|
+
wikiPath: getString(flags, 'wiki-path'),
|
|
154
|
+
dbPath: getString(flags, 'db-path'),
|
|
155
|
+
});
|
|
156
|
+
if (result.rate_limited) {
|
|
157
|
+
// eslint-disable-next-line no-console
|
|
158
|
+
console.log('Rate limited — last scan was less than 1 hour ago.');
|
|
159
|
+
}
|
|
160
|
+
else {
|
|
161
|
+
// eslint-disable-next-line no-console
|
|
162
|
+
console.log(`Scanned ${result.scanned_pairs} pairs, found ${result.contradictions.length} contradictions.`);
|
|
163
|
+
if (result.contradictions.length > 0) {
|
|
164
|
+
// eslint-disable-next-line no-console
|
|
165
|
+
console.log('Wrote contradictions.md to wiki root.');
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
break;
|
|
169
|
+
}
|
|
146
170
|
case undefined:
|
|
147
171
|
case 'help':
|
|
148
172
|
case '-h':
|
|
149
173
|
case '--help': {
|
|
150
174
|
// eslint-disable-next-line no-console
|
|
151
|
-
console.log(`
|
|
175
|
+
console.log(`pinakes — Pinakes CLI
|
|
176
|
+
|
|
177
|
+
All project data is stored under ~/.pinakes/projects/<mangled-project-root>/.
|
|
178
|
+
Personal data is stored under ~/.pinakes/. Set PINAKES_ROOT to override.
|
|
152
179
|
|
|
153
180
|
Usage:
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
181
|
+
pinakes serve [--project-root <dir>] [--wiki-path <dir>] [--db-path <path>] [--profile-path <dir>] [--profile-db-path <path>]
|
|
182
|
+
pinakes rebuild [--project-root <dir>] [--wiki-path <dir>] [--db-path <path>] [--scope project|personal|both]
|
|
183
|
+
pinakes status [--project-root <dir>] [--db-path <path>] [--profile-db-path <path>]
|
|
184
|
+
pinakes audit [--n <count>] [--scope project|personal] [--project-root <dir>] [--db-path <path>]
|
|
185
|
+
pinakes purge --scope <project|personal> --confirm [--project-root <dir>] [--db-path <path>]
|
|
186
|
+
pinakes export --scope <project|personal> [--out file.json] [--project-root <dir>] [--db-path <path>]
|
|
187
|
+
pinakes import --scope <project|personal> --in file.json [--project-root <dir>] [--db-path <path>]
|
|
188
|
+
pinakes contradiction-scan [--scope project|personal] [--project-root <dir>] [--wiki-path <dir>] [--db-path <path>]`);
|
|
161
189
|
break;
|
|
162
190
|
}
|
|
163
191
|
default:
|
|
@@ -165,7 +193,7 @@ Usage:
|
|
|
165
193
|
}
|
|
166
194
|
}
|
|
167
195
|
main().catch((err) => {
|
|
168
|
-
logger.error({ err }, '
|
|
196
|
+
logger.error({ err }, 'pinakes cli failed');
|
|
169
197
|
console.error(err instanceof Error ? err.message : err);
|
|
170
198
|
process.exit(1);
|
|
171
199
|
});
|
package/dist/cli/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAgBpD,SAAS,UAAU,CAAC,IAAc;IAChC,MAAM,KAAK,GAAU,EAAE,CAAC;IACxB,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAE,CAAC;QACrB,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACzB,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC/B,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;gBACd,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;YACpD,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBACzB,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;oBACnC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;oBAC3B,CAAC,EAAE,CAAC;gBACN,CAAC;qBAAM,CAAC;oBACN,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;gBAC7B,CAAC;YACH,CAAC;QACH,CAAC;aAAM,CAAC;YACN,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACvB,CAAC;IACH,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;AAC/B,CAAC;AAED,SAAS,SAAS,CAAC,KAAY,EAAE,GAAW;IAC1C,MAAM,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;IACrB,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC/C,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAY,EAAE,GAAW;IAClD,MAAM,CAAC,GAAG,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAChC,IAAI,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,GAAG,EAAE,CAAC,CAAC;IAC3D,OAAO,CAAC,CAAC;AACX,CAAC;AAED,KAAK,UAAU,IAAI;IACjB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACnC,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAC3B,MAAM,EAAE,KAAK,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAE5C,QAAQ,UAAU,EAAE,CAAC;QACnB,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,YAAY,CAAC;gBACjB,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/purge.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* `
|
|
2
|
+
* `pinakes purge --scope <s> [--confirm]` — delete a scope's SQLite DB file.
|
|
3
3
|
*
|
|
4
4
|
* This is the nuclear option: wipes the DB entirely. The user can rebuild
|
|
5
|
-
* from markdown afterwards (`
|
|
5
|
+
* from markdown afterwards (`pinakes rebuild`). Requires `--confirm` flag to
|
|
6
6
|
* prevent accidental deletion.
|
|
7
7
|
*/
|
|
8
8
|
export interface PurgeOptions {
|
package/dist/cli/purge.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"purge.d.ts","sourceRoot":"","sources":["../../src/cli/purge.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"purge.d.ts","sourceRoot":"","sources":["../../src/cli/purge.ts"],"names":[],"mappings":"AAGA;;;;;;GAMG;AAEH,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,SAAS,GAAG,UAAU,CAAC;IAC9B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,YAAY,GAAG,WAAW,CA6B/D;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAKvD"}
|
package/dist/cli/purge.js
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { existsSync, unlinkSync } from 'node:fs';
|
|
2
|
-
import {
|
|
3
|
-
import { dirname, isAbsolute, resolve } from 'node:path';
|
|
2
|
+
import { resolveCliDbPath } from '../paths.js';
|
|
4
3
|
export function purgeCommand(options) {
|
|
5
|
-
const dbPath =
|
|
4
|
+
const dbPath = resolveCliDbPath(options, options.scope);
|
|
6
5
|
if (!options.confirm) {
|
|
7
6
|
return {
|
|
8
7
|
scope: options.scope,
|
|
@@ -34,24 +33,4 @@ export function renderPurge(result) {
|
|
|
34
33
|
}
|
|
35
34
|
return `${result.scope} DB NOT deleted: ${result.reason} (${result.dbPath})`;
|
|
36
35
|
}
|
|
37
|
-
// ----------------------------------------------------------------------------
|
|
38
|
-
// Path helpers
|
|
39
|
-
// ----------------------------------------------------------------------------
|
|
40
|
-
function resolveDbPath(options, scope) {
|
|
41
|
-
if (scope === 'personal') {
|
|
42
|
-
if (options.profileDbPath)
|
|
43
|
-
return resolveAbs(options.profileDbPath);
|
|
44
|
-
const env = process.env.KG_PROFILE_PATH;
|
|
45
|
-
const profileDir = env ? resolveAbs(env) : resolve(homedir(), '.pharos/profile');
|
|
46
|
-
return resolve(profileDir, 'kg.db');
|
|
47
|
-
}
|
|
48
|
-
if (options.dbPath)
|
|
49
|
-
return resolveAbs(options.dbPath);
|
|
50
|
-
if (options.wikiPath)
|
|
51
|
-
return resolve(dirname(resolveAbs(options.wikiPath)), '.pinakes', 'pinakes.db');
|
|
52
|
-
return resolve(process.cwd(), '.pinakes', 'pinakes.db');
|
|
53
|
-
}
|
|
54
|
-
function resolveAbs(p) {
|
|
55
|
-
return isAbsolute(p) ? p : resolve(process.cwd(), p);
|
|
56
|
-
}
|
|
57
36
|
//# sourceMappingURL=purge.js.map
|
package/dist/cli/purge.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"purge.js","sourceRoot":"","sources":["../../src/cli/purge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"purge.js","sourceRoot":"","sources":["../../src/cli/purge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAyB/C,MAAM,UAAU,YAAY,CAAC,OAAqB;IAChD,MAAM,MAAM,GAAG,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAExD,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QACrB,OAAO;YACL,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,MAAM;YACN,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,gDAAgD;SACzD,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QACxB,OAAO;YACL,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,MAAM;YACN,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,8BAA8B;SACvC,CAAC;IACJ,CAAC;IAED,0DAA0D;IAC1D,UAAU,CAAC,MAAM,CAAC,CAAC;IACnB,KAAK,MAAM,MAAM,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;QACtC,MAAM,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;QAChC,IAAI,UAAU,CAAC,OAAO,CAAC;YAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IAC/C,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,MAAmB;IAC7C,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,OAAO,UAAU,MAAM,CAAC,KAAK,QAAQ,MAAM,CAAC,MAAM,EAAE,CAAC;IACvD,CAAC;IACD,OAAO,GAAG,MAAM,CAAC,KAAK,oBAAoB,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM,GAAG,CAAC;AAC/E,CAAC"}
|
package/dist/cli/rebuild.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type Embedder } from '../retrieval/embedder.js';
|
|
2
2
|
/**
|
|
3
|
-
* `
|
|
3
|
+
* `pinakes rebuild` — full-rebuild-from-markdown CLI subcommand for Pinakes Phase 2.
|
|
4
4
|
*
|
|
5
5
|
* Walks the wiki directory, calls `IngesterService.ingestFile` for every
|
|
6
6
|
* markdown file, prints a summary. Default behavior: ingest both project and
|
|
@@ -19,13 +19,15 @@ import { type Embedder } from '../retrieval/embedder.js';
|
|
|
19
19
|
* cold; warm chunks via per-chunk SHA skip drop this to ~5ms).
|
|
20
20
|
*/
|
|
21
21
|
export interface RebuildOptions {
|
|
22
|
-
/** Project
|
|
23
|
-
|
|
24
|
-
/** Project
|
|
22
|
+
/** Project root directory (default: cwd). Used to derive the mirrored data dir under ~/.pinakes/projects/. */
|
|
23
|
+
projectRoot?: string;
|
|
24
|
+
/** Project wiki directory (default: `~/.pinakes/projects/<mangled-root>/wiki`) */
|
|
25
|
+
wikiPath?: string;
|
|
26
|
+
/** Project DB path (default: `~/.pinakes/projects/<mangled-root>/pinakes.db`) */
|
|
25
27
|
dbPath?: string;
|
|
26
|
-
/** Personal wiki directory (default: `~/.
|
|
28
|
+
/** Personal wiki directory (default: `~/.pinakes/wiki`) */
|
|
27
29
|
profilePath?: string;
|
|
28
|
-
/** Personal DB path (default:
|
|
30
|
+
/** Personal DB path (default: `~/.pinakes/pinakes.db`) */
|
|
29
31
|
profileDbPath?: string;
|
|
30
32
|
/** Which scopes to rebuild: 'project' | 'personal' | 'both' (default: 'both', falls back to 'project' if profile dir missing) */
|
|
31
33
|
scope?: 'project' | 'personal' | 'both';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rebuild.d.ts","sourceRoot":"","sources":["../../src/cli/rebuild.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"rebuild.d.ts","sourceRoot":"","sources":["../../src/cli/rebuild.ts"],"names":[],"mappings":"AAaA,OAAO,EAAwB,KAAK,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAE/E;;;;;;;;;;;;;;;;;;GAkBG;AAEH,MAAM,WAAW,cAAc;IAC7B,8GAA8G;IAC9G,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kFAAkF;IAClF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iFAAiF;IACjF,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,2DAA2D;IAC3D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0DAA0D;IAC1D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iIAAiI;IACjI,KAAK,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,MAAM,CAAC;IACxC;;;OAGG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,SAAS,GAAG,UAAU,CAAC;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CA2CvF"}
|
package/dist/cli/rebuild.js
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import { existsSync } from 'node:fs';
|
|
2
|
-
import { homedir } from 'node:os';
|
|
3
|
-
import { dirname, isAbsolute, resolve } from 'node:path';
|
|
4
2
|
import { closeDb, openDb } from '../db/client.js';
|
|
5
3
|
import { IngesterService } from '../ingest/ingester.js';
|
|
6
4
|
import { listMarkdownFiles } from '../ingest/manifest.js';
|
|
7
5
|
import { logger } from '../observability/logger.js';
|
|
6
|
+
import { resolveAbs, projectWikiPath as defaultProjectWikiPath, projectDbPath as defaultProjectDbPath, personalWikiPath as defaultPersonalWikiPath, personalDbPath as defaultPersonalDbPath, } from '../paths.js';
|
|
8
7
|
import { TransformersEmbedder } from '../retrieval/embedder.js';
|
|
9
8
|
/**
|
|
10
9
|
* Run a full-rebuild against one or both scopes. Returns a list of summaries
|
|
@@ -14,13 +13,14 @@ import { TransformersEmbedder } from '../retrieval/embedder.js';
|
|
|
14
13
|
*/
|
|
15
14
|
export async function rebuildCommand(options) {
|
|
16
15
|
const summaries = [];
|
|
17
|
-
const
|
|
16
|
+
const projectRoot = resolveAbs(options.projectRoot ?? process.cwd());
|
|
17
|
+
const projectWiki = resolveAbs(options.wikiPath ?? defaultProjectWikiPath(projectRoot));
|
|
18
18
|
if (!existsSync(projectWiki)) {
|
|
19
19
|
throw new Error(`wiki path does not exist: ${projectWiki}`);
|
|
20
20
|
}
|
|
21
|
-
const projectDbPath = resolveAbs(options.dbPath ??
|
|
22
|
-
const profileWiki = resolveAbs(options.profilePath ??
|
|
23
|
-
const profileDbPath = resolveAbs(options.profileDbPath ??
|
|
21
|
+
const projectDbPath = resolveAbs(options.dbPath ?? defaultProjectDbPath(projectRoot));
|
|
22
|
+
const profileWiki = resolveAbs(options.profilePath ?? defaultPersonalWikiPath());
|
|
23
|
+
const profileDbPath = resolveAbs(options.profileDbPath ?? defaultPersonalDbPath());
|
|
24
24
|
const scope = options.scope ?? 'both';
|
|
25
25
|
const includeProject = scope === 'project' || scope === 'both';
|
|
26
26
|
const includePersonal = (scope === 'personal' || scope === 'both') && existsSync(profileWiki);
|
|
@@ -56,12 +56,12 @@ async function rebuildOneScope(args) {
|
|
|
56
56
|
if (scope === 'project') {
|
|
57
57
|
try {
|
|
58
58
|
const orphaned = bundle.writer
|
|
59
|
-
.prepare("SELECT COUNT(*) AS cnt FROM
|
|
59
|
+
.prepare("SELECT COUNT(*) AS cnt FROM pinakes_nodes WHERE scope = 'project' AND source_uri LIKE 'file://%'")
|
|
60
60
|
.get();
|
|
61
61
|
if (orphaned.cnt > 0) {
|
|
62
62
|
logger.info({ count: orphaned.cnt }, 'rebuild: deleting legacy absolute-path rows');
|
|
63
|
-
bundle.writer.exec("DELETE FROM
|
|
64
|
-
bundle.writer.exec("DELETE FROM
|
|
63
|
+
bundle.writer.exec("DELETE FROM pinakes_chunks_vec WHERE rowid IN (SELECT c.rowid FROM pinakes_chunks c JOIN pinakes_nodes n ON c.node_id = n.id WHERE n.scope = 'project' AND n.source_uri LIKE 'file://%')");
|
|
64
|
+
bundle.writer.exec("DELETE FROM pinakes_nodes WHERE scope = 'project' AND source_uri LIKE 'file://%'");
|
|
65
65
|
}
|
|
66
66
|
}
|
|
67
67
|
catch (err) {
|
|
@@ -102,26 +102,4 @@ async function rebuildOneScope(args) {
|
|
|
102
102
|
closeDb(bundle);
|
|
103
103
|
}
|
|
104
104
|
}
|
|
105
|
-
// ----------------------------------------------------------------------------
|
|
106
|
-
// Path defaults
|
|
107
|
-
// ----------------------------------------------------------------------------
|
|
108
|
-
function resolveAbs(p) {
|
|
109
|
-
return isAbsolute(p) ? p : resolve(process.cwd(), p);
|
|
110
|
-
}
|
|
111
|
-
/**
|
|
112
|
-
* Default DB path for a given wiki directory: `<wikiDir>/../.pinakes/pinakes.db`.
|
|
113
|
-
*/
|
|
114
|
-
function defaultDbPathFor(wikiDir) {
|
|
115
|
-
return resolve(dirname(wikiDir), '.pinakes', 'pinakes.db');
|
|
116
|
-
}
|
|
117
|
-
/**
|
|
118
|
-
* Default personal wiki path. Honors `KG_PROFILE_PATH` env var, else
|
|
119
|
-
* `~/.pharos/profile/wiki`.
|
|
120
|
-
*/
|
|
121
|
-
function defaultProfileWikiPath() {
|
|
122
|
-
const env = process.env.KG_PROFILE_PATH;
|
|
123
|
-
if (env)
|
|
124
|
-
return resolve(env, 'wiki');
|
|
125
|
-
return resolve(homedir(), '.pharos/profile/wiki');
|
|
126
|
-
}
|
|
127
105
|
//# sourceMappingURL=rebuild.js.map
|
package/dist/cli/rebuild.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rebuild.js","sourceRoot":"","sources":["../../src/cli/rebuild.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"rebuild.js","sourceRoot":"","sources":["../../src/cli/rebuild.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/serve.d.ts
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
3
3
|
/**
|
|
4
|
-
* `
|
|
4
|
+
* `pinakes serve` — stdio MCP server for Pinakes Phase 2.
|
|
5
5
|
*
|
|
6
6
|
* Replaces Phase 1's `src/spike.ts` with the production wiring:
|
|
7
7
|
* 1. Open project + (optional) personal SQLite DBs (one writer + 2 readers each)
|
|
8
8
|
* 2. Warm the embedder singleton
|
|
9
9
|
* 3. Run startup consistency check against the manifest → re-ingest stale files
|
|
10
10
|
* 4. Start chokidar watchers for both scopes (with 2s debounce, drop-oldest)
|
|
11
|
-
* 5. Build the McpServer + register `
|
|
11
|
+
* 5. Build the McpServer + register `search` and `execute`
|
|
12
12
|
* 6. Connect to StdioServerTransport and listen
|
|
13
13
|
*
|
|
14
14
|
* Graceful shutdown on SIGTERM/SIGINT closes the watchers, drains in-flight
|
|
@@ -21,13 +21,15 @@ import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
|
21
21
|
* from it until the 15-test privacy adversarial suite lands in Phase 5.
|
|
22
22
|
*/
|
|
23
23
|
export interface ServeOptions {
|
|
24
|
-
/** Project
|
|
25
|
-
|
|
26
|
-
/** Project
|
|
24
|
+
/** Project root directory (default: cwd). Used to derive the mirrored data dir under ~/.pinakes/projects/. */
|
|
25
|
+
projectRoot?: string;
|
|
26
|
+
/** Project wiki directory (default: `~/.pinakes/projects/<mangled-root>/wiki`) */
|
|
27
|
+
wikiPath?: string;
|
|
28
|
+
/** Project DB path (default: `~/.pinakes/projects/<mangled-root>/pinakes.db`) */
|
|
27
29
|
dbPath?: string;
|
|
28
|
-
/** Personal wiki directory (default: `~/.
|
|
30
|
+
/** Personal wiki directory (default: `~/.pinakes/wiki`) */
|
|
29
31
|
profilePath?: string;
|
|
30
|
-
/** Personal DB path (default:
|
|
32
|
+
/** Personal DB path (default: `~/.pinakes/pinakes.db`) */
|
|
31
33
|
profileDbPath?: string;
|
|
32
34
|
}
|
|
33
35
|
interface ServerHandle {
|
package/dist/cli/serve.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../src/cli/serve.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../src/cli/serve.ts"],"names":[],"mappings":";AAKA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA2BpE;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,MAAM,WAAW,YAAY;IAC3B,8GAA8G;IAC9G,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kFAAkF;IAClF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iFAAiF;IACjF,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,2DAA2D;IAC3D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0DAA0D;IAC1D,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,UAAU,YAAY;IACpB,MAAM,EAAE,SAAS,CAAC;IAClB,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7C;AAED;;;;GAIG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,CA+K9E;AAED;;;GAGG;AACH,wBAAsB,YAAY,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAiBvE"}
|