loopforge 3.9.1 → 3.9.4

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 (115) hide show
  1. package/README.md +11 -8
  2. package/dist/canonical-state.d.ts +39 -1
  3. package/dist/canonical-state.d.ts.map +1 -1
  4. package/dist/canonical-state.js +114 -32
  5. package/dist/canonical-state.js.map +1 -1
  6. package/dist/committed-round.d.ts +27 -4
  7. package/dist/committed-round.d.ts.map +1 -1
  8. package/dist/committed-round.js +87 -14
  9. package/dist/committed-round.js.map +1 -1
  10. package/dist/enforcement-gate.d.ts +9 -32
  11. package/dist/enforcement-gate.d.ts.map +1 -1
  12. package/dist/enforcement-gate.js +9 -122
  13. package/dist/enforcement-gate.js.map +1 -1
  14. package/dist/engine.d.ts.map +1 -1
  15. package/dist/engine.js +13 -2
  16. package/dist/engine.js.map +1 -1
  17. package/dist/explain.d.ts +1 -0
  18. package/dist/explain.d.ts.map +1 -1
  19. package/dist/explain.js +1 -0
  20. package/dist/explain.js.map +1 -1
  21. package/dist/files-reconciliation.d.ts +18 -0
  22. package/dist/files-reconciliation.d.ts.map +1 -0
  23. package/dist/files-reconciliation.js +59 -0
  24. package/dist/files-reconciliation.js.map +1 -0
  25. package/dist/index.d.ts +1 -1
  26. package/dist/index.d.ts.map +1 -1
  27. package/dist/index.js.map +1 -1
  28. package/dist/loop-compiler.d.ts +17 -1
  29. package/dist/loop-compiler.d.ts.map +1 -1
  30. package/dist/loop-compiler.js +220 -119
  31. package/dist/loop-compiler.js.map +1 -1
  32. package/dist/mcp/round-lifecycle.d.ts +31 -1
  33. package/dist/mcp/round-lifecycle.d.ts.map +1 -1
  34. package/dist/mcp/round-lifecycle.js +102 -60
  35. package/dist/mcp/round-lifecycle.js.map +1 -1
  36. package/dist/mcp/server.d.ts +5 -0
  37. package/dist/mcp/server.d.ts.map +1 -1
  38. package/dist/mcp/server.js +19 -1
  39. package/dist/mcp/server.js.map +1 -1
  40. package/dist/mcp/session.d.ts.map +1 -1
  41. package/dist/mcp/session.js +23 -5
  42. package/dist/mcp/session.js.map +1 -1
  43. package/dist/mcp/submission-boundary.d.ts +1 -1
  44. package/dist/mcp/submission-boundary.d.ts.map +1 -1
  45. package/dist/mcp/submission-boundary.js +31 -8
  46. package/dist/mcp/submission-boundary.js.map +1 -1
  47. package/dist/mcp/tools.d.ts.map +1 -1
  48. package/dist/mcp/tools.js +62 -6
  49. package/dist/mcp/tools.js.map +1 -1
  50. package/dist/policy-metrics.d.ts +4 -0
  51. package/dist/policy-metrics.d.ts.map +1 -1
  52. package/dist/policy-metrics.js +17 -3
  53. package/dist/policy-metrics.js.map +1 -1
  54. package/dist/policy.d.ts +5 -2
  55. package/dist/policy.d.ts.map +1 -1
  56. package/dist/policy.js +2 -2
  57. package/dist/policy.js.map +1 -1
  58. package/dist/prompt-assembler.d.ts +8 -3
  59. package/dist/prompt-assembler.d.ts.map +1 -1
  60. package/dist/prompt-assembler.js +233 -240
  61. package/dist/prompt-assembler.js.map +1 -1
  62. package/dist/prompt-coverage.d.ts +45 -0
  63. package/dist/prompt-coverage.d.ts.map +1 -0
  64. package/dist/prompt-coverage.js +84 -0
  65. package/dist/prompt-coverage.js.map +1 -0
  66. package/dist/prompt-freshness.d.ts +36 -0
  67. package/dist/prompt-freshness.d.ts.map +1 -0
  68. package/dist/prompt-freshness.js +83 -0
  69. package/dist/prompt-freshness.js.map +1 -0
  70. package/dist/prompt-policy.d.ts +5 -2
  71. package/dist/prompt-policy.d.ts.map +1 -1
  72. package/dist/prompt-policy.js +10 -7
  73. package/dist/prompt-policy.js.map +1 -1
  74. package/dist/protocol.d.ts +70 -8
  75. package/dist/protocol.d.ts.map +1 -1
  76. package/dist/protocol.js +7 -1
  77. package/dist/protocol.js.map +1 -1
  78. package/dist/round-coordinator.d.ts +4 -2
  79. package/dist/round-coordinator.d.ts.map +1 -1
  80. package/dist/round-coordinator.js +7 -7
  81. package/dist/round-coordinator.js.map +1 -1
  82. package/dist/round-facts.d.ts.map +1 -1
  83. package/dist/round-facts.js +9 -3
  84. package/dist/round-facts.js.map +1 -1
  85. package/dist/round-transaction.d.ts.map +1 -1
  86. package/dist/round-transaction.js +19 -1
  87. package/dist/round-transaction.js.map +1 -1
  88. package/dist/self-eval.d.ts +23 -7
  89. package/dist/self-eval.d.ts.map +1 -1
  90. package/dist/self-eval.js +88 -16
  91. package/dist/self-eval.js.map +1 -1
  92. package/dist/submission-guidance.d.ts +36 -4
  93. package/dist/submission-guidance.d.ts.map +1 -1
  94. package/dist/submission-guidance.js +225 -78
  95. package/dist/submission-guidance.js.map +1 -1
  96. package/dist/submission-receipt.d.ts.map +1 -1
  97. package/dist/submission-receipt.js +6 -0
  98. package/dist/submission-receipt.js.map +1 -1
  99. package/dist/token-utils.d.ts +26 -0
  100. package/dist/token-utils.d.ts.map +1 -1
  101. package/dist/token-utils.js +56 -6
  102. package/dist/token-utils.js.map +1 -1
  103. package/dist/verification-actions.d.ts +13 -0
  104. package/dist/verification-actions.d.ts.map +1 -0
  105. package/dist/verification-actions.js +45 -0
  106. package/dist/verification-actions.js.map +1 -0
  107. package/dist/verification-gate.d.ts +5 -4
  108. package/dist/verification-gate.d.ts.map +1 -1
  109. package/dist/verification-gate.js +32 -45
  110. package/dist/verification-gate.js.map +1 -1
  111. package/dist/version.d.ts +1 -1
  112. package/dist/version.js +1 -1
  113. package/loop_policy.json +58 -58
  114. package/package.json +68 -68
  115. package/skills/perception/SKILL.md +35 -11
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-assembler.js","sourceRoot":"","sources":["../src/prompt-assembler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompt-assembler.js","sourceRoot":"","sources":["../src/prompt-assembler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,45 @@
1
+ /** v3.9.4: prompt coverage — the ID-level proof that the delivered prompt
2
+ * rendered every active normative object.
3
+ *
4
+ * This module is deliberately pure and dependency-light: the caller (the
5
+ * prompt assembler) derives the active set from the SAME `CanonicalLoopState`
6
+ * the renderer consumed and passes the ids each included section actually
7
+ * emitted. Nothing here re-derives a fact, reads prose, or becomes a second
8
+ * source of truth.
9
+ *
10
+ * If an active normative id is missing, `assertPromptCoverage` throws
11
+ * `ProjectionCoverageError`; prompt preparation fails closed instead of
12
+ * delivering a projection that silently dropped a requirement.
13
+ */
14
+ import type { PromptCoverage } from "./protocol.js";
15
+ export type CoverageKind = PromptCoverage["active"][number]["kind"];
16
+ export interface ActiveNormativeId {
17
+ id: string;
18
+ kind: CoverageKind;
19
+ }
20
+ /** The stable error raised when coverage is incomplete. The structured `code`
21
+ * is what the engine/handler chain keys on; the coverage is carried for the
22
+ * diagnostic payload. */
23
+ export declare class ProjectionCoverageError extends Error {
24
+ readonly code = "projection_incomplete";
25
+ readonly coverage: PromptCoverage;
26
+ constructor(coverage: PromptCoverage);
27
+ }
28
+ /** Deduplicate by id, keeping the strongest (lowest-rank) kind, then sort by
29
+ * (kind rank, id). */
30
+ export declare function canonicalActiveIds(active: ReadonlyArray<ActiveNormativeId>): ActiveNormativeId[];
31
+ export declare function derivePromptCoverage(input: {
32
+ active: ReadonlyArray<ActiveNormativeId>;
33
+ /** Ids emitted by the sections that were actually rendered. */
34
+ rendered: Iterable<string>;
35
+ /** Ids declared by every constructed section, including dropped ones.
36
+ * Used only to classify an omission as `budget` rather than `defect`. */
37
+ declared?: Iterable<string>;
38
+ /** Kinds for which a section was constructed at this level. Used only to
39
+ * classify an omission as `level`. */
40
+ availableKinds?: Iterable<CoverageKind>;
41
+ }): PromptCoverage;
42
+ /** Fail closed. A caller that has not delivered the prompt yet must let this
43
+ * throw; no partial prompt/artifact may escape. */
44
+ export declare function assertPromptCoverage(coverage: PromptCoverage): void;
45
+ //# sourceMappingURL=prompt-coverage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt-coverage.d.ts","sourceRoot":"","sources":["../src/prompt-coverage.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD,MAAM,MAAM,YAAY,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC;AAapE,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,YAAY,CAAC;CACpB;AAED;;0BAE0B;AAC1B,qBAAa,uBAAwB,SAAQ,KAAK;IAChD,QAAQ,CAAC,IAAI,2BAA2B;IACxC,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;gBAEtB,QAAQ,EAAE,cAAc;CAYrC;AAED;uBACuB;AACvB,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,aAAa,CAAC,iBAAiB,CAAC,GACvC,iBAAiB,EAAE,CAWrB;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE;IAC1C,MAAM,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;IACzC,+DAA+D;IAC/D,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC3B;8EAC0E;IAC1E,QAAQ,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC5B;2CACuC;IACvC,cAAc,CAAC,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;CACzC,GAAG,cAAc,CA0BjB;AAED;oDACoD;AACpD,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI,CAEnE"}
@@ -0,0 +1,84 @@
1
+ /** v3.9.4: prompt coverage — the ID-level proof that the delivered prompt
2
+ * rendered every active normative object.
3
+ *
4
+ * This module is deliberately pure and dependency-light: the caller (the
5
+ * prompt assembler) derives the active set from the SAME `CanonicalLoopState`
6
+ * the renderer consumed and passes the ids each included section actually
7
+ * emitted. Nothing here re-derives a fact, reads prose, or becomes a second
8
+ * source of truth.
9
+ *
10
+ * If an active normative id is missing, `assertPromptCoverage` throws
11
+ * `ProjectionCoverageError`; prompt preparation fails closed instead of
12
+ * delivering a projection that silently dropped a requirement.
13
+ */
14
+ /** Deterministic kind order for the `active` array. */
15
+ const KIND_RANK = {
16
+ recovery: 0,
17
+ contract: 1,
18
+ contract_item: 2,
19
+ criterion: 3,
20
+ constraint: 4,
21
+ subgoal: 5,
22
+ finding: 6,
23
+ };
24
+ /** The stable error raised when coverage is incomplete. The structured `code`
25
+ * is what the engine/handler chain keys on; the coverage is carried for the
26
+ * diagnostic payload. */
27
+ export class ProjectionCoverageError extends Error {
28
+ code = "projection_incomplete";
29
+ coverage;
30
+ constructor(coverage) {
31
+ const omitted = coverage.omitted
32
+ .map((entry) => `${entry.id} (${entry.reason})`)
33
+ .join(", ");
34
+ super(omitted
35
+ ? `prompt projection incomplete — active normative ids were not rendered: ${omitted}`
36
+ : "prompt projection incomplete");
37
+ this.name = "ProjectionCoverageError";
38
+ this.coverage = coverage;
39
+ }
40
+ }
41
+ /** Deduplicate by id, keeping the strongest (lowest-rank) kind, then sort by
42
+ * (kind rank, id). */
43
+ export function canonicalActiveIds(active) {
44
+ const byId = new Map();
45
+ for (const entry of active) {
46
+ const existing = byId.get(entry.id);
47
+ if (!existing || KIND_RANK[entry.kind] < KIND_RANK[existing.kind]) {
48
+ byId.set(entry.id, entry);
49
+ }
50
+ }
51
+ return [...byId.values()].sort((left, right) => KIND_RANK[left.kind] - KIND_RANK[right.kind] ||
52
+ (left.id < right.id ? -1 : left.id > right.id ? 1 : 0));
53
+ }
54
+ export function derivePromptCoverage(input) {
55
+ const active = canonicalActiveIds(input.active);
56
+ const renderedSet = new Set(input.rendered);
57
+ const declaredSet = new Set(input.declared ?? []);
58
+ const available = new Set(input.availableKinds ?? []);
59
+ const omitted = [];
60
+ for (const entry of active) {
61
+ if (renderedSet.has(entry.id))
62
+ continue;
63
+ const reason = declaredSet.has(entry.id)
64
+ ? "budget"
65
+ : available.size > 0 && !available.has(entry.kind)
66
+ ? "level"
67
+ : "defect";
68
+ omitted.push({ id: entry.id, reason });
69
+ }
70
+ omitted.sort((left, right) => left.id < right.id ? -1 : left.id > right.id ? 1 : 0);
71
+ return {
72
+ active,
73
+ rendered: [...new Set(input.rendered)].sort(),
74
+ omitted,
75
+ complete: omitted.length === 0,
76
+ };
77
+ }
78
+ /** Fail closed. A caller that has not delivered the prompt yet must let this
79
+ * throw; no partial prompt/artifact may escape. */
80
+ export function assertPromptCoverage(coverage) {
81
+ if (!coverage.complete)
82
+ throw new ProjectionCoverageError(coverage);
83
+ }
84
+ //# sourceMappingURL=prompt-coverage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt-coverage.js","sourceRoot":"","sources":["../src/prompt-coverage.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ /** Pure prompt-freshness derivation over one COMMITTED round.
2
+ *
3
+ * "Did the previous round produce anything the next prompt must respect?"
4
+ * The answer is a fact about the committed round, never a caller's mutable
5
+ * projection:
6
+ *
7
+ * - machine motion is the shared Git motion rule (`committedRoundGitMotion`);
8
+ * - machine activity is an after-phase command with an attributable result;
9
+ * - declared evolution is a committed semantic declaration the compiler
10
+ * already consumes.
11
+ *
12
+ * `observableNewInformation` is false ONLY when the machine PROVES no
13
+ * activity and the Agent declared no evolution. An unobservable boundary is
14
+ * `null` (unknown) and must never be read as "nothing changed": that is the
15
+ * epistemic error that created the L0 feedback loop.
16
+ *
17
+ * Nothing here is persisted, and nothing here is a second history source.
18
+ */
19
+ import type { CommittedRoundView } from "./committed-round.js";
20
+ export type PromptFreshnessReason = "git_content_changed" | "git_head_moved" | "after_command_activity" | "declared_evolution" | "git_boundary_unknown" | "no_git_provider" | "no_observable_activity" | "no_previous_committed_round";
21
+ export interface PromptFreshness {
22
+ /** true = motion, false = observed no motion, null = unknown. */
23
+ machineMotion: boolean | null;
24
+ /** An after-phase command produced a structured, attributable result. */
25
+ machineActivity: boolean;
26
+ /** The committed evaluation declared evolution the compiler consumes. */
27
+ declaredEvolution: boolean;
28
+ /** false ONLY when no-activity is proven; unknown counts as fresh. */
29
+ observableNewInformation: boolean;
30
+ /** Stable, deterministic order. */
31
+ reasons: PromptFreshnessReason[];
32
+ }
33
+ /** No committed previous round: freshness is unknown, never "stale". */
34
+ export declare const UNKNOWN_PROMPT_FRESHNESS: PromptFreshness;
35
+ export declare function derivePromptFreshness(previous: CommittedRoundView): PromptFreshness;
36
+ //# sourceMappingURL=prompt-freshness.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt-freshness.d.ts","sourceRoot":"","sources":["../src/prompt-freshness.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG/D,MAAM,MAAM,qBAAqB,GAC7B,qBAAqB,GACrB,gBAAgB,GAChB,wBAAwB,GACxB,oBAAoB,GACpB,sBAAsB,GACtB,iBAAiB,GACjB,wBAAwB,GACxB,6BAA6B,CAAC;AAElC,MAAM,WAAW,eAAe;IAC9B,iEAAiE;IACjE,aAAa,EAAE,OAAO,GAAG,IAAI,CAAC;IAC9B,yEAAyE;IACzE,eAAe,EAAE,OAAO,CAAC;IACzB,yEAAyE;IACzE,iBAAiB,EAAE,OAAO,CAAC;IAC3B,sEAAsE;IACtE,wBAAwB,EAAE,OAAO,CAAC;IAClC,mCAAmC;IACnC,OAAO,EAAE,qBAAqB,EAAE,CAAC;CAClC;AAED,wEAAwE;AACxE,eAAO,MAAM,wBAAwB,EAAE,eAMtC,CAAC;AAqCF,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,kBAAkB,GAC3B,eAAe,CAgCjB"}
@@ -0,0 +1,83 @@
1
+ /** Pure prompt-freshness derivation over one COMMITTED round.
2
+ *
3
+ * "Did the previous round produce anything the next prompt must respect?"
4
+ * The answer is a fact about the committed round, never a caller's mutable
5
+ * projection:
6
+ *
7
+ * - machine motion is the shared Git motion rule (`committedRoundGitMotion`);
8
+ * - machine activity is an after-phase command with an attributable result;
9
+ * - declared evolution is a committed semantic declaration the compiler
10
+ * already consumes.
11
+ *
12
+ * `observableNewInformation` is false ONLY when the machine PROVES no
13
+ * activity and the Agent declared no evolution. An unobservable boundary is
14
+ * `null` (unknown) and must never be read as "nothing changed": that is the
15
+ * epistemic error that created the L0 feedback loop.
16
+ *
17
+ * Nothing here is persisted, and nothing here is a second history source.
18
+ */
19
+ import { committedRoundGitMotion } from "./committed-round.js";
20
+ /** No committed previous round: freshness is unknown, never "stale". */
21
+ export const UNKNOWN_PROMPT_FRESHNESS = {
22
+ machineMotion: null,
23
+ machineActivity: false,
24
+ declaredEvolution: false,
25
+ observableNewInformation: true,
26
+ reasons: ["no_previous_committed_round"],
27
+ };
28
+ /** Command statuses that prove the command actually produced a result.
29
+ * `unavailable` is structural absence, not activity. */
30
+ const AFTER_COMMAND_ACTIVITY = new Set([
31
+ "passed",
32
+ "failed",
33
+ "timeout",
34
+ "aborted",
35
+ "error",
36
+ ]);
37
+ function declaredEvolution(previous) {
38
+ const evaluation = previous.evaluation;
39
+ return ((previous.discoveredConstraints?.length ?? 0) > 0 ||
40
+ Boolean(evaluation?.objective_refinement?.trim()) ||
41
+ (previous.emergedSubtasks?.length ?? 0) > 0 ||
42
+ (previous.subgoalUpdates?.length ?? 0) > 0 ||
43
+ (previous.retractedConstraints?.length ?? 0) > 0 ||
44
+ (evaluation?.revised_success_criteria?.length ?? 0) > 0 ||
45
+ (evaluation?.wrong_assumptions?.length ?? 0) > 0 ||
46
+ (evaluation?.worker_results?.length ?? 0) > 0 ||
47
+ previous.contractProposal !== null ||
48
+ evaluation?.compression_checkpoint === true);
49
+ }
50
+ function machineActivity(previous) {
51
+ return previous.afterEvidence.some((observation) => observation.kind === "command" &&
52
+ observation.phase === "after" &&
53
+ AFTER_COMMAND_ACTIVITY.has(observation.status));
54
+ }
55
+ export function derivePromptFreshness(previous) {
56
+ const gitDeltas = previous.observationDelta.filter((delta) => delta.kind === "git");
57
+ const machineMotion = committedRoundGitMotion(previous);
58
+ const activity = machineActivity(previous);
59
+ const declared = declaredEvolution(previous);
60
+ const observableNewInformation = machineMotion !== false || activity || declared;
61
+ const reasons = [];
62
+ if (machineMotion === true) {
63
+ const contentChanged = gitDeltas.some((delta) => delta.changedFiles !== null && delta.changedFiles.length > 0);
64
+ reasons.push(contentChanged ? "git_content_changed" : "git_head_moved");
65
+ }
66
+ else if (machineMotion === null) {
67
+ reasons.push(gitDeltas.length > 0 ? "git_boundary_unknown" : "no_git_provider");
68
+ }
69
+ if (activity)
70
+ reasons.push("after_command_activity");
71
+ if (declared)
72
+ reasons.push("declared_evolution");
73
+ if (!observableNewInformation)
74
+ reasons.push("no_observable_activity");
75
+ return {
76
+ machineMotion,
77
+ machineActivity: activity,
78
+ declaredEvolution: declared,
79
+ observableNewInformation,
80
+ reasons,
81
+ };
82
+ }
83
+ //# sourceMappingURL=prompt-freshness.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt-freshness.js","sourceRoot":"","sources":["../src/prompt-freshness.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@
4
4
  * reasoning technique; the external Agent owns its reasoning strategy.
5
5
  */
6
6
  export type PromptLevel = "l0" | "l1" | "l2";
7
- export type PromptLevelReason = "explicit_override" | "first_round" | "plan_boundary" | "checkpoint_boundary" | "goal_changed" | "missing_previous_state" | "verification_contradicted" | "retry_delta" | "rejection_rehydrate" | "recovery_boundary" | "state_capsule";
7
+ export type PromptLevelReason = "explicit_override" | "first_round" | "plan_boundary" | "checkpoint_boundary" | "goal_changed" | "missing_previous_state" | "verification_contradicted" | "same_round_retry" | "failed_without_observable_new_information" | "rejection_rehydrate" | "recovery_boundary" | "state_capsule";
8
8
  export interface PromptLevelInput {
9
9
  round: number;
10
10
  attempt?: number;
@@ -13,7 +13,10 @@ export interface PromptLevelInput {
13
13
  checkpointBoundary: boolean;
14
14
  goalChanged: boolean;
15
15
  previousStateMissing: boolean;
16
- previousFailedWithoutNewInformation: boolean;
16
+ previousRoundFailed: boolean;
17
+ /** null = the previous round's activity could not be observed. Unknown is
18
+ * NOT evidence of absence and must never downgrade to L0. */
19
+ previousRoundObservableNewInformation: boolean | null;
17
20
  verificationContradicted: boolean;
18
21
  consecutiveRejections?: number;
19
22
  recoveryBoundary?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-policy.d.ts","sourceRoot":"","sources":["../src/prompt-policy.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,MAAM,WAAW,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAE7C,MAAM,MAAM,iBAAiB,GACzB,mBAAmB,GACnB,aAAa,GACb,eAAe,GACf,qBAAqB,GACrB,cAAc,GACd,wBAAwB,GACxB,2BAA2B,GAC3B,aAAa,GACb,qBAAqB,GACrB,mBAAmB,GACnB,eAAe,CAAC;AAEpB,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,OAAO,CAAC;IACvB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,WAAW,EAAE,OAAO,CAAC;IACrB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,mCAAmC,EAAE,OAAO,CAAC;IAC7C,wBAAwB,EAAE,OAAO,CAAC;IAClC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,WAAW,CAAC;IACnB,OAAO,EAAE,iBAAiB,EAAE,CAAC;CAC9B;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,gBAAgB,GAAG,mBAAmB,CA2C9E"}
1
+ {"version":3,"file":"prompt-policy.d.ts","sourceRoot":"","sources":["../src/prompt-policy.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,MAAM,WAAW,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAE7C,MAAM,MAAM,iBAAiB,GACzB,mBAAmB,GACnB,aAAa,GACb,eAAe,GACf,qBAAqB,GACrB,cAAc,GACd,wBAAwB,GACxB,2BAA2B,GAC3B,kBAAkB,GAClB,2CAA2C,GAC3C,qBAAqB,GACrB,mBAAmB,GACnB,eAAe,CAAC;AAEpB,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,OAAO,CAAC;IACvB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,WAAW,EAAE,OAAO,CAAC;IACrB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,mBAAmB,EAAE,OAAO,CAAC;IAC7B;kEAC8D;IAC9D,qCAAqC,EAAE,OAAO,GAAG,IAAI,CAAC;IACtD,wBAAwB,EAAE,OAAO,CAAC;IAClC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,WAAW,CAAC;IACnB,OAAO,EAAE,iBAAiB,EAAE,CAAC;CAC9B;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,gBAAgB,GAAG,mBAAmB,CAgD9E"}
@@ -11,7 +11,7 @@ export function decidePromptLevel(input) {
11
11
  return { level: "l2", reasons: ["recovery_boundary"] };
12
12
  }
13
13
  if ((input.attempt ?? 1) > 1) {
14
- return { level: "l0", reasons: ["retry_delta"] };
14
+ return { level: "l0", reasons: ["same_round_retry"] };
15
15
  }
16
16
  if (input.verificationContradicted) {
17
17
  return { level: "l2", reasons: ["verification_contradicted"] };
@@ -36,15 +36,18 @@ export function decidePromptLevel(input) {
36
36
  if (input.previousStateMissing) {
37
37
  return { level: "l2", reasons: ["missing_previous_state"] };
38
38
  }
39
- if (input.previousFailedWithoutNewInformation) {
40
- return { level: "l0", reasons: ["retry_delta"] };
39
+ if (input.previousRoundFailed &&
40
+ input.previousRoundObservableNewInformation === false) {
41
+ return {
42
+ level: "l0",
43
+ reasons: ["failed_without_observable_new_information"],
44
+ };
41
45
  }
42
46
  // v3.8.1: no periodic_refresh branch. It was gated on
43
47
  // `full_refresh_interval`, whose default is 0 — a switch that disables its
44
- // own branch out of the box. L2 is reachable by six reasons that are FACTS
45
- // about the round (first round, plan boundary, recovery, machine
46
- // contradiction, checkpoint, repeated rejection); a round-count timer was
47
- // the one that was not.
48
+ // own branch out of the box. L2 is reachable only by FACTS about the round
49
+ // (first round, plan boundary, recovery, machine contradiction, checkpoint,
50
+ // repeated rejection); a round-count timer was the one that was not.
48
51
  return { level: "l1", reasons: ["state_capsule"] };
49
52
  }
50
53
  //# sourceMappingURL=prompt-policy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-policy.js","sourceRoot":"","sources":["../src/prompt-policy.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAoCH,MAAM,UAAU,iBAAiB,CAAC,KAAuB;IACvD,IAAI,CAAC,KAAK,CAAC,qBAAqB,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5C,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,qBAAqB,CAAC,EAAE,CAAC;IAC3D,CAAC;IACD,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;QAC3B,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,mBAAmB,CAAC,EAAE,CAAC;IACzD,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;QAC7B,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC;IACnD,CAAC;IACD,IAAI,KAAK,CAAC,wBAAwB,EAAE,CAAC;QACnC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,2BAA2B,CAAC,EAAE,CAAC;IACjE,CAAC;IACD,IAAI,KAAK,CAAC,KAAK,KAAK,CAAC;QAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC;IACxE,IAAI,KAAK,CAAC,aAAa;QAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC;IAC5E,IACE,KAAK,CAAC,UAAU;QAChB,KAAK,CAAC,UAAU,KAAK,MAAM;QAC3B,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,EAC7C,CAAC;QACD,OAAO;YACL,KAAK,EAAE,KAAK,CAAC,UAAyB;YACtC,OAAO,EAAE,CAAC,mBAAmB,CAAC;SAC/B,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,kBAAkB,EAAE,CAAC;QAC7B,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,qBAAqB,CAAC,EAAE,CAAC;IAC3D,CAAC;IACD,IAAI,KAAK,CAAC,WAAW;QAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,cAAc,CAAC,EAAE,CAAC;IACzE,IAAI,KAAK,CAAC,oBAAoB,EAAE,CAAC;QAC/B,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,wBAAwB,CAAC,EAAE,CAAC;IAC9D,CAAC;IACD,IAAI,KAAK,CAAC,mCAAmC,EAAE,CAAC;QAC9C,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC;IACnD,CAAC;IAED,sDAAsD;IACtD,2EAA2E;IAC3E,2EAA2E;IAC3E,iEAAiE;IACjE,0EAA0E;IAC1E,wBAAwB;IACxB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC;AACrD,CAAC"}
1
+ {"version":3,"file":"prompt-policy.js","sourceRoot":"","sources":["../src/prompt-policy.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAwCH,MAAM,UAAU,iBAAiB,CAAC,KAAuB;IACvD,IAAI,CAAC,KAAK,CAAC,qBAAqB,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5C,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,qBAAqB,CAAC,EAAE,CAAC;IAC3D,CAAC;IACD,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;QAC3B,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,mBAAmB,CAAC,EAAE,CAAC;IACzD,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;QAC7B,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,kBAAkB,CAAC,EAAE,CAAC;IACxD,CAAC;IACD,IAAI,KAAK,CAAC,wBAAwB,EAAE,CAAC;QACnC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,2BAA2B,CAAC,EAAE,CAAC;IACjE,CAAC;IACD,IAAI,KAAK,CAAC,KAAK,KAAK,CAAC;QAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC;IACxE,IAAI,KAAK,CAAC,aAAa;QAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC;IAC5E,IACE,KAAK,CAAC,UAAU;QAChB,KAAK,CAAC,UAAU,KAAK,MAAM;QAC3B,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,EAC7C,CAAC;QACD,OAAO;YACL,KAAK,EAAE,KAAK,CAAC,UAAyB;YACtC,OAAO,EAAE,CAAC,mBAAmB,CAAC;SAC/B,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,kBAAkB,EAAE,CAAC;QAC7B,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,qBAAqB,CAAC,EAAE,CAAC;IAC3D,CAAC;IACD,IAAI,KAAK,CAAC,WAAW;QAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,cAAc,CAAC,EAAE,CAAC;IACzE,IAAI,KAAK,CAAC,oBAAoB,EAAE,CAAC;QAC/B,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,wBAAwB,CAAC,EAAE,CAAC;IAC9D,CAAC;IACD,IACE,KAAK,CAAC,mBAAmB;QACzB,KAAK,CAAC,qCAAqC,KAAK,KAAK,EACrD,CAAC;QACD,OAAO;YACL,KAAK,EAAE,IAAI;YACX,OAAO,EAAE,CAAC,2CAA2C,CAAC;SACvD,CAAC;IACJ,CAAC;IAED,sDAAsD;IACtD,2EAA2E;IAC3E,2EAA2E;IAC3E,4EAA4E;IAC5E,qEAAqE;IACrE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC;AACrD,CAAC"}
@@ -267,6 +267,23 @@ export interface SubmissionDiagnostic {
267
267
  }
268
268
  /** v3.9.1: How a submitted field was handled in the round's receipt. */
269
269
  export type SubmissionReportHandling = "saved" | "saved_not_expanded" | "dropped" | "truncated" | "normalized" | "not_applied";
270
+ /** v3.9.2: The machine boundary the agent's files_changed report is compared
271
+ * against. Receipt-only; never persisted, never next-prompt input. */
272
+ export declare const FILES_RECONCILIATION_SCOPE: "tracked_and_non_ignored_untracked";
273
+ export interface FilesReconciliation {
274
+ status: "match" | "mismatch" | "unknown" | "not_applicable";
275
+ scope: typeof FILES_RECONCILIATION_SCOPE;
276
+ /** True when the raw submission named execution_report.files_changed. */
277
+ attempted: boolean;
278
+ /** Submitted paths, first-seen order, exact strings, duplicates retained. */
279
+ reported: string[];
280
+ /** Observed Git change set, sorted; null when unknown/not applicable. */
281
+ observed: string[] | null;
282
+ /** observed - reported, sorted. */
283
+ unreported: string[];
284
+ /** reported - observed, sorted. */
285
+ unconfirmed: string[];
286
+ }
270
287
  /** v3.9.1: The machine's report of what one submission DID. It is derived
271
288
  * from the transaction + the shared read model; it is never a second ledger. */
272
289
  export interface SubmissionReceipt {
@@ -327,12 +344,16 @@ export interface SubmissionReceipt {
327
344
  check: string;
328
345
  severity: string;
329
346
  detail: string;
347
+ /** v3.9.4: the concrete subject (command id, path, or stable id). */
348
+ ref?: string;
330
349
  }>;
331
350
  contract_items: Array<{
332
351
  item_id: string;
333
352
  status: ContractItemStatus;
334
353
  }>;
335
354
  };
355
+ /** v3.9.2: agent report vs the shared Git change set. Read-only. */
356
+ files_reconciliation: FilesReconciliation;
336
357
  prompt: {
337
358
  level: "l0" | "l1" | "l2";
338
359
  dropped_sections: string[];
@@ -373,6 +394,12 @@ export interface SubmissionGuidance {
373
394
  description: string;
374
395
  status: string;
375
396
  }>;
397
+ /** Current real criteria, for criterion_claims selection/examples. */
398
+ criteria: Array<{
399
+ id: string;
400
+ text: string;
401
+ status: CriterionStatus["status"];
402
+ }>;
376
403
  recovery: {
377
404
  required: boolean;
378
405
  restore_point?: number;
@@ -394,6 +421,8 @@ export interface SubmissionGuidance {
394
421
  check: string;
395
422
  severity: string;
396
423
  detail: string;
424
+ /** v3.9.4: the concrete subject (command id, path, or stable id). */
425
+ ref?: string;
397
426
  }>;
398
427
  }
399
428
  /** v2.1: Milestone summary — a phase-boundary snapshot that survives
@@ -665,16 +694,41 @@ export interface LoopCompileRequest {
665
694
  rejection_notice: string;
666
695
  }
667
696
  export declare function makeLoopCompileRequest(overrides?: Partial<LoopCompileRequest>): LoopCompileRequest;
697
+ /** v3.9.4: ID-level proof that the current prompt rendered every active
698
+ * normative object. This is an OUTPUT fact about one render — never an
699
+ * instruction for a later prompt and never an input to fact derivation.
700
+ *
701
+ * `active` is the required set derived from the same `CanonicalLoopState`
702
+ * the renderer consumed; `rendered` is the union of the IDs the included
703
+ * sections declared; `omitted = active - rendered`. `complete` is false only
704
+ * when a normative ID was lost; prompt preparation then fails closed.
705
+ *
706
+ * Ordering is deterministic: `active` by (kind rank, id), `rendered` sorted
707
+ * unique, `omitted` by id. */
708
+ export interface PromptCoverage {
709
+ active: Array<{
710
+ id: string;
711
+ kind: "constraint" | "criterion" | "contract" | "contract_item" | "subgoal" | "finding" | "recovery";
712
+ }>;
713
+ rendered: string[];
714
+ omitted: Array<{
715
+ id: string;
716
+ /** `defect` is added to Plan 5's three reasons because every normative
717
+ * section is protected: a normative omission can only be a renderer
718
+ * defect, and disguising it as level/budget would hide the bug. */
719
+ reason: "budget" | "level" | "not_current" | "defect";
720
+ }>;
721
+ complete: boolean;
722
+ }
668
723
  /** Immutable record of the exact prompt delivered for one round attempt. */
669
724
  /** v3.8.1: the artifact schema version, next to the type it versions. The
670
725
  * transaction envelope parser reads it, so the constant lives here rather
671
726
  * than in the renderer. */
672
- export declare const PROMPT_ARTIFACT_SCHEMA_VERSION: 3;
727
+ /** v3.9.4: schema 4 adds `coverage`. Older versions are a HARD break — a
728
+ * round whose artifact does not parse is not committed history, and
729
+ * `legacyTransactionRounds` reports the loss rather than letting it vanish. */
730
+ export declare const PROMPT_ARTIFACT_SCHEMA_VERSION: 4;
673
731
  export interface PromptArtifact {
674
- /** v3.9.1: schema 3 adds prompt-request render effects. Older versions are
675
- * a HARD break — a round whose artifact does not parse is not committed
676
- * history, and `legacyTransactionRounds` reports the loss rather than
677
- * letting it vanish. */
678
732
  schemaVersion: typeof PROMPT_ARTIFACT_SCHEMA_VERSION;
679
733
  /** Round identity: `loop:<loopId>:round:<n>`. */
680
734
  roundId: string;
@@ -704,6 +758,9 @@ export interface PromptArtifact {
704
758
  /** v3.9.1: what the PREVIOUS round's prompt_requests did in this render.
705
759
  * OUTPUT ONLY — no compile or decision path may read it as control state. */
706
760
  promptRequestEffects?: PromptRequestEffect[];
761
+ /** v3.9.4: ID-level proof that every active normative object was rendered.
762
+ * Required: a schema-4 artifact without it is a hard break. */
763
+ coverage: PromptCoverage;
707
764
  }
708
765
  export interface LoopCompileResponse {
709
766
  status: AgentStatus;
@@ -932,9 +989,11 @@ export interface ContractItemClaim {
932
989
  * per-item instead of "every verified item backs every sub-goal". */
933
990
  export interface ContractItemProposal {
934
991
  description: string;
935
- /** cr-XXXXXXXX criterion ids this item is evidence for (or free text). */
992
+ /** v3.9.4: real cr-XXXXXXXX ids of ACTIVE criteria rendered in the
993
+ * current prompt. Free text and unknown ids are `contract_invalid`. */
936
994
  criterion_refs: string[];
937
- /** sg-XXXXXXXX sub-goals this item is evidence for. */
995
+ /** v3.9.4: sg-XXXXXXXX ids of ACTIVE sub-goals displayed in the current
996
+ * prompt. A same-submission emerged sub-goal is referenceable next round. */
938
997
  subgoal_refs: string[];
939
998
  /** Evidence command ids (policy.evidence.commands[].name). */
940
999
  verify_with: string[];
@@ -1136,6 +1195,9 @@ export interface VerifiedSubGoalFact {
1136
1195
  *
1137
1196
  * - `evaluation_invalid` / `contract_invalid` / `policy_invalid` — a payload
1138
1197
  * or configuration defect; the same roundId may be retried.
1198
+ * - `projection_incomplete` — a code defect in the prompt projection: an
1199
+ * active normative ID was not rendered, so no prompt is delivered. Not
1200
+ * retryable by the agent.
1139
1201
  * - `round_id_required` / `round_id_mismatch` — the anchor is missing or no
1140
1202
  * longer names the current round.
1141
1203
  * - `session_not_found` / `state_unavailable` — the named session or read
@@ -1148,7 +1210,7 @@ export interface VerifiedSubGoalFact {
1148
1210
  * `ok: true` so the agent can recover the response it missed. That recovery
1149
1211
  * contract (v3.0.1) is deliberate; `round_id_mismatch` is for the places with
1150
1212
  * no held prompt to return (the gate preflight). */
1151
- export type ToolErrorCode = "evaluation_invalid" | "contract_invalid" | "policy_invalid" | "session_not_found" | "round_id_required" | "round_id_mismatch" | "state_unavailable" | "invalid_argument" | "gate_disabled" | "loop_already_running";
1213
+ export type ToolErrorCode = "evaluation_invalid" | "contract_invalid" | "policy_invalid" | "projection_incomplete" | "session_not_found" | "round_id_required" | "round_id_mismatch" | "state_unavailable" | "invalid_argument" | "gate_disabled" | "loop_already_running";
1152
1214
  /** v3.8: The structured error inside the uniform `{ok: false}` envelope. */
1153
1215
  export interface ToolError {
1154
1216
  code: ToolErrorCode;