agentfootprint 9.0.0 → 9.2.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 (107) hide show
  1. package/README.md +15 -0
  2. package/dist/core/Agent.js +344 -18
  3. package/dist/core/Agent.js.map +1 -1
  4. package/dist/core/LLMCall.js +17 -0
  5. package/dist/core/LLMCall.js.map +1 -1
  6. package/dist/core/RunnerBase.js +22 -6
  7. package/dist/core/RunnerBase.js.map +1 -1
  8. package/dist/core/agent/AgentBuilder.js +20 -0
  9. package/dist/core/agent/AgentBuilder.js.map +1 -1
  10. package/dist/core/conversation.js +139 -0
  11. package/dist/core/conversation.js.map +1 -0
  12. package/dist/core/runCheckpoint.js +60 -2
  13. package/dist/core/runCheckpoint.js.map +1 -1
  14. package/dist/embedders/index.js +112 -0
  15. package/dist/embedders/index.js.map +1 -1
  16. package/dist/esm/core/Agent.d.ts +218 -3
  17. package/dist/esm/core/Agent.js +345 -19
  18. package/dist/esm/core/Agent.js.map +1 -1
  19. package/dist/esm/core/LLMCall.d.ts +9 -0
  20. package/dist/esm/core/LLMCall.js +17 -0
  21. package/dist/esm/core/LLMCall.js.map +1 -1
  22. package/dist/esm/core/RunnerBase.d.ts +22 -6
  23. package/dist/esm/core/RunnerBase.js +22 -6
  24. package/dist/esm/core/RunnerBase.js.map +1 -1
  25. package/dist/esm/core/agent/AgentBuilder.d.ts +5 -0
  26. package/dist/esm/core/agent/AgentBuilder.js +20 -0
  27. package/dist/esm/core/agent/AgentBuilder.js.map +1 -1
  28. package/dist/esm/core/agent/types.d.ts +45 -3
  29. package/dist/esm/core/conversation.d.ts +96 -0
  30. package/dist/esm/core/conversation.js +133 -0
  31. package/dist/esm/core/conversation.js.map +1 -0
  32. package/dist/esm/core/runCheckpoint.d.ts +85 -1
  33. package/dist/esm/core/runCheckpoint.js +57 -1
  34. package/dist/esm/core/runCheckpoint.js.map +1 -1
  35. package/dist/esm/embedders/index.d.ts +31 -0
  36. package/dist/esm/embedders/index.js +112 -0
  37. package/dist/esm/embedders/index.js.map +1 -1
  38. package/dist/esm/hosting/standingAgent.d.ts +6 -2
  39. package/dist/esm/hosting/standingAgent.js +36 -27
  40. package/dist/esm/hosting/standingAgent.js.map +1 -1
  41. package/dist/esm/index.d.ts +2 -1
  42. package/dist/esm/index.js +5 -1
  43. package/dist/esm/index.js.map +1 -1
  44. package/dist/esm/lib/rag/indexDocuments.d.ts +18 -0
  45. package/dist/esm/lib/rag/indexDocuments.js +29 -0
  46. package/dist/esm/lib/rag/indexDocuments.js.map +1 -1
  47. package/dist/esm/memory/embedding/inputCeiling.d.ts +98 -0
  48. package/dist/esm/memory/embedding/inputCeiling.js +53 -0
  49. package/dist/esm/memory/embedding/inputCeiling.js.map +1 -0
  50. package/dist/esm/memory/embedding/mockEmbedder.js +13 -0
  51. package/dist/esm/memory/embedding/mockEmbedder.js.map +1 -1
  52. package/dist/esm/memory/embedding/types.d.ts +32 -0
  53. package/dist/esm/rag/indexCorpus.d.ts +16 -2
  54. package/dist/esm/rag/indexCorpus.js +27 -3
  55. package/dist/esm/rag/indexCorpus.js.map +1 -1
  56. package/dist/esm/rag/splitters/index.d.ts +22 -0
  57. package/dist/esm/rag/splitters/index.js +22 -0
  58. package/dist/esm/rag/splitters/index.js.map +1 -1
  59. package/dist/esm/rag/types.d.ts +9 -0
  60. package/dist/hosting/standingAgent.js +36 -27
  61. package/dist/hosting/standingAgent.js.map +1 -1
  62. package/dist/index.js +9 -1
  63. package/dist/index.js.map +1 -1
  64. package/dist/lib/rag/indexDocuments.js +29 -0
  65. package/dist/lib/rag/indexDocuments.js.map +1 -1
  66. package/dist/memory/embedding/inputCeiling.js +58 -0
  67. package/dist/memory/embedding/inputCeiling.js.map +1 -0
  68. package/dist/memory/embedding/mockEmbedder.js +13 -0
  69. package/dist/memory/embedding/mockEmbedder.js.map +1 -1
  70. package/dist/rag/indexCorpus.js +27 -3
  71. package/dist/rag/indexCorpus.js.map +1 -1
  72. package/dist/rag/splitters/index.js +22 -0
  73. package/dist/rag/splitters/index.js.map +1 -1
  74. package/dist/types/core/Agent.d.ts +218 -3
  75. package/dist/types/core/Agent.d.ts.map +1 -1
  76. package/dist/types/core/LLMCall.d.ts +9 -0
  77. package/dist/types/core/LLMCall.d.ts.map +1 -1
  78. package/dist/types/core/RunnerBase.d.ts +22 -6
  79. package/dist/types/core/RunnerBase.d.ts.map +1 -1
  80. package/dist/types/core/agent/AgentBuilder.d.ts +5 -0
  81. package/dist/types/core/agent/AgentBuilder.d.ts.map +1 -1
  82. package/dist/types/core/agent/types.d.ts +45 -3
  83. package/dist/types/core/agent/types.d.ts.map +1 -1
  84. package/dist/types/core/conversation.d.ts +97 -0
  85. package/dist/types/core/conversation.d.ts.map +1 -0
  86. package/dist/types/core/runCheckpoint.d.ts +85 -1
  87. package/dist/types/core/runCheckpoint.d.ts.map +1 -1
  88. package/dist/types/embedders/index.d.ts +31 -0
  89. package/dist/types/embedders/index.d.ts.map +1 -1
  90. package/dist/types/hosting/standingAgent.d.ts +6 -2
  91. package/dist/types/hosting/standingAgent.d.ts.map +1 -1
  92. package/dist/types/index.d.ts +2 -1
  93. package/dist/types/index.d.ts.map +1 -1
  94. package/dist/types/lib/rag/indexDocuments.d.ts +18 -0
  95. package/dist/types/lib/rag/indexDocuments.d.ts.map +1 -1
  96. package/dist/types/memory/embedding/inputCeiling.d.ts +99 -0
  97. package/dist/types/memory/embedding/inputCeiling.d.ts.map +1 -0
  98. package/dist/types/memory/embedding/mockEmbedder.d.ts.map +1 -1
  99. package/dist/types/memory/embedding/types.d.ts +32 -0
  100. package/dist/types/memory/embedding/types.d.ts.map +1 -1
  101. package/dist/types/rag/indexCorpus.d.ts +16 -2
  102. package/dist/types/rag/indexCorpus.d.ts.map +1 -1
  103. package/dist/types/rag/splitters/index.d.ts +22 -0
  104. package/dist/types/rag/splitters/index.d.ts.map +1 -1
  105. package/dist/types/rag/types.d.ts +9 -0
  106. package/dist/types/rag/types.d.ts.map +1 -1
  107. package/package.json +1 -1
@@ -0,0 +1,98 @@
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;
@@ -0,0 +1,53 @@
1
+ /**
2
+ * The ceiling used when nothing better is known: the measured `localEmbedder`
3
+ * cliff (512 wordpiece tokens ≈ 1,800–2,000 characters of English).
4
+ *
5
+ * It is the floor of the shipped range, deliberately — a ceiling that is too
6
+ * LOW only over-reports, and a ceiling that is too HIGH clips in silence.
7
+ */
8
+ export const DEFAULT_MAX_CHUNK_CHARS = 2000;
9
+ /**
10
+ * Resolve the ceiling for one indexing call.
11
+ *
12
+ * A non-positive or non-finite value is treated as absent at BOTH levels: it
13
+ * cannot describe a real ceiling, and honouring it would mark every chunk in
14
+ * the corpus as truncated (or none of them) on the strength of a typo.
15
+ */
16
+ export function resolveChunkCeiling(explicit, embedder) {
17
+ if (isUsable(explicit))
18
+ return { chars: Math.floor(explicit), source: 'explicit' };
19
+ const declared = embedder?.maxInputChars;
20
+ if (isUsable(declared))
21
+ return { chars: Math.floor(declared), source: 'embedder' };
22
+ return { chars: DEFAULT_MAX_CHUNK_CHARS, source: 'default' };
23
+ }
24
+ function isUsable(value) {
25
+ return typeof value === 'number' && Number.isFinite(value) && value > 0;
26
+ }
27
+ /**
28
+ * The one sentence a run says out loud when something was clipped.
29
+ *
30
+ * It names the count (so the size of the hole is known), the ceiling AND where
31
+ * it came from (so the reader knows which knob is theirs to turn), and the two
32
+ * fixes — because "your index is silently incomplete" is useless without
33
+ * "here is the line to change".
34
+ */
35
+ export function truncationWarning(args) {
36
+ const { caller, count, total, noun, ceiling } = args;
37
+ const who = args.embedderId ? `'${args.embedderId}'` : 'the embedder';
38
+ const provenance = ceiling.source === 'explicit'
39
+ ? `the maxChunkChars you passed`
40
+ : ceiling.source === 'embedder'
41
+ ? `${who}'s declared maxInputChars`
42
+ : `the default — ${who} declares no maxInputChars`;
43
+ return (`${caller}: ${count} of ${total} ${noun}(s) are longer than the ${ceiling.chars}-character ` +
44
+ `input ceiling in effect (${provenance}), so they were embedded CLIPPED.\n` +
45
+ ` The vector represents only the opening of each one, while the FULL text is stored and ` +
46
+ `served as the passage — so retrieval cannot find wording that is plainly visible in the ` +
47
+ `block the model is shown. Nothing throws and nothing scores zero; the corpus is quietly ` +
48
+ `partially indexed.\n` +
49
+ ` Fix: ${args.resplitHint ?? "re-split smaller (lower the splitter's maxChars)"}, or raise ` +
50
+ `maxChunkChars if ${who} really reads more than ${ceiling.chars} characters.` +
51
+ (args.idsIn ? `\n The affected ids are in ${args.idsIn}.` : ''));
52
+ }
53
+ //# sourceMappingURL=inputCeiling.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inputCeiling.js","sourceRoot":"","sources":["../../../../src/memory/embedding/inputCeiling.ts"],"names":[],"mappings":"AAyCA;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,CAAC;AAY5C;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CACjC,QAA4B,EAC5B,QAAqD;IAErD,IAAI,QAAQ,CAAC,QAAQ,CAAC;QAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;IACnF,MAAM,QAAQ,GAAG,QAAQ,EAAE,aAAa,CAAC;IACzC,IAAI,QAAQ,CAAC,QAAQ,CAAC;QAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;IACnF,OAAO,EAAE,KAAK,EAAE,uBAAuB,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;AAC/D,CAAC;AAED,SAAS,QAAQ,CAAC,KAAyB;IACzC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC;AAC1E,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAyBjC;IACC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IACrD,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,cAAc,CAAC;IACtE,MAAM,UAAU,GACd,OAAO,CAAC,MAAM,KAAK,UAAU;QAC3B,CAAC,CAAC,8BAA8B;QAChC,CAAC,CAAC,OAAO,CAAC,MAAM,KAAK,UAAU;YAC/B,CAAC,CAAC,GAAG,GAAG,2BAA2B;YACnC,CAAC,CAAC,iBAAiB,GAAG,4BAA4B,CAAC;IACvD,OAAO,CACL,GAAG,MAAM,KAAK,KAAK,OAAO,KAAK,IAAI,IAAI,2BAA2B,OAAO,CAAC,KAAK,aAAa;QAC5F,4BAA4B,UAAU,qCAAqC;QAC3E,0FAA0F;QAC1F,0FAA0F;QAC1F,0FAA0F;QAC1F,sBAAsB;QACtB,WAAW,IAAI,CAAC,WAAW,IAAI,kDAAkD,aAAa;QAC9F,oBAAoB,GAAG,2BAA2B,OAAO,CAAC,KAAK,cAAc;QAC7E,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,+BAA+B,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CACjE,CAAC;AACJ,CAAC"}
@@ -1,4 +1,10 @@
1
1
  const DEFAULT_DIMENSIONS = 32;
2
+ /**
3
+ * Declared input ceiling (9.1.0). Not a model limit — there is no model. This
4
+ * embedder reads every character it is given, so the number is a practical
5
+ * bound (a megabyte of text) rather than a cliff.
6
+ */
7
+ const MOCK_MAX_INPUT_CHARS = 1_000_000;
2
8
  function charFrequency(text, dims) {
3
9
  const vec = new Array(dims).fill(0);
4
10
  for (let i = 0; i < text.length; i++) {
@@ -21,6 +27,13 @@ export function mockEmbedder(options = {}) {
21
27
  // index and a real one — which is a swap worth refusing, since a corpus
22
28
  // indexed by letter frequency and queried by meaning scores nothing.
23
29
  id: 'mock',
30
+ // Deliberately generous: this counts characters in a loop, so there is no
31
+ // window to fall off and nothing is ever clipped. It is declared anyway
32
+ // (rather than left absent) so a mock-first run does not report truncation
33
+ // that only the DEFAULT ceiling believes in — a warning about a limit the
34
+ // embedder does not have teaches the wrong lesson before the real embedder
35
+ // is swapped in.
36
+ maxInputChars: MOCK_MAX_INPUT_CHARS,
24
37
  async embed({ text }) {
25
38
  return charFrequency(text, dimensions);
26
39
  },
@@ -1 +1 @@
1
- {"version":3,"file":"mockEmbedder.js","sourceRoot":"","sources":["../../../../src/memory/embedding/mockEmbedder.ts"],"names":[],"mappings":"AAeA,MAAM,kBAAkB,GAAG,EAAE,CAAC;AAE9B,SAAS,aAAa,CAAC,IAAY,EAAE,IAAY;IAC/C,MAAM,GAAG,GAAG,IAAI,KAAK,CAAS,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC5C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAMD;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,UAA+B,EAAE;IAC5D,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,kBAAkB,CAAC;IAC5D,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,UAAU,IAAI,CAAC,EAAE,CAAC;QACrD,MAAM,IAAI,KAAK,CAAC,4DAA4D,UAAU,GAAG,CAAC,CAAC;IAC7F,CAAC;IAED,OAAO;QACL,UAAU;QACV,sEAAsE;QACtE,wEAAwE;QACxE,qEAAqE;QACrE,EAAE,EAAE,MAAM;QACV,KAAK,CAAC,KAAK,CAAC,EAAE,IAAI,EAAa;YAC7B,OAAO,aAAa,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QACzC,CAAC;QACD,KAAK,CAAC,UAAU,CAAC,EAAE,KAAK,EAAkB;YACxC,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;QAC9D,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"mockEmbedder.js","sourceRoot":"","sources":["../../../../src/memory/embedding/mockEmbedder.ts"],"names":[],"mappings":"AAeA,MAAM,kBAAkB,GAAG,EAAE,CAAC;AAE9B;;;;GAIG;AACH,MAAM,oBAAoB,GAAG,SAAS,CAAC;AAEvC,SAAS,aAAa,CAAC,IAAY,EAAE,IAAY;IAC/C,MAAM,GAAG,GAAG,IAAI,KAAK,CAAS,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC5C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAMD;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,UAA+B,EAAE;IAC5D,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,kBAAkB,CAAC;IAC5D,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,UAAU,IAAI,CAAC,EAAE,CAAC;QACrD,MAAM,IAAI,KAAK,CAAC,4DAA4D,UAAU,GAAG,CAAC,CAAC;IAC7F,CAAC;IAED,OAAO;QACL,UAAU;QACV,sEAAsE;QACtE,wEAAwE;QACxE,qEAAqE;QACrE,EAAE,EAAE,MAAM;QACV,0EAA0E;QAC1E,wEAAwE;QACxE,2EAA2E;QAC3E,0EAA0E;QAC1E,2EAA2E;QAC3E,iBAAiB;QACjB,aAAa,EAAE,oBAAoB;QACnC,KAAK,CAAC,KAAK,CAAC,EAAE,IAAI,EAAa;YAC7B,OAAO,aAAa,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QACzC,CAAC;QACD,KAAK,CAAC,UAAU,CAAC,EAAE,KAAK,EAAkB;YACxC,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;QAC9D,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -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
  /**
@@ -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
  }
@@ -52,13 +52,13 @@
52
52
  */
53
53
  import { flowChart } from 'footprintjs';
54
54
  import { decide } from 'footprintjs';
55
+ import { resolveChunkCeiling, truncationWarning } from '../memory/embedding/inputCeiling.js';
55
56
  import { assertServesVectors } from '../memory/store/capability.js';
56
57
  import { emitEmbedding } from '../memory/embedding/emitEmbedding.js';
57
58
  import { DEFAULT_CORPUS_IDENTITY } from '../lib/rag/defineRAG.js';
58
59
  import { loadDocuments } from './loadDocuments.js';
59
60
  import { splitDocuments } from './splitDocuments.js';
60
61
  import { byHeading } from './splitters/byHeading.js';
61
- const DEFAULT_MAX_CHUNK_CHARS = 2000;
62
62
  /**
63
63
  * Build and run the indexing chart.
64
64
  *
@@ -108,7 +108,12 @@ function compile(config) {
108
108
  const batchSize = Math.max(1, Math.floor(config.batchSize ?? 64));
109
109
  const maxBatches = Math.max(1, Math.floor(config.maxConcurrentBatches ?? 4));
110
110
  const attempts = Math.max(1, Math.floor(config.attempts ?? 3));
111
- const maxChunkChars = config.maxChunkChars ?? DEFAULT_MAX_CHUNK_CHARS;
111
+ // The ceiling comes from the embedder unless the caller stated one. The
112
+ // number lives where the knowledge is: an indexer's own default is a guess
113
+ // about a backend it has never met, and the safe guess (the smallest cliff
114
+ // any embedder might have) cuts every larger embedder short.
115
+ const ceiling = resolveChunkCeiling(config.maxChunkChars, config.embedder);
116
+ const maxChunkChars = ceiling.chars;
112
117
  const removeMissing = config.removeMissing ?? true;
113
118
  const startedAt = Date.now();
114
119
  const fingerprint = `${embedderId}@${config.embedder.dimensions}`;
@@ -309,6 +314,7 @@ function compile(config) {
309
314
  .addFunction('Report', (scope) => {
310
315
  // The report is a COMMIT, not just a return value. A later reader
311
316
  // asks the trace what this run did; nothing had to be saved.
317
+ const truncated = scope.truncated ?? [];
312
318
  scope.report = {
313
319
  discovered: scope.discoveredCount ?? 0,
314
320
  loaded: (scope.documents ?? []).length,
@@ -317,11 +323,29 @@ function compile(config) {
317
323
  skipped: (scope.toSkip ?? []).length,
318
324
  removed: scope.removedCount ?? 0,
319
325
  failed: scope.failed ?? [],
320
- truncated: scope.truncated ?? [],
326
+ truncated,
327
+ truncatedCount: truncated.length,
321
328
  embedderFingerprint: fingerprint,
322
329
  splitter: splitter.name,
323
330
  elapsedMs: Date.now() - startedAt,
324
331
  };
332
+ // Said OUT LOUD, once, at the end of the run — because an invisible
333
+ // failure is indistinguishable from success. The list has been in
334
+ // the report since 8.10.0 and nobody reads a report that says
335
+ // everything went fine; the corpus that is quietly missing a
336
+ // paragraph is discovered months later as "the model does not know
337
+ // that". One line, at the one moment the count is final.
338
+ if (truncated.length > 0) {
339
+ console.warn(truncationWarning({
340
+ caller: 'indexCorpus',
341
+ count: truncated.length,
342
+ total: (scope.chunks ?? []).length,
343
+ noun: 'chunk',
344
+ ceiling,
345
+ embedderId,
346
+ idsIn: "the returned report's `truncated` list",
347
+ }));
348
+ }
325
349
  }, 'report', 'File what this run did — the commit log IS the report')
326
350
  .build());
327
351
  }
@@ -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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"}
@@ -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.
@@ -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.js","sourceRoot":"","sources":["../../../../src/rag/splitters/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0DG;AACH,OAAO,EAAE,WAAW,EAA2B,MAAM,kBAAkB,CAAC;AACxE,OAAO,EAAE,SAAS,EAAyB,MAAM,gBAAgB,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAgC,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.js","sourceRoot":"","sources":["../../../../src/rag/splitters/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgFG;AACH,OAAO,EAAE,WAAW,EAA2B,MAAM,kBAAkB,CAAC;AACxE,OAAO,EAAE,SAAS,EAAyB,MAAM,gBAAgB,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAgC,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. */
@@ -32,8 +32,12 @@
32
32
  * involved while a user's conversation quietly stops existing.
33
33
  *
34
34
  * ── Resuming a CONVERSATION is a REPLAY, and that has a cost ─────────────────
35
- * A stored conversation is restored through `agent.resumeOnError(...)`, and this
36
- * is its caveat, stated here in the words the Agent states it in, because a
35
+ * A stored conversation is restored through `agent.run({ message, continueFrom })`
36
+ * — the public conversation door since 9.2.0. This composer used to assemble the
37
+ * continuation by hand (append the turn, rewrite `originalInput`, hand the result
38
+ * to `resumeOnError`); that hand-assembly IS the door now, so a server and a
39
+ * script continue a conversation the same way and the identity travels with it.
40
+ * The caveat below is stated here in the words the Agent states it in, because a
37
41
  * composition that hides the caveat of the thing it composes is worse than no
38
42
  * composition at all:
39
43
  *
@@ -219,7 +223,7 @@ async function standingAgent(options) {
219
223
  return;
220
224
  }
221
225
  const output = prior
222
- ? await runner.resumeOnError(continueConversation(prior, request.input), runOptions)
226
+ ? await runner.run({ message: request.input, continueFrom: prior }, runOptions)
223
227
  : await runner.run({ message: request.input }, runOptions);
224
228
  await deliver(output, runner, store, reply, sessionId);
225
229
  }
@@ -249,17 +253,37 @@ async function standingAgent(options) {
249
253
  if ((0, pause_js_1.isPaused)(output)) {
250
254
  const pending = describePause(output, sessionId);
251
255
  const conversation = sessionId === undefined ? undefined : runner.checkpoint();
252
- if (sessionId !== undefined && conversation) {
253
- await store.persist(sessionId, (0, envelope_js_1.toPausedEnvelope)({ checkpoint: output.checkpoint, conversation, pending }));
254
- if (reply.awaiting) {
255
- reply.awaiting(pending);
256
- return;
256
+ try {
257
+ if (sessionId !== undefined && conversation) {
258
+ await store.persist(sessionId, (0, envelope_js_1.toPausedEnvelope)({ checkpoint: output.checkpoint, conversation, pending }));
259
+ if (reply.awaiting) {
260
+ reply.awaiting(pending);
261
+ return;
262
+ }
257
263
  }
264
+ // Either there was nowhere to store it, or the host cannot describe a
265
+ // question. Both are refusals about THIS reply, not about the run.
266
+ reply.fail(new errors_js_1.PauseNotCarriedError(pending.tool, sessionId, conversation !== undefined));
267
+ return;
268
+ }
269
+ finally {
270
+ // ── OWNERSHIP MOVES HERE ────────────────────────────────────────
271
+ // A pause belongs to a SESSION, and this composer shares ONE Agent
272
+ // across every session. The Agent's own pending-question guard
273
+ // (9.2.0) is right for a script driving one instance and wrong here:
274
+ // the instance would go on holding session A's question, and session
275
+ // B's next message — a different conversation, a different person —
276
+ // would be refused on behalf of an answer B was never asked for.
277
+ //
278
+ // Once the pause is in the STORE, the store owns it: a later request
279
+ // for that session carrying `decision` continues it from exactly
280
+ // where it stopped, and nothing about that consults the instance. So
281
+ // the instance is released, here, at the moment ownership transfers.
282
+ // On the failure path above it is released for the opposite reason —
283
+ // the question could not be carried at all, and blocking every other
284
+ // session on one nobody can ever answer is strictly worse.
285
+ runner.abandonPause();
258
286
  }
259
- // Either there was nowhere to store it, or the host cannot describe a
260
- // question. Both are refusals about THIS reply, not about the run.
261
- reply.fail(new errors_js_1.PauseNotCarriedError(pending.tool, sessionId, conversation !== undefined));
262
- return;
263
287
  }
264
288
  if (sessionId !== undefined) {
265
289
  const conversation = runner.checkpoint();
@@ -328,21 +352,6 @@ async function standingAgent(options) {
328
352
  };
329
353
  }
330
354
  exports.standingAgent = standingAgent;
331
- /**
332
- * The stored conversation plus this turn's message.
333
- *
334
- * The new message has to be appended by hand: `resumeOnError` restores the
335
- * history it is given and the LLM stage reads that history directly, so a
336
- * message left out here is a message the model never sees.
337
- */
338
- function continueConversation(prior, input) {
339
- return {
340
- ...prior,
341
- history: [...prior.history, { role: 'user', content: input }],
342
- originalInput: { message: input },
343
- checkpointedAt: Date.now(),
344
- };
345
- }
346
355
  /**
347
356
  * Project a paused run into the part that is safe to hand back: the question,
348
357
  * never the state.
@@ -1 +1 @@
1
- {"version":3,"file":"standingAgent.js","sourceRoot":"","sources":["../../src/hosting/standingAgent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"standingAgent.js","sourceRoot":"","sources":["../../src/hosting/standingAgent.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -22,7 +22,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
22
22
  };
23
23
  Object.defineProperty(exports, "__esModule", { value: true });
24
24
  exports.foldedMessages = exports.DROP_NOTICE_PREFIX = exports.COMPACTED_FRAME_PREFIX = exports.CompactionUnmeasurableError = exports.AgentBuilder = exports.Agent = exports.buildAgentMessageApiChart = exports.LLMCallBuilder = exports.LLMCall = exports.selectCommentaryKey = exports.renderCommentary = exports.extractCommentaryVars = exports.extractAgentName = exports.defaultCommentaryTemplates = exports.CheckInRecorder = exports.minimalEvidenceAssembler = exports.standardEvidenceAssembler = exports.lexicalDriverScorer = exports.isCheckInDecision = exports.checkInDeclined = exports.checkInApproved = exports.ACT_KEYS = exports.actKeyFor = exports.LOOP_MOMENTS = exports.MessageDeniedError = exports.deny = exports.ask = exports.allow = exports.PauseAnswerRequiredError = exports.DecisionRequiredError = exports.pauseDemandsDecision = exports.isAskPause = exports.isCheckInPause = exports.isPaused = exports.isPauseRequest = exports.askHuman = exports.pauseHere = exports.makeRunId = exports.RunnerBase = exports.BASELINE_SOURCES = exports.ENGINEERED_SOURCES = exports.isBaselineSource = exports.isEngineeredSource = exports.contextEngineering = exports.COMPOSITION_KEYS = exports.milestoneFor = exports.stageRole = exports.isInjectionKey = exports.injectionKeyForSlot = exports.INJECTION_KEYS = void 0;
25
- exports.topK = exports.indexDocuments = exports.DEFAULT_CORPUS_IDENTITY = exports.defineRAG = exports.providerFromEnv = exports.Graph = exports.graph = exports.Workflow = exports.workflow = exports.LoopBuilder = exports.Loop = exports.ConditionalBuilder = exports.Conditional = exports.ParallelBuilder = exports.Parallel = exports.SequenceBuilder = exports.Sequence = exports.formatToolContractCheckup = exports.toolContractCheckup = exports.warnIfInvalidToolName = exports.assertValidToolName = exports.defineTool = exports.flowchartAsTool = exports.RunCheckpointError = exports.isSchemaCheckMessage = exports.SCHEMA_TOOL_NAME = exports.SCHEMA_CHECK_FRAME_PREFIX = exports.InvalidRunInputError = exports.applyOutputSchema = exports.OutputSchemaError = exports.tokenBudget = exports.summarizeOldest = exports.slidingWindow = exports.isDropNotice = exports.isCompactedSummary = exports.foldedSpanFor = void 0;
25
+ exports.topK = exports.indexDocuments = exports.DEFAULT_CORPUS_IDENTITY = exports.defineRAG = exports.providerFromEnv = exports.Graph = exports.graph = exports.Workflow = exports.workflow = exports.LoopBuilder = exports.Loop = exports.ConditionalBuilder = exports.Conditional = exports.ParallelBuilder = exports.Parallel = exports.SequenceBuilder = exports.Sequence = exports.formatToolContractCheckup = exports.toolContractCheckup = exports.warnIfInvalidToolName = exports.assertValidToolName = exports.defineTool = exports.flowchartAsTool = exports.RunInFlightError = exports.PendingQuestionError = exports.NoConversationError = exports.RunCheckpointError = exports.ConversationMismatchError = exports.isSchemaCheckMessage = exports.SCHEMA_TOOL_NAME = exports.SCHEMA_CHECK_FRAME_PREFIX = exports.InvalidRunInputError = exports.applyOutputSchema = exports.OutputSchemaError = exports.tokenBudget = exports.summarizeOldest = exports.slidingWindow = exports.isDropNotice = exports.isCompactedSummary = exports.foldedSpanFor = void 0;
26
26
  // Side-effect imports — auto-register v2.6+ cache strategies in the
27
27
  // strategy registry. Without these, only the wildcard NoOp is
28
28
  // registered and `Agent.create({ provider: browserAnthropic({...}) })`
@@ -216,7 +216,15 @@ Object.defineProperty(exports, "SCHEMA_CHECK_FRAME_PREFIX", { enumerable: true,
216
216
  Object.defineProperty(exports, "SCHEMA_TOOL_NAME", { enumerable: true, get: function () { return outputEnforcement_js_1.SCHEMA_TOOL_NAME; } });
217
217
  Object.defineProperty(exports, "isSchemaCheckMessage", { enumerable: true, get: function () { return outputEnforcement_js_1.isSchemaCheckMessage; } });
218
218
  var runCheckpoint_js_1 = require("./core/runCheckpoint.js");
219
+ Object.defineProperty(exports, "ConversationMismatchError", { enumerable: true, get: function () { return runCheckpoint_js_1.ConversationMismatchError; } });
219
220
  Object.defineProperty(exports, "RunCheckpointError", { enumerable: true, get: function () { return runCheckpoint_js_1.RunCheckpointError; } });
221
+ // The conversation refusals (9.2.0) — `instanceof`-able so a caller can tell
222
+ // "you are already running" from "somebody is still waiting on an answer" from
223
+ // "there is nothing to follow up on".
224
+ var conversation_js_1 = require("./core/conversation.js");
225
+ Object.defineProperty(exports, "NoConversationError", { enumerable: true, get: function () { return conversation_js_1.NoConversationError; } });
226
+ Object.defineProperty(exports, "PendingQuestionError", { enumerable: true, get: function () { return conversation_js_1.PendingQuestionError; } });
227
+ Object.defineProperty(exports, "RunInFlightError", { enumerable: true, get: function () { return conversation_js_1.RunInFlightError; } });
220
228
  var flowchartAsTool_js_1 = require("./core/flowchartAsTool.js");
221
229
  Object.defineProperty(exports, "flowchartAsTool", { enumerable: true, get: function () { return flowchartAsTool_js_1.flowchartAsTool; } });
222
230
  var tools_js_1 = require("./core/tools.js");