loopforge 2.0.1 → 2.7.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 (92) hide show
  1. package/README.md +7 -5
  2. package/dist/canonical-state.d.ts +23 -2
  3. package/dist/canonical-state.d.ts.map +1 -1
  4. package/dist/canonical-state.js +90 -6
  5. package/dist/canonical-state.js.map +1 -1
  6. package/dist/cli.d.ts.map +1 -1
  7. package/dist/cli.js +5 -1
  8. package/dist/cli.js.map +1 -1
  9. package/dist/enforcement-gate.d.ts +13 -7
  10. package/dist/enforcement-gate.d.ts.map +1 -1
  11. package/dist/enforcement-gate.js +245 -15
  12. package/dist/enforcement-gate.js.map +1 -1
  13. package/dist/engine.d.ts +2 -10
  14. package/dist/engine.d.ts.map +1 -1
  15. package/dist/engine.js +56 -106
  16. package/dist/engine.js.map +1 -1
  17. package/dist/evidence-provider.d.ts.map +1 -1
  18. package/dist/evidence-provider.js +1 -8
  19. package/dist/evidence-provider.js.map +1 -1
  20. package/dist/index.d.ts +7 -7
  21. package/dist/index.d.ts.map +1 -1
  22. package/dist/index.js +5 -5
  23. package/dist/index.js.map +1 -1
  24. package/dist/loop-compiler.d.ts.map +1 -1
  25. package/dist/loop-compiler.js +511 -48
  26. package/dist/loop-compiler.js.map +1 -1
  27. package/dist/loop-store.d.ts.map +1 -1
  28. package/dist/loop-store.js +23 -2
  29. package/dist/loop-store.js.map +1 -1
  30. package/dist/mcp/server.js +1 -1
  31. package/dist/mcp/session.d.ts +2 -4
  32. package/dist/mcp/session.d.ts.map +1 -1
  33. package/dist/mcp/session.js +27 -50
  34. package/dist/mcp/session.js.map +1 -1
  35. package/dist/mcp/tools.d.ts.map +1 -1
  36. package/dist/mcp/tools.js +32 -5
  37. package/dist/mcp/tools.js.map +1 -1
  38. package/dist/observability.d.ts +5 -36
  39. package/dist/observability.d.ts.map +1 -1
  40. package/dist/observability.js +9 -79
  41. package/dist/observability.js.map +1 -1
  42. package/dist/policy-metrics.d.ts +1 -0
  43. package/dist/policy-metrics.d.ts.map +1 -1
  44. package/dist/policy-metrics.js +2 -0
  45. package/dist/policy-metrics.js.map +1 -1
  46. package/dist/policy.d.ts +64 -0
  47. package/dist/policy.d.ts.map +1 -1
  48. package/dist/policy.js +25 -4
  49. package/dist/policy.js.map +1 -1
  50. package/dist/prompt-assembler.d.ts.map +1 -1
  51. package/dist/prompt-assembler.js +104 -0
  52. package/dist/prompt-assembler.js.map +1 -1
  53. package/dist/protocol.d.ts +115 -12
  54. package/dist/protocol.d.ts.map +1 -1
  55. package/dist/protocol.js +40 -4
  56. package/dist/protocol.js.map +1 -1
  57. package/dist/replay.d.ts +0 -1
  58. package/dist/replay.d.ts.map +1 -1
  59. package/dist/replay.js +1 -87
  60. package/dist/replay.js.map +1 -1
  61. package/dist/round-coordinator.d.ts +0 -2
  62. package/dist/round-coordinator.d.ts.map +1 -1
  63. package/dist/round-coordinator.js +71 -76
  64. package/dist/round-coordinator.js.map +1 -1
  65. package/dist/round-driver.d.ts +1 -0
  66. package/dist/round-driver.d.ts.map +1 -1
  67. package/dist/round-driver.js +2 -0
  68. package/dist/round-driver.js.map +1 -1
  69. package/dist/round-transaction.d.ts.map +1 -1
  70. package/dist/round-transaction.js +2 -22
  71. package/dist/round-transaction.js.map +1 -1
  72. package/dist/run.d.ts +51 -0
  73. package/dist/run.d.ts.map +1 -0
  74. package/dist/run.js +200 -0
  75. package/dist/run.js.map +1 -0
  76. package/dist/self-eval.d.ts +0 -3
  77. package/dist/self-eval.d.ts.map +1 -1
  78. package/dist/self-eval.js +15 -18
  79. package/dist/self-eval.js.map +1 -1
  80. package/dist/storage.d.ts.map +1 -1
  81. package/dist/storage.js +13 -3
  82. package/dist/storage.js.map +1 -1
  83. package/dist/token-utils.d.ts +22 -0
  84. package/dist/token-utils.d.ts.map +1 -0
  85. package/dist/token-utils.js +46 -0
  86. package/dist/token-utils.js.map +1 -0
  87. package/dist/verification-gate.d.ts +1 -5
  88. package/dist/verification-gate.d.ts.map +1 -1
  89. package/dist/verification-gate.js +109 -58
  90. package/dist/verification-gate.js.map +1 -1
  91. package/loop_policy.json +20 -3
  92. package/package.json +2 -2
@@ -18,6 +18,7 @@
18
18
  */
19
19
  import { makeEnforcementResult } from "./protocol.js";
20
20
  import { entryRound } from "./verification-gate.js";
21
+ import { getPolicy } from "./policy.js";
21
22
  // ═══════════════════════════════════════════════════════════════════════════
22
23
  // Helpers
23
24
  // ═══════════════════════════════════════════════════════════════════════════
@@ -72,7 +73,9 @@ function enforceRecurringViolation(flags) {
72
73
  * v1.17: execution_evidence is now MANDATORY for structured self-evaluations.
73
74
  * Missing evidence when success=true → reject (agent must provide evidence).
74
75
  * Empty evidence (no files + no tests) when success=true → reject. */
75
- function enforceEmptySuccess(selfEval, _flags) {
76
+ function enforceEmptySuccess(selfEval, _flags, skipEvidenceRules = false) {
77
+ if (skipEvidenceRules)
78
+ return null; // Requires execution_evidence
76
79
  if (!selfEval.success)
77
80
  return null;
78
81
  const ev = selfEval.execution_evidence;
@@ -113,7 +116,9 @@ function enforceEmptySuccess(selfEval, _flags) {
113
116
  * Detected by checking progress_estimate deltas across vault entries.
114
117
  * First occurrence → REJECT (agent must change approach).
115
118
  * Second consecutive occurrence → TERMINATE (agent cannot recover). */
116
- function enforceProgressStall(_selfEval, _flags, currentRound, vaultEntries, consecutiveRejections) {
119
+ function enforceProgressStall(_selfEval, _flags, currentRound, vaultEntries, consecutiveRejections, skipEvidenceRules = false) {
120
+ if (skipEvidenceRules)
121
+ return null; // Requires execution_evidence
117
122
  // Need at least 3 rounds of history
118
123
  if (currentRound < 3)
119
124
  return null;
@@ -146,7 +151,7 @@ function enforceProgressStall(_selfEval, _flags, currentRound, vaultEntries, con
146
151
  const p1 = progressByRound.get(last3[0]);
147
152
  const p2 = progressByRound.get(last3[1]);
148
153
  const p3 = progressByRound.get(last3[2]);
149
- const stallThreshold = 0.05;
154
+ const stallThreshold = getPolicy().evolution.progress_stall_threshold;
150
155
  const delta12 = p2 - p1;
151
156
  const delta23 = p3 - p2;
152
157
  // Both deltas must be below threshold AND not near completion
@@ -155,7 +160,34 @@ function enforceProgressStall(_selfEval, _flags, currentRound, vaultEntries, con
155
160
  p3 < 0.95;
156
161
  if (!isStalling)
157
162
  return null;
158
- // If already rejected once for stall → escalate to terminate
163
+ const escalation = getPolicy().engine.enforcement_escalation_enabled;
164
+ // v2.7: When escalation is enabled, give one extra rejection round with a
165
+ // "Seek Human Guidance" notice before terminating. This lets the agent
166
+ // course-correct with human input rather than being killed immediately.
167
+ if (consecutiveRejections >= 2) {
168
+ return makeEnforcementResult({
169
+ action: "terminate",
170
+ reason: `Progress stalled for 3+ rounds ` +
171
+ `(${(p1 * 100).toFixed(0)}% → ${(p2 * 100).toFixed(0)}% → ${(p3 * 100).toFixed(0)}%) ` +
172
+ `and agent did not resolve after escalation. Terminating loop.`,
173
+ check: "progress_stall",
174
+ });
175
+ }
176
+ if (consecutiveRejections >= 1 && escalation) {
177
+ return makeEnforcementResult({
178
+ action: "reject",
179
+ reason: `Progress has stalled: ${(p1 * 100).toFixed(0)}% → ` +
180
+ `${(p2 * 100).toFixed(0)}% → ${(p3 * 100).toFixed(0)}% over the ` +
181
+ `last 3 rounds (delta < ${(stallThreshold * 100).toFixed(0)}% each round).`,
182
+ fix_instructions: "Your progress has been flat for 3 rounds. You must: " +
183
+ "(a) explain what is blocking progress, " +
184
+ "(b) propose a DIFFERENT technique or task decomposition, and " +
185
+ "(c) set a concrete, verifiable goal for the redo of this round. " +
186
+ "Do NOT repeat the same approach — it has not moved progress forward." +
187
+ buildEscalationNotice(),
188
+ check: "progress_stall",
189
+ });
190
+ }
159
191
  if (consecutiveRejections >= 1) {
160
192
  return makeEnforcementResult({
161
193
  action: "terminate",
@@ -178,10 +210,115 @@ function enforceProgressStall(_selfEval, _flags, currentRound, vaultEntries, con
178
210
  check: "progress_stall",
179
211
  });
180
212
  }
181
- /** R5: Two consecutive rejections → terminate.
182
- * The agent has been unable or unwilling to fix the identified issues
183
- * across two consecutive enforcement rejections. */
213
+ /** R5: Progress completely stalled (delta = 0) for N consecutive rounds.
214
+ * Stricter than R4 (which triggers on delta < 5%). R4 gives the agent a chance
215
+ * to change approach via reject; this rule fires when progress has been exactly
216
+ * flat — the agent is making zero forward motion.
217
+ *
218
+ * v2.7: When enforcement_escalation_enabled is true, the first occurrence
219
+ * issues a rejection with an escalation notice instead of terminating.
220
+ * Termination only happens on the second consecutive flatline detection.
221
+ *
222
+ * Uses the engine.max_circuit_breaker policy value as the lookback window. */
223
+ function enforceProgressStallTerminal(_selfEval, _flags, currentRound, vaultEntries, consecutiveRejections, skipEvidenceRules = false) {
224
+ if (skipEvidenceRules)
225
+ return null; // Requires execution_evidence
226
+ const breakerSize = getPolicy().engine.max_circuit_breaker;
227
+ if (currentRound < breakerSize || vaultEntries.length < breakerSize)
228
+ return null;
229
+ // Collect progress estimates for recent completed rounds.
230
+ const progressByRound = new Map();
231
+ for (const entry of vaultEntries) {
232
+ const rnd = entryRound(entry);
233
+ if (rnd < 1 || rnd >= currentRound)
234
+ continue;
235
+ const pe = entryProgress(entry);
236
+ if (pe !== null)
237
+ progressByRound.set(rnd, pe);
238
+ }
239
+ if (progressByRound.size < breakerSize)
240
+ return null;
241
+ const sortedRounds = [...progressByRound.keys()].sort((a, b) => a - b);
242
+ const recent = sortedRounds.slice(-breakerSize);
243
+ if (recent.length < breakerSize)
244
+ return null;
245
+ // Check that progress values are ALL identical (delta = 0).
246
+ // Use epsilon comparison — JSON round-trips can produce float drift
247
+ // (e.g. 0.3 vs 0.30000000000000004) that would defeat strict === .
248
+ const EPSILON = 1e-10;
249
+ const first = progressByRound.get(recent[0]);
250
+ const allFlat = recent.every((r) => Math.abs((progressByRound.get(r) ?? 0) - first) < EPSILON);
251
+ if (!allFlat || first >= 0.95)
252
+ return null;
253
+ const escalation = getPolicy().engine.enforcement_escalation_enabled;
254
+ // v2.7: When escalation is enabled, give one rejection round with a
255
+ // "Seek Human Guidance" notice before terminating.
256
+ if (consecutiveRejections >= 1) {
257
+ return makeEnforcementResult({
258
+ action: "terminate",
259
+ reason: `Progress has been completely flat at ${(first * 100).toFixed(0)}% ` +
260
+ `for ${breakerSize} consecutive rounds and agent did not resolve ` +
261
+ `after escalation. The agent is making zero forward motion.`,
262
+ check: "progress_stall_terminal",
263
+ });
264
+ }
265
+ if (escalation) {
266
+ return makeEnforcementResult({
267
+ action: "reject",
268
+ reason: `Progress has been completely flat at ${(first * 100).toFixed(0)}% ` +
269
+ `for ${breakerSize} consecutive rounds. The agent is making zero ` +
270
+ `forward motion.`,
271
+ fix_instructions: "Your progress has been exactly flat — you are making zero forward " +
272
+ "motion. You must: (a) explain what is fundamentally blocking you, " +
273
+ "(b) propose a radically different approach, and " +
274
+ "(c) set a concrete verifiable goal. " +
275
+ "Do NOT resubmit the same output." +
276
+ buildEscalationNotice(),
277
+ check: "progress_stall_terminal",
278
+ });
279
+ }
280
+ return makeEnforcementResult({
281
+ action: "terminate",
282
+ reason: `Progress has been completely flat at ${(first * 100).toFixed(0)}% ` +
283
+ `for ${breakerSize} consecutive rounds. The agent is making zero ` +
284
+ `forward motion and cannot recover.`,
285
+ check: "progress_stall_terminal",
286
+ });
287
+ }
288
+ /** R6: Two consecutive rejections → escalate (v2.7) or terminate.
289
+ *
290
+ * v2.7: When enforcement_escalation_enabled is true, the second consecutive
291
+ * rejection issues an escalated rejection with a "Seek Human Guidance" notice
292
+ * instead of terminating immediately. Termination occurs on the third
293
+ * consecutive rejection. When the flag is disabled, behavior is unchanged
294
+ * (terminate at ≥2 rejections). */
184
295
  function enforceMaxRejections(consecutiveRejections) {
296
+ const escalation = getPolicy().engine.enforcement_escalation_enabled;
297
+ if (escalation) {
298
+ if (consecutiveRejections >= 3) {
299
+ return makeEnforcementResult({
300
+ action: "terminate",
301
+ reason: `${consecutiveRejections} consecutive enforcement rejections for the ` +
302
+ `same issue without resolution. The agent has been unable to correct ` +
303
+ `the identified issue even after escalation. Terminating loop.`,
304
+ check: "max_rejections",
305
+ });
306
+ }
307
+ if (consecutiveRejections >= 2) {
308
+ return makeEnforcementResult({
309
+ action: "reject",
310
+ reason: `${consecutiveRejections} consecutive enforcement rejections for the ` +
311
+ `same issue without resolution.`,
312
+ fix_instructions: "You have been rejected multiple times for the same issue. " +
313
+ "You must address ALL items in the Evidence Gap section above. " +
314
+ "If you do not understand why you are being rejected, explain " +
315
+ "your confusion explicitly and ask for clarification." +
316
+ buildEscalationNotice(),
317
+ check: "max_rejections",
318
+ });
319
+ }
320
+ return null;
321
+ }
185
322
  if (consecutiveRejections < 2)
186
323
  return null;
187
324
  return makeEnforcementResult({
@@ -191,6 +328,86 @@ function enforceMaxRejections(consecutiveRejections) {
191
328
  check: "max_rejections",
192
329
  });
193
330
  }
331
+ /** R7: Agent declared a next_action but did something unrelated.
332
+ * First occurrence → reject (agent must explain the gap or realign).
333
+ * Second consecutive → terminate (agent cannot/will not follow its own plan). */
334
+ function enforceIntentDrift(flags, consecutiveRejections) {
335
+ const flag = flags.find((f) => f.check === "intent_drift");
336
+ if (!flag)
337
+ return null;
338
+ if (consecutiveRejections >= 1) {
339
+ return makeEnforcementResult({
340
+ action: "terminate",
341
+ reason: `Agent was warned about intent-action drift but continues to do ` +
342
+ `work unrelated to its declared next_action. The agent cannot or ` +
343
+ `will not follow its own plan — terminating loop.`,
344
+ check: "intent_drift",
345
+ });
346
+ }
347
+ return makeEnforcementResult({
348
+ action: "reject",
349
+ reason: flag.detail,
350
+ fix_instructions: "Your declared next_action from the previous round does not match " +
351
+ "what you actually did this round. You must either: " +
352
+ "(a) explain why you pivoted and what you learned, or " +
353
+ "(b) redo this round and do what you said you would do. " +
354
+ "If you intentionally changed direction, update your objective_refinement " +
355
+ "and set a new next_action that reflects the new plan.",
356
+ check: "intent_drift",
357
+ });
358
+ }
359
+ // ═══════════════════════════════════════════════════════════════════════════
360
+ // Escalation notice builder (v2.7)
361
+ // ═══════════════════════════════════════════════════════════════════════════
362
+ /** Build an escalation notice urging the agent to seek human guidance.
363
+ *
364
+ * Appended to fix_instructions when a rule would otherwise terminate.
365
+ * Gives the agent one final chance to correct course with human input
366
+ * before the loop is irreversibly stopped. */
367
+ function buildEscalationNotice() {
368
+ return [
369
+ "",
370
+ "### 🆘 Escalation — Seek Human Guidance",
371
+ "",
372
+ "You have been rejected multiple times for the same issue. " +
373
+ "Before retrying, pause and ask a human for help:",
374
+ "",
375
+ "1. Explain what you've tried so far and why each approach failed.",
376
+ "2. Ask the human for specific guidance on what to try next.",
377
+ "3. Incorporate their feedback before re-submitting your self-evaluation.",
378
+ "",
379
+ "⚠️ If this round is rejected again, the loop will be **terminated**. " +
380
+ "Do NOT resubmit without meaningful changes.",
381
+ ].join("\n");
382
+ }
383
+ // ═══════════════════════════════════════════════════════════════════════════
384
+ // Diagnostic gap builder (v2.7)
385
+ // ═══════════════════════════════════════════════════════════════════════════
386
+ /** Build a diagnostic gap section from verification flags.
387
+ *
388
+ * Translates each error/warn-level VerificationFlag into a concrete
389
+ * claim-vs-evidence mismatch statement. Info-level flags are excluded
390
+ * because they are purely informational and do not represent gaps.
391
+ *
392
+ * Returns an empty string when there are no diagnostic flags to report. */
393
+ function buildDiagnosticGap(flags) {
394
+ const diagnosticFlags = flags.filter((f) => f.severity === "error" || f.severity === "warn");
395
+ if (diagnosticFlags.length === 0)
396
+ return "";
397
+ const lines = [
398
+ "### Evidence Gap",
399
+ "",
400
+ "The enforcement gate detected mismatches between your claims and the evidence. " +
401
+ "Each item below shows a specific discrepancy — address every one before re-submitting.",
402
+ "",
403
+ ];
404
+ for (const flag of diagnosticFlags) {
405
+ const icon = flag.severity === "error" ? "🚫" : "⚠️";
406
+ lines.push(`- ${icon} **[${flag.check}]** \`${flag.field}\` — ${flag.detail}`);
407
+ }
408
+ lines.push("");
409
+ return lines.join("\n");
410
+ }
194
411
  // ═══════════════════════════════════════════════════════════════════════════
195
412
  // Main entry point
196
413
  // ═══════════════════════════════════════════════════════════════════════════
@@ -206,16 +423,18 @@ function enforceMaxRejections(consecutiveRejections) {
206
423
  * @param consecutiveRejections How many consecutive rounds have already been rejected.
207
424
  * Starts at 0; increments on each reject; resets on accept.
208
425
  */
209
- export function enforceRound(selfEval, verifyResult, currentRound, vaultEntries, consecutiveRejections = 0) {
426
+ export function enforceRound(selfEval, verifyResult, currentRound, vaultEntries, consecutiveRejections = 0, skipEvidenceRules = false) {
210
427
  const { flags } = verifyResult;
211
428
  // Run enforcement rules in priority order.
212
429
  // Earlier rules take higher precedence.
213
430
  const rules = [
214
431
  () => enforceSuccessWithRemainingCriteria(flags),
215
432
  () => enforceRecurringViolation(flags),
216
- () => enforceEmptySuccess(selfEval, flags),
217
- () => enforceProgressStall(selfEval, flags, currentRound, vaultEntries, consecutiveRejections),
433
+ () => enforceEmptySuccess(selfEval, flags, skipEvidenceRules),
434
+ () => enforceProgressStall(selfEval, flags, currentRound, vaultEntries, consecutiveRejections, skipEvidenceRules),
435
+ () => enforceProgressStallTerminal(selfEval, flags, currentRound, vaultEntries, consecutiveRejections, skipEvidenceRules),
218
436
  () => enforceMaxRejections(consecutiveRejections),
437
+ () => enforceIntentDrift(flags, consecutiveRejections),
219
438
  ];
220
439
  for (const rule of rules) {
221
440
  const result = rule();
@@ -234,11 +453,17 @@ export function enforceRound(selfEval, verifyResult, currentRound, vaultEntries,
234
453
  * The prompt clearly states the round was rejected, why, what the agent
235
454
  * must fix, and that the agent must redo the SAME round (not advance).
236
455
  *
237
- * @param currentRound The round number that was rejected (NOT incremented).
238
- * @param task The original loop task description.
239
- * @param enforceResult The enforcement decision with reason and fix instructions.
240
- */
241
- export function buildRejectionPrompt(currentRound, task, enforceResult) {
456
+ * v2.7: Accepts verificationFlags to render a diagnostic "Evidence Gap"
457
+ * section. Each error/warn flag becomes a concrete claim-vs-evidence
458
+ * mismatch statement so the agent knows exactly what to correct rather
459
+ * than retrying blindly.
460
+ *
461
+ * @param currentRound The round number that was rejected (NOT incremented).
462
+ * @param task The original loop task description.
463
+ * @param enforceResult The enforcement decision with reason and fix instructions.
464
+ * @param verificationFlags The verification gate's findings for this round.
465
+ * Used to build the Evidence Gap section. */
466
+ export function buildRejectionPrompt(currentRound, task, enforceResult, verificationFlags = []) {
242
467
  const lines = [
243
468
  "## ⛔ Round " + currentRound + " — REJECTED",
244
469
  "",
@@ -250,6 +475,11 @@ export function buildRejectionPrompt(currentRound, task, enforceResult) {
250
475
  enforceResult.reason,
251
476
  "",
252
477
  ];
478
+ // v2.7: Diagnostic gap — show the agent exactly what doesn't match.
479
+ const gap = buildDiagnosticGap(verificationFlags);
480
+ if (gap) {
481
+ lines.push(gap);
482
+ }
253
483
  if (enforceResult.fix_instructions) {
254
484
  lines.push("### Required Fix");
255
485
  lines.push("");
@@ -1 +1 @@
1
- {"version":3,"file":"enforcement-gate.js","sourceRoot":"","sources":["../src/enforcement-gate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"enforcement-gate.js","sourceRoot":"","sources":["../src/enforcement-gate.ts"],"names":[],"mappings":"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"}
package/dist/engine.d.ts CHANGED
@@ -8,7 +8,7 @@
8
8
  import type { VaultBackend } from "./backends/interface.js";
9
9
  import type { LoopStore } from "./loop-store.js";
10
10
  import { type AgentLoopResult, type LoopForgeRequest, type SelfEvaluation, type SessionState } from "./protocol.js";
11
- export { parseExecutionEvidence, parseCriterionRevisions, parseWorkerResults, extractSelfEvaluation, buildSelfEvaluation, heuristicSelfEvaluation, } from "./self-eval.js";
11
+ export { parseExecutionEvidence, parseCriterionRevisions, parseWorkerResults, extractSelfEvaluation, buildSelfEvaluation, } from "./self-eval.js";
12
12
  /** A single sub-agent delegation record (v1.9 — AgentTool mode). */
13
13
  export interface DelegationEntry {
14
14
  index: number;
@@ -21,19 +21,12 @@ export interface DelegationEntry {
21
21
  }
22
22
  export interface EngineMetrics {
23
23
  vaultWriteErrors: number;
24
- vaultWriteTimeouts: number;
25
- vaultWriteBytes: number;
26
- silentAnalysisErrors: number;
27
- hydrateCacheMisses: number;
28
- feedbackBufferFlushes: number;
29
- feedbackBufferMaxSize: number;
30
24
  sessionStart: number;
31
25
  }
32
26
  export declare class LoopForgeEngine {
33
27
  state: SessionState | null;
34
28
  private backend;
35
29
  private metrics;
36
- private feedbackWriteBuffer;
37
30
  lastTask: string | null;
38
31
  constructor(storeOrBackend?: LoopStore | VaultBackend);
39
32
  private resolveBackend;
@@ -43,7 +36,7 @@ export declare class LoopForgeEngine {
43
36
  getMetrics(): EngineMetrics;
44
37
  private ensureInit;
45
38
  private persistFeedbackToVault;
46
- flushFeedbackBuffer(): number;
39
+ private buildFeedbackEntry;
47
40
  private persistLoopLineage;
48
41
  /** Record sub-agent delegations for this round into the vault.
49
42
  * Written as a lightweight journal entry so the main agent's rolling
@@ -61,7 +54,6 @@ export declare class LoopForgeEngine {
61
54
  invokeLoopCompile(request: LoopForgeRequest, hydrateResults?: Record<string, unknown> | null, options?: {
62
55
  persistLineage?: boolean;
63
56
  }): AgentLoopResult;
64
- shouldBreak(): boolean;
65
57
  }
66
58
  export declare function createEngine(store?: LoopStore): LoopForgeEngine;
67
59
  //# sourceMappingURL=engine.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAAE,YAAY,EAAc,MAAM,yBAAyB,CAAC;AAExE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EASL,KAAK,eAAe,EAIpB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,YAAY,EAElB,MAAM,eAAe,CAAC;AAWvB,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,kBAAkB,EAClB,qBAAqB,EACrB,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,gBAAgB,CAAC;AAMxB,oEAAoE;AACpE,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,OAAO,CAAC;IACjB,qBAAqB,EAAE,MAAM,EAAE,CAAC;CACjC;AAED,MAAM,WAAW,aAAa;IAC5B,gBAAgB,EAAE,MAAM,CAAC;IACzB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,YAAY,EAAE,MAAM,CAAC;CACtB;AAmBD,qBAAa,eAAe;IAC1B,KAAK,EAAE,YAAY,GAAG,IAAI,CAAQ;IAClC,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,OAAO,CAA8B;IAC7C,OAAO,CAAC,mBAAmB,CAAoB;IAC/C,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAQ;gBAEnB,cAAc,CAAC,EAAE,SAAS,GAAG,YAAY;IAQrD,OAAO,CAAC,cAAc;IAStB,iFAAiF;IACjF,UAAU,IAAI,YAAY;IAI1B,6EAA6E;IAC7E,UAAU,IAAI,aAAa;IAO3B,OAAO,CAAC,UAAU;IAelB,OAAO,CAAC,sBAAsB;IAkB9B,mBAAmB,IAAI,MAAM;IA8D7B,OAAO,CAAC,kBAAkB;IA8D1B;;yEAEqE;IACrE,gBAAgB,CACd,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,eAAe,EAAE,GACzB,IAAI;IAwCP,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IA2DlE,cAAc,CACZ,OAAO,EAAE,gBAAgB,EACzB,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAC/C,eAAe;IAmFlB;;;;;gEAK4D;IAC5D,YAAY,CACV,QAAQ,EAAE,cAAc,EACxB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACzC,OAAO;IAyHV,iBAAiB,CACf,OAAO,EAAE,gBAAgB,EACzB,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,EAC/C,OAAO,GAAE;QAAE,cAAc,CAAC,EAAE,OAAO,CAAA;KAAO,GACzC,eAAe;IA0IlB,WAAW,IAAI,OAAO;CAkBvB;AAMD,wBAAgB,YAAY,CAC1B,KAAK,CAAC,EAAE,SAAS,GAChB,eAAe,CAEjB"}
1
+ {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAAE,YAAY,EAAc,MAAM,yBAAyB,CAAC;AAExE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EASL,KAAK,eAAe,EAIpB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,YAAY,EAElB,MAAM,eAAe,CAAC;AAWvB,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,kBAAkB,EAClB,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,gBAAgB,CAAC;AAMxB,oEAAoE;AACpE,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,OAAO,CAAC;IACjB,qBAAqB,EAAE,MAAM,EAAE,CAAC;CACjC;AAED,MAAM,WAAW,aAAa;IAC5B,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;CACtB;AAaD,qBAAa,eAAe;IAC1B,KAAK,EAAE,YAAY,GAAG,IAAI,CAAQ;IAClC,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,OAAO,CAA8B;IAC7C,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAQ;gBAEnB,cAAc,CAAC,EAAE,SAAS,GAAG,YAAY;IAQrD,OAAO,CAAC,cAAc;IAStB,iFAAiF;IACjF,UAAU,IAAI,YAAY;IAI1B,6EAA6E;IAC7E,UAAU,IAAI,aAAa;IAO3B,OAAO,CAAC,UAAU;IAelB,OAAO,CAAC,sBAAsB;IAgB9B,OAAO,CAAC,kBAAkB;IAqC1B,OAAO,CAAC,kBAAkB;IA8D1B;;yEAEqE;IACrE,gBAAgB,CACd,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,eAAe,EAAE,GACzB,IAAI;IAwCP,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IA2DlE,cAAc,CACZ,OAAO,EAAE,gBAAgB,EACzB,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAC/C,eAAe;IAyElB;;;;;gEAK4D;IAC5D,YAAY,CACV,QAAQ,EAAE,cAAc,EACxB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACzC,OAAO;IAqHV,iBAAiB,CACf,OAAO,EAAE,gBAAgB,EACzB,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,EAC/C,OAAO,GAAE;QAAE,cAAc,CAAC,EAAE,OAAO,CAAA;KAAO,GACzC,eAAe;CAiJnB;AAMD,wBAAgB,YAAY,CAC1B,KAAK,CAAC,EAAE,SAAS,GAChB,eAAe,CAEjB"}