loopforge 3.9.4 → 4.0.7
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 +236 -112
- package/dist/audit.d.ts +73 -15
- package/dist/audit.d.ts.map +1 -1
- package/dist/audit.js +131 -61
- package/dist/audit.js.map +1 -1
- package/dist/canonical-state.d.ts +114 -40
- package/dist/canonical-state.d.ts.map +1 -1
- package/dist/canonical-state.js +276 -182
- package/dist/canonical-state.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +41 -12
- package/dist/cli.js.map +1 -1
- package/dist/cognitive-governance.d.ts +0 -2
- package/dist/cognitive-governance.d.ts.map +1 -1
- package/dist/cognitive-governance.js +0 -4
- package/dist/cognitive-governance.js.map +1 -1
- package/dist/committed-round.d.ts +97 -156
- package/dist/committed-round.d.ts.map +1 -1
- package/dist/committed-round.js +223 -419
- package/dist/committed-round.js.map +1 -1
- package/dist/constraint-lifecycle.d.ts +73 -0
- package/dist/constraint-lifecycle.d.ts.map +1 -0
- package/dist/constraint-lifecycle.js +174 -0
- package/dist/constraint-lifecycle.js.map +1 -0
- package/dist/context-boundary.d.ts +83 -0
- package/dist/context-boundary.d.ts.map +1 -0
- package/dist/context-boundary.js +101 -0
- package/dist/context-boundary.js.map +1 -0
- package/dist/contract-items.d.ts +12 -8
- package/dist/contract-items.d.ts.map +1 -1
- package/dist/contract-items.js +31 -26
- package/dist/contract-items.js.map +1 -1
- package/dist/contract-requirement.d.ts +47 -0
- package/dist/contract-requirement.d.ts.map +1 -0
- package/dist/contract-requirement.js +51 -0
- package/dist/contract-requirement.js.map +1 -0
- package/dist/criterion-status.d.ts +35 -0
- package/dist/criterion-status.d.ts.map +1 -0
- package/dist/criterion-status.js +89 -0
- package/dist/criterion-status.js.map +1 -0
- package/dist/enforcement-gate.d.ts +26 -38
- package/dist/enforcement-gate.d.ts.map +1 -1
- package/dist/enforcement-gate.js +196 -319
- package/dist/enforcement-gate.js.map +1 -1
- package/dist/engine.d.ts +9 -103
- package/dist/engine.d.ts.map +1 -1
- package/dist/engine.js +27 -897
- package/dist/engine.js.map +1 -1
- package/dist/errors.d.ts +41 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +69 -0
- package/dist/errors.js.map +1 -0
- package/dist/evidence-claims.d.ts +33 -31
- package/dist/evidence-claims.d.ts.map +1 -1
- package/dist/evidence-claims.js +58 -72
- package/dist/evidence-claims.js.map +1 -1
- package/dist/evidence-posture-view.d.ts +19 -0
- package/dist/evidence-posture-view.d.ts.map +1 -0
- package/dist/evidence-posture-view.js +116 -0
- package/dist/evidence-posture-view.js.map +1 -0
- package/dist/evidence-posture.d.ts +73 -0
- package/dist/evidence-posture.d.ts.map +1 -0
- package/dist/evidence-posture.js +281 -0
- package/dist/evidence-posture.js.map +1 -0
- package/dist/evidence-provider.d.ts +55 -37
- package/dist/evidence-provider.d.ts.map +1 -1
- package/dist/evidence-provider.js +182 -332
- package/dist/evidence-provider.js.map +1 -1
- package/dist/explain.d.ts +166 -27
- package/dist/explain.d.ts.map +1 -1
- package/dist/explain.js +372 -58
- package/dist/explain.js.map +1 -1
- package/dist/field-accounting.d.ts.map +1 -1
- package/dist/field-accounting.js +3 -22
- package/dist/field-accounting.js.map +1 -1
- package/dist/generate-schema.js +13 -8
- package/dist/generate-schema.js.map +1 -1
- package/dist/git-boundary.d.ts +128 -0
- package/dist/git-boundary.d.ts.map +1 -0
- package/dist/git-boundary.js +625 -0
- package/dist/git-boundary.js.map +1 -0
- package/dist/git-facts.d.ts +22 -0
- package/dist/git-facts.d.ts.map +1 -0
- package/dist/git-facts.js +29 -0
- package/dist/git-facts.js.map +1 -0
- package/dist/git-motion.d.ts +37 -0
- package/dist/git-motion.d.ts.map +1 -0
- package/dist/git-motion.js +59 -0
- package/dist/git-motion.js.map +1 -0
- package/dist/history.d.ts +44 -0
- package/dist/history.d.ts.map +1 -0
- package/dist/history.js +77 -0
- package/dist/history.js.map +1 -0
- package/dist/index.d.ts +19 -9
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -4
- package/dist/index.js.map +1 -1
- package/dist/init.d.ts +16 -0
- package/dist/init.d.ts.map +1 -1
- package/dist/init.js +80 -14
- package/dist/init.js.map +1 -1
- package/dist/loop-compiler.d.ts +39 -23
- package/dist/loop-compiler.d.ts.map +1 -1
- package/dist/loop-compiler.js +368 -565
- package/dist/loop-compiler.js.map +1 -1
- package/dist/loop-store.d.ts +6 -5
- package/dist/loop-store.d.ts.map +1 -1
- package/dist/loop-store.js +153 -35
- package/dist/loop-store.js.map +1 -1
- package/dist/mcp/round-lifecycle.d.ts +255 -81
- package/dist/mcp/round-lifecycle.d.ts.map +1 -1
- package/dist/mcp/round-lifecycle.js +1552 -539
- package/dist/mcp/round-lifecycle.js.map +1 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +42 -18
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/session.d.ts +81 -39
- package/dist/mcp/session.d.ts.map +1 -1
- package/dist/mcp/session.js +956 -282
- package/dist/mcp/session.js.map +1 -1
- package/dist/mcp/submission-boundary.d.ts +23 -31
- package/dist/mcp/submission-boundary.d.ts.map +1 -1
- package/dist/mcp/submission-boundary.js +242 -92
- package/dist/mcp/submission-boundary.js.map +1 -1
- package/dist/mcp/submission-handle.d.ts +66 -0
- package/dist/mcp/submission-handle.d.ts.map +1 -0
- package/dist/mcp/submission-handle.js +173 -0
- package/dist/mcp/submission-handle.js.map +1 -0
- package/dist/mcp/tools.d.ts +17 -7
- package/dist/mcp/tools.d.ts.map +1 -1
- package/dist/mcp/tools.js +707 -244
- package/dist/mcp/tools.js.map +1 -1
- package/dist/open-question.d.ts +7 -0
- package/dist/open-question.d.ts.map +1 -0
- package/dist/open-question.js +14 -0
- package/dist/open-question.js.map +1 -0
- package/dist/policy-metrics.d.ts +31 -21
- package/dist/policy-metrics.d.ts.map +1 -1
- package/dist/policy-metrics.js +117 -64
- package/dist/policy-metrics.js.map +1 -1
- package/dist/policy.d.ts +11 -39
- package/dist/policy.d.ts.map +1 -1
- package/dist/policy.js +12 -12
- package/dist/policy.js.map +1 -1
- package/dist/progress.d.ts +45 -0
- package/dist/progress.d.ts.map +1 -0
- package/dist/progress.js +136 -0
- package/dist/progress.js.map +1 -0
- package/dist/prompt-assembler.d.ts +20 -6
- package/dist/prompt-assembler.d.ts.map +1 -1
- package/dist/prompt-assembler.js +475 -479
- package/dist/prompt-assembler.js.map +1 -1
- package/dist/prompt-coverage.d.ts +0 -6
- package/dist/prompt-coverage.d.ts.map +1 -1
- package/dist/prompt-coverage.js +4 -8
- package/dist/prompt-coverage.js.map +1 -1
- package/dist/prompt-freshness.d.ts +6 -17
- package/dist/prompt-freshness.d.ts.map +1 -1
- package/dist/prompt-freshness.js +27 -22
- package/dist/prompt-freshness.js.map +1 -1
- package/dist/prompt-policy.d.ts +14 -7
- package/dist/prompt-policy.d.ts.map +1 -1
- package/dist/prompt-policy.js +21 -5
- package/dist/prompt-policy.js.map +1 -1
- package/dist/protocol.d.ts +843 -424
- package/dist/protocol.d.ts.map +1 -1
- package/dist/protocol.js +73 -102
- package/dist/protocol.js.map +1 -1
- package/dist/recovery-guidance.d.ts +13 -0
- package/dist/recovery-guidance.d.ts.map +1 -0
- package/dist/recovery-guidance.js +15 -0
- package/dist/recovery-guidance.js.map +1 -0
- package/dist/recovery.d.ts +68 -0
- package/dist/recovery.d.ts.map +1 -0
- package/dist/recovery.js +234 -0
- package/dist/recovery.js.map +1 -0
- package/dist/replay.d.ts +42 -8
- package/dist/replay.d.ts.map +1 -1
- package/dist/replay.js +311 -84
- package/dist/replay.js.map +1 -1
- package/dist/result-facts.d.ts +45 -0
- package/dist/result-facts.d.ts.map +1 -0
- package/dist/result-facts.js +86 -0
- package/dist/result-facts.js.map +1 -0
- package/dist/round-contract.d.ts +38 -8
- package/dist/round-contract.d.ts.map +1 -1
- package/dist/round-contract.js +71 -31
- package/dist/round-contract.js.map +1 -1
- package/dist/round-coordinator.d.ts +41 -89
- package/dist/round-coordinator.d.ts.map +1 -1
- package/dist/round-coordinator.js +250 -267
- package/dist/round-coordinator.js.map +1 -1
- package/dist/round-driver.d.ts +56 -16
- package/dist/round-driver.d.ts.map +1 -1
- package/dist/round-driver.js +225 -39
- package/dist/round-driver.js.map +1 -1
- package/dist/round-facts.d.ts +33 -52
- package/dist/round-facts.d.ts.map +1 -1
- package/dist/round-facts.js +51 -160
- package/dist/round-facts.js.map +1 -1
- package/dist/round-guidance.d.ts +56 -0
- package/dist/round-guidance.d.ts.map +1 -0
- package/dist/round-guidance.js +161 -0
- package/dist/round-guidance.js.map +1 -0
- package/dist/round-outcome.d.ts +21 -0
- package/dist/round-outcome.d.ts.map +1 -0
- package/dist/round-outcome.js +31 -0
- package/dist/round-outcome.js.map +1 -0
- package/dist/round-transaction.d.ts +168 -21
- package/dist/round-transaction.d.ts.map +1 -1
- package/dist/round-transaction.js +837 -38
- package/dist/round-transaction.js.map +1 -1
- package/dist/self-eval.d.ts +37 -61
- package/dist/self-eval.d.ts.map +1 -1
- package/dist/self-eval.js +413 -392
- package/dist/self-eval.js.map +1 -1
- package/dist/storage.d.ts +16 -0
- package/dist/storage.d.ts.map +1 -1
- package/dist/storage.js +54 -4
- package/dist/storage.js.map +1 -1
- package/dist/subgoal-state.d.ts +2 -3
- package/dist/subgoal-state.d.ts.map +1 -1
- package/dist/subgoal-state.js +2 -3
- package/dist/subgoal-state.js.map +1 -1
- package/dist/submission-guidance.d.ts +29 -21
- package/dist/submission-guidance.d.ts.map +1 -1
- package/dist/submission-guidance.js +308 -260
- package/dist/submission-guidance.js.map +1 -1
- package/dist/submission-receipt.d.ts +16 -8
- package/dist/submission-receipt.d.ts.map +1 -1
- package/dist/submission-receipt.js +145 -51
- package/dist/submission-receipt.js.map +1 -1
- package/dist/token-utils.d.ts +28 -7
- package/dist/token-utils.d.ts.map +1 -1
- package/dist/token-utils.js +27 -11
- package/dist/token-utils.js.map +1 -1
- package/dist/transaction-identity.d.ts +9 -0
- package/dist/transaction-identity.d.ts.map +1 -0
- package/dist/transaction-identity.js +69 -0
- package/dist/transaction-identity.js.map +1 -0
- package/dist/verification-actions.d.ts.map +1 -1
- package/dist/verification-actions.js +10 -11
- package/dist/verification-actions.js.map +1 -1
- package/dist/verification-gate.d.ts +23 -47
- package/dist/verification-gate.d.ts.map +1 -1
- package/dist/verification-gate.js +202 -423
- package/dist/verification-gate.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/working-memory.d.ts +187 -0
- package/dist/working-memory.d.ts.map +1 -0
- package/dist/working-memory.js +767 -0
- package/dist/working-memory.js.map +1 -0
- package/dist/workspace-checkpoint.d.ts +88 -0
- package/dist/workspace-checkpoint.d.ts.map +1 -0
- package/dist/workspace-checkpoint.js +326 -0
- package/dist/workspace-checkpoint.js.map +1 -0
- package/dist/workspace-restore.d.ts +68 -0
- package/dist/workspace-restore.d.ts.map +1 -0
- package/dist/workspace-restore.js +604 -0
- package/dist/workspace-restore.js.map +1 -0
- package/dist/workspace.d.ts +0 -9
- package/dist/workspace.d.ts.map +1 -1
- package/dist/workspace.js +0 -17
- package/dist/workspace.js.map +1 -1
- package/loop_policy.json +4 -18
- package/package.json +68 -68
- package/skills/forge/SKILL.md +212 -0
- package/skills/forge/references/evidence-and-contracts.md +204 -0
- package/skills/forge/references/recovery-and-views.md +188 -0
- package/dist/cognitive-facts.d.ts +0 -30
- package/dist/cognitive-facts.d.ts.map +0 -1
- package/dist/cognitive-facts.js +0 -113
- package/dist/cognitive-facts.js.map +0 -1
- package/dist/loop-extras-parser.d.ts +0 -81
- package/dist/loop-extras-parser.d.ts.map +0 -1
- package/dist/loop-extras-parser.js +0 -213
- package/dist/loop-extras-parser.js.map +0 -1
- package/dist/loop-projection.d.ts +0 -6
- package/dist/loop-projection.d.ts.map +0 -1
- package/dist/loop-projection.js +0 -28
- package/dist/loop-projection.js.map +0 -1
- package/skills/perception/SKILL.md +0 -389
package/dist/engine.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EACL,WAAW,EACX,uBAAuB,GAIxB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,oBAAoB,EAAyB,MAAM,cAAc,CAAC;AAE3E,4EAA4E;AAC5E,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,gBAAgB,CAAC;AAExB,8EAA8E;AAC9E,kBAAkB;AAClB,8EAA8E;AAE9E,MAAM,OAAO,eAAe;IAClB,KAAK,GAAqB,IAAI,CAAC;IAEvC,YAAY,KAAiB;QAC3B,IAAI,CAAC,KAAK,GAAG,KAAK,IAAI,IAAI,CAAC;IAC7B,CAAC;IAEO,YAAY;QAClB,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;YACxB,IAAI,CAAC,KAAK,GAAG,IAAI,aAAa,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC/D,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED;wCACoC;IACpC,QAAQ;QACN,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC;IAC7B,CAAC;IAED,0EAA0E;IAC1E,iCAAiC;IACjC,0EAA0E;IAE1E,iBAAiB,CACf,OAA2B,EAC3B,UAAuD,EAAE;QAEzD,IAAI,CAAC;YACH,IAAI,OAAO,GAAmC,IAAI,CAAC;YACnD,IAAI,OAAqC,CAAC;YAC1C,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACpB,OAAO,GAAG,oBAAoB,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;gBACrE,OAAO,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;YACzC,CAAC;YACD,OAAO,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACzD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,oEAAoE;YACpE,gEAAgE;YAChE,wCAAwC;YACxC,MAAM,IAAI,GAAI,GAAiC,EAAE,IAAI,CAAC;YACtD,IAAI,IAAI,KAAK,uBAAuB;gBAChC,IAAI,KAAK,8BAA8B;gBACvC,IAAI,KAAK,gBAAgB,EAAE,CAAC;gBAC9B,MAAM,GAAG,CAAC;YACZ,CAAC;YACD,OAAO,uBAAuB,CAAC;gBAC7B,MAAM,EAAE,WAAW,CAAC,KAAK;gBACzB,MAAM,EAAE,EAAE;gBACV,KAAK,EAAE,wBAAwB,GAAG,EAAE;aACrC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;CACF;AAED,8EAA8E;AAC9E,UAAU;AACV,8EAA8E;AAE9E,MAAM,UAAU,YAAY,CAC1B,KAAiB;IAEjB,OAAO,IAAI,eAAe,CAAC,KAAK,CAAC,CAAC;AACpC,CAAC"}
|
package/dist/errors.d.ts
ADDED
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/** Stable runtime errors that cross the MCP/tool boundary.
|
|
2
|
+
*
|
|
3
|
+
* These are state/compile conditions, not protocol payload defects. A tool
|
|
4
|
+
* maps their `code` onto the uniform error envelope without re-deriving the
|
|
5
|
+
* meaning from prose.
|
|
6
|
+
*/
|
|
7
|
+
/** The compiler did not produce a prompt. The message carries the compiler's
|
|
8
|
+
* own error when it supplied one. Never a session state. */
|
|
9
|
+
export declare class CompileFailureError extends Error {
|
|
10
|
+
readonly code: "compile_failed";
|
|
11
|
+
constructor(message: string);
|
|
12
|
+
}
|
|
13
|
+
/** A new loop could not be started. No session or handle exists. */
|
|
14
|
+
export declare class StartFailureError extends Error {
|
|
15
|
+
readonly code: "start_failed";
|
|
16
|
+
constructor(message: string);
|
|
17
|
+
}
|
|
18
|
+
/** A loopId already names a persisted session or committed round. Starting a
|
|
19
|
+
* new round 1 would overwrite durable history. */
|
|
20
|
+
export declare class LoopExistsError extends Error {
|
|
21
|
+
readonly loopId: string;
|
|
22
|
+
readonly reason: "session" | "rounds" | "active" | "stopped";
|
|
23
|
+
readonly code: "loop_exists";
|
|
24
|
+
constructor(loopId: string, reason: "session" | "rounds" | "active" | "stopped");
|
|
25
|
+
}
|
|
26
|
+
/** A stored loop contains rounds this runtime cannot decode. Recompiling
|
|
27
|
+
* would overwrite them, so resume refuses and leaves the data read-only. */
|
|
28
|
+
export declare class LegacyHistoryError extends Error {
|
|
29
|
+
readonly loopId: string;
|
|
30
|
+
readonly rounds: number[];
|
|
31
|
+
readonly code: "legacy_history";
|
|
32
|
+
constructor(loopId: string, rounds: number[]);
|
|
33
|
+
}
|
|
34
|
+
/** Different transactions carry different copies of the immutable operator
|
|
35
|
+
* acceptance. The history is inconsistent; never choose a copy silently. */
|
|
36
|
+
export declare class OperatorAcceptanceConflictError extends Error {
|
|
37
|
+
readonly loopId: string;
|
|
38
|
+
readonly code: "operator_acceptance_conflict";
|
|
39
|
+
constructor(loopId: string);
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;6DAC6D;AAC7D,qBAAa,mBAAoB,SAAQ,KAAK;IAC5C,QAAQ,CAAC,IAAI,EAAG,gBAAgB,CAAU;gBAC9B,OAAO,EAAE,MAAM;CAI5B;AAED,oEAAoE;AACpE,qBAAa,iBAAkB,SAAQ,KAAK;IAC1C,QAAQ,CAAC,IAAI,EAAG,cAAc,CAAU;gBAC5B,OAAO,EAAE,MAAM;CAI5B;AAED;mDACmD;AACnD,qBAAa,eAAgB,SAAQ,KAAK;IAGtC,QAAQ,CAAC,MAAM,EAAE,MAAM;IACvB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS;IAH9D,QAAQ,CAAC,IAAI,EAAG,aAAa,CAAU;gBAE5B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS;CAY/D;AAED;6EAC6E;AAC7E,qBAAa,kBAAmB,SAAQ,KAAK;IAE/B,QAAQ,CAAC,MAAM,EAAE,MAAM;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE;IAD9D,QAAQ,CAAC,IAAI,EAAG,gBAAgB,CAAU;gBACrB,MAAM,EAAE,MAAM,EAAW,MAAM,EAAE,MAAM,EAAE;CAQ/D;AAED;6EAC6E;AAC7E,qBAAa,+BAAgC,SAAQ,KAAK;IAE5C,QAAQ,CAAC,MAAM,EAAE,MAAM;IADnC,QAAQ,CAAC,IAAI,EAAG,8BAA8B,CAAU;gBACnC,MAAM,EAAE,MAAM;CAOpC"}
|
package/dist/errors.js
ADDED
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/** Stable runtime errors that cross the MCP/tool boundary.
|
|
2
|
+
*
|
|
3
|
+
* These are state/compile conditions, not protocol payload defects. A tool
|
|
4
|
+
* maps their `code` onto the uniform error envelope without re-deriving the
|
|
5
|
+
* meaning from prose.
|
|
6
|
+
*/
|
|
7
|
+
/** The compiler did not produce a prompt. The message carries the compiler's
|
|
8
|
+
* own error when it supplied one. Never a session state. */
|
|
9
|
+
export class CompileFailureError extends Error {
|
|
10
|
+
code = "compile_failed";
|
|
11
|
+
constructor(message) {
|
|
12
|
+
super(message);
|
|
13
|
+
this.name = "CompileFailureError";
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
/** A new loop could not be started. No session or handle exists. */
|
|
17
|
+
export class StartFailureError extends Error {
|
|
18
|
+
code = "start_failed";
|
|
19
|
+
constructor(message) {
|
|
20
|
+
super(message);
|
|
21
|
+
this.name = "StartFailureError";
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
/** A loopId already names a persisted session or committed round. Starting a
|
|
25
|
+
* new round 1 would overwrite durable history. */
|
|
26
|
+
export class LoopExistsError extends Error {
|
|
27
|
+
loopId;
|
|
28
|
+
reason;
|
|
29
|
+
code = "loop_exists";
|
|
30
|
+
constructor(loopId, reason) {
|
|
31
|
+
super(reason === "active"
|
|
32
|
+
? `A loop "${loopId}" is already running in this process. Resume or stop it instead of starting a duplicate.`
|
|
33
|
+
: reason === "stopped"
|
|
34
|
+
? `Loop "${loopId}" is stopped. Stopped loops are terminal — start a new loop with a different loopId.`
|
|
35
|
+
: `Loop "${loopId}" already has persisted ${reason === "session" ? "session state" : "rounds"}. ` +
|
|
36
|
+
"Resume it, or start a new loop with a different loopId.");
|
|
37
|
+
this.loopId = loopId;
|
|
38
|
+
this.reason = reason;
|
|
39
|
+
this.name = "LoopExistsError";
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
/** A stored loop contains rounds this runtime cannot decode. Recompiling
|
|
43
|
+
* would overwrite them, so resume refuses and leaves the data read-only. */
|
|
44
|
+
export class LegacyHistoryError extends Error {
|
|
45
|
+
loopId;
|
|
46
|
+
rounds;
|
|
47
|
+
code = "legacy_history";
|
|
48
|
+
constructor(loopId, rounds) {
|
|
49
|
+
super(`Loop "${loopId}" contains ${rounds.length} round(s) written by an unsupported schema ` +
|
|
50
|
+
`(${rounds.slice(0, 8).join(", ")}${rounds.length > 8 ? ", …" : ""}). ` +
|
|
51
|
+
"This runtime does not migrate history; start a new loop instead.");
|
|
52
|
+
this.loopId = loopId;
|
|
53
|
+
this.rounds = rounds;
|
|
54
|
+
this.name = "LegacyHistoryError";
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
/** Different transactions carry different copies of the immutable operator
|
|
58
|
+
* acceptance. The history is inconsistent; never choose a copy silently. */
|
|
59
|
+
export class OperatorAcceptanceConflictError extends Error {
|
|
60
|
+
loopId;
|
|
61
|
+
code = "operator_acceptance_conflict";
|
|
62
|
+
constructor(loopId) {
|
|
63
|
+
super(`Loop "${loopId}" contains conflicting operator acceptance copies. ` +
|
|
64
|
+
"The operator surface is immutable; the history must be repaired before work continues.");
|
|
65
|
+
this.loopId = loopId;
|
|
66
|
+
this.name = "OperatorAcceptanceConflictError";
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;6DAC6D;AAC7D,MAAM,OAAO,mBAAoB,SAAQ,KAAK;IACnC,IAAI,GAAG,gBAAyB,CAAC;IAC1C,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;IACpC,CAAC;CACF;AAED,oEAAoE;AACpE,MAAM,OAAO,iBAAkB,SAAQ,KAAK;IACjC,IAAI,GAAG,cAAuB,CAAC;IACxC,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;IAClC,CAAC;CACF;AAED;mDACmD;AACnD,MAAM,OAAO,eAAgB,SAAQ,KAAK;IAG7B;IACA;IAHF,IAAI,GAAG,aAAsB,CAAC;IACvC,YACW,MAAc,EACd,MAAmD;QAE5D,KAAK,CACH,MAAM,KAAK,QAAQ;YACjB,CAAC,CAAC,WAAW,MAAM,0FAA0F;YAC7G,CAAC,CAAC,MAAM,KAAK,SAAS;gBACpB,CAAC,CAAC,SAAS,MAAM,sFAAsF;gBACvG,CAAC,CAAC,SAAS,MAAM,2BAA2B,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,QAAQ,IAAI;oBAC/F,yDAAyD,CAChE,CAAC;QAVO,WAAM,GAAN,MAAM,CAAQ;QACd,WAAM,GAAN,MAAM,CAA6C;QAU5D,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAChC,CAAC;CACF;AAED;6EAC6E;AAC7E,MAAM,OAAO,kBAAmB,SAAQ,KAAK;IAEtB;IAAyB;IADrC,IAAI,GAAG,gBAAyB,CAAC;IAC1C,YAAqB,MAAc,EAAW,MAAgB;QAC5D,KAAK,CACH,SAAS,MAAM,cAAc,MAAM,CAAC,MAAM,6CAA6C;YACvF,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK;YACvE,kEAAkE,CACnE,CAAC;QALiB,WAAM,GAAN,MAAM,CAAQ;QAAW,WAAM,GAAN,MAAM,CAAU;QAM5D,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;IACnC,CAAC;CACF;AAED;6EAC6E;AAC7E,MAAM,OAAO,+BAAgC,SAAQ,KAAK;IAEnC;IADZ,IAAI,GAAG,8BAAuC,CAAC;IACxD,YAAqB,MAAc;QACjC,KAAK,CACH,SAAS,MAAM,qDAAqD;YACpE,wFAAwF,CACzF,CAAC;QAJiB,WAAM,GAAN,MAAM,CAAQ;QAKjC,IAAI,CAAC,IAAI,GAAG,iCAAiC,CAAC;IAChD,CAAC;CACF"}
|
|
@@ -1,28 +1,26 @@
|
|
|
1
|
-
/** v2.12: Derived claim provenance — the runtime's honest view of
|
|
2
|
-
*
|
|
1
|
+
/** v2.12/v4.0.3: Derived claim provenance — the runtime's honest view of
|
|
2
|
+
* which Agent-reported criteria completions are backed by machine evidence.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
4
|
+
* v4.0.3 changes the ONLY upgrade path: a claim becomes `verified` when its
|
|
5
|
+
* criterion id is in the machine-verified set. v4.0.6 reads the ONE
|
|
6
|
+
* `execution_report.claims` channel and filters `cr-` entries; `rci-` entries
|
|
7
|
+
* are contract-item claims, not criterion claims.
|
|
8
8
|
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
* -
|
|
12
|
-
* observed (test results with 0 failures AND a passed after-phase
|
|
13
|
-
* command snapshot);
|
|
14
|
-
* - downgraded to `contradicted` when error-level verification flags say
|
|
15
|
-
* the machine contradicted the claim.
|
|
9
|
+
* Pure functions, no persistence. The inputs (evaluation, machine criterion
|
|
10
|
+
* facts, verification flags) are already committed, so every claim view can
|
|
11
|
+
* be re-derived deterministically for audit and handoff purposes.
|
|
16
12
|
*/
|
|
17
13
|
import type { VaultEntry } from "./loop-store.js";
|
|
18
|
-
import type {
|
|
14
|
+
import type { ActiveContractView } from "./round-contract.js";
|
|
15
|
+
import type { ContractItemStatusView } from "./contract-items.js";
|
|
16
|
+
import type { CriterionMachineFact } from "./round-facts.js";
|
|
19
17
|
import type { SelfEvaluation, VerificationFlag } from "./protocol.js";
|
|
20
18
|
export interface DerivedClaim {
|
|
21
|
-
/**
|
|
19
|
+
/** Criterion text or id as reported by the Agent. */
|
|
22
20
|
targetId: string;
|
|
23
21
|
status: "verified" | "claimed" | "contradicted";
|
|
24
|
-
source: "agent" | "
|
|
25
|
-
/** Machine evidence reference, e.g. "
|
|
22
|
+
source: "agent" | "machine" | "verification";
|
|
23
|
+
/** Machine evidence reference, e.g. "criterion:cr-xxxxxxxx". */
|
|
26
24
|
ref?: string;
|
|
27
25
|
detail?: string;
|
|
28
26
|
}
|
|
@@ -30,22 +28,26 @@ export interface ClaimView {
|
|
|
30
28
|
claims: DerivedClaim[];
|
|
31
29
|
verifiedCount: number;
|
|
32
30
|
contradictedCount: number;
|
|
33
|
-
/** True when
|
|
31
|
+
/** True when ANY machine-verified criterion exists for this round. */
|
|
34
32
|
hasMachineEvidence: boolean;
|
|
35
33
|
}
|
|
36
|
-
/**
|
|
37
|
-
*
|
|
38
|
-
|
|
34
|
+
/** v4.0.3: the ONLY criterion ids a claim may upgrade to `verified`.
|
|
35
|
+
*
|
|
36
|
+
* Sources are the machine criterion facts (latest-wins over committed
|
|
37
|
+
* history) and the CURRENT active contract's verified items. Agent claims,
|
|
38
|
+
* self-reported tests and passing commands without a contract reference
|
|
39
|
+
* never enter this set. */
|
|
40
|
+
export declare function machineVerifiedCriterionIds(input: {
|
|
41
|
+
criterionFacts: ReadonlyArray<CriterionMachineFact>;
|
|
42
|
+
activeContract: ActiveContractView | null;
|
|
43
|
+
itemStatuses: ContractItemStatusView;
|
|
44
|
+
}): Set<string>;
|
|
45
|
+
/** Derive the runtime claim view for a round. */
|
|
46
|
+
export declare function deriveClaimView(selfEval: SelfEvaluation, machineVerifiedIds: ReadonlySet<string>): ClaimView;
|
|
39
47
|
/** Re-derive a claim view including the contradiction downgrade driven by
|
|
40
|
-
* verification flags. Used by
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
* delta, not the full after snapshot. Returns null when the round has no
|
|
45
|
-
* observable Git boundary. */
|
|
48
|
+
* verification flags. Used by read-only snapshots. */
|
|
49
|
+
export declare function rederiveClaimViewWithFlags(selfEval: SelfEvaluation, machineVerifiedIds: ReadonlySet<string>, flags: VerificationFlag[]): ClaimView;
|
|
50
|
+
/** Files actually changed in a committed round — the shared Git union delta.
|
|
51
|
+
* Returns null when the round has no observable Git boundary. */
|
|
46
52
|
export declare function resolveRoundFiles(vaultEntries: VaultEntry[], loopId: string, round: number): string[] | null;
|
|
47
|
-
/** Stable cr-IDs (and criterion texts) backed by verified claims across all
|
|
48
|
-
* committed rounds. Criterion texts are mapped to cr-IDs by callers that
|
|
49
|
-
* know the objective; this returns the raw verified targets. */
|
|
50
|
-
export declare function listVerifiedClaims(vaultEntries: VaultEntry[], loopId: string): string[];
|
|
51
53
|
//# sourceMappingURL=evidence-claims.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evidence-claims.d.ts","sourceRoot":"","sources":["../src/evidence-claims.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"evidence-claims.d.ts","sourceRoot":"","sources":["../src/evidence-claims.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAG7D,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAGtE,MAAM,WAAW,YAAY;IAC3B,qDAAqD;IACrD,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,UAAU,GAAG,SAAS,GAAG,cAAc,CAAC;IAChD,MAAM,EAAE,OAAO,GAAG,SAAS,GAAG,cAAc,CAAC;IAC7C,gEAAgE;IAChE,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,sEAAsE;IACtE,kBAAkB,EAAE,OAAO,CAAC;CAC7B;AAUD;;;;;4BAK4B;AAC5B,wBAAgB,2BAA2B,CAAC,KAAK,EAAE;IACjD,cAAc,EAAE,aAAa,CAAC,oBAAoB,CAAC,CAAC;IACpD,cAAc,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAC1C,YAAY,EAAE,sBAAsB,CAAC;CACtC,GAAG,GAAG,CAAC,MAAM,CAAC,CAiBd;AAMD,iDAAiD;AACjD,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,cAAc,EACxB,kBAAkB,EAAE,WAAW,CAAC,MAAM,CAAC,GACtC,SAAS,CAiBX;AAED;uDACuD;AACvD,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,cAAc,EACxB,kBAAkB,EAAE,WAAW,CAAC,MAAM,CAAC,EACvC,KAAK,EAAE,gBAAgB,EAAE,GACxB,SAAS,CAcX;AAED;kEACkE;AAClE,wBAAgB,iBAAiB,CAC/B,YAAY,EAAE,UAAU,EAAE,EAC1B,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,GACZ,MAAM,EAAE,GAAG,IAAI,CAOjB"}
|
package/dist/evidence-claims.js
CHANGED
|
@@ -1,72 +1,77 @@
|
|
|
1
|
-
/** v2.12: Derived claim provenance — the runtime's honest view of
|
|
2
|
-
*
|
|
1
|
+
/** v2.12/v4.0.3: Derived claim provenance — the runtime's honest view of
|
|
2
|
+
* which Agent-reported criteria completions are backed by machine evidence.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
4
|
+
* v4.0.3 changes the ONLY upgrade path: a claim becomes `verified` when its
|
|
5
|
+
* criterion id is in the machine-verified set. v4.0.6 reads the ONE
|
|
6
|
+
* `execution_report.claims` channel and filters `cr-` entries; `rci-` entries
|
|
7
|
+
* are contract-item claims, not criterion claims.
|
|
8
8
|
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
* -
|
|
12
|
-
* observed (test results with 0 failures AND a passed after-phase
|
|
13
|
-
* command snapshot);
|
|
14
|
-
* - downgraded to `contradicted` when error-level verification flags say
|
|
15
|
-
* the machine contradicted the claim.
|
|
9
|
+
* Pure functions, no persistence. The inputs (evaluation, machine criterion
|
|
10
|
+
* facts, verification flags) are already committed, so every claim view can
|
|
11
|
+
* be re-derived deterministically for audit and handoff purposes.
|
|
16
12
|
*/
|
|
17
13
|
import { readOnlyRounds } from "./committed-round.js";
|
|
18
|
-
import {
|
|
14
|
+
import { gitRoundFacts } from "./git-facts.js";
|
|
19
15
|
import { claimedMetCriteria } from "./self-eval.js";
|
|
20
|
-
|
|
16
|
+
import { deriveCriterionId, isCriterionId } from "./token-utils.js";
|
|
17
|
+
/** Contradicting error flags that invalidate Agent claims. */
|
|
21
18
|
// NOTE: keep these as literals — importing the CHECK_* constants here would
|
|
22
19
|
// create a verification-gate ⇄ evidence-claims import cycle.
|
|
23
20
|
const CONTRADICTING_CHECKS = new Set([
|
|
24
21
|
"required_command_failed",
|
|
25
|
-
"command_evidence_mismatch",
|
|
26
22
|
"success_with_remaining_criteria",
|
|
27
23
|
]);
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
24
|
+
/** v4.0.3: the ONLY criterion ids a claim may upgrade to `verified`.
|
|
25
|
+
*
|
|
26
|
+
* Sources are the machine criterion facts (latest-wins over committed
|
|
27
|
+
* history) and the CURRENT active contract's verified items. Agent claims,
|
|
28
|
+
* self-reported tests and passing commands without a contract reference
|
|
29
|
+
* never enter this set. */
|
|
30
|
+
export function machineVerifiedCriterionIds(input) {
|
|
31
|
+
const ids = new Set();
|
|
32
|
+
for (const fact of input.criterionFacts) {
|
|
33
|
+
if (fact.status === "verified")
|
|
34
|
+
ids.add(fact.criterion_id);
|
|
35
|
+
}
|
|
36
|
+
if (input.activeContract) {
|
|
37
|
+
const statusById = new Map(input.itemStatuses.items.map((item) => [item.itemId, item.status]));
|
|
38
|
+
for (const item of input.activeContract.items) {
|
|
39
|
+
if (statusById.get(item.id) !== "verified")
|
|
40
|
+
continue;
|
|
41
|
+
for (const ref of item.criterion_refs ?? []) {
|
|
42
|
+
if (isCriterionId(ref))
|
|
43
|
+
ids.add(ref);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
return ids;
|
|
34
48
|
}
|
|
35
|
-
function
|
|
36
|
-
|
|
37
|
-
// module's check were two divergent definitions of "machine-backed".
|
|
38
|
-
const git = gitDeltaState(deltas);
|
|
39
|
-
return afterObservations(deltas)
|
|
40
|
-
.some((observation) => isPassedAfterObservation(observation, git));
|
|
49
|
+
function claimCriterionId(target) {
|
|
50
|
+
return isCriterionId(target) ? target : deriveCriterionId(target);
|
|
41
51
|
}
|
|
42
|
-
/** Derive the runtime claim view for a round.
|
|
43
|
-
|
|
44
|
-
export function deriveClaimView(selfEval, evidenceDeltas) {
|
|
52
|
+
/** Derive the runtime claim view for a round. */
|
|
53
|
+
export function deriveClaimView(selfEval, machineVerifiedIds) {
|
|
45
54
|
const met = claimedMetCriteria(selfEval.execution_report);
|
|
46
|
-
const
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
55
|
+
const claims = met.map((targetId) => {
|
|
56
|
+
const verified = machineVerifiedIds.has(claimCriterionId(targetId));
|
|
57
|
+
return {
|
|
58
|
+
targetId,
|
|
59
|
+
status: verified ? "verified" : "claimed",
|
|
60
|
+
source: verified ? "machine" : "agent",
|
|
61
|
+
...(verified ? { ref: `criterion:${claimCriterionId(targetId)}` } : {}),
|
|
62
|
+
};
|
|
63
|
+
});
|
|
53
64
|
return {
|
|
54
65
|
claims,
|
|
55
66
|
verifiedCount: claims.filter((claim) => claim.status === "verified").length,
|
|
56
67
|
contradictedCount: 0,
|
|
57
|
-
|
|
58
|
-
// by the runtime itself — the agent's self-reported tests_reported are a
|
|
59
|
-
// claim, not evidence. Without a passed command, R8 and the
|
|
60
|
-
// criteria-claims check can no longer be satisfied by fabrication.
|
|
61
|
-
hasMachineEvidence: hasPassingTestEvidence(selfEval) &&
|
|
62
|
-
hasPassedAfterCommand(evidenceDeltas),
|
|
68
|
+
hasMachineEvidence: machineVerifiedIds.size > 0,
|
|
63
69
|
};
|
|
64
70
|
}
|
|
65
71
|
/** Re-derive a claim view including the contradiction downgrade driven by
|
|
66
|
-
* verification flags. Used by
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
const view = deriveClaimView(selfEval, evidenceDeltas);
|
|
72
|
+
* verification flags. Used by read-only snapshots. */
|
|
73
|
+
export function rederiveClaimViewWithFlags(selfEval, machineVerifiedIds, flags) {
|
|
74
|
+
const view = deriveClaimView(selfEval, machineVerifiedIds);
|
|
70
75
|
const contradicted = flags.some((flag) => flag.severity === "error" && CONTRADICTING_CHECKS.has(flag.check));
|
|
71
76
|
if (contradicted) {
|
|
72
77
|
view.claims = view.claims.map((claim) => ({
|
|
@@ -79,35 +84,16 @@ export function rederiveClaimViewWithFlags(selfEval, evidenceDeltas, flags) {
|
|
|
79
84
|
}
|
|
80
85
|
return view;
|
|
81
86
|
}
|
|
82
|
-
/** Files actually changed in a committed round — the shared
|
|
83
|
-
*
|
|
84
|
-
* observable Git boundary. */
|
|
87
|
+
/** Files actually changed in a committed round — the shared Git union delta.
|
|
88
|
+
* Returns null when the round has no observable Git boundary. */
|
|
85
89
|
export function resolveRoundFiles(vaultEntries, loopId, round) {
|
|
86
90
|
const committed = readOnlyRounds(vaultEntries)
|
|
87
91
|
.find((view) => view.loopId === loopId && view.round === round);
|
|
88
|
-
if (!committed
|
|
92
|
+
if (!committed)
|
|
89
93
|
return null;
|
|
90
|
-
const git = committed.observationDelta
|
|
91
|
-
if (
|
|
94
|
+
const git = gitRoundFacts(committed.observationDelta);
|
|
95
|
+
if (git.changedFiles === null)
|
|
92
96
|
return null;
|
|
93
97
|
return [...git.changedFiles];
|
|
94
98
|
}
|
|
95
|
-
/** Stable cr-IDs (and criterion texts) backed by verified claims across all
|
|
96
|
-
* committed rounds. Criterion texts are mapped to cr-IDs by callers that
|
|
97
|
-
* know the objective; this returns the raw verified targets. */
|
|
98
|
-
export function listVerifiedClaims(vaultEntries, loopId) {
|
|
99
|
-
const verified = new Set();
|
|
100
|
-
for (const round of readOnlyRounds(vaultEntries)) {
|
|
101
|
-
if (round.loopId !== loopId || !round.evaluation)
|
|
102
|
-
continue;
|
|
103
|
-
// v3.9.1: claims are checked against what THAT round changed, not the
|
|
104
|
-
// whole after-snapshot (which would include pre-existing dirt).
|
|
105
|
-
const view = rederiveClaimViewWithFlags(round.evaluation, round.observationDelta, round.verificationFlags);
|
|
106
|
-
for (const claim of view.claims) {
|
|
107
|
-
if (claim.status === "verified")
|
|
108
|
-
verified.add(claim.targetId);
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
return [...verified];
|
|
112
|
-
}
|
|
113
99
|
//# sourceMappingURL=evidence-claims.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evidence-claims.js","sourceRoot":"","sources":["../src/evidence-claims.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"evidence-claims.js","sourceRoot":"","sources":["../src/evidence-claims.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/** v4.0.3: the ONE renderer of a persisted evidence posture.
|
|
2
|
+
*
|
|
3
|
+
* The prompt's Machine Evidence section and the state file's Machine Evidence
|
|
4
|
+
* section read the same formatter, so a committed round cannot be described
|
|
5
|
+
* two different ways. `compact` only shortens the displayed arrays; it never
|
|
6
|
+
* changes the posture, its status or its counts.
|
|
7
|
+
*/
|
|
8
|
+
import type { EvidencePosture } from "./protocol.js";
|
|
9
|
+
export interface EvidencePostureViewOptions {
|
|
10
|
+
/** Prompt/profile display: shorter arrays and no per-item reasons. */
|
|
11
|
+
compact?: boolean;
|
|
12
|
+
}
|
|
13
|
+
/** Render the body lines of a Machine Evidence section. The caller owns the
|
|
14
|
+
* heading and the authority sentence. */
|
|
15
|
+
export declare function formatEvidencePostureLines(posture: EvidencePosture, options?: EvidencePostureViewOptions): string[];
|
|
16
|
+
/** The fixed sentence that keeps Machine Evidence distinct from a judgment of
|
|
17
|
+
* the Agent's work. */
|
|
18
|
+
export declare const MACHINE_EVIDENCE_AUTHORITY: string;
|
|
19
|
+
//# sourceMappingURL=evidence-posture-view.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"evidence-posture-view.d.ts","sourceRoot":"","sources":["../src/evidence-posture-view.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAErD,MAAM,WAAW,0BAA0B;IACzC,sEAAsE;IACtE,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AA6BD;0CAC0C;AAC1C,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,eAAe,EACxB,OAAO,GAAE,0BAA+B,GACvC,MAAM,EAAE,CAyFV;AAED;wBACwB;AACxB,eAAO,MAAM,0BAA0B,QAGH,CAAC"}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
/** v4.0.3: the ONE renderer of a persisted evidence posture.
|
|
2
|
+
*
|
|
3
|
+
* The prompt's Machine Evidence section and the state file's Machine Evidence
|
|
4
|
+
* section read the same formatter, so a committed round cannot be described
|
|
5
|
+
* two different ways. `compact` only shortens the displayed arrays; it never
|
|
6
|
+
* changes the posture, its status or its counts.
|
|
7
|
+
*/
|
|
8
|
+
const COMPACT_CAPS = {
|
|
9
|
+
providers: 8,
|
|
10
|
+
commands: 8,
|
|
11
|
+
contractItems: 8,
|
|
12
|
+
findings: 6,
|
|
13
|
+
};
|
|
14
|
+
function moreLine(hidden) {
|
|
15
|
+
return hidden > 0 ? ` (+${hidden} more)` : "";
|
|
16
|
+
}
|
|
17
|
+
function workspaceText(posture) {
|
|
18
|
+
switch (posture.workspace.status) {
|
|
19
|
+
case "observed":
|
|
20
|
+
return `observed changes ${posture.workspace.changedPathCount}`;
|
|
21
|
+
case "unknown":
|
|
22
|
+
return "unknown";
|
|
23
|
+
default:
|
|
24
|
+
return "not applicable";
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
function filesText(posture) {
|
|
28
|
+
if (!posture.files)
|
|
29
|
+
return "not applicable";
|
|
30
|
+
return `${posture.files.reported} (${posture.files.reconciliation})`;
|
|
31
|
+
}
|
|
32
|
+
/** Render the body lines of a Machine Evidence section. The caller owns the
|
|
33
|
+
* heading and the authority sentence. */
|
|
34
|
+
export function formatEvidencePostureLines(posture, options = {}) {
|
|
35
|
+
const compact = options.compact === true;
|
|
36
|
+
const lines = compact
|
|
37
|
+
? [
|
|
38
|
+
`- status: ${posture.status} (evidence coverage, not task success); ` +
|
|
39
|
+
`machine_backed_success: ${posture.machineBackedSuccess}; ` +
|
|
40
|
+
`verification_configured: ${posture.verificationConfigured}`,
|
|
41
|
+
`- workspace: ${workspaceText(posture)}; agent-reported files: ${filesText(posture)}`,
|
|
42
|
+
]
|
|
43
|
+
: [
|
|
44
|
+
`- status: ${posture.status} (evidence coverage, not task success)`,
|
|
45
|
+
`- machine_backed_success: ${posture.machineBackedSuccess}`,
|
|
46
|
+
`- verification_configured: ${posture.verificationConfigured}`,
|
|
47
|
+
`- workspace: ${workspaceText(posture)}`,
|
|
48
|
+
`- agent-reported files: ${filesText(posture)}`,
|
|
49
|
+
];
|
|
50
|
+
if (!posture.contract) {
|
|
51
|
+
lines.push("- contract: none");
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
const contract = posture.contract;
|
|
55
|
+
lines.push(`- contract \`${contract.id}\`: ${contract.closure}; ` +
|
|
56
|
+
`verified ${contract.verifiedCount}, insufficient ${contract.insufficientCount}, ` +
|
|
57
|
+
`contradicted ${contract.contradictedCount}, pending ${contract.pendingCount}`);
|
|
58
|
+
const shown = compact
|
|
59
|
+
? contract.items.slice(0, COMPACT_CAPS.contractItems)
|
|
60
|
+
: contract.items;
|
|
61
|
+
for (const item of shown) {
|
|
62
|
+
const criteria = item.criterionRefs.length > 0
|
|
63
|
+
? ` (criteria: ${item.criterionRefs.join(", ")})`
|
|
64
|
+
: "";
|
|
65
|
+
const reason = !compact && item.reasons.length > 0
|
|
66
|
+
? ` — ${item.reasons[0]}`
|
|
67
|
+
: "";
|
|
68
|
+
lines.push(` - \`${item.id}\`: ${item.status}${criteria}${reason}`);
|
|
69
|
+
}
|
|
70
|
+
const hidden = contract.items.length - shown.length +
|
|
71
|
+
posture.omitted.contractItems;
|
|
72
|
+
if (hidden > 0)
|
|
73
|
+
lines.push(` - contract items omitted (+${hidden} more)`);
|
|
74
|
+
}
|
|
75
|
+
if (posture.commands.length === 0) {
|
|
76
|
+
lines.push("- commands: none");
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
const shown = compact
|
|
80
|
+
? posture.commands.slice(0, COMPACT_CAPS.commands)
|
|
81
|
+
: posture.commands;
|
|
82
|
+
lines.push("- commands: " +
|
|
83
|
+
shown.map((command) => `${command.commandId}=${command.status}${command.required ? " (required)" : ""}`).join(", ") +
|
|
84
|
+
moreLine(posture.commands.length - shown.length + posture.omitted.commands));
|
|
85
|
+
}
|
|
86
|
+
if (posture.providers.length === 0) {
|
|
87
|
+
lines.push("- providers: none");
|
|
88
|
+
}
|
|
89
|
+
else {
|
|
90
|
+
const shown = compact
|
|
91
|
+
? posture.providers.slice(0, COMPACT_CAPS.providers)
|
|
92
|
+
: posture.providers;
|
|
93
|
+
lines.push("- providers: " +
|
|
94
|
+
shown.map((provider) => `${provider.providerId} (${provider.kind})=${provider.status}`).join(", ") +
|
|
95
|
+
moreLine(posture.providers.length - shown.length + posture.omitted.providers));
|
|
96
|
+
}
|
|
97
|
+
if (posture.findings.length === 0) {
|
|
98
|
+
lines.push("- findings: none");
|
|
99
|
+
}
|
|
100
|
+
else {
|
|
101
|
+
const shown = compact
|
|
102
|
+
? posture.findings.slice(0, COMPACT_CAPS.findings)
|
|
103
|
+
: posture.findings;
|
|
104
|
+
lines.push("- findings: " +
|
|
105
|
+
shown.map((finding) => `[\`${finding.id}\`] ${finding.check} (${finding.severity})` +
|
|
106
|
+
(finding.ref ? ` [ref: \`${finding.ref}\`]` : "")).join(", ") +
|
|
107
|
+
moreLine(posture.findings.length - shown.length + posture.omitted.findings));
|
|
108
|
+
}
|
|
109
|
+
return lines;
|
|
110
|
+
}
|
|
111
|
+
/** The fixed sentence that keeps Machine Evidence distinct from a judgment of
|
|
112
|
+
* the Agent's work. */
|
|
113
|
+
export const MACHINE_EVIDENCE_AUTHORITY = "Machine Evidence records what the machine observed; it is not a judgment " +
|
|
114
|
+
"of the Agent's work. Full observations are available through " +
|
|
115
|
+
"`loopforge_status view=explain`.";
|
|
116
|
+
//# sourceMappingURL=evidence-posture-view.js.map
|