@pella-labs/pinakes 0.3.14 → 0.4.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 +16 -7
- package/dist/cli/audit-wiki.d.ts +45 -1
- package/dist/cli/audit-wiki.d.ts.map +1 -1
- package/dist/cli/audit-wiki.js +348 -80
- package/dist/cli/audit-wiki.js.map +1 -1
- package/dist/cli/claims.d.ts +49 -0
- package/dist/cli/claims.d.ts.map +1 -0
- package/dist/cli/claims.js +169 -0
- package/dist/cli/claims.js.map +1 -0
- package/dist/cli/contradiction.d.ts +46 -28
- package/dist/cli/contradiction.d.ts.map +1 -1
- package/dist/cli/contradiction.js +182 -115
- package/dist/cli/contradiction.js.map +1 -1
- package/dist/cli/index.js +4 -2
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/progress.d.ts +19 -0
- package/dist/cli/progress.d.ts.map +1 -0
- package/dist/cli/progress.js +44 -0
- package/dist/cli/progress.js.map +1 -0
- package/dist/cli/serve.js +1 -1
- package/dist/db/client.js +1 -1
- package/dist/db/migrations/0003_add_pinakes_claims.sql +13 -0
- package/dist/db/migrations/0004_add_confidence_score.sql +12 -0
- package/dist/db/migrations/meta/_journal.json +14 -0
- package/dist/db/schema.d.ts +161 -1
- package/dist/db/schema.d.ts.map +1 -1
- package/dist/db/schema.js +24 -1
- package/dist/db/schema.js.map +1 -1
- package/dist/gate/confidence.d.ts +82 -0
- package/dist/gate/confidence.d.ts.map +1 -0
- package/dist/gate/confidence.js +190 -0
- package/dist/gate/confidence.js.map +1 -0
- package/dist/ingest/ingester.d.ts.map +1 -1
- package/dist/ingest/ingester.js +4 -3
- package/dist/ingest/ingester.js.map +1 -1
- package/dist/ingest/repo-mirror.d.ts.map +1 -1
- package/dist/ingest/repo-mirror.js +5 -1
- package/dist/ingest/repo-mirror.js.map +1 -1
- package/dist/init/copy.d.ts.map +1 -1
- package/dist/init/copy.js +9 -0
- package/dist/init/copy.js.map +1 -1
- package/dist/init/scanner.js +7 -0
- package/dist/init/scanner.js.map +1 -1
- package/dist/llm/provider.d.ts.map +1 -1
- package/dist/llm/provider.js +19 -5
- package/dist/llm/provider.js.map +1 -1
- package/dist/mcp/tools/search.d.ts.map +1 -1
- package/dist/mcp/tools/search.js +2 -2
- package/dist/mcp/tools/search.js.map +1 -1
- package/dist/retrieval/fts.d.ts +1 -0
- package/dist/retrieval/fts.d.ts.map +1 -1
- package/dist/retrieval/fts.js +18 -2
- package/dist/retrieval/fts.js.map +1 -1
- package/dist/retrieval/hybrid.d.ts +1 -0
- package/dist/retrieval/hybrid.d.ts.map +1 -1
- package/dist/retrieval/hybrid.js +5 -0
- package/dist/retrieval/hybrid.js.map +1 -1
- package/dist/retrieval/vec.d.ts +1 -0
- package/dist/retrieval/vec.d.ts.map +1 -1
- package/dist/retrieval/vec.js +17 -2
- package/dist/retrieval/vec.js.map +1 -1
- package/dist/sandbox/bindings/pinakes.d.ts.map +1 -1
- package/dist/sandbox/bindings/pinakes.js +9 -2
- package/dist/sandbox/bindings/pinakes.js.map +1 -1
- package/package.json +30 -19
package/dist/db/schema.d.ts
CHANGED
|
@@ -299,6 +299,23 @@ export declare const pinakesNodes: import("drizzle-orm/sqlite-core").SQLiteTable
|
|
|
299
299
|
}, {}, {
|
|
300
300
|
length: number | undefined;
|
|
301
301
|
}>;
|
|
302
|
+
confidenceScore: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
303
|
+
name: "confidence_score";
|
|
304
|
+
tableName: "pinakes_nodes";
|
|
305
|
+
dataType: "number";
|
|
306
|
+
columnType: "SQLiteReal";
|
|
307
|
+
data: number;
|
|
308
|
+
driverParam: number;
|
|
309
|
+
notNull: true;
|
|
310
|
+
hasDefault: true;
|
|
311
|
+
isPrimaryKey: false;
|
|
312
|
+
isAutoincrement: false;
|
|
313
|
+
hasRuntimeDefault: false;
|
|
314
|
+
enumValues: undefined;
|
|
315
|
+
baseColumn: never;
|
|
316
|
+
identity: undefined;
|
|
317
|
+
generated: undefined;
|
|
318
|
+
}, {}, {}>;
|
|
302
319
|
createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
303
320
|
name: "created_at";
|
|
304
321
|
tableName: "pinakes_nodes";
|
|
@@ -824,6 +841,147 @@ export declare const pinakesGaps: import("drizzle-orm/sqlite-core").SQLiteTableW
|
|
|
824
841
|
};
|
|
825
842
|
dialect: "sqlite";
|
|
826
843
|
}>;
|
|
844
|
+
/**
|
|
845
|
+
* Persists LLM-extracted claims from wiki files for the Phase 9 audit pipeline.
|
|
846
|
+
* Each row is a single claim about a topic, extracted from a specific source file.
|
|
847
|
+
* Enables incremental auditing: skip re-extraction for unchanged files.
|
|
848
|
+
*/
|
|
849
|
+
export declare const pinakesClaims: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
|
|
850
|
+
name: "pinakes_claims";
|
|
851
|
+
schema: undefined;
|
|
852
|
+
columns: {
|
|
853
|
+
id: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
854
|
+
name: "id";
|
|
855
|
+
tableName: "pinakes_claims";
|
|
856
|
+
dataType: "number";
|
|
857
|
+
columnType: "SQLiteInteger";
|
|
858
|
+
data: number;
|
|
859
|
+
driverParam: number;
|
|
860
|
+
notNull: true;
|
|
861
|
+
hasDefault: true;
|
|
862
|
+
isPrimaryKey: true;
|
|
863
|
+
isAutoincrement: false;
|
|
864
|
+
hasRuntimeDefault: false;
|
|
865
|
+
enumValues: undefined;
|
|
866
|
+
baseColumn: never;
|
|
867
|
+
identity: undefined;
|
|
868
|
+
generated: undefined;
|
|
869
|
+
}, {}, {}>;
|
|
870
|
+
scope: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
871
|
+
name: "scope";
|
|
872
|
+
tableName: "pinakes_claims";
|
|
873
|
+
dataType: "string";
|
|
874
|
+
columnType: "SQLiteText";
|
|
875
|
+
data: string;
|
|
876
|
+
driverParam: string;
|
|
877
|
+
notNull: true;
|
|
878
|
+
hasDefault: false;
|
|
879
|
+
isPrimaryKey: false;
|
|
880
|
+
isAutoincrement: false;
|
|
881
|
+
hasRuntimeDefault: false;
|
|
882
|
+
enumValues: [string, ...string[]];
|
|
883
|
+
baseColumn: never;
|
|
884
|
+
identity: undefined;
|
|
885
|
+
generated: undefined;
|
|
886
|
+
}, {}, {
|
|
887
|
+
length: number | undefined;
|
|
888
|
+
}>;
|
|
889
|
+
sourceUri: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
890
|
+
name: "source_uri";
|
|
891
|
+
tableName: "pinakes_claims";
|
|
892
|
+
dataType: "string";
|
|
893
|
+
columnType: "SQLiteText";
|
|
894
|
+
data: string;
|
|
895
|
+
driverParam: string;
|
|
896
|
+
notNull: true;
|
|
897
|
+
hasDefault: false;
|
|
898
|
+
isPrimaryKey: false;
|
|
899
|
+
isAutoincrement: false;
|
|
900
|
+
hasRuntimeDefault: false;
|
|
901
|
+
enumValues: [string, ...string[]];
|
|
902
|
+
baseColumn: never;
|
|
903
|
+
identity: undefined;
|
|
904
|
+
generated: undefined;
|
|
905
|
+
}, {}, {
|
|
906
|
+
length: number | undefined;
|
|
907
|
+
}>;
|
|
908
|
+
chunkId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
909
|
+
name: "chunk_id";
|
|
910
|
+
tableName: "pinakes_claims";
|
|
911
|
+
dataType: "string";
|
|
912
|
+
columnType: "SQLiteText";
|
|
913
|
+
data: string;
|
|
914
|
+
driverParam: string;
|
|
915
|
+
notNull: false;
|
|
916
|
+
hasDefault: false;
|
|
917
|
+
isPrimaryKey: false;
|
|
918
|
+
isAutoincrement: false;
|
|
919
|
+
hasRuntimeDefault: false;
|
|
920
|
+
enumValues: [string, ...string[]];
|
|
921
|
+
baseColumn: never;
|
|
922
|
+
identity: undefined;
|
|
923
|
+
generated: undefined;
|
|
924
|
+
}, {}, {
|
|
925
|
+
length: number | undefined;
|
|
926
|
+
}>;
|
|
927
|
+
topic: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
928
|
+
name: "topic";
|
|
929
|
+
tableName: "pinakes_claims";
|
|
930
|
+
dataType: "string";
|
|
931
|
+
columnType: "SQLiteText";
|
|
932
|
+
data: string;
|
|
933
|
+
driverParam: string;
|
|
934
|
+
notNull: true;
|
|
935
|
+
hasDefault: false;
|
|
936
|
+
isPrimaryKey: false;
|
|
937
|
+
isAutoincrement: false;
|
|
938
|
+
hasRuntimeDefault: false;
|
|
939
|
+
enumValues: [string, ...string[]];
|
|
940
|
+
baseColumn: never;
|
|
941
|
+
identity: undefined;
|
|
942
|
+
generated: undefined;
|
|
943
|
+
}, {}, {
|
|
944
|
+
length: number | undefined;
|
|
945
|
+
}>;
|
|
946
|
+
claim: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
947
|
+
name: "claim";
|
|
948
|
+
tableName: "pinakes_claims";
|
|
949
|
+
dataType: "string";
|
|
950
|
+
columnType: "SQLiteText";
|
|
951
|
+
data: string;
|
|
952
|
+
driverParam: string;
|
|
953
|
+
notNull: true;
|
|
954
|
+
hasDefault: false;
|
|
955
|
+
isPrimaryKey: false;
|
|
956
|
+
isAutoincrement: false;
|
|
957
|
+
hasRuntimeDefault: false;
|
|
958
|
+
enumValues: [string, ...string[]];
|
|
959
|
+
baseColumn: never;
|
|
960
|
+
identity: undefined;
|
|
961
|
+
generated: undefined;
|
|
962
|
+
}, {}, {
|
|
963
|
+
length: number | undefined;
|
|
964
|
+
}>;
|
|
965
|
+
extractedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
966
|
+
name: "extracted_at";
|
|
967
|
+
tableName: "pinakes_claims";
|
|
968
|
+
dataType: "number";
|
|
969
|
+
columnType: "SQLiteInteger";
|
|
970
|
+
data: number;
|
|
971
|
+
driverParam: number;
|
|
972
|
+
notNull: true;
|
|
973
|
+
hasDefault: false;
|
|
974
|
+
isPrimaryKey: false;
|
|
975
|
+
isAutoincrement: false;
|
|
976
|
+
hasRuntimeDefault: false;
|
|
977
|
+
enumValues: undefined;
|
|
978
|
+
baseColumn: never;
|
|
979
|
+
identity: undefined;
|
|
980
|
+
generated: undefined;
|
|
981
|
+
}, {}, {}>;
|
|
982
|
+
};
|
|
983
|
+
dialect: "sqlite";
|
|
984
|
+
}>;
|
|
827
985
|
/**
|
|
828
986
|
* Audit log of every MCP tool call. Phase 5 wires the dispatcher to write
|
|
829
987
|
* one row per call as part of the privacy invariant verification surface
|
|
@@ -977,11 +1135,13 @@ export type PinakesEdge = typeof pinakesEdges.$inferSelect;
|
|
|
977
1135
|
export type NewPinakesEdge = typeof pinakesEdges.$inferInsert;
|
|
978
1136
|
export type PinakesLogRow = typeof pinakesLog.$inferSelect;
|
|
979
1137
|
export type NewPinakesLogRow = typeof pinakesLog.$inferInsert;
|
|
1138
|
+
export type PinakesClaim = typeof pinakesClaims.$inferSelect;
|
|
1139
|
+
export type NewPinakesClaim = typeof pinakesClaims.$inferInsert;
|
|
980
1140
|
/**
|
|
981
1141
|
* The list of all schema-managed tables, useful for the schema test that
|
|
982
1142
|
* verifies the migration creates every expected table.
|
|
983
1143
|
*/
|
|
984
|
-
export declare const PINAKES_TABLES: readonly ["pinakes_meta", "pinakes_nodes", "pinakes_edges", "pinakes_chunks", "pinakes_log", "pinakes_gaps", "pinakes_audit"];
|
|
1144
|
+
export declare const PINAKES_TABLES: readonly ["pinakes_meta", "pinakes_nodes", "pinakes_edges", "pinakes_chunks", "pinakes_log", "pinakes_gaps", "pinakes_claims", "pinakes_audit"];
|
|
985
1145
|
/**
|
|
986
1146
|
* The two virtual tables created via raw SQL in the migration (drizzle-kit
|
|
987
1147
|
* doesn't emit virtual table DDL). Schema test verifies they exist.
|
package/dist/db/schema.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/db/schema.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAMH;;;;;;;;GAQG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAGtB,CAAC;AAOH;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,YAAY
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/db/schema.ts"],"names":[],"mappings":"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"}
|
package/dist/db/schema.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { sql } from 'drizzle-orm';
|
|
2
|
-
import { sqliteTable, text, integer, index, primaryKey } from 'drizzle-orm/sqlite-core';
|
|
2
|
+
import { sqliteTable, text, integer, real, index, primaryKey } from 'drizzle-orm/sqlite-core';
|
|
3
3
|
/**
|
|
4
4
|
* Pinakes Drizzle schema (presearch.md §2.3, CLAUDE.md §Database Rules).
|
|
5
5
|
*
|
|
@@ -96,6 +96,8 @@ export const pinakesNodes = sqliteTable('pinakes_nodes', {
|
|
|
96
96
|
tokenCount: integer('token_count').notNull(),
|
|
97
97
|
/** Provenance confidence: 'extracted' (default), 'inferred' (AI-generated), 'ambiguous' (flagged) */
|
|
98
98
|
confidence: text('confidence').notNull().default('extracted'),
|
|
99
|
+
/** Numeric confidence score 0.0-1.0, decays over time (Phase 11.1, D50) */
|
|
100
|
+
confidenceScore: real('confidence_score').notNull().default(0.7),
|
|
99
101
|
/** Unix epoch ms of first insert */
|
|
100
102
|
createdAt: integer('created_at').notNull(),
|
|
101
103
|
/** Unix epoch ms of last update */
|
|
@@ -216,6 +218,26 @@ export const pinakesGaps = sqliteTable('pinakes_gaps', {
|
|
|
216
218
|
resolvedAt: integer('resolved_at'),
|
|
217
219
|
});
|
|
218
220
|
// ----------------------------------------------------------------------------
|
|
221
|
+
// pinakes_claims — extracted topic-claims for contradiction detection (D45)
|
|
222
|
+
// ----------------------------------------------------------------------------
|
|
223
|
+
/**
|
|
224
|
+
* Persists LLM-extracted claims from wiki files for the Phase 9 audit pipeline.
|
|
225
|
+
* Each row is a single claim about a topic, extracted from a specific source file.
|
|
226
|
+
* Enables incremental auditing: skip re-extraction for unchanged files.
|
|
227
|
+
*/
|
|
228
|
+
export const pinakesClaims = sqliteTable('pinakes_claims', {
|
|
229
|
+
id: integer('id').primaryKey({ autoIncrement: true }),
|
|
230
|
+
scope: text('scope').notNull(),
|
|
231
|
+
sourceUri: text('source_uri').notNull(),
|
|
232
|
+
chunkId: text('chunk_id').references(() => pinakesChunks.id, { onDelete: 'set null' }),
|
|
233
|
+
topic: text('topic').notNull(),
|
|
234
|
+
claim: text('claim').notNull(),
|
|
235
|
+
extractedAt: integer('extracted_at').notNull(),
|
|
236
|
+
}, (table) => [
|
|
237
|
+
index('idx_claims_topic').on(table.scope, table.topic),
|
|
238
|
+
index('idx_claims_source').on(table.scope, table.sourceUri),
|
|
239
|
+
]);
|
|
240
|
+
// ----------------------------------------------------------------------------
|
|
219
241
|
// pinakes_audit — every tool call (Phase 5 wires writes; Phase 2 creates table)
|
|
220
242
|
// ----------------------------------------------------------------------------
|
|
221
243
|
/**
|
|
@@ -249,6 +271,7 @@ export const PINAKES_TABLES = [
|
|
|
249
271
|
'pinakes_chunks',
|
|
250
272
|
'pinakes_log',
|
|
251
273
|
'pinakes_gaps',
|
|
274
|
+
'pinakes_claims',
|
|
252
275
|
'pinakes_audit',
|
|
253
276
|
];
|
|
254
277
|
/**
|
package/dist/db/schema.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/db/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/db/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Confidence scoring with time decay, corroboration boost, and contradiction penalty.
|
|
3
|
+
*
|
|
4
|
+
* Phase 11.1 — presearch D50, D53, D54.
|
|
5
|
+
*
|
|
6
|
+
* The base `confidence_score` is stored in the DB. The `effectiveConfidence`
|
|
7
|
+
* is computed at query time by applying half-life decay based on how long
|
|
8
|
+
* ago the node was last updated. This avoids background jobs to update
|
|
9
|
+
* scores — the computation is ~0.1ms per result in JS.
|
|
10
|
+
*/
|
|
11
|
+
import type { Database as BetterSqliteDatabase } from 'better-sqlite3';
|
|
12
|
+
/**
|
|
13
|
+
* Half-life in days by node kind. After `halfLife` days without update,
|
|
14
|
+
* the effective confidence drops to 50% of the base score.
|
|
15
|
+
*/
|
|
16
|
+
export declare const HALF_LIFE_DAYS: Record<string, number>;
|
|
17
|
+
/**
|
|
18
|
+
* Get the half-life for a given node kind, respecting env var override.
|
|
19
|
+
*/
|
|
20
|
+
export declare function getHalfLife(kind: string): number;
|
|
21
|
+
/**
|
|
22
|
+
* Compute effective confidence with exponential decay.
|
|
23
|
+
*
|
|
24
|
+
* Formula: `baseScore * 0.5^(daysSinceUpdate / halfLife)`
|
|
25
|
+
*
|
|
26
|
+
* A node with baseScore=0.7, kind='section' (halfLife=90), updated 90 days ago
|
|
27
|
+
* → effectiveConfidence = 0.7 * 0.5 = 0.35
|
|
28
|
+
*/
|
|
29
|
+
export declare function effectiveConfidence(baseScore: number, updatedAtMs: number, kind: string, nowMs?: number): number;
|
|
30
|
+
/**
|
|
31
|
+
* Boost confidence when multiple sources corroborate the same information.
|
|
32
|
+
* +0.1 per additional source, capped at 1.0.
|
|
33
|
+
*/
|
|
34
|
+
export declare function corroborationBoost(currentScore: number, additionalSources: number): number;
|
|
35
|
+
/**
|
|
36
|
+
* Penalize confidence when active contradictions exist.
|
|
37
|
+
* -0.15 per active contradiction, floored at 0.1.
|
|
38
|
+
*/
|
|
39
|
+
export declare function contradictionPenalty(currentScore: number, activeContradictions: number): number;
|
|
40
|
+
/** Small penalty for nodes with superseded (stale) claims */
|
|
41
|
+
export declare const SUPERSESSION_PENALTY = 0.05;
|
|
42
|
+
/** Small boost for nodes with fresh claims that replace old ones */
|
|
43
|
+
export declare const SUPERSESSION_BOOST = 0.05;
|
|
44
|
+
/**
|
|
45
|
+
* Update corroboration-based confidence scores for all nodes in a scope.
|
|
46
|
+
* For each node, count distinct source_uris in pinakes_claims that have
|
|
47
|
+
* claims matching the node's title, then apply corroborationBoost.
|
|
48
|
+
*
|
|
49
|
+
* Called from extractAllClaims() after claim extraction completes.
|
|
50
|
+
*/
|
|
51
|
+
export declare function updateCorroborationScores(writer: BetterSqliteDatabase, scope: string): {
|
|
52
|
+
updated: number;
|
|
53
|
+
};
|
|
54
|
+
export interface ContradictionRef {
|
|
55
|
+
topic: string;
|
|
56
|
+
claimA: {
|
|
57
|
+
source_uri: string;
|
|
58
|
+
};
|
|
59
|
+
claimB: {
|
|
60
|
+
source_uri: string;
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Apply confidence penalties to nodes involved in contradictions.
|
|
65
|
+
* For each contradiction, find nodes in the referenced source files
|
|
66
|
+
* and reduce their confidence_score.
|
|
67
|
+
*/
|
|
68
|
+
export declare function applyContradictionPenalties(writer: BetterSqliteDatabase, scope: string, contradictions: ContradictionRef[]): {
|
|
69
|
+
penalized: number;
|
|
70
|
+
};
|
|
71
|
+
/**
|
|
72
|
+
* Evict lowest-confidence personal nodes until chunk count is under maxChunks.
|
|
73
|
+
* Replaces pure LRU eviction (D50).
|
|
74
|
+
*
|
|
75
|
+
* Computes effective_confidence in JS (can't do exp() in SQLite), sorts
|
|
76
|
+
* ascending, and deletes the lowest-scoring nodes. CASCADE handles chunks/edges.
|
|
77
|
+
*/
|
|
78
|
+
export declare function evictPersonalKg(writer: BetterSqliteDatabase, maxChunks: number, nowMs?: number): {
|
|
79
|
+
nodesEvicted: number;
|
|
80
|
+
chunksEvicted: number;
|
|
81
|
+
};
|
|
82
|
+
//# sourceMappingURL=confidence.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"confidence.d.ts","sourceRoot":"","sources":["../../src/gate/confidence.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,QAAQ,IAAI,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAMvE;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAMjD,CAAC;AAKF;;GAEG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAOhD;AAMD;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,MAAM,EACZ,KAAK,GAAE,MAAmB,GACzB,MAAM,CAIR;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,YAAY,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAAG,MAAM,CAE1F;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,GAAG,MAAM,CAE/F;AAMD,6DAA6D;AAC7D,eAAO,MAAM,oBAAoB,OAAO,CAAC;AACzC,oEAAoE;AACpE,eAAO,MAAM,kBAAkB,OAAO,CAAC;AAMvC;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,oBAAoB,EAC5B,KAAK,EAAE,MAAM,GACZ;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,CA4BrB;AAMD,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/B,MAAM,EAAE;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;CAChC;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,oBAAoB,EAC5B,KAAK,EAAE,MAAM,EACb,cAAc,EAAE,gBAAgB,EAAE,GACjC;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,CAqCvB;AAMD;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,MAAM,EAAE,oBAAoB,EAC5B,SAAS,EAAE,MAAM,EACjB,KAAK,GAAE,MAAmB,GACzB;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAA;CAAE,CAkDjD"}
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Confidence scoring with time decay, corroboration boost, and contradiction penalty.
|
|
3
|
+
*
|
|
4
|
+
* Phase 11.1 — presearch D50, D53, D54.
|
|
5
|
+
*
|
|
6
|
+
* The base `confidence_score` is stored in the DB. The `effectiveConfidence`
|
|
7
|
+
* is computed at query time by applying half-life decay based on how long
|
|
8
|
+
* ago the node was last updated. This avoids background jobs to update
|
|
9
|
+
* scores — the computation is ~0.1ms per result in JS.
|
|
10
|
+
*/
|
|
11
|
+
// ---------------------------------------------------------------------------
|
|
12
|
+
// Half-life configuration per node kind (D53)
|
|
13
|
+
// ---------------------------------------------------------------------------
|
|
14
|
+
/**
|
|
15
|
+
* Half-life in days by node kind. After `halfLife` days without update,
|
|
16
|
+
* the effective confidence drops to 50% of the base score.
|
|
17
|
+
*/
|
|
18
|
+
export const HALF_LIFE_DAYS = {
|
|
19
|
+
section: 90,
|
|
20
|
+
decision: 180,
|
|
21
|
+
log_entry: 30,
|
|
22
|
+
gap: 60,
|
|
23
|
+
entity: 120,
|
|
24
|
+
};
|
|
25
|
+
const DEFAULT_HALF_LIFE = 90;
|
|
26
|
+
const MS_PER_DAY = 86_400_000;
|
|
27
|
+
/**
|
|
28
|
+
* Get the half-life for a given node kind, respecting env var override.
|
|
29
|
+
*/
|
|
30
|
+
export function getHalfLife(kind) {
|
|
31
|
+
const envOverride = process.env.PINAKES_DECAY_HALF_LIFE_DEFAULT;
|
|
32
|
+
if (envOverride) {
|
|
33
|
+
const parsed = parseInt(envOverride, 10);
|
|
34
|
+
if (!Number.isNaN(parsed) && parsed > 0)
|
|
35
|
+
return parsed;
|
|
36
|
+
}
|
|
37
|
+
return HALF_LIFE_DAYS[kind] ?? DEFAULT_HALF_LIFE;
|
|
38
|
+
}
|
|
39
|
+
// ---------------------------------------------------------------------------
|
|
40
|
+
// Core confidence functions
|
|
41
|
+
// ---------------------------------------------------------------------------
|
|
42
|
+
/**
|
|
43
|
+
* Compute effective confidence with exponential decay.
|
|
44
|
+
*
|
|
45
|
+
* Formula: `baseScore * 0.5^(daysSinceUpdate / halfLife)`
|
|
46
|
+
*
|
|
47
|
+
* A node with baseScore=0.7, kind='section' (halfLife=90), updated 90 days ago
|
|
48
|
+
* → effectiveConfidence = 0.7 * 0.5 = 0.35
|
|
49
|
+
*/
|
|
50
|
+
export function effectiveConfidence(baseScore, updatedAtMs, kind, nowMs = Date.now()) {
|
|
51
|
+
const daysSinceUpdate = Math.max(0, (nowMs - updatedAtMs) / MS_PER_DAY);
|
|
52
|
+
const halfLife = getHalfLife(kind);
|
|
53
|
+
return baseScore * Math.pow(0.5, daysSinceUpdate / halfLife);
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Boost confidence when multiple sources corroborate the same information.
|
|
57
|
+
* +0.1 per additional source, capped at 1.0.
|
|
58
|
+
*/
|
|
59
|
+
export function corroborationBoost(currentScore, additionalSources) {
|
|
60
|
+
return Math.min(1.0, currentScore + additionalSources * 0.1);
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Penalize confidence when active contradictions exist.
|
|
64
|
+
* -0.15 per active contradiction, floored at 0.1.
|
|
65
|
+
*/
|
|
66
|
+
export function contradictionPenalty(currentScore, activeContradictions) {
|
|
67
|
+
return Math.max(0.1, currentScore - activeContradictions * 0.15);
|
|
68
|
+
}
|
|
69
|
+
// ---------------------------------------------------------------------------
|
|
70
|
+
// Supersession confidence adjustments (D54)
|
|
71
|
+
// ---------------------------------------------------------------------------
|
|
72
|
+
/** Small penalty for nodes with superseded (stale) claims */
|
|
73
|
+
export const SUPERSESSION_PENALTY = 0.05;
|
|
74
|
+
/** Small boost for nodes with fresh claims that replace old ones */
|
|
75
|
+
export const SUPERSESSION_BOOST = 0.05;
|
|
76
|
+
// ---------------------------------------------------------------------------
|
|
77
|
+
// Background corroboration scoring
|
|
78
|
+
// ---------------------------------------------------------------------------
|
|
79
|
+
/**
|
|
80
|
+
* Update corroboration-based confidence scores for all nodes in a scope.
|
|
81
|
+
* For each node, count distinct source_uris in pinakes_claims that have
|
|
82
|
+
* claims matching the node's title, then apply corroborationBoost.
|
|
83
|
+
*
|
|
84
|
+
* Called from extractAllClaims() after claim extraction completes.
|
|
85
|
+
*/
|
|
86
|
+
export function updateCorroborationScores(writer, scope) {
|
|
87
|
+
// Find nodes that are mentioned in claims from multiple source files
|
|
88
|
+
const rows = writer
|
|
89
|
+
.prepare(`SELECT n.id AS node_id, n.confidence_score AS base_score,
|
|
90
|
+
COUNT(DISTINCT c.source_uri) AS source_count
|
|
91
|
+
FROM pinakes_nodes n
|
|
92
|
+
JOIN pinakes_claims c ON c.scope = ? AND c.topic = n.title COLLATE NOCASE
|
|
93
|
+
WHERE n.scope = ?
|
|
94
|
+
GROUP BY n.id
|
|
95
|
+
HAVING source_count > 1`)
|
|
96
|
+
.all(scope, scope);
|
|
97
|
+
const update = writer.prepare(`UPDATE pinakes_nodes SET confidence_score = ? WHERE id = ?`);
|
|
98
|
+
let updated = 0;
|
|
99
|
+
for (const row of rows) {
|
|
100
|
+
// additionalSources = sources beyond the first
|
|
101
|
+
const boosted = corroborationBoost(row.base_score, row.source_count - 1);
|
|
102
|
+
if (boosted !== row.base_score) {
|
|
103
|
+
update.run(boosted, row.node_id);
|
|
104
|
+
updated++;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
return { updated };
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Apply confidence penalties to nodes involved in contradictions.
|
|
111
|
+
* For each contradiction, find nodes in the referenced source files
|
|
112
|
+
* and reduce their confidence_score.
|
|
113
|
+
*/
|
|
114
|
+
export function applyContradictionPenalties(writer, scope, contradictions) {
|
|
115
|
+
if (contradictions.length === 0)
|
|
116
|
+
return { penalized: 0 };
|
|
117
|
+
// Group contradictions by source_uri
|
|
118
|
+
const contradictionsByUri = new Map();
|
|
119
|
+
for (const c of contradictions) {
|
|
120
|
+
contradictionsByUri.set(c.claimA.source_uri, (contradictionsByUri.get(c.claimA.source_uri) ?? 0) + 1);
|
|
121
|
+
contradictionsByUri.set(c.claimB.source_uri, (contradictionsByUri.get(c.claimB.source_uri) ?? 0) + 1);
|
|
122
|
+
}
|
|
123
|
+
const update = writer.prepare(`UPDATE pinakes_nodes SET confidence_score = ? WHERE id = ?`);
|
|
124
|
+
let penalized = 0;
|
|
125
|
+
for (const [uri, count] of contradictionsByUri) {
|
|
126
|
+
const nodes = writer
|
|
127
|
+
.prepare(`SELECT id, confidence_score FROM pinakes_nodes WHERE scope = ? AND source_uri = ?`)
|
|
128
|
+
.all(scope, uri);
|
|
129
|
+
for (const node of nodes) {
|
|
130
|
+
const newScore = contradictionPenalty(node.confidence_score, count);
|
|
131
|
+
if (newScore !== node.confidence_score) {
|
|
132
|
+
update.run(newScore, node.id);
|
|
133
|
+
penalized++;
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
return { penalized };
|
|
138
|
+
}
|
|
139
|
+
// ---------------------------------------------------------------------------
|
|
140
|
+
// Confidence-weighted personal KG eviction
|
|
141
|
+
// ---------------------------------------------------------------------------
|
|
142
|
+
/**
|
|
143
|
+
* Evict lowest-confidence personal nodes until chunk count is under maxChunks.
|
|
144
|
+
* Replaces pure LRU eviction (D50).
|
|
145
|
+
*
|
|
146
|
+
* Computes effective_confidence in JS (can't do exp() in SQLite), sorts
|
|
147
|
+
* ascending, and deletes the lowest-scoring nodes. CASCADE handles chunks/edges.
|
|
148
|
+
*/
|
|
149
|
+
export function evictPersonalKg(writer, maxChunks, nowMs = Date.now()) {
|
|
150
|
+
// Count current chunks
|
|
151
|
+
const countRow = writer
|
|
152
|
+
.prepare(`SELECT COUNT(*) AS cnt FROM pinakes_chunks ch
|
|
153
|
+
JOIN pinakes_nodes n ON ch.node_id = n.id
|
|
154
|
+
WHERE n.scope = 'personal'`)
|
|
155
|
+
.get();
|
|
156
|
+
const currentCount = countRow?.cnt ?? 0;
|
|
157
|
+
if (currentCount <= maxChunks) {
|
|
158
|
+
return { nodesEvicted: 0, chunksEvicted: 0 };
|
|
159
|
+
}
|
|
160
|
+
// Load all personal nodes with their chunk counts
|
|
161
|
+
const nodes = writer
|
|
162
|
+
.prepare(`SELECT n.id, n.confidence_score, n.updated_at, n.kind,
|
|
163
|
+
COUNT(ch.id) AS chunk_count
|
|
164
|
+
FROM pinakes_nodes n
|
|
165
|
+
JOIN pinakes_chunks ch ON ch.node_id = n.id
|
|
166
|
+
WHERE n.scope = 'personal'
|
|
167
|
+
GROUP BY n.id`)
|
|
168
|
+
.all();
|
|
169
|
+
// Compute effective confidence and sort ascending (lowest first)
|
|
170
|
+
const scored = nodes.map((n) => ({
|
|
171
|
+
...n,
|
|
172
|
+
effective: effectiveConfidence(n.confidence_score, n.updated_at, n.kind, nowMs),
|
|
173
|
+
}));
|
|
174
|
+
scored.sort((a, b) => a.effective - b.effective);
|
|
175
|
+
// Evict until under cap
|
|
176
|
+
let toEvict = currentCount - maxChunks;
|
|
177
|
+
let nodesEvicted = 0;
|
|
178
|
+
let chunksEvicted = 0;
|
|
179
|
+
const deleteNode = writer.prepare(`DELETE FROM pinakes_nodes WHERE id = ?`);
|
|
180
|
+
for (const node of scored) {
|
|
181
|
+
if (toEvict <= 0)
|
|
182
|
+
break;
|
|
183
|
+
deleteNode.run(node.id);
|
|
184
|
+
toEvict -= node.chunk_count;
|
|
185
|
+
chunksEvicted += node.chunk_count;
|
|
186
|
+
nodesEvicted++;
|
|
187
|
+
}
|
|
188
|
+
return { nodesEvicted, chunksEvicted };
|
|
189
|
+
}
|
|
190
|
+
//# sourceMappingURL=confidence.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"confidence.js","sourceRoot":"","sources":["../../src/gate/confidence.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ingester.d.ts","sourceRoot":"","sources":["../../src/ingest/ingester.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAGzD,OAAO,EACL,KAAK,QAAQ,EAGb,OAAO,EACP,eAAe,EAOhB,MAAM,eAAe,CAAC;AAGvB,OAAO,EAAgB,KAAK,KAAK,IAAI,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAEzE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAMH,MAAM,MAAM,KAAK,GAAG,SAAS,GAAG,UAAU,CAAC;AAE3C,MAAM,WAAW,YAAY;IAC3B,+CAA+C;IAC/C,YAAY,EAAE,MAAM,CAAC;IACrB,oEAAoE;IACpE,cAAc,EAAE,MAAM,CAAC;IACvB,qDAAqD;IACrD,cAAc,EAAE,MAAM,CAAC;IACvB,uDAAuD;IACvD,aAAa,EAAE,MAAM,CAAC;IACtB,oFAAoF;IACpF,IAAI,EAAE,OAAO,CAAC;CACf;AAED,MAAM,WAAW,eAAe;IAC9B,oFAAoF;IACpF,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAoBD,gFAAgF;AAChF,wBAAgB,2BAA2B,IAAI,IAAI,CAElD;AAMD,qBAAa,eAAe;IAMxB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,KAAK;IAPxB,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;gBAGf,MAAM,EAAE,QAAQ,EAChB,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,KAAK,EAC7B,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,eAAoB;IAO/B;;;;;;OAMG;IACG,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAsBxD;;;;OAIG;IACH,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAcjC;;;OAGG;IACH,WAAW,IAAI,QAAQ;IAIvB;;;OAGG;IACH,cAAc,IAAI,IAAI;YAQR,cAAc;
|
|
1
|
+
{"version":3,"file":"ingester.d.ts","sourceRoot":"","sources":["../../src/ingest/ingester.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAGzD,OAAO,EACL,KAAK,QAAQ,EAGb,OAAO,EACP,eAAe,EAOhB,MAAM,eAAe,CAAC;AAGvB,OAAO,EAAgB,KAAK,KAAK,IAAI,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAEzE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAMH,MAAM,MAAM,KAAK,GAAG,SAAS,GAAG,UAAU,CAAC;AAE3C,MAAM,WAAW,YAAY;IAC3B,+CAA+C;IAC/C,YAAY,EAAE,MAAM,CAAC;IACrB,oEAAoE;IACpE,cAAc,EAAE,MAAM,CAAC;IACvB,qDAAqD;IACrD,cAAc,EAAE,MAAM,CAAC;IACvB,uDAAuD;IACvD,aAAa,EAAE,MAAM,CAAC;IACtB,oFAAoF;IACpF,IAAI,EAAE,OAAO,CAAC;CACf;AAED,MAAM,WAAW,eAAe;IAC9B,oFAAoF;IACpF,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAoBD,gFAAgF;AAChF,wBAAgB,2BAA2B,IAAI,IAAI,CAElD;AAMD,qBAAa,eAAe;IAMxB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,KAAK;IAPxB,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;gBAGf,MAAM,EAAE,QAAQ,EAChB,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,KAAK,EAC7B,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,eAAoB;IAO/B;;;;;;OAMG;IACG,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAsBxD;;;;OAIG;IACH,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAcjC;;;OAGG;IACH,WAAW,IAAI,QAAQ;IAIvB;;;OAGG;IACH,cAAc,IAAI,IAAI;YAQR,cAAc;IAqO5B;;;;;;OAMG;IACH,OAAO,CAAC,sBAAsB;IA4B9B,OAAO,CAAC,gBAAgB;IAKxB,OAAO,CAAC,SAAS;CAYlB;AAsCD;;;GAGG;AACH,wBAAgB,aAAa,IAAI,QAAQ,CAExC;AASD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAO1D;AAiCD,YAAY,EAAE,SAAS,EAAE,CAAC;AAC1B,OAAO,EAAE,eAAe,EAAE,CAAC;AAC3B,OAAO,EAAE,OAAO,EAAE,CAAC"}
|
package/dist/ingest/ingester.js
CHANGED
|
@@ -196,14 +196,15 @@ export class IngesterService {
|
|
|
196
196
|
}
|
|
197
197
|
w.prepare('DELETE FROM pinakes_nodes WHERE scope = ? AND source_uri = ?').run(this.scope, sourceUri);
|
|
198
198
|
// Insert new nodes
|
|
199
|
-
const insertNode = w.prepare(`INSERT INTO pinakes_nodes (id, scope, source_uri, section_path, kind, title, content, source_sha, token_count, created_at, updated_at, last_accessed_at, confidence)
|
|
200
|
-
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`);
|
|
199
|
+
const insertNode = w.prepare(`INSERT INTO pinakes_nodes (id, scope, source_uri, section_path, kind, title, content, source_sha, token_count, created_at, updated_at, last_accessed_at, confidence, confidence_score)
|
|
200
|
+
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`);
|
|
201
201
|
const insertChunk = w.prepare(`INSERT INTO pinakes_chunks (id, node_id, chunk_index, text, chunk_sha, token_count, created_at)
|
|
202
202
|
VALUES (?, ?, ?, ?, ?, ?, ?)`);
|
|
203
203
|
const insertVec = w.prepare('INSERT INTO pinakes_chunks_vec(rowid, embedding) VALUES (?, ?)');
|
|
204
204
|
for (const node of planned) {
|
|
205
205
|
const sectionTokenCount = countTokens(node.section.content);
|
|
206
|
-
|
|
206
|
+
const confidenceScore = confidence === 'inferred' ? 0.5 : confidence === 'ambiguous' ? 0.3 : 0.7;
|
|
207
|
+
insertNode.run(node.nodeId, this.scope, sourceUri, node.section.section_path, node.section.kind, node.section.title || null, node.section.content, sourceSha, sectionTokenCount, now, now, now, confidence, confidenceScore);
|
|
207
208
|
for (const chunk of node.chunks) {
|
|
208
209
|
// Capture lastInsertRowid directly from the chunk insert. This avoids
|
|
209
210
|
// a follow-up SELECT.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ingester.js","sourceRoot":"","sources":["../../src/ingest/ingester.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ingester.js","sourceRoot":"","sources":["../../src/ingest/ingester.ts"],"names":[],"mappings":"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"}
|