loopforge 3.7.1 → 3.8.1
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.
- package/README.md +171 -169
- package/dist/audit.d.ts +53 -1
- package/dist/audit.d.ts.map +1 -1
- package/dist/audit.js +106 -22
- package/dist/audit.js.map +1 -1
- package/dist/canonical-state.d.ts +52 -67
- package/dist/canonical-state.d.ts.map +1 -1
- package/dist/canonical-state.js +134 -147
- package/dist/canonical-state.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +103 -4
- package/dist/cli.js.map +1 -1
- package/dist/cognitive-facts.d.ts +13 -0
- package/dist/cognitive-facts.d.ts.map +1 -1
- package/dist/cognitive-facts.js +28 -13
- package/dist/cognitive-facts.js.map +1 -1
- package/dist/committed-round.d.ts +103 -21
- package/dist/committed-round.d.ts.map +1 -1
- package/dist/committed-round.js +188 -45
- package/dist/committed-round.js.map +1 -1
- package/dist/contract-items.d.ts +55 -0
- package/dist/contract-items.d.ts.map +1 -0
- package/dist/contract-items.js +180 -0
- package/dist/contract-items.js.map +1 -0
- package/dist/enforcement-gate.d.ts +20 -2
- package/dist/enforcement-gate.d.ts.map +1 -1
- package/dist/enforcement-gate.js +197 -386
- package/dist/enforcement-gate.js.map +1 -1
- package/dist/engine.d.ts +1 -1
- package/dist/engine.d.ts.map +1 -1
- package/dist/engine.js +53 -38
- package/dist/engine.js.map +1 -1
- package/dist/evidence-claims.d.ts +4 -4
- package/dist/evidence-claims.d.ts.map +1 -1
- package/dist/evidence-claims.js +16 -14
- package/dist/evidence-claims.js.map +1 -1
- package/dist/evidence-provider.d.ts +85 -89
- package/dist/evidence-provider.d.ts.map +1 -1
- package/dist/evidence-provider.js +328 -184
- package/dist/evidence-provider.js.map +1 -1
- package/dist/explain.d.ts +76 -0
- package/dist/explain.d.ts.map +1 -0
- package/dist/explain.js +127 -0
- package/dist/explain.js.map +1 -0
- package/dist/generate-schema.js +152 -16
- package/dist/generate-schema.js.map +1 -1
- package/dist/index.d.ts +6 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -5
- package/dist/index.js.map +1 -1
- package/dist/loop-compiler.d.ts +40 -53
- package/dist/loop-compiler.d.ts.map +1 -1
- package/dist/loop-compiler.js +229 -553
- package/dist/loop-compiler.js.map +1 -1
- package/dist/loop-extras-parser.d.ts +0 -1
- package/dist/loop-extras-parser.d.ts.map +1 -1
- package/dist/loop-extras-parser.js +0 -4
- package/dist/loop-extras-parser.js.map +1 -1
- package/dist/loop-projection.d.ts.map +1 -1
- package/dist/loop-projection.js +3 -1
- package/dist/loop-projection.js.map +1 -1
- package/dist/mcp/round-lifecycle.d.ts +30 -21
- package/dist/mcp/round-lifecycle.d.ts.map +1 -1
- package/dist/mcp/round-lifecycle.js +47 -103
- package/dist/mcp/round-lifecycle.js.map +1 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +51 -7
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/session.d.ts +39 -23
- package/dist/mcp/session.d.ts.map +1 -1
- package/dist/mcp/session.js +148 -163
- package/dist/mcp/session.js.map +1 -1
- package/dist/mcp/submission-boundary.d.ts +89 -0
- package/dist/mcp/submission-boundary.d.ts.map +1 -0
- package/dist/mcp/submission-boundary.js +203 -0
- package/dist/mcp/submission-boundary.js.map +1 -0
- package/dist/mcp/tools.d.ts.map +1 -1
- package/dist/mcp/tools.js +249 -128
- package/dist/mcp/tools.js.map +1 -1
- package/dist/policy-metrics.js +2 -2
- package/dist/policy-metrics.js.map +1 -1
- package/dist/policy.d.ts +55 -93
- package/dist/policy.d.ts.map +1 -1
- package/dist/policy.js +149 -38
- package/dist/policy.js.map +1 -1
- package/dist/prompt-assembler.d.ts +1 -32
- package/dist/prompt-assembler.d.ts.map +1 -1
- package/dist/prompt-assembler.js +282 -435
- package/dist/prompt-assembler.js.map +1 -1
- package/dist/prompt-policy.d.ts +1 -4
- package/dist/prompt-policy.d.ts.map +1 -1
- package/dist/prompt-policy.js +6 -7
- package/dist/prompt-policy.js.map +1 -1
- package/dist/protocol.d.ts +365 -142
- package/dist/protocol.d.ts.map +1 -1
- package/dist/protocol.js +21 -66
- package/dist/protocol.js.map +1 -1
- package/dist/replay.js +2 -2
- package/dist/replay.js.map +1 -1
- package/dist/round-contract.d.ts +69 -57
- package/dist/round-contract.d.ts.map +1 -1
- package/dist/round-contract.js +104 -64
- package/dist/round-contract.js.map +1 -1
- package/dist/round-coordinator.d.ts +36 -16
- package/dist/round-coordinator.d.ts.map +1 -1
- package/dist/round-coordinator.js +166 -102
- package/dist/round-coordinator.js.map +1 -1
- package/dist/round-driver.d.ts +3 -5
- package/dist/round-driver.d.ts.map +1 -1
- package/dist/round-driver.js +0 -1
- package/dist/round-driver.js.map +1 -1
- package/dist/round-facts.d.ts +96 -0
- package/dist/round-facts.d.ts.map +1 -0
- package/dist/round-facts.js +216 -0
- package/dist/round-facts.js.map +1 -0
- package/dist/round-transaction.d.ts +19 -9
- package/dist/round-transaction.d.ts.map +1 -1
- package/dist/round-transaction.js +90 -22
- package/dist/round-transaction.js.map +1 -1
- package/dist/self-eval.d.ts +87 -9
- package/dist/self-eval.d.ts.map +1 -1
- package/dist/self-eval.js +396 -27
- package/dist/self-eval.js.map +1 -1
- package/dist/subgoal-state.d.ts +77 -0
- package/dist/subgoal-state.d.ts.map +1 -0
- package/dist/subgoal-state.js +198 -0
- package/dist/subgoal-state.js.map +1 -0
- package/dist/token-utils.d.ts +52 -19
- package/dist/token-utils.d.ts.map +1 -1
- package/dist/token-utils.js +83 -72
- package/dist/token-utils.js.map +1 -1
- package/dist/verification-gate.d.ts +14 -31
- package/dist/verification-gate.d.ts.map +1 -1
- package/dist/verification-gate.js +178 -496
- package/dist/verification-gate.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/workspace.d.ts +9 -0
- package/dist/workspace.d.ts.map +1 -1
- package/dist/workspace.js +17 -0
- package/dist/workspace.js.map +1 -1
- package/loop_policy.json +6 -30
- package/package.json +1 -1
- package/skills/perception/SKILL.md +243 -79
package/dist/committed-round.js
CHANGED
|
@@ -4,8 +4,9 @@
|
|
|
4
4
|
* place that interprets their transaction envelope or the compiler's merged
|
|
5
5
|
* lineage representation. Consumers receive one stable, read-only view.
|
|
6
6
|
*/
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
7
|
+
import { PROMPT_ARTIFACT_SCHEMA_VERSION } from "./protocol.js";
|
|
8
|
+
import { ROUND_TRANSACTION_SCHEMA_VERSION, deriveRoundObservationDelta, parseRoundTransactionSnapshot, transactionSchemaVersionOf, } from "./round-transaction.js";
|
|
9
|
+
import { claimedMetCriteria, claimedRemainingCriteria, effectiveOutcome, parseRoundContract } from "./self-eval.js";
|
|
9
10
|
import { entryRound, isRecord } from "./token-utils.js";
|
|
10
11
|
function committedAction(value) {
|
|
11
12
|
return value === "continue" || value === "stop" || value === "backtrack"
|
|
@@ -29,6 +30,45 @@ function strings(value) {
|
|
|
29
30
|
? value.filter((item) => typeof item === "string")
|
|
30
31
|
: [];
|
|
31
32
|
}
|
|
33
|
+
function numbers(value) {
|
|
34
|
+
return Array.isArray(value)
|
|
35
|
+
? value.filter((item) => typeof item === "number")
|
|
36
|
+
: [];
|
|
37
|
+
}
|
|
38
|
+
function stringMap(value) {
|
|
39
|
+
if (!isRecord(value))
|
|
40
|
+
return {};
|
|
41
|
+
const out = {};
|
|
42
|
+
for (const [key, entry] of Object.entries(value)) {
|
|
43
|
+
if (typeof entry === "string")
|
|
44
|
+
out[key] = entry;
|
|
45
|
+
}
|
|
46
|
+
return out;
|
|
47
|
+
}
|
|
48
|
+
/** v3.8.1: decode a rollback directive's facts from either carrier —
|
|
49
|
+
* `result.*` on a durable :feedback entry, `lineage.*` on a hydrated merged
|
|
50
|
+
* entry. Returns null when no restore point is recorded, which is also the
|
|
51
|
+
* signal that the record cannot serve as recovery guidance. */
|
|
52
|
+
export function decodeBacktrackRecord(source) {
|
|
53
|
+
const value = isRecord(source) ? source : {};
|
|
54
|
+
const target = typeof value.backtrackTarget === "number" ? value.backtrackTarget : null;
|
|
55
|
+
if (target === null)
|
|
56
|
+
return null;
|
|
57
|
+
return {
|
|
58
|
+
target,
|
|
59
|
+
triggerRule: typeof value.backtrackTriggerRule === "string"
|
|
60
|
+
? value.backtrackTriggerRule
|
|
61
|
+
: "",
|
|
62
|
+
failedRounds: numbers(value.backtrackFailedRounds),
|
|
63
|
+
approaches: strings(value.backtrackApproaches),
|
|
64
|
+
wrongAssumptions: strings(value.backtrackWrongAssumptions),
|
|
65
|
+
skippedFiles: strings(value.backtrackSkippedFiles),
|
|
66
|
+
skippedFingerprints: stringMap(value.backtrackSkippedFingerprints),
|
|
67
|
+
targetGitHead: typeof value.backtrackTargetGitHead === "string"
|
|
68
|
+
? value.backtrackTargetGitHead
|
|
69
|
+
: undefined,
|
|
70
|
+
};
|
|
71
|
+
}
|
|
32
72
|
/** Normalize a raw subgoal_updates value into typed entries. Decode stays
|
|
33
73
|
* tolerant of any shape (parser caps apply at ingestion; this is the
|
|
34
74
|
* read-model view of what was committed). */
|
|
@@ -67,12 +107,18 @@ export function decodeCommittedRound(entry) {
|
|
|
67
107
|
: null;
|
|
68
108
|
if (!transaction)
|
|
69
109
|
return null;
|
|
110
|
+
// v3.8: the transaction schema is a HARD break — an envelope that does not
|
|
111
|
+
// parse (legacy version, malformed observations) is not committed history.
|
|
112
|
+
// legacyTransactionRounds() reports the loss explicitly; it is never
|
|
113
|
+
// silently decoded into a partial view.
|
|
70
114
|
const snapshot = parseRoundTransactionSnapshot(transaction.snapshot);
|
|
71
|
-
if (snapshot
|
|
115
|
+
if (!snapshot)
|
|
116
|
+
return null;
|
|
117
|
+
if (snapshot.phase !== "committed")
|
|
72
118
|
return null;
|
|
73
119
|
const resultValue = isRecord(transaction.result)
|
|
74
120
|
? transaction.result
|
|
75
|
-
: snapshot
|
|
121
|
+
: snapshot.result;
|
|
76
122
|
if (!isRecord(resultValue))
|
|
77
123
|
return null;
|
|
78
124
|
const action = committedAction(resultValue.action);
|
|
@@ -96,7 +142,7 @@ export function decodeCommittedRound(entry) {
|
|
|
96
142
|
attempt: snapshot?.attempt ?? 1,
|
|
97
143
|
promptArtifact: snapshot?.promptArtifact ?? null,
|
|
98
144
|
evaluation,
|
|
99
|
-
|
|
145
|
+
executionReport: evaluation?.execution_report ?? null,
|
|
100
146
|
verificationFlags: flags(result.verificationFlags),
|
|
101
147
|
result,
|
|
102
148
|
action,
|
|
@@ -105,9 +151,11 @@ export function decodeCommittedRound(entry) {
|
|
|
105
151
|
contractProposal: evaluation?.round_contract
|
|
106
152
|
? parseRoundContract(evaluation.round_contract) ?? null
|
|
107
153
|
: null,
|
|
154
|
+
contractBinding: snapshot?.contractBinding ?? null,
|
|
108
155
|
beforeEvidence: snapshots(snapshot?.beforeEvidence),
|
|
109
156
|
afterEvidence: snapshots(snapshot?.afterEvidence),
|
|
110
|
-
|
|
157
|
+
observationDelta: deriveRoundObservationDelta(snapshots(snapshot?.beforeEvidence), snapshots(snapshot?.afterEvidence)),
|
|
158
|
+
evidenceIncomplete: (snapshot?.afterEvidence?.length ?? 0) === 0,
|
|
111
159
|
outputSummary: evaluation?.output_summary,
|
|
112
160
|
constraintViolations: strings(evaluation?.constraint_violations),
|
|
113
161
|
discoveredConstraints: strings(evaluation?.discovered_constraints),
|
|
@@ -115,6 +163,7 @@ export function decodeCommittedRound(entry) {
|
|
|
115
163
|
retractedConstraints: strings(evaluation?.retracted_constraints),
|
|
116
164
|
emergedSubtasks: strings(evaluation?.emerged_subtasks),
|
|
117
165
|
subgoalUpdates: subGoalUpdates(evaluation?.subgoal_updates),
|
|
166
|
+
backtrack: action === "backtrack" ? decodeBacktrackRecord(resultValue) : null,
|
|
118
167
|
};
|
|
119
168
|
}
|
|
120
169
|
/** Decode an in-memory lineage entry after the engine merged its committed
|
|
@@ -143,11 +192,11 @@ export function decodeMergedRound(entry) {
|
|
|
143
192
|
const evaluationKeys = [
|
|
144
193
|
"success", "output_summary", "constraint_violations", "should_continue",
|
|
145
194
|
"discovered_constraints", "objective_refinement", "emerged_subtasks",
|
|
146
|
-
"
|
|
195
|
+
"execution_report", "retracted_constraints", "revised_success_criteria",
|
|
147
196
|
"wrong_assumptions", "worker_results", "compression_checkpoint",
|
|
148
|
-
"checkpoint_label", "
|
|
197
|
+
"checkpoint_label", "subgoal_updates", "stop_reason",
|
|
149
198
|
"outcome", "blocker", "gate_ids",
|
|
150
|
-
"retroactiveClaims", "no_change_reason",
|
|
199
|
+
"retroactiveClaims", "no_change_reason",
|
|
151
200
|
"prompt_requests", "round_contract",
|
|
152
201
|
];
|
|
153
202
|
let hasEvaluation = false;
|
|
@@ -168,8 +217,8 @@ export function decodeMergedRound(entry) {
|
|
|
168
217
|
? evaluationRaw.success ? "success" : "failed"
|
|
169
218
|
: null);
|
|
170
219
|
const proposal = parseRoundContract(evaluationRaw.round_contract) ?? null;
|
|
171
|
-
const
|
|
172
|
-
? evaluationRaw.
|
|
220
|
+
const executionReport = isRecord(evaluationRaw.execution_report)
|
|
221
|
+
? evaluationRaw.execution_report
|
|
173
222
|
: null;
|
|
174
223
|
return {
|
|
175
224
|
source: "merged",
|
|
@@ -183,7 +232,7 @@ export function decodeMergedRound(entry) {
|
|
|
183
232
|
? lineage.prompt_artifact
|
|
184
233
|
: null,
|
|
185
234
|
evaluation,
|
|
186
|
-
|
|
235
|
+
executionReport,
|
|
187
236
|
verificationFlags: flags(raw.verification_flags ?? lineage.verification_flags),
|
|
188
237
|
result,
|
|
189
238
|
action,
|
|
@@ -192,9 +241,13 @@ export function decodeMergedRound(entry) {
|
|
|
192
241
|
: typeof lineage.success === "boolean" ? lineage.success : false,
|
|
193
242
|
outcome,
|
|
194
243
|
contractProposal: proposal,
|
|
244
|
+
contractBinding: isRecord(lineage.contract_binding)
|
|
245
|
+
? lineage.contract_binding
|
|
246
|
+
: null,
|
|
195
247
|
beforeEvidence: snapshots(lineage.before_evidence),
|
|
196
248
|
afterEvidence: snapshots(lineage.after_evidence),
|
|
197
|
-
|
|
249
|
+
observationDelta: deriveRoundObservationDelta(snapshots(lineage.before_evidence), snapshots(lineage.after_evidence)),
|
|
250
|
+
evidenceIncomplete: snapshots(lineage.after_evidence).length === 0,
|
|
198
251
|
outputSummary: typeof evaluationRaw.output_summary === "string"
|
|
199
252
|
? evaluationRaw.output_summary
|
|
200
253
|
: undefined,
|
|
@@ -204,6 +257,7 @@ export function decodeMergedRound(entry) {
|
|
|
204
257
|
retractedConstraints: strings(evaluationRaw.retracted_constraints),
|
|
205
258
|
emergedSubtasks: strings(evaluationRaw.emerged_subtasks),
|
|
206
259
|
subgoalUpdates: subGoalUpdates(evaluationRaw.subgoal_updates),
|
|
260
|
+
backtrack: action === "backtrack" ? decodeBacktrackRecord(lineage) : null,
|
|
207
261
|
};
|
|
208
262
|
}
|
|
209
263
|
/** Normalize committed history: rollback directives disappear, later records
|
|
@@ -223,44 +277,51 @@ export function entryLineage(entry) {
|
|
|
223
277
|
const value = entry.loop_lineage;
|
|
224
278
|
return isRecord(value) ? value : {};
|
|
225
279
|
}
|
|
226
|
-
/** Extract
|
|
280
|
+
/** Extract execution_report from an entry, handling both direct-field and
|
|
227
281
|
* lineage-nested shapes. The decoded committed view wins when the entry is
|
|
228
282
|
* a committed round. Returns null when absent. Moved from loop-compiler so
|
|
229
283
|
* field-shape interpretation lives in this module only. */
|
|
230
|
-
export function
|
|
284
|
+
export function entryExecutionReport(entry) {
|
|
231
285
|
const view = decodeRound(entry);
|
|
232
286
|
if (view)
|
|
233
|
-
return view.
|
|
287
|
+
return view.executionReport;
|
|
234
288
|
const record = isRecord(entry) ? entry : {};
|
|
235
|
-
const direct = record.
|
|
289
|
+
const direct = record.execution_report;
|
|
236
290
|
if (isRecord(direct))
|
|
237
291
|
return direct;
|
|
238
|
-
const nested = entryLineage(entry).
|
|
292
|
+
const nested = entryLineage(entry).execution_report;
|
|
239
293
|
return isRecord(nested) ? nested : null;
|
|
240
294
|
}
|
|
241
|
-
/** Read
|
|
295
|
+
/** Read the criteria the agent claimed met from an entry's execution_report. */
|
|
242
296
|
export function entryCriteriaMet(entry) {
|
|
243
297
|
const view = decodeRound(entry);
|
|
244
298
|
if (view)
|
|
245
|
-
return view.
|
|
246
|
-
|
|
247
|
-
const ev = entryExecutionEvidence(entry);
|
|
299
|
+
return claimedMetCriteria(view.executionReport);
|
|
300
|
+
const ev = entryExecutionReport(entry);
|
|
248
301
|
if (!ev)
|
|
249
302
|
return [];
|
|
250
|
-
|
|
251
|
-
return Array.isArray(arr) ? arr.filter((v) => typeof v === "string") : [];
|
|
303
|
+
return rawCriterionClaims(ev, "met");
|
|
252
304
|
}
|
|
253
|
-
/** Read
|
|
305
|
+
/** Read the criteria the agent declared outstanding from an entry. */
|
|
254
306
|
export function entryCriteriaRemaining(entry) {
|
|
255
307
|
const view = decodeRound(entry);
|
|
256
308
|
if (view)
|
|
257
|
-
return view.
|
|
258
|
-
|
|
259
|
-
const ev = entryExecutionEvidence(entry);
|
|
309
|
+
return claimedRemainingCriteria(view.executionReport);
|
|
310
|
+
const ev = entryExecutionReport(entry);
|
|
260
311
|
if (!ev)
|
|
261
312
|
return [];
|
|
262
|
-
|
|
263
|
-
|
|
313
|
+
return rawCriterionClaims(ev, "remaining");
|
|
314
|
+
}
|
|
315
|
+
/** Shape-tolerant reader for a raw entry's criterion claims (the durable
|
|
316
|
+
* shape, before the typed parse). */
|
|
317
|
+
function rawCriterionClaims(report, outcome) {
|
|
318
|
+
const claims = report.criterion_claims;
|
|
319
|
+
if (!Array.isArray(claims))
|
|
320
|
+
return [];
|
|
321
|
+
return claims
|
|
322
|
+
.filter(isRecord)
|
|
323
|
+
.filter((claim) => claim.outcome === outcome && typeof claim.criterion_id === "string")
|
|
324
|
+
.map((claim) => claim.criterion_id);
|
|
264
325
|
}
|
|
265
326
|
/** Read constraints_active from an entry's lineage. */
|
|
266
327
|
export function entryActiveConstraints(entry) {
|
|
@@ -285,10 +346,10 @@ export function entryRetractedConstraints(entry) {
|
|
|
285
346
|
return nested.filter((v) => typeof v === "string");
|
|
286
347
|
return [];
|
|
287
348
|
}
|
|
288
|
-
/** Read progress_estimate from an entry's
|
|
349
|
+
/** Read progress_estimate from an entry's execution_report (0 when
|
|
289
350
|
* absent). */
|
|
290
351
|
export function entryProgressEstimate(entry) {
|
|
291
|
-
const ev =
|
|
352
|
+
const ev = entryExecutionReport(entry);
|
|
292
353
|
if (!ev)
|
|
293
354
|
return 0;
|
|
294
355
|
const pe = ev.progress_estimate;
|
|
@@ -345,26 +406,108 @@ export function historyRounds(views, beforeRound = Number.POSITIVE_INFINITY) {
|
|
|
345
406
|
}
|
|
346
407
|
return [...byRound.values()].sort((a, b) => a.round - b.round);
|
|
347
408
|
}
|
|
348
|
-
|
|
349
|
-
|
|
409
|
+
/** v3.8.1: the ONE committed-history window every derivation reads.
|
|
410
|
+
*
|
|
411
|
+
* `decodeRound` (hydrated merged lineage first, then the durable feedback
|
|
412
|
+
* entry) plus the rollback handling in `historyRounds` — so the compile path,
|
|
413
|
+
* the projection, the live coordinator, audit and explain can no longer
|
|
414
|
+
* disagree about which rounds are this branch's history, nor about how their
|
|
415
|
+
* envelope was interpreted.
|
|
416
|
+
*
|
|
417
|
+
* `currentRound` bounds the window exactly as before (default: unbounded). It
|
|
418
|
+
* is NOT a rollback fence: the redo re-commits the round numbers the abandoned
|
|
419
|
+
* rounds occupied, so abandonment is temporal, not numeric, and cannot be
|
|
420
|
+
* expressed as a bound here. */
|
|
421
|
+
export function derivationRounds(entries, currentRound = Number.POSITIVE_INFINITY) {
|
|
422
|
+
return historyRounds(entries.map(decodeRound), currentRound);
|
|
423
|
+
}
|
|
424
|
+
/** v3.8.1: the loop's durable round frontier — the session document's
|
|
425
|
+
* `current_round`. Null when no session document is in the entry set, so
|
|
426
|
+
* callers fail OPEN rather than inventing a bound. */
|
|
427
|
+
export function persistedFrontier(entries) {
|
|
428
|
+
for (const entry of entries) {
|
|
429
|
+
if (!isRecord(entry) || entry.task_type !== "session_state")
|
|
430
|
+
continue;
|
|
431
|
+
const round = entryLineage(entry).current_round;
|
|
432
|
+
return typeof round === "number" && Number.isFinite(round) && round >= 1
|
|
433
|
+
? round
|
|
434
|
+
: null;
|
|
435
|
+
}
|
|
436
|
+
return null;
|
|
437
|
+
}
|
|
438
|
+
/** v3.8.1: THE window for a READ-ONLY view of a loop — audit, explain, replay,
|
|
439
|
+
* the projection, the metrics replay. Same decoder and same rollback handling
|
|
440
|
+
* as `derivationRounds`, plus the bound those callers cannot compute
|
|
441
|
+
* themselves.
|
|
442
|
+
*
|
|
443
|
+
* The live paths bound their window at the round being compiled, and that
|
|
444
|
+
* bound is what keeps a backtracked branch out of this branch's history. A
|
|
445
|
+
* read-only view has no compile round, so it reads the SAME frontier from the
|
|
446
|
+
* durable session document and applies it only while a committed rollback
|
|
447
|
+
* directive is still in effect — a directive stops being history the moment
|
|
448
|
+
* the redo commit replaces its round's record, which is exactly when the
|
|
449
|
+
* abandoned rounds have been re-committed and must count again.
|
|
450
|
+
*
|
|
451
|
+
* With no directive in effect the window stays UNBOUNDED on purpose: after a
|
|
452
|
+
* stop, terminate or max_rounds the session's `current_round` sits ON the
|
|
453
|
+
* round it just committed, so bounding there would silently drop the loop's
|
|
454
|
+
* final round. An unobservable frontier fails open the same way — a read-only
|
|
455
|
+
* view never invents a fence, it only applies the one the runtime recorded. */
|
|
456
|
+
export function readOnlyRounds(entries) {
|
|
457
|
+
const views = entries.map(decodeRound);
|
|
458
|
+
const rollbackPending = views.some((view) => view?.action === "backtrack");
|
|
459
|
+
if (!rollbackPending)
|
|
460
|
+
return historyRounds(views);
|
|
461
|
+
return historyRounds(views, persistedFrontier(entries) ?? Number.POSITIVE_INFINITY);
|
|
350
462
|
}
|
|
351
463
|
/** The machine-evidence set that best represents a committed round: the
|
|
352
|
-
* after-phase
|
|
353
|
-
*
|
|
464
|
+
* after-phase observations (captured post-execution), else the derived round
|
|
465
|
+
* delta, else the pre-round baseline. Shared selector for the
|
|
354
466
|
* evidence-fallback chains that audit, claims, and backtrack-restore each
|
|
355
|
-
* used to inline with subtly different tiers
|
|
356
|
-
*
|
|
357
|
-
*
|
|
358
|
-
* the diffed motion signal. */
|
|
467
|
+
* used to inline with subtly different tiers. Distinct from
|
|
468
|
+
* machineGitMotionSeries, which deliberately reads the delta alone for the
|
|
469
|
+
* motion signal. */
|
|
359
470
|
export function machineEvidenceForRound(view) {
|
|
360
471
|
if (view.afterEvidence.length > 0)
|
|
361
472
|
return view.afterEvidence;
|
|
362
|
-
if (view.
|
|
363
|
-
return view.
|
|
473
|
+
if (view.observationDelta.length > 0)
|
|
474
|
+
return view.observationDelta;
|
|
364
475
|
return view.beforeEvidence;
|
|
365
476
|
}
|
|
366
|
-
export function
|
|
367
|
-
|
|
477
|
+
export function legacyTransactionRounds(entries) {
|
|
478
|
+
const out = [];
|
|
479
|
+
for (const entry of entries) {
|
|
480
|
+
if (!isRecord(entry))
|
|
481
|
+
continue;
|
|
482
|
+
const lineage = entryLineage(entry);
|
|
483
|
+
const envelope = isRecord(lineage.round_transaction)
|
|
484
|
+
? lineage.round_transaction
|
|
485
|
+
: isRecord(entry.round_transaction) ? entry.round_transaction : null;
|
|
486
|
+
if (!envelope || !isRecord(envelope.snapshot))
|
|
487
|
+
continue;
|
|
488
|
+
const round = entryRound(entry);
|
|
489
|
+
if (round < 1)
|
|
490
|
+
continue;
|
|
491
|
+
const version = transactionSchemaVersionOf(envelope.snapshot);
|
|
492
|
+
if (version !== null && version !== ROUND_TRANSACTION_SCHEMA_VERSION) {
|
|
493
|
+
out.push({ round, schemaVersion: version, envelope: "transaction" });
|
|
494
|
+
continue;
|
|
495
|
+
}
|
|
496
|
+
// v3.8.1: the PromptArtifact schema is versioned separately, and the
|
|
497
|
+
// transaction parser rejects a snapshot whose artifact version it does
|
|
498
|
+
// not know — dropping the whole round. Reporting only the transaction
|
|
499
|
+
// version would let an artifact-version break delete committed history
|
|
500
|
+
// silently, which is the one thing this function exists to prevent.
|
|
501
|
+
const snapshot = envelope.snapshot;
|
|
502
|
+
if (isRecord(snapshot.promptArtifact)) {
|
|
503
|
+
const artifactVersion = snapshot.promptArtifact.schemaVersion;
|
|
504
|
+
if (typeof artifactVersion === "number" &&
|
|
505
|
+
artifactVersion !== PROMPT_ARTIFACT_SCHEMA_VERSION) {
|
|
506
|
+
out.push({ round, schemaVersion: artifactVersion, envelope: "prompt_artifact" });
|
|
507
|
+
}
|
|
508
|
+
}
|
|
509
|
+
}
|
|
510
|
+
return out.sort((a, b) => a.round - b.round);
|
|
368
511
|
}
|
|
369
512
|
/** Machine-observed git motion for the most recent contiguous window.
|
|
370
513
|
* Consumers must decode durable or hydrated entries before calling this;
|
|
@@ -374,7 +517,7 @@ export function machineGitMotionSeries(rounds, currentRound, lookback) {
|
|
|
374
517
|
for (const round of rounds) {
|
|
375
518
|
if (round.round < 1 || round.round >= currentRound)
|
|
376
519
|
continue;
|
|
377
|
-
const git = round.
|
|
520
|
+
const git = round.observationDelta.find((snapshot) => snapshot.providerId === "git");
|
|
378
521
|
if (!git)
|
|
379
522
|
continue;
|
|
380
523
|
byRound.set(round.round, Array.isArray(git.files) && git.files.length > 0);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"committed-round.js","sourceRoot":"","sources":["../src/committed-round.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"committed-round.js","sourceRoot":"","sources":["../src/committed-round.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/** Round Contract item status — the v3.8 verification skeleton.
|
|
2
|
+
*
|
|
3
|
+
* A contract declares ITEMS; each item binds evidence commands. The agent
|
|
4
|
+
* may only CLAIM `met` / `remaining`; whether an item is `verified`,
|
|
5
|
+
* `contradicted`, or `insufficient` is derived here from committed
|
|
6
|
+
* observations and the in-flight round. Nothing in this module writes state:
|
|
7
|
+
* it is a pure function of the committed round views, the current report,
|
|
8
|
+
* the current observations, and policy.
|
|
9
|
+
*/
|
|
10
|
+
import type { ContractItemStatus, ExecutionReport, MachineObservation } from "./protocol.js";
|
|
11
|
+
import type { ActiveContractView } from "./round-contract.js";
|
|
12
|
+
import type { CommittedRoundView } from "./committed-round.js";
|
|
13
|
+
import type { CommandEvidencePolicy } from "./policy.js";
|
|
14
|
+
export interface ItemStatusHistoryEntry {
|
|
15
|
+
round: number;
|
|
16
|
+
status: ContractItemStatus;
|
|
17
|
+
refs: string[];
|
|
18
|
+
}
|
|
19
|
+
export interface ItemStatusRecord {
|
|
20
|
+
itemId: string;
|
|
21
|
+
description: string;
|
|
22
|
+
status: ContractItemStatus;
|
|
23
|
+
/** Round the current status was first reached. */
|
|
24
|
+
status_at_round: number | null;
|
|
25
|
+
history: ItemStatusHistoryEntry[];
|
|
26
|
+
reasons: string[];
|
|
27
|
+
}
|
|
28
|
+
export interface ContractItemStatusView {
|
|
29
|
+
contractId: string;
|
|
30
|
+
closure: "open" | "verified" | "blocked";
|
|
31
|
+
closed_at_round: number | null;
|
|
32
|
+
items: ItemStatusRecord[];
|
|
33
|
+
verifiedCount: number;
|
|
34
|
+
contradictedCount: number;
|
|
35
|
+
insufficientCount: number;
|
|
36
|
+
}
|
|
37
|
+
export interface ContractItemInput {
|
|
38
|
+
contract: ActiveContractView | null;
|
|
39
|
+
/** Committed rounds below `currentRound`, ascending, rollback-excluded. */
|
|
40
|
+
rounds: ReadonlyArray<CommittedRoundView>;
|
|
41
|
+
currentRound: number;
|
|
42
|
+
currentReport: ExecutionReport | null;
|
|
43
|
+
currentObservations: ReadonlyArray<MachineObservation>;
|
|
44
|
+
/** The in-flight round's own effective outcome. A `blocked` round CLOSES its
|
|
45
|
+
* contract, so the closure cannot be derived from the committed slices
|
|
46
|
+
* alone — the round being decided is not committed yet. Leave null where no
|
|
47
|
+
* in-flight round exists (a pure committed-history replay). */
|
|
48
|
+
currentOutcome?: string | null;
|
|
49
|
+
commands: ReadonlyArray<CommandEvidencePolicy>;
|
|
50
|
+
}
|
|
51
|
+
/** v3.8: Derive every item's status plus the contract's closure. */
|
|
52
|
+
export declare function deriveContractItemStatuses(input: ContractItemInput): ContractItemStatusView;
|
|
53
|
+
/** v3.8: The round-level verification posture. */
|
|
54
|
+
export declare function roundVerificationStatus(view: ContractItemStatusView, report: ExecutionReport | null): "trusted" | "insufficient" | "contradicted";
|
|
55
|
+
//# sourceMappingURL=contract-items.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contract-items.d.ts","sourceRoot":"","sources":["../src/contract-items.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAEV,kBAAkB,EAClB,eAAe,EACf,kBAAkB,EACnB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,kBAAkB,EAAsB,MAAM,qBAAqB,CAAC;AAClF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAUzD,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,kBAAkB,CAAC;IAC3B,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,kBAAkB,CAAC;IAC3B,kDAAkD;IAClD,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,OAAO,EAAE,sBAAsB,EAAE,CAAC;IAClC,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,sBAAsB;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAAC;IACzC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACpC,2EAA2E;IAC3E,MAAM,EAAE,aAAa,CAAC,kBAAkB,CAAC,CAAC;IAC1C,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,eAAe,GAAG,IAAI,CAAC;IACtC,mBAAmB,EAAE,aAAa,CAAC,kBAAkB,CAAC,CAAC;IACvD;;;oEAGgE;IAChE,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,EAAE,aAAa,CAAC,qBAAqB,CAAC,CAAC;CAChD;AAyGD,oEAAoE;AACpE,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,iBAAiB,GAAG,sBAAsB,CAkF3F;AAED,kDAAkD;AAClD,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,sBAAsB,EAC5B,MAAM,EAAE,eAAe,GAAG,IAAI,GAC7B,SAAS,GAAG,cAAc,GAAG,cAAc,CAS7C"}
|