matryoshka-rlm 0.2.30 → 0.2.32

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 (48) hide show
  1. package/README.md +97 -0
  2. package/dist/adapters/nucleus.d.ts.map +1 -1
  3. package/dist/adapters/nucleus.js +52 -55
  4. package/dist/adapters/nucleus.js.map +1 -1
  5. package/dist/engine/handle-session.d.ts +19 -0
  6. package/dist/engine/handle-session.d.ts.map +1 -1
  7. package/dist/engine/handle-session.js +2 -0
  8. package/dist/engine/handle-session.js.map +1 -1
  9. package/dist/engine/nucleus-engine.d.ts +24 -0
  10. package/dist/engine/nucleus-engine.d.ts.map +1 -1
  11. package/dist/engine/nucleus-engine.js +15 -2
  12. package/dist/engine/nucleus-engine.js.map +1 -1
  13. package/dist/fsm/rlm-states.d.ts +31 -0
  14. package/dist/fsm/rlm-states.d.ts.map +1 -1
  15. package/dist/fsm/rlm-states.js +246 -7
  16. package/dist/fsm/rlm-states.js.map +1 -1
  17. package/dist/lattice-mcp-server.d.ts +7 -1
  18. package/dist/lattice-mcp-server.d.ts.map +1 -1
  19. package/dist/lattice-mcp-server.js +123 -2
  20. package/dist/lattice-mcp-server.js.map +1 -1
  21. package/dist/logic/lc-interpreter.d.ts.map +1 -1
  22. package/dist/logic/lc-interpreter.js +6 -1
  23. package/dist/logic/lc-interpreter.js.map +1 -1
  24. package/dist/logic/lc-parser.d.ts.map +1 -1
  25. package/dist/logic/lc-parser.js +129 -1
  26. package/dist/logic/lc-parser.js.map +1 -1
  27. package/dist/logic/lc-solver.d.ts +66 -0
  28. package/dist/logic/lc-solver.d.ts.map +1 -1
  29. package/dist/logic/lc-solver.js +352 -4
  30. package/dist/logic/lc-solver.js.map +1 -1
  31. package/dist/logic/type-inference.d.ts.map +1 -1
  32. package/dist/logic/type-inference.js +8 -0
  33. package/dist/logic/type-inference.js.map +1 -1
  34. package/dist/logic/types.d.ts +118 -2
  35. package/dist/logic/types.d.ts.map +1 -1
  36. package/dist/persistence/handle-registry.d.ts +4 -1
  37. package/dist/persistence/handle-registry.d.ts.map +1 -1
  38. package/dist/persistence/handle-registry.js +17 -8
  39. package/dist/persistence/handle-registry.js.map +1 -1
  40. package/dist/persistence/session-db.d.ts +13 -0
  41. package/dist/persistence/session-db.d.ts.map +1 -1
  42. package/dist/persistence/session-db.js +36 -4
  43. package/dist/persistence/session-db.js.map +1 -1
  44. package/dist/rlm.d.ts +51 -1
  45. package/dist/rlm.d.ts.map +1 -1
  46. package/dist/rlm.js +209 -6
  47. package/dist/rlm.js.map +1 -1
  48. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"nucleus-engine.js","sourceRoot":"","sources":["../../src/engine/nucleus-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nucleus-engine.js","sourceRoot":"","sources":["../../src/engine/nucleus-engine.ts"],"names":[],"mappings":"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"}
@@ -56,6 +56,33 @@ export interface RLMContext {
56
56
  lastMeaningfulOutput: string;
57
57
  lastResultCount: number;
58
58
  previousResultCount: number;
59
+ maxTimeoutMs?: number;
60
+ maxTokens?: number;
61
+ maxErrors?: number;
62
+ startTime: number;
63
+ totalTokens: number;
64
+ consecutiveErrors: number;
65
+ compactionThresholdChars?: number;
66
+ compactionCount: number;
67
+ /**
68
+ * Number of consecutive compaction failures (e.g., the summarize
69
+ * llm call threw). Once this hits the cap, we stop attempting
70
+ * compaction for the rest of the run — otherwise a failing
71
+ * summarize call would loop on every turn since the threshold
72
+ * check never advances. Per project rule (correctness >
73
+ * performance): better to let the run hit its other limits
74
+ * cleanly than to spin in the compaction loop forever.
75
+ */
76
+ compactionFailures: number;
77
+ /**
78
+ * Phase 5 — most recent meaningful solver result, formatted as a
79
+ * string. Populated unconditionally after every successful solver
80
+ * call (not gated by the same heuristics as
81
+ * `lastMeaningfulOutput`, which is filtered for stuck-pattern
82
+ * detection). Used by `formatAbort` so a limit-triggered exit
83
+ * always surfaces the best work-in-progress instead of "(none)".
84
+ */
85
+ bestPartialAnswer: string;
59
86
  result: string | null;
60
87
  }
61
88
  export declare function buildRLMSpec(): FSMSpec<RLMContext>;
@@ -71,5 +98,9 @@ export declare function createInitialContext(opts: {
71
98
  sessionId: string;
72
99
  maxTurns: number;
73
100
  log: (msg: string) => void;
101
+ maxTimeoutMs?: number;
102
+ maxTokens?: number;
103
+ maxErrors?: number;
104
+ compactionThresholdChars?: number;
74
105
  }): RLMContext;
75
106
  //# sourceMappingURL=rlm-states.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"rlm-states.d.ts","sourceRoot":"","sources":["../../src/fsm/rlm-states.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACnE,OAAO,KAAK,EAAE,OAAO,EAAS,MAAM,cAAc,CAAC;AASnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAIlD,MAAM,WAAW,UAAU;IAEzB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,YAAY,CAAC;IACtB,SAAS,EAAE,UAAU,CAAC;IACtB,WAAW,EAAE,WAAW,CAAC;IACzB,UAAU,CAAC,EAAE,mBAAmB,CAAC;IACjC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAG3B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC3E,cAAc,EAAE,QAAQ,CAAC;IACzB;;;;;;;;OAQG;IACH,uBAAuB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAG7C,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,UAAU,EAAE,OAAO,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IACtD,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAG1F,YAAY,EAAE,OAAO,CAAC;IACtB,qBAAqB,EAAE,OAAO,CAAC;IAC/B,sBAAsB,EAAE,OAAO,CAAC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,eAAe,EAAE,MAAM,CAAC;IACxB,mBAAmB,EAAE,MAAM,CAAC;IAG5B,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AA0lBD,wBAAgB,YAAY,IAAI,OAAO,CAAC,UAAU,CAAC,CAsDlD;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE;IACzC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,YAAY,CAAC;IACtB,SAAS,EAAE,UAAU,CAAC;IACtB,WAAW,EAAE,WAAW,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,mBAAmB,CAAC;IACjC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CAC5B,GAAG,UAAU,CAuCb"}
1
+ {"version":3,"file":"rlm-states.d.ts","sourceRoot":"","sources":["../../src/fsm/rlm-states.ts"],"names":[],"mappings":"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"}
@@ -71,10 +71,18 @@ function expandFinalVar(answer, bindings) {
71
71
  // through this helper.
72
72
  if (!answer.includes("FINAL_VAR("))
73
73
  return answer;
74
- return answer.replace(FINAL_VAR_REGEX, (match, name) => {
74
+ return answer.replace(FINAL_VAR_REGEX, (_match, name) => {
75
75
  if (!bindings.has(name)) {
76
- // Unknown binding: pass through so the error is visible.
77
- return match;
76
+ // Unknown binding: surface a clear error string instead of
77
+ // the literal `FINAL_VAR(name)` so callers (and the user)
78
+ // can DETECT the failure. Silent pass-through let an
79
+ // unresolved marker flow through as if it were an answer
80
+ // — a real correctness bug for child→parent FINAL_VAR
81
+ // round-trips. Per project rule: correctness > performance.
82
+ const available = [...bindings.keys()].slice(0, 8).join(", ");
83
+ const more = bindings.size > 8 ? `, ...+${bindings.size - 8} more` : "";
84
+ return (`[FINAL_VAR error: unknown binding "${name}". ` +
85
+ `Available: ${available || "(none)"}${more}]`);
78
86
  }
79
87
  const value = bindings.get(name);
80
88
  let serialized;
@@ -120,18 +128,188 @@ function verifyAndReturnResult(result, constraint, log) {
120
128
  feedback: `Result "${resultStr}" violates output constraints. Re-examine the data and try again.`,
121
129
  };
122
130
  }
131
+ /**
132
+ * Phase 5 — render a partial-answer abort string. The format is
133
+ * "[aborted: REASON DETAIL]\n\nBest partial answer:\n<content>" so
134
+ * a parent rlm_query receives a single string it can either inline
135
+ * or detect via the "[aborted:" prefix. Per project rule
136
+ * (correctness > performance): never silently swallow completed
137
+ * work — the partial answer is always surfaced when present.
138
+ */
139
+ function formatAbort(reason, detail, ctx) {
140
+ const partial = ctx.bestPartialAnswer || ctx.lastMeaningfulOutput || "(none)";
141
+ return `[aborted: ${reason} ${detail}]\n\nBest partial answer:\n${partial}`;
142
+ }
143
+ /**
144
+ * Phase 6 — render the prompt the FSM would send to the LLM right
145
+ * now. Used to measure prompt size for compaction decisions before
146
+ * the actual handleQueryLLM build step. Kept in sync with that
147
+ * builder by literally being the same join.
148
+ */
149
+ function renderPrompt(history) {
150
+ return history.map((h) => `${h.role.toUpperCase()}: ${h.content}`).join("\n\n");
151
+ }
152
+ /**
153
+ * Phase 6 — summarize turns 2..N into a single assistant message
154
+ * and trim the history to [system, first user, summary, latest
155
+ * user-feedback turn]. Stashes the full pre-compaction history as
156
+ * the `_compaction_trace` solver binding so a follow-up
157
+ * `FINAL_VAR(_compaction_trace)` can retrieve it.
158
+ *
159
+ * Re-entrant via `compactionCount`: the binding name carries the
160
+ * count when there are multiple events
161
+ * (`_compaction_trace_2`, etc.) so a third compaction doesn't
162
+ * destroy the previously stashed trace.
163
+ *
164
+ * Heuristic: keep the most recent ASSISTANT response and any user
165
+ * feedback that came AFTER it untouched, so the LLM still sees the
166
+ * latest action and result on the next turn. Earlier turns are
167
+ * folded into the summary.
168
+ */
169
+ async function compactHistory(ctx) {
170
+ if (ctx.history.length < 4)
171
+ return; // nothing useful to compact
172
+ // Stash the full pre-compaction history first so it can be
173
+ // recovered later. Render as a string for FINAL_VAR consumption.
174
+ const traceText = ctx.history
175
+ .map((h) => `[${h.role}] ${h.content}`)
176
+ .join("\n---\n");
177
+ const stashName = ctx.compactionCount === 0
178
+ ? "_compaction_trace"
179
+ : `_compaction_trace_${ctx.compactionCount + 1}`;
180
+ ctx.solverBindings.set(stashName, traceText);
181
+ // Prepare the summarization prompt. We send the FULL prior
182
+ // history wrapped in an instruction asking for a tight summary
183
+ // that preserves intermediate values + binding names, so the
184
+ // post-compaction LLM can reference earlier work.
185
+ const historyText = ctx.history
186
+ .slice(2) // skip system + initial user (kept verbatim)
187
+ .map((h) => `[${h.role}] ${h.content}`)
188
+ .join("\n");
189
+ const summarizePrompt = "Summarize your progress so far. Include: " +
190
+ "(1) which steps/sub-tasks you completed; " +
191
+ "(2) any concrete intermediate results (counts, matches, " +
192
+ "binding names like RESULTS or _N) — preserve these exactly; " +
193
+ "(3) what your next action should be. " +
194
+ "Be concise (1-3 paragraphs). Conversation:\n" +
195
+ historyText;
196
+ ctx.log(`[Compaction #${ctx.compactionCount + 1}] firing — history is ${historyText.length} chars`);
197
+ let summary;
198
+ try {
199
+ summary = await ctx.llmClient(summarizePrompt);
200
+ }
201
+ catch (err) {
202
+ const msg = err instanceof Error ? err.message : String(err);
203
+ ctx.log(`[Compaction] summarization failed: ${msg} — skipping compaction`);
204
+ // Roll back the stash; if we couldn't summarize, leaving the
205
+ // binding around could mislead.
206
+ ctx.solverBindings.delete(stashName);
207
+ ctx.compactionFailures++;
208
+ return;
209
+ }
210
+ // Replace history[2..N] with the summary. Keep system + initial
211
+ // user verbatim. Future turns build on this trimmed shape.
212
+ const system = ctx.history[0];
213
+ const initialUser = ctx.history[1];
214
+ ctx.history = [
215
+ system,
216
+ initialUser,
217
+ {
218
+ role: "assistant",
219
+ content: `Summary (after compaction #${ctx.compactionCount + 1}):\n${summary}`,
220
+ },
221
+ {
222
+ role: "user",
223
+ content: "The conversation above has been compacted. " +
224
+ "Continue from the summary. Do NOT repeat completed work; " +
225
+ "the binding names and intermediate values mentioned in the " +
226
+ "summary are still available via the solver bindings. " +
227
+ "Your next action:",
228
+ },
229
+ ];
230
+ ctx.compactionCount++;
231
+ }
123
232
  // ===== STATE HANDLERS =====
124
233
  async function handleQueryLLM(ctx) {
125
234
  ctx.turn++;
126
235
  ctx.log(`\n${"─".repeat(50)}`);
127
236
  ctx.log(`[Turn ${ctx.turn}/${ctx.maxTurns}] Querying LLM...`);
128
- const prompt = ctx.history.map((h) => `${h.role.toUpperCase()}: ${h.content}`).join("\n\n");
237
+ // Phase 5 pre-call limit checks. Hitting any limit terminates
238
+ // the loop with a partial-answer abort string. The check runs
239
+ // BEFORE the LLM call so we don't waste a round-trip after the
240
+ // ceiling is crossed. Limits skipped when not configured (back-
241
+ // compat).
242
+ if (ctx.maxTimeoutMs !== undefined) {
243
+ const elapsed = Date.now() - ctx.startTime;
244
+ if (elapsed > ctx.maxTimeoutMs) {
245
+ ctx.result = formatAbort("timeout", `${elapsed}ms of ${ctx.maxTimeoutMs}ms`, ctx);
246
+ ctx.log(`[Turn ${ctx.turn}] Aborting — timeout (${elapsed}ms)`);
247
+ return ctx;
248
+ }
249
+ }
250
+ if (ctx.maxTokens !== undefined && ctx.totalTokens > ctx.maxTokens) {
251
+ ctx.result = formatAbort("tokens", `${ctx.totalTokens} of ${ctx.maxTokens} chars`, ctx);
252
+ ctx.log(`[Turn ${ctx.turn}] Aborting — token cap (${ctx.totalTokens})`);
253
+ return ctx;
254
+ }
255
+ if (ctx.maxErrors !== undefined &&
256
+ ctx.consecutiveErrors >= ctx.maxErrors) {
257
+ ctx.result = formatAbort("errors", `${ctx.consecutiveErrors} consecutive`, ctx);
258
+ ctx.log(`[Turn ${ctx.turn}] Aborting — error cap (${ctx.consecutiveErrors} consecutive)`);
259
+ return ctx;
260
+ }
261
+ // Phase 6 — check whether the next prompt would exceed the
262
+ // compaction threshold. When it would, summarize prior turns
263
+ // first so the actual LLM call sees a smaller history. Skipped
264
+ // when the threshold is unset (back-compat) OR when prior
265
+ // compaction attempts have failed too many times — letting the
266
+ // run hit other limits cleanly is better than spinning forever
267
+ // in a failing compaction loop (a failing summarize call
268
+ // doesn't shrink history, so the threshold check would re-fire
269
+ // on every turn).
270
+ const COMPACTION_FAILURE_CAP = 2;
271
+ if (ctx.compactionThresholdChars !== undefined &&
272
+ ctx.compactionFailures < COMPACTION_FAILURE_CAP) {
273
+ const projected = renderPrompt(ctx.history);
274
+ if (projected.length > ctx.compactionThresholdChars) {
275
+ await compactHistory(ctx);
276
+ }
277
+ }
278
+ const prompt = renderPrompt(ctx.history);
279
+ ctx.totalTokens += prompt.length;
129
280
  let response;
281
+ let timeoutHandle;
130
282
  try {
131
- response = await ctx.llmClient(prompt);
283
+ // Phase 5 — race the LLM call against the remaining timeout
284
+ // budget. Without this, a hung call stays hung past the cap;
285
+ // the pre-call check at the top of the NEXT turn never runs
286
+ // because the FSM is blocked on this await. Only triggers when
287
+ // maxTimeoutMs is configured.
288
+ if (ctx.maxTimeoutMs !== undefined) {
289
+ const remaining = ctx.maxTimeoutMs - (Date.now() - ctx.startTime);
290
+ if (remaining <= 0) {
291
+ ctx.result = formatAbort("timeout", `${ctx.maxTimeoutMs}ms`, ctx);
292
+ return ctx;
293
+ }
294
+ response = await Promise.race([
295
+ ctx.llmClient(prompt),
296
+ new Promise((_, reject) => {
297
+ timeoutHandle = setTimeout(() => reject(new Error("__RLM_TIMEOUT__")), remaining);
298
+ }),
299
+ ]);
300
+ }
301
+ else {
302
+ response = await ctx.llmClient(prompt);
303
+ }
132
304
  }
133
305
  catch (err) {
134
306
  const errMsg = err instanceof Error ? err.message : String(err);
307
+ if (errMsg === "__RLM_TIMEOUT__") {
308
+ const elapsed = Date.now() - ctx.startTime;
309
+ ctx.result = formatAbort("timeout", `${elapsed}ms of ${ctx.maxTimeoutMs}ms`, ctx);
310
+ ctx.log(`[Turn ${ctx.turn}] Aborting — timeout hit during LLM call`);
311
+ return ctx;
312
+ }
135
313
  ctx.log(`[Turn ${ctx.turn}] LLM error: ${errMsg}`);
136
314
  ctx.history.push({
137
315
  role: "user",
@@ -140,6 +318,11 @@ async function handleQueryLLM(ctx) {
140
318
  ctx.noCodeCount++;
141
319
  return ctx;
142
320
  }
321
+ finally {
322
+ if (timeoutHandle !== undefined)
323
+ clearTimeout(timeoutHandle);
324
+ }
325
+ ctx.totalTokens += response.length;
143
326
  if (!response) {
144
327
  ctx.result = `Error: LLM returned empty response at turn ${ctx.turn}`;
145
328
  return ctx;
@@ -164,6 +347,12 @@ function handleParseResponse(ctx) {
164
347
  if (!ctx.extractedCode) {
165
348
  ctx.log(`[Turn ${ctx.turn}] No Nucleus command extracted`);
166
349
  ctx.noCodeCount++;
350
+ // Phase 5 — a response with no extractable code counts toward
351
+ // the consecutive-error budget. Without this, an LLM stuck
352
+ // emitting prose instead of S-expressions would never trip
353
+ // maxErrors and would just run to maxTurns. Reset is wherever
354
+ // a successful execution clears consecutiveErrors.
355
+ ctx.consecutiveErrors++;
167
356
  return ctx;
168
357
  }
169
358
  // Check for <<<FINAL>>> inside code block
@@ -215,6 +404,10 @@ function handleValidate(ctx) {
215
404
  if (!lcResult.success || !lcResult.term) {
216
405
  ctx.log(`[Turn ${ctx.turn}] LC parse error: ${lcResult.error}`);
217
406
  ctx.parseError = lcResult.error || "Parse error";
407
+ // Phase 5 — parse errors count toward the consecutive-error
408
+ // budget. Without this, an LLM stuck in a syntax-error loop
409
+ // would never trip maxErrors.
410
+ ctx.consecutiveErrors++;
218
411
  ctx.history.push({
219
412
  role: "user",
220
413
  content: ctx.adapter.getErrorFeedback(ctx.parseError, ctx.extractedCode),
@@ -413,6 +606,7 @@ function handleAnalyze(ctx) {
413
606
  ctx.log(`[Turn ${ctx.turn}] Error: ${result.error}`);
414
607
  feedback += `Error: ${result.error}\n`;
415
608
  ctx.lastExecutionHadError = true;
609
+ ctx.consecutiveErrors++;
416
610
  if (ctx.ragManager) {
417
611
  ctx.ragManager.recordFailure({
418
612
  query: ctx.query,
@@ -426,6 +620,7 @@ function handleAnalyze(ctx) {
426
620
  }
427
621
  else {
428
622
  ctx.lastExecutionHadError = false;
623
+ ctx.consecutiveErrors = 0;
429
624
  }
430
625
  if (result.value !== undefined && result.value !== null) {
431
626
  let resultStr;
@@ -438,6 +633,40 @@ function handleAnalyze(ctx) {
438
633
  }
439
634
  ctx.log(`[Turn ${ctx.turn}] Result: ${resultStr}`);
440
635
  feedback += `Result: ${truncate(resultStr)}\n`;
636
+ // Phase 5 — record this as the best-known partial answer.
637
+ // Updated on every meaningful solver call so a limit-hit abort
638
+ // always has work to surface. Selectivity rules:
639
+ // - Empty arrays: skip (not meaningful as a fallback).
640
+ // - Strings: only adopt if we have nothing yet OR the new
641
+ // string is substantially longer. Avoids overwriting a
642
+ // useful array with a sub-RLM's "Max turns reached" /
643
+ // "[aborted: …]" failure message that would otherwise
644
+ // replace it as the most-recent result.
645
+ // - Anything else (arrays w/ content, numbers, structured
646
+ // objects): adopt unconditionally.
647
+ const MAX_PARTIAL = 10_000;
648
+ const truncated = resultStr.length > MAX_PARTIAL
649
+ ? resultStr.slice(0, MAX_PARTIAL) + "\n…[truncated]"
650
+ : resultStr;
651
+ const isEmptyArray = Array.isArray(result.value) && result.value.length === 0;
652
+ // Strings starting with "[aborted:" came back from a child
653
+ // session whose own resource limits tripped. Treating that as
654
+ // a "best partial" pollutes the parent's surface — the child's
655
+ // failure narrative replaces useful parent-side work like a
656
+ // grep result. Skip those strings entirely so the parent keeps
657
+ // whatever genuine progress it had.
658
+ const isAbortString = typeof result.value === "string" && result.value.startsWith("[aborted:");
659
+ if (!isEmptyArray && !isAbortString) {
660
+ if (typeof result.value === "string") {
661
+ if (ctx.bestPartialAnswer.length === 0 ||
662
+ truncated.length > ctx.bestPartialAnswer.length * 1.5) {
663
+ ctx.bestPartialAnswer = truncated;
664
+ }
665
+ }
666
+ else {
667
+ ctx.bestPartialAnswer = truncated;
668
+ }
669
+ }
441
670
  }
442
671
  const classifierGuidance = generateClassifierGuidance(result.logs, ctx.query);
443
672
  if (classifierGuidance) {
@@ -479,8 +708,8 @@ function handleAnalyze(ctx) {
479
708
  });
480
709
  const bindingsBlock = lines.join("\n");
481
710
  const prefix = skipped > 0
482
- ? `\n\nBindings available for next turn (${skipped} older entries omitted):\n`
483
- : `\n\nBindings available for next turn:\n`;
711
+ ? `\n\nBindings (${skipped} older omitted):\n`
712
+ : `\n\nBindings:\n`;
484
713
  feedback += `${prefix}${bindingsBlock}`;
485
714
  }
486
715
  ctx.history.push({ role: "user", content: feedback });
@@ -652,6 +881,16 @@ export function createInitialContext(opts) {
652
881
  lastMeaningfulOutput: "",
653
882
  lastResultCount: 0,
654
883
  previousResultCount: 0,
884
+ maxTimeoutMs: opts.maxTimeoutMs,
885
+ maxTokens: opts.maxTokens,
886
+ maxErrors: opts.maxErrors,
887
+ startTime: Date.now(),
888
+ totalTokens: 0,
889
+ consecutiveErrors: 0,
890
+ bestPartialAnswer: "",
891
+ compactionThresholdChars: opts.compactionThresholdChars,
892
+ compactionCount: 0,
893
+ compactionFailures: 0,
655
894
  result: null,
656
895
  };
657
896
  }
@@ -1 +1 @@
1
- {"version":3,"file":"rlm-states.js","sourceRoot":"","sources":["../../src/fsm/rlm-states.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rlm-states.js","sourceRoot":"","sources":["../../src/fsm/rlm-states.ts"],"names":[],"mappings":"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"}
@@ -21,5 +21,11 @@
21
21
  * 3. lattice_expand - Get full data when you need to inspect results
22
22
  * 4. lattice_close - End session
23
23
  */
24
- export {};
24
+ /**
25
+ * Generate a pending-request ID. Uses crypto.randomUUID for the random
26
+ * portion so concurrent suspensions in the same millisecond can't collide
27
+ * — the previous `Date.now() + 6 base36 chars` form had ~36 bits of
28
+ * entropy and was a real collision risk under load.
29
+ */
30
+ export declare function makePendingId(prefix: "q" | "b"): string;
25
31
  //# sourceMappingURL=lattice-mcp-server.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"lattice-mcp-server.d.ts","sourceRoot":"","sources":["../src/lattice-mcp-server.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;;;;;;GAqBG"}
1
+ {"version":3,"file":"lattice-mcp-server.d.ts","sourceRoot":"","sources":["../src/lattice-mcp-server.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAmHH;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG,GAAG,MAAM,CAEvD"}