@carlonicora/nestjs-neo4jsonapi 1.62.6 → 1.63.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.
Files changed (216) hide show
  1. package/dist/agents/agents.modules.d.ts.map +1 -1
  2. package/dist/agents/agents.modules.js +3 -0
  3. package/dist/agents/agents.modules.js.map +1 -1
  4. package/dist/agents/chatbot/chatbot.module.d.ts +3 -0
  5. package/dist/agents/chatbot/chatbot.module.d.ts.map +1 -0
  6. package/dist/agents/chatbot/chatbot.module.js +65 -0
  7. package/dist/agents/chatbot/chatbot.module.js.map +1 -0
  8. package/dist/agents/chatbot/interfaces/chatbot.response.interface.d.ts +25 -0
  9. package/dist/agents/chatbot/interfaces/chatbot.response.interface.d.ts.map +1 -0
  10. package/dist/agents/chatbot/interfaces/chatbot.response.interface.js +3 -0
  11. package/dist/agents/chatbot/interfaces/chatbot.response.interface.js.map +1 -0
  12. package/dist/agents/chatbot/interfaces/graph.catalog.interface.d.ts +50 -0
  13. package/dist/agents/chatbot/interfaces/graph.catalog.interface.d.ts.map +1 -0
  14. package/dist/agents/chatbot/interfaces/graph.catalog.interface.js +3 -0
  15. package/dist/agents/chatbot/interfaces/graph.catalog.interface.js.map +1 -0
  16. package/dist/agents/chatbot/prompts/chatbot.system.prompt.d.ts +3 -0
  17. package/dist/agents/chatbot/prompts/chatbot.system.prompt.d.ts.map +1 -0
  18. package/dist/agents/chatbot/prompts/chatbot.system.prompt.js +60 -0
  19. package/dist/agents/chatbot/prompts/chatbot.system.prompt.js.map +1 -0
  20. package/dist/agents/chatbot/repositories/user-modules.repository.d.ts +28 -0
  21. package/dist/agents/chatbot/repositories/user-modules.repository.d.ts.map +1 -0
  22. package/dist/agents/chatbot/repositories/user-modules.repository.js +76 -0
  23. package/dist/agents/chatbot/repositories/user-modules.repository.js.map +1 -0
  24. package/dist/agents/chatbot/services/chatbot.index.manager.d.ts +17 -0
  25. package/dist/agents/chatbot/services/chatbot.index.manager.d.ts.map +1 -0
  26. package/dist/agents/chatbot/services/chatbot.index.manager.js +84 -0
  27. package/dist/agents/chatbot/services/chatbot.index.manager.js.map +1 -0
  28. package/dist/agents/chatbot/services/chatbot.search.service.d.ts +46 -0
  29. package/dist/agents/chatbot/services/chatbot.search.service.d.ts.map +1 -0
  30. package/dist/agents/chatbot/services/chatbot.search.service.js +148 -0
  31. package/dist/agents/chatbot/services/chatbot.search.service.js.map +1 -0
  32. package/dist/agents/chatbot/services/chatbot.service.d.ts +36 -0
  33. package/dist/agents/chatbot/services/chatbot.service.d.ts.map +1 -0
  34. package/dist/agents/chatbot/services/chatbot.service.js +220 -0
  35. package/dist/agents/chatbot/services/chatbot.service.js.map +1 -0
  36. package/dist/agents/chatbot/services/descriptor.source.d.ts +18 -0
  37. package/dist/agents/chatbot/services/descriptor.source.d.ts.map +1 -0
  38. package/dist/agents/chatbot/services/descriptor.source.js +41 -0
  39. package/dist/agents/chatbot/services/descriptor.source.js.map +1 -0
  40. package/dist/agents/chatbot/services/field-formatting.d.ts +18 -0
  41. package/dist/agents/chatbot/services/field-formatting.d.ts.map +1 -0
  42. package/dist/agents/chatbot/services/field-formatting.js +43 -0
  43. package/dist/agents/chatbot/services/field-formatting.js.map +1 -0
  44. package/dist/agents/chatbot/services/graph.catalog.service.d.ts +60 -0
  45. package/dist/agents/chatbot/services/graph.catalog.service.d.ts.map +1 -0
  46. package/dist/agents/chatbot/services/graph.catalog.service.js +217 -0
  47. package/dist/agents/chatbot/services/graph.catalog.service.js.map +1 -0
  48. package/dist/agents/chatbot/services/humanize-tool.d.ts +9 -0
  49. package/dist/agents/chatbot/services/humanize-tool.d.ts.map +1 -0
  50. package/dist/agents/chatbot/services/humanize-tool.js +35 -0
  51. package/dist/agents/chatbot/services/humanize-tool.js.map +1 -0
  52. package/dist/agents/chatbot/tools/describe-entity.tool.d.ts +14 -0
  53. package/dist/agents/chatbot/tools/describe-entity.tool.d.ts.map +1 -0
  54. package/dist/agents/chatbot/tools/describe-entity.tool.js +63 -0
  55. package/dist/agents/chatbot/tools/describe-entity.tool.js.map +1 -0
  56. package/dist/agents/chatbot/tools/read-entity.tool.d.ts +16 -0
  57. package/dist/agents/chatbot/tools/read-entity.tool.d.ts.map +1 -0
  58. package/dist/agents/chatbot/tools/read-entity.tool.js +102 -0
  59. package/dist/agents/chatbot/tools/read-entity.tool.js.map +1 -0
  60. package/dist/agents/chatbot/tools/resolve-entity.tool.d.ts +16 -0
  61. package/dist/agents/chatbot/tools/resolve-entity.tool.d.ts.map +1 -0
  62. package/dist/agents/chatbot/tools/resolve-entity.tool.js +48 -0
  63. package/dist/agents/chatbot/tools/resolve-entity.tool.js.map +1 -0
  64. package/dist/agents/chatbot/tools/search-entities.tool.d.ts +20 -0
  65. package/dist/agents/chatbot/tools/search-entities.tool.d.ts.map +1 -0
  66. package/dist/agents/chatbot/tools/search-entities.tool.js +122 -0
  67. package/dist/agents/chatbot/tools/search-entities.tool.js.map +1 -0
  68. package/dist/agents/chatbot/tools/tool.factory.d.ts +29 -0
  69. package/dist/agents/chatbot/tools/tool.factory.d.ts.map +1 -0
  70. package/dist/agents/chatbot/tools/tool.factory.js +72 -0
  71. package/dist/agents/chatbot/tools/tool.factory.js.map +1 -0
  72. package/dist/agents/chatbot/tools/traverse.tool.d.ts +58 -0
  73. package/dist/agents/chatbot/tools/traverse.tool.d.ts.map +1 -0
  74. package/dist/agents/chatbot/tools/traverse.tool.js +212 -0
  75. package/dist/agents/chatbot/tools/traverse.tool.js.map +1 -0
  76. package/dist/agents/index.d.ts +9 -0
  77. package/dist/agents/index.d.ts.map +1 -1
  78. package/dist/agents/index.js +17 -1
  79. package/dist/agents/index.js.map +1 -1
  80. package/dist/common/helpers/define-entity.d.ts.map +1 -1
  81. package/dist/common/helpers/define-entity.js +5 -1
  82. package/dist/common/helpers/define-entity.js.map +1 -1
  83. package/dist/common/interfaces/datamodel.interface.d.ts +10 -0
  84. package/dist/common/interfaces/datamodel.interface.d.ts.map +1 -1
  85. package/dist/common/interfaces/datamodel.interface.js.map +1 -1
  86. package/dist/common/interfaces/entity.descriptor.interface.d.ts +1 -1
  87. package/dist/common/interfaces/entity.descriptor.interface.d.ts.map +1 -1
  88. package/dist/common/interfaces/entity.descriptor.interface.js.map +1 -1
  89. package/dist/common/interfaces/entity.schema.interface.d.ts +48 -0
  90. package/dist/common/interfaces/entity.schema.interface.d.ts.map +1 -1
  91. package/dist/common/registries/entity.service.registry.d.ts +13 -0
  92. package/dist/common/registries/entity.service.registry.d.ts.map +1 -0
  93. package/dist/common/registries/entity.service.registry.js +52 -0
  94. package/dist/common/registries/entity.service.registry.js.map +1 -0
  95. package/dist/common/registries/index.d.ts +1 -0
  96. package/dist/common/registries/index.d.ts.map +1 -1
  97. package/dist/common/registries/index.js +1 -0
  98. package/dist/common/registries/index.js.map +1 -1
  99. package/dist/core/core.module.d.ts.map +1 -1
  100. package/dist/core/core.module.js +6 -2
  101. package/dist/core/core.module.js.map +1 -1
  102. package/dist/core/llm/services/llm.service.d.ts.map +1 -1
  103. package/dist/core/llm/services/llm.service.js +8 -0
  104. package/dist/core/llm/services/llm.service.js.map +1 -1
  105. package/dist/core/neo4j/abstracts/abstract.repository.d.ts +48 -1
  106. package/dist/core/neo4j/abstracts/abstract.repository.d.ts.map +1 -1
  107. package/dist/core/neo4j/abstracts/abstract.repository.js +147 -9
  108. package/dist/core/neo4j/abstracts/abstract.repository.js.map +1 -1
  109. package/dist/core/neo4j/abstracts/abstract.service.d.ts +47 -0
  110. package/dist/core/neo4j/abstracts/abstract.service.d.ts.map +1 -1
  111. package/dist/core/neo4j/abstracts/abstract.service.js +57 -0
  112. package/dist/core/neo4j/abstracts/abstract.service.js.map +1 -1
  113. package/dist/core/neo4j/factories/entity.factory.d.ts.map +1 -1
  114. package/dist/core/neo4j/factories/entity.factory.js +27 -6
  115. package/dist/core/neo4j/factories/entity.factory.js.map +1 -1
  116. package/dist/core/neo4j/helpers/build-filter-clauses.d.ts +11 -0
  117. package/dist/core/neo4j/helpers/build-filter-clauses.d.ts.map +1 -0
  118. package/dist/core/neo4j/helpers/build-filter-clauses.js +69 -0
  119. package/dist/core/neo4j/helpers/build-filter-clauses.js.map +1 -0
  120. package/dist/core/neo4j/helpers/build-order-by.d.ts +6 -0
  121. package/dist/core/neo4j/helpers/build-order-by.d.ts.map +1 -0
  122. package/dist/core/neo4j/helpers/build-order-by.js +20 -0
  123. package/dist/core/neo4j/helpers/build-order-by.js.map +1 -0
  124. package/dist/core/neo4j/index.d.ts +1 -0
  125. package/dist/core/neo4j/index.d.ts.map +1 -1
  126. package/dist/core/neo4j/index.js +2 -0
  127. package/dist/core/neo4j/index.js.map +1 -1
  128. package/dist/core/neo4j/types/filter.criterion.d.ts +20 -0
  129. package/dist/core/neo4j/types/filter.criterion.d.ts.map +1 -0
  130. package/dist/core/neo4j/types/filter.criterion.js +3 -0
  131. package/dist/core/neo4j/types/filter.criterion.js.map +1 -0
  132. package/dist/core/neo4j/types/index.d.ts +2 -0
  133. package/dist/core/neo4j/types/index.d.ts.map +1 -0
  134. package/dist/core/neo4j/types/index.js +3 -0
  135. package/dist/core/neo4j/types/index.js.map +1 -0
  136. package/dist/foundations/assistant/assistant.module.d.ts +5 -0
  137. package/dist/foundations/assistant/assistant.module.d.ts.map +1 -0
  138. package/dist/foundations/assistant/assistant.module.js +32 -0
  139. package/dist/foundations/assistant/assistant.module.js.map +1 -0
  140. package/dist/foundations/assistant/controllers/assistant.controller.d.ts +67 -0
  141. package/dist/foundations/assistant/controllers/assistant.controller.d.ts.map +1 -0
  142. package/dist/foundations/assistant/controllers/assistant.controller.js +226 -0
  143. package/dist/foundations/assistant/controllers/assistant.controller.js.map +1 -0
  144. package/dist/foundations/assistant/dtos/assistant-append.dto.d.ts +11 -0
  145. package/dist/foundations/assistant/dtos/assistant-append.dto.d.ts.map +1 -0
  146. package/dist/foundations/assistant/dtos/assistant-append.dto.js +44 -0
  147. package/dist/foundations/assistant/dtos/assistant-append.dto.js.map +1 -0
  148. package/dist/foundations/assistant/dtos/assistant-patch.dto.d.ts +12 -0
  149. package/dist/foundations/assistant/dtos/assistant-patch.dto.d.ts.map +1 -0
  150. package/dist/foundations/assistant/dtos/assistant-patch.dto.js +52 -0
  151. package/dist/foundations/assistant/dtos/assistant-patch.dto.js.map +1 -0
  152. package/dist/foundations/assistant/dtos/assistant-post.dto.d.ts +12 -0
  153. package/dist/foundations/assistant/dtos/assistant-post.dto.d.ts.map +1 -0
  154. package/dist/foundations/assistant/dtos/assistant-post.dto.js +51 -0
  155. package/dist/foundations/assistant/dtos/assistant-post.dto.js.map +1 -0
  156. package/dist/foundations/assistant/entities/assistant.d.ts +48 -0
  157. package/dist/foundations/assistant/entities/assistant.d.ts.map +1 -0
  158. package/dist/foundations/assistant/entities/assistant.js +44 -0
  159. package/dist/foundations/assistant/entities/assistant.js.map +1 -0
  160. package/dist/foundations/assistant/entities/assistant.meta.d.ts +3 -0
  161. package/dist/foundations/assistant/entities/assistant.meta.d.ts.map +1 -0
  162. package/dist/foundations/assistant/entities/assistant.meta.js +10 -0
  163. package/dist/foundations/assistant/entities/assistant.meta.js.map +1 -0
  164. package/dist/foundations/assistant/index.d.ts +7 -0
  165. package/dist/foundations/assistant/index.d.ts.map +1 -0
  166. package/dist/foundations/assistant/index.js +12 -0
  167. package/dist/foundations/assistant/index.js.map +1 -0
  168. package/dist/foundations/assistant/repositories/assistant.repository.d.ts +50 -0
  169. package/dist/foundations/assistant/repositories/assistant.repository.d.ts.map +1 -0
  170. package/dist/foundations/assistant/repositories/assistant.repository.js +65 -0
  171. package/dist/foundations/assistant/repositories/assistant.repository.js.map +1 -0
  172. package/dist/foundations/assistant/services/assistant.service.d.ts +113 -0
  173. package/dist/foundations/assistant/services/assistant.service.d.ts.map +1 -0
  174. package/dist/foundations/assistant/services/assistant.service.js +395 -0
  175. package/dist/foundations/assistant/services/assistant.service.js.map +1 -0
  176. package/dist/foundations/assistant-message/assistant-message.module.d.ts +6 -0
  177. package/dist/foundations/assistant-message/assistant-message.module.d.ts.map +1 -0
  178. package/dist/foundations/assistant-message/assistant-message.module.js +36 -0
  179. package/dist/foundations/assistant-message/assistant-message.module.js.map +1 -0
  180. package/dist/foundations/assistant-message/controllers/assistant-message.controller.d.ts +16 -0
  181. package/dist/foundations/assistant-message/controllers/assistant-message.controller.d.ts.map +1 -0
  182. package/dist/foundations/assistant-message/controllers/assistant-message.controller.js +84 -0
  183. package/dist/foundations/assistant-message/controllers/assistant-message.controller.js.map +1 -0
  184. package/dist/foundations/assistant-message/dtos/assistant-message.dto.d.ts +11 -0
  185. package/dist/foundations/assistant-message/dtos/assistant-message.dto.d.ts.map +1 -0
  186. package/dist/foundations/assistant-message/dtos/assistant-message.dto.js +45 -0
  187. package/dist/foundations/assistant-message/dtos/assistant-message.dto.js.map +1 -0
  188. package/dist/foundations/assistant-message/entities/assistant-message.d.ts +49 -0
  189. package/dist/foundations/assistant-message/entities/assistant-message.d.ts.map +1 -0
  190. package/dist/foundations/assistant-message/entities/assistant-message.js +52 -0
  191. package/dist/foundations/assistant-message/entities/assistant-message.js.map +1 -0
  192. package/dist/foundations/assistant-message/entities/assistant-message.meta.d.ts +3 -0
  193. package/dist/foundations/assistant-message/entities/assistant-message.meta.d.ts.map +1 -0
  194. package/dist/foundations/assistant-message/entities/assistant-message.meta.js +10 -0
  195. package/dist/foundations/assistant-message/entities/assistant-message.meta.js.map +1 -0
  196. package/dist/foundations/assistant-message/index.d.ts +8 -0
  197. package/dist/foundations/assistant-message/index.d.ts.map +1 -0
  198. package/dist/foundations/assistant-message/index.js +24 -0
  199. package/dist/foundations/assistant-message/index.js.map +1 -0
  200. package/dist/foundations/assistant-message/repositories/assistant-message.repository.d.ts +70 -0
  201. package/dist/foundations/assistant-message/repositories/assistant-message.repository.d.ts.map +1 -0
  202. package/dist/foundations/assistant-message/repositories/assistant-message.repository.js +119 -0
  203. package/dist/foundations/assistant-message/repositories/assistant-message.repository.js.map +1 -0
  204. package/dist/foundations/assistant-message/services/assistant-message.service.d.ts +31 -0
  205. package/dist/foundations/assistant-message/services/assistant-message.service.d.ts.map +1 -0
  206. package/dist/foundations/assistant-message/services/assistant-message.service.js +32 -0
  207. package/dist/foundations/assistant-message/services/assistant-message.service.js.map +1 -0
  208. package/dist/foundations/foundations.modules.d.ts.map +1 -1
  209. package/dist/foundations/foundations.modules.js +2 -0
  210. package/dist/foundations/foundations.modules.js.map +1 -1
  211. package/dist/foundations/index.d.ts +2 -0
  212. package/dist/foundations/index.d.ts.map +1 -1
  213. package/dist/foundations/index.js +2 -0
  214. package/dist/foundations/index.js.map +1 -1
  215. package/dist/foundations/stripe/__tests__/mocks/stripe.mock.d.ts +62 -62
  216. package/package.json +1 -1
@@ -0,0 +1,122 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.SearchEntitiesTool = void 0;
13
+ const common_1 = require("@nestjs/common");
14
+ const tools_1 = require("@langchain/core/tools");
15
+ const zod_1 = require("zod");
16
+ const tool_factory_1 = require("./tool.factory");
17
+ const chatbot_search_service_1 = require("../services/chatbot.search.service");
18
+ const field_formatting_1 = require("../services/field-formatting");
19
+ const traverse_tool_1 = require("./traverse.tool");
20
+ const inputSchema = zod_1.z
21
+ .object({
22
+ type: zod_1.z.string().describe("Entity type name."),
23
+ filters: zod_1.z.any().optional(),
24
+ sort: zod_1.z.any().optional(),
25
+ limit: zod_1.z.number().int().optional(),
26
+ })
27
+ .strict();
28
+ const TYPE_TO_OP_ALLOWED = {
29
+ string: new Set(["eq", "ne", "in", "like", "isNull", "isNotNull"]),
30
+ number: new Set(["eq", "ne", "in", "gt", "gte", "lt", "lte", "isNull", "isNotNull"]),
31
+ boolean: new Set(["eq", "ne", "isNull", "isNotNull"]),
32
+ date: new Set(["eq", "ne", "gt", "gte", "lt", "lte", "isNull", "isNotNull"]),
33
+ datetime: new Set(["eq", "ne", "gt", "gte", "lt", "lte", "isNull", "isNotNull"]),
34
+ };
35
+ let SearchEntitiesTool = class SearchEntitiesTool {
36
+ constructor(factory,
37
+ // Injected for DI compatibility with ChatbotModule; no longer used at runtime
38
+ // now that name resolution lives in resolve_entity.
39
+ _search) {
40
+ this.factory = factory;
41
+ this._search = _search;
42
+ }
43
+ build(ctx, recorder) {
44
+ return new tools_1.DynamicStructuredTool({
45
+ name: "search_entities",
46
+ description: "Find records of a known type by filter and sort. Use this when you already have the type (from resolve_entity or because the user referred to a kind of record without identifying a specific one). To look up a specific record by its label, call resolve_entity first.",
47
+ schema: inputSchema,
48
+ func: async (input) => JSON.stringify(await this.invoke(input, ctx, recorder)),
49
+ });
50
+ }
51
+ async invoke(input, ctx, recorder) {
52
+ const filters = (0, traverse_tool_1.coerceFilters)(input.filters);
53
+ const sort = (0, traverse_tool_1.coerceSort)(input.sort);
54
+ return this.factory.capture({ tool: "search_entities", input: { ...input, filters, sort } }, async () => {
55
+ const described = recorder.some((c) => c.tool === "describe_entity" && c.input.type === input.type);
56
+ if (!described) {
57
+ return {
58
+ error: `You must call describe_entity({ type: "${input.type}" }) before searching ${input.type}. The describe call returns the exact field names, types, and relationships available — needed to construct correct filters and sort arguments.`,
59
+ };
60
+ }
61
+ const entity = this.factory.resolveEntity(input.type, ctx);
62
+ if ("error" in entity)
63
+ return entity;
64
+ const byName = new Map(entity.fields.map((f) => [f.name, f]));
65
+ const validFieldNames = entity.fields.map((f) => f.name).join(", ");
66
+ const relationshipNames = entity.relationships.map((r) => r.name).join(", ");
67
+ for (const f of filters) {
68
+ const def = byName.get(f.field);
69
+ if (!def) {
70
+ return {
71
+ error: `Field "${f.field}" is not available on ${entity.type}. Valid fields for filter/sort on ${entity.type}: [${validFieldNames}]. To reach records connected via a relationship, use the traverse tool — relationships on ${entity.type}: [${relationshipNames || "none"}]. Dotted paths like "account.name" are never valid here.`,
72
+ };
73
+ }
74
+ const allowed = TYPE_TO_OP_ALLOWED[def.type] ?? new Set();
75
+ if (!allowed.has(f.op)) {
76
+ return {
77
+ error: `Operator "${f.op}" is not valid for field "${f.field}" of type ${def.type}. Allowed operators: [${Array.from(allowed).join(", ")}].`,
78
+ };
79
+ }
80
+ }
81
+ const sortableFieldNames = entity.fields
82
+ .filter((f) => f.sortable)
83
+ .map((f) => f.name)
84
+ .join(", ");
85
+ for (const s of sort ?? []) {
86
+ const def = byName.get(s.field);
87
+ if (!def || !def.sortable) {
88
+ return {
89
+ error: `Field "${s.field}" is not available for sort on ${entity.type}. Sortable fields on ${entity.type}: [${sortableFieldNames || "none"}].`,
90
+ };
91
+ }
92
+ }
93
+ const svc = this.factory.resolveService(entity.type);
94
+ if (!svc)
95
+ return { error: `Service not available for "${entity.type}".` };
96
+ const limit = Math.min(Math.max(input.limit ?? 10, 1), 50);
97
+ const records = await svc.findRecords({
98
+ filters,
99
+ orderByFields: sort,
100
+ limit,
101
+ });
102
+ return this.buildOutput(entity, records);
103
+ }, recorder);
104
+ }
105
+ buildOutput(entity, records) {
106
+ const items = records.map((r) => ({
107
+ id: r.id,
108
+ type: entity.type,
109
+ summary: entity.summary ? entity.summary(r) : String(r.name ?? r.id),
110
+ fields: (0, field_formatting_1.buildToolFieldsOutput)(entity.fields, r),
111
+ score: null,
112
+ }));
113
+ return { matchMode: "none", items };
114
+ }
115
+ };
116
+ exports.SearchEntitiesTool = SearchEntitiesTool;
117
+ exports.SearchEntitiesTool = SearchEntitiesTool = __decorate([
118
+ (0, common_1.Injectable)(),
119
+ __metadata("design:paramtypes", [tool_factory_1.ToolFactory,
120
+ chatbot_search_service_1.ChatbotSearchService])
121
+ ], SearchEntitiesTool);
122
+ //# sourceMappingURL=search-entities.tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-entities.tool.js","sourceRoot":"","sources":["../../../../src/agents/chatbot/tools/search-entities.tool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ import { GraphCatalogService } from "../services/graph.catalog.service";
2
+ import { EntityServiceRegistry } from "../../../common/registries/entity.service.registry";
3
+ import { CatalogEntity } from "../interfaces/graph.catalog.interface";
4
+ export interface UserContext {
5
+ companyId: string;
6
+ userId: string;
7
+ userModuleIds: string[];
8
+ }
9
+ export interface ToolCallRecord {
10
+ tool: string;
11
+ input: Record<string, unknown>;
12
+ durationMs: number;
13
+ error?: string;
14
+ }
15
+ export declare class ToolFactory {
16
+ private readonly catalog;
17
+ private readonly registry;
18
+ private readonly logger;
19
+ constructor(catalog: GraphCatalogService, registry: EntityServiceRegistry);
20
+ resolveEntity(type: string, ctx: UserContext): CatalogEntity | {
21
+ error: string;
22
+ };
23
+ resolveService(type: string): import("../../..").AbstractService<any, any>;
24
+ capture<T>(record: {
25
+ tool: string;
26
+ input: Record<string, unknown>;
27
+ }, fn: () => Promise<T>, recorder: ToolCallRecord[]): Promise<T>;
28
+ }
29
+ //# sourceMappingURL=tool.factory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool.factory.d.ts","sourceRoot":"","sources":["../../../../src/agents/chatbot/tools/tool.factory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,oDAAoD,CAAC;AAC3F,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AAEtE,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,qBACa,WAAW;IAIpB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAJ3B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgC;gBAGpC,OAAO,EAAE,mBAAmB,EAC5B,QAAQ,EAAE,qBAAqB;IAGlD,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,GAAG,aAAa,GAAG;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE;IAMhF,cAAc,CAAC,IAAI,EAAE,MAAM;IAI3B,OAAO,CAAC,CAAC,EACP,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,EACxD,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,QAAQ,EAAE,cAAc,EAAE,GACzB,OAAO,CAAC,CAAC,CAAC;CAsCd"}
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var ToolFactory_1;
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.ToolFactory = void 0;
14
+ const common_1 = require("@nestjs/common");
15
+ const graph_catalog_service_1 = require("../services/graph.catalog.service");
16
+ const entity_service_registry_1 = require("../../../common/registries/entity.service.registry");
17
+ let ToolFactory = ToolFactory_1 = class ToolFactory {
18
+ constructor(catalog, registry) {
19
+ this.catalog = catalog;
20
+ this.registry = registry;
21
+ this.logger = new common_1.Logger(ToolFactory_1.name);
22
+ }
23
+ resolveEntity(type, ctx) {
24
+ const detail = this.catalog.getEntityDetail(type, ctx.userModuleIds);
25
+ if (!detail)
26
+ return { error: `Entity type "${type}" is not available.` };
27
+ return detail;
28
+ }
29
+ resolveService(type) {
30
+ return this.registry.get(type);
31
+ }
32
+ capture(record, fn, recorder) {
33
+ const start = Date.now();
34
+ this.logger.log(`tool-call START: ${record.tool} input=${JSON.stringify(record.input)}`);
35
+ return fn().then((result) => {
36
+ const durationMs = Date.now() - start;
37
+ const resultError = result && typeof result === "object" && "error" in result
38
+ ? String(result.error)
39
+ : undefined;
40
+ recorder.push({
41
+ tool: record.tool,
42
+ input: record.input,
43
+ durationMs,
44
+ ...(resultError ? { error: resultError } : {}),
45
+ });
46
+ const hint = result && typeof result === "object" && "items" in result && Array.isArray(result.items)
47
+ ? `items=${result.items.length}`
48
+ : resultError
49
+ ? `error=${resultError}`
50
+ : "ok";
51
+ this.logger.log(`tool-call END: ${record.tool} in ${durationMs}ms ${hint}`);
52
+ return result;
53
+ }, (err) => {
54
+ const durationMs = Date.now() - start;
55
+ recorder.push({
56
+ tool: record.tool,
57
+ input: record.input,
58
+ durationMs,
59
+ error: err.message,
60
+ });
61
+ this.logger.warn(`tool-call FAILED: ${record.tool} in ${durationMs}ms message=${err.message}`);
62
+ throw err;
63
+ });
64
+ }
65
+ };
66
+ exports.ToolFactory = ToolFactory;
67
+ exports.ToolFactory = ToolFactory = ToolFactory_1 = __decorate([
68
+ (0, common_1.Injectable)(),
69
+ __metadata("design:paramtypes", [graph_catalog_service_1.GraphCatalogService,
70
+ entity_service_registry_1.EntityServiceRegistry])
71
+ ], ToolFactory);
72
+ //# sourceMappingURL=tool.factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool.factory.js","sourceRoot":"","sources":["../../../../src/agents/chatbot/tools/tool.factory.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,2CAAoD;AACpD,6EAAwE;AACxE,gGAA2F;AAiBpF,IAAM,WAAW,mBAAjB,MAAM,WAAW;IAGtB,YACmB,OAA4B,EAC5B,QAA+B;QAD/B,YAAO,GAAP,OAAO,CAAqB;QAC5B,aAAQ,GAAR,QAAQ,CAAuB;QAJjC,WAAM,GAAG,IAAI,eAAM,CAAC,aAAW,CAAC,IAAI,CAAC,CAAC;IAKpD,CAAC;IAEJ,aAAa,CAAC,IAAY,EAAE,GAAgB;QAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC;QACrE,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,KAAK,EAAE,gBAAgB,IAAI,qBAAqB,EAAE,CAAC;QACzE,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,cAAc,CAAC,IAAY;QACzB,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAED,OAAO,CACL,MAAwD,EACxD,EAAoB,EACpB,QAA0B;QAE1B,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,oBAAoB,MAAM,CAAC,IAAI,UAAU,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACzF,OAAO,EAAE,EAAE,CAAC,IAAI,CACd,CAAC,MAAM,EAAE,EAAE;YACT,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;YACtC,MAAM,WAAW,GACf,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,IAAK,MAAc;gBAChE,CAAC,CAAC,MAAM,CAAE,MAAc,CAAC,KAAK,CAAC;gBAC/B,CAAC,CAAC,SAAS,CAAC;YAChB,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,UAAU;gBACV,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC/C,CAAC,CAAC;YACH,MAAM,IAAI,GACR,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,IAAK,MAAc,IAAI,KAAK,CAAC,OAAO,CAAE,MAAc,CAAC,KAAK,CAAC;gBACxG,CAAC,CAAC,SAAU,MAAc,CAAC,KAAK,CAAC,MAAM,EAAE;gBACzC,CAAC,CAAC,WAAW;oBACX,CAAC,CAAC,SAAS,WAAW,EAAE;oBACxB,CAAC,CAAC,IAAI,CAAC;YACb,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,kBAAkB,MAAM,CAAC,IAAI,OAAO,UAAU,MAAM,IAAI,EAAE,CAAC,CAAC;YAC5E,OAAO,MAAM,CAAC;QAChB,CAAC,EACD,CAAC,GAAG,EAAE,EAAE;YACN,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;YACtC,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,UAAU;gBACV,KAAK,EAAE,GAAG,CAAC,OAAO;aACnB,CAAC,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,qBAAqB,MAAM,CAAC,IAAI,OAAO,UAAU,cAAc,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YAC/F,MAAM,GAAG,CAAC;QACZ,CAAC,CACF,CAAC;IACJ,CAAC;CACF,CAAA;AA5DY,kCAAW;sBAAX,WAAW;IADvB,IAAA,mBAAU,GAAE;qCAKiB,2CAAmB;QAClB,+CAAqB;GALvC,WAAW,CA4DvB"}
@@ -0,0 +1,58 @@
1
+ import { DynamicStructuredTool } from "@langchain/core/tools";
2
+ import { z } from "zod";
3
+ import { ToolFactory, ToolCallRecord, UserContext } from "./tool.factory";
4
+ declare const FilterOpEnum: z.ZodEnum<{
5
+ in: "in";
6
+ eq: "eq";
7
+ ne: "ne";
8
+ like: "like";
9
+ gt: "gt";
10
+ gte: "gte";
11
+ lt: "lt";
12
+ lte: "lte";
13
+ isNull: "isNull";
14
+ isNotNull: "isNotNull";
15
+ }>;
16
+ declare const inputSchema: z.ZodObject<{
17
+ fromType: z.ZodString;
18
+ fromId: z.ZodString;
19
+ relationship: z.ZodString;
20
+ filters: z.ZodOptional<z.ZodAny>;
21
+ sort: z.ZodOptional<z.ZodAny>;
22
+ limit: z.ZodOptional<z.ZodNumber>;
23
+ }, z.core.$strip>;
24
+ export interface NormalisedSort {
25
+ field: string;
26
+ direction: "asc" | "desc";
27
+ }
28
+ export type NormalisedFilterValue = string | number | boolean | string[] | number[];
29
+ export interface NormalisedFilter {
30
+ field: string;
31
+ op: z.infer<typeof FilterOpEnum>;
32
+ value?: NormalisedFilterValue;
33
+ }
34
+ /**
35
+ * Coerce any LLM-emitted sort shape into an array of {field, direction}.
36
+ * Accepts:
37
+ * [{field:"date", direction:"desc"}] — canonical
38
+ * {field:"date", direction:"desc"} — single object
39
+ * {date:"desc"} — map form
40
+ * [{date:"desc"}, {name:"asc"}] — array of maps
41
+ * "date" — bare field (asc default)
42
+ * "date desc" — bare field with direction
43
+ * ["date", "name desc"] — array of strings
44
+ */
45
+ export declare function coerceSort(raw: unknown): NormalisedSort[];
46
+ /**
47
+ * Coerce any LLM-emitted filters shape into an array of {field, op, value}.
48
+ * Accepts the canonical shape or a single object.
49
+ */
50
+ export declare function coerceFilters(raw: unknown): NormalisedFilter[];
51
+ export declare class TraverseTool {
52
+ private readonly factory;
53
+ constructor(factory: ToolFactory);
54
+ build(ctx: UserContext, recorder: ToolCallRecord[]): DynamicStructuredTool;
55
+ invoke(input: z.infer<typeof inputSchema>, ctx: UserContext, recorder: ToolCallRecord[]): Promise<unknown>;
56
+ }
57
+ export {};
58
+ //# sourceMappingURL=traverse.tool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"traverse.tool.d.ts","sourceRoot":"","sources":["../../../../src/agents/chatbot/tools/traverse.tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG1E,QAAA,MAAM,YAAY;;;;;;;;;;;EAAsF,CAAC;AAMzG,QAAA,MAAM,WAAW;;;;;;;iBAOf,CAAC;AAEH,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,KAAK,GAAG,MAAM,CAAC;CAC3B;AACD,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;AACpF,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;IACjC,KAAK,CAAC,EAAE,qBAAqB,CAAC;CAC/B;AAYD;;;;;;;;;;GAUG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,OAAO,GAAG,cAAc,EAAE,CAwBzD;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,OAAO,GAAG,gBAAgB,EAAE,CAgB9D;AAUD,qBACa,YAAY;IACX,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,WAAW;IAEjD,KAAK,CAAC,GAAG,EAAE,WAAW,EAAE,QAAQ,EAAE,cAAc,EAAE,GAAG,qBAAqB;IASpE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,EAAE,GAAG,EAAE,WAAW,EAAE,QAAQ,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;CA4FjH"}
@@ -0,0 +1,212 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.TraverseTool = void 0;
13
+ exports.coerceSort = coerceSort;
14
+ exports.coerceFilters = coerceFilters;
15
+ const common_1 = require("@nestjs/common");
16
+ const tools_1 = require("@langchain/core/tools");
17
+ const zod_1 = require("zod");
18
+ const tool_factory_1 = require("./tool.factory");
19
+ const field_formatting_1 = require("../services/field-formatting");
20
+ const FilterOpEnum = zod_1.z.enum(["eq", "ne", "in", "like", "gt", "gte", "lt", "lte", "isNull", "isNotNull"]);
21
+ // Schemas accept `any` at the input boundary because small models emit many
22
+ // non-canonical shapes for filters and sort — single-object-instead-of-array,
23
+ // map-style `{field: "asc"}`, nested arrays. We coerce everything to the
24
+ // canonical array of `{field, direction}` / `{field, op, value}` in code.
25
+ const inputSchema = zod_1.z.object({
26
+ fromType: zod_1.z.string(),
27
+ fromId: zod_1.z.string(),
28
+ relationship: zod_1.z.string().describe("Traversal name from the graph map."),
29
+ filters: zod_1.z.any().optional(),
30
+ sort: zod_1.z.any().optional(),
31
+ limit: zod_1.z.number().int().optional(),
32
+ });
33
+ function coerceFilterValue(v) {
34
+ if (v == null)
35
+ return undefined;
36
+ if (typeof v === "string" || typeof v === "number" || typeof v === "boolean")
37
+ return v;
38
+ if (Array.isArray(v)) {
39
+ if (v.every((x) => typeof x === "string"))
40
+ return v;
41
+ if (v.every((x) => typeof x === "number"))
42
+ return v;
43
+ }
44
+ return undefined;
45
+ }
46
+ /**
47
+ * Coerce any LLM-emitted sort shape into an array of {field, direction}.
48
+ * Accepts:
49
+ * [{field:"date", direction:"desc"}] — canonical
50
+ * {field:"date", direction:"desc"} — single object
51
+ * {date:"desc"} — map form
52
+ * [{date:"desc"}, {name:"asc"}] — array of maps
53
+ * "date" — bare field (asc default)
54
+ * "date desc" — bare field with direction
55
+ * ["date", "name desc"] — array of strings
56
+ */
57
+ function coerceSort(raw) {
58
+ if (raw == null)
59
+ return [];
60
+ const items = Array.isArray(raw) ? raw : [raw];
61
+ const out = [];
62
+ for (const item of items) {
63
+ if (typeof item === "string") {
64
+ const [field, dir] = item.trim().split(/\s+/);
65
+ if (field)
66
+ out.push({ field, direction: dir === "desc" ? "desc" : "asc" });
67
+ continue;
68
+ }
69
+ if (item && typeof item === "object") {
70
+ const rec = item;
71
+ if (typeof rec.field === "string") {
72
+ const direction = rec.direction === "desc" ? "desc" : "asc";
73
+ out.push({ field: rec.field, direction });
74
+ continue;
75
+ }
76
+ // Map form: { date: "desc" } — one or more entries.
77
+ for (const [k, v] of Object.entries(rec)) {
78
+ out.push({ field: k, direction: v === "desc" ? "desc" : "asc" });
79
+ }
80
+ }
81
+ }
82
+ return out;
83
+ }
84
+ /**
85
+ * Coerce any LLM-emitted filters shape into an array of {field, op, value}.
86
+ * Accepts the canonical shape or a single object.
87
+ */
88
+ function coerceFilters(raw) {
89
+ if (raw == null)
90
+ return [];
91
+ const items = Array.isArray(raw) ? raw : [raw];
92
+ const out = [];
93
+ for (const item of items) {
94
+ if (item && typeof item === "object" && !Array.isArray(item)) {
95
+ const rec = item;
96
+ if (typeof rec.field === "string" && typeof rec.op === "string") {
97
+ const opResult = FilterOpEnum.safeParse(rec.op);
98
+ if (opResult.success) {
99
+ out.push({ field: rec.field, op: opResult.data, value: coerceFilterValue(rec.value) });
100
+ }
101
+ }
102
+ }
103
+ }
104
+ return out;
105
+ }
106
+ const TYPE_TO_OP_ALLOWED = {
107
+ string: new Set(["eq", "ne", "in", "like", "isNull", "isNotNull"]),
108
+ number: new Set(["eq", "ne", "in", "gt", "gte", "lt", "lte", "isNull", "isNotNull"]),
109
+ boolean: new Set(["eq", "ne", "isNull", "isNotNull"]),
110
+ date: new Set(["eq", "ne", "gt", "gte", "lt", "lte", "isNull", "isNotNull"]),
111
+ datetime: new Set(["eq", "ne", "gt", "gte", "lt", "lte", "isNull", "isNotNull"]),
112
+ };
113
+ let TraverseTool = class TraverseTool {
114
+ constructor(factory) {
115
+ this.factory = factory;
116
+ }
117
+ build(ctx, recorder) {
118
+ return new tools_1.DynamicStructuredTool({
119
+ name: "traverse",
120
+ description: "Walks a relationship from a known record to related records, optionally filtered and sorted.",
121
+ schema: inputSchema,
122
+ func: async (input) => JSON.stringify(await this.invoke(input, ctx, recorder)),
123
+ });
124
+ }
125
+ async invoke(input, ctx, recorder) {
126
+ const filters = coerceFilters(input.filters);
127
+ const sort = coerceSort(input.sort);
128
+ return this.factory.capture({ tool: "traverse", input: { ...input, filters, sort } }, async () => {
129
+ const sourceDescribed = recorder.some((c) => c.tool === "describe_entity" && c.input.type === input.fromType);
130
+ if (!sourceDescribed) {
131
+ return {
132
+ error: `You must call describe_entity({ type: "${input.fromType}" }) before traversing from ${input.fromType}. The describe call returns the exact relationship names available on this type — needed to choose a valid relationship argument.`,
133
+ };
134
+ }
135
+ const source = this.factory.resolveEntity(input.fromType, ctx);
136
+ if ("error" in source)
137
+ return source;
138
+ const rel = source.relationships.find((r) => r.name === input.relationship);
139
+ if (!rel) {
140
+ const relationshipNames = source.relationships.map((r) => r.name).join(", ");
141
+ return {
142
+ error: `Relationship "${input.relationship}" is not available on ${source.type}. Valid relationships on ${source.type}: [${relationshipNames || "none"}].`,
143
+ };
144
+ }
145
+ const target = this.factory.resolveEntity(rel.targetType, ctx);
146
+ if ("error" in target)
147
+ return target;
148
+ const byName = new Map(target.fields.map((f) => [f.name, f]));
149
+ const validFieldNames = target.fields.map((f) => f.name).join(", ");
150
+ const sortableFieldNames = target.fields
151
+ .filter((f) => f.sortable)
152
+ .map((f) => f.name)
153
+ .join(", ");
154
+ for (const f of filters ?? []) {
155
+ const def = byName.get(f.field);
156
+ if (!def) {
157
+ return {
158
+ error: `Field "${f.field}" is not available on ${target.type}. Valid fields on ${target.type}: [${validFieldNames}].`,
159
+ };
160
+ }
161
+ const allowed = TYPE_TO_OP_ALLOWED[def.type] ?? new Set();
162
+ if (!allowed.has(f.op)) {
163
+ return {
164
+ error: `Operator "${f.op}" is not valid for field "${f.field}" of type ${def.type}. Allowed operators: [${Array.from(allowed).join(", ")}].`,
165
+ };
166
+ }
167
+ }
168
+ for (const s of sort ?? []) {
169
+ const def = byName.get(s.field);
170
+ if (!def || !def.sortable) {
171
+ return {
172
+ error: `Field "${s.field}" is not sortable on ${target.type}. Sortable fields on ${target.type}: [${sortableFieldNames || "none"}].`,
173
+ };
174
+ }
175
+ }
176
+ const targetSvc = this.factory.resolveService(target.type);
177
+ if (!targetSvc)
178
+ return { error: `Service not available for "${target.type}".` };
179
+ const limit = Math.min(Math.max(input.limit ?? 10, 1), 50);
180
+ // Walk via the catalog's raw edge spec so the traversal works even
181
+ // when the target's own descriptor does not declare the relationship
182
+ // (e.g. a reverse-only materialisation). Direction is inverted
183
+ // because catalog.cypherDirection is from the source's perspective,
184
+ // but findRelatedRecordsByEdge expects it from the target's (this-node)
185
+ // perspective.
186
+ const targetDirection = rel.cypherDirection === "out" ? "in" : "out";
187
+ const records = await targetSvc.findRelatedRecordsByEdge({
188
+ cypherLabel: rel.cypherLabel,
189
+ cypherDirection: targetDirection,
190
+ relatedLabel: source.labelName,
191
+ relatedId: input.fromId,
192
+ filters,
193
+ orderByFields: sort,
194
+ limit,
195
+ });
196
+ return {
197
+ items: records.map((r) => ({
198
+ id: r.id,
199
+ type: target.type,
200
+ summary: target.summary ? target.summary(r) : String(r.name ?? r.id),
201
+ fields: (0, field_formatting_1.buildToolFieldsOutput)(target.fields, r),
202
+ })),
203
+ };
204
+ }, recorder);
205
+ }
206
+ };
207
+ exports.TraverseTool = TraverseTool;
208
+ exports.TraverseTool = TraverseTool = __decorate([
209
+ (0, common_1.Injectable)(),
210
+ __metadata("design:paramtypes", [tool_factory_1.ToolFactory])
211
+ ], TraverseTool);
212
+ //# sourceMappingURL=traverse.tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"traverse.tool.js","sourceRoot":"","sources":["../../../../src/agents/chatbot/tools/traverse.tool.ts"],"names":[],"mappings":"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"}
@@ -20,4 +20,13 @@ export { ResponderService } from "./responder/services/responder.service";
20
20
  export { ResponderResponseInterface } from "./responder/interfaces/responder.response.interface";
21
21
  export { SummariserModule } from "./summariser/summariser.module";
22
22
  export { SummariserService } from "./summariser/services/summariser.service";
23
+ export { ChatbotModule } from "./chatbot/chatbot.module";
24
+ export { ChatbotService } from "./chatbot/services/chatbot.service";
25
+ export { ChatbotSearchService } from "./chatbot/services/chatbot.search.service";
26
+ export type { MatchMode, RunSearchParams } from "./chatbot/services/chatbot.search.service";
27
+ export { CHATBOT_EXACT_MAX_RESULTS, CHATBOT_FUZZY_MAX_RESULTS, CHATBOT_SEMANTIC_MAX_RESULTS, CHATBOT_SEMANTIC_MIN_SCORE, } from "./chatbot/services/chatbot.search.service";
28
+ export { GraphDescriptorRegistry } from "./chatbot/services/descriptor.source";
29
+ export type { ChatbotResponseInterface, ChatbotReference, ChatbotToolCall, } from "./chatbot/interfaces/chatbot.response.interface";
30
+ export type { ChatbotRunParams } from "./chatbot/services/chatbot.service";
31
+ export { UserModulesRepository } from "./chatbot/repositories/user-modules.repository";
23
32
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/agents/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAGhD,cAAc,WAAW,CAAC;AAG1B,OAAO,EAAE,uBAAuB,EAAE,MAAM,gDAAgD,CAAC;AACzF,OAAO,EAAE,wBAAwB,EAAE,MAAM,0DAA0D,CAAC;AAGpG,OAAO,EAAE,yBAAyB,EAAE,MAAM,oDAAoD,CAAC;AAC/F,OAAO,EAAE,0BAA0B,EAAE,MAAM,8DAA8D,CAAC;AAG1G,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AAC3G,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAClG,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAGnF,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAC9E,OAAO,EAAE,qBAAqB,EAAE,MAAM,kDAAkD,CAAC;AACzF,OAAO,EAAE,mCAAmC,EAAE,MAAM,2DAA2D,CAAC;AAChH,OAAO,EAAE,+BAA+B,EAAE,MAAM,+DAA+D,CAAC;AAGhH,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,gDAAgD,CAAC;AACrF,OAAO,EAAE,sBAAsB,EAAE,MAAM,qDAAqD,CAAC;AAG7F,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAC1E,OAAO,EAAE,0BAA0B,EAAE,MAAM,qDAAqD,CAAC;AAGjG,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/agents/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAGhD,cAAc,WAAW,CAAC;AAG1B,OAAO,EAAE,uBAAuB,EAAE,MAAM,gDAAgD,CAAC;AACzF,OAAO,EAAE,wBAAwB,EAAE,MAAM,0DAA0D,CAAC;AAGpG,OAAO,EAAE,yBAAyB,EAAE,MAAM,oDAAoD,CAAC;AAC/F,OAAO,EAAE,0BAA0B,EAAE,MAAM,8DAA8D,CAAC;AAG1G,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AAC3G,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAClG,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAGnF,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAC9E,OAAO,EAAE,qBAAqB,EAAE,MAAM,kDAAkD,CAAC;AACzF,OAAO,EAAE,mCAAmC,EAAE,MAAM,2DAA2D,CAAC;AAChH,OAAO,EAAE,+BAA+B,EAAE,MAAM,+DAA+D,CAAC;AAGhH,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,gDAAgD,CAAC;AACrF,OAAO,EAAE,sBAAsB,EAAE,MAAM,qDAAqD,CAAC;AAG7F,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAC1E,OAAO,EAAE,0BAA0B,EAAE,MAAM,qDAAqD,CAAC;AAGjG,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAG7E,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,YAAY,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAC;AAC5F,OAAO,EACL,yBAAyB,EACzB,yBAAyB,EACzB,4BAA4B,EAC5B,0BAA0B,GAC3B,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAC/E,YAAY,EACV,wBAAwB,EACxB,gBAAgB,EAChB,eAAe,GAChB,MAAM,iDAAiD,CAAC;AACzD,YAAY,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EAAE,qBAAqB,EAAE,MAAM,gDAAgD,CAAC"}
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.SummariserService = exports.SummariserModule = exports.ResponderService = exports.ResponderModule = exports.GraphCreatorService = exports.GraphCreatorModule = exports.ContextualiserContextFactoryService = exports.ContextualiserService = exports.ContextualiserModule = exports.DriftMigrationService = exports.DriftSearchService = exports.DriftModule = exports.CommunitySummariserService = exports.CommunitySummariserModule = exports.CommunityDetectorService = exports.CommunityDetectorModule = exports.AgentsModule = void 0;
17
+ exports.UserModulesRepository = exports.GraphDescriptorRegistry = exports.CHATBOT_SEMANTIC_MIN_SCORE = exports.CHATBOT_SEMANTIC_MAX_RESULTS = exports.CHATBOT_FUZZY_MAX_RESULTS = exports.CHATBOT_EXACT_MAX_RESULTS = exports.ChatbotSearchService = exports.ChatbotService = exports.ChatbotModule = exports.SummariserService = exports.SummariserModule = exports.ResponderService = exports.ResponderModule = exports.GraphCreatorService = exports.GraphCreatorModule = exports.ContextualiserContextFactoryService = exports.ContextualiserService = exports.ContextualiserModule = exports.DriftMigrationService = exports.DriftSearchService = exports.DriftModule = exports.CommunitySummariserService = exports.CommunitySummariserModule = exports.CommunityDetectorService = exports.CommunityDetectorModule = exports.AgentsModule = void 0;
18
18
  // Centralized AgentsModule - prompts configured via baseConfig.prompts
19
19
  var agents_modules_1 = require("./agents.modules");
20
20
  Object.defineProperty(exports, "AgentsModule", { enumerable: true, get: function () { return agents_modules_1.AgentsModule; } });
@@ -59,4 +59,20 @@ var summariser_module_1 = require("./summariser/summariser.module");
59
59
  Object.defineProperty(exports, "SummariserModule", { enumerable: true, get: function () { return summariser_module_1.SummariserModule; } });
60
60
  var summariser_service_1 = require("./summariser/services/summariser.service");
61
61
  Object.defineProperty(exports, "SummariserService", { enumerable: true, get: function () { return summariser_service_1.SummariserService; } });
62
+ // Chatbot
63
+ var chatbot_module_1 = require("./chatbot/chatbot.module");
64
+ Object.defineProperty(exports, "ChatbotModule", { enumerable: true, get: function () { return chatbot_module_1.ChatbotModule; } });
65
+ var chatbot_service_1 = require("./chatbot/services/chatbot.service");
66
+ Object.defineProperty(exports, "ChatbotService", { enumerable: true, get: function () { return chatbot_service_1.ChatbotService; } });
67
+ var chatbot_search_service_1 = require("./chatbot/services/chatbot.search.service");
68
+ Object.defineProperty(exports, "ChatbotSearchService", { enumerable: true, get: function () { return chatbot_search_service_1.ChatbotSearchService; } });
69
+ var chatbot_search_service_2 = require("./chatbot/services/chatbot.search.service");
70
+ Object.defineProperty(exports, "CHATBOT_EXACT_MAX_RESULTS", { enumerable: true, get: function () { return chatbot_search_service_2.CHATBOT_EXACT_MAX_RESULTS; } });
71
+ Object.defineProperty(exports, "CHATBOT_FUZZY_MAX_RESULTS", { enumerable: true, get: function () { return chatbot_search_service_2.CHATBOT_FUZZY_MAX_RESULTS; } });
72
+ Object.defineProperty(exports, "CHATBOT_SEMANTIC_MAX_RESULTS", { enumerable: true, get: function () { return chatbot_search_service_2.CHATBOT_SEMANTIC_MAX_RESULTS; } });
73
+ Object.defineProperty(exports, "CHATBOT_SEMANTIC_MIN_SCORE", { enumerable: true, get: function () { return chatbot_search_service_2.CHATBOT_SEMANTIC_MIN_SCORE; } });
74
+ var descriptor_source_1 = require("./chatbot/services/descriptor.source");
75
+ Object.defineProperty(exports, "GraphDescriptorRegistry", { enumerable: true, get: function () { return descriptor_source_1.GraphDescriptorRegistry; } });
76
+ var user_modules_repository_1 = require("./chatbot/repositories/user-modules.repository");
77
+ Object.defineProperty(exports, "UserModulesRepository", { enumerable: true, get: function () { return user_modules_repository_1.UserModulesRepository; } });
62
78
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/agents/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,uEAAuE;AACvE,mDAAgD;AAAvC,8GAAA,YAAY,OAAA;AAErB,gCAAgC;AAChC,4CAA0B;AAE1B,6BAA6B;AAC7B,4FAAyF;AAAhF,oIAAA,uBAAuB,OAAA;AAChC,uGAAoG;AAA3F,sIAAA,wBAAwB,OAAA;AAEjC,+BAA+B;AAC/B,kGAA+F;AAAtF,wIAAA,yBAAyB,OAAA;AAClC,6GAA0G;AAAjG,0IAAA,0BAA0B,OAAA;AAEnC,eAAe;AACf,qDAAmD;AAA1C,2GAAA,WAAW,OAAA;AACpB,8EAA2G;AAAlG,0HAAA,kBAAkB,OAAA;AAC3B,oFAAkG;AAAzF,gIAAA,qBAAqB,OAAA;AAG9B,4BAA4B;AAC5B,gFAA8E;AAArE,6HAAA,oBAAoB,OAAA;AAC7B,2FAAyF;AAAhF,+HAAA,qBAAqB,OAAA;AAC9B,4GAAgH;AAAvG,qJAAA,mCAAmC,OAAA;AAG5C,gBAAgB;AAChB,6EAA0E;AAAjE,0HAAA,kBAAkB,OAAA;AAC3B,wFAAqF;AAA5E,4HAAA,mBAAmB,OAAA;AAG5B,YAAY;AACZ,iEAA+D;AAAtD,mHAAA,eAAe,OAAA;AACxB,4EAA0E;AAAjE,qHAAA,gBAAgB,OAAA;AAGzB,aAAa;AACb,oEAAkE;AAAzD,qHAAA,gBAAgB,OAAA;AACzB,+EAA6E;AAApE,uHAAA,iBAAiB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/agents/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,uEAAuE;AACvE,mDAAgD;AAAvC,8GAAA,YAAY,OAAA;AAErB,gCAAgC;AAChC,4CAA0B;AAE1B,6BAA6B;AAC7B,4FAAyF;AAAhF,oIAAA,uBAAuB,OAAA;AAChC,uGAAoG;AAA3F,sIAAA,wBAAwB,OAAA;AAEjC,+BAA+B;AAC/B,kGAA+F;AAAtF,wIAAA,yBAAyB,OAAA;AAClC,6GAA0G;AAAjG,0IAAA,0BAA0B,OAAA;AAEnC,eAAe;AACf,qDAAmD;AAA1C,2GAAA,WAAW,OAAA;AACpB,8EAA2G;AAAlG,0HAAA,kBAAkB,OAAA;AAC3B,oFAAkG;AAAzF,gIAAA,qBAAqB,OAAA;AAG9B,4BAA4B;AAC5B,gFAA8E;AAArE,6HAAA,oBAAoB,OAAA;AAC7B,2FAAyF;AAAhF,+HAAA,qBAAqB,OAAA;AAC9B,4GAAgH;AAAvG,qJAAA,mCAAmC,OAAA;AAG5C,gBAAgB;AAChB,6EAA0E;AAAjE,0HAAA,kBAAkB,OAAA;AAC3B,wFAAqF;AAA5E,4HAAA,mBAAmB,OAAA;AAG5B,YAAY;AACZ,iEAA+D;AAAtD,mHAAA,eAAe,OAAA;AACxB,4EAA0E;AAAjE,qHAAA,gBAAgB,OAAA;AAGzB,aAAa;AACb,oEAAkE;AAAzD,qHAAA,gBAAgB,OAAA;AACzB,+EAA6E;AAApE,uHAAA,iBAAiB,OAAA;AAE1B,UAAU;AACV,2DAAyD;AAAhD,+GAAA,aAAa,OAAA;AACtB,sEAAoE;AAA3D,iHAAA,cAAc,OAAA;AACvB,oFAAiF;AAAxE,8HAAA,oBAAoB,OAAA;AAE7B,oFAKmD;AAJjD,mIAAA,yBAAyB,OAAA;AACzB,mIAAA,yBAAyB,OAAA;AACzB,sIAAA,4BAA4B,OAAA;AAC5B,oIAAA,0BAA0B,OAAA;AAE5B,0EAA+E;AAAtE,4HAAA,uBAAuB,OAAA;AAOhC,0FAAuF;AAA9E,gIAAA,qBAAqB,OAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"define-entity.d.ts","sourceRoot":"","sources":["../../../src/common/helpers/define-entity.ts"],"names":[],"mappings":"AAQA,OAAO,EAGL,gBAAgB,EAChB,iBAAiB,EAEjB,eAAe,EAEhB,MAAM,uCAAuC,CAAC;AAqH/C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,wBAAgB,YAAY,CAAC,CAAC,MACX,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,EAAE,QAAQ,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,KAAG,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,CA2LrH;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,EAC5E,cAAc,EAAE,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,EACtC,SAAS,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GACjF,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,CAYxB"}
1
+ {"version":3,"file":"define-entity.d.ts","sourceRoot":"","sources":["../../../src/common/helpers/define-entity.ts"],"names":[],"mappings":"AAQA,OAAO,EAGL,gBAAgB,EAChB,iBAAiB,EAEjB,eAAe,EAEhB,MAAM,uCAAuC,CAAC;AAqH/C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,wBAAgB,YAAY,CAAC,CAAC,MACX,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,EAAE,QAAQ,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,KAAG,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,CAkMrH;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,EAC5E,cAAc,EAAE,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,EACtC,SAAS,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GACjF,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,CAYxB"}