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.
- package/README.md +11 -8
- package/dist/canonical-state.d.ts +39 -1
- package/dist/canonical-state.d.ts.map +1 -1
- package/dist/canonical-state.js +114 -32
- package/dist/canonical-state.js.map +1 -1
- package/dist/committed-round.d.ts +27 -4
- package/dist/committed-round.d.ts.map +1 -1
- package/dist/committed-round.js +87 -14
- package/dist/committed-round.js.map +1 -1
- package/dist/enforcement-gate.d.ts +9 -32
- package/dist/enforcement-gate.d.ts.map +1 -1
- package/dist/enforcement-gate.js +9 -122
- package/dist/enforcement-gate.js.map +1 -1
- package/dist/engine.d.ts.map +1 -1
- package/dist/engine.js +13 -2
- package/dist/engine.js.map +1 -1
- package/dist/explain.d.ts +1 -0
- package/dist/explain.d.ts.map +1 -1
- package/dist/explain.js +1 -0
- package/dist/explain.js.map +1 -1
- package/dist/files-reconciliation.d.ts +18 -0
- package/dist/files-reconciliation.d.ts.map +1 -0
- package/dist/files-reconciliation.js +59 -0
- package/dist/files-reconciliation.js.map +1 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/loop-compiler.d.ts +17 -1
- package/dist/loop-compiler.d.ts.map +1 -1
- package/dist/loop-compiler.js +220 -119
- package/dist/loop-compiler.js.map +1 -1
- package/dist/mcp/round-lifecycle.d.ts +31 -1
- package/dist/mcp/round-lifecycle.d.ts.map +1 -1
- package/dist/mcp/round-lifecycle.js +102 -60
- package/dist/mcp/round-lifecycle.js.map +1 -1
- package/dist/mcp/server.d.ts +5 -0
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +19 -1
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/session.d.ts.map +1 -1
- package/dist/mcp/session.js +23 -5
- package/dist/mcp/session.js.map +1 -1
- package/dist/mcp/submission-boundary.d.ts +1 -1
- package/dist/mcp/submission-boundary.d.ts.map +1 -1
- package/dist/mcp/submission-boundary.js +31 -8
- package/dist/mcp/submission-boundary.js.map +1 -1
- package/dist/mcp/tools.d.ts.map +1 -1
- package/dist/mcp/tools.js +62 -6
- package/dist/mcp/tools.js.map +1 -1
- package/dist/policy-metrics.d.ts +4 -0
- package/dist/policy-metrics.d.ts.map +1 -1
- package/dist/policy-metrics.js +17 -3
- package/dist/policy-metrics.js.map +1 -1
- package/dist/policy.d.ts +5 -2
- package/dist/policy.d.ts.map +1 -1
- package/dist/policy.js +2 -2
- package/dist/policy.js.map +1 -1
- package/dist/prompt-assembler.d.ts +8 -3
- package/dist/prompt-assembler.d.ts.map +1 -1
- package/dist/prompt-assembler.js +233 -240
- package/dist/prompt-assembler.js.map +1 -1
- package/dist/prompt-coverage.d.ts +45 -0
- package/dist/prompt-coverage.d.ts.map +1 -0
- package/dist/prompt-coverage.js +84 -0
- package/dist/prompt-coverage.js.map +1 -0
- package/dist/prompt-freshness.d.ts +36 -0
- package/dist/prompt-freshness.d.ts.map +1 -0
- package/dist/prompt-freshness.js +83 -0
- package/dist/prompt-freshness.js.map +1 -0
- package/dist/prompt-policy.d.ts +5 -2
- package/dist/prompt-policy.d.ts.map +1 -1
- package/dist/prompt-policy.js +10 -7
- package/dist/prompt-policy.js.map +1 -1
- package/dist/protocol.d.ts +70 -8
- package/dist/protocol.d.ts.map +1 -1
- package/dist/protocol.js +7 -1
- package/dist/protocol.js.map +1 -1
- package/dist/round-coordinator.d.ts +4 -2
- package/dist/round-coordinator.d.ts.map +1 -1
- package/dist/round-coordinator.js +7 -7
- package/dist/round-coordinator.js.map +1 -1
- package/dist/round-facts.d.ts.map +1 -1
- package/dist/round-facts.js +9 -3
- package/dist/round-facts.js.map +1 -1
- package/dist/round-transaction.d.ts.map +1 -1
- package/dist/round-transaction.js +19 -1
- package/dist/round-transaction.js.map +1 -1
- package/dist/self-eval.d.ts +23 -7
- package/dist/self-eval.d.ts.map +1 -1
- package/dist/self-eval.js +88 -16
- package/dist/self-eval.js.map +1 -1
- package/dist/submission-guidance.d.ts +36 -4
- package/dist/submission-guidance.d.ts.map +1 -1
- package/dist/submission-guidance.js +225 -78
- package/dist/submission-guidance.js.map +1 -1
- package/dist/submission-receipt.d.ts.map +1 -1
- package/dist/submission-receipt.js +6 -0
- package/dist/submission-receipt.js.map +1 -1
- package/dist/token-utils.d.ts +26 -0
- package/dist/token-utils.d.ts.map +1 -1
- package/dist/token-utils.js +56 -6
- package/dist/token-utils.js.map +1 -1
- package/dist/verification-actions.d.ts +13 -0
- package/dist/verification-actions.d.ts.map +1 -0
- package/dist/verification-actions.js +45 -0
- package/dist/verification-actions.js.map +1 -0
- package/dist/verification-gate.d.ts +5 -4
- package/dist/verification-gate.d.ts.map +1 -1
- package/dist/verification-gate.js +32 -45
- package/dist/verification-gate.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/loop_policy.json +58 -58
- package/package.json +68 -68
- package/skills/perception/SKILL.md +35 -11
package/README.md
CHANGED
|
@@ -77,14 +77,17 @@ Agent reports remain claims. Only independent observations can support a
|
|
|
77
77
|
verified fact.
|
|
78
78
|
|
|
79
79
|
Prepared responses carry `submission_guidance` with the real contract item and
|
|
80
|
-
sub-goal ids, usable commands and the fields that apply
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
80
|
+
sub-goal ids, real criterion ids/text, usable commands and the fields that apply
|
|
81
|
+
now. The prompt's evaluation block uses a compact trigger checklist rather than
|
|
82
|
+
a field catalog; omitting an optional field whose event did not happen remains
|
|
83
|
+
correct. Each submission returns `submission_receipt`, which separates saved
|
|
84
|
+
reports, derived-state effects and machine verification; a rejected attempt is
|
|
85
|
+
never shown as applied. `execution_report.files_changed` is the boundary net
|
|
86
|
+
change from round preparation, including deletions — a commit alone adds no
|
|
87
|
+
entry when content is unchanged. The receipt's `files_reconciliation` compares
|
|
88
|
+
the report with the derived round delta's `changedFiles`; raw observation
|
|
89
|
+
`files` is display data only. A missing or unobservable boundary is `null`,
|
|
90
|
+
never the dirty list and never an empty diff. A worker's
|
|
88
91
|
`discoveredConstraints` stays a report; only top-level `discovered_constraints`
|
|
89
92
|
promotes it into the active set. Unknown or retired optional fields are
|
|
90
93
|
diagnosed and dropped, never silently accepted; field metrics separate
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* The canonical state is data, not Markdown. Prompt and state-file renderers
|
|
4
4
|
* consume the same value so they cannot silently drift apart.
|
|
5
5
|
*/
|
|
6
|
-
import type { ConstraintMeta, CriterionStatus, RecurringFlag, LoopCompileRequest, LoopCompileResponse, MilestoneSummary, SubGoal, VerificationFlag } from "./protocol.js";
|
|
6
|
+
import type { ConstraintMeta, CriterionStatus, RecurringFlag, LoopCompileRequest, LoopCompileResponse, LoopRoundResult, MilestoneSummary, SubGoal, VerificationFlag } from "./protocol.js";
|
|
7
7
|
import type { ActiveContractView } from "./round-contract.js";
|
|
8
8
|
import type { ContractItemStatusView } from "./contract-items.js";
|
|
9
9
|
import type { ConfiguredCapability, VerifiedSubGoalFact } from "./protocol.js";
|
|
@@ -22,6 +22,36 @@ export declare function activeSubGoalView(subGoals: SubGoal[], cap: number): {
|
|
|
22
22
|
canceled: number;
|
|
23
23
|
total: number;
|
|
24
24
|
};
|
|
25
|
+
/** v3.9.4: the ONE active-constraint partition. `criteria` is the active
|
|
26
|
+
* success-criteria set; `hard` is the active hard set minus criteria;
|
|
27
|
+
* `other` is every remaining active constraint. The three groups are
|
|
28
|
+
* mutually exclusive and partition the active constraint texts that are
|
|
29
|
+
* rendered by the prompt/state file. */
|
|
30
|
+
export interface ActiveConstraintPartition {
|
|
31
|
+
criteria: string[];
|
|
32
|
+
hard: string[];
|
|
33
|
+
other: string[];
|
|
34
|
+
}
|
|
35
|
+
export declare function partitionActiveConstraints(state: {
|
|
36
|
+
successCriteria: ReadonlyArray<string>;
|
|
37
|
+
hardConstraints: ReadonlyArray<string>;
|
|
38
|
+
activeConstraints: ReadonlyArray<string>;
|
|
39
|
+
}): ActiveConstraintPartition;
|
|
40
|
+
/** v3.9.4: the ONE criterion row renderer for the normative prompt section.
|
|
41
|
+
* It consumes the same `successCriteria`/`criterionStatuses` pair the state
|
|
42
|
+
* file and submission boundary use, and reports the exact ids it emitted so
|
|
43
|
+
* prompt coverage can prove them. */
|
|
44
|
+
export declare function formatCriterionRows(statuses: ReadonlyArray<CriterionStatus>, successCriteria: ReadonlyArray<string>): {
|
|
45
|
+
lines: string[];
|
|
46
|
+
ids: string[];
|
|
47
|
+
};
|
|
48
|
+
/** v3.9.4: the ONE active-sub-goal formatter shared by the prompt and the
|
|
49
|
+
* state file. Rows past `cap` lose their descriptions but NEVER their ids:
|
|
50
|
+
* the overflow line lists every remaining `sg-*`. */
|
|
51
|
+
export declare function formatActiveSubGoals(subGoals: ReadonlyArray<SubGoal>, round: number, cap?: number): {
|
|
52
|
+
lines: string[];
|
|
53
|
+
ids: string[];
|
|
54
|
+
};
|
|
25
55
|
/** v3.3: Machine git-motion cross-check over the last committed rounds.
|
|
26
56
|
* Display-only companion to the R4/R5 exculpatory signal. Optional:
|
|
27
57
|
* absent when no committed rounds carry git snapshots — the object, when
|
|
@@ -152,5 +182,13 @@ derived?: {
|
|
|
152
182
|
* assemble a state out of values derived over different history windows —
|
|
153
183
|
* v3.4/v3.8 passed them as three independent options. */
|
|
154
184
|
roundFacts?: RoundFacts;
|
|
185
|
+
/** 3.9.3: the compile's ONE previous-round bundle. Structural subset of
|
|
186
|
+
* `PreviousRoundFacts` so this module never imports the compiler. When
|
|
187
|
+
* absent (direct/library callers) the request fields remain the
|
|
188
|
+
* fallback. */
|
|
189
|
+
previousRound?: {
|
|
190
|
+
result: LoopRoundResult | null;
|
|
191
|
+
verificationFlags: VerificationFlag[];
|
|
192
|
+
};
|
|
155
193
|
}): CanonicalLoopState;
|
|
156
194
|
//# sourceMappingURL=canonical-state.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"canonical-state.d.ts","sourceRoot":"","sources":["../src/canonical-state.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EACV,cAAc,EACd,eAAe,EACf,aAAa,EACb,kBAAkB,EAClB,mBAAmB,EACnB,gBAAgB,EAChB,OAAO,EACP,gBAAgB,EACjB,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"canonical-state.d.ts","sourceRoot":"","sources":["../src/canonical-state.ts"],"names":[],"mappings":"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"}
|
package/dist/canonical-state.js
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* consume the same value so they cannot silently drift apart.
|
|
5
5
|
*/
|
|
6
6
|
import { createHash } from "node:crypto";
|
|
7
|
-
import { deriveItemId, STABLE_ID_RE, unique } from "./token-utils.js";
|
|
7
|
+
import { deriveCriterionId, deriveItemId, normalizeText, STABLE_ID_RE, unique, uniqueNormalized, } from "./token-utils.js";
|
|
8
8
|
import { claimedMetCriteria, claimedRemainingCriteria } from "./self-eval.js";
|
|
9
9
|
import { getPolicy } from "./policy.js";
|
|
10
10
|
import { deriveConfiguredCapability } from "./policy.js";
|
|
@@ -31,6 +31,82 @@ export function activeSubGoalView(subGoals, cap) {
|
|
|
31
31
|
total: subGoals.length,
|
|
32
32
|
};
|
|
33
33
|
}
|
|
34
|
+
export function partitionActiveConstraints(state) {
|
|
35
|
+
const criteriaKeys = new Set(state.successCriteria.map((text) => normalizeText(text)));
|
|
36
|
+
const hardKeys = new Set(state.hardConstraints.map((text) => normalizeText(text)));
|
|
37
|
+
const hard = [];
|
|
38
|
+
const other = [];
|
|
39
|
+
for (const text of state.activeConstraints) {
|
|
40
|
+
const key = normalizeText(text);
|
|
41
|
+
if (criteriaKeys.has(key))
|
|
42
|
+
continue;
|
|
43
|
+
if (hardKeys.has(key))
|
|
44
|
+
hard.push(text);
|
|
45
|
+
else
|
|
46
|
+
other.push(text);
|
|
47
|
+
}
|
|
48
|
+
return { criteria: [...state.successCriteria], hard, other };
|
|
49
|
+
}
|
|
50
|
+
function criterionIcon(status) {
|
|
51
|
+
switch (status) {
|
|
52
|
+
case "verified": return "✅";
|
|
53
|
+
case "claimed": return "🟡";
|
|
54
|
+
case "insufficient": return "🟠";
|
|
55
|
+
case "contradicted": return "⛔";
|
|
56
|
+
case "remaining": return "⬜";
|
|
57
|
+
default: return "❔";
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
/** v3.9.4: the ONE criterion row renderer for the normative prompt section.
|
|
61
|
+
* It consumes the same `successCriteria`/`criterionStatuses` pair the state
|
|
62
|
+
* file and submission boundary use, and reports the exact ids it emitted so
|
|
63
|
+
* prompt coverage can prove them. */
|
|
64
|
+
export function formatCriterionRows(statuses, successCriteria) {
|
|
65
|
+
const byText = new Map(statuses.map((status) => [normalizeText(status.text), status]));
|
|
66
|
+
const seen = new Set();
|
|
67
|
+
const lines = [];
|
|
68
|
+
const ids = [];
|
|
69
|
+
for (const text of successCriteria) {
|
|
70
|
+
const status = byText.get(normalizeText(text));
|
|
71
|
+
const id = status?.id ?? deriveCriterionId(text);
|
|
72
|
+
if (seen.has(id))
|
|
73
|
+
continue;
|
|
74
|
+
seen.add(id);
|
|
75
|
+
ids.push(id);
|
|
76
|
+
const related = status && status.related_subgoal_ids.length > 0
|
|
77
|
+
? ` (related: ${status.related_subgoal_ids.join(", ")})`
|
|
78
|
+
: "";
|
|
79
|
+
lines.push(`- ${criterionIcon(status?.status ?? "unknown")} [\`${id}\`] ${text}${related}`);
|
|
80
|
+
}
|
|
81
|
+
return { lines, ids };
|
|
82
|
+
}
|
|
83
|
+
/** v3.9.4: the ONE active-sub-goal formatter shared by the prompt and the
|
|
84
|
+
* state file. Rows past `cap` lose their descriptions but NEVER their ids:
|
|
85
|
+
* the overflow line lists every remaining `sg-*`. */
|
|
86
|
+
export function formatActiveSubGoals(subGoals, round, cap = getPolicy().evolution.max_active_subgoals) {
|
|
87
|
+
const view = activeSubGoalView([...subGoals], Number.POSITIVE_INFINITY);
|
|
88
|
+
const shown = view.active.slice(0, Math.max(0, cap));
|
|
89
|
+
const hidden = view.active.slice(shown.length);
|
|
90
|
+
const lines = [];
|
|
91
|
+
for (const sg of shown) {
|
|
92
|
+
const statusIcon = sg.status === "in_progress" ? "🔄" :
|
|
93
|
+
sg.status === "blocked" ? "🚫" : "⏳";
|
|
94
|
+
const stale = sg.status === "pending" &&
|
|
95
|
+
round - sg.declared_at_round >= 10 ? " ⚠️ stale" : "";
|
|
96
|
+
const detail = sg.status === "in_progress"
|
|
97
|
+
? ` (since R${sg.status_changed_at_round})`
|
|
98
|
+
: sg.status === "pending"
|
|
99
|
+
? ` (since R${sg.declared_at_round})`
|
|
100
|
+
: ` (blocked R${sg.status_changed_at_round})`;
|
|
101
|
+
lines.push(`- ${statusIcon} [\`${sg.id}\`] ${sg.description}${detail}${stale}`);
|
|
102
|
+
}
|
|
103
|
+
if (hidden.length > 0) {
|
|
104
|
+
lines.push(`- also active (ids only): ${hidden.map((sg) => `\`${sg.id}\``).join(", ")}`);
|
|
105
|
+
}
|
|
106
|
+
lines.push(`> ${view.total} total · ${view.activeTotal} active · ` +
|
|
107
|
+
`${view.done} done · ${view.canceled} canceled`);
|
|
108
|
+
return { lines, ids: view.active.map((sg) => sg.id) };
|
|
109
|
+
}
|
|
34
110
|
// unique() imported from token-utils.ts
|
|
35
111
|
/** Deterministic JSON serialization used by state and prompt hashes. */
|
|
36
112
|
export function stableStringify(value) {
|
|
@@ -280,10 +356,13 @@ export function renderCanonicalStateMarkdown(state, options) {
|
|
|
280
356
|
function flatStateSections(state) {
|
|
281
357
|
const lines = [];
|
|
282
358
|
lines.push("## Loop Objective", "", state.objective, "", "## Current Task", "", state.currentTask);
|
|
283
|
-
// v2.11: Success Criteria and Constraints render with stable IDs for exact
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
359
|
+
// v2.11: Success Criteria and Constraints render with stable IDs for exact
|
|
360
|
+
// agent matching. v3.9.4: the three groups are the SAME mutually exclusive
|
|
361
|
+
// partition the prompt uses, so one text never appears with two prefixes.
|
|
362
|
+
const constraintPartition = partitionActiveConstraints(state);
|
|
363
|
+
addListWithIds(lines, "Success Criteria", constraintPartition.criteria, "cr");
|
|
364
|
+
addListWithIdentities(lines, "Hard Constraints", constraintPartition.hard, state.constraintMetadata);
|
|
365
|
+
addListWithIdentities(lines, "Active Constraints", constraintPartition.other, state.constraintMetadata);
|
|
287
366
|
addList(lines, "Changes Since Last Round", state.changesSinceLastRound);
|
|
288
367
|
if (state.progress.criteriaMet.length > 0 ||
|
|
289
368
|
state.progress.criteriaRemaining.length > 0 ||
|
|
@@ -373,7 +452,8 @@ function flatStateSections(state) {
|
|
|
373
452
|
if (state.verificationFlags.length > 0) {
|
|
374
453
|
lines.push("## Verification", "");
|
|
375
454
|
for (const flag of state.verificationFlags) {
|
|
376
|
-
lines.push(`- [${flag.severity}] [${flag.check}] ${flag.detail}`
|
|
455
|
+
lines.push(`- [${flag.severity}] [${flag.check}] \`${flag.field}\` — ${flag.detail}` +
|
|
456
|
+
(flag.ref ? ` [ref: \`${flag.ref}\`]` : ""));
|
|
377
457
|
}
|
|
378
458
|
lines.push("");
|
|
379
459
|
}
|
|
@@ -399,31 +479,14 @@ function flatStateSections(state) {
|
|
|
399
479
|
}
|
|
400
480
|
}
|
|
401
481
|
if (state.subGoals.length > 0) {
|
|
402
|
-
// v3.
|
|
403
|
-
//
|
|
404
|
-
|
|
405
|
-
const view = activeSubGoalView(state.subGoals, cap);
|
|
482
|
+
// v3.9.4: the SAME formatter the prompt uses. Rows past the display cap
|
|
483
|
+
// keep their ids in an overflow line, so the state file's active id set
|
|
484
|
+
// can never be narrower than the prompt's.
|
|
406
485
|
// L8: the heading is emitted whenever sub-goals exist — with every
|
|
407
486
|
// sub-goal terminal (0 active rows) the counts line must still live
|
|
408
487
|
// under its own section instead of leaking into the previous one.
|
|
409
488
|
lines.push("## Sub-Goal Dashboard", "");
|
|
410
|
-
|
|
411
|
-
for (const sg of view.active) {
|
|
412
|
-
const statusIcon = sg.status === "in_progress" ? "🔄" :
|
|
413
|
-
sg.status === "blocked" ? "🚫" : "⏳";
|
|
414
|
-
const stale = sg.status === "pending" &&
|
|
415
|
-
state.round - sg.declared_at_round >= 10 ? " ⚠️ stale" : "";
|
|
416
|
-
const detail = sg.status === "in_progress"
|
|
417
|
-
? ` (since R${sg.status_changed_at_round})`
|
|
418
|
-
: sg.status === "pending"
|
|
419
|
-
? ` (since R${sg.declared_at_round})`
|
|
420
|
-
: ` (blocked R${sg.status_changed_at_round})`;
|
|
421
|
-
lines.push(`- ${statusIcon} [\`${sg.id}\`] ${sg.description}${detail}${stale}`);
|
|
422
|
-
}
|
|
423
|
-
lines.push("");
|
|
424
|
-
}
|
|
425
|
-
lines.push(`> ${view.total} total · ${view.activeTotal} active · ` +
|
|
426
|
-
`${view.done} done · ${view.canceled} canceled`, "");
|
|
489
|
+
lines.push(...formatActiveSubGoals(state.subGoals, state.round).lines, "");
|
|
427
490
|
}
|
|
428
491
|
if (state.externalContext) {
|
|
429
492
|
lines.push("## External Context", "", state.externalContext, "");
|
|
@@ -469,9 +532,10 @@ export function createCanonicalLoopState(request, response, stateFilePath,
|
|
|
469
532
|
/** v3.3: Display-only derived data. Optional 4th param — callers that
|
|
470
533
|
* predate v3.3 stay on 3-arg calls. */
|
|
471
534
|
derived) {
|
|
472
|
-
const last = request.last_round_result;
|
|
535
|
+
const last = derived?.previousRound?.result ?? request.last_round_result;
|
|
473
536
|
const objective = response.loop_objective;
|
|
474
|
-
const verificationFlags =
|
|
537
|
+
const verificationFlags = derived?.previousRound?.verificationFlags ??
|
|
538
|
+
request.verification_flags ?? [];
|
|
475
539
|
const rolling = response.rolling_summary;
|
|
476
540
|
const executionReport = last?.execution_report;
|
|
477
541
|
const changes = unique([
|
|
@@ -495,6 +559,24 @@ derived) {
|
|
|
495
559
|
// section above. No active contract → the original task text is used,
|
|
496
560
|
// byte-identical to pre-v3.3 behavior.
|
|
497
561
|
const roundContract = derived?.roundFacts?.activeContract ?? null;
|
|
562
|
+
// v3.9.4: the rendered criterion/hard sets are ACTIVE sets. The compile
|
|
563
|
+
// response's `criterion_statuses` is the active criterion reference space
|
|
564
|
+
// (loop-compiler filters it); `constraints_active` is the active constraint
|
|
565
|
+
// set. A direct caller that omits `criterion_statuses` gets the objective
|
|
566
|
+
// fallback so library-level state construction still works.
|
|
567
|
+
const activeConstraints = uniqueNormalized(response.constraints_active);
|
|
568
|
+
const activeConstraintKeys = new Set(activeConstraints.map((text) => normalizeText(text)));
|
|
569
|
+
const observedCompile = response.criterion_statuses !== undefined;
|
|
570
|
+
const successCriteria = observedCompile
|
|
571
|
+
? uniqueNormalized(response.criterion_statuses.map((criterion) => criterion.text))
|
|
572
|
+
: uniqueNormalized(objective?.success_criteria ?? []);
|
|
573
|
+
const criteriaKeys = new Set(successCriteria.map((text) => normalizeText(text)));
|
|
574
|
+
const hardConstraints = uniqueNormalized(objective?.hard_constraints ?? [])
|
|
575
|
+
.filter((text) => {
|
|
576
|
+
const key = normalizeText(text);
|
|
577
|
+
return !criteriaKeys.has(key) &&
|
|
578
|
+
(!observedCompile || activeConstraintKeys.has(key));
|
|
579
|
+
});
|
|
498
580
|
return {
|
|
499
581
|
schemaVersion: CANONICAL_STATE_SCHEMA_VERSION,
|
|
500
582
|
loopId: response.loop_id || request.loop_id,
|
|
@@ -506,9 +588,9 @@ derived) {
|
|
|
506
588
|
currentTask: roundContract
|
|
507
589
|
? formatRoundContract(roundContract, derived?.roundFacts?.itemStatuses ?? null)
|
|
508
590
|
: request.task,
|
|
509
|
-
successCriteria
|
|
510
|
-
hardConstraints
|
|
511
|
-
activeConstraints
|
|
591
|
+
successCriteria,
|
|
592
|
+
hardConstraints,
|
|
593
|
+
activeConstraints,
|
|
512
594
|
retiredConstraints: unique(response.constraints_retired),
|
|
513
595
|
constraintMetadata: response.constraint_metadata ?? [],
|
|
514
596
|
changesSinceLastRound: changes,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"canonical-state.js","sourceRoot":"","sources":["../src/canonical-state.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAWzC,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,OAAO,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAIzD,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAU,CAAC;AAEzD;;;;;mCAKmC;AACnC,MAAM,UAAU,iBAAiB,CAC/B,QAAmB,EACnB,GAAW;IAQX,MAAM,IAAI,GAAG,CAAC,CAAU,EAAU,EAAE,CAClC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAClE,MAAM,MAAM,GAAG,QAAQ;SACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,CAAC,MAAM,KAAK,UAAU,CAAC;SAC7D,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACb,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;QACjB,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ;QACvB,CAAC,CAAC,uBAAuB,GAAG,CAAC,CAAC,uBAAuB;QACrD,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5B,OAAO;QACL,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;QAC5B,WAAW,EAAE,MAAM,CAAC,MAAM;QAC1B,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,MAAM;QACxD,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,MAAM;QAChE,KAAK,EAAE,QAAQ,CAAC,MAAM;KACvB,CAAC;AACJ,CAAC;AA2ED,wCAAwC;AAExC,wEAAwE;AACxE,MAAM,UAAU,eAAe,CAAC,KAAc;IAC5C,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAChD,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;IACrE,CAAC;IACD,MAAM,MAAM,GAAG,KAAgC,CAAC;IAChD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;IACxC,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAC1B,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CACzD,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,KAAyB;IAC1D,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC3E,CAAC;AAED;;+CAE+C;AAC/C,MAAM,oBAAoB,GAAG,CAAC,CAAC;AAE/B;;wDAEwD;AACxD,SAAS,aAAa,CAAC,KAAsB;IAC3C,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;AACzD,CAAC;AAED,SAAS,OAAO,CAAC,KAAe,EAAE,KAAa,EAAE,MAAgB;IAC/D,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAChC,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;IAC9B,KAAK,MAAM,KAAK,IAAI,MAAM;QAAE,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC;IACrD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACjB,CAAC;AAED;qEACqE;AAErE;;;;;;aAMa;AACb,SAAS,cAAc,CACrB,KAAe,EACf,KAAa,EACb,MAAgB,EAChB,MAAc;IAEd,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAChC,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;IAC9B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAC7B,IAAI,CAAC,OAAO;YAAE,SAAS;QACvB,iDAAiD;QACjD,IAAI,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAC/B,KAAK,CAAC,IAAI,CAAC,QAAQ,OAAO,OAAO,OAAO,EAAE,CAAC,CAAC;QAC9C,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,QAAQ,MAAM,IAAI,YAAY,CAAC,OAAO,CAAC,OAAO,OAAO,EAAE,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACjB,CAAC;AAED;;;;;;qCAMqC;AACrC,SAAS,qBAAqB,CAC5B,KAAe,EACf,KAAa,EACb,MAAgB,EAChB,QAA0B;IAE1B,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAChC,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACvE,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;IAC9B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAC7B,IAAI,CAAC,OAAO;YAAE,SAAS;QACvB,IAAI,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAC/B,KAAK,CAAC,IAAI,CAAC,QAAQ,OAAO,OAAO,OAAO,EAAE,CAAC,CAAC;QAC9C,CAAC;aAAM,CAAC;YACN,MAAM,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC;YACjE,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,OAAO,EAAE,CAAC,CAAC;QACzC,CAAC;IACH,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACjB,CAAC;AAED;;;;;;;;;;2EAU2E;AAC3E,MAAM,UAAU,cAAc,CAAC,KAAyB;IACtD,MAAM,aAAa,GAAG,KAAK,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;QAC/C,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;QAC/C,CAAC,CAAC,IAAI,CAAC;IACT,6EAA6E;IAC7E,yEAAyE;IACzE,IAAI,CAAC,aAAa;QAAE,OAAO,EAAE,CAAC;IAC9B,MAAM,WAAW,GAAG,aAAa,CAAC,WAAW,CAAC,GAAG,IAAI,KAAK,CAAC,KAAK;QAC9D,CAAC,CAAC,KAAK,CAAC,KAAK,GAAG,aAAa,CAAC,WAAW,CAAC,GAAG;QAC7C,CAAC,CAAC,IAAI,CAAC;IACT,MAAM,KAAK,GAAG;QACZ,UAAU,aAAa,CAAC,KAAK,GAAG;QAChC,SAAS,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,SAAS,EAAE;KAC1C,CAAC;IACF,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;QACzB,KAAK,CAAC,IAAI,CACR,GAAG,WAAW,SAAS,WAAW,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,0BAA0B,CAC9E,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC3B,CAAC;AAED;;;mEAGmE;AACnE,MAAM,UAAU,mBAAmB,CACjC,QAA4B;AAC5B;6EAC6E;AAC7E,QAAwC;IAExC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,OAAO,GAAG,QAAQ,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC;IAC3C,KAAK,CAAC,IAAI,CAAC,KAAK,OAAO,IAAI,gBAAgB,OAAO,QAAQ,CAAC,EAAE,GAAG,CAAC,CAAC;IAClE,MAAM,UAAU,GAAG,IAAI,GAAG,CACxB,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAC3D,CAAC;IACF,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;QAClC,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACxC,MAAM,IAAI,GAAG,OAAO,EAAE,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG;YAC/C,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK,cAAc,CAAC,CAAC,CAAC,IAAI;gBAC3C,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK,cAAc,CAAC,CAAC,CAAC,GAAG;oBAC1C,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG;wBACrC,CAAC,CAAC,EAAE,CAAC;QACP,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,CAAC,EAAE,OAAO,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACtH,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChC,KAAK,CAAC,IAAI,CAAC,mBAAmB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC/D,CAAC;QACD,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnC,KAAK,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAChE,CAAC;QACD,IAAI,OAAO,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;YAC5B,KAAK,CAAC,IAAI,CAAC,2BAA2B,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;QACnC,KAAK,CAAC,IAAI,CAAC,YAAY,KAAK,EAAE,CAAC,CAAC;IAClC,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,8EAA8E;AAC9E,oCAAoC;AACpC,8EAA8E;AAE9E;;sEAEsE;AACtE,MAAM,UAAU,gBAAgB,CAAC,SAA2B;IAC1D,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,KAAK,gBAAgB;QAClD,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,SAAS,CAAC,IAAI,KAAK,oBAAoB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;IACzD,OAAO,KAAK,QAAQ,IAAI,SAAS,CAAC,KAAK,cAAc,SAAS,CAAC,WAAW,CAAC,KAAK,IAAI,SAAS,CAAC,WAAW,CAAC,GAAG,GAAG,CAAC;AACnH,CAAC;AAYD,MAAM,kBAAkB,GAA8B;IACpD,6DAA6D;IAC7D,gBAAgB,EAAE,SAAS;IAC3B,cAAc,EAAE,SAAS;IACzB,kBAAkB,EAAE,SAAS;IAC7B,kBAAkB,EAAE,SAAS;IAC7B,oBAAoB,EAAE,SAAS;IAC/B,SAAS,EAAE,SAAS;IACpB,QAAQ,EAAE,SAAS;IACnB,oBAAoB,EAAE,SAAS;IAC/B,kBAAkB,EAAE,SAAS;IAC7B,yEAAyE;IACzE,4EAA4E;IAC5E,0EAA0E;IAC1E,4EAA4E;IAC5E,4EAA4E;IAC5E,uDAAuD;IACvD,KAAK,EAAE,SAAS;IAChB,uEAAuE;IACvE,4DAA4D;IAC5D,oBAAoB,EAAE,QAAQ;IAC9B,YAAY,EAAE,QAAQ;IACtB,0BAA0B,EAAE,QAAQ;IACpC,WAAW,EAAE,QAAQ;IACrB,uEAAuE;IACvE,yBAAyB;IACzB,iBAAiB,EAAE,oBAAoB;IACvC,sBAAsB,EAAE,oBAAoB;IAC5C,iBAAiB,EAAE,oBAAoB;IACvC,iBAAiB,EAAE,oBAAoB;IACvC,qBAAqB,EAAE,oBAAoB;IAC3C,eAAe,EAAE,oBAAoB;CACtC,CAAC;AAEF,MAAM,gBAAgB,GAAgB,CAAC,SAAS,EAAE,QAAQ,EAAE,oBAAoB,CAAC,CAAC;AAWlF;;;;;kEAKkE;AAClE,MAAM,UAAU,4BAA4B,CAC1C,KAAyB,EACzB,OAAgC;IAEhC,MAAM,QAAQ,GAAG;QACf,uBAAuB,KAAK,CAAC,MAAM,EAAE;QACrC,EAAE;QACF,eAAe,KAAK,CAAC,aAAa,EAAE;QACpC,cAAc,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,SAAS,EAAE;QAC9C,gBAAgB,KAAK,CAAC,MAAM,EAAE;QAC9B,mBAAmB;QACnB,qBAAqB,KAAK,CAAC,KAAK,aAAa,OAAO,EAAE,OAAO,IAAI,CAAC,GAAG;QACrE,mBAAmB,kBAAkB,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE;QAC3D,EAAE;KACH,CAAC;IACF,MAAM,QAAQ,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IAC1C,IAAI,OAAO,EAAE,aAAa,IAAI,OAAO,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/D,QAAQ,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,gBAAgB,EAAE,IAAI,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;IAC7E,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,GAAG,EAAuD,CAAC;IAC9E,KAAK,MAAM,IAAI,IAAI,gBAAgB;QAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAC1D,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,kBAAkB,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC;QAC3D,MAAM,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IACD,MAAM,GAAG,GAAa,CAAC,GAAG,QAAQ,CAAC,CAAC;IACpC,KAAK,MAAM,IAAI,IAAI,gBAAgB,EAAE,CAAC;QACpC,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC;QACvC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QACxC,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QAC3B,KAAK,MAAM,OAAO,IAAI,YAAY,EAAE,CAAC;YACnC,GAAG,CAAC,IAAI,CAAC,OAAO,OAAO,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;YACrC,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,IAAI;gBAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAChD,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC;AACzC,CAAC;AAED;;uCAEuC;AACvC,SAAS,iBAAiB,CAAC,KAAyB;IAClD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CACR,mBAAmB,EAAE,EAAE,EAAE,KAAK,CAAC,SAAS,EAAE,EAAE,EAC5C,iBAAiB,EAAE,EAAE,EAAE,KAAK,CAAC,WAAW,CACzC,CAAC;IACF,0FAA0F;IAC1F,cAAc,CAAC,KAAK,EAAE,kBAAkB,EAAE,KAAK,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;IACvE,cAAc,CAAC,KAAK,EAAE,kBAAkB,EAAE,KAAK,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC;IACtE,qBAAqB,CAAC,KAAK,EAAE,oBAAoB,EAAE,KAAK,CAAC,iBAAiB,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAC;IACtG,OAAO,CAAC,KAAK,EAAE,0BAA0B,EAAE,KAAK,CAAC,qBAAqB,CAAC,CAAC;IACxE,IACE,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC;QACrC,KAAK,CAAC,QAAQ,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC;QAC3C,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC;QACtC,KAAK,CAAC,QAAQ,CAAC,KAAK,KAAK,IAAI;QAC7B,KAAK,CAAC,aAAa,KAAK,SAAS,EACjC,CAAC;QACD,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,iBAAiB,CAAC,MAAM,CAAC;QAC1F,KAAK,CAAC,IAAI,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC;QACxC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACd,KAAK,CAAC,IAAI,CAAC,iBAAiB,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,IAAI,KAAK,EAAE,CAAC,CAAC;QAC5E,CAAC;QACD,0EAA0E;QAC1E,4EAA4E;QAC5E,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;YACxB,MAAM,EAAE,GAAG,KAAK,CAAC,aAAa,CAAC;YAC/B,MAAM,MAAM,GAAG,EAAE,CAAC,SAAS;gBACzB,CAAC,CAAC,uBAAuB,EAAE,CAAC,YAAY,IAAI,EAAE,CAAC,YAAY,0BAA0B;gBACrF,CAAC,CAAC,8BAA8B,EAAE,CAAC,YAAY,mBAAmB,CAAC;YACrE,KAAK,CAAC,IAAI,CAAC,sBAAsB,MAAM,EAAE,CAAC,CAAC;QAC7C,CAAC;QACD,IAAI,KAAK,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvC,MAAM,QAAQ,GAAG,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,KAAK,UAAU,IAAI,EAAE,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,MAAM,CAAC;YACpH,KAAK,CAAC,IAAI,CAAC,2BAA2B,QAAQ,IAAI,KAAK,CAAC,iBAAiB,CAAC,MAAM,8BAA8B,CAAC,CAAC;QAClH,CAAC;QACD,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;YACzB,KAAK,CAAC,IAAI,CACR,cAAc,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,WAAW;gBACpD,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,YAAY,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,UAAU,CACjF,CAAC;QACJ,CAAC;QACD,IAAI,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3C,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,oBAAoB,CAAC,CAAC;YACrC,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,QAAQ,CAAC,YAAY;gBAAE,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;QAC1E,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IACD,2EAA2E;IAC3E,IAAI,KAAK,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvC,KAAK,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC;QACrC,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;YACzC,MAAM,IAAI,GAAG,EAAE,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG;gBACzC,CAAC,CAAC,EAAE,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI;oBAChC,CAAC,CAAC,EAAE,CAAC,MAAM,KAAK,cAAc,CAAC,CAAC,CAAC,IAAI;wBACrC,CAAC,CAAC,EAAE,CAAC,MAAM,KAAK,cAAc,CAAC,CAAC,CAAC,GAAG;4BACpC,CAAC,CAAC,EAAE,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;YAC1C,MAAM,KAAK,GAAG,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;YAChC,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9E,MAAM,OAAO,GAAG,EAAE,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC;gBAC/C,CAAC,CAAC,cAAc,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;gBACpD,CAAC,CAAC,EAAE,CAAC;YACP,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC,IAAI,GAAG,GAAG,GAAG,OAAO,EAAE,CAAC,CAAC;QAC7D,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IACD,cAAc,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;IAClE,OAAO,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC3C,MAAM,SAAS,GAAG,aAAa,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IACtD,OAAO,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;IACjD,OAAO,CAAC,KAAK,EAAE,sBAAsB,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;IAC9D,OAAO,CAAC,KAAK,EAAE,iBAAiB,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;IACxD,sEAAsE;IACtE,yEAAyE;IACzE,0EAA0E;IAC1E,yEAAyE;IACzE,gDAAgD;IAChD,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,KAAK,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC;QACrC,KAAK,MAAM,IAAI,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,oBAAoB,CAAC,EAAE,CAAC;YAC5D,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,KAAK,sBAAsB;gBAC/C,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,oBAAoB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;YACrD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;YAC1E,KAAK,CAAC,IAAI,CACR,KAAK,IAAI,IAAI,OAAO,MAAM,IAAI,CAAC,KAAK,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CACtE,CAAC;QACJ,CAAC;QACD,IAAI,SAAS,CAAC,MAAM,GAAG,oBAAoB,EAAE,CAAC;YAC5C,KAAK,CAAC,IAAI,CAAC,aAAa,SAAS,CAAC,MAAM,GAAG,oBAAoB,OAAO,CAAC,CAAC;QAC1E,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IACD,OAAO,CAAC,KAAK,EAAE,qBAAqB,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAChE,0EAA0E;IAC1E,4EAA4E;IAC5E,MAAM,SAAS,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IACxC,IAAI,SAAS,EAAE,CAAC;QACd,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,EAAE,KAAK,SAAS,EAAE,CAAC,CAAC;QAC7C,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IACD,IAAI,KAAK,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvC,KAAK,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC;QAClC,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;YAC3C,KAAK,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ,MAAM,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QACpE,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IACD,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChC,KAAK,CAAC,IAAI,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;QACnC,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACjC,MAAM,QAAQ,GAAG,CAAC,CAAC,IAAI,KAAK,gBAAgB;gBAC1C,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,oBAAoB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;YACjD,KAAK,CAAC,IAAI,CACR,OAAO,QAAQ,IAAI,CAAC,CAAC,KAAK,EAAE,EAC5B,UAAU,CAAC,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC,CAAC,WAAW,CAAC,GAAG,EAAE,EACpD,EAAE,EACF,gBAAgB,CAAC,CAAC,OAAO,EAAE,EAC3B,EAAE,CACH,CAAC;YACF,IAAI,CAAC,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrC,KAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;gBACvC,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,mBAAmB;oBAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAC5D,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACjB,CAAC;YACD,IAAI,CAAC,CAAC,oBAAoB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtC,KAAK,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;gBACzC,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,oBAAoB;oBAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAC7D,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACjB,CAAC;QACH,CAAC;IACH,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,qEAAqE;QACrE,gDAAgD;QAChD,MAAM,GAAG,GAAG,SAAS,EAAE,CAAC,SAAS,CAAC,mBAAmB,CAAC;QACtD,MAAM,IAAI,GAAG,iBAAiB,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;QACpD,mEAAmE;QACnE,oEAAoE;QACpE,kEAAkE;QAClE,KAAK,CAAC,IAAI,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC;QACxC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBAC7B,MAAM,UAAU,GACd,EAAE,CAAC,MAAM,KAAK,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;oBACpC,EAAE,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;gBACvC,MAAM,KAAK,GAAG,EAAE,CAAC,MAAM,KAAK,SAAS;oBACnC,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC9D,MAAM,MAAM,GAAG,EAAE,CAAC,MAAM,KAAK,aAAa;oBACxC,CAAC,CAAC,YAAY,EAAE,CAAC,uBAAuB,GAAG;oBAC3C,CAAC,CAAC,EAAE,CAAC,MAAM,KAAK,SAAS;wBACzB,CAAC,CAAC,YAAY,EAAE,CAAC,iBAAiB,GAAG;wBACrC,CAAC,CAAC,cAAc,EAAE,CAAC,uBAAuB,GAAG,CAAC;gBAChD,KAAK,CAAC,IAAI,CAAC,KAAK,UAAU,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,WAAW,GAAG,MAAM,GAAG,KAAK,EAAE,CAAC,CAAC;YAClF,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjB,CAAC;QACD,KAAK,CAAC,IAAI,CACR,KAAK,IAAI,CAAC,KAAK,YAAY,IAAI,CAAC,WAAW,YAAY;YACvD,GAAG,IAAI,CAAC,IAAI,WAAW,IAAI,CAAC,QAAQ,WAAW,EAC/C,EAAE,CACH,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;QAC1B,KAAK,CAAC,IAAI,CAAC,qBAAqB,EAAE,EAAE,EAAE,KAAK,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;IACnE,CAAC;IACD,wEAAwE;IACxE,0EAA0E;IAC1E,sEAAsE;IACtE,uEAAuE;IACvE,sEAAsE;IACtE,mEAAmE;IACnE,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC;QACjC,GAAG,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC;QAClC,gBAAgB;KACjB,CAAC,CAAC;IACH,MAAM,QAAQ,GAA6C,EAAE,CAAC;IAC9D,IAAI,OAAO,GAA6C,IAAI,CAAC;IAC7D,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,OAAO,IAAI,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,EAAE,CAAC;YACnD,OAAO,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;YAC3C,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACvB,MAAM,GAAG,KAAK,CAAC;YACf,SAAS;QACX,CAAC;QACD,IAAI,CAAC,OAAO;YAAE,SAAS;QACvB,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE;gBAAE,SAAS,CAAC,wCAAwC;YAC1E,MAAM,GAAG,IAAI,CAAC;QAChB,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IACD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,OAAO,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;YAC/E,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;QACrB,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,OAA2B,EAC3B,QAA6B,EAC7B,aAAqB;AACrB;wCACwC;AACxC,OAUC;IAED,MAAM,IAAI,GAAG,OAAO,CAAC,iBAAiB,CAAC;IACvC,MAAM,SAAS,GAAG,QAAQ,CAAC,cAAc,CAAC;IAC1C,MAAM,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,IAAI,EAAE,CAAC;IAC3D,MAAM,OAAO,GAAG,QAAQ,CAAC,eAAe,CAAC;IACzC,MAAM,eAAe,GAAG,IAAI,EAAE,gBAAgB,CAAC;IAE/C,MAAM,OAAO,GAAG,MAAM,CAAC;QACrB,OAAO,CAAC,oBAAoB;QAC5B,IAAI,EAAE,cAAc;QACpB,GAAG,CAAC,IAAI,EAAE,iBAAiB,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAC/C,yBAAyB,KAAK,EAAE,CACjC;KACF,CAAC,CAAC;IAEH,MAAM,WAAW,GAAG,MAAM,CAAC;QACzB,GAAG,CAAC,IAAI,EAAE,sBAAsB,IAAI,EAAE,CAAC;QACvC,GAAG,CAAC,IAAI,EAAE,gBAAgB,IAAI,EAAE,CAAC;KAClC,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,MAAM,CAAC;QACtB,GAAG,CAAC,IAAI,EAAE,qBAAqB,IAAI,EAAE,CAAC;QACtC,IAAI,EAAE,mBAAmB;QACzB,OAAO,CAAC,gBAAgB;QACxB,GAAG,QAAQ,CAAC,QAAQ;KACrB,CAAC,CAAC;IAEH,uEAAuE;IACvE,yEAAyE;IACzE,mEAAmE;IACnE,sEAAsE;IACtE,uCAAuC;IACvC,MAAM,aAAa,GAAG,OAAO,EAAE,UAAU,EAAE,cAAc,IAAI,IAAI,CAAC;IAElE,OAAO;QACL,aAAa,EAAE,8BAA8B;QAC7C,MAAM,EAAE,QAAQ,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO;QAC3C,KAAK,EAAE,QAAQ,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK;QACtC,SAAS,EAAE,OAAO,CAAC,UAAU,IAAI,SAAS,EAAE,CAAC,MAAM,CAAC,UAAU;QAC9D,MAAM,EAAE,QAAQ,CAAC,OAAO;QACxB,SAAS,EAAE,SAAS,EAAE,SAAS,IAAI,OAAO,CAAC,IAAI;QAC/C,gBAAgB,EAAE,SAAS,EAAE,OAAO,IAAI,CAAC;QACzC,WAAW,EAAE,aAAa;YACxB,CAAC,CAAC,mBAAmB,CAAC,aAAa,EAAE,OAAO,EAAE,UAAU,EAAE,YAAY,IAAI,IAAI,CAAC;YAC/E,CAAC,CAAC,OAAO,CAAC,IAAI;QAChB,eAAe,EAAE,MAAM,CAAC,SAAS,EAAE,gBAAgB,IAAI,EAAE,CAAC;QAC1D,eAAe,EAAE,MAAM,CAAC,SAAS,EAAE,gBAAgB,IAAI,EAAE,CAAC;QAC1D,iBAAiB,EAAE,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAC;QACtD,kBAAkB,EAAE,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAC;QACxD,kBAAkB,EAAE,QAAQ,CAAC,mBAAmB,IAAI,EAAE;QACtD,qBAAqB,EAAE,OAAO;QAC9B,iBAAiB,EAAE,MAAM,CACvB,wBAAwB,CAAC,IAAI,EAAE,gBAAgB,CAAC,CACjD;QACD,QAAQ;QACR,iBAAiB;QACjB,WAAW;QACX,eAAe,EAAE,MAAM,CAAC,OAAO,EAAE,YAAY,IAAI,EAAE,CAAC;QACpD,cAAc,EAAE,MAAM,CAAC,OAAO,EAAE,eAAe,IAAI,EAAE,CAAC;QACtD,UAAU,EAAE,OAAO,EAAE,UAAU,IAAI,EAAE;QACrC,QAAQ,EAAE,QAAQ,CAAC,SAAS,IAAI,EAAE;QAClC,iBAAiB,EAAE,QAAQ,CAAC,kBAAkB,IAAI,EAAE;QACpD,cAAc,EAAE,QAAQ,CAAC,eAAe,IAAI,EAAE;QAC9C,eAAe,EAAE,OAAO,CAAC,gBAAgB,EAAE,IAAI,EAAE,IAAI,EAAE;QACvD,aAAa;QACb,QAAQ,EAAE;YACR,WAAW,EAAE,MAAM,CAAC,kBAAkB,CAAC,eAAe,CAAC,CAAC;YACxD,iBAAiB,EAAE,MAAM,CACvB,wBAAwB,CAAC,eAAe,CAAC,CAC1C;YACD,YAAY,EAAE,MAAM,CAAC,eAAe,EAAE,aAAa,IAAI,EAAE,CAAC;YAC1D,KAAK,EAAE,eAAe,EAAE,cAAc,IAAI,IAAI;SAC/C;QACD,sEAAsE;QACtE,gEAAgE;QAChE,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3E,qEAAqE;QACrE,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3C,GAAG,CAAC,OAAO,EAAE,UAAU,EAAE,YAAY;YACnC,CAAC,CAAC,EAAE,oBAAoB,EAAE,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE;YAC3D,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,OAAO,EAAE,UAAU,EAAE,gBAAgB;YACvC,OAAO,CAAC,UAAU,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC;YAC9C,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE;YAChE,CAAC,CAAC,EAAE,CAAC;QACP,UAAU,EAAE,0BAA0B,CAAC,SAAS,EAAE,CAAC;KACpD,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"canonical-state.js","sourceRoot":"","sources":["../src/canonical-state.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
import type { MachineObservation } from "./protocol.js";
|
|
8
8
|
import type { ObservationDelta } from "./evidence-provider.js";
|
|
9
9
|
import type { VaultEntry } from "./loop-store.js";
|
|
10
|
-
import type { ContractBinding, ExecutionReport, PromptArtifact, RoundContractProposal, RoundOutcome, SelfEvaluation, SubmissionDiagnostic, SubGoalUpdate, VerificationFlag } from "./protocol.js";
|
|
10
|
+
import type { ContractBinding, ExecutionReport, LoopRoundResult, PromptArtifact, RoundContractProposal, RoundOutcome, SelfEvaluation, SubmissionDiagnostic, SubGoalUpdate, VerificationFlag } from "./protocol.js";
|
|
11
11
|
import type { RoundProcessResult } from "./round-coordinator.js";
|
|
12
12
|
export type CommittedAction = "continue" | "stop" | "backtrack";
|
|
13
13
|
/** v3.8.1: the rolled-back branch's facts, decoded from a committed rollback
|
|
@@ -91,6 +91,23 @@ export declare function decodeMergedRound(entry: unknown): CommittedRoundView |
|
|
|
91
91
|
* entry. Compile-side callers used to inline this chain as a private
|
|
92
92
|
* `committedView` helper. */
|
|
93
93
|
export declare function decodeRound(entry: unknown): CommittedRoundView | null;
|
|
94
|
+
/** THE committed-view → compiler-request projection.
|
|
95
|
+
*
|
|
96
|
+
* The compiler once received these fields from the caller's mutable
|
|
97
|
+
* `last_round_result`, which existed on the live path and was absent on
|
|
98
|
+
* resume/unpause/backtrack compiles. This projection lets one committed
|
|
99
|
+
* fact source feed every consumer. Optional declarations are read from the
|
|
100
|
+
* decoded view where it exposes them; `manual_fixes_needed` has no
|
|
101
|
+
* committed source and stays empty. */
|
|
102
|
+
export declare function roundResultFromCommittedRound(view: CommittedRoundView): LoopRoundResult;
|
|
103
|
+
/** The ONE pending-backtrack lookup for a redo round.
|
|
104
|
+
*
|
|
105
|
+
* A backtrack commits at the failed round R, while the redo targets
|
|
106
|
+
* `backtrackTarget + 1`, which is lower than R for a deep restore. Matching
|
|
107
|
+
* the decoded target (with the legacy exact-round fallback when the record
|
|
108
|
+
* carries no target) keeps the recovery boundary AND the Recovery Brief
|
|
109
|
+
* correct for every backtrack depth. */
|
|
110
|
+
export declare function pendingBacktrackRecord(entries: ReadonlyArray<unknown>, redoRound: number): CommittedRoundView | null;
|
|
94
111
|
/** Lineage sub-object of an entry (`loop_lineage`; v3.7: the legacy
|
|
95
112
|
* top-level `lineage` alias was removed), or {} when absent. */
|
|
96
113
|
export declare function entryLineage(entry: unknown): Record<string, unknown>;
|
|
@@ -198,10 +215,16 @@ export declare function gitMotionSignal(input: {
|
|
|
198
215
|
}): boolean | null;
|
|
199
216
|
/** Git HEAD as a machine observation exposes it, or null when it is silent. */
|
|
200
217
|
export declare function observedGitHead(observation: MachineObservation | undefined): string | null;
|
|
201
|
-
/**
|
|
202
|
-
*
|
|
203
|
-
*
|
|
218
|
+
/** A round's own motion, from its derived Git deltas. A Git boundary that
|
|
219
|
+
* cannot be compared yields `null` unless HEAD movement or the restore point
|
|
220
|
+
* independently proves motion. Every Git delta participates: one moving
|
|
221
|
+
* provider is motion, one undecidable provider makes the aggregate unknown,
|
|
222
|
+
* and only an all-provider observed no-change is `false`. */
|
|
204
223
|
export declare function inFlightGitMotion(deltas: ReadonlyArray<ObservationDelta>, restoreTargetHead?: string): boolean | null;
|
|
224
|
+
/** The committed-round form of the same motion rule. Named separately so a
|
|
225
|
+
* reader can see that prompt freshness never passes an in-flight restore
|
|
226
|
+
* head (a committed round has no pending backtrack of its own). */
|
|
227
|
+
export declare function committedRoundGitMotion(view: CommittedRoundView): boolean | null;
|
|
205
228
|
/** Machine-observed git motion for the most recent contiguous window.
|
|
206
229
|
* A clean worktree is not the same thing as no progress: commit-per-slice
|
|
207
230
|
* workflows leave no file delta even though HEAD advanced. Unknown motion in
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"committed-round.d.ts","sourceRoot":"","sources":["../src/committed-round.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"committed-round.d.ts","sourceRoot":"","sources":["../src/committed-round.ts"],"names":[],"mappings":"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"}
|
package/dist/committed-round.js
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
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 { GIT_OBSERVATION_SCHEMA_VERSION, PROMPT_ARTIFACT_SCHEMA_VERSION, } from "./protocol.js";
|
|
7
|
+
import { GIT_OBSERVATION_SCHEMA_VERSION, PROMPT_ARTIFACT_SCHEMA_VERSION, makeLoopRoundResult, } from "./protocol.js";
|
|
8
8
|
import { ROUND_TRANSACTION_SCHEMA_VERSION, deriveRoundObservationDelta, parseRoundTransactionSnapshot, transactionSchemaVersionOf, } from "./round-transaction.js";
|
|
9
9
|
import { claimedMetCriteria, claimedRemainingCriteria, effectiveOutcome, parseRoundContract } from "./self-eval.js";
|
|
10
10
|
import { entryRound, isRecord } from "./token-utils.js";
|
|
@@ -242,6 +242,63 @@ export function decodeMergedRound(entry) {
|
|
|
242
242
|
export function decodeRound(entry) {
|
|
243
243
|
return decodeMergedRound(entry) ?? decodeCommittedRound(entry);
|
|
244
244
|
}
|
|
245
|
+
/** THE committed-view → compiler-request projection.
|
|
246
|
+
*
|
|
247
|
+
* The compiler once received these fields from the caller's mutable
|
|
248
|
+
* `last_round_result`, which existed on the live path and was absent on
|
|
249
|
+
* resume/unpause/backtrack compiles. This projection lets one committed
|
|
250
|
+
* fact source feed every consumer. Optional declarations are read from the
|
|
251
|
+
* decoded view where it exposes them; `manual_fixes_needed` has no
|
|
252
|
+
* committed source and stays empty. */
|
|
253
|
+
export function roundResultFromCommittedRound(view) {
|
|
254
|
+
const evaluation = view.evaluation;
|
|
255
|
+
return makeLoopRoundResult({
|
|
256
|
+
round: view.round,
|
|
257
|
+
success: view.success,
|
|
258
|
+
output_summary: evaluation?.output_summary ?? "",
|
|
259
|
+
constraint_violations: [...(evaluation?.constraint_violations ?? [])],
|
|
260
|
+
manual_fixes_needed: "",
|
|
261
|
+
discovered_constraints: [...(view.discoveredConstraints ?? [])],
|
|
262
|
+
objective_refinement: evaluation?.objective_refinement ?? "",
|
|
263
|
+
emerged_subtasks: [...(view.emergedSubtasks ?? [])],
|
|
264
|
+
subgoal_updates: [...(view.subgoalUpdates ?? [])],
|
|
265
|
+
execution_report: view.executionReport ?? undefined,
|
|
266
|
+
retracted_constraints: [...(view.retractedConstraints ?? [])],
|
|
267
|
+
revised_success_criteria: [...(evaluation?.revised_success_criteria ?? [])],
|
|
268
|
+
wrong_assumptions: [...(evaluation?.wrong_assumptions ?? [])],
|
|
269
|
+
worker_results: [...(evaluation?.worker_results ?? [])],
|
|
270
|
+
compression_checkpoint: evaluation?.compression_checkpoint === true,
|
|
271
|
+
checkpoint_label: evaluation?.checkpoint_label ?? "",
|
|
272
|
+
prompt_requests: evaluation?.prompt_requests,
|
|
273
|
+
outcome: evaluation?.outcome,
|
|
274
|
+
blocker: evaluation?.blocker,
|
|
275
|
+
retroactiveClaims: [...(evaluation?.retroactiveClaims ?? [])],
|
|
276
|
+
no_change_reason: evaluation?.no_change_reason,
|
|
277
|
+
});
|
|
278
|
+
}
|
|
279
|
+
/** The ONE pending-backtrack lookup for a redo round.
|
|
280
|
+
*
|
|
281
|
+
* A backtrack commits at the failed round R, while the redo targets
|
|
282
|
+
* `backtrackTarget + 1`, which is lower than R for a deep restore. Matching
|
|
283
|
+
* the decoded target (with the legacy exact-round fallback when the record
|
|
284
|
+
* carries no target) keeps the recovery boundary AND the Recovery Brief
|
|
285
|
+
* correct for every backtrack depth. */
|
|
286
|
+
export function pendingBacktrackRecord(entries, redoRound) {
|
|
287
|
+
for (let index = entries.length - 1; index >= 0; index--) {
|
|
288
|
+
const view = decodeRound(entries[index]);
|
|
289
|
+
if (!view || view.action !== "backtrack")
|
|
290
|
+
continue;
|
|
291
|
+
const target = view.backtrack?.target;
|
|
292
|
+
if (typeof target === "number") {
|
|
293
|
+
if (target + 1 === redoRound)
|
|
294
|
+
return view;
|
|
295
|
+
continue;
|
|
296
|
+
}
|
|
297
|
+
if (view.round === redoRound)
|
|
298
|
+
return view;
|
|
299
|
+
}
|
|
300
|
+
return null;
|
|
301
|
+
}
|
|
245
302
|
/** Lineage sub-object of an entry (`loop_lineage`; v3.7: the legacy
|
|
246
303
|
* top-level `lineage` alias was removed), or {} when absent. */
|
|
247
304
|
export function entryLineage(entry) {
|
|
@@ -536,21 +593,37 @@ function observedGitObservation(observation) {
|
|
|
536
593
|
function observedGitIn(observations) {
|
|
537
594
|
return observations.find((observation) => observation.kind === "git" && observation.status === "observed") ?? null;
|
|
538
595
|
}
|
|
539
|
-
/**
|
|
540
|
-
*
|
|
541
|
-
*
|
|
596
|
+
/** A round's own motion, from its derived Git deltas. A Git boundary that
|
|
597
|
+
* cannot be compared yields `null` unless HEAD movement or the restore point
|
|
598
|
+
* independently proves motion. Every Git delta participates: one moving
|
|
599
|
+
* provider is motion, one undecidable provider makes the aggregate unknown,
|
|
600
|
+
* and only an all-provider observed no-change is `false`. */
|
|
542
601
|
export function inFlightGitMotion(deltas, restoreTargetHead) {
|
|
543
|
-
const
|
|
544
|
-
if (
|
|
602
|
+
const gitDeltas = deltas.filter((delta) => delta.kind === "git");
|
|
603
|
+
if (gitDeltas.length === 0)
|
|
545
604
|
return null;
|
|
546
|
-
|
|
547
|
-
const
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
605
|
+
let sawUnknown = false;
|
|
606
|
+
for (const git of gitDeltas) {
|
|
607
|
+
const before = observedGitObservation(git.before);
|
|
608
|
+
const after = observedGitObservation(git.after);
|
|
609
|
+
const signal = gitMotionSignal({
|
|
610
|
+
changedFiles: git.changedFiles,
|
|
611
|
+
headBefore: observedGitHead(before ?? undefined),
|
|
612
|
+
headAfter: observedGitHead(after ?? undefined),
|
|
613
|
+
restoreTargetHead: restoreTargetHead ?? null,
|
|
614
|
+
});
|
|
615
|
+
if (signal === true)
|
|
616
|
+
return true;
|
|
617
|
+
if (signal === null)
|
|
618
|
+
sawUnknown = true;
|
|
619
|
+
}
|
|
620
|
+
return sawUnknown ? null : false;
|
|
621
|
+
}
|
|
622
|
+
/** The committed-round form of the same motion rule. Named separately so a
|
|
623
|
+
* reader can see that prompt freshness never passes an in-flight restore
|
|
624
|
+
* head (a committed round has no pending backtrack of its own). */
|
|
625
|
+
export function committedRoundGitMotion(view) {
|
|
626
|
+
return inFlightGitMotion(view.observationDelta);
|
|
554
627
|
}
|
|
555
628
|
/** Machine-observed git motion for the most recent contiguous window.
|
|
556
629
|
* A clean worktree is not the same thing as no progress: commit-per-slice
|