loopforge 2.11.0 → 3.0.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 (166) hide show
  1. package/README.md +145 -128
  2. package/dist/canonical-event-writer.d.ts +20 -0
  3. package/dist/canonical-event-writer.d.ts.map +1 -0
  4. package/dist/canonical-event-writer.js +131 -0
  5. package/dist/canonical-event-writer.js.map +1 -0
  6. package/dist/canonical-state.d.ts +20 -16
  7. package/dist/canonical-state.d.ts.map +1 -1
  8. package/dist/canonical-state.js +170 -61
  9. package/dist/canonical-state.js.map +1 -1
  10. package/dist/cli.d.ts.map +1 -1
  11. package/dist/cli.js +11 -10
  12. package/dist/cli.js.map +1 -1
  13. package/dist/cognitive-governance.d.ts +48 -0
  14. package/dist/cognitive-governance.d.ts.map +1 -0
  15. package/dist/cognitive-governance.js +226 -0
  16. package/dist/cognitive-governance.js.map +1 -0
  17. package/dist/compiler-subgoals.d.ts +7 -0
  18. package/dist/compiler-subgoals.d.ts.map +1 -0
  19. package/dist/compiler-subgoals.js +93 -0
  20. package/dist/compiler-subgoals.js.map +1 -0
  21. package/dist/derive-id.d.ts +12 -0
  22. package/dist/derive-id.d.ts.map +1 -0
  23. package/dist/derive-id.js +31 -0
  24. package/dist/derive-id.js.map +1 -0
  25. package/dist/evidence-provider.d.ts +23 -21
  26. package/dist/evidence-provider.d.ts.map +1 -1
  27. package/dist/evidence-provider.js +34 -74
  28. package/dist/evidence-provider.js.map +1 -1
  29. package/dist/generate-schema.js +90 -2
  30. package/dist/generate-schema.js.map +1 -1
  31. package/dist/index.d.ts +22 -19
  32. package/dist/index.d.ts.map +1 -1
  33. package/dist/index.js +15 -16
  34. package/dist/index.js.map +1 -1
  35. package/dist/loop-compiler.d.ts +1 -1
  36. package/dist/loop-compiler.d.ts.map +1 -1
  37. package/dist/loop-compiler.js +250 -337
  38. package/dist/loop-compiler.js.map +1 -1
  39. package/dist/loop-extras-parser.d.ts +2 -2
  40. package/dist/loop-extras-parser.d.ts.map +1 -1
  41. package/dist/loop-extras-parser.js +2 -2
  42. package/dist/loop-extras-parser.js.map +1 -1
  43. package/dist/loop-store.d.ts +20 -58
  44. package/dist/loop-store.d.ts.map +1 -1
  45. package/dist/loop-store.js +232 -309
  46. package/dist/loop-store.js.map +1 -1
  47. package/dist/mcp/server.d.ts +3 -3
  48. package/dist/mcp/server.d.ts.map +1 -1
  49. package/dist/mcp/server.js +83 -13
  50. package/dist/mcp/server.js.map +1 -1
  51. package/dist/mcp/session-projection.d.ts +5 -0
  52. package/dist/mcp/session-projection.d.ts.map +1 -0
  53. package/dist/mcp/session-projection.js +18 -0
  54. package/dist/mcp/session-projection.js.map +1 -0
  55. package/dist/mcp/session-queue.d.ts +3 -0
  56. package/dist/mcp/session-queue.d.ts.map +1 -0
  57. package/dist/mcp/session-queue.js +18 -0
  58. package/dist/mcp/session-queue.js.map +1 -0
  59. package/dist/mcp/session-types.d.ts +72 -0
  60. package/dist/mcp/session-types.d.ts.map +1 -0
  61. package/dist/mcp/session-types.js +2 -0
  62. package/dist/mcp/session-types.js.map +1 -0
  63. package/dist/mcp/session.d.ts +49 -93
  64. package/dist/mcp/session.d.ts.map +1 -1
  65. package/dist/mcp/session.js +544 -245
  66. package/dist/mcp/session.js.map +1 -1
  67. package/dist/mcp/tools.d.ts +26 -1
  68. package/dist/mcp/tools.d.ts.map +1 -1
  69. package/dist/mcp/tools.js +399 -274
  70. package/dist/mcp/tools.js.map +1 -1
  71. package/dist/policy-metrics.d.ts +17 -1
  72. package/dist/policy-metrics.d.ts.map +1 -1
  73. package/dist/policy-metrics.js +164 -1
  74. package/dist/policy-metrics.js.map +1 -1
  75. package/dist/policy.d.ts +34 -18
  76. package/dist/policy.d.ts.map +1 -1
  77. package/dist/policy.js +113 -18
  78. package/dist/policy.js.map +1 -1
  79. package/dist/prompt-assembler.d.ts +5 -3
  80. package/dist/prompt-assembler.d.ts.map +1 -1
  81. package/dist/prompt-assembler.js +126 -77
  82. package/dist/prompt-assembler.js.map +1 -1
  83. package/dist/prompt-policy.d.ts +8 -1
  84. package/dist/prompt-policy.d.ts.map +1 -1
  85. package/dist/prompt-policy.js +26 -8
  86. package/dist/prompt-policy.js.map +1 -1
  87. package/dist/protocol.d.ts +232 -192
  88. package/dist/protocol.d.ts.map +1 -1
  89. package/dist/protocol.js +15 -100
  90. package/dist/protocol.js.map +1 -1
  91. package/dist/replay.d.ts +11 -3
  92. package/dist/replay.d.ts.map +1 -1
  93. package/dist/replay.js +51 -14
  94. package/dist/replay.js.map +1 -1
  95. package/dist/round-commit-store.d.ts +12 -0
  96. package/dist/round-commit-store.d.ts.map +1 -0
  97. package/dist/round-commit-store.js +13 -0
  98. package/dist/round-commit-store.js.map +1 -0
  99. package/dist/round-coordinator.d.ts +25 -18
  100. package/dist/round-coordinator.d.ts.map +1 -1
  101. package/dist/round-coordinator.js +83 -71
  102. package/dist/round-coordinator.js.map +1 -1
  103. package/dist/round-driver.d.ts +14 -10
  104. package/dist/round-driver.d.ts.map +1 -1
  105. package/dist/round-driver.js +9 -13
  106. package/dist/round-driver.js.map +1 -1
  107. package/dist/round-gate.d.ts +31 -0
  108. package/dist/round-gate.d.ts.map +1 -0
  109. package/dist/round-gate.js +259 -0
  110. package/dist/round-gate.js.map +1 -0
  111. package/dist/round-recovery.d.ts +17 -0
  112. package/dist/round-recovery.d.ts.map +1 -0
  113. package/dist/round-recovery.js +117 -0
  114. package/dist/round-recovery.js.map +1 -0
  115. package/dist/round-report.d.ts +16 -0
  116. package/dist/round-report.d.ts.map +1 -0
  117. package/dist/round-report.js +401 -0
  118. package/dist/round-report.js.map +1 -0
  119. package/dist/round-transaction.d.ts +19 -12
  120. package/dist/round-transaction.d.ts.map +1 -1
  121. package/dist/round-transaction.js +102 -88
  122. package/dist/round-transaction.js.map +1 -1
  123. package/dist/runtime-services.d.ts +59 -0
  124. package/dist/runtime-services.d.ts.map +1 -0
  125. package/dist/runtime-services.js +460 -0
  126. package/dist/runtime-services.js.map +1 -0
  127. package/dist/storage.d.ts +3 -9
  128. package/dist/storage.d.ts.map +1 -1
  129. package/dist/storage.js +6 -17
  130. package/dist/storage.js.map +1 -1
  131. package/dist/token-utils.d.ts +9 -8
  132. package/dist/token-utils.d.ts.map +1 -1
  133. package/dist/token-utils.js +50 -10
  134. package/dist/token-utils.js.map +1 -1
  135. package/dist/vault-format.d.ts +4 -0
  136. package/dist/vault-format.d.ts.map +1 -0
  137. package/dist/vault-format.js +4 -0
  138. package/dist/vault-format.js.map +1 -0
  139. package/dist/vault-types.d.ts +24 -0
  140. package/dist/vault-types.d.ts.map +1 -0
  141. package/dist/vault-types.js +2 -0
  142. package/dist/vault-types.js.map +1 -0
  143. package/loop_policy.json +10 -12
  144. package/loopforge-policy.json +340 -0
  145. package/package.json +12 -6
  146. package/skills/perception/SKILL.md +199 -164
  147. package/dist/backends/interface.d.ts +0 -39
  148. package/dist/backends/interface.d.ts.map +0 -1
  149. package/dist/backends/interface.js +0 -6
  150. package/dist/backends/interface.js.map +0 -1
  151. package/dist/enforcement-gate.d.ts +0 -71
  152. package/dist/enforcement-gate.d.ts.map +0 -1
  153. package/dist/enforcement-gate.js +0 -744
  154. package/dist/enforcement-gate.js.map +0 -1
  155. package/dist/engine.d.ts +0 -59
  156. package/dist/engine.d.ts.map +0 -1
  157. package/dist/engine.js +0 -596
  158. package/dist/engine.js.map +0 -1
  159. package/dist/self-eval.d.ts +0 -23
  160. package/dist/self-eval.d.ts.map +0 -1
  161. package/dist/self-eval.js +0 -181
  162. package/dist/self-eval.js.map +0 -1
  163. package/dist/verification-gate.d.ts +0 -56
  164. package/dist/verification-gate.d.ts.map +0 -1
  165. package/dist/verification-gate.js +0 -563
  166. package/dist/verification-gate.js.map +0 -1
@@ -2,91 +2,21 @@
2
2
  *
3
3
  * Each McpSession = one complete multi-round loop.
4
4
  * SessionManager holds Map<sessionId, McpSession> and drives
5
- * the advance() cycle: extract → feedback → check stop → compile next.
5
+ * the advance() cycle: validate report → commit round event → check stop → compile next.
6
6
  */
7
- import { LoopForgeEngine } from "../engine.js";
8
- import type { VaultBackend } from "../backends/interface.js";
9
7
  import type { LoopStore } from "../loop-store.js";
10
- import type { SelfEvaluation, ExternalContextProvider, LoopTerminalSink } from "../protocol.js";
11
- import type { ProviderSnapshot } from "../evidence-provider.js";
12
- import type { RoundTransactionSnapshot } from "../round-transaction.js";
8
+ import type { ExternalContextProvider, LoopTerminalSink } from "../protocol.js";
9
+ import { type PolicyMetricsSnapshot } from "../policy-metrics.js";
13
10
  import type { SessionStateStore } from "../storage.js";
14
- export interface McpSession {
15
- sessionId: string;
16
- loopId: string;
17
- task: string;
18
- engine: LoopForgeEngine;
19
- currentRound: number;
20
- maxRounds: number;
21
- successTrajectory: boolean[];
22
- status: "running" | "stopped" | "stalled" | "paused";
23
- createdAt: number;
24
- /** Previous round's validated SelfEvaluation — used by verification gate. */
25
- lastSelfEval?: SelfEvaluation;
26
- consecutiveRejections: number;
27
- /** Which enforcement check triggered the last rejection.
28
- * Only same-check rejections accumulate toward the max. */
29
- lastRejectionCheck: string;
30
- /** v2.12: Consecutive rounds where the agent used drift_clarification
31
- * to waive R7 rejection. Reset to 0 when a round has no intent_drift.
32
- * Terminates the loop when exceeding policy.drift_clarification_max_streak. */
33
- driftClarificationStreak: number;
34
- /** v2.13: Files changed in skipped rounds during the last backtrack.
35
- * The next round's verification gate checks that the agent did not
36
- * continue working on stale files without restoring the workspace.
37
- * Cleared after the first successful post-backtrack round. */
38
- backtrackSkippedFiles: string[];
39
- /** Evidence baseline captured immediately before the agent receives a prompt. */
40
- evidenceBaseline?: ProviderSnapshot[];
41
- /** Schema-versioned transaction for the prompt currently held by the agent. */
42
- roundSnapshot?: RoundTransactionSnapshot;
43
- /** Persisted prompt prevents resume from compiling the same round twice. */
44
- currentPrompt?: string | null;
45
- currentLevel?: string;
46
- /** Structured warnings from the most recent compile — preferred over regex parsing. */
47
- currentWarnings?: string[];
48
- }
49
- export interface McpSessionSummary {
50
- sessionId: string;
51
- loopId: string;
52
- round: number;
53
- status: "running" | "stopped" | "stalled" | "paused";
54
- }
55
- export interface StartInput {
56
- task: string;
57
- loopId?: string;
58
- maxRounds?: number;
59
- domain?: string;
60
- planSource?: string;
61
- constraints?: string[];
62
- }
63
- export interface AdvanceResult {
64
- sessionId: string;
65
- round: number;
66
- /** Stable logical identity; unchanged when enforcement retries the round. */
67
- roundId?: string;
68
- prompt: string | null;
69
- stopReason?: string;
70
- /** v2.0.1: Human-readable context for why the loop stopped.
71
- * Provides facts the agent can use to decide its next action,
72
- * without LoopForge prescribing a specific behavior. */
73
- stopDetail?: string;
74
- level?: string;
75
- roundSuccess?: boolean;
76
- warnings?: string[];
77
- /** v1.13: Enforcement action for this round. accept/reject/terminate.
78
- * When "reject", the prompt contains a rejection notice and the agent
79
- * must redo the same round. Round counter does NOT increment. */
80
- enforcementAction?: "accept" | "reject" | "terminate" | "backtrack";
81
- /** v1.13: When enforcementAction is "reject" or "terminate", the reason
82
- * why the round was rejected or the loop was terminated. */
83
- enforcementReason?: string;
84
- }
11
+ import type { McpSession, McpSessionSummary, StartInput, AdvanceResult } from "./session-types.js";
12
+ import type { GateActionDescriptor, RoundReport } from "../protocol.js";
13
+ export type { McpSession, McpSessionSummary, StartInput, AdvanceResult } from "./session-types.js";
85
14
  export declare class SessionManager {
86
15
  private sessions;
87
16
  /** Serializes state transitions for each session. */
88
17
  private sessionQueues;
89
18
  private backend;
19
+ private eventWriter;
90
20
  private sessionStore;
91
21
  private readonly ownerId;
92
22
  private readonly leaseMs;
@@ -95,7 +25,12 @@ export declare class SessionManager {
95
25
  /** Explicit context provider; never auto-discovered. */
96
26
  contextProvider?: ExternalContextProvider;
97
27
  private readonly terminalSinks;
98
- constructor(storeOrBackend?: LoopStore | VaultBackend, sessionStore?: SessionStateStore);
28
+ /** Vault-replayed policy metrics, keyed by loop. The signature covers every
29
+ * entry's task_id/timestamp/sequence so both appends and idempotent
30
+ * replacements (same task_id) invalidate the cache. */
31
+ private derivedMetricsCache;
32
+ constructor(storeOrBackend?: LoopStore, sessionStore?: SessionStateStore);
33
+ private appendCanonicalEvent;
99
34
  /** Stable process-local owner token used for cross-process session leases. */
100
35
  getOwnerId(): string;
101
36
  addTerminalSink(sink: LoopTerminalSink): () => void;
@@ -106,10 +41,16 @@ export declare class SessionManager {
106
41
  private renewSessionLease;
107
42
  private renewOwnedLeases;
108
43
  private leaseConflictResult;
109
- private withSessionQueue;
110
44
  create(input: StartInput): Promise<AdvanceResult>;
111
45
  get(sessionId: string): McpSession | undefined;
112
46
  getLeaseStatus(loopId: string): Record<string, unknown> | null;
47
+ audit(loopId: string): Record<string, unknown>;
48
+ inspect(loopId: string, round: number): Record<string, unknown> | null;
49
+ retry(sessionId: string, report: RoundReport): Promise<AdvanceResult>;
50
+ backtrack(sessionId: string): Promise<AdvanceResult>;
51
+ cognitiveProjection(sessionId: string): Record<string, unknown> | null;
52
+ checkGate(action: GateActionDescriptor): Record<string, unknown>;
53
+ resolveGate(sessionId: string, gateId: string, action: GateActionDescriptor, approved: boolean, note: string): Record<string, unknown>;
113
54
  delete(sessionId: string): boolean;
114
55
  /** v1.18: Pause a running session. The session state is persisted to
115
56
  * vault so it survives process restarts. Returns the session status.
@@ -120,7 +61,7 @@ export declare class SessionManager {
120
61
  status: string;
121
62
  };
122
63
  private restoredPromptResult;
123
- /** Reconcile the crash window where feedback committed but session_state
64
+ /** Reconcile the crash window where a round event committed but session_state
124
65
  * still points at the old prompt. Returns null when no commit is pending. */
125
66
  private reconcileCommittedRound;
126
67
  /** v1.18: Resume a paused session. Reconstructs from vault state and
@@ -138,28 +79,35 @@ export declare class SessionManager {
138
79
  /** Resume a loop from vault state.
139
80
  * Reconstructs the session and compiles the prompt for the next round.
140
81
  * Returns null if no session_state entry exists for this loopId. */
141
- resume(loopId: string): AdvanceResult | null;
82
+ resume(loopId: string): Promise<AdvanceResult | null>;
142
83
  /** Auto-resume all "running" sessions from vault on server startup.
143
84
  * Scans vault for session_state entries, reconstructs each as an in-memory
144
85
  * McpSession (without compiling — the next loopforge_next will do that).
145
86
  * Returns the number of sessions resumed. */
146
87
  autoResumeAll(): number;
147
88
  list(): McpSessionSummary[];
89
+ /** Stable signature over the vault event list. A changed signature means the
90
+ * vault has grown or an idempotent replacement landed, so the cached
91
+ * snapshot must be recomputed. Physical order is stable: writeEntry appends,
92
+ * and replacements update in place. */
93
+ private metricsSignature;
94
+ /** Policy metrics that survive process restarts: durable events are
95
+ * replayed through derivePolicyMetrics and merged with live in-process
96
+ * observations (rejections never reach the vault). */
97
+ getLoopPolicyMetrics(loopId: string): PolicyMetricsSnapshot;
98
+ /** Append a durable session_end event for a terminal transition. Call after
99
+ * the session_state write so a failure here only loses a metric, never the
100
+ * stopped status. The fixed task_id makes repeated terminals idempotent. */
101
+ persistTerminalEvent(session: McpSession, stopReason: string, extra?: Record<string, unknown>): void;
148
102
  /** Get loop health for a loop (in-memory or vault).
149
103
  * Computes goal alignment, constraint integrity, drift, strategy stability. */
150
104
  getHealth(loopId: string): Record<string, unknown> | null;
151
- /** Core cycle: extract self-eval → record feedback → check stop → compile next.
152
- * @param preExtractedEval Optional pre-built SelfEvaluation from MCP tool parameter.
153
- * When provided (MCP path with evaluation parameter), skips regex extraction.
154
- * When undefined (runtime/CLI path), falls back to regex extraction from output. */
155
- advance(sessionId: string, output: string, preExtractedEval?: SelfEvaluation): Promise<AdvanceResult>;
156
- /** Extract a SelfEvaluation from agent output.
157
- * Structured param preferred → regex extraction → heuristic fallback.
158
- * Returns null only when both regex and heuristic returned null. */
159
- private extractEvaluation;
160
- /** Execute the round transaction and apply per-rule rejection tracking.
105
+ /** Core cycle for a canonical structured round report. Free-form output is
106
+ * intentionally ignored; the runtime never guesses state from text. */
107
+ advance(sessionId: string, report: RoundReport): Promise<AdvanceResult>;
108
+ /** Execute the round transaction and apply global rejection tracking.
161
109
  * MUTATES: session.roundSnapshot, session.consecutiveRejections,
162
- * session.lastRejectionCheck, session.lastSelfEval,
110
+ * session.escalatedRejectionChecks, session.lastRoundProjection,
163
111
  * session.successTrajectory, session.driftClarificationStreak */
164
112
  private executeRoundTransaction;
165
113
  /** v2.12: Update the clarification streak based on the round result.
@@ -170,6 +118,10 @@ export declare class SessionManager {
170
118
  * on the enforcement side. We sync the persisted counter for crash recovery.
171
119
  * MUTATES: session.driftClarificationStreak */
172
120
  private updateClarificationStreak;
121
+ /** Persist terminal-rule escalation independently for each enforcement
122
+ * check. A non-rejection ends the current rejection episode and clears the
123
+ * set; rejected rules retain their marker until the episode resolves. */
124
+ private updateEscalationChecks;
173
125
  /** Build a rejection result: compile a retry prompt, persist, return.
174
126
  * MUTATES: session.roundSnapshot, session.currentPrompt, session.currentLevel */
175
127
  private buildRejectionResult;
@@ -179,7 +131,7 @@ export declare class SessionManager {
179
131
  * backtrack prompt at the top.
180
132
  * MUTATES: session.currentRound, session.roundSnapshot,
181
133
  * session.currentPrompt, session.currentLevel,
182
- * session.consecutiveRejections, session.lastSelfEval */
134
+ * session.consecutiveRejections, session.lastRoundProjection */
183
135
  private buildBacktrackResult;
184
136
  /** Build a termination result: persist stopped status, notify sinks.
185
137
  * MUTATES: session.status, session.currentPrompt */
@@ -198,5 +150,9 @@ export declare class SessionManager {
198
150
  private notifyTerminal;
199
151
  /** Replay timeline for a session — creates ReplayBackend from the stored backend. */
200
152
  replayTimeline(sessionId: string): Record<string, unknown>[] | null;
153
+ replayTimelineByLoop(loopId: string, fromSequence?: number, toSequence?: number, limit?: number): {
154
+ timeline: Record<string, unknown>[];
155
+ nextSequence: number | null;
156
+ };
201
157
  }
202
158
  //# sourceMappingURL=session.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/mcp/session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/mcp/session.ts"],"names":[],"mappings":"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"}