@e2edev/e2e 0.2.0 → 0.3.0
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/dist/agent/act.d.ts.map +1 -1
- package/dist/agent/act.js +89 -28
- package/dist/agent/act.js.map +1 -1
- package/dist/agent/actions.d.ts +15 -0
- package/dist/agent/actions.d.ts.map +1 -1
- package/dist/agent/actions.js +59 -1
- package/dist/agent/actions.js.map +1 -1
- package/dist/agent/default-agent.d.ts +34 -4
- package/dist/agent/default-agent.d.ts.map +1 -1
- package/dist/agent/default-agent.js +18 -127
- package/dist/agent/default-agent.js.map +1 -1
- package/dist/agent/derived.d.ts +17 -0
- package/dist/agent/derived.d.ts.map +1 -0
- package/dist/agent/derived.js +45 -0
- package/dist/agent/derived.js.map +1 -0
- package/dist/agent/executor.d.ts +116 -2
- package/dist/agent/executor.d.ts.map +1 -1
- package/dist/agent/executor.js.map +1 -1
- package/dist/agent/index.js +1 -1
- package/dist/agent/index.js.map +1 -1
- package/dist/agent/invocation.d.ts +3 -2
- package/dist/agent/invocation.d.ts.map +1 -1
- package/dist/agent/invocation.js +12 -12
- package/dist/agent/invocation.js.map +1 -1
- package/dist/agent/ledger.d.ts +14 -4
- package/dist/agent/ledger.d.ts.map +1 -1
- package/dist/agent/ledger.js +26 -5
- package/dist/agent/ledger.js.map +1 -1
- package/dist/agent/loop-guards.d.ts +14 -1
- package/dist/agent/loop-guards.d.ts.map +1 -1
- package/dist/agent/loop-guards.js +11 -8
- package/dist/agent/loop-guards.js.map +1 -1
- package/dist/agent/observation.d.ts +26 -7
- package/dist/agent/observation.d.ts.map +1 -1
- package/dist/agent/observation.js +51 -5
- package/dist/agent/observation.js.map +1 -1
- package/dist/agent/primitives.d.ts +86 -0
- package/dist/agent/primitives.d.ts.map +1 -0
- package/dist/agent/primitives.js +255 -0
- package/dist/agent/primitives.js.map +1 -0
- package/dist/agent/prompts.d.ts.map +1 -1
- package/dist/agent/prompts.js.map +1 -1
- package/dist/agent/public.d.ts +6 -3
- package/dist/agent/public.d.ts.map +1 -1
- package/dist/agent/public.js +4 -2
- package/dist/agent/public.js.map +1 -1
- package/dist/agent/replay.d.ts +1 -1
- package/dist/agent/replay.d.ts.map +1 -1
- package/dist/agent/replay.js +19 -2
- package/dist/agent/replay.js.map +1 -1
- package/dist/agent/step-cache.d.ts +3 -0
- package/dist/agent/step-cache.d.ts.map +1 -1
- package/dist/agent/step-cache.js +35 -3
- package/dist/agent/step-cache.js.map +1 -1
- package/dist/agent/tool-loop.d.ts +59 -5
- package/dist/agent/tool-loop.d.ts.map +1 -1
- package/dist/agent/tool-loop.js +77 -105
- package/dist/agent/tool-loop.js.map +1 -1
- package/dist/backend/index.d.ts +50 -1
- package/dist/backend/index.d.ts.map +1 -1
- package/dist/backend/index.js +2 -0
- package/dist/backend/index.js.map +1 -1
- package/dist/cache/recorder.d.ts +2 -0
- package/dist/cache/recorder.d.ts.map +1 -1
- package/dist/cache/recorder.js +4 -1
- package/dist/cache/recorder.js.map +1 -1
- package/dist/cache/relocate.d.ts.map +1 -1
- package/dist/cache/relocate.js +11 -2
- package/dist/cache/relocate.js.map +1 -1
- package/dist/cache/trace.d.ts +11 -0
- package/dist/cache/trace.d.ts.map +1 -1
- package/dist/cache/trace.js +9 -0
- package/dist/cache/trace.js.map +1 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +28 -18
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/init.d.ts.map +1 -1
- package/dist/cli/init.js +32 -9
- package/dist/cli/init.js.map +1 -1
- package/dist/cli/signals.d.ts +23 -0
- package/dist/cli/signals.d.ts.map +1 -0
- package/dist/cli/signals.js +42 -0
- package/dist/cli/signals.js.map +1 -0
- package/dist/collect/registry.d.ts +14 -4
- package/dist/collect/registry.d.ts.map +1 -1
- package/dist/collect/registry.js +10 -10
- package/dist/collect/registry.js.map +1 -1
- package/dist/config/resolve.d.ts +0 -1
- package/dist/config/resolve.d.ts.map +1 -1
- package/dist/config/resolve.js +4 -14
- package/dist/config/resolve.js.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/internal/errors.d.ts +9 -0
- package/dist/internal/errors.d.ts.map +1 -1
- package/dist/internal/errors.js +15 -0
- package/dist/internal/errors.js.map +1 -1
- package/dist/internal/time.d.ts +5 -0
- package/dist/internal/time.d.ts.map +1 -1
- package/dist/internal/time.js +22 -0
- package/dist/internal/time.js.map +1 -1
- package/dist/internal/urls.d.ts +2 -1
- package/dist/internal/urls.d.ts.map +1 -1
- package/dist/internal/urls.js +22 -2
- package/dist/internal/urls.js.map +1 -1
- package/dist/locator/engine.d.ts +5 -3
- package/dist/locator/engine.d.ts.map +1 -1
- package/dist/locator/engine.js +7 -6
- package/dist/locator/engine.js.map +1 -1
- package/dist/report/build.d.ts +0 -1
- package/dist/report/build.d.ts.map +1 -1
- package/dist/report/build.js +0 -1
- package/dist/report/build.js.map +1 -1
- package/dist/report/list.d.ts +2 -0
- package/dist/report/list.d.ts.map +1 -1
- package/dist/report/list.js +12 -0
- package/dist/report/list.js.map +1 -1
- package/dist/report/live-status.d.ts.map +1 -1
- package/dist/report/live-status.js +2 -1
- package/dist/report/live-status.js.map +1 -1
- package/dist/run/budget.d.ts +25 -0
- package/dist/run/budget.d.ts.map +1 -0
- package/dist/run/budget.js +38 -0
- package/dist/run/budget.js.map +1 -0
- package/dist/run/events.d.ts +13 -0
- package/dist/run/events.d.ts.map +1 -1
- package/dist/run/events.js.map +1 -1
- package/dist/run/execute.d.ts +8 -0
- package/dist/run/execute.d.ts.map +1 -1
- package/dist/run/execute.js +53 -8
- package/dist/run/execute.js.map +1 -1
- package/dist/run/fixtures.d.ts +6 -3
- package/dist/run/fixtures.d.ts.map +1 -1
- package/dist/run/fixtures.js +7 -5
- package/dist/run/fixtures.js.map +1 -1
- package/dist/run/in-process.d.ts.map +1 -1
- package/dist/run/in-process.js +11 -2
- package/dist/run/in-process.js.map +1 -1
- package/dist/run/realm.d.ts +43 -8
- package/dist/run/realm.d.ts.map +1 -1
- package/dist/run/realm.js +67 -24
- package/dist/run/realm.js.map +1 -1
- package/dist/run/runner.d.ts +8 -0
- package/dist/run/runner.d.ts.map +1 -1
- package/dist/run/runner.js +93 -25
- package/dist/run/runner.js.map +1 -1
- package/dist/run/scheduler.d.ts +8 -0
- package/dist/run/scheduler.d.ts.map +1 -1
- package/dist/run/scheduler.js +37 -3
- package/dist/run/scheduler.js.map +1 -1
- package/dist/run/serial.d.ts +2 -0
- package/dist/run/serial.d.ts.map +1 -1
- package/dist/run/serial.js +10 -0
- package/dist/run/serial.js.map +1 -1
- package/dist/run/worker/entry.js +17 -2
- package/dist/run/worker/entry.js.map +1 -1
- package/dist/run/worker/protocol.d.ts +9 -1
- package/dist/run/worker/protocol.d.ts.map +1 -1
- package/dist/run/worker/protocol.js.map +1 -1
- package/dist/run/worker/session.d.ts +12 -0
- package/dist/run/worker/session.d.ts.map +1 -1
- package/dist/run/worker/session.js +23 -1
- package/dist/run/worker/session.js.map +1 -1
- package/dist/types.d.ts +0 -1
- package/dist/types.d.ts.map +1 -1
- package/package.json +2 -2
|
@@ -13,7 +13,18 @@
|
|
|
13
13
|
import type { ModelMessage, ToolSet } from 'ai';
|
|
14
14
|
import { type SdkLanguageModel } from '../config/agent.ts';
|
|
15
15
|
import { AgentError } from './error.ts';
|
|
16
|
-
import { type StepExecutor, type StepExecutorContext } from './executor.ts';
|
|
16
|
+
import { type StepExecutor, type StepExecutorContext, type StepVerdict } from './executor.ts';
|
|
17
|
+
import { type LoopGuardThresholds } from './loop-guards.ts';
|
|
18
|
+
/**
|
|
19
|
+
* Wind-down policy: when the loop tells the model to wrap up. `turns` is the
|
|
20
|
+
* remaining-turn count that triggers the notice; `clockMs` the remaining step
|
|
21
|
+
* time under which the loop forces a verdict. `false` disables both notices;
|
|
22
|
+
* the harness budget and deadline still end the step.
|
|
23
|
+
*/
|
|
24
|
+
export type WindDownPolicy = false | {
|
|
25
|
+
readonly turns?: number;
|
|
26
|
+
readonly clockMs?: number;
|
|
27
|
+
};
|
|
17
28
|
/** Loop services the executor's tool bodies run under. */
|
|
18
29
|
export interface ToolLoopHelpers {
|
|
19
30
|
/**
|
|
@@ -39,12 +50,55 @@ export interface ToolLoopExecutorOptions {
|
|
|
39
50
|
readonly system?: string;
|
|
40
51
|
/** Builds the step's tool vocabulary; `complete_step` is added by the chassis. */
|
|
41
52
|
readonly tools: (context: StepExecutorContext, helpers: ToolLoopHelpers) => ToolSet;
|
|
42
|
-
/**
|
|
43
|
-
|
|
53
|
+
/**
|
|
54
|
+
* Builds the step's opening prompt: one user message, or a whole message
|
|
55
|
+
* history ending in the step's request — how an executor carries a
|
|
56
|
+
* conversation across the steps of an attempt (`context.attempt.memory`).
|
|
57
|
+
*/
|
|
58
|
+
readonly buildPrompt: (context: StepExecutorContext) => string | ModelMessage[] | Promise<string | ModelMessage[]>;
|
|
59
|
+
/**
|
|
60
|
+
* Runs once the loop has ended, with the complete message history of the
|
|
61
|
+
* step (opening prompt plus every generated turn) and the verdict, when the
|
|
62
|
+
* model reached one. The place to persist history for a later step.
|
|
63
|
+
*/
|
|
64
|
+
readonly onConclude?: (context: StepExecutorContext, outcome: {
|
|
65
|
+
readonly messages: ModelMessage[];
|
|
66
|
+
readonly verdict: StepVerdict | undefined;
|
|
67
|
+
}) => void | Promise<void>;
|
|
68
|
+
/**
|
|
69
|
+
* Loop-guard thresholds, merged over the defaults; `false` disables the
|
|
70
|
+
* guards. The harness budgets remain the outer bound either way.
|
|
71
|
+
*/
|
|
72
|
+
readonly loopGuards?: false | Partial<LoopGuardThresholds>;
|
|
73
|
+
/** Wind-down notices near the turn budget and the step clock; defaults to both. */
|
|
74
|
+
readonly windDown?: WindDownPolicy;
|
|
44
75
|
/** Upper bound on model turns; capped at the harness model-call budget. */
|
|
45
76
|
readonly maxTurns?: number;
|
|
46
|
-
/**
|
|
47
|
-
readonly
|
|
77
|
+
/** AI SDK provider options sent with every model call (thinking level, effort). */
|
|
78
|
+
readonly providerOptions?: Readonly<Record<string, Readonly<Record<string, unknown>>>>;
|
|
79
|
+
/**
|
|
80
|
+
* Between-turn history preparation: compaction, and anything the executor
|
|
81
|
+
* wants the model to read before its next turn. Runs before the loop's own
|
|
82
|
+
* notices; the returned history carries forward to later turns.
|
|
83
|
+
*/
|
|
84
|
+
readonly prepareMessages?: (messages: ModelMessage[], turn: PreparedTurn) => Promise<PreparedMessages> | PreparedMessages;
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* What `prepareMessages` hands back: the history for the next turn, and
|
|
88
|
+
* optionally a reason to stop — the executor has evidence the loop guards
|
|
89
|
+
* cannot see that the step is not progressing. A stop forces the conclusion
|
|
90
|
+
* tool exactly like a loop guard.
|
|
91
|
+
*/
|
|
92
|
+
export type PreparedMessages = ModelMessage[] | {
|
|
93
|
+
readonly messages: ModelMessage[];
|
|
94
|
+
readonly stop?: string;
|
|
95
|
+
};
|
|
96
|
+
/** What an executor's `prepareMessages` learns about the turn that just ended. */
|
|
97
|
+
export interface PreparedTurn {
|
|
98
|
+
/** Zero-based index of the turn about to run. */
|
|
99
|
+
readonly stepNumber: number;
|
|
100
|
+
/** Tool names the previous turn called, in order; empty on the first turn. */
|
|
101
|
+
readonly previousToolCalls: readonly string[];
|
|
48
102
|
}
|
|
49
103
|
/** Builds a step executor from a tool vocabulary and the shared loop chassis. */
|
|
50
104
|
export declare function createToolLoopExecutor(options: ToolLoopExecutorOptions): StepExecutor;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-loop.d.ts","sourceRoot":"","sources":["../../src/agent/tool-loop.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAiB,YAAY,EAAc,OAAO,EAAE,MAAM,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"tool-loop.d.ts","sourceRoot":"","sources":["../../src/agent/tool-loop.ts"],"names":[],"mappings":"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"}
|
package/dist/agent/tool-loop.js
CHANGED
|
@@ -10,46 +10,26 @@
|
|
|
10
10
|
* - the wind-down notice and forced conclusion on the final turns;
|
|
11
11
|
* - model-call accounting and a step transcript for `--debug`.
|
|
12
12
|
*/
|
|
13
|
-
import { z } from 'zod';
|
|
14
13
|
import { asSdkLanguageModel } from '../config/agent.js';
|
|
15
14
|
import { loadAiSdk } from './ai-sdk.js';
|
|
16
|
-
import { readCost } from './model/sdk.js';
|
|
17
15
|
import { AgentError, isAgentError } from './error.js';
|
|
18
|
-
import {
|
|
19
|
-
import {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
'ACTION_FAILED',
|
|
23
|
-
'AUTOMATION_UNSUPPORTED',
|
|
24
|
-
'ASSERTION_FAILED',
|
|
25
|
-
'AUTHENTICATION_FAILED',
|
|
26
|
-
'AUTH_CREDENTIAL_UNAVAILABLE',
|
|
27
|
-
'AUTH_CREDENTIAL_INVALID',
|
|
28
|
-
'ENVIRONMENT_UNAVAILABLE',
|
|
29
|
-
'SEED_DATA_MISSING',
|
|
30
|
-
'TEST_SETUP_FAILED',
|
|
31
|
-
'APP_UNREACHABLE',
|
|
32
|
-
'APP_NOT_OPEN',
|
|
33
|
-
'POLICY_DENIED',
|
|
34
|
-
];
|
|
35
|
-
/** The model-pickable codes a blocked verdict accepts; derived, never restated. */
|
|
36
|
-
const MODEL_BLOCKABLE_CODES = MODEL_ERROR_CODES.filter((code) => BLOCKABLE_CODES.has(code));
|
|
37
|
-
const VERDICT_RULES = `Verdict rules:
|
|
38
|
-
- When the step's goal is achieved, or you are certain it cannot be, call complete_step exactly once.
|
|
39
|
-
- Verify outcomes with your tools before concluding; never guess success.
|
|
40
|
-
- "passed" means the application behaved as the step required. "failed" means it did not. "blocked" means credentials, the environment, or test setup prevented a product verdict — blocked says nothing about the product and requires an errorCode.`;
|
|
41
|
-
/** Turns remaining when the loop warns the model to wrap up. */
|
|
16
|
+
import { RUNTIME_CODES, } from './executor.js';
|
|
17
|
+
import { createVerdictTool, trackModelCalls, VERDICT_RULES } from './primitives.js';
|
|
18
|
+
import { checkLoopGuards, DEFAULT_LOOP_GUARD_THRESHOLDS, extractGuardCalls, } from './loop-guards.js';
|
|
19
|
+
/** Turns remaining when the loop warns the model to wrap up, by default. */
|
|
42
20
|
const WIND_DOWN_TURNS = 5;
|
|
43
21
|
/**
|
|
44
|
-
*
|
|
45
|
-
* can get. A slow provider turn runs tens of seconds; concluding
|
|
46
|
-
* model's own summary beats a verdict-less STEP_TIMEOUT every time.
|
|
47
|
-
* effective window is a quarter of the step's budget, capped here, so a
|
|
48
|
-
* step keeps most of its clock for work instead of losing half of it to
|
|
49
|
-
* wind-down.
|
|
22
|
+
* Default ceiling on the remaining step time under which the loop takes the
|
|
23
|
+
* verdict it can get. A slow provider turn runs tens of seconds; concluding
|
|
24
|
+
* with the model's own summary beats a verdict-less STEP_TIMEOUT every time.
|
|
25
|
+
* The effective window is a quarter of the step's budget, capped here, so a
|
|
26
|
+
* short step keeps most of its clock for work instead of losing half of it to
|
|
27
|
+
* the wind-down.
|
|
50
28
|
*/
|
|
51
29
|
const CLOCK_WIND_DOWN_MS = 60_000;
|
|
52
30
|
const CLOCK_WIND_DOWN_FRACTION = 4;
|
|
31
|
+
/** Turns from the budget ceiling at which only the conclusion tool is offered. */
|
|
32
|
+
const FORCED_CONCLUSION_TURNS = 2;
|
|
53
33
|
/** Transcript ceiling per step; enough for every turn without unbounded logs. */
|
|
54
34
|
const MAX_TRANSCRIPT_CHARS = 262_144;
|
|
55
35
|
/** Builds a step executor from a tool vocabulary and the shared loop chassis. */
|
|
@@ -79,14 +59,16 @@ class LoopRun {
|
|
|
79
59
|
options;
|
|
80
60
|
context;
|
|
81
61
|
model;
|
|
82
|
-
|
|
62
|
+
conclusion = createVerdictTool();
|
|
83
63
|
hardStop;
|
|
84
64
|
guardStop;
|
|
85
65
|
noticedGuardReason;
|
|
86
66
|
noticedLowClock = false;
|
|
87
67
|
transcript = [];
|
|
88
68
|
maxTurns;
|
|
89
|
-
|
|
69
|
+
/** Resolved wind-down thresholds; undefined when the executor disabled the notices. */
|
|
70
|
+
windDown;
|
|
71
|
+
guardThresholds;
|
|
90
72
|
constructor(ai, options, context, model) {
|
|
91
73
|
this.ai = ai;
|
|
92
74
|
this.options = options;
|
|
@@ -95,52 +77,53 @@ class LoopRun {
|
|
|
95
77
|
// Capped, never raised: the harness budget is the ceiling for any turns
|
|
96
78
|
// setting, so the loop cannot spend past what the step was given.
|
|
97
79
|
this.maxTurns = Math.min(options.maxTurns ?? context.budgets.maxModelCalls, context.budgets.maxModelCalls);
|
|
98
|
-
|
|
80
|
+
const windDown = options.windDown;
|
|
81
|
+
this.windDown =
|
|
82
|
+
windDown === false
|
|
83
|
+
? undefined
|
|
84
|
+
: {
|
|
85
|
+
turns: windDown?.turns ?? WIND_DOWN_TURNS,
|
|
86
|
+
clockMs: Math.min(windDown?.clockMs ?? CLOCK_WIND_DOWN_MS, Math.floor(context.budgets.remainingMs() / CLOCK_WIND_DOWN_FRACTION)),
|
|
87
|
+
};
|
|
88
|
+
this.guardThresholds =
|
|
89
|
+
options.loopGuards === false
|
|
90
|
+
? undefined
|
|
91
|
+
: { ...DEFAULT_LOOP_GUARD_THRESHOLDS, ...options.loopGuards };
|
|
99
92
|
}
|
|
100
93
|
async run() {
|
|
101
94
|
const helpers = this.helpers();
|
|
102
95
|
const tools = {
|
|
103
96
|
...this.options.tools(this.context, helpers),
|
|
104
|
-
complete_step: this.
|
|
97
|
+
complete_step: this.conclusion.tool,
|
|
105
98
|
};
|
|
106
99
|
const loop = new this.ai.ToolLoopAgent({
|
|
107
100
|
model: this.model,
|
|
108
101
|
instructions: this.instructions(),
|
|
109
102
|
tools,
|
|
110
103
|
toolChoice: 'required',
|
|
104
|
+
...(this.options.providerOptions === undefined
|
|
105
|
+
? {}
|
|
106
|
+
: { providerOptions: this.options.providerOptions }),
|
|
111
107
|
stopWhen: [
|
|
112
|
-
() => this.
|
|
108
|
+
() => this.conclusion.concluded() || this.hardStop !== undefined,
|
|
113
109
|
this.ai.stepCountIs(this.maxTurns),
|
|
114
110
|
],
|
|
115
|
-
prepareStep: ({ messages, stepNumber }) => this.prepareTurn(messages, stepNumber),
|
|
111
|
+
prepareStep: ({ messages, stepNumber, steps }) => this.prepareTurn(messages, stepNumber, steps.at(-1)),
|
|
116
112
|
});
|
|
117
|
-
const
|
|
113
|
+
const tracker = trackModelCalls(this.context, this.model);
|
|
118
114
|
const prompt = await this.options.buildPrompt(this.context);
|
|
119
|
-
let
|
|
115
|
+
let generated = [];
|
|
120
116
|
try {
|
|
121
|
-
await loop.generate({
|
|
117
|
+
const result = await loop.generate({
|
|
122
118
|
prompt,
|
|
123
119
|
abortSignal: this.context.signal,
|
|
124
|
-
onStepStart:
|
|
125
|
-
turnStartedMs = Date.now();
|
|
126
|
-
},
|
|
120
|
+
onStepStart: tracker.onStepStart,
|
|
127
121
|
onStepEnd: (step) => {
|
|
128
122
|
this.recordTurn(step);
|
|
129
|
-
|
|
130
|
-
this.context.budgets.recordModelCall({
|
|
131
|
-
...(step.usage.inputTokens === undefined
|
|
132
|
-
? {}
|
|
133
|
-
: { inputTokens: step.usage.inputTokens }),
|
|
134
|
-
...(step.usage.outputTokens === undefined
|
|
135
|
-
? {}
|
|
136
|
-
: { outputTokens: step.usage.outputTokens }),
|
|
137
|
-
durationMs: Date.now() - turnStartedMs,
|
|
138
|
-
...(typeof identity.provider === 'string' ? { provider: identity.provider } : {}),
|
|
139
|
-
...(typeof identity.modelId === 'string' ? { modelId: identity.modelId } : {}),
|
|
140
|
-
...(estimatedCostUsd === undefined ? {} : { estimatedCostUsd }),
|
|
141
|
-
});
|
|
123
|
+
tracker.onStepEnd(step);
|
|
142
124
|
},
|
|
143
125
|
});
|
|
126
|
+
generated = result.responseMessages;
|
|
144
127
|
}
|
|
145
128
|
catch (cause) {
|
|
146
129
|
this.attachTranscript();
|
|
@@ -154,8 +137,16 @@ class LoopRun {
|
|
|
154
137
|
throw new AgentError('MODEL_PROVIDER_FAILED', `the model provider failed: ${cause instanceof Error ? cause.message : String(cause)}`, { cause });
|
|
155
138
|
}
|
|
156
139
|
this.attachTranscript();
|
|
157
|
-
if (this.
|
|
158
|
-
|
|
140
|
+
if (this.options.onConclude !== undefined) {
|
|
141
|
+
const opening = typeof prompt === 'string' ? [{ role: 'user', content: prompt }] : prompt;
|
|
142
|
+
await this.options.onConclude(this.context, {
|
|
143
|
+
messages: [...opening, ...generated],
|
|
144
|
+
verdict: this.conclusion.verdict(),
|
|
145
|
+
});
|
|
146
|
+
}
|
|
147
|
+
const verdict = this.conclusion.verdict();
|
|
148
|
+
if (verdict !== undefined)
|
|
149
|
+
return verdict;
|
|
159
150
|
if (this.hardStop !== undefined) {
|
|
160
151
|
if (this.hardStop.code === 'CANCELLED')
|
|
161
152
|
throw this.hardStop;
|
|
@@ -169,12 +160,12 @@ class LoopRun {
|
|
|
169
160
|
}
|
|
170
161
|
helpers() {
|
|
171
162
|
return {
|
|
172
|
-
concluding: () => this.
|
|
163
|
+
concluding: () => this.conclusion.concluded() || this.hardStop !== undefined,
|
|
173
164
|
reportHardStop: (error) => {
|
|
174
165
|
this.hardStop ??= error;
|
|
175
166
|
},
|
|
176
167
|
guard: async (body) => {
|
|
177
|
-
if (this.
|
|
168
|
+
if (this.conclusion.concluded() || this.hardStop !== undefined) {
|
|
178
169
|
return 'The step is already concluding; no further actions run.';
|
|
179
170
|
}
|
|
180
171
|
try {
|
|
@@ -192,17 +183,33 @@ class LoopRun {
|
|
|
192
183
|
};
|
|
193
184
|
}
|
|
194
185
|
/**
|
|
195
|
-
* Per-turn policy, in order:
|
|
186
|
+
* Per-turn policy, in order: the executor's history preparation, the loop guards,
|
|
196
187
|
* inject the wind-down notice, and — near the budget or after a guard stop —
|
|
197
188
|
* offer only the conclusion tool. Two forced turns, not one, so a rejected
|
|
198
189
|
* verdict (blocked without a code) can be repaired.
|
|
199
190
|
*/
|
|
200
|
-
prepareTurn(messages, stepNumber) {
|
|
201
|
-
let prepared =
|
|
191
|
+
async prepareTurn(messages, stepNumber, previous) {
|
|
192
|
+
let prepared = messages;
|
|
193
|
+
if (this.options.prepareMessages !== undefined) {
|
|
194
|
+
const result = await this.options.prepareMessages(messages, {
|
|
195
|
+
stepNumber,
|
|
196
|
+
previousToolCalls: previous?.toolCalls.map((call) => call.toolName) ?? [],
|
|
197
|
+
});
|
|
198
|
+
if (Array.isArray(result)) {
|
|
199
|
+
prepared = result;
|
|
200
|
+
}
|
|
201
|
+
else {
|
|
202
|
+
prepared = result.messages;
|
|
203
|
+
if (result.stop !== undefined && this.guardStop === undefined)
|
|
204
|
+
this.guardStop = result.stop;
|
|
205
|
+
}
|
|
206
|
+
}
|
|
202
207
|
const turnsLeft = this.maxTurns - stepNumber;
|
|
203
208
|
// Never on the very first turn: a deliberately short step timeout still
|
|
204
209
|
// deserves one working turn before the clock takes the verdict.
|
|
205
|
-
const lowClock =
|
|
210
|
+
const lowClock = this.windDown !== undefined &&
|
|
211
|
+
stepNumber > 0 &&
|
|
212
|
+
this.context.budgets.remainingMs() < this.windDown.clockMs;
|
|
206
213
|
if (lowClock && this.noticedLowClock !== true) {
|
|
207
214
|
this.noticedLowClock = true;
|
|
208
215
|
prepared = appendNotice(prepared, '[SYSTEM] The step is nearly out of time. Call complete_step now with your best ' +
|
|
@@ -210,8 +217,8 @@ class LoopRun {
|
|
|
210
217
|
'misbehaved, blocked (with errorCode) if something outside the application ' +
|
|
211
218
|
'stopped you.');
|
|
212
219
|
}
|
|
213
|
-
if (this.guardStop === undefined) {
|
|
214
|
-
const guard = checkLoopGuards(extractGuardCalls(prepared, 'complete_step'));
|
|
220
|
+
if (this.guardStop === undefined && this.guardThresholds !== undefined) {
|
|
221
|
+
const guard = checkLoopGuards(extractGuardCalls(prepared, 'complete_step'), this.guardThresholds);
|
|
215
222
|
if (guard.kind === 'stop') {
|
|
216
223
|
this.guardStop = guard.reason;
|
|
217
224
|
}
|
|
@@ -227,13 +234,14 @@ class LoopRun {
|
|
|
227
234
|
'Call complete_step now with your best verdict: failed if the application misbehaved, ' +
|
|
228
235
|
'blocked (with errorCode) if something outside the application stopped you.');
|
|
229
236
|
}
|
|
230
|
-
|
|
237
|
+
const windDownTurn = this.windDown !== undefined && turnsLeft === this.windDown.turns;
|
|
238
|
+
if (windDownTurn && this.guardStop === undefined) {
|
|
231
239
|
prepared = appendNotice(prepared, `[SYSTEM NOTICE] Only ${turnsLeft} turns remain for this step. ` +
|
|
232
240
|
'Finish the remaining work now, or call complete_step with your best verdict: ' +
|
|
233
241
|
'failed if the application misbehaved, blocked (with errorCode) if something ' +
|
|
234
242
|
'outside the application stopped you.');
|
|
235
243
|
}
|
|
236
|
-
const forced = turnsLeft <=
|
|
244
|
+
const forced = turnsLeft <= FORCED_CONCLUSION_TURNS || this.guardStop !== undefined || lowClock;
|
|
237
245
|
return {
|
|
238
246
|
...(prepared === messages ? {} : { messages: prepared }),
|
|
239
247
|
...(forced
|
|
@@ -244,42 +252,6 @@ class LoopRun {
|
|
|
244
252
|
: {}),
|
|
245
253
|
};
|
|
246
254
|
}
|
|
247
|
-
concludeTool() {
|
|
248
|
-
const { tool } = this.ai;
|
|
249
|
-
return tool({
|
|
250
|
-
description: 'Conclude the step with the final verdict. passed = the application behaved as required and you verified it. failed = the application did not behave as required. blocked = credentials, environment, or test setup prevented a product verdict; blocked requires errorCode.',
|
|
251
|
-
inputSchema: z.object({
|
|
252
|
-
status: z.enum(['passed', 'failed', 'blocked']),
|
|
253
|
-
summary: z
|
|
254
|
-
.string()
|
|
255
|
-
.min(1)
|
|
256
|
-
.max(500)
|
|
257
|
-
.describe('What you did and what you saw, in plain language'),
|
|
258
|
-
errorCode: z.enum(MODEL_ERROR_CODES).optional(),
|
|
259
|
-
}),
|
|
260
|
-
execute: async (input) => {
|
|
261
|
-
if (this.verdict !== undefined)
|
|
262
|
-
return 'The step already concluded.';
|
|
263
|
-
if (input.status === 'blocked' &&
|
|
264
|
-
(input.errorCode === undefined ||
|
|
265
|
-
!MODEL_BLOCKABLE_CODES.includes(input.errorCode))) {
|
|
266
|
-
return ('Rejected: a blocked verdict requires errorCode naming what blocked you ' +
|
|
267
|
-
`(one of ${MODEL_BLOCKABLE_CODES.join(', ')}). ` +
|
|
268
|
-
'If the application itself misbehaved, use status "failed" instead.');
|
|
269
|
-
}
|
|
270
|
-
this.verdict = {
|
|
271
|
-
status: input.status,
|
|
272
|
-
summary: input.summary,
|
|
273
|
-
// A passed verdict never carries a code; a redundant one from the
|
|
274
|
-
// model is dropped rather than failing the step.
|
|
275
|
-
...(input.errorCode === undefined || input.status === 'passed'
|
|
276
|
-
? {}
|
|
277
|
-
: { errorCode: input.errorCode }),
|
|
278
|
-
};
|
|
279
|
-
return 'Step concluded.';
|
|
280
|
-
},
|
|
281
|
-
});
|
|
282
|
-
}
|
|
283
255
|
instructions() {
|
|
284
256
|
const parts = [];
|
|
285
257
|
if (this.options.system !== undefined && this.options.system.trim() !== '') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-loop.js","sourceRoot":"","sources":["../../src/agent/tool-loop.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tool-loop.js","sourceRoot":"","sources":["../../src/agent/tool-loop.ts"],"names":[],"mappings":"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"}
|
package/dist/backend/index.d.ts
CHANGED
|
@@ -65,7 +65,12 @@ export interface BackendFixtureContext {
|
|
|
65
65
|
readonly action: number;
|
|
66
66
|
readonly assertion: number;
|
|
67
67
|
};
|
|
68
|
-
/**
|
|
68
|
+
/**
|
|
69
|
+
* The running phase's signal: the attempt's through `beforeEach` and the
|
|
70
|
+
* body, then a fresh one per `afterEach` hook so teardown can still drive
|
|
71
|
+
* the app after a body timeout. Read it per call; a fixture factory that
|
|
72
|
+
* captures it once keeps a signal that is dead by teardown.
|
|
73
|
+
*/
|
|
69
74
|
readonly signal: AbortSignal;
|
|
70
75
|
/** Per-call operation budget: the action timeout (or an explicit one) plus the attempt signal. */
|
|
71
76
|
operation(timeoutMs?: number): OperationContext;
|
|
@@ -158,10 +163,45 @@ export interface BackendApp {
|
|
|
158
163
|
/** Clears persisted client state and relaunches. */
|
|
159
164
|
clearState?(context: OperationContext): Promise<void>;
|
|
160
165
|
}
|
|
166
|
+
/**
|
|
167
|
+
* Facts handed to `prepare`, once per run and target in the runner process,
|
|
168
|
+
* before any worker exists.
|
|
169
|
+
*/
|
|
170
|
+
export interface BackendPrepareInfo {
|
|
171
|
+
readonly runId: string;
|
|
172
|
+
readonly targetName: string;
|
|
173
|
+
/**
|
|
174
|
+
* The run's environment: what every worker is started with. A host may hand
|
|
175
|
+
* the run an environment other than the runner process's own, so anything
|
|
176
|
+
* provisioned here that a worker later looks up by environment (a browser
|
|
177
|
+
* cache location) must be resolved and spawned against this, not
|
|
178
|
+
* `process.env`.
|
|
179
|
+
*/
|
|
180
|
+
readonly env: NodeJS.ProcessEnv;
|
|
181
|
+
/**
|
|
182
|
+
* Aborts on interrupt only. Provisioning has no budget: a first-run
|
|
183
|
+
* download is as long as the network makes it, and cutting it short would
|
|
184
|
+
* fail every test behind it.
|
|
185
|
+
*/
|
|
186
|
+
readonly signal: AbortSignal;
|
|
187
|
+
/**
|
|
188
|
+
* Reports one line of progress. The runner streams it as a `notice` run
|
|
189
|
+
* event, so it reaches the reporter and every host sink instead of being
|
|
190
|
+
* written to a worker's stderr underneath the live status block.
|
|
191
|
+
*/
|
|
192
|
+
readonly log: (line: string) => void;
|
|
193
|
+
}
|
|
161
194
|
/** Run identity and harness-resolved facts handed to `init`, once per worker before the first step. */
|
|
162
195
|
export interface BackendInitInfo {
|
|
163
196
|
readonly runId: string;
|
|
164
197
|
readonly targetName: string;
|
|
198
|
+
/**
|
|
199
|
+
* Directory relative paths in the config resolve against: the config file's
|
|
200
|
+
* directory, or the run's `cwd` for a programmatic config. A backend option
|
|
201
|
+
* naming a file (a build to install) resolves here, never against
|
|
202
|
+
* `process.cwd()`, which an in-process run does not change.
|
|
203
|
+
*/
|
|
204
|
+
readonly projectRoot: string;
|
|
165
205
|
readonly app: BackendAppInfo;
|
|
166
206
|
/** Attribute the `testId` query resolves against. */
|
|
167
207
|
readonly testIdAttribute: string;
|
|
@@ -276,6 +316,15 @@ export interface Backend {
|
|
|
276
316
|
* trace start anchors and the secret-fill origin check.
|
|
277
317
|
*/
|
|
278
318
|
url?(context: OperationContext): Promise<string>;
|
|
319
|
+
/**
|
|
320
|
+
* Once per run and target, in the runner process, before any worker starts
|
|
321
|
+
* and outside every launch budget. Provision what the backend needs on this
|
|
322
|
+
* machine here (a first-run browser download, a toolchain fetch), so it
|
|
323
|
+
* happens once instead of per worker and its progress reaches the reporter
|
|
324
|
+
* through `info.log`. Failure is infrastructure and ends the run before any
|
|
325
|
+
* test executes.
|
|
326
|
+
*/
|
|
327
|
+
prepare?(info: BackendPrepareInfo): Promise<void>;
|
|
279
328
|
/**
|
|
280
329
|
* Once per worker, before the first step; boot devices here, not in a step
|
|
281
330
|
* budget. The same handle can be booted again after `dispose`: a config-held
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/backend/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAQrD,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAC3F,OAAO,EAAE,iBAAiB,EAAE,KAAK,cAAc,EAAE,MAAM,2BAA2B,CAAC;AACnF,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAClF,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,KAAK,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AACzF,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC1F,OAAO,EAEL,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,OAAO,EACZ,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,YAAY,EAClB,MAAM,eAAe,CAAC;AAEvB,mBAAmB,eAAe,CAAC;AACnC,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,YAAY,EACZ,mBAAmB,EACnB,mBAAmB,EACnB,6BAA6B,GAC9B,MAAM,eAAe,CAAC;AACvB,YAAY,EACV,UAAU,EACV,SAAS,EACT,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,MAAM,EACN,eAAe,EACf,YAAY,GACb,MAAM,aAAa,CAAC;AAErB;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GACzB,aAAa,GACb,SAAS,GACT,UAAU,GACV,OAAO,GACP,WAAW,GACX,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAElB,gFAAgF;AAChF,MAAM,WAAW,cAAc;IAC7B;;;;OAIG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,kDAAkD;IAClD,QAAQ,CAAC,cAAc,EAAE,SAAS,MAAM,EAAE,CAAC;CAC5C;AAED,yEAAyE;AACzE,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,GAAG,EAAE,cAAc,GAAG;QAC7B;;;;;WAKG;QACH,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;KACjC,CAAC;IACF,2DAA2D;IAC3D,QAAQ,CAAC,QAAQ,EAAE;QACjB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;KAC5B,CAAC;IACF
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/backend/index.ts"],"names":[],"mappings":"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"}
|
package/dist/backend/index.js
CHANGED
|
@@ -46,6 +46,7 @@ const KNOWN_KEYS = [
|
|
|
46
46
|
'artifacts',
|
|
47
47
|
'app',
|
|
48
48
|
'url',
|
|
49
|
+
'prepare',
|
|
49
50
|
'init',
|
|
50
51
|
'startAttempt',
|
|
51
52
|
'endAttempt',
|
|
@@ -63,6 +64,7 @@ const FUNCTION_MEMBERS = [
|
|
|
63
64
|
'perform',
|
|
64
65
|
'swipe',
|
|
65
66
|
'url',
|
|
67
|
+
'prepare',
|
|
66
68
|
'init',
|
|
67
69
|
'startAttempt',
|
|
68
70
|
'endAttempt',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/backend/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAE3D,uEAAuE;AACvE,2EAA2E;AAC3E,6EAA6E;AAC7E,6EAA6E;AAC7E,mDAAmD;AACnD,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAC3F,OAAO,EAAE,iBAAiB,EAAuB,MAAM,2BAA2B,CAAC;AACnF,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAElF,OAAO,EAAE,QAAQ,EAAE,aAAa,EAA6B,MAAM,qBAAqB,CAAC;AACzF,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,OAAO,EACL,mBAAmB,GAQpB,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,YAAY,EACZ,mBAAmB,EACnB,mBAAmB,EACnB,6BAA6B,GAC9B,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/backend/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAE3D,uEAAuE;AACvE,2EAA2E;AAC3E,6EAA6E;AAC7E,6EAA6E;AAC7E,mDAAmD;AACnD,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAC3F,OAAO,EAAE,iBAAiB,EAAuB,MAAM,2BAA2B,CAAC;AACnF,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAElF,OAAO,EAAE,QAAQ,EAAE,aAAa,EAA6B,MAAM,qBAAqB,CAAC;AACzF,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,OAAO,EACL,mBAAmB,GAQpB,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,YAAY,EACZ,mBAAmB,EACnB,mBAAmB,EACnB,6BAA6B,GAC9B,MAAM,eAAe,CAAC;AAoWvB,iFAAiF;AACjF,MAAM,UAAU,GAAG;IACjB,MAAM;IACN,SAAS;IACT,YAAY;IACZ,SAAS;IACT,QAAQ;IACR,SAAS;IACT,OAAO;IACP,UAAU;IACV,OAAO;IACP,WAAW;IACX,KAAK;IACL,KAAK;IACL,SAAS;IACT,MAAM;IACN,cAAc;IACd,YAAY;IACZ,SAAS;CACoC,CAAC;AAEhD,+DAA+D;AAC/D,MAAM,WAAW,GAAG;IAClB,KAAK,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC;IAC7B,SAAS,EAAE,CAAC,YAAY,EAAE,YAAY,EAAE,WAAW,CAAC;IACpD,GAAG,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,CAAC;CAC1C,CAAC;AAEX,MAAM,gBAAgB,GAAG;IACvB,SAAS;IACT,QAAQ;IACR,SAAS;IACT,OAAO;IACP,KAAK;IACL,SAAS;IACT,MAAM;IACN,cAAc;IACd,YAAY;IACZ,SAAS;CACD,CAAC;AAEX,+DAA+D;AAC/D,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC;AAErF,MAAM,oBAAoB,GAAG,qBAAqB,CAAC;AAEnD,SAAS,OAAO,CAAC,IAAY,EAAE,MAAc;IAC3C,OAAO,IAAI,kBAAkB,CAAC,gBAAgB,EAAE,YAAY,IAAI,MAAM,MAAM,EAAE,CAAC,CAAC;AAClF,CAAC;AAED;;;;GAIG;AACH,SAAS,cAAc,CACrB,IAAY,EACZ,GAAM,EACN,KAAc,EACd,QAAQ,GAAsB,EAAE;IAEhC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAChD,MAAM,OAAO,CAAC,IAAI,EAAE,GAAG,GAAG,oBAAoB,CAAC,CAAC;IAClD,CAAC;IACD,MAAM,OAAO,GAAsB,WAAW,CAAC,GAAG,CAAC,CAAC;IACpD,MAAM,MAAM,GAAG,KAAgC,CAAC;IAChD,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACzC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAC9B,MAAM,OAAO,CAAC,IAAI,EAAE,GAAG,GAAG,qBAAqB,MAAM,sBAAsB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACnG,CAAC;IACH,CAAC;IACD,MAAM,KAAK,GAA4B,EAAE,CAAC;IAC1C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;QAC1B,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;YACrB,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAAE,MAAM,OAAO,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,MAAM,qBAAqB,CAAC,CAAC;YAC1F,SAAS;QACX,CAAC;QACD,IAAI,OAAO,EAAE,KAAK,UAAU;YAAE,MAAM,OAAO,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,MAAM,qBAAqB,CAAC,CAAC;QACzF,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,aAAa,CAAC,IAAa;IACzC,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QAC9C,MAAM,IAAI,kBAAkB,CAAC,gBAAgB,EAAE,yCAAyC,CAAC,CAAC;IAC5F,CAAC;IACD,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QAC7D,MAAM,IAAI,kBAAkB,CAAC,gBAAgB,EAAE,yCAAyC,CAAC,CAAC;IAC5F,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;IACvB,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACnE,MAAM,OAAO,CAAC,IAAI,EAAE,+EAA+E,CAAC,CAAC;IACvG,CAAC;IACD,IAAI,IAAI,CAAC,UAAU,KAAK,mBAAmB,EAAE,CAAC;QAC5C,MAAM,OAAO,CACX,IAAI,EACJ,uBAAuB,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,0BAA0B,mBAAmB,EAAE,CAC9F,CAAC;IACJ,CAAC;IACD,wEAAwE;IACxE,qEAAqE;IACrE,IAAI,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,SAAS,EAAE,CAAC;QACrD,MAAM,KAAK,GAAsB,UAAU,CAAC;QAC5C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACpC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBACzB,MAAM,OAAO,CAAC,IAAI,EAAE,gBAAgB,GAAG,gDAAgD,CAAC,CAAC;YAC3F,CAAC;QACH,CAAC;IACH,CAAC;IACD,KAAK,MAAM,MAAM,IAAI,gBAAgB,EAAE,CAAC;QACtC,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,SAAS,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC;YACrE,MAAM,OAAO,CAAC,IAAI,EAAE,GAAG,MAAM,qBAAqB,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAED,MAAM,YAAY,GAAG,IAAI,GAAG,EAAqB,CAAC;IAClD,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;QAAE,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAChE,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAC/B,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;YACrC,MAAM,OAAO,CAAC,IAAI,EAAE,uEAAuE,CAAC,CAAC;QAC/F,CAAC;QACD,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC9B,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC9B,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;YACrC,MAAM,OAAO,CAAC,IAAI,EAAE,+EAA+E,CAAC,CAAC;QACvG,CAAC;QACD,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC/B,CAAC;IACD,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;QACjE,MAAM,OAAO,CAAC,IAAI,EAAE,gCAAgC,CAAC,CAAC;IACxD,CAAC;IAED,MAAM,MAAM,GAA4B,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC;IACrG,KAAK,MAAM,MAAM,IAAI,gBAAgB,EAAE,CAAC;QACtC,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;QACxB,IAAI,EAAE,KAAK,SAAS;YAAE,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACvD,CAAC;IACD,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QAChC,IAAI,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;YAChE,MAAM,OAAO,CAAC,IAAI,EAAE,4BAA4B,CAAC,CAAC;QACpD,CAAC;QACD,KAAK,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC/D,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBACxC,MAAM,OAAO,CAAC,IAAI,EAAE,iBAAiB,OAAO,oCAAoC,CAAC,CAAC;YACpF,CAAC;YACD,IAAI,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;gBACnC,MAAM,OAAO,CAAC,IAAI,EAAE,iBAAiB,OAAO,+BAA+B,CAAC,CAAC;YAC/E,CAAC;YACD,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE,CAAC;gBAClC,MAAM,OAAO,CAAC,IAAI,EAAE,YAAY,OAAO,6BAA6B,CAAC,CAAC;YACxE,CAAC;YACD,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC5B,CAAC;QACD,uEAAuE;QACvE,gCAAgC;QAChC,MAAM,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,MAAM,CAChC,MAAM,CAAC,WAAW,CAChB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC;YACxD,OAAO;YACN,OAA2C,CAAC,IAAI,CAAC,IAAI,CAAC;SACxD,CAAC,CACH,CACF,CAAC;IACJ,CAAC;IACD,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC7B,MAAM,CAAC,OAAO,CAAC,GAAG,cAAc,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;QACpF,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC5B,CAAC;IACD,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QACjC,MAAM,SAAS,GAAG,cAAc,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;QACpF,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,KAAK,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,KAAK,SAAS,CAAC,EAAE,CAAC;YACvF,MAAM,OAAO,CAAC,IAAI,EAAE,8DAA8D,CAAC,CAAC;QACtF,CAAC;QACD,MAAM,CAAC,WAAW,CAAC,GAAG,SAAS,CAAC;QAChC,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAChC,CAAC;IACD,IAAI,IAAI,CAAC,GAAG,KAAK,SAAS;QAAE,MAAM,CAAC,KAAK,CAAC,GAAG,cAAc,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;IAElF,0EAA0E;IAC1E,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,GAAG,MAAM;QACT,CAAC,YAAY,CAAC,EAAE,IAAa;QAC7B,YAAY;KACb,CAA6B,CAAC;AACjC,CAAC;AAED,8DAA8D;AAC9D,MAAM,UAAU,eAAe,CAAC,KAAc;IAC5C,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACb,KAAsC,CAAC,YAAY,CAAC,KAAK,IAAI,CAC/D,CAAC;AACJ,CAAC"}
|
package/dist/cache/recorder.d.ts
CHANGED
|
@@ -54,6 +54,8 @@ export declare class TraceRecorder {
|
|
|
54
54
|
readonly endPath?: string;
|
|
55
55
|
/** Already projected and capped by `describeAnchors`; recorded as given. */
|
|
56
56
|
readonly endAnchors?: readonly TraceTargetDescriptor[];
|
|
57
|
+
/** How long the recorded run took to reach its end state, plus margin. */
|
|
58
|
+
readonly endWaitMs?: number;
|
|
57
59
|
}): ActionTrace | undefined;
|
|
58
60
|
private anchorPath;
|
|
59
61
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recorder.d.ts","sourceRoot":"","sources":["../../src/cache/recorder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAkB,KAAK,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC5E,OAAO,
|
|
1
|
+
{"version":3,"file":"recorder.d.ts","sourceRoot":"","sources":["../../src/cache/recorder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAkB,KAAK,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC5E,OAAO,EAOL,KAAK,WAAW,EAEhB,KAAK,qBAAqB,EAC3B,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,oBAAoB;IACnC,mEAAmE;IACnE,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAC1C,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAwB;IAChD,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA2B;IAClD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;IACzC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IAEpC,YAAY,OAAO,EAAE,oBAAoB,EAIxC;IAED,wDAAwD;IACxD,IAAI,aAAa,IAAI,MAAM,CAE1B;IAED,4CAA4C;IAC5C,MAAM,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI,CAGrC;IAED;;;;OAIG;IACH,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAEhC;IAED;;;OAGG;IACH,QAAQ,CAAC,UAAU,EAAE;QACnB,QAAQ,CAAC,QAAQ,EAAE;YAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;YAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;QACxE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAC1B,4EAA4E;QAC5E,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,qBAAqB,EAAE,CAAC;QACvD,0EAA0E;QAC1E,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;KAC7B,GAAG,WAAW,GAAG,SAAS,CAyB1B;IAED,OAAO,CAAC,UAAU;IAOlB;;;;;;OAMG;IACH,OAAO,CAAC,UAAU;IAmClB;;;;;OAKG;IACH,OAAO,CAAC,QAAQ;IAOhB,OAAO,CAAC,IAAI;CAOb"}
|
package/dist/cache/recorder.js
CHANGED
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
* state. A poisoned trace still documents what happened; it never replays.
|
|
17
17
|
*/
|
|
18
18
|
import { describeAction } from '../agent/actions.js';
|
|
19
|
-
import { bound, MAX_TRACE_ACTIONS, MAX_TRACE_DESCRIPTOR_CHARS, MAX_TRACE_INPUT_CHARS, MAX_TRACE_SUMMARY_CHARS, } from './trace.js';
|
|
19
|
+
import { bound, MAX_TRACE_ACTIONS, MAX_TRACE_DESCRIPTOR_CHARS, MAX_TRACE_END_WAIT_MS, MAX_TRACE_INPUT_CHARS, MAX_TRACE_SUMMARY_CHARS, } from './trace.js';
|
|
20
20
|
export class TraceRecorder {
|
|
21
21
|
actions = [];
|
|
22
22
|
truncated = false;
|
|
@@ -70,6 +70,9 @@ export class TraceRecorder {
|
|
|
70
70
|
...(conclusion.endAnchors === undefined || conclusion.endAnchors.length === 0
|
|
71
71
|
? {}
|
|
72
72
|
: { endAnchors: conclusion.endAnchors }),
|
|
73
|
+
...(conclusion.endWaitMs === undefined
|
|
74
|
+
? {}
|
|
75
|
+
: { endWaitMs: Math.min(MAX_TRACE_END_WAIT_MS, Math.max(0, Math.round(conclusion.endWaitMs))) }),
|
|
73
76
|
...(this.truncated ? { truncated: true } : {}),
|
|
74
77
|
};
|
|
75
78
|
}
|