@grackle-ai/knowledge-core 0.67.0 → 0.68.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/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/list-recent.d.ts +26 -0
- package/dist/list-recent.d.ts.map +1 -0
- package/dist/list-recent.js +87 -0
- package/dist/list-recent.js.map +1 -0
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -28,4 +28,6 @@ export type { SearchOptions, SearchResult } from "./search.js";
|
|
|
28
28
|
export { knowledgeSearch } from "./search.js";
|
|
29
29
|
export type { ExpandOptions, ExpansionResult } from "./expand.js";
|
|
30
30
|
export { expandNode, expandResults } from "./expand.js";
|
|
31
|
+
export type { RecentNodesResult } from "./list-recent.js";
|
|
32
|
+
export { listRecentNodes } from "./list-recent.js";
|
|
31
33
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxF,YAAY,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,cAAc,YAAY,CAAC;AAC3B,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,sBAAsB,EACtB,mBAAmB,EACnB,oCAAoC,EACpC,UAAU,EACV,iBAAiB,EACjB,oBAAoB,EACpB,0BAA0B,GAC3B,MAAM,gBAAgB,CAAC;AACxB,YAAY,EAAE,QAAQ,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChF,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,YAAY,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,OAAO,EACP,UAAU,EACV,UAAU,EACV,YAAY,EACZ,YAAY,GACb,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,wBAAwB,EACxB,qBAAqB,EACrB,wBAAwB,EACxB,qBAAqB,EACrB,eAAe,EACf,aAAa,GACd,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACzD,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxF,YAAY,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,cAAc,YAAY,CAAC;AAC3B,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,sBAAsB,EACtB,mBAAmB,EACnB,oCAAoC,EACpC,UAAU,EACV,iBAAiB,EACjB,oBAAoB,EACpB,0BAA0B,GAC3B,MAAM,gBAAgB,CAAC;AACxB,YAAY,EAAE,QAAQ,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChF,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,YAAY,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,OAAO,EACP,UAAU,EACV,UAAU,EACV,YAAY,EACZ,YAAY,GACb,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,wBAAwB,EACxB,qBAAqB,EACrB,wBAAwB,EACxB,qBAAqB,EACrB,eAAe,EACf,aAAa,GACd,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACzD,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACxD,YAAY,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -20,4 +20,5 @@ export { createReferenceNode, createNativeNode, getNode, deleteNode, updateNode,
|
|
|
20
20
|
export { createEdge, removeEdge } from "./edge-store.js";
|
|
21
21
|
export { knowledgeSearch } from "./search.js";
|
|
22
22
|
export { expandNode, expandResults } from "./expand.js";
|
|
23
|
+
export { listRecentNodes } from "./list-recent.js";
|
|
23
24
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExF,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,cAAc,YAAY,CAAC;AAC3B,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,sBAAsB,EACtB,mBAAmB,EACnB,oCAAoC,EACpC,UAAU,EACV,iBAAiB,EACjB,oBAAoB,EACpB,0BAA0B,GAC3B,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAErE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,OAAO,EACP,UAAU,EACV,UAAU,EACV,YAAY,EACZ,YAAY,GACb,MAAM,iBAAiB,CAAC;AASzB,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAEzD,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExF,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,cAAc,YAAY,CAAC;AAC3B,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,sBAAsB,EACtB,mBAAmB,EACnB,oCAAoC,EACpC,UAAU,EACV,iBAAiB,EACjB,oBAAoB,EACpB,0BAA0B,GAC3B,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAErE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,OAAO,EACP,UAAU,EACV,UAAU,EACV,YAAY,EACZ,YAAY,GACb,MAAM,iBAAiB,CAAC;AASzB,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAEzD,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAExD,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* List recently updated knowledge graph nodes.
|
|
3
|
+
*
|
|
4
|
+
* Returns the N most recently updated nodes with their immediate edges,
|
|
5
|
+
* optionally scoped to a workspace. Used by the Knowledge Graph explorer
|
|
6
|
+
* landing page.
|
|
7
|
+
*
|
|
8
|
+
* @module
|
|
9
|
+
*/
|
|
10
|
+
import type { KnowledgeNode, KnowledgeEdge } from "./types.js";
|
|
11
|
+
/** Result of listing recent nodes. */
|
|
12
|
+
export interface RecentNodesResult {
|
|
13
|
+
/** The most recently updated nodes. */
|
|
14
|
+
nodes: KnowledgeNode[];
|
|
15
|
+
/** All edges between the returned nodes. */
|
|
16
|
+
edges: KnowledgeEdge[];
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* List the most recently updated knowledge graph nodes.
|
|
20
|
+
*
|
|
21
|
+
* @param limit - Maximum number of nodes to return (default 20).
|
|
22
|
+
* @param workspaceId - Optional workspace filter.
|
|
23
|
+
* @returns Recent nodes and edges between them.
|
|
24
|
+
*/
|
|
25
|
+
export declare function listRecentNodes(limit?: number, workspaceId?: string): Promise<RecentNodesResult>;
|
|
26
|
+
//# sourceMappingURL=list-recent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-recent.d.ts","sourceRoot":"","sources":["../src/list-recent.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAOH,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAK/D,sCAAsC;AACtC,MAAM,WAAW,iBAAiB;IAChC,uCAAuC;IACvC,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,4CAA4C;IAC5C,KAAK,EAAE,aAAa,EAAE,CAAC;CACxB;AAED;;;;;;GAMG;AACH,wBAAsB,eAAe,CACnC,KAAK,CAAC,EAAE,MAAM,EACd,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,iBAAiB,CAAC,CA2E5B"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* List recently updated knowledge graph nodes.
|
|
3
|
+
*
|
|
4
|
+
* Returns the N most recently updated nodes with their immediate edges,
|
|
5
|
+
* optionally scoped to a workspace. Used by the Knowledge Graph explorer
|
|
6
|
+
* landing page.
|
|
7
|
+
*
|
|
8
|
+
* @module
|
|
9
|
+
*/
|
|
10
|
+
import { getSession } from "./client.js";
|
|
11
|
+
import { logger } from "./logger.js";
|
|
12
|
+
import { NODE_LABEL } from "./constants.js";
|
|
13
|
+
import { recordToNode, recordToEdge } from "./node-store.js";
|
|
14
|
+
/** Default number of recent nodes to return. */
|
|
15
|
+
const DEFAULT_LIMIT = 20;
|
|
16
|
+
/**
|
|
17
|
+
* List the most recently updated knowledge graph nodes.
|
|
18
|
+
*
|
|
19
|
+
* @param limit - Maximum number of nodes to return (default 20).
|
|
20
|
+
* @param workspaceId - Optional workspace filter.
|
|
21
|
+
* @returns Recent nodes and edges between them.
|
|
22
|
+
*/
|
|
23
|
+
export async function listRecentNodes(limit, workspaceId) {
|
|
24
|
+
const resolvedLimit = Math.max(1, Math.floor(limit ?? DEFAULT_LIMIT));
|
|
25
|
+
const filters = [];
|
|
26
|
+
if (workspaceId !== undefined) {
|
|
27
|
+
filters.push("n.workspaceId = $workspaceId");
|
|
28
|
+
}
|
|
29
|
+
const whereClause = filters.length > 0
|
|
30
|
+
? `WHERE ${filters.join(" AND ")}`
|
|
31
|
+
: "";
|
|
32
|
+
// Fetch recent nodes, then find edges between them
|
|
33
|
+
const cypher = `
|
|
34
|
+
MATCH (n:${NODE_LABEL})
|
|
35
|
+
${whereClause}
|
|
36
|
+
WITH n ORDER BY n.updatedAt DESC LIMIT ${resolvedLimit}
|
|
37
|
+
WITH collect(n) AS nodes
|
|
38
|
+
UNWIND nodes AS n
|
|
39
|
+
OPTIONAL MATCH (n)-[r]-(m:${NODE_LABEL})
|
|
40
|
+
WHERE m IN nodes
|
|
41
|
+
RETURN n,
|
|
42
|
+
collect(DISTINCT {
|
|
43
|
+
fromId: CASE WHEN startNode(r) = n THEN n.id ELSE m.id END,
|
|
44
|
+
toId: CASE WHEN endNode(r) = n THEN n.id ELSE m.id END,
|
|
45
|
+
type: type(r),
|
|
46
|
+
metadata: r.metadata,
|
|
47
|
+
createdAt: r.createdAt
|
|
48
|
+
}) AS edges`;
|
|
49
|
+
const params = {
|
|
50
|
+
...(workspaceId !== undefined ? { workspaceId } : {}),
|
|
51
|
+
};
|
|
52
|
+
const session = getSession();
|
|
53
|
+
try {
|
|
54
|
+
const result = await session.run(cypher, params);
|
|
55
|
+
const nodeMap = new Map();
|
|
56
|
+
const edgeSet = new Set();
|
|
57
|
+
const edges = [];
|
|
58
|
+
for (const record of result.records) {
|
|
59
|
+
const neo4jNode = record.get("n");
|
|
60
|
+
const node = recordToNode(neo4jNode.properties);
|
|
61
|
+
nodeMap.set(node.id, node);
|
|
62
|
+
const rawEdges = record.get("edges");
|
|
63
|
+
for (const raw of rawEdges) {
|
|
64
|
+
if (raw.fromId === null || raw.toId === null) {
|
|
65
|
+
continue;
|
|
66
|
+
}
|
|
67
|
+
const edge = recordToEdge(raw);
|
|
68
|
+
const key = `${edge.fromId}:${edge.toId}:${edge.type}`;
|
|
69
|
+
if (!edgeSet.has(key)) {
|
|
70
|
+
edgeSet.add(key);
|
|
71
|
+
edges.push(edge);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
logger.debug({ nodes: nodeMap.size, edges: edges.length, limit: resolvedLimit }, "Listed recent knowledge nodes");
|
|
76
|
+
return { nodes: [...nodeMap.values()], edges };
|
|
77
|
+
}
|
|
78
|
+
finally {
|
|
79
|
+
try {
|
|
80
|
+
await session.close();
|
|
81
|
+
}
|
|
82
|
+
catch (closeError) {
|
|
83
|
+
logger.warn({ err: closeError }, "Failed to close session after listRecentNodes");
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
//# sourceMappingURL=list-recent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-recent.js","sourceRoot":"","sources":["../src/list-recent.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED