loopforge 3.7.1 → 3.8.2
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 +84 -130
- package/dist/audit.d.ts +53 -1
- package/dist/audit.d.ts.map +1 -1
- package/dist/audit.js +106 -22
- package/dist/audit.js.map +1 -1
- package/dist/canonical-state.d.ts +52 -67
- package/dist/canonical-state.d.ts.map +1 -1
- package/dist/canonical-state.js +134 -147
- package/dist/canonical-state.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +103 -4
- package/dist/cli.js.map +1 -1
- package/dist/cognitive-facts.d.ts +13 -0
- package/dist/cognitive-facts.d.ts.map +1 -1
- package/dist/cognitive-facts.js +28 -13
- package/dist/cognitive-facts.js.map +1 -1
- package/dist/committed-round.d.ts +103 -21
- package/dist/committed-round.d.ts.map +1 -1
- package/dist/committed-round.js +188 -45
- package/dist/committed-round.js.map +1 -1
- package/dist/contract-items.d.ts +55 -0
- package/dist/contract-items.d.ts.map +1 -0
- package/dist/contract-items.js +180 -0
- package/dist/contract-items.js.map +1 -0
- package/dist/enforcement-gate.d.ts +20 -2
- package/dist/enforcement-gate.d.ts.map +1 -1
- package/dist/enforcement-gate.js +197 -386
- package/dist/enforcement-gate.js.map +1 -1
- package/dist/engine.d.ts +1 -1
- package/dist/engine.d.ts.map +1 -1
- package/dist/engine.js +53 -38
- package/dist/engine.js.map +1 -1
- package/dist/evidence-claims.d.ts +4 -4
- package/dist/evidence-claims.d.ts.map +1 -1
- package/dist/evidence-claims.js +16 -14
- package/dist/evidence-claims.js.map +1 -1
- package/dist/evidence-provider.d.ts +85 -89
- package/dist/evidence-provider.d.ts.map +1 -1
- package/dist/evidence-provider.js +328 -184
- package/dist/evidence-provider.js.map +1 -1
- package/dist/explain.d.ts +76 -0
- package/dist/explain.d.ts.map +1 -0
- package/dist/explain.js +127 -0
- package/dist/explain.js.map +1 -0
- package/dist/generate-schema.js +152 -16
- package/dist/generate-schema.js.map +1 -1
- package/dist/index.d.ts +6 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -5
- package/dist/index.js.map +1 -1
- package/dist/loop-compiler.d.ts +40 -53
- package/dist/loop-compiler.d.ts.map +1 -1
- package/dist/loop-compiler.js +229 -553
- package/dist/loop-compiler.js.map +1 -1
- package/dist/loop-extras-parser.d.ts +0 -1
- package/dist/loop-extras-parser.d.ts.map +1 -1
- package/dist/loop-extras-parser.js +0 -4
- package/dist/loop-extras-parser.js.map +1 -1
- package/dist/loop-projection.d.ts.map +1 -1
- package/dist/loop-projection.js +3 -1
- package/dist/loop-projection.js.map +1 -1
- package/dist/mcp/round-lifecycle.d.ts +30 -21
- package/dist/mcp/round-lifecycle.d.ts.map +1 -1
- package/dist/mcp/round-lifecycle.js +47 -103
- package/dist/mcp/round-lifecycle.js.map +1 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +51 -7
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/session.d.ts +39 -23
- package/dist/mcp/session.d.ts.map +1 -1
- package/dist/mcp/session.js +148 -163
- package/dist/mcp/session.js.map +1 -1
- package/dist/mcp/submission-boundary.d.ts +89 -0
- package/dist/mcp/submission-boundary.d.ts.map +1 -0
- package/dist/mcp/submission-boundary.js +203 -0
- package/dist/mcp/submission-boundary.js.map +1 -0
- package/dist/mcp/tools.d.ts.map +1 -1
- package/dist/mcp/tools.js +249 -128
- package/dist/mcp/tools.js.map +1 -1
- package/dist/policy-metrics.js +2 -2
- package/dist/policy-metrics.js.map +1 -1
- package/dist/policy.d.ts +55 -93
- package/dist/policy.d.ts.map +1 -1
- package/dist/policy.js +149 -38
- package/dist/policy.js.map +1 -1
- package/dist/prompt-assembler.d.ts +1 -32
- package/dist/prompt-assembler.d.ts.map +1 -1
- package/dist/prompt-assembler.js +282 -435
- package/dist/prompt-assembler.js.map +1 -1
- package/dist/prompt-policy.d.ts +1 -4
- package/dist/prompt-policy.d.ts.map +1 -1
- package/dist/prompt-policy.js +6 -7
- package/dist/prompt-policy.js.map +1 -1
- package/dist/protocol.d.ts +365 -142
- package/dist/protocol.d.ts.map +1 -1
- package/dist/protocol.js +21 -66
- package/dist/protocol.js.map +1 -1
- package/dist/replay.js +2 -2
- package/dist/replay.js.map +1 -1
- package/dist/round-contract.d.ts +69 -57
- package/dist/round-contract.d.ts.map +1 -1
- package/dist/round-contract.js +104 -64
- package/dist/round-contract.js.map +1 -1
- package/dist/round-coordinator.d.ts +36 -16
- package/dist/round-coordinator.d.ts.map +1 -1
- package/dist/round-coordinator.js +166 -102
- package/dist/round-coordinator.js.map +1 -1
- package/dist/round-driver.d.ts +3 -5
- package/dist/round-driver.d.ts.map +1 -1
- package/dist/round-driver.js +0 -1
- package/dist/round-driver.js.map +1 -1
- package/dist/round-facts.d.ts +96 -0
- package/dist/round-facts.d.ts.map +1 -0
- package/dist/round-facts.js +216 -0
- package/dist/round-facts.js.map +1 -0
- package/dist/round-transaction.d.ts +19 -9
- package/dist/round-transaction.d.ts.map +1 -1
- package/dist/round-transaction.js +90 -22
- package/dist/round-transaction.js.map +1 -1
- package/dist/self-eval.d.ts +87 -9
- package/dist/self-eval.d.ts.map +1 -1
- package/dist/self-eval.js +396 -27
- package/dist/self-eval.js.map +1 -1
- package/dist/subgoal-state.d.ts +77 -0
- package/dist/subgoal-state.d.ts.map +1 -0
- package/dist/subgoal-state.js +198 -0
- package/dist/subgoal-state.js.map +1 -0
- package/dist/token-utils.d.ts +52 -19
- package/dist/token-utils.d.ts.map +1 -1
- package/dist/token-utils.js +83 -72
- package/dist/token-utils.js.map +1 -1
- package/dist/verification-gate.d.ts +14 -31
- package/dist/verification-gate.d.ts.map +1 -1
- package/dist/verification-gate.js +178 -496
- package/dist/verification-gate.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/workspace.d.ts +9 -0
- package/dist/workspace.d.ts.map +1 -1
- package/dist/workspace.js +17 -0
- package/dist/workspace.js.map +1 -1
- package/loop_policy.json +59 -83
- package/package.json +67 -67
- package/skills/perception/SKILL.md +218 -204
package/dist/index.d.ts
CHANGED
|
@@ -15,22 +15,22 @@
|
|
|
15
15
|
* const server = new McpServer();
|
|
16
16
|
* server.start();
|
|
17
17
|
*/
|
|
18
|
-
export { Mode, AgentStatus, makeExecutionFeedback, makeSelfEvaluation, makeLoopObjective,
|
|
19
|
-
export type { ExecutionFeedback, SelfEvaluation, LoopForgeRequest, LoopObjective,
|
|
18
|
+
export { Mode, AgentStatus, makeExecutionFeedback, makeSelfEvaluation, makeLoopObjective, makeRollingSummary, makeLoopRoundResult, makeLoopCompileRequest, makeLoopCompileResponse, makeSessionState, makeTaskId, makeEvidenceSnapshot, makeVerificationFlag, makeVerificationResult, makeEnforcementResult, makeMilestoneSummary, makeSubGoal, makeConstraintMeta, } from "./protocol.js";
|
|
19
|
+
export type { ExecutionFeedback, SelfEvaluation, LoopForgeRequest, LoopObjective, RollingSummary, LoopRoundResult, LoopCompileRequest, LoopCompileResponse, LoopForgeResponse, SessionState, AgentLoopResult, WorkerResult, EvidenceSnapshot, VerificationFlag, VerificationResult, EnforcementResult, CriterionRevision, MilestoneSummary, SubGoal, ConstraintMeta, PromptArtifact, } from "./protocol.js";
|
|
20
20
|
export { getPolicy, loadPolicy, resetPolicy, DEFAULT_POLICY, writeStateFile, } from "./policy.js";
|
|
21
21
|
export type { LoopPolicy, ConstraintsPolicy, SummaryPolicy, EnginePolicy, BackendPolicy, PromptPolicy, StateFilePolicy, EvidencePolicy, CommandEvidencePolicy, McpPolicy, } from "./policy.js";
|
|
22
22
|
export { FileLoopStore, queryLoopEntries, LOOP_STORE_SCHEMA_VERSION, } from "./loop-store.js";
|
|
23
23
|
export type { LoopStore, LoopSessionDocument, LoopRoundDocument, VaultEntry, } from "./loop-store.js";
|
|
24
|
-
export { compileLoop, decideLevel,
|
|
24
|
+
export { compileLoop, decideLevel, computeGoalTextHash, deriveGoalId, getPreviousRound, buildSelfEvalBlock, buildRollingSummary, } from "./loop-compiler.js";
|
|
25
25
|
export { ReplayBackend } from "./replay.js";
|
|
26
|
-
export { LoopForgeEngine, createEngine, buildSelfEvaluation,
|
|
26
|
+
export { LoopForgeEngine, createEngine, buildSelfEvaluation, parseExecutionReport, parseCriterionRevisions, parseWorkerResults, } from "./engine.js";
|
|
27
27
|
export type { EngineMetrics, DelegationEntry } from "./engine.js";
|
|
28
28
|
export type { StopReason } from "./protocol.js";
|
|
29
29
|
export { McpServer } from "./mcp/server.js";
|
|
30
30
|
export { SessionManager } from "./mcp/session.js";
|
|
31
31
|
export type { McpSession, McpSessionSummary } from "./mcp/session.js";
|
|
32
|
-
export { EvidenceCollector, GitEvidenceProvider, CommandEvidenceProvider, registerEvidenceProvider, unregisterEvidenceProvider, extractFilesFromSnapshots, diffSnapshots, diffSnapshotCollections, } from "./evidence-provider.js";
|
|
33
|
-
export type {
|
|
32
|
+
export { EvidenceCollector, GitEvidenceProvider, CommandEvidenceProvider, registerEvidenceProvider, unregisterEvidenceProvider, isProviderRegistered, isPassedAfterObservation, gitChangedFiles, extractFilesFromSnapshots, diffSnapshots, diffSnapshotCollections, } from "./evidence-provider.js";
|
|
33
|
+
export type { EvidenceProvider, EvidenceCaptureContext, EvidenceCaptureResult, EvidenceCollectOptions, EvidenceProviderFactory, } from "./evidence-provider.js";
|
|
34
34
|
export { logEvent, } from "./observability.js";
|
|
35
35
|
export type { LogEventData, } from "./observability.js";
|
|
36
36
|
export { PolicyMetricsCollector, policyMetrics, getPolicyMetrics, resetPolicyMetrics, } from "./policy-metrics.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,EACL,IAAI,EACJ,WAAW,EACX,qBAAqB,EACrB,kBAAkB,EAClB,iBAAiB,EACjB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -16,22 +16,22 @@
|
|
|
16
16
|
* server.start();
|
|
17
17
|
*/
|
|
18
18
|
// Protocol types
|
|
19
|
-
export { Mode, AgentStatus, makeExecutionFeedback, makeSelfEvaluation, makeLoopObjective,
|
|
19
|
+
export { Mode, AgentStatus, makeExecutionFeedback, makeSelfEvaluation, makeLoopObjective, makeRollingSummary, makeLoopRoundResult, makeLoopCompileRequest, makeLoopCompileResponse, makeSessionState, makeTaskId, makeEvidenceSnapshot, makeVerificationFlag, makeVerificationResult, makeEnforcementResult, makeMilestoneSummary, makeSubGoal, makeConstraintMeta, } from "./protocol.js";
|
|
20
20
|
// Policy
|
|
21
21
|
export { getPolicy, loadPolicy, resetPolicy, DEFAULT_POLICY, writeStateFile, } from "./policy.js";
|
|
22
22
|
// Durable store
|
|
23
23
|
export { FileLoopStore, queryLoopEntries, LOOP_STORE_SCHEMA_VERSION, } from "./loop-store.js";
|
|
24
24
|
// Loop Compiler
|
|
25
|
-
export { compileLoop, decideLevel,
|
|
25
|
+
export { compileLoop, decideLevel, computeGoalTextHash, deriveGoalId, getPreviousRound, buildSelfEvalBlock, buildRollingSummary, } from "./loop-compiler.js";
|
|
26
26
|
// Replay
|
|
27
27
|
export { ReplayBackend } from "./replay.js";
|
|
28
28
|
// Engine
|
|
29
|
-
export { LoopForgeEngine, createEngine, buildSelfEvaluation,
|
|
29
|
+
export { LoopForgeEngine, createEngine, buildSelfEvaluation, parseExecutionReport, parseCriterionRevisions, parseWorkerResults, } from "./engine.js";
|
|
30
30
|
// MCP (v1.3)
|
|
31
31
|
export { McpServer } from "./mcp/server.js";
|
|
32
32
|
export { SessionManager } from "./mcp/session.js";
|
|
33
|
-
// EvidenceProvider (v1.18)
|
|
34
|
-
export { EvidenceCollector, GitEvidenceProvider, CommandEvidenceProvider, registerEvidenceProvider, unregisterEvidenceProvider, extractFilesFromSnapshots, diffSnapshots, diffSnapshotCollections, } from "./evidence-provider.js";
|
|
33
|
+
// EvidenceProvider (v1.18 / v3.8: machine observations)
|
|
34
|
+
export { EvidenceCollector, GitEvidenceProvider, CommandEvidenceProvider, registerEvidenceProvider, unregisterEvidenceProvider, isProviderRegistered, isPassedAfterObservation, gitChangedFiles, extractFilesFromSnapshots, diffSnapshots, diffSnapshotCollections, } from "./evidence-provider.js";
|
|
35
35
|
// Structured tracing and policy effectiveness metrics (v1.20)
|
|
36
36
|
export { logEvent, } from "./observability.js";
|
|
37
37
|
export { PolicyMetricsCollector, policyMetrics, getPolicyMetrics, resetPolicyMetrics, } from "./policy-metrics.js";
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,iBAAiB;AACjB,OAAO,EACL,IAAI,EACJ,WAAW,EACX,qBAAqB,EACrB,kBAAkB,EAClB,iBAAiB,EACjB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,iBAAiB;AACjB,OAAO,EACL,IAAI,EACJ,WAAW,EACX,qBAAqB,EACrB,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,EACtB,uBAAuB,EACvB,gBAAgB,EAChB,UAAU,EACV,oBAAoB,EACpB,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACrB,oBAAoB,EACpB,WAAW,EACX,kBAAkB,GACnB,MAAM,eAAe,CAAC;AA0BvB,SAAS;AACT,OAAO,EACL,SAAS,EACT,UAAU,EACV,WAAW,EACX,cAAc,EACd,cAAc,GACf,MAAM,aAAa,CAAC;AAerB,gBAAgB;AAChB,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,yBAAyB,GAC1B,MAAM,iBAAiB,CAAC;AAQzB,gBAAgB;AAChB,OAAO,EACL,WAAW,EACX,WAAW,EACX,mBAAmB,EACnB,YAAY,EACZ,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAE5B,SAAS;AACT,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,SAAS;AACT,OAAO,EACL,eAAe,EACf,YAAY,EACZ,mBAAmB,EACnB,oBAAoB,EACpB,uBAAuB,EACvB,kBAAkB,GACnB,MAAM,aAAa,CAAC;AAMrB,aAAa;AACb,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,wDAAwD;AACxD,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,uBAAuB,EACvB,wBAAwB,EACxB,0BAA0B,EAC1B,oBAAoB,EACpB,wBAAwB,EACxB,eAAe,EACf,yBAAyB,EACzB,aAAa,EACb,uBAAuB,GACxB,MAAM,wBAAwB,CAAC;AAShC,8DAA8D;AAC9D,OAAO,EACL,QAAQ,GACT,MAAM,oBAAoB,CAAC;AAI5B,OAAO,EACL,sBAAsB,EACtB,aAAa,EACb,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,qBAAqB,CAAC;AAG7B,oCAAoC;AACpC,OAAO,EACL,gCAAgC,EAChC,2BAA2B,EAC3B,WAAW,EACX,uBAAuB,EACvB,6BAA6B,GAC9B,MAAM,wBAAwB,CAAC"}
|
package/dist/loop-compiler.d.ts
CHANGED
|
@@ -3,8 +3,9 @@
|
|
|
3
3
|
* The compiler evolves structured state and renders one prompt artifact.
|
|
4
4
|
* L0/L1/L2 control state density only; the external Agent owns reasoning.
|
|
5
5
|
*/
|
|
6
|
-
import { type CriterionStatus, type
|
|
7
|
-
import type
|
|
6
|
+
import { type CriterionStatus, type RecurringFlag, type LoopCompileRequest, type LoopCompileResponse, type LoopObjective, type LoopRoundResult, type RollingSummary } from "./protocol.js";
|
|
7
|
+
import { type CommittedRoundView } from "./committed-round.js";
|
|
8
|
+
import type { CriterionMachineFact } from "./round-facts.js";
|
|
8
9
|
export interface PreviousRound {
|
|
9
10
|
round: number;
|
|
10
11
|
goal_id: string;
|
|
@@ -16,58 +17,50 @@ export interface PreviousRound {
|
|
|
16
17
|
}
|
|
17
18
|
export declare function computeGoalTextHash(text: string): string;
|
|
18
19
|
export declare function deriveGoalId(loopId: string, task: string, explicit?: string): string;
|
|
19
|
-
/** v3.2: Read the previous round's persisted L1 presentation snapshot — the
|
|
20
|
-
* diff baseline for L1 collapse. Returns null when the previous round's
|
|
21
|
-
* lineage entry lacks the three presented_* fields (as on L0/L2 compiles),
|
|
22
|
-
* so callers render the full L1 state. */
|
|
23
|
-
export declare function readPresentedBaseline(loopId: string, round: number, context: Record<string, unknown> | null): PresentedStateSnapshot | null;
|
|
24
20
|
export declare function getPreviousRound(loopId: string, round: number, context: Record<string, unknown> | null): PreviousRound | null;
|
|
25
|
-
/** v3.
|
|
26
|
-
*
|
|
27
|
-
*
|
|
28
|
-
*
|
|
29
|
-
|
|
21
|
+
/** v3.8.1: THE recurring-fact derivation — one walk over the committed
|
|
22
|
+
* history, grouping repeated machine facts by what they are ABOUT.
|
|
23
|
+
*
|
|
24
|
+
* This replaces three separate answers to "what keeps going wrong":
|
|
25
|
+
* `deriveLessons` (whole history, count >= 2, keyed by constraint text or
|
|
26
|
+
* check id), `rolling_summary.recurring_issues` (the last 5 rounds' raw
|
|
27
|
+
* violation texts, with NO threshold at all despite the name), and the L1/L2
|
|
28
|
+
* sections built on top of each. Three windows over one fact set is exactly
|
|
29
|
+
* the parallel semantics this release removes.
|
|
30
|
+
*
|
|
31
|
+
* Callers FILTER this list rather than re-deriving: the state file renders
|
|
32
|
+
* the genuinely recurring set (count >= 2), the prompt renders the recent
|
|
33
|
+
* tail as Active Warnings.
|
|
34
|
+
*
|
|
35
|
+
* Presentation only: the result never feeds enforcement. */
|
|
36
|
+
export declare function deriveRecurringFlags(committedRounds: ReadonlyArray<CommittedRoundView>): RecurringFlag[];
|
|
30
37
|
/** v3.2: Derive per-criterion status — the "goal → criteria → evidence"
|
|
31
38
|
* vertical view. Each objective criterion gets: met/remaining/unknown
|
|
32
|
-
* (from per-round
|
|
33
|
-
*
|
|
34
|
-
*
|
|
35
|
-
* vault every compile. */
|
|
36
|
-
export declare function deriveCriterionStatuses(loopId: string, context: Record<string, unknown> | null, objective: LoopObjective | null, currentRound: number,
|
|
37
|
-
/**
|
|
38
|
-
*
|
|
39
|
-
*
|
|
40
|
-
*
|
|
41
|
-
*
|
|
39
|
+
* (from per-round criterion_claims, ID-first or normalized-exact matching),
|
|
40
|
+
* the round it was first reported met, and the sub-goals a contract item
|
|
41
|
+
* referencing it also names (explicit `subgoal_refs`, never a text guess).
|
|
42
|
+
* Zero persistence — re-derived from the vault every compile. */
|
|
43
|
+
export declare function deriveCriterionStatuses(loopId: string, context: Record<string, unknown> | null, objective: LoopObjective | null, currentRound: number, lastRoundResult?: LoopRoundResult | null,
|
|
44
|
+
/** v3.8.1: the criterion machine facts from the shared bundle. A criterion
|
|
45
|
+
* is `verified` / `contradicted` / `insufficient` only through an item that
|
|
46
|
+
* references it — a claim alone can never reach `verified` — and the fact
|
|
47
|
+
* is derived over the WHOLE committed history, so it survives its contract
|
|
48
|
+
* closing (see `deriveCriterionFacts`). */
|
|
49
|
+
criterionFacts?: ReadonlyArray<CriterionMachineFact>): CriterionStatus[];
|
|
50
|
+
/** v3.8: Rank item statuses so the strongest machine fact wins when several
|
|
51
|
+
* items reference the same criterion. */
|
|
52
|
+
/** Match two criterion references. If either is a criterion id
|
|
53
|
+
* (cr-XXXXXXXX), compares ids; otherwise requires the two texts to be
|
|
54
|
+
* EXACTLY equal after normalization (v3.8.1 — the similarity fallback is
|
|
55
|
+
* gone, so a paraphrase is a different criterion). */
|
|
42
56
|
export declare function criteriaMatch(a: string, b: string): boolean;
|
|
43
|
-
export declare function buildRollingSummary(loopId: string, currentRound: number, context: Record<string, unknown> | null, sinceRound?: number
|
|
44
|
-
/** Derive a stable sub-goal ID from its description hash.
|
|
45
|
-
* Exported as the single source of truth (verification-gate imports it). */
|
|
46
|
-
export declare function deriveSubGoalId(description: string): string;
|
|
57
|
+
export declare function buildRollingSummary(loopId: string, currentRound: number, context: Record<string, unknown> | null, sinceRound?: number): RollingSummary | null;
|
|
47
58
|
/** v2.11: Derive a stable constraint ID from its text hash (c-XXXXXXXX).
|
|
48
59
|
* Same hash strategy as SubGoal — deterministic across rounds. */
|
|
49
60
|
export declare function deriveConstraintId(text: string): string;
|
|
50
|
-
|
|
51
|
-
* Same hash strategy as SubGoal — deterministic across rounds. */
|
|
52
|
-
export declare function deriveCriterionId(text: string): string;
|
|
53
|
-
/** Closed migration matrix. done/canceled are terminal (no out-edges); the
|
|
54
|
-
* matrix rejects re-opening. blocked → in_progress is the recovery path. */
|
|
55
|
-
export declare const SUBGOAL_TRANSITIONS: Record<SubGoalUpdate["status"], readonly SubGoal["status"][]>;
|
|
56
|
-
/** Whether a transition is legal. Same-status is a legal no-op (used by
|
|
57
|
-
* replay idempotency). References to terminal sub-goals are rejected by
|
|
58
|
-
* validateSubGoalUpdates before this is consulted. */
|
|
59
|
-
export declare function canTransitionSubGoal(from: SubGoal["status"], to: SubGoalUpdate["status"]): boolean;
|
|
60
|
-
/** Referential validation of a payload's subgoal_updates against the
|
|
61
|
-
* derived sub-goal set. Returns one error per invalid entry:
|
|
62
|
-
* unknown_id | terminal_reference | illegal_transition. */
|
|
63
|
-
export declare function validateSubGoalUpdates(subGoals: SubGoal[], updates: SubGoalUpdate[]): Array<{
|
|
64
|
-
id: string;
|
|
65
|
-
reason: string;
|
|
66
|
-
}>;
|
|
67
|
-
export declare function alignTask(proposedTask: string, request: LoopCompileRequest, context: Record<string, unknown> | null): TaskAlignment;
|
|
68
|
-
export declare function checkLoopHealth(loopId: string, request: LoopCompileRequest, context: Record<string, unknown> | null): LoopHealth;
|
|
61
|
+
export { deriveCriterionId, isCriterionId } from "./token-utils.js";
|
|
69
62
|
export declare function decideLevel(request: LoopCompileRequest, context: Record<string, unknown> | null): "l0" | "l1" | "l2";
|
|
70
|
-
export declare function buildSelfEvalBlock(round: number,
|
|
63
|
+
export declare function buildSelfEvalBlock(round: number,
|
|
71
64
|
/** v2.12: L0 is the minimal retry template — the v2.12 declarative fields
|
|
72
65
|
* (outcome/blocker/retroactiveClaims) are L1/L2 additions so the retry
|
|
73
66
|
* prompt stays within its tight budget. */
|
|
@@ -77,12 +70,6 @@ level?: "l0" | "l1" | "l2",
|
|
|
77
70
|
* `activeContract != null`). Only then does the template ask the agent
|
|
78
71
|
* to restate/propose it — a generic empty contract template would invite
|
|
79
72
|
* placeholder submissions that trigger round_underspecified noise. */
|
|
80
|
-
hasContract?: boolean
|
|
81
|
-
/** v3.5: L2-only prose suggesting a Round Contract declaration when the
|
|
82
|
-
* Current Task is NOT one (contract_nudge_on_l2 policy, computed at the
|
|
83
|
-
* compileLoop call site). Mutually exclusive with hasContract. The prose
|
|
84
|
-
* must never contain the JSON key name `round_contract` — contract-less
|
|
85
|
-
* L2 tests assert its lowercase absence. */
|
|
86
|
-
proposalNudge?: boolean): string;
|
|
73
|
+
hasContract?: boolean): string;
|
|
87
74
|
export declare function compileLoop(request: LoopCompileRequest, context: Record<string, unknown> | null): LoopCompileResponse;
|
|
88
75
|
//# sourceMappingURL=loop-compiler.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loop-compiler.d.ts","sourceRoot":"","sources":["../src/loop-compiler.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"loop-compiler.d.ts","sourceRoot":"","sources":["../src/loop-compiler.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAQL,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,aAAa,EAClB,KAAK,eAAe,EAEpB,KAAK,cAAc,EACpB,MAAM,eAAe,CAAC;AAMvB,OAAO,EASL,KAAK,kBAAkB,EAGxB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAoB7D,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,cAAc,EAAE,MAAM,CAAC;CACxB;AAyCD,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAGxD;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,SAAK,GAAG,MAAM,CAKhF;AAED,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GACtC,aAAa,GAAG,IAAI,CAqBtB;AA8HD;;;;;;;;;;;;;;6DAc6D;AAC7D,wBAAgB,oBAAoB,CAClC,eAAe,EAAE,aAAa,CAAC,kBAAkB,CAAC,GACjD,aAAa,EAAE,CAiCjB;AAgBD;;;;;kEAKkE;AAClE,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,EACvC,SAAS,EAAE,aAAa,GAAG,IAAI,EAC/B,YAAY,EAAE,MAAM,EACpB,eAAe,CAAC,EAAE,eAAe,GAAG,IAAI;AACxC;;;;4CAI4C;AAC5C,cAAc,GAAE,aAAa,CAAC,oBAAoB,CAAM,GACvD,eAAe,EAAE,CAsDnB;AAED;0CAC0C;AAC1C;;;uDAGuD;AACvD,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAa3D;AAkED,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,EACvC,UAAU,SAAI,GACb,cAAc,GAAG,IAAI,CAoIvB;AAMD;mEACmE;AACnE,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEvD;AAOD,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAkKpE,wBAAgB,WAAW,CACzB,OAAO,EAAE,kBAAkB,EAC3B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GACtC,IAAI,GAAG,IAAI,GAAG,IAAI,CAEpB;AAED,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,MAAM;AACb;;4CAE4C;AAC5C,KAAK,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI;AAC1B;;;;uEAIuE;AACvE,WAAW,UAAQ,GAClB,MAAM,CAsFR;AAsCD,wBAAgB,WAAW,CACzB,OAAO,EAAE,kBAAkB,EAC3B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GACtC,mBAAmB,CAsLrB"}
|