@carlonicora/nestjs-neo4jsonapi 2.3.1 → 2.4.1

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 (219) hide show
  1. package/dist/agents/common/usage-attribution.d.ts +218 -0
  2. package/dist/agents/common/usage-attribution.d.ts.map +1 -0
  3. package/dist/agents/common/usage-attribution.js +235 -0
  4. package/dist/agents/common/usage-attribution.js.map +1 -0
  5. package/dist/agents/community.summariser/services/community.summariser.service.d.ts.map +1 -1
  6. package/dist/agents/community.summariser/services/community.summariser.service.js +13 -1
  7. package/dist/agents/community.summariser/services/community.summariser.service.js.map +1 -1
  8. package/dist/agents/contextualiser/contexts/contextualiser.context.d.ts +24 -1
  9. package/dist/agents/contextualiser/contexts/contextualiser.context.d.ts.map +1 -1
  10. package/dist/agents/contextualiser/contexts/contextualiser.context.js +32 -0
  11. package/dist/agents/contextualiser/contexts/contextualiser.context.js.map +1 -1
  12. package/dist/agents/contextualiser/factories/contextualiser.context.factory.d.ts +7 -0
  13. package/dist/agents/contextualiser/factories/contextualiser.context.factory.d.ts.map +1 -1
  14. package/dist/agents/contextualiser/factories/contextualiser.context.factory.js +5 -0
  15. package/dist/agents/contextualiser/factories/contextualiser.context.factory.js.map +1 -1
  16. package/dist/agents/contextualiser/nodes/atomicfacts.node.service.d.ts.map +1 -1
  17. package/dist/agents/contextualiser/nodes/atomicfacts.node.service.js +4 -0
  18. package/dist/agents/contextualiser/nodes/atomicfacts.node.service.js.map +1 -1
  19. package/dist/agents/contextualiser/nodes/chunk.node.service.d.ts.map +1 -1
  20. package/dist/agents/contextualiser/nodes/chunk.node.service.js +4 -0
  21. package/dist/agents/contextualiser/nodes/chunk.node.service.js.map +1 -1
  22. package/dist/agents/contextualiser/nodes/chunk.vector.node.service.d.ts.map +1 -1
  23. package/dist/agents/contextualiser/nodes/chunk.vector.node.service.js +15 -0
  24. package/dist/agents/contextualiser/nodes/chunk.vector.node.service.js.map +1 -1
  25. package/dist/agents/contextualiser/nodes/keyconcepts.node.service.d.ts.map +1 -1
  26. package/dist/agents/contextualiser/nodes/keyconcepts.node.service.js +11 -0
  27. package/dist/agents/contextualiser/nodes/keyconcepts.node.service.js.map +1 -1
  28. package/dist/agents/contextualiser/nodes/question.refiner.node.service.d.ts.map +1 -1
  29. package/dist/agents/contextualiser/nodes/question.refiner.node.service.js +4 -0
  30. package/dist/agents/contextualiser/nodes/question.refiner.node.service.js.map +1 -1
  31. package/dist/agents/contextualiser/nodes/rational.node.service.d.ts.map +1 -1
  32. package/dist/agents/contextualiser/nodes/rational.node.service.js +4 -0
  33. package/dist/agents/contextualiser/nodes/rational.node.service.js.map +1 -1
  34. package/dist/agents/contextualiser/services/contextualiser.service.d.ts +7 -0
  35. package/dist/agents/contextualiser/services/contextualiser.service.d.ts.map +1 -1
  36. package/dist/agents/contextualiser/services/contextualiser.service.js +17 -5
  37. package/dist/agents/contextualiser/services/contextualiser.service.js.map +1 -1
  38. package/dist/agents/drift/contexts/drift.context.d.ts +25 -1
  39. package/dist/agents/drift/contexts/drift.context.d.ts.map +1 -1
  40. package/dist/agents/drift/contexts/drift.context.js +32 -0
  41. package/dist/agents/drift/contexts/drift.context.js.map +1 -1
  42. package/dist/agents/drift/nodes/followup.node.service.d.ts.map +1 -1
  43. package/dist/agents/drift/nodes/followup.node.service.js +4 -0
  44. package/dist/agents/drift/nodes/followup.node.service.js.map +1 -1
  45. package/dist/agents/drift/nodes/hyde.node.service.d.ts.map +1 -1
  46. package/dist/agents/drift/nodes/hyde.node.service.js +9 -1
  47. package/dist/agents/drift/nodes/hyde.node.service.js.map +1 -1
  48. package/dist/agents/drift/nodes/primer.answer.node.service.d.ts.map +1 -1
  49. package/dist/agents/drift/nodes/primer.answer.node.service.js +4 -0
  50. package/dist/agents/drift/nodes/primer.answer.node.service.js.map +1 -1
  51. package/dist/agents/drift/nodes/synthesis.node.service.d.ts.map +1 -1
  52. package/dist/agents/drift/nodes/synthesis.node.service.js +4 -0
  53. package/dist/agents/drift/nodes/synthesis.node.service.js.map +1 -1
  54. package/dist/agents/drift/services/drift.search.service.d.ts +9 -0
  55. package/dist/agents/drift/services/drift.search.service.d.ts.map +1 -1
  56. package/dist/agents/drift/services/drift.search.service.js +22 -5
  57. package/dist/agents/drift/services/drift.search.service.js.map +1 -1
  58. package/dist/agents/graph/services/graph.search.service.d.ts.map +1 -1
  59. package/dist/agents/graph/services/graph.search.service.js +10 -1
  60. package/dist/agents/graph/services/graph.search.service.js.map +1 -1
  61. package/dist/agents/graph/tools/tool.factory.d.ts +6 -0
  62. package/dist/agents/graph/tools/tool.factory.d.ts.map +1 -1
  63. package/dist/agents/graph/tools/tool.factory.js.map +1 -1
  64. package/dist/agents/index.d.ts +1 -0
  65. package/dist/agents/index.d.ts.map +1 -1
  66. package/dist/agents/index.js.map +1 -1
  67. package/dist/agents/operator/contexts/operator.context.d.ts +37 -1
  68. package/dist/agents/operator/contexts/operator.context.d.ts.map +1 -1
  69. package/dist/agents/operator/contexts/operator.context.js +8 -0
  70. package/dist/agents/operator/contexts/operator.context.js.map +1 -1
  71. package/dist/agents/operator/interfaces/operator.tool.interface.d.ts +8 -0
  72. package/dist/agents/operator/interfaces/operator.tool.interface.d.ts.map +1 -1
  73. package/dist/agents/operator/interfaces/operator.tool.interface.js.map +1 -1
  74. package/dist/agents/operator/services/operator.service.d.ts +8 -0
  75. package/dist/agents/operator/services/operator.service.d.ts.map +1 -1
  76. package/dist/agents/operator/services/operator.service.js +29 -0
  77. package/dist/agents/operator/services/operator.service.js.map +1 -1
  78. package/dist/agents/operator/tools/operator.tool.registry.d.ts.map +1 -1
  79. package/dist/agents/operator/tools/operator.tool.registry.js +2 -1
  80. package/dist/agents/operator/tools/operator.tool.registry.js.map +1 -1
  81. package/dist/agents/operator/tools/search-communities.tool.d.ts +8 -2
  82. package/dist/agents/operator/tools/search-communities.tool.d.ts.map +1 -1
  83. package/dist/agents/operator/tools/search-communities.tool.js +16 -4
  84. package/dist/agents/operator/tools/search-communities.tool.js.map +1 -1
  85. package/dist/agents/operator/tools/search-documents.tool.d.ts.map +1 -1
  86. package/dist/agents/operator/tools/search-documents.tool.js +5 -0
  87. package/dist/agents/operator/tools/search-documents.tool.js.map +1 -1
  88. package/dist/agents/responder/contexts/responder.context.d.ts +31 -0
  89. package/dist/agents/responder/contexts/responder.context.d.ts.map +1 -1
  90. package/dist/agents/responder/contexts/responder.context.js +8 -0
  91. package/dist/agents/responder/contexts/responder.context.js.map +1 -1
  92. package/dist/agents/responder/factories/responder.context.factory.d.ts +4 -0
  93. package/dist/agents/responder/factories/responder.context.factory.d.ts.map +1 -1
  94. package/dist/agents/responder/factories/responder.context.factory.js +2 -0
  95. package/dist/agents/responder/factories/responder.context.factory.js.map +1 -1
  96. package/dist/agents/responder/nodes/graph.node.service.d.ts +6 -0
  97. package/dist/agents/responder/nodes/graph.node.service.d.ts.map +1 -1
  98. package/dist/agents/responder/nodes/graph.node.service.js +20 -0
  99. package/dist/agents/responder/nodes/graph.node.service.js.map +1 -1
  100. package/dist/agents/responder/nodes/planner.node.service.d.ts.map +1 -1
  101. package/dist/agents/responder/nodes/planner.node.service.js +9 -0
  102. package/dist/agents/responder/nodes/planner.node.service.js.map +1 -1
  103. package/dist/agents/responder/nodes/responder.answer.node.service.d.ts.map +1 -1
  104. package/dist/agents/responder/nodes/responder.answer.node.service.js +9 -0
  105. package/dist/agents/responder/nodes/responder.answer.node.service.js.map +1 -1
  106. package/dist/agents/responder/services/responder.service.d.ts +16 -0
  107. package/dist/agents/responder/services/responder.service.d.ts.map +1 -1
  108. package/dist/agents/responder/services/responder.service.js +29 -5
  109. package/dist/agents/responder/services/responder.service.js.map +1 -1
  110. package/dist/agents/summariser/services/summariser.service.d.ts +7 -0
  111. package/dist/agents/summariser/services/summariser.service.d.ts.map +1 -1
  112. package/dist/agents/summariser/services/summariser.service.js +15 -3
  113. package/dist/agents/summariser/services/summariser.service.js.map +1 -1
  114. package/dist/common/helpers/index.d.ts +1 -0
  115. package/dist/common/helpers/index.d.ts.map +1 -1
  116. package/dist/common/helpers/index.js +1 -0
  117. package/dist/common/helpers/index.js.map +1 -1
  118. package/dist/common/helpers/map-with-concurrency.d.ts +23 -0
  119. package/dist/common/helpers/map-with-concurrency.d.ts.map +1 -0
  120. package/dist/common/helpers/map-with-concurrency.js +60 -0
  121. package/dist/common/helpers/map-with-concurrency.js.map +1 -0
  122. package/dist/common/tokens.d.ts +2 -1
  123. package/dist/common/tokens.d.ts.map +1 -1
  124. package/dist/common/tokens.js +2 -1
  125. package/dist/common/tokens.js.map +1 -1
  126. package/dist/config/base.config.d.ts +19 -0
  127. package/dist/config/base.config.d.ts.map +1 -1
  128. package/dist/config/base.config.js +30 -3
  129. package/dist/config/base.config.js.map +1 -1
  130. package/dist/config/interfaces/config.ai.interface.d.ts +10 -1
  131. package/dist/config/interfaces/config.ai.interface.d.ts.map +1 -1
  132. package/dist/config/interfaces/config.chunk.queues.interface.d.ts +13 -0
  133. package/dist/config/interfaces/config.chunk.queues.interface.d.ts.map +1 -1
  134. package/dist/config/interfaces/config.credits.interface.d.ts +1 -1
  135. package/dist/core/llm/services/audio.llm.service.d.ts +70 -1
  136. package/dist/core/llm/services/audio.llm.service.d.ts.map +1 -1
  137. package/dist/core/llm/services/audio.llm.service.js +118 -3
  138. package/dist/core/llm/services/audio.llm.service.js.map +1 -1
  139. package/dist/core/llm/services/document-ai.service.d.ts +6 -0
  140. package/dist/core/llm/services/document-ai.service.d.ts.map +1 -1
  141. package/dist/core/llm/services/document-ai.service.js +1 -0
  142. package/dist/core/llm/services/document-ai.service.js.map +1 -1
  143. package/dist/core/llm/services/embedder.service.d.ts +105 -0
  144. package/dist/core/llm/services/embedder.service.d.ts.map +1 -1
  145. package/dist/core/llm/services/embedder.service.js +237 -7
  146. package/dist/core/llm/services/embedder.service.js.map +1 -1
  147. package/dist/core/llm/services/llm.service.d.ts +103 -6
  148. package/dist/core/llm/services/llm.service.d.ts.map +1 -1
  149. package/dist/core/llm/services/llm.service.js +570 -148
  150. package/dist/core/llm/services/llm.service.js.map +1 -1
  151. package/dist/core/llm/services/model.service.d.ts +25 -0
  152. package/dist/core/llm/services/model.service.d.ts.map +1 -1
  153. package/dist/core/llm/services/model.service.js +76 -4
  154. package/dist/core/llm/services/model.service.js.map +1 -1
  155. package/dist/core/llm/utils/repair-truncated-json.d.ts +29 -0
  156. package/dist/core/llm/utils/repair-truncated-json.d.ts.map +1 -0
  157. package/dist/core/llm/utils/repair-truncated-json.js +111 -0
  158. package/dist/core/llm/utils/repair-truncated-json.js.map +1 -0
  159. package/dist/foundations/assistant/services/assistant.service.d.ts.map +1 -1
  160. package/dist/foundations/assistant/services/assistant.service.js +12 -0
  161. package/dist/foundations/assistant/services/assistant.service.js.map +1 -1
  162. package/dist/foundations/atomicfact/services/atomicfact.service.d.ts +7 -0
  163. package/dist/foundations/atomicfact/services/atomicfact.service.d.ts.map +1 -1
  164. package/dist/foundations/atomicfact/services/atomicfact.service.js +6 -0
  165. package/dist/foundations/atomicfact/services/atomicfact.service.js.map +1 -1
  166. package/dist/foundations/auth/services/auth.google.service.d.ts.map +1 -1
  167. package/dist/foundations/auth/services/auth.google.service.js +3 -1
  168. package/dist/foundations/auth/services/auth.google.service.js.map +1 -1
  169. package/dist/foundations/chunk/processors/chunk.processor.d.ts.map +1 -1
  170. package/dist/foundations/chunk/processors/chunk.processor.js +7 -1
  171. package/dist/foundations/chunk/processors/chunk.processor.js.map +1 -1
  172. package/dist/foundations/chunk/repositories/chunk.repository.d.ts +90 -2
  173. package/dist/foundations/chunk/repositories/chunk.repository.d.ts.map +1 -1
  174. package/dist/foundations/chunk/repositories/chunk.repository.js +205 -31
  175. package/dist/foundations/chunk/repositories/chunk.repository.js.map +1 -1
  176. package/dist/foundations/chunk/services/chunk.service.d.ts.map +1 -1
  177. package/dist/foundations/chunk/services/chunk.service.js +50 -1
  178. package/dist/foundations/chunk/services/chunk.service.js.map +1 -1
  179. package/dist/foundations/chunker/chunker.module.d.ts.map +1 -1
  180. package/dist/foundations/chunker/chunker.module.js +4 -1
  181. package/dist/foundations/chunker/chunker.module.js.map +1 -1
  182. package/dist/foundations/chunker/services/chunker.service.d.ts +57 -1
  183. package/dist/foundations/chunker/services/chunker.service.d.ts.map +1 -1
  184. package/dist/foundations/chunker/services/chunker.service.js +207 -16
  185. package/dist/foundations/chunker/services/chunker.service.js.map +1 -1
  186. package/dist/foundations/chunker/services/types/pdf.service.d.ts +42 -1
  187. package/dist/foundations/chunker/services/types/pdf.service.d.ts.map +1 -1
  188. package/dist/foundations/chunker/services/types/pdf.service.js +111 -22
  189. package/dist/foundations/chunker/services/types/pdf.service.js.map +1 -1
  190. package/dist/foundations/chunker/services/types/semanticsplitter.service.d.ts.map +1 -1
  191. package/dist/foundations/chunker/services/types/semanticsplitter.service.js +24 -3
  192. package/dist/foundations/chunker/services/types/semanticsplitter.service.js.map +1 -1
  193. package/dist/foundations/company/repositories/company.repository.d.ts +1 -1
  194. package/dist/foundations/company/repositories/company.repository.d.ts.map +1 -1
  195. package/dist/foundations/company/repositories/company.repository.js +31 -14
  196. package/dist/foundations/company/repositories/company.repository.js.map +1 -1
  197. package/dist/foundations/how-to/processors/how-to.processor.d.ts.map +1 -1
  198. package/dist/foundations/how-to/processors/how-to.processor.js +20 -7
  199. package/dist/foundations/how-to/processors/how-to.processor.js.map +1 -1
  200. package/dist/foundations/keyconcept/repositories/keyconcept.repository.d.ts +25 -1
  201. package/dist/foundations/keyconcept/repositories/keyconcept.repository.d.ts.map +1 -1
  202. package/dist/foundations/keyconcept/repositories/keyconcept.repository.js +38 -2
  203. package/dist/foundations/keyconcept/repositories/keyconcept.repository.js.map +1 -1
  204. package/dist/foundations/keyconcept/services/keyconcept.service.d.ts +5 -0
  205. package/dist/foundations/keyconcept/services/keyconcept.service.d.ts.map +1 -1
  206. package/dist/foundations/keyconcept/services/keyconcept.service.js +4 -0
  207. package/dist/foundations/keyconcept/services/keyconcept.service.js.map +1 -1
  208. package/dist/foundations/tokenusage/entities/tokenusage.js +1 -1
  209. package/dist/foundations/tokenusage/enums/tokenusage.type.d.ts +4 -1
  210. package/dist/foundations/tokenusage/enums/tokenusage.type.d.ts.map +1 -1
  211. package/dist/foundations/tokenusage/enums/tokenusage.type.js +3 -0
  212. package/dist/foundations/tokenusage/enums/tokenusage.type.js.map +1 -1
  213. package/dist/foundations/tokenusage/repositories/tokenusage.admin.repository.js +3 -3
  214. package/dist/foundations/tokenusage/repositories/tokenusage.repository.js +2 -2
  215. package/dist/foundations/tokenusage/services/tokenusage.service.d.ts +6 -1
  216. package/dist/foundations/tokenusage/services/tokenusage.service.d.ts.map +1 -1
  217. package/dist/foundations/tokenusage/services/tokenusage.service.js +7 -2
  218. package/dist/foundations/tokenusage/services/tokenusage.service.js.map +1 -1
  219. package/package.json +1 -1
@@ -3,7 +3,7 @@ import { ClsService } from "nestjs-cls";
3
3
  import { AiStatus } from "../../../common/enums/ai.status";
4
4
  import { AiSourceQueryProvider } from "../../../common/repositories/ai-source-query.provider";
5
5
  import { DataLimits } from "../../../common/types/data.limits";
6
- import { EmbedderService } from "../../../core";
6
+ import { EmbedderAttribution, EmbedderService } from "../../../core";
7
7
  import { ModelService } from "../../../core/llm/services/model.service";
8
8
  import { Neo4jService } from "../../../core/neo4j/services/neo4j.service";
9
9
  import { SecurityService } from "../../../core/security/services/security.service";
@@ -15,6 +15,14 @@ export declare class ChunkRepository implements OnModuleInit {
15
15
  private readonly clsService;
16
16
  private readonly securityService;
17
17
  private readonly aiSourceQuery;
18
+ /**
19
+ * Chunks embedded (and written) per round-trip in `enrichContentAndEmbedBatch`.
20
+ * A whole document's worth of vectors held at once is what pushed the worker past
21
+ * its heap on large uploads: 760 pages ≈ 2.5k chunks × 3072 floats. Slicing bounds
22
+ * the peak to one slice's vectors while keeping batching's latency win (one embedder
23
+ * call per 50 chunks, not per chunk).
24
+ */
25
+ private static readonly EMBED_SLICE;
18
26
  constructor(neo4j: Neo4jService, modelService: ModelService, embedderService: EmbedderService, clsService: ClsService, securityService: SecurityService, aiSourceQuery: AiSourceQueryProvider);
19
27
  onModuleInit(): Promise<void>;
20
28
  recreateVectorIndex(): Promise<void>;
@@ -23,9 +31,17 @@ export declare class ChunkRepository implements OnModuleInit {
23
31
  chunkId: string;
24
32
  embedding: number[];
25
33
  }): Promise<void>;
34
+ /**
35
+ * `attribution` is OPTIONAL and opt-in: this is a QUERY-time embedding, so
36
+ * the repository has no entity of its own to bill it to. The retrieval scope
37
+ * lives with the caller (the contextualiser knows which content the run is
38
+ * bound to), which is why it is passed down rather than derived here. Absent,
39
+ * `EmbedderService.persistUsage` records nothing.
40
+ */
26
41
  findPotentialChunks(params: {
27
42
  question: string;
28
43
  dataLimits: DataLimits;
44
+ attribution?: EmbedderAttribution;
29
45
  }): Promise<Chunk[]>;
30
46
  private findChunksByIdsOrdered;
31
47
  findParentName(params: {
@@ -41,6 +57,24 @@ export declare class ChunkRepository implements OnModuleInit {
41
57
  findChunkById(params: {
42
58
  chunkId: string;
43
59
  }): Promise<Chunk>;
60
+ /**
61
+ * Pipeline hydration of a content node's chunks — deliberately WITHOUT `embedding`.
62
+ *
63
+ * A :Chunk node carries a full embedding vector (3072 floats ≈ 24 KB raw, far more
64
+ * once the driver has boxed it). Returning the whole node made every pipeline guard
65
+ * pull the entire document's vectors into the worker heap even though NO consumer
66
+ * reads `chunk.embedding` — that is what killed the worker on a 760-page matrix.
67
+ *
68
+ * The rows are therefore returned as an explicit `{ labels, properties }` map instead
69
+ * of a Node: `EntityFactory.createOrMerge` treats any column with a `labels` key as a
70
+ * node and maps `data.properties`, so a hand-built map of the same shape hydrates
71
+ * identically (a bare map projection would NOT — it has no `labels`/`properties` and
72
+ * the factory would drop the row).
73
+ *
74
+ * The projected property list is exactly the descriptor's own fields (minus
75
+ * `embedding`) plus the `Entity` base fields, so nothing is lost: the descriptor's
76
+ * auto-generated mapper only ever reads those keys anyway.
77
+ */
44
78
  findChunks(params: {
45
79
  id: string;
46
80
  nodeType: string;
@@ -63,15 +97,69 @@ export declare class ChunkRepository implements OnModuleInit {
63
97
  chunkId: string;
64
98
  dates: string;
65
99
  }): Promise<void>;
100
+ /**
101
+ * `attribution` is OPTIONAL (added second, positionally, so existing callers
102
+ * keep compiling). One usage record is written per embedded slice — see
103
+ * `EmbedderService.persistUsage`. That is honest here because every item in
104
+ * the batch is a chunk of the SAME parent entity: the only caller,
105
+ * `ChunkService.propagateAndEmbedDates`, builds `items` from
106
+ * `findChunks({ id, nodeType })`.
107
+ */
66
108
  enrichContentAndEmbedBatch(items: {
67
109
  chunkId: string;
68
110
  enrichedContent: string;
69
111
  propagatedDates?: string;
70
- }[]): Promise<void>;
112
+ }[], attribution?: EmbedderAttribution): Promise<void>;
71
113
  markChunksCompleted(params: {
72
114
  id: string;
73
115
  nodeType: string;
74
116
  }): Promise<void>;
117
+ /**
118
+ * Count of chunks not yet completed for a content node. Replaces full hydration in
119
+ * pipeline guards: they only ever asked "are any chunks still pending?", and hydrating
120
+ * every chunk (embedding vectors included) to answer it is what made the guard
121
+ * quadratic in a document's chunk count.
122
+ *
123
+ * Returns a scalar, so it cannot go through `readOne`/`readMany` (those map entity
124
+ * columns). Same raw-scalar read as `TokenUsageRepository.findUsageSummary` — the
125
+ * package's precedent for non-entity aggregate reads.
126
+ */
127
+ countChunksInProgress(params: {
128
+ id: string;
129
+ nodeType: string;
130
+ }): Promise<number>;
131
+ /**
132
+ * Single-winner claim on a content node's post-chunking pipeline.
133
+ *
134
+ * `countChunksInProgress` alone CANNOT gate finalisation. It answers "are any chunks
135
+ * still pending?", never "has finalisation already run?", and `ChunkService.generateGraph`
136
+ * enqueues one finalise job per chunk — so a 25-chunk document gets 25 jobs. Once the last
137
+ * chunk lands, every remaining queued job passes a pending-count check and re-runs the whole
138
+ * pipeline (measured 2026-08-12: summariser ran 25× on one document, 100.91 credits; ~70% of
139
+ * that run's spend was duplicated work).
140
+ *
141
+ * The `SET n.finalisationClaimedAt = n.finalisationClaimedAt` is a deliberate no-op write: it
142
+ * takes the node's write lock BEFORE the predicate is evaluated. A concurrent claimer blocks
143
+ * there, and re-reads the committed value afterwards (Neo4j reads are read-committed, not
144
+ * repeatable), so it sees the winner's timestamp and its `WHERE` fails. Without the lock both
145
+ * transactions evaluate the predicate on the pre-write state and both claim.
146
+ *
147
+ * Re-ingestion re-arms the claim via `clearFinalisationClaim` in `ChunkService.createChunks`.
148
+ */
149
+ claimContentFinalisation(params: {
150
+ id: string;
151
+ nodeType: string;
152
+ }): Promise<boolean>;
153
+ /**
154
+ * Re-arms `claimContentFinalisation` for a content node whose chunks are being (re)built.
155
+ * Called from `ChunkService.createChunks`, the single entry point every ingestion and
156
+ * rebuild path goes through — without it a re-ingested document would keep the stale claim
157
+ * and skip finalisation silently.
158
+ */
159
+ clearFinalisationClaim(params: {
160
+ id: string;
161
+ nodeType: string;
162
+ }): Promise<void>;
75
163
  getChunksInProgress(params: {
76
164
  id: string;
77
165
  nodeType: string;
@@ -1 +1 @@
1
- {"version":3,"file":"chunk.repository.d.ts","sourceRoot":"","sources":["../../../../src/foundations/chunk/repositories/chunk.repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chunk.repository.d.ts","sourceRoot":"","sources":["../../../../src/foundations/chunk/repositories/chunk.repository.ts"],"names":[],"mappings":"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"}
@@ -11,11 +11,14 @@ var __metadata = (this && this.__metadata) || function (k, v) {
11
11
  var __param = (this && this.__param) || function (paramIndex, decorator) {
12
12
  return function (target, key) { decorator(target, key, paramIndex); }
13
13
  };
14
+ var ChunkRepository_1;
14
15
  Object.defineProperty(exports, "__esModule", { value: true });
15
16
  exports.ChunkRepository = void 0;
16
17
  const common_1 = require("@nestjs/common");
17
18
  const nestjs_cls_1 = require("nestjs-cls");
19
+ const usage_attribution_1 = require("../../../agents/common/usage-attribution");
18
20
  const ai_status_1 = require("../../../common/enums/ai.status");
21
+ const unwrap_neo4j_integer_1 = require("../../../common/helpers/unwrap-neo4j-integer");
19
22
  const ai_source_query_provider_1 = require("../../../common/repositories/ai-source-query.provider");
20
23
  const core_1 = require("../../../core");
21
24
  const model_service_1 = require("../../../core/llm/services/model.service");
@@ -24,7 +27,7 @@ const security_service_1 = require("../../../core/security/services/security.ser
24
27
  const chunk_entity_1 = require("../../chunk/entities/chunk.entity");
25
28
  const chunk_meta_1 = require("../entities/chunk.meta");
26
29
  const reciprocal_rank_fusion_1 = require("../services/reciprocal-rank-fusion");
27
- let ChunkRepository = class ChunkRepository {
30
+ let ChunkRepository = ChunkRepository_1 = class ChunkRepository {
28
31
  constructor(neo4j, modelService, embedderService, clsService, securityService, aiSourceQuery) {
29
32
  this.neo4j = neo4j;
30
33
  this.modelService = modelService;
@@ -90,8 +93,18 @@ let ChunkRepository = class ChunkRepository {
90
93
  },
91
94
  });
92
95
  }
96
+ /**
97
+ * `attribution` is OPTIONAL and opt-in: this is a QUERY-time embedding, so
98
+ * the repository has no entity of its own to bill it to. The retrieval scope
99
+ * lives with the caller (the contextualiser knows which content the run is
100
+ * bound to), which is why it is passed down rather than derived here. Absent,
101
+ * `EmbedderService.persistUsage` records nothing.
102
+ */
93
103
  async findPotentialChunks(params) {
94
- const queryEmbedding = await this.embedderService.vectoriseText({ text: params.question });
104
+ const queryEmbedding = await this.embedderService.vectoriseText({
105
+ text: params.question,
106
+ attribution: params.attribution,
107
+ });
95
108
  // Lucene special-character escape so user questions can't break the fulltext query.
96
109
  const term = params.question.replace(/([+\-!(){}\[\]^"~*?:\\\/]|&&|\|\|)/g, "\\$1");
97
110
  // The access-scoped id-set both retrieval branches are filtered to.
@@ -200,6 +213,24 @@ let ChunkRepository = class ChunkRepository {
200
213
  `;
201
214
  return this.neo4j.readOne(query);
202
215
  }
216
+ /**
217
+ * Pipeline hydration of a content node's chunks — deliberately WITHOUT `embedding`.
218
+ *
219
+ * A :Chunk node carries a full embedding vector (3072 floats ≈ 24 KB raw, far more
220
+ * once the driver has boxed it). Returning the whole node made every pipeline guard
221
+ * pull the entire document's vectors into the worker heap even though NO consumer
222
+ * reads `chunk.embedding` — that is what killed the worker on a 760-page matrix.
223
+ *
224
+ * The rows are therefore returned as an explicit `{ labels, properties }` map instead
225
+ * of a Node: `EntityFactory.createOrMerge` treats any column with a `labels` key as a
226
+ * node and maps `data.properties`, so a hand-built map of the same shape hydrates
227
+ * identically (a bare map projection would NOT — it has no `labels`/`properties` and
228
+ * the factory would drop the row).
229
+ *
230
+ * The projected property list is exactly the descriptor's own fields (minus
231
+ * `embedding`) plus the `Entity` base fields, so nothing is lost: the descriptor's
232
+ * auto-generated mapper only ever reads those keys anyway.
233
+ */
203
234
  async findChunks(params) {
204
235
  const query = this.neo4j.initQuery({ serialiser: chunk_entity_1.ChunkDescriptor.model });
205
236
  query.queryParams = {
@@ -207,15 +238,40 @@ let ChunkRepository = class ChunkRepository {
207
238
  id: params.id,
208
239
  };
209
240
  query.query += `
210
- MATCH (chunk_type:${params.nodeType} {id: $id})-[:HAS_CHUNK]->(chunk:Chunk)
211
- RETURN chunk, chunk_type
212
- ORDER BY chunk.position
241
+ MATCH (:${params.nodeType} {id: $id})-[:HAS_CHUNK]->(chunkNode:Chunk)
242
+ WITH chunkNode
243
+ ORDER BY chunkNode.position
244
+ RETURN {
245
+ labels: labels(chunkNode),
246
+ properties: chunkNode {
247
+ .id,
248
+ .content,
249
+ .heading,
250
+ .position,
251
+ .aiStatus,
252
+ .nodeId,
253
+ .nodeType,
254
+ .imagePath,
255
+ .dates,
256
+ .propagatedDates,
257
+ .createdAt,
258
+ .updatedAt
259
+ }
260
+ } AS chunk
213
261
  `;
214
262
  return this.neo4j.readMany(query);
215
263
  }
216
264
  async createChunk(params) {
217
265
  const query = this.neo4j.initQuery();
218
- const vector = await this.embedderService.vectoriseText({ text: params.content });
266
+ // Ingestion-time embedding: the chunk being created belongs to `nodeId`, so
267
+ // the spend is billed to that entity. `nodeType` is already the Neo4j label
268
+ // the Cypher below interpolates; `buildEmbedderAttribution` normalises it
269
+ // through the registry so a caller holding the JSON:API type still bills to
270
+ // the label the `USED_FOR` edge is matched on.
271
+ const vector = await this.embedderService.vectoriseText({
272
+ text: params.content,
273
+ attribution: (0, usage_attribution_1.buildEmbedderAttribution)({ entityId: params.nodeId, entityIdentifier: params.nodeType }),
274
+ });
219
275
  query.queryParams = {
220
276
  ...query.queryParams,
221
277
  id: params.id,
@@ -283,40 +339,150 @@ let ChunkRepository = class ChunkRepository {
283
339
  `;
284
340
  await this.neo4j.writeOne(query);
285
341
  }
286
- async enrichContentAndEmbedBatch(items) {
342
+ /**
343
+ * `attribution` is OPTIONAL (added second, positionally, so existing callers
344
+ * keep compiling). One usage record is written per embedded slice — see
345
+ * `EmbedderService.persistUsage`. That is honest here because every item in
346
+ * the batch is a chunk of the SAME parent entity: the only caller,
347
+ * `ChunkService.propagateAndEmbedDates`, builds `items` from
348
+ * `findChunks({ id, nodeType })`.
349
+ */
350
+ async enrichContentAndEmbedBatch(items, attribution) {
351
+ // Also the zero-token guard: an empty batch embeds nothing, and an operation
352
+ // that records ZERO tokens must record NOTHING. `persistUsage` has no
353
+ // zero-token guard of its own, so returning here is what prevents a
354
+ // 0-token/0-cost row now that this site supplies an attribution.
287
355
  if (items.length === 0)
288
356
  return;
289
- // One Azure round-trip for the whole set per-call latency dominates batch size, so
290
- // embedding chunks individually (vectoriseText per chunk) is far slower than batching.
291
- // RateLimitedEmbedder.embedDocuments splits internally if the batch exceeds maxBatchTokens.
292
- const vectors = await this.embedderService.vectoriseTextBatch(items.map((item) => item.enrichedContent));
293
- const rows = items.map((item, index) => ({
294
- chunkId: item.chunkId,
295
- enrichedContent: item.enrichedContent,
296
- vector: vectors[index],
297
- propagatedDates: item.propagatedDates ?? null,
298
- }));
357
+ for (let start = 0; start < items.length; start += ChunkRepository_1.EMBED_SLICE) {
358
+ // Everything below is scoped to this iteration, so the previous slice's vectors
359
+ // and rows become unreachable as soon as the next slice starts.
360
+ const slice = items.slice(start, start + ChunkRepository_1.EMBED_SLICE);
361
+ // One Azure round-trip per slice — per-call latency dominates batch size, so
362
+ // embedding chunks individually (vectoriseText per chunk) is far slower.
363
+ // RateLimitedEmbedder.embedDocuments splits internally if the slice exceeds maxBatchTokens.
364
+ // `attribution` is optional: without it the embedder records no usage (opt-in by design).
365
+ // Attribution is forwarded per slice: each slice's usage record carries its own
366
+ // token count, so the totals are identical to the single-batch version.
367
+ const vectors = await this.embedderService.vectoriseTextBatch(slice.map((item) => item.enrichedContent), attribution);
368
+ const rows = slice.map((item, index) => ({
369
+ chunkId: item.chunkId,
370
+ enrichedContent: item.enrichedContent,
371
+ vector: vectors[index],
372
+ propagatedDates: item.propagatedDates ?? null,
373
+ }));
374
+ const query = this.neo4j.initQuery();
375
+ query.queryParams = {
376
+ ...query.queryParams,
377
+ rows,
378
+ };
379
+ query.query = `
380
+ UNWIND $rows AS row
381
+ MATCH (chunk:Chunk {id: row.chunkId})
382
+ SET chunk.content = row.enrichedContent,
383
+ chunk.embedding = row.vector,
384
+ chunk.updatedAt = datetime(),
385
+ chunk.propagatedDates = row.propagatedDates
386
+ `;
387
+ await this.neo4j.writeOne(query);
388
+ }
389
+ }
390
+ async markChunksCompleted(params) {
391
+ const query = this.neo4j.initQuery();
392
+ query.queryParams = { ...query.queryParams, id: params.id, aiStatus: ai_status_1.AiStatus.Completed };
393
+ query.query += `
394
+ MATCH (nodeType:${params.nodeType} {id: $id})-[:HAS_CHUNK]->(chunk:Chunk)
395
+ SET chunk.aiStatus = $aiStatus, chunk.updatedAt = datetime()
396
+ `;
397
+ await this.neo4j.writeOne(query);
398
+ }
399
+ /**
400
+ * Count of chunks not yet completed for a content node. Replaces full hydration in
401
+ * pipeline guards: they only ever asked "are any chunks still pending?", and hydrating
402
+ * every chunk (embedding vectors included) to answer it is what made the guard
403
+ * quadratic in a document's chunk count.
404
+ *
405
+ * Returns a scalar, so it cannot go through `readOne`/`readMany` (those map entity
406
+ * columns). Same raw-scalar read as `TokenUsageRepository.findUsageSummary` — the
407
+ * package's precedent for non-entity aggregate reads.
408
+ */
409
+ async countChunksInProgress(params) {
410
+ const query = this.neo4j.initQuery();
411
+ query.queryParams = {
412
+ ...query.queryParams,
413
+ id: params.id,
414
+ aiStatus: [ai_status_1.AiStatus.InProgress, ai_status_1.AiStatus.Pending],
415
+ };
416
+ query.query += `
417
+ MATCH (:${params.nodeType} {id: $id})-[:HAS_CHUNK]->(chunk:Chunk)
418
+ WHERE chunk.aiStatus IN $aiStatus
419
+ RETURN count(chunk) AS count
420
+ `;
421
+ const result = await this.neo4j.read(query.query, query.queryParams);
422
+ if (result.records.length === 0)
423
+ return 0;
424
+ // Cypher `count()` arrives as a neo4j-driver Integer; the package's own unwrap helper
425
+ // turns it into a plain JS number (and passes real numbers through untouched).
426
+ const count = (0, unwrap_neo4j_integer_1.unwrapNeo4jIntegers)(result.records[0].get("count"));
427
+ return count ?? 0;
428
+ }
429
+ /**
430
+ * Single-winner claim on a content node's post-chunking pipeline.
431
+ *
432
+ * `countChunksInProgress` alone CANNOT gate finalisation. It answers "are any chunks
433
+ * still pending?", never "has finalisation already run?", and `ChunkService.generateGraph`
434
+ * enqueues one finalise job per chunk — so a 25-chunk document gets 25 jobs. Once the last
435
+ * chunk lands, every remaining queued job passes a pending-count check and re-runs the whole
436
+ * pipeline (measured 2026-08-12: summariser ran 25× on one document, 100.91 credits; ~70% of
437
+ * that run's spend was duplicated work).
438
+ *
439
+ * The `SET n.finalisationClaimedAt = n.finalisationClaimedAt` is a deliberate no-op write: it
440
+ * takes the node's write lock BEFORE the predicate is evaluated. A concurrent claimer blocks
441
+ * there, and re-reads the committed value afterwards (Neo4j reads are read-committed, not
442
+ * repeatable), so it sees the winner's timestamp and its `WHERE` fails. Without the lock both
443
+ * transactions evaluate the predicate on the pre-write state and both claim.
444
+ *
445
+ * Re-ingestion re-arms the claim via `clearFinalisationClaim` in `ChunkService.createChunks`.
446
+ */
447
+ async claimContentFinalisation(params) {
299
448
  const query = this.neo4j.initQuery();
300
449
  query.queryParams = {
301
450
  ...query.queryParams,
302
- rows,
451
+ id: params.id,
452
+ pendingStatus: [ai_status_1.AiStatus.InProgress, ai_status_1.AiStatus.Pending],
303
453
  };
304
- query.query = `
305
- UNWIND $rows AS row
306
- MATCH (chunk:Chunk {id: row.chunkId})
307
- SET chunk.content = row.enrichedContent,
308
- chunk.embedding = row.vector,
309
- chunk.updatedAt = datetime(),
310
- chunk.propagatedDates = row.propagatedDates
454
+ query.query += `
455
+ MATCH (nodeType:${params.nodeType} {id: $id})
456
+ SET nodeType.finalisationClaimedAt = nodeType.finalisationClaimedAt
457
+ WITH nodeType
458
+ WHERE nodeType.finalisationClaimedAt IS NULL
459
+ AND NOT EXISTS {
460
+ MATCH (nodeType)-[:HAS_CHUNK]->(chunk:Chunk)
461
+ WHERE chunk.aiStatus IN $pendingStatus
462
+ }
463
+ SET nodeType.finalisationClaimedAt = datetime()
464
+ RETURN nodeType.id AS id
311
465
  `;
312
- await this.neo4j.writeOne(query);
466
+ // `executeInTransaction` (not `writeOne`) because the claim must READ its own outcome:
467
+ // `writeOne` returns null without a serialiser, and the lock has to be held for the whole
468
+ // transaction for the re-read to be meaningful. Same id-keyed, label-scoped match as
469
+ // `countChunksInProgress` above — no company scope, by design: this is an internal
470
+ // pipeline latch keyed on a UUID the caller already resolved.
471
+ const [result] = await this.neo4j.executeInTransaction([{ query: query.query, params: query.queryParams }]);
472
+ return result.records.length > 0;
313
473
  }
314
- async markChunksCompleted(params) {
474
+ /**
475
+ * Re-arms `claimContentFinalisation` for a content node whose chunks are being (re)built.
476
+ * Called from `ChunkService.createChunks`, the single entry point every ingestion and
477
+ * rebuild path goes through — without it a re-ingested document would keep the stale claim
478
+ * and skip finalisation silently.
479
+ */
480
+ async clearFinalisationClaim(params) {
315
481
  const query = this.neo4j.initQuery();
316
- query.queryParams = { ...query.queryParams, id: params.id, aiStatus: ai_status_1.AiStatus.Completed };
482
+ query.queryParams = { ...query.queryParams, id: params.id };
317
483
  query.query += `
318
- MATCH (nodeType:${params.nodeType} {id: $id})-[:HAS_CHUNK]->(chunk:Chunk)
319
- SET chunk.aiStatus = $aiStatus, chunk.updatedAt = datetime()
484
+ MATCH (nodeType:${params.nodeType} {id: $id})
485
+ REMOVE nodeType.finalisationClaimedAt
320
486
  `;
321
487
  await this.neo4j.writeOne(query);
322
488
  }
@@ -415,7 +581,15 @@ let ChunkRepository = class ChunkRepository {
415
581
  }
416
582
  };
417
583
  exports.ChunkRepository = ChunkRepository;
418
- exports.ChunkRepository = ChunkRepository = __decorate([
584
+ /**
585
+ * Chunks embedded (and written) per round-trip in `enrichContentAndEmbedBatch`.
586
+ * A whole document's worth of vectors held at once is what pushed the worker past
587
+ * its heap on large uploads: 760 pages ≈ 2.5k chunks × 3072 floats. Slicing bounds
588
+ * the peak to one slice's vectors while keeping batching's latency win (one embedder
589
+ * call per 50 chunks, not per chunk).
590
+ */
591
+ ChunkRepository.EMBED_SLICE = 50;
592
+ exports.ChunkRepository = ChunkRepository = ChunkRepository_1 = __decorate([
419
593
  (0, common_1.Injectable)(),
420
594
  __param(5, (0, common_1.Inject)(ai_source_query_provider_1.AI_SOURCE_QUERY)),
421
595
  __metadata("design:paramtypes", [neo4j_service_1.Neo4jService,
@@ -1 +1 @@
1
- {"version":3,"file":"chunk.repository.js","sourceRoot":"","sources":["../../../../src/foundations/chunk/repositories/chunk.repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chunk.repository.js","sourceRoot":"","sources":["../../../../src/foundations/chunk/repositories/chunk.repository.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"chunk.service.d.ts","sourceRoot":"","sources":["../../../../src/foundations/chunk/services/chunk.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chunk.service.d.ts","sourceRoot":"","sources":["../../../../src/foundations/chunk/services/chunk.service.ts"],"names":[],"mappings":"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"}