agentfootprint 9.0.0 → 9.1.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 (47) hide show
  1. package/dist/embedders/index.js +112 -0
  2. package/dist/embedders/index.js.map +1 -1
  3. package/dist/esm/embedders/index.d.ts +31 -0
  4. package/dist/esm/embedders/index.js +112 -0
  5. package/dist/esm/embedders/index.js.map +1 -1
  6. package/dist/esm/lib/rag/indexDocuments.d.ts +18 -0
  7. package/dist/esm/lib/rag/indexDocuments.js +29 -0
  8. package/dist/esm/lib/rag/indexDocuments.js.map +1 -1
  9. package/dist/esm/memory/embedding/inputCeiling.d.ts +98 -0
  10. package/dist/esm/memory/embedding/inputCeiling.js +53 -0
  11. package/dist/esm/memory/embedding/inputCeiling.js.map +1 -0
  12. package/dist/esm/memory/embedding/mockEmbedder.js +13 -0
  13. package/dist/esm/memory/embedding/mockEmbedder.js.map +1 -1
  14. package/dist/esm/memory/embedding/types.d.ts +32 -0
  15. package/dist/esm/rag/indexCorpus.d.ts +16 -2
  16. package/dist/esm/rag/indexCorpus.js +27 -3
  17. package/dist/esm/rag/indexCorpus.js.map +1 -1
  18. package/dist/esm/rag/splitters/index.d.ts +22 -0
  19. package/dist/esm/rag/splitters/index.js +22 -0
  20. package/dist/esm/rag/splitters/index.js.map +1 -1
  21. package/dist/esm/rag/types.d.ts +9 -0
  22. package/dist/lib/rag/indexDocuments.js +29 -0
  23. package/dist/lib/rag/indexDocuments.js.map +1 -1
  24. package/dist/memory/embedding/inputCeiling.js +58 -0
  25. package/dist/memory/embedding/inputCeiling.js.map +1 -0
  26. package/dist/memory/embedding/mockEmbedder.js +13 -0
  27. package/dist/memory/embedding/mockEmbedder.js.map +1 -1
  28. package/dist/rag/indexCorpus.js +27 -3
  29. package/dist/rag/indexCorpus.js.map +1 -1
  30. package/dist/rag/splitters/index.js +22 -0
  31. package/dist/rag/splitters/index.js.map +1 -1
  32. package/dist/types/embedders/index.d.ts +31 -0
  33. package/dist/types/embedders/index.d.ts.map +1 -1
  34. package/dist/types/lib/rag/indexDocuments.d.ts +18 -0
  35. package/dist/types/lib/rag/indexDocuments.d.ts.map +1 -1
  36. package/dist/types/memory/embedding/inputCeiling.d.ts +99 -0
  37. package/dist/types/memory/embedding/inputCeiling.d.ts.map +1 -0
  38. package/dist/types/memory/embedding/mockEmbedder.d.ts.map +1 -1
  39. package/dist/types/memory/embedding/types.d.ts +32 -0
  40. package/dist/types/memory/embedding/types.d.ts.map +1 -1
  41. package/dist/types/rag/indexCorpus.d.ts +16 -2
  42. package/dist/types/rag/indexCorpus.d.ts.map +1 -1
  43. package/dist/types/rag/splitters/index.d.ts +22 -0
  44. package/dist/types/rag/splitters/index.d.ts.map +1 -1
  45. package/dist/types/rag/types.d.ts +9 -0
  46. package/dist/types/rag/types.d.ts.map +1 -1
  47. package/package.json +1 -1
@@ -55,13 +55,13 @@ exports.buildIndexChart = exports.indexCorpus = void 0;
55
55
  */
56
56
  const footprintjs_1 = require("footprintjs");
57
57
  const footprintjs_2 = require("footprintjs");
58
+ const inputCeiling_js_1 = require("../memory/embedding/inputCeiling.js");
58
59
  const capability_js_1 = require("../memory/store/capability.js");
59
60
  const emitEmbedding_js_1 = require("../memory/embedding/emitEmbedding.js");
60
61
  const defineRAG_js_1 = require("../lib/rag/defineRAG.js");
61
62
  const loadDocuments_js_1 = require("./loadDocuments.js");
62
63
  const splitDocuments_js_1 = require("./splitDocuments.js");
63
64
  const byHeading_js_1 = require("./splitters/byHeading.js");
64
- const DEFAULT_MAX_CHUNK_CHARS = 2000;
65
65
  /**
66
66
  * Build and run the indexing chart.
67
67
  *
@@ -113,7 +113,12 @@ function compile(config) {
113
113
  const batchSize = Math.max(1, Math.floor(config.batchSize ?? 64));
114
114
  const maxBatches = Math.max(1, Math.floor(config.maxConcurrentBatches ?? 4));
115
115
  const attempts = Math.max(1, Math.floor(config.attempts ?? 3));
116
- const maxChunkChars = config.maxChunkChars ?? DEFAULT_MAX_CHUNK_CHARS;
116
+ // The ceiling comes from the embedder unless the caller stated one. The
117
+ // number lives where the knowledge is: an indexer's own default is a guess
118
+ // about a backend it has never met, and the safe guess (the smallest cliff
119
+ // any embedder might have) cuts every larger embedder short.
120
+ const ceiling = (0, inputCeiling_js_1.resolveChunkCeiling)(config.maxChunkChars, config.embedder);
121
+ const maxChunkChars = ceiling.chars;
117
122
  const removeMissing = config.removeMissing ?? true;
118
123
  const startedAt = Date.now();
119
124
  const fingerprint = `${embedderId}@${config.embedder.dimensions}`;
@@ -314,6 +319,7 @@ function compile(config) {
314
319
  .addFunction('Report', (scope) => {
315
320
  // The report is a COMMIT, not just a return value. A later reader
316
321
  // asks the trace what this run did; nothing had to be saved.
322
+ const truncated = scope.truncated ?? [];
317
323
  scope.report = {
318
324
  discovered: scope.discoveredCount ?? 0,
319
325
  loaded: (scope.documents ?? []).length,
@@ -322,11 +328,29 @@ function compile(config) {
322
328
  skipped: (scope.toSkip ?? []).length,
323
329
  removed: scope.removedCount ?? 0,
324
330
  failed: scope.failed ?? [],
325
- truncated: scope.truncated ?? [],
331
+ truncated,
332
+ truncatedCount: truncated.length,
326
333
  embedderFingerprint: fingerprint,
327
334
  splitter: splitter.name,
328
335
  elapsedMs: Date.now() - startedAt,
329
336
  };
337
+ // Said OUT LOUD, once, at the end of the run — because an invisible
338
+ // failure is indistinguishable from success. The list has been in
339
+ // the report since 8.10.0 and nobody reads a report that says
340
+ // everything went fine; the corpus that is quietly missing a
341
+ // paragraph is discovered months later as "the model does not know
342
+ // that". One line, at the one moment the count is final.
343
+ if (truncated.length > 0) {
344
+ console.warn((0, inputCeiling_js_1.truncationWarning)({
345
+ caller: 'indexCorpus',
346
+ count: truncated.length,
347
+ total: (scope.chunks ?? []).length,
348
+ noun: 'chunk',
349
+ ceiling,
350
+ embedderId,
351
+ idsIn: "the returned report's `truncated` list",
352
+ }));
353
+ }
330
354
  }, 'report', 'File what this run did — the commit log IS the report')
331
355
  .build());
332
356
  }
@@ -1 +1 @@
1
- {"version":3,"file":"indexCorpus.js","sourceRoot":"","sources":["../../src/rag/indexCorpus.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"indexCorpus.js","sourceRoot":"","sources":["../../src/rag/indexCorpus.ts"],"names":[],"mappings":"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"}
@@ -29,6 +29,28 @@ exports.DEFAULT_MIN_CHARS = exports.DEFAULT_OVERLAP_CHARS = exports.DEFAULT_MAX_
29
29
  * 8,191. Raise it and you approach a limit whose failure mode is silence —
30
30
  * half your chunk embedded, full score reported.
31
31
  *
32
+ * ── How this number composes with the INDEXER's ceiling ─────────────────────
33
+ *
34
+ * Two numbers bound one chunk and they are set in different places:
35
+ * `maxChars` HERE decides how big a chunk is cut, and `maxChunkChars` at
36
+ * `indexCorpus` / `indexFolder` / `indexDocuments` decides how much of it the
37
+ * embedder actually reads. At the shipped defaults they compose safely —
38
+ * 1,000 out of a ceiling of at least 2,000, so every chunk is embedded whole.
39
+ *
40
+ * **The trap opens when the splitter's ceiling is raised.** `byHeading({
41
+ * maxChars: 2500 })` against an embedder whose ceiling is 2,000 produces
42
+ * chunks that are stored WHOLE as the passage and indexed by their OPENING:
43
+ * retrieval cannot find wording that is plainly visible in the block the model
44
+ * is later shown, and no error is raised anywhere. Measured in a production
45
+ * corpus: 6 of 26 chunks, against an embedder that would have read every one
46
+ * of them in full.
47
+ *
48
+ * Since 9.1.0 the indexer reads the ceiling off the EMBEDDER
49
+ * (`Embedder.maxInputChars`) rather than assuming the on-device cliff, and
50
+ * says out loud — once, with the count — when anything was clipped. So raising
51
+ * `maxChars` is safe up to what your embedder declares, and past it you are
52
+ * told rather than left to discover it in a retrieval result.
53
+ *
32
54
  * The 150-character overlap (15%) exists so a sentence spanning a boundary is
33
55
  * whole in one of the two neighbours. It is the smallest overlap that reliably
34
56
  * does that for English prose; there is nothing deeper claimed for it.
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/rag/splitters/index.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0DG;AACH,mDAAwE;AAA/D,6GAAA,WAAW,OAAA;AACpB,+CAAkE;AAAzD,yGAAA,SAAS,OAAA;AAClB,6DAAuF;AAA9E,uHAAA,gBAAgB,OAAA;AACzB,uDAAmD;AAA1C,iHAAA,aAAa,OAAA;AACtB,+CAA6F;AAApF,iHAAA,iBAAiB,OAAA;AAAE,qHAAA,qBAAqB,OAAA;AAAE,iHAAA,iBAAiB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/rag/splitters/index.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgFG;AACH,mDAAwE;AAA/D,6GAAA,WAAW,OAAA;AACpB,+CAAkE;AAAzD,yGAAA,SAAS,OAAA;AAClB,6DAAuF;AAA9E,uHAAA,gBAAgB,OAAA;AACzB,uDAAmD;AAA1C,iHAAA,aAAa,OAAA;AACtB,+CAA6F;AAApF,iHAAA,iBAAiB,OAAA;AAAE,qHAAA,qBAAqB,OAAA;AAAE,iHAAA,iBAAiB,OAAA"}
@@ -74,6 +74,14 @@ export interface OpenAIEmbedderOptions {
74
74
  * know, so it is a construction-time error rather than a guess that a vector
75
75
  * store would silently trust.
76
76
  *
77
+ * `.maxInputChars` (9.1.0) reports **32,000** for the three models above:
78
+ * their documented 8,191-token window at the stated {@link CHARS_PER_TOKEN}
79
+ * assumption. An indexer reads it in preference to its own 2,000-character
80
+ * default, so a corpus split at 2,500 characters is embedded WHOLE here
81
+ * instead of being clipped by a default measured on an on-device model.
82
+ * An unknown model declares no ceiling — the indexer's default stands, which
83
+ * is conservative rather than wrong.
84
+ *
77
85
  * @throws if there is no API key, or if `model` is unknown and `dimensions`
78
86
  * was not supplied.
79
87
  */
@@ -159,6 +167,16 @@ export interface BedrockEmbedderOptions {
159
167
  * q8 and an fp32 build of one model are near-identical spaces, and "near" is
160
168
  * exactly the difference that surfaces as a mysteriously worse ranking.)
161
169
  *
170
+ * ── The input ceiling (9.1.0) ────────────────────────────────────────────
171
+ * `.maxInputChars` reports **32,000** for both Titan text-embedding models:
172
+ * their documented 8,192-token window, converted at the stated
173
+ * {@link CHARS_PER_TOKEN} assumption of 4 characters per token. Sixteen times
174
+ * the indexer's own default, which was measured on an on-device model — so an
175
+ * indexing run against this embedder now embeds a 2,500-character chunk whole
176
+ * instead of clipping it and calling that success. Dense text (code, tables,
177
+ * CJK) tokenises tighter than the assumption; pass an explicit `maxChunkChars`
178
+ * for such a corpus, and it wins over this number.
179
+ *
162
180
  * @throws if `model` is unknown and `dimensions` was not supplied; if
163
181
  * `dimensions` is not one of Titan V2's supported sizes; or if the SDK
164
182
  * is missing and no `client` / `_client` / `_sdk` was passed.
@@ -196,6 +214,19 @@ export interface LocalEmbedderOptions {
196
214
  readonly dtype?: string;
197
215
  /** On-disk model cache directory. */
198
216
  readonly cacheDir?: string;
217
+ /**
218
+ * Longest input this model reads whole, in characters (9.1.0). Default
219
+ * {@link LOCAL_MAX_INPUT_CHARS} — the MEASURED cliff of the default model.
220
+ *
221
+ * The option exists because `model` is swappable and the cliff belongs to
222
+ * the MODEL, not to this factory. A long-context embedding model (one of the
223
+ * 8k-token sentence-transformer builds) reads far more than the default
224
+ * says, and without a way to state that, an indexer would keep cutting its
225
+ * corpus into pieces a quarter the size the model can take. Nothing verifies
226
+ * it — it is your model's documented window, declared for the indexer to
227
+ * read.
228
+ */
229
+ readonly maxInputChars?: number;
199
230
  /**
200
231
  * An ALREADY-IMPORTED `@huggingface/transformers`. Supply this and the lazy
201
232
  * `import('@huggingface/transformers')` never happens — which is what makes
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/embedders/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/embedders/index.ts"],"names":[],"mappings":"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"}
@@ -132,6 +132,24 @@ export interface IndexDocumentsOptions {
132
132
  * its own batching).
133
133
  */
134
134
  readonly maxConcurrency?: number;
135
+ /**
136
+ * The embedder's input ceiling in characters (9.1.0). Documents longer than
137
+ * it are embedded anyway — the backend CLIPS them rather than refusing — and
138
+ * the run says so once on `console.warn`.
139
+ *
140
+ * Default: the embedder's own declared `maxInputChars`, falling back to
141
+ * 2,000 (the measured `localEmbedder` cliff) for one that declares none.
142
+ * An explicit number here wins over both.
143
+ *
144
+ * This helper does not split — a document you hand it is stored whole and
145
+ * served whole. So a document past the ceiling is indexed by its OPENING
146
+ * while the model is later shown all of it, and retrieval cannot find
147
+ * wording that is plainly there. Nothing throws; the corpus is quietly
148
+ * partially indexed. Cut such documents into chunks first — the
149
+ * `agentfootprint/rag` door does exactly that, and its chunks keep the
150
+ * coordinates a citation is checked against.
151
+ */
152
+ readonly maxChunkChars?: number;
135
153
  }
136
154
  /**
137
155
  * Embed + persist documents. Returns the count actually indexed
@@ -1 +1 @@
1
- {"version":3,"file":"indexDocuments.d.ts","sourceRoot":"","sources":["../../../../src/lib/rag/indexDocuments.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAEhE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAE/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAGrE;;;;;;;;;GASG;AACH,MAAM,MAAM,WAAW,GACnB;IACE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,+DAA+D;IAC/D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACvD,GACD;IACE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;OAIG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACvD,CAAC;AAEN,MAAM,WAAW,qBAAqB;IACpC;;;;;;;;;;;;;;;;;OAiBG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAC;IAEnC;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAE7B;;;;OAIG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;IAExC;;;OAGG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAExB;;;OAGG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAE9B;;;;;;;;;;;;;;;OAeG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,CACrB,OAAO,EAAE,OAAO,0BAA0B,EAAE,yBAAyB,KAClE,IAAI,CAAC;IAEV;;;;;;OAMG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;CAClC;AAID;;;;;;;;;;;;GAYG;AACH,wBAAsB,cAAc,CAClC,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS,WAAW,EAAE,EACjC,OAAO,GAAE,qBAA0B,GAClC,OAAO,CAAC,MAAM,CAAC,CAiEjB"}
1
+ {"version":3,"file":"indexDocuments.d.ts","sourceRoot":"","sources":["../../../../src/lib/rag/indexDocuments.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAGhE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAE/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAGrE;;;;;;;;;GASG;AACH,MAAM,MAAM,WAAW,GACnB;IACE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,+DAA+D;IAC/D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACvD,GACD;IACE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;OAIG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACvD,CAAC;AAEN,MAAM,WAAW,qBAAqB;IACpC;;;;;;;;;;;;;;;;;OAiBG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAC;IAEnC;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAE7B;;;;OAIG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;IAExC;;;OAGG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAExB;;;OAGG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAE9B;;;;;;;;;;;;;;;OAeG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,CACrB,OAAO,EAAE,OAAO,0BAA0B,EAAE,yBAAyB,KAClE,IAAI,CAAC;IAEV;;;;;;OAMG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IAEjC;;;;;;;;;;;;;;;;OAgBG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC;AAID;;;;;;;;;;;;GAYG;AACH,wBAAsB,cAAc,CAClC,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS,WAAW,EAAE,EACjC,OAAO,GAAE,qBAA0B,GAClC,OAAO,CAAC,MAAM,CAAC,CAkEjB"}
@@ -0,0 +1,99 @@
1
+ /**
2
+ * inputCeiling — how long a piece of text may be before the embedder stops
3
+ * reading it, and what to say when one was longer.
4
+ *
5
+ * Pattern: one resolver + one message, shared by every door that embeds a
6
+ * corpus (`indexCorpus`, `indexFolder`, `indexDocuments`), so the
7
+ * arithmetic cannot drift between them.
8
+ * Role: memory/embedding layer — it sits beside the port whose field it
9
+ * reads.
10
+ * Emits: N/A.
11
+ *
12
+ * ── Why the number is resolved rather than fixed ────────────────────────────
13
+ * An indexer's own default ceiling is a guess about a backend it has never
14
+ * met, so it has to be the SMALLEST ceiling any embedder might have — 2,000
15
+ * characters, the measured `localEmbedder` cliff. That default was safe and
16
+ * wrong at the same time: safe for the on-device model it was measured on,
17
+ * wrong by a factor of sixteen for a hosted model with an 8k-token window, and
18
+ * silently wrong for anyone who raised their splitter's `maxChars` to a value
19
+ * their embedder could read perfectly well. Measured in a production run: 6 of
20
+ * 26 chunks clipped, with an embedder that would have read every one of them
21
+ * whole.
22
+ *
23
+ * So the ceiling is resolved from three sources, most-specific first:
24
+ *
25
+ * 1. the caller's explicit `maxChunkChars` — they are allowed to know better
26
+ * than either of the below, and stating a number is how they say so;
27
+ * 2. the embedder's declared `maxInputChars` — the number lives where the
28
+ * knowledge is;
29
+ * 3. {@link DEFAULT_MAX_CHUNK_CHARS} — an embedder that declares nothing
30
+ * gets exactly the behaviour it had before this field existed.
31
+ *
32
+ * ── Why the message, and not just a number in a report ──────────────────────
33
+ * A clipped chunk is stored WHOLE as the passage and indexed by its opening.
34
+ * Retrieval then cannot find text that is plainly visible in the block the
35
+ * model is later shown — which reads as "the corpus does not mention that",
36
+ * not as a failure. The report has carried the list since 8.10.0 and nobody
37
+ * reads a report that says everything went fine, so the count also gets said
38
+ * out loud, once per run.
39
+ */
40
+ import type { Embedder } from './types.js';
41
+ /**
42
+ * The ceiling used when nothing better is known: the measured `localEmbedder`
43
+ * cliff (512 wordpiece tokens ≈ 1,800–2,000 characters of English).
44
+ *
45
+ * It is the floor of the shipped range, deliberately — a ceiling that is too
46
+ * LOW only over-reports, and a ceiling that is too HIGH clips in silence.
47
+ */
48
+ export declare const DEFAULT_MAX_CHUNK_CHARS = 2000;
49
+ /** Where the ceiling in effect came from — the thing a message has to name. */
50
+ export type ChunkCeilingSource = 'explicit' | 'embedder' | 'default';
51
+ /** The ceiling in effect for one indexing call, and where it came from. */
52
+ export interface ChunkCeiling {
53
+ /** Longest chunk, in characters, that this embedder reads whole. */
54
+ readonly chars: number;
55
+ readonly source: ChunkCeilingSource;
56
+ }
57
+ /**
58
+ * Resolve the ceiling for one indexing call.
59
+ *
60
+ * A non-positive or non-finite value is treated as absent at BOTH levels: it
61
+ * cannot describe a real ceiling, and honouring it would mark every chunk in
62
+ * the corpus as truncated (or none of them) on the strength of a typo.
63
+ */
64
+ export declare function resolveChunkCeiling(explicit: number | undefined, embedder: Pick<Embedder, 'maxInputChars'> | undefined): ChunkCeiling;
65
+ /**
66
+ * The one sentence a run says out loud when something was clipped.
67
+ *
68
+ * It names the count (so the size of the hole is known), the ceiling AND where
69
+ * it came from (so the reader knows which knob is theirs to turn), and the two
70
+ * fixes — because "your index is silently incomplete" is useless without
71
+ * "here is the line to change".
72
+ */
73
+ export declare function truncationWarning(args: {
74
+ /** The door that did the work, named as the caller wrote it. */
75
+ readonly caller: string;
76
+ /** How many pieces were longer than the ceiling. */
77
+ readonly count: number;
78
+ /** How many pieces there were in total. */
79
+ readonly total: number;
80
+ /** What the pieces are called at this door — 'chunk' or 'document'. */
81
+ readonly noun: string;
82
+ readonly ceiling: ChunkCeiling;
83
+ /** The embedder's id, when it has one — which embedder's ceiling this is. */
84
+ readonly embedderId?: string | undefined;
85
+ /**
86
+ * Where the affected ids can be read back, when the door hands back
87
+ * something that carries them. Omitted at a door that returns only a count,
88
+ * rather than pointing at a report that does not exist.
89
+ */
90
+ readonly idsIn?: string | undefined;
91
+ /**
92
+ * The "make the pieces smaller" half of the fix, in the caller's own terms —
93
+ * a door that splits for you names its splitter; one that does not says how
94
+ * to cut before calling it. Advice you cannot act on at the door you are
95
+ * standing at is not advice.
96
+ */
97
+ readonly resplitHint?: string | undefined;
98
+ }): string;
99
+ //# sourceMappingURL=inputCeiling.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inputCeiling.d.ts","sourceRoot":"","sources":["../../../../src/memory/embedding/inputCeiling.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB,OAAO,CAAC;AAE5C,+EAA+E;AAC/E,MAAM,MAAM,kBAAkB,GAAG,UAAU,GAAG,UAAU,GAAG,SAAS,CAAC;AAErE,2EAA2E;AAC3E,MAAM,WAAW,YAAY;IAC3B,oEAAoE;IACpE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC;CACrC;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,eAAe,CAAC,GAAG,SAAS,GACpD,YAAY,CAKd;AAMD;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE;IACtC,gEAAgE;IAChE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,oDAAoD;IACpD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,2CAA2C;IAC3C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,uEAAuE;IACvE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;IAC/B,6EAA6E;IAC7E,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC;;;;OAIG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC3C,GAAG,MAAM,CAoBT"}
@@ -1 +1 @@
1
- {"version":3,"file":"mockEmbedder.d.ts","sourceRoot":"","sources":["../../../../src/memory/embedding/mockEmbedder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,KAAK,EAAE,QAAQ,EAA6B,MAAM,YAAY,CAAC;AAYtE,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,OAAO,GAAE,mBAAwB,GAAG,QAAQ,CAmBxE"}
1
+ {"version":3,"file":"mockEmbedder.d.ts","sourceRoot":"","sources":["../../../../src/memory/embedding/mockEmbedder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,KAAK,EAAE,QAAQ,EAA6B,MAAM,YAAY,CAAC;AAmBtE,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,OAAO,GAAE,mBAAwB,GAAG,QAAQ,CA0BxE"}
@@ -59,6 +59,38 @@ export interface Embedder {
59
59
  * ```
60
60
  */
61
61
  readonly id?: string;
62
+ /**
63
+ * The longest input, in CHARACTERS, this embedder represents FAITHFULLY
64
+ * (9.1.0). Text past it is not refused by the backend — it is CLIPPED, and
65
+ * a full-looking vector comes back for the opening of the passage.
66
+ *
67
+ * That is the failure this field exists to stop. An indexer stores the whole
68
+ * chunk as the passage and the clipped vector as its index, so retrieval
69
+ * cannot find text that is visibly present in the passage it later serves.
70
+ * Nothing throws, nothing scores zero; the corpus is simply, quietly,
71
+ * partially indexed.
72
+ *
73
+ * The number belongs HERE because this is the only object that knows it. An
74
+ * indexer's own default is a guess about a backend it has never met: it is
75
+ * necessarily the smallest ceiling any embedder might have, which then
76
+ * under-uses every embedder that can read four times as much. Declared, the
77
+ * indexers (`indexCorpus`, `indexFolder`, `indexDocuments`) read this in
78
+ * preference to their own default, and an explicit `maxChunkChars` on the
79
+ * call still wins over both — the caller is allowed to know better.
80
+ *
81
+ * Optional, because `Embedder` is a structural interface and every
82
+ * hand-written one predates this field. Absent, the indexers behave exactly
83
+ * as they did before it existed. Every shipped embedder declares one, and a
84
+ * hand-written embedder over a hosted model should: the alternative is that
85
+ * its ceiling is discovered by someone reading a retrieval result that is
86
+ * missing a paragraph they can see.
87
+ *
88
+ * Characters rather than tokens, because a splitter cuts characters. Where
89
+ * a backend states a TOKEN limit, the shipped embedders convert it at a
90
+ * stated, deliberately conservative characters-per-token assumption and say
91
+ * so in their own docs.
92
+ */
93
+ readonly maxInputChars?: number;
62
94
  /** Embed a single text into a vector of length `dimensions`. */
63
95
  embed(args: EmbedArgs): Promise<number[]>;
64
96
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/memory/embedding/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,MAAM,WAAW,SAAS;IACxB,yBAAyB;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;CAC/B;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;CAC/B;AAED;;;;;GAKG;AACH,MAAM,WAAW,QAAQ;IACvB,qDAAqD;IACrD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAE5B;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAErB,gEAAgE;IAChE,KAAK,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAE1C;;;;OAIG;IACH,UAAU,CAAC,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;CACxD"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/memory/embedding/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,MAAM,WAAW,SAAS;IACxB,yBAAyB;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;CAC/B;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;CAC/B;AAED;;;;;GAKG;AACH,MAAM,WAAW,QAAQ;IACvB,qDAAqD;IACrD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAE5B;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAErB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAEhC,gEAAgE;IAChE,KAAK,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAE1C;;;;OAIG;IACH,UAAU,CAAC,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;CACxD"}
@@ -48,8 +48,22 @@ export interface IndexCorpusConfig {
48
48
  /**
49
49
  * The embedder's input ceiling in characters. Chunks longer than this are
50
50
  * embedded anyway (the embedder clips them) and RECORDED in
51
- * `report.truncated` — so silent half-embedding becomes a number you can see.
52
- * Default 2000, the measured `localEmbedder` cliff.
51
+ * `report.truncated` / `report.truncatedCount` — so silent half-embedding
52
+ * becomes a number you can see, and a run that clipped anything says so once
53
+ * on `console.warn`.
54
+ *
55
+ * **Default (9.1.0): the embedder's own declared `maxInputChars`**, falling
56
+ * back to 2,000 — the measured `localEmbedder` cliff — for an embedder that
57
+ * declares none. Passing a number here always wins over both: you are
58
+ * allowed to know your corpus is denser than the embedder's own arithmetic
59
+ * assumes.
60
+ *
61
+ * Before 9.1.0 this defaulted to 2,000 for EVERY embedder, which is the
62
+ * on-device cliff applied to hosted models that read sixteen times as much.
63
+ * Combined with a splitter told to cut larger chunks — `byHeading({ maxChars:
64
+ * 2500 })` — the result was a corpus indexed by the OPENING of each chunk
65
+ * while the whole chunk was served as the passage, so retrieval could not
66
+ * find wording plainly visible in the block the model was shown.
53
67
  */
54
68
  readonly maxChunkChars?: number;
55
69
  }
@@ -1 +1 @@
1
- {"version":3,"file":"indexCorpus.d.ts","sourceRoot":"","sources":["../../../src/rag/indexCorpus.ts"],"names":[],"mappings":"AAqDA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAG9C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE5D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAOlE,OAAO,KAAK,EACV,KAAK,EACL,cAAc,EACd,cAAc,EACd,cAAc,EACd,WAAW,EACX,cAAc,EACd,QAAQ,EACR,cAAc,EACf,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,iBAAiB;IAChC,qCAAqC;IACrC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAChC,iFAAiF;IACjF,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAC5B,0CAA0C;IAC1C,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,cAAc,CAAC;IACjC;;;OAGG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAC7B,8CAA8C;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,cAAc,EAAE,CAAC;IAC7C;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,0CAA0C;IAC1C,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;;OAKG;IACH,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IACvC,0DAA0D;IAC1D,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;OAIG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IACjC;;;;;OAKG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,gEAAgE;AAChE,UAAU,UAAU;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,SAAS,cAAc,EAAE,CAAC;IACrC,MAAM,EAAE,SAAS,cAAc,EAAE,CAAC;IAClC,MAAM,EAAE,SAAS,KAAK,EAAE,CAAC;IACzB,OAAO,EAAE,SAAS,KAAK,EAAE,CAAC;IAC1B,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1B,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5B,yEAAyE;IACzE,cAAc,EAAE,SAAS,CAAC,SAAS,KAAK,EAAE,CAAC,EAAE,CAAC;IAC9C,mFAAmF;IACnF,MAAM,EAAE,SAAS,CAAC,SAAS,KAAK,EAAE,CAAC,EAAE,CAAC;IACtC,YAAY,EAAE,SAAS,CAAC;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC,EAAE,CAAC;IAC5D,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,SAAS,cAAc,EAAE,CAAC;IACrC,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAID;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,WAAW,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,WAAW,CAAC,CAWjF;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,iBAAiB,GAAG,UAAU,CAAC,OAAO,OAAO,CAAC,CAErF;AAED,iBAAS,OAAO,CAAC,MAAM,EAAE,iBAAiB,wEA6SzC"}
1
+ {"version":3,"file":"indexCorpus.d.ts","sourceRoot":"","sources":["../../../src/rag/indexCorpus.ts"],"names":[],"mappings":"AAqDA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAG9C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAE7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE5D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAOlE,OAAO,KAAK,EACV,KAAK,EACL,cAAc,EACd,cAAc,EACd,cAAc,EACd,WAAW,EACX,cAAc,EACd,QAAQ,EACR,cAAc,EACf,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,iBAAiB;IAChC,qCAAqC;IACrC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAChC,iFAAiF;IACjF,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAC5B,0CAA0C;IAC1C,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,cAAc,CAAC;IACjC;;;OAGG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAC7B,8CAA8C;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,cAAc,EAAE,CAAC;IAC7C;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,0CAA0C;IAC1C,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;;OAKG;IACH,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IACvC,0DAA0D;IAC1D,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;OAIG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IACjC;;;;;;;;;;;;;;;;;;;OAmBG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,gEAAgE;AAChE,UAAU,UAAU;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,SAAS,cAAc,EAAE,CAAC;IACrC,MAAM,EAAE,SAAS,cAAc,EAAE,CAAC;IAClC,MAAM,EAAE,SAAS,KAAK,EAAE,CAAC;IACzB,OAAO,EAAE,SAAS,KAAK,EAAE,CAAC;IAC1B,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1B,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5B,yEAAyE;IACzE,cAAc,EAAE,SAAS,CAAC,SAAS,KAAK,EAAE,CAAC,EAAE,CAAC;IAC9C,mFAAmF;IACnF,MAAM,EAAE,SAAS,CAAC,SAAS,KAAK,EAAE,CAAC,EAAE,CAAC;IACtC,YAAY,EAAE,SAAS,CAAC;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC,EAAE,CAAC;IAC5D,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,SAAS,cAAc,EAAE,CAAC;IACrC,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,WAAW,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,WAAW,CAAC,CAWjF;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,iBAAiB,GAAG,UAAU,CAAC,OAAO,OAAO,CAAC,CAErF;AAED,iBAAS,OAAO,CAAC,MAAM,EAAE,iBAAiB,wEAwUzC"}
@@ -26,6 +26,28 @@
26
26
  * 8,191. Raise it and you approach a limit whose failure mode is silence —
27
27
  * half your chunk embedded, full score reported.
28
28
  *
29
+ * ── How this number composes with the INDEXER's ceiling ─────────────────────
30
+ *
31
+ * Two numbers bound one chunk and they are set in different places:
32
+ * `maxChars` HERE decides how big a chunk is cut, and `maxChunkChars` at
33
+ * `indexCorpus` / `indexFolder` / `indexDocuments` decides how much of it the
34
+ * embedder actually reads. At the shipped defaults they compose safely —
35
+ * 1,000 out of a ceiling of at least 2,000, so every chunk is embedded whole.
36
+ *
37
+ * **The trap opens when the splitter's ceiling is raised.** `byHeading({
38
+ * maxChars: 2500 })` against an embedder whose ceiling is 2,000 produces
39
+ * chunks that are stored WHOLE as the passage and indexed by their OPENING:
40
+ * retrieval cannot find wording that is plainly visible in the block the model
41
+ * is later shown, and no error is raised anywhere. Measured in a production
42
+ * corpus: 6 of 26 chunks, against an embedder that would have read every one
43
+ * of them in full.
44
+ *
45
+ * Since 9.1.0 the indexer reads the ceiling off the EMBEDDER
46
+ * (`Embedder.maxInputChars`) rather than assuming the on-device cliff, and
47
+ * says out loud — once, with the count — when anything was clipped. So raising
48
+ * `maxChars` is safe up to what your embedder declares, and past it you are
49
+ * told rather than left to discover it in a retrieval result.
50
+ *
29
51
  * The 150-character overlap (15%) exists so a sentence spanning a boundary is
30
52
  * whole in one of the two neighbours. It is the smallest overlap that reliably
31
53
  * does that for English prose; there is nothing deeper claimed for it.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/rag/splitters/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0DG;AACH,OAAO,EAAE,WAAW,EAAE,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,KAAK,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AACvF,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/rag/splitters/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgFG;AACH,OAAO,EAAE,WAAW,EAAE,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,KAAK,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AACvF,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC"}
@@ -191,6 +191,15 @@ export interface IndexReport {
191
191
  readonly failed: readonly FailedDocument[];
192
192
  /** Chunks longer than the embedder's declared ceiling — embedded, but clipped by it. */
193
193
  readonly truncated: readonly TruncatedChunk[];
194
+ /**
195
+ * How many there were (9.1.0) — `truncated.length`, beside the list.
196
+ *
197
+ * The list is what you debug with; the count is what you ASSERT on and what
198
+ * a dashboard row can hold. A number that is normally 0 and suddenly is not
199
+ * is a check anyone can write; scanning a list for emptiness is a check
200
+ * nobody writes, which is how the clipping stayed invisible.
201
+ */
202
+ readonly truncatedCount: number;
194
203
  /** `'<embedderId>@<dims>'` — what this index is now fingerprinted with. */
195
204
  readonly embedderFingerprint: string;
196
205
  /** The splitter that produced the chunks. */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/rag/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/rag/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agentfootprint",
3
- "version": "9.0.0",
3
+ "version": "9.1.0",
4
4
  "description": "The explainable agent framework — backtrack a wrong answer to the exact context that caused it (evidence, not guesses). Built on footprintjs.",
5
5
  "license": "MIT",
6
6
  "type": "commonjs",