loopforge 2.0.0 → 2.6.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 (111) hide show
  1. package/README.md +7 -5
  2. package/dist/backends/interface.d.ts +4 -3
  3. package/dist/backends/interface.d.ts.map +1 -1
  4. package/dist/backends/interface.js +4 -1
  5. package/dist/backends/interface.js.map +1 -1
  6. package/dist/canonical-state.d.ts +23 -2
  7. package/dist/canonical-state.d.ts.map +1 -1
  8. package/dist/canonical-state.js +90 -6
  9. package/dist/canonical-state.js.map +1 -1
  10. package/dist/cli.d.ts.map +1 -1
  11. package/dist/cli.js +6 -2
  12. package/dist/cli.js.map +1 -1
  13. package/dist/enforcement-gate.d.ts +1 -1
  14. package/dist/enforcement-gate.d.ts.map +1 -1
  15. package/dist/enforcement-gate.js +86 -7
  16. package/dist/enforcement-gate.js.map +1 -1
  17. package/dist/engine.d.ts +3 -33
  18. package/dist/engine.d.ts.map +1 -1
  19. package/dist/engine.js +127 -343
  20. package/dist/engine.js.map +1 -1
  21. package/dist/evidence-provider.d.ts +38 -5
  22. package/dist/evidence-provider.d.ts.map +1 -1
  23. package/dist/evidence-provider.js +132 -46
  24. package/dist/evidence-provider.js.map +1 -1
  25. package/dist/index.d.ts +10 -12
  26. package/dist/index.d.ts.map +1 -1
  27. package/dist/index.js +6 -9
  28. package/dist/index.js.map +1 -1
  29. package/dist/interop.d.ts +5 -0
  30. package/dist/interop.d.ts.map +1 -1
  31. package/dist/interop.js +5 -0
  32. package/dist/interop.js.map +1 -1
  33. package/dist/loop-compiler.d.ts.map +1 -1
  34. package/dist/loop-compiler.js +515 -50
  35. package/dist/loop-compiler.js.map +1 -1
  36. package/dist/loop-extras-parser.d.ts +82 -0
  37. package/dist/loop-extras-parser.d.ts.map +1 -0
  38. package/dist/loop-extras-parser.js +217 -0
  39. package/dist/loop-extras-parser.js.map +1 -0
  40. package/dist/loop-store.d.ts +26 -4
  41. package/dist/loop-store.d.ts.map +1 -1
  42. package/dist/loop-store.js +118 -8
  43. package/dist/loop-store.js.map +1 -1
  44. package/dist/mcp/server.js +1 -1
  45. package/dist/mcp/session.d.ts +29 -6
  46. package/dist/mcp/session.d.ts.map +1 -1
  47. package/dist/mcp/session.js +187 -161
  48. package/dist/mcp/session.js.map +1 -1
  49. package/dist/mcp/tools.d.ts.map +1 -1
  50. package/dist/mcp/tools.js +33 -5
  51. package/dist/mcp/tools.js.map +1 -1
  52. package/dist/observability.d.ts +5 -36
  53. package/dist/observability.d.ts.map +1 -1
  54. package/dist/observability.js +9 -79
  55. package/dist/observability.js.map +1 -1
  56. package/dist/policy-metrics.d.ts +1 -0
  57. package/dist/policy-metrics.d.ts.map +1 -1
  58. package/dist/policy-metrics.js +2 -0
  59. package/dist/policy-metrics.js.map +1 -1
  60. package/dist/policy.d.ts +58 -8
  61. package/dist/policy.d.ts.map +1 -1
  62. package/dist/policy.js +25 -12
  63. package/dist/policy.js.map +1 -1
  64. package/dist/prompt-assembler.d.ts.map +1 -1
  65. package/dist/prompt-assembler.js +129 -4
  66. package/dist/prompt-assembler.js.map +1 -1
  67. package/dist/protocol.d.ts +118 -87
  68. package/dist/protocol.d.ts.map +1 -1
  69. package/dist/protocol.js +40 -30
  70. package/dist/protocol.js.map +1 -1
  71. package/dist/replay.d.ts +0 -1
  72. package/dist/replay.d.ts.map +1 -1
  73. package/dist/replay.js +1 -87
  74. package/dist/replay.js.map +1 -1
  75. package/dist/round-coordinator.d.ts +4 -6
  76. package/dist/round-coordinator.d.ts.map +1 -1
  77. package/dist/round-coordinator.js +75 -80
  78. package/dist/round-coordinator.js.map +1 -1
  79. package/dist/round-driver.d.ts +1 -0
  80. package/dist/round-driver.d.ts.map +1 -1
  81. package/dist/round-driver.js +2 -0
  82. package/dist/round-driver.js.map +1 -1
  83. package/dist/round-transaction.d.ts.map +1 -1
  84. package/dist/round-transaction.js +2 -22
  85. package/dist/round-transaction.js.map +1 -1
  86. package/dist/run.d.ts +51 -0
  87. package/dist/run.d.ts.map +1 -0
  88. package/dist/run.js +200 -0
  89. package/dist/run.js.map +1 -0
  90. package/dist/self-eval.d.ts +23 -0
  91. package/dist/self-eval.d.ts.map +1 -0
  92. package/dist/self-eval.js +151 -0
  93. package/dist/self-eval.js.map +1 -0
  94. package/dist/storage.d.ts +3 -2
  95. package/dist/storage.d.ts.map +1 -1
  96. package/dist/storage.js +70 -68
  97. package/dist/storage.js.map +1 -1
  98. package/dist/token-utils.d.ts +22 -0
  99. package/dist/token-utils.d.ts.map +1 -0
  100. package/dist/token-utils.js +46 -0
  101. package/dist/token-utils.js.map +1 -0
  102. package/dist/verification-gate.d.ts +17 -23
  103. package/dist/verification-gate.d.ts.map +1 -1
  104. package/dist/verification-gate.js +241 -135
  105. package/dist/verification-gate.js.map +1 -1
  106. package/loop_policy.json +21 -12
  107. package/package.json +2 -2
  108. package/dist/runtime.d.ts +0 -94
  109. package/dist/runtime.d.ts.map +0 -1
  110. package/dist/runtime.js +0 -718
  111. package/dist/runtime.js.map +0 -1
package/dist/runtime.d.ts DELETED
@@ -1,94 +0,0 @@
1
- /** LoopForge — Loop Runtime (v1.2).
2
- *
3
- * Event-driven loop driver that wraps the compilation engine with
4
- * heartbeat monitoring, timeout/stall detection, and graceful shutdown.
5
- *
6
- * Primary API:
7
- * import { run } from 'loopforge';
8
- * const result = await run({ task: '...', execute: myAgent });
9
- *
10
- * Advanced API:
11
- * const rt = new LoopRuntime(config);
12
- * rt.on('round:complete', (info) => console.log(info));
13
- * const result = await rt.start();
14
- */
15
- import { EventEmitter } from "node:events";
16
- import { RuntimeStatus, type RuntimeConfig, type RunResult } from "./protocol.js";
17
- export declare class LoopRuntime extends EventEmitter {
18
- private config;
19
- private engine;
20
- private roundDriver;
21
- private _status;
22
- private currentRound;
23
- private successTrajectory;
24
- private heartbeatTimer;
25
- private sigintHandler;
26
- private sigtermHandler;
27
- private lastSelfEval;
28
- private pendingVerificationFlags;
29
- private consecutiveRejections;
30
- /** Which enforcement check triggered the last rejection.
31
- * Only same-check rejections accumulate; a different check resets the counter. */
32
- private lastRejectionCheck;
33
- private pendingRejectionNotice;
34
- private roundSnapshot;
35
- private pauseTimestamp;
36
- private pauseRequested;
37
- private driverPromise;
38
- private pendingExternalContext;
39
- private roundStartTime;
40
- private lastProgressTime;
41
- private activeCtx;
42
- private activeAbortController;
43
- private timedOut;
44
- constructor(rawConfig: RuntimeConfig);
45
- get status(): RuntimeStatus;
46
- getCurrentRound(): number;
47
- getSuccessTrajectory(): boolean[];
48
- /** Start the loop. Returns when the loop terminates (task complete,
49
- * circuit breaker, max rounds, stalled, paused, or manual stop).
50
- * Can only be called from IDLE state. */
51
- start(): Promise<RunResult>;
52
- /** Start the one allowed loop driver and clear its ownership on exit. */
53
- private launchDriver;
54
- /** Internal loop driver. Called by both start() (isResume=false) and
55
- * resume() (isResume=true). When resuming, skips the currentRound=1
56
- * reset — the loop picks up exactly where it left off. */
57
- private _continue;
58
- /** Execute one round with a hard driver deadline. The AbortSignal lets a
59
- * cooperative executor stop early; the race guarantees the runtime itself
60
- * still resolves when an executor ignores cancellation. */
61
- private executeWithDeadline;
62
- private triggerTimeout;
63
- private triggerStall;
64
- /** Stop the loop gracefully. Safe to call from any thread/timer. */
65
- stop(): void;
66
- /** Pause the loop gracefully. Completes the current round, then suspends.
67
- * Safe to call from signal handlers or callbacks.
68
- * Only has effect when the loop is RUNNING. */
69
- pause(): void;
70
- /** Resume a paused loop. Re-enters the main loop from currentRound.
71
- * The loop continues exactly where it was suspended. */
72
- resume(): Promise<RunResult>;
73
- private buildCompileRequest;
74
- /** Adapt the typed compiler request to the engine envelope once for both
75
- * normal rounds and enforcement retry attempts. */
76
- private buildEngineCompileRequest;
77
- private startHeartbeat;
78
- private heartbeatTick;
79
- private stopHeartbeat;
80
- private registerSignalHandlers;
81
- private unregisterSignalHandlers;
82
- }
83
- /** Run a fully autonomous loop. Only `task` and `execute` are required.
84
- * All other configuration has sensible defaults from `loop_policy.json`.
85
- *
86
- * @example
87
- * const result = await run({
88
- * task: 'Audit ERC20 token for security vulnerabilities',
89
- * execute: async (prompt) => await myAgent.call(prompt),
90
- * });
91
- * // result: { success, stopReason, roundsCompleted, successTrajectory }
92
- */
93
- export declare function run(rawConfig: RuntimeConfig): Promise<RunResult>;
94
- //# sourceMappingURL=runtime.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAO3C,OAAO,EAEL,aAAa,EAab,KAAK,aAAa,EAClB,KAAK,SAAS,EAMf,MAAM,eAAe,CAAC;AAmFvB,qBAAa,WAAY,SAAQ,YAAY;IAC3C,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,OAAO,CAAqC;IACpD,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,iBAAiB,CAAiB;IAC1C,OAAO,CAAC,cAAc,CAA+C;IACrE,OAAO,CAAC,aAAa,CAA6B;IAClD,OAAO,CAAC,cAAc,CAA6B;IAGnD,OAAO,CAAC,YAAY,CAA+B;IACnD,OAAO,CAAC,wBAAwB,CAA0B;IAG1D,OAAO,CAAC,qBAAqB,CAAK;IAClC;uFACmF;IACnF,OAAO,CAAC,kBAAkB,CAAM;IAChC,OAAO,CAAC,sBAAsB,CAAM;IACpC,OAAO,CAAC,aAAa,CAAyC;IAG9D,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,aAAa,CAAmC;IAGxD,OAAO,CAAC,sBAAsB,CAAM;IAGpC,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,gBAAgB,CAAK;IAC7B,OAAO,CAAC,SAAS,CAA6B;IAC9C,OAAO,CAAC,qBAAqB,CAAgC;IAC7D,OAAO,CAAC,QAAQ,CAAS;gBAEb,SAAS,EAAE,aAAa;IAOpC,IAAI,MAAM,IAAI,aAAa,CAE1B;IAED,eAAe,IAAI,MAAM;IAIzB,oBAAoB,IAAI,OAAO,EAAE;IAMjC;;8CAE0C;IACpC,KAAK,IAAI,OAAO,CAAC,SAAS,CAAC;IAWjC,yEAAyE;IACzE,OAAO,CAAC,YAAY;IAepB;;+DAE2D;YAC7C,SAAS;IA2UvB;;gEAE4D;YAC9C,mBAAmB;IA0BjC,OAAO,CAAC,cAAc;IAYtB,OAAO,CAAC,YAAY;IAYpB,oEAAoE;IACpE,IAAI,IAAI,IAAI;IAiBZ;;oDAEgD;IAChD,KAAK,IAAI,IAAI;IAQb;6DACyD;IACnD,MAAM,IAAI,OAAO,CAAC,SAAS,CAAC;IAuBlC,OAAO,CAAC,mBAAmB;IAoD3B;uDACmD;IACnD,OAAO,CAAC,yBAAyB;IA0BjC,OAAO,CAAC,cAAc;IAatB,OAAO,CAAC,aAAa;IAiDrB,OAAO,CAAC,aAAa;IASrB,OAAO,CAAC,sBAAsB;IAgC9B,OAAO,CAAC,wBAAwB;CAUjC;AAMD;;;;;;;;;GASG;AACH,wBAAsB,GAAG,CAAC,SAAS,EAAE,aAAa,GAAG,OAAO,CAAC,SAAS,CAAC,CAGtE"}