agentfootprint 7.18.0 → 7.19.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/adapters/hosting/agentcore.js +23 -9
- package/dist/adapters/hosting/agentcore.js.map +1 -1
- package/dist/core/Agent.js +6 -0
- package/dist/core/Agent.js.map +1 -1
- package/dist/core/agent/stages/toolCalls.js +13 -0
- package/dist/core/agent/stages/toolCalls.js.map +1 -1
- package/dist/core/durabilityBarrier.js +68 -0
- package/dist/core/durabilityBarrier.js.map +1 -0
- package/dist/esm/adapters/hosting/agentcore.d.ts +4 -4
- package/dist/esm/adapters/hosting/agentcore.js +24 -10
- package/dist/esm/adapters/hosting/agentcore.js.map +1 -1
- package/dist/esm/core/Agent.js +6 -0
- package/dist/esm/core/Agent.js.map +1 -1
- package/dist/esm/core/agent/stages/toolCalls.d.ts +21 -0
- package/dist/esm/core/agent/stages/toolCalls.js +13 -0
- package/dist/esm/core/agent/stages/toolCalls.js.map +1 -1
- package/dist/esm/core/durabilityBarrier.d.ts +61 -0
- package/dist/esm/core/durabilityBarrier.js +63 -0
- package/dist/esm/core/durabilityBarrier.js.map +1 -0
- package/dist/esm/hosting/durability.d.ts +92 -0
- package/dist/esm/hosting/durability.js +174 -0
- package/dist/esm/hosting/durability.js.map +1 -0
- package/dist/esm/hosting/envelope.d.ts +75 -14
- package/dist/esm/hosting/envelope.js +141 -16
- package/dist/esm/hosting/envelope.js.map +1 -1
- package/dist/esm/hosting/errors.d.ts +60 -11
- package/dist/esm/hosting/errors.js +92 -18
- package/dist/esm/hosting/errors.js.map +1 -1
- package/dist/esm/hosting/httpHost.d.ts +17 -1
- package/dist/esm/hosting/httpHost.js +42 -6
- package/dist/esm/hosting/httpHost.js.map +1 -1
- package/dist/esm/hosting/index.d.ts +7 -4
- package/dist/esm/hosting/index.js +6 -3
- package/dist/esm/hosting/index.js.map +1 -1
- package/dist/esm/hosting/nodeHost.d.ts +4 -2
- package/dist/esm/hosting/nodeHost.js +14 -3
- package/dist/esm/hosting/nodeHost.js.map +1 -1
- package/dist/esm/hosting/standingAgent.d.ts +22 -7
- package/dist/esm/hosting/standingAgent.js +144 -32
- package/dist/esm/hosting/standingAgent.js.map +1 -1
- package/dist/esm/hosting/types.d.ts +193 -19
- package/dist/hosting/durability.js +178 -0
- package/dist/hosting/durability.js.map +1 -0
- package/dist/hosting/envelope.js +146 -18
- package/dist/hosting/envelope.js.map +1 -1
- package/dist/hosting/errors.js +95 -19
- package/dist/hosting/errors.js.map +1 -1
- package/dist/hosting/httpHost.js +42 -6
- package/dist/hosting/httpHost.js.map +1 -1
- package/dist/hosting/index.js +10 -2
- package/dist/hosting/index.js.map +1 -1
- package/dist/hosting/nodeHost.js +14 -3
- package/dist/hosting/nodeHost.js.map +1 -1
- package/dist/hosting/standingAgent.js +142 -30
- package/dist/hosting/standingAgent.js.map +1 -1
- package/dist/types/adapters/hosting/agentcore.d.ts +4 -4
- package/dist/types/adapters/hosting/agentcore.d.ts.map +1 -1
- package/dist/types/core/Agent.d.ts.map +1 -1
- package/dist/types/core/agent/stages/toolCalls.d.ts +21 -0
- package/dist/types/core/agent/stages/toolCalls.d.ts.map +1 -1
- package/dist/types/core/durabilityBarrier.d.ts +62 -0
- package/dist/types/core/durabilityBarrier.d.ts.map +1 -0
- package/dist/types/hosting/durability.d.ts +93 -0
- package/dist/types/hosting/durability.d.ts.map +1 -0
- package/dist/types/hosting/envelope.d.ts +75 -14
- package/dist/types/hosting/envelope.d.ts.map +1 -1
- package/dist/types/hosting/errors.d.ts +60 -11
- package/dist/types/hosting/errors.d.ts.map +1 -1
- package/dist/types/hosting/httpHost.d.ts +17 -1
- package/dist/types/hosting/httpHost.d.ts.map +1 -1
- package/dist/types/hosting/index.d.ts +7 -4
- package/dist/types/hosting/index.d.ts.map +1 -1
- package/dist/types/hosting/nodeHost.d.ts +4 -2
- package/dist/types/hosting/nodeHost.d.ts.map +1 -1
- package/dist/types/hosting/standingAgent.d.ts +22 -7
- package/dist/types/hosting/standingAgent.d.ts.map +1 -1
- package/dist/types/hosting/types.d.ts +193 -19
- package/dist/types/hosting/types.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -17,7 +17,10 @@
|
|
|
17
17
|
*
|
|
18
18
|
* Pattern: Ports & adapters (hexagonal). Role: the port side, exclusively.
|
|
19
19
|
*/
|
|
20
|
+
import type { FlowchartCheckpoint } from 'footprintjs';
|
|
20
21
|
import type { Agent } from '../core/Agent.js';
|
|
22
|
+
import type { CheckInRequest } from '../core/checkin.js';
|
|
23
|
+
import type { MiddlewareAsk } from '../core/pause.js';
|
|
21
24
|
import type { AgentRunCheckpoint } from '../core/runCheckpoint.js';
|
|
22
25
|
/**
|
|
23
26
|
* Something a host can do BEYOND the baseline of "accept a request, deliver one
|
|
@@ -37,6 +40,24 @@ export type HostCapability = 'streaming';
|
|
|
37
40
|
export interface HostRequest {
|
|
38
41
|
/** What the caller is asking. */
|
|
39
42
|
readonly input: string;
|
|
43
|
+
/**
|
|
44
|
+
* A person's answer to an outstanding {@link PendingAsk} — and **the one
|
|
45
|
+
* thing that distinguishes a resume from a new message.**
|
|
46
|
+
*
|
|
47
|
+
* Present ⇒ this request answers the run that paused on this session. Absent
|
|
48
|
+
* ⇒ this request is a new message. That is the whole contract, and it is a
|
|
49
|
+
* FIELD rather than an inference on purpose: reading approval out of prose
|
|
50
|
+
* ("yes, go ahead") is a guess, and a guess is not something a consent gate
|
|
51
|
+
* may be built on.
|
|
52
|
+
*
|
|
53
|
+
* The port never interprets it. It is handed to `agent.resume(checkpoint,
|
|
54
|
+
* decision)` exactly as it arrived — a {@link CheckInRequest} or a middleware
|
|
55
|
+
* `ask` is answered with the shipped `checkInApproved()` / `checkInDeclined()`
|
|
56
|
+
* vocabulary; a plain `askHuman` pause is answered with whatever that tool's
|
|
57
|
+
* author documented. Typed `unknown` because the library does not get to
|
|
58
|
+
* decide what a tool asked for.
|
|
59
|
+
*/
|
|
60
|
+
readonly decision?: unknown;
|
|
40
61
|
/**
|
|
41
62
|
* The conversation this request CLAIMS to belong to — caller data, exactly as
|
|
42
63
|
* the transport declared it (a JSON field, a header, a path segment).
|
|
@@ -57,13 +78,37 @@ export interface HostRequest {
|
|
|
57
78
|
readonly signal?: AbortSignal;
|
|
58
79
|
}
|
|
59
80
|
/**
|
|
60
|
-
* The one reply a request gets. Exactly one of {@link HostReply.complete}
|
|
61
|
-
* {@link HostReply.fail} ends it; a second call is
|
|
62
|
-
* to corrupt the wire.
|
|
81
|
+
* The one reply a request gets. Exactly one of {@link HostReply.complete},
|
|
82
|
+
* {@link HostReply.awaiting} or {@link HostReply.fail} ends it; a second call is
|
|
83
|
+
* ignored rather than allowed to corrupt the wire.
|
|
84
|
+
*
|
|
85
|
+
* Three terminals, because a run has three ends and only three: it answered, it
|
|
86
|
+
* stopped to ask a person something, or it failed. Before `'flowchart-v1'` there
|
|
87
|
+
* was nowhere to keep a paused run, so the middle one was delivered through
|
|
88
|
+
* `fail` — an error standing in for unfinished work. It is a terminal of its own
|
|
89
|
+
* now, and a pause is never reported as a failure again.
|
|
63
90
|
*/
|
|
64
91
|
export interface HostReply {
|
|
65
92
|
/** Deliver the final answer and end the reply. */
|
|
66
93
|
complete(output: string): void;
|
|
94
|
+
/**
|
|
95
|
+
* End the reply with **unfinished work**: the run stopped to ask a person
|
|
96
|
+
* something, the paused run is stored, and a later request carrying
|
|
97
|
+
* {@link HostRequest.decision} continues it.
|
|
98
|
+
*
|
|
99
|
+
* This is not a failure and must not be reported as one. The agent did not
|
|
100
|
+
* break, no work was lost, and there is nothing to retry — there is a question
|
|
101
|
+
* outstanding. An adapter that maps this onto a 5xx, an error counter or a
|
|
102
|
+
* dead-letter queue is telling every dashboard it feeds something that is not
|
|
103
|
+
* true.
|
|
104
|
+
*
|
|
105
|
+
* Optional on the TYPE for the same reason {@link HostReply.emit} is: a
|
|
106
|
+
* minimal adapter need not implement it. Every shipped adapter does. When it
|
|
107
|
+
* is absent the composer still STORES the paused run — the store is not the
|
|
108
|
+
* transport's business — and ends the reply with a named refusal instead, so
|
|
109
|
+
* the pause is never lost merely because the wire could not describe it.
|
|
110
|
+
*/
|
|
111
|
+
awaiting?(pending: PendingAsk): void;
|
|
67
112
|
/**
|
|
68
113
|
* A piece of the answer, as it is produced.
|
|
69
114
|
*
|
|
@@ -114,37 +159,156 @@ export interface AgentHost {
|
|
|
114
159
|
serve(handler: HostHandler): Promise<HostHandle>;
|
|
115
160
|
}
|
|
116
161
|
/**
|
|
117
|
-
* A
|
|
162
|
+
* A session packed for storage.
|
|
118
163
|
*
|
|
119
164
|
* `format` names WHAT is inside, so a reader that does not know the shape
|
|
120
|
-
* refuses BY NAME instead of restoring a
|
|
165
|
+
* refuses BY NAME instead of restoring a session it cannot actually read.
|
|
121
166
|
* Formats are ADDED, never redefined: an old runtime meeting a new format says
|
|
122
167
|
* so and stops, which is the only safe thing it can do with a payload it cannot
|
|
123
|
-
* interpret.
|
|
124
|
-
*
|
|
125
|
-
* `'conversation-v1'`
|
|
126
|
-
*
|
|
127
|
-
*
|
|
128
|
-
*
|
|
129
|
-
*
|
|
130
|
-
*
|
|
168
|
+
* interpret. Two exist:
|
|
169
|
+
*
|
|
170
|
+
* • `'conversation-v1'` — a conversation and only a conversation. Every turn
|
|
171
|
+
* that ran to an answer stores this.
|
|
172
|
+
* • `'flowchart-v1'` — a run that stopped mid-flow to ask a person something:
|
|
173
|
+
* the engine's own checkpoint, the conversation as of the pause, and the
|
|
174
|
+
* outstanding ask. 7.14 shipped the version field for exactly this day, and
|
|
175
|
+
* said so; this is that day.
|
|
176
|
+
*
|
|
177
|
+
* The union is discriminated on `format`, so a reader that switches on it is
|
|
178
|
+
* exhaustive by construction and a third format tomorrow breaks the switch at
|
|
179
|
+
* compile time rather than at 3am.
|
|
131
180
|
*/
|
|
132
|
-
export
|
|
181
|
+
export type CheckpointEnvelope = ConversationEnvelope | PausedRunEnvelope;
|
|
182
|
+
/** A conversation packed for storage — what a turn that ANSWERED leaves behind. */
|
|
183
|
+
export interface ConversationEnvelope {
|
|
133
184
|
/** Names the shape of `data`. Unknown values are refused, never guessed at. */
|
|
134
185
|
readonly format: 'conversation-v1';
|
|
135
|
-
/** The conversation itself
|
|
186
|
+
/** The conversation itself. */
|
|
136
187
|
readonly data: AgentRunCheckpoint;
|
|
137
188
|
/** Wall-clock when it was packed. Diagnostic. */
|
|
138
189
|
readonly savedAt: number;
|
|
139
190
|
}
|
|
191
|
+
/** A paused run packed for storage — what a turn that ASKED leaves behind. */
|
|
192
|
+
export interface PausedRunEnvelope {
|
|
193
|
+
/** Names the shape of `data`. Unknown values are refused, never guessed at. */
|
|
194
|
+
readonly format: 'flowchart-v1';
|
|
195
|
+
/** The paused run. */
|
|
196
|
+
readonly data: PausedRun;
|
|
197
|
+
/** Wall-clock when it was packed. Diagnostic. */
|
|
198
|
+
readonly savedAt: number;
|
|
199
|
+
}
|
|
200
|
+
/**
|
|
201
|
+
* A run that stopped to ask a person something, in the three pieces a session
|
|
202
|
+
* actually needs: what continues it, what it has said so far, and what it is
|
|
203
|
+
* waiting on.
|
|
204
|
+
*
|
|
205
|
+
* ── JSON, honestly ───────────────────────────────────────────────────────────
|
|
206
|
+
* A `FlowchartCheckpoint` is **JSON-safe to resume from, and not byte-identical
|
|
207
|
+
* through JSON.** `JSON.stringify` drops any property whose value is
|
|
208
|
+
* `undefined`, and a real paused agent run has a dozen of them. Every one
|
|
209
|
+
* measured sits in `executionTree` / `subflowResults` — the diagnostic halves
|
|
210
|
+
* the engine keeps for narrative and BTS. `sharedState`, which is the half
|
|
211
|
+
* `agent.resume()` actually reads, round-trips unchanged, because footprintjs's
|
|
212
|
+
* TypedScope already JSON-round-trips every object write on its way into
|
|
213
|
+
* committed state.
|
|
214
|
+
*
|
|
215
|
+
* So: store it anywhere that speaks JSON and resume works. Do not assert that
|
|
216
|
+
* what came back deep-equals what went in — `key: undefined` comes back as no
|
|
217
|
+
* key at all, and a test written to expect otherwise is testing `JSON`, not
|
|
218
|
+
* this library.
|
|
219
|
+
*/
|
|
220
|
+
export interface PausedRun {
|
|
221
|
+
/** The engine checkpoint — everything `agent.resume(checkpoint, decision)` needs. */
|
|
222
|
+
readonly checkpoint: FlowchartCheckpoint;
|
|
223
|
+
/**
|
|
224
|
+
* The conversation as of the pause, in the same shape every other turn stores.
|
|
225
|
+
*
|
|
226
|
+
* Kept alongside the checkpoint so a session that is waiting on a person is
|
|
227
|
+
* still a readable conversation: a support view can show what was said, and a
|
|
228
|
+
* runtime that cannot resume this run can still see the turn that led to the
|
|
229
|
+
* question.
|
|
230
|
+
*/
|
|
231
|
+
readonly conversation: AgentRunCheckpoint;
|
|
232
|
+
/** What the run is waiting on, as data. */
|
|
233
|
+
readonly pending: PendingAsk;
|
|
234
|
+
}
|
|
235
|
+
/**
|
|
236
|
+
* The question a paused run is waiting on — the part of a pause that is safe to
|
|
237
|
+
* hand to whoever asked.
|
|
238
|
+
*
|
|
239
|
+
* **It deliberately carries no checkpoint.** The engine checkpoint holds the
|
|
240
|
+
* entire shared state of the run: the system prompt, the whole conversation,
|
|
241
|
+
* every tool result. That belongs in the store, which the operator chose and
|
|
242
|
+
* controls, and not in a reply to whoever posted the request. The caller gets
|
|
243
|
+
* the question; the store gets the state.
|
|
244
|
+
*/
|
|
245
|
+
export interface PendingAsk {
|
|
246
|
+
/** The session holding the paused run — where the decision has to be sent back. */
|
|
247
|
+
readonly sessionId?: string;
|
|
248
|
+
/** The tool that asked, when the run recorded which one it was. */
|
|
249
|
+
readonly tool?: string;
|
|
250
|
+
/** The question in plain words, when the pause carried one. */
|
|
251
|
+
readonly question?: string;
|
|
252
|
+
/**
|
|
253
|
+
* Present ONLY when a tool declared `checkIn` — the typed ask plus its
|
|
254
|
+
* evidence pack (what the tool will do, what context the run read, which
|
|
255
|
+
* context drove the choice, the run so far). Answer with `checkInApproved()`
|
|
256
|
+
* / `checkInDeclined()`.
|
|
257
|
+
*/
|
|
258
|
+
readonly checkIn?: CheckInRequest;
|
|
259
|
+
/**
|
|
260
|
+
* Present ONLY when a `toolMiddleware` answered `ask` — the question and the
|
|
261
|
+
* middleware that put it. Answered with the same decision vocabulary a
|
|
262
|
+
* check-in uses, deliberately: a person approving is a person approving.
|
|
263
|
+
*/
|
|
264
|
+
readonly ask?: MiddlewareAsk;
|
|
265
|
+
/**
|
|
266
|
+
* Exactly what the tool passed to `askHuman()` / `pauseHere()`, uninterpreted.
|
|
267
|
+
* For a plain pause this is the whole of what the tool's author chose to say,
|
|
268
|
+
* and the library is not entitled to summarise it.
|
|
269
|
+
*/
|
|
270
|
+
readonly pauseData: unknown;
|
|
271
|
+
}
|
|
272
|
+
/**
|
|
273
|
+
* How often a run's progress is written to the session store — the trade
|
|
274
|
+
* between latency and how much a crash can cost you.
|
|
275
|
+
*
|
|
276
|
+
* - `'exit'` (default) — one write, when the run finishes. The behaviour every
|
|
277
|
+
* release before 7.19 had, spelled out rather than implied. A crash mid-run
|
|
278
|
+
* loses the whole turn.
|
|
279
|
+
* - `'async'` — a write is STARTED whenever the conversation changes and never
|
|
280
|
+
* waited on. The run never slows down; the store is behind by however much
|
|
281
|
+
* the newest un-landed write carried. At most one write is in flight and the
|
|
282
|
+
* newest snapshot supersedes any queued one, so what a crash leaves is always
|
|
283
|
+
* a PREFIX of the run, never a mixture.
|
|
284
|
+
* - `'sync'` — persist-then-proceed. The same trigger, but **iteration N's
|
|
285
|
+
* tools do not execute until iteration N-1's write has landed**, and the
|
|
286
|
+
* answer is not delivered until the last write has landed. You pay the
|
|
287
|
+
* store's latency once per iteration, knowingly, and in exchange the amount
|
|
288
|
+
* of work a crash can re-run has a number: **the current iteration, and
|
|
289
|
+
* nothing before it.**
|
|
290
|
+
*
|
|
291
|
+
* ── The bound, stated exactly ────────────────────────────────────────────────
|
|
292
|
+
* A commit boundary is a whole stage, and the agent dispatches ALL of one
|
|
293
|
+
* iteration's tool calls inside one stage body. So under `'sync'` a crash
|
|
294
|
+
* re-executes the tools of the iteration that was in flight — never an earlier
|
|
295
|
+
* one. That is the same idempotency requirement `resumeOnError` has always
|
|
296
|
+
* carried, now with a boundary instead of a warning: mutating tools must be
|
|
297
|
+
* idempotent, keyed on stable call content rather than `ctx.toolCallId`.
|
|
298
|
+
*/
|
|
299
|
+
export type DurabilityMode = 'exit' | 'async' | 'sync';
|
|
140
300
|
/**
|
|
141
301
|
* Why a session is being woken.
|
|
142
302
|
*
|
|
143
|
-
*
|
|
144
|
-
*
|
|
145
|
-
*
|
|
303
|
+
* - `'invoke'` — a request arrived for that session.
|
|
304
|
+
* - `'resume'` — that request carries a person's decision for a run which
|
|
305
|
+
* paused earlier.
|
|
306
|
+
*
|
|
307
|
+
* `'resume'` was absent until 7.19 because nothing could produce it: naming
|
|
308
|
+
* reasons nothing fires would be an interface describing a system that does not
|
|
309
|
+
* exist. Something produces it now.
|
|
146
310
|
*/
|
|
147
|
-
export type WakeReason = 'invoke';
|
|
311
|
+
export type WakeReason = 'invoke' | 'resume';
|
|
148
312
|
/**
|
|
149
313
|
* The port: where a conversation lives between requests.
|
|
150
314
|
*
|
|
@@ -203,5 +367,15 @@ export interface StandingAgentOptions<TH extends HostHandle = HostHandle> {
|
|
|
203
367
|
};
|
|
204
368
|
/** Default `'reject'`. See {@link ConcurrentInvokePolicy}. */
|
|
205
369
|
readonly onConcurrentInvoke?: ConcurrentInvokePolicy;
|
|
370
|
+
/**
|
|
371
|
+
* How often a run's progress becomes crash-survivable. Default `'exit'` —
|
|
372
|
+
* one write when the run finishes, which is what every release before this
|
|
373
|
+
* one did. See {@link DurabilityMode} for what the other two buy and cost.
|
|
374
|
+
*
|
|
375
|
+
* Under `'exit'` nothing is attached to the agent at all: no observer, no
|
|
376
|
+
* per-commit work, no barrier. An agent served this way behaves and performs
|
|
377
|
+
* exactly as it did in 7.18.
|
|
378
|
+
*/
|
|
379
|
+
readonly durability?: DurabilityMode;
|
|
206
380
|
}
|
|
207
381
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/hosting/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAInE;;;;;;;;;;GAUG;AACH,MAAM,MAAM,cAAc,GAAG,WAAW,CAAC;AAEzC;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,iCAAiC;IACjC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB;;;;;;;;OAQG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACpD,yCAAyC;IACzC,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;CAC/B;AAED
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/hosting/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "agentfootprint",
|
|
3
|
-
"version": "7.
|
|
3
|
+
"version": "7.19.0",
|
|
4
4
|
"description": "The explainable agent framework — backtrack a wrong answer to the exact context that caused it (evidence, not guesses). Built on footprintjs.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Sanjay Krishna Anbalagan",
|