agentfootprint 7.4.0 → 7.6.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.
Files changed (166) hide show
  1. package/AGENTS.md +1 -1
  2. package/CLAUDE.md +1 -1
  3. package/README.md +108 -11
  4. package/ai-instructions/claude-code/SKILL.md +1 -1
  5. package/dist/core/Agent.js +19 -1
  6. package/dist/core/Agent.js.map +1 -1
  7. package/dist/core/RunnerBase.js +12 -1
  8. package/dist/core/RunnerBase.js.map +1 -1
  9. package/dist/core/agent/AgentBuilder.js +33 -1
  10. package/dist/core/agent/AgentBuilder.js.map +1 -1
  11. package/dist/core/agent/stages/toolCalls.js +225 -16
  12. package/dist/core/agent/stages/toolCalls.js.map +1 -1
  13. package/dist/core/checkin.js +266 -0
  14. package/dist/core/checkin.js.map +1 -0
  15. package/dist/core/pause.js +17 -1
  16. package/dist/core/pause.js.map +1 -1
  17. package/dist/core/tools.js +3 -0
  18. package/dist/core/tools.js.map +1 -1
  19. package/dist/debug.js +17 -2
  20. package/dist/debug.js.map +1 -1
  21. package/dist/esm/core/Agent.d.ts +6 -1
  22. package/dist/esm/core/Agent.js +19 -1
  23. package/dist/esm/core/Agent.js.map +1 -1
  24. package/dist/esm/core/RunnerBase.js +12 -1
  25. package/dist/esm/core/RunnerBase.js.map +1 -1
  26. package/dist/esm/core/agent/AgentBuilder.d.ts +27 -0
  27. package/dist/esm/core/agent/AgentBuilder.js +33 -1
  28. package/dist/esm/core/agent/AgentBuilder.js.map +1 -1
  29. package/dist/esm/core/agent/stages/toolCalls.d.ts +9 -0
  30. package/dist/esm/core/agent/stages/toolCalls.js +225 -16
  31. package/dist/esm/core/agent/stages/toolCalls.js.map +1 -1
  32. package/dist/esm/core/agent/types.d.ts +2 -0
  33. package/dist/esm/core/checkin.d.ts +263 -0
  34. package/dist/esm/core/checkin.js +254 -0
  35. package/dist/esm/core/checkin.js.map +1 -0
  36. package/dist/esm/core/pause.d.ts +24 -0
  37. package/dist/esm/core/pause.js +15 -0
  38. package/dist/esm/core/pause.js.map +1 -1
  39. package/dist/esm/core/tools.d.ts +19 -0
  40. package/dist/esm/core/tools.js +3 -0
  41. package/dist/esm/core/tools.js.map +1 -1
  42. package/dist/esm/debug.d.ts +3 -2
  43. package/dist/esm/debug.js +10 -2
  44. package/dist/esm/debug.js.map +1 -1
  45. package/dist/esm/events/dispatcher.d.ts +1 -1
  46. package/dist/esm/events/dispatcher.js.map +1 -1
  47. package/dist/esm/events/payloads.d.ts +19 -0
  48. package/dist/esm/events/registry.d.ts +7 -1
  49. package/dist/esm/events/registry.js +6 -0
  50. package/dist/esm/events/registry.js.map +1 -1
  51. package/dist/esm/index.d.ts +4 -1
  52. package/dist/esm/index.js +9 -1
  53. package/dist/esm/index.js.map +1 -1
  54. package/dist/esm/lib/context-bisect/index.d.ts +1 -0
  55. package/dist/esm/lib/context-bisect/index.js +3 -0
  56. package/dist/esm/lib/context-bisect/index.js.map +1 -1
  57. package/dist/esm/lib/context-bisect/localize.d.ts +6 -2
  58. package/dist/esm/lib/context-bisect/localize.js +19 -3
  59. package/dist/esm/lib/context-bisect/localize.js.map +1 -1
  60. package/dist/esm/lib/context-bisect/rerun.d.ts +123 -0
  61. package/dist/esm/lib/context-bisect/rerun.js +155 -0
  62. package/dist/esm/lib/context-bisect/rerun.js.map +1 -0
  63. package/dist/esm/lib/context-bisect/types.d.ts +8 -0
  64. package/dist/esm/lib/context-bisect/types.js.map +1 -1
  65. package/dist/esm/lib/influence-core/index.d.ts +2 -0
  66. package/dist/esm/lib/influence-core/index.js +2 -0
  67. package/dist/esm/lib/influence-core/index.js.map +1 -1
  68. package/dist/esm/lib/influence-core/lexical.d.ts +60 -0
  69. package/dist/esm/lib/influence-core/lexical.js +142 -0
  70. package/dist/esm/lib/influence-core/lexical.js.map +1 -0
  71. package/dist/esm/lib/influence-core/signals.d.ts +5 -0
  72. package/dist/esm/lib/influence-core/signals.js +6 -2
  73. package/dist/esm/lib/influence-core/signals.js.map +1 -1
  74. package/dist/esm/lib/influence-core/strategies.d.ts +51 -0
  75. package/dist/esm/lib/influence-core/strategies.js +29 -0
  76. package/dist/esm/lib/influence-core/strategies.js.map +1 -0
  77. package/dist/esm/lib/recorded-chat/index.d.ts +11 -0
  78. package/dist/esm/lib/recorded-chat/index.js +11 -0
  79. package/dist/esm/lib/recorded-chat/index.js.map +1 -0
  80. package/dist/esm/lib/recorded-chat/recordedChat.d.ts +20 -0
  81. package/dist/esm/lib/recorded-chat/recordedChat.js +240 -0
  82. package/dist/esm/lib/recorded-chat/recordedChat.js.map +1 -0
  83. package/dist/esm/lib/recorded-chat/types.d.ts +182 -0
  84. package/dist/esm/lib/recorded-chat/types.js +31 -0
  85. package/dist/esm/lib/recorded-chat/types.js.map +1 -0
  86. package/dist/esm/recorders/core/CheckInRecorder.d.ts +90 -0
  87. package/dist/esm/recorders/core/CheckInRecorder.js +109 -0
  88. package/dist/esm/recorders/core/CheckInRecorder.js.map +1 -0
  89. package/dist/events/dispatcher.js.map +1 -1
  90. package/dist/events/registry.js +6 -0
  91. package/dist/events/registry.js.map +1 -1
  92. package/dist/index.js +18 -1
  93. package/dist/index.js.map +1 -1
  94. package/dist/lib/context-bisect/index.js +6 -1
  95. package/dist/lib/context-bisect/index.js.map +1 -1
  96. package/dist/lib/context-bisect/localize.js +19 -3
  97. package/dist/lib/context-bisect/localize.js.map +1 -1
  98. package/dist/lib/context-bisect/rerun.js +160 -0
  99. package/dist/lib/context-bisect/rerun.js.map +1 -0
  100. package/dist/lib/context-bisect/types.js.map +1 -1
  101. package/dist/lib/influence-core/index.js +7 -1
  102. package/dist/lib/influence-core/index.js.map +1 -1
  103. package/dist/lib/influence-core/lexical.js +146 -0
  104. package/dist/lib/influence-core/lexical.js.map +1 -0
  105. package/dist/lib/influence-core/signals.js +8 -3
  106. package/dist/lib/influence-core/signals.js.map +1 -1
  107. package/dist/lib/influence-core/strategies.js +33 -0
  108. package/dist/lib/influence-core/strategies.js.map +1 -0
  109. package/dist/lib/recorded-chat/index.js +15 -0
  110. package/dist/lib/recorded-chat/index.js.map +1 -0
  111. package/dist/lib/recorded-chat/recordedChat.js +244 -0
  112. package/dist/lib/recorded-chat/recordedChat.js.map +1 -0
  113. package/dist/lib/recorded-chat/types.js +32 -0
  114. package/dist/lib/recorded-chat/types.js.map +1 -0
  115. package/dist/recorders/core/CheckInRecorder.js +114 -0
  116. package/dist/recorders/core/CheckInRecorder.js.map +1 -0
  117. package/dist/types/core/Agent.d.ts +6 -1
  118. package/dist/types/core/Agent.d.ts.map +1 -1
  119. package/dist/types/core/RunnerBase.d.ts.map +1 -1
  120. package/dist/types/core/agent/AgentBuilder.d.ts +27 -0
  121. package/dist/types/core/agent/AgentBuilder.d.ts.map +1 -1
  122. package/dist/types/core/agent/stages/toolCalls.d.ts +9 -0
  123. package/dist/types/core/agent/stages/toolCalls.d.ts.map +1 -1
  124. package/dist/types/core/agent/types.d.ts +2 -0
  125. package/dist/types/core/agent/types.d.ts.map +1 -1
  126. package/dist/types/core/checkin.d.ts +264 -0
  127. package/dist/types/core/checkin.d.ts.map +1 -0
  128. package/dist/types/core/pause.d.ts +24 -0
  129. package/dist/types/core/pause.d.ts.map +1 -1
  130. package/dist/types/core/tools.d.ts +19 -0
  131. package/dist/types/core/tools.d.ts.map +1 -1
  132. package/dist/types/debug.d.ts +3 -2
  133. package/dist/types/debug.d.ts.map +1 -1
  134. package/dist/types/events/dispatcher.d.ts +1 -1
  135. package/dist/types/events/dispatcher.d.ts.map +1 -1
  136. package/dist/types/events/payloads.d.ts +19 -0
  137. package/dist/types/events/payloads.d.ts.map +1 -1
  138. package/dist/types/events/registry.d.ts +7 -1
  139. package/dist/types/events/registry.d.ts.map +1 -1
  140. package/dist/types/index.d.ts +4 -1
  141. package/dist/types/index.d.ts.map +1 -1
  142. package/dist/types/lib/context-bisect/index.d.ts +1 -0
  143. package/dist/types/lib/context-bisect/index.d.ts.map +1 -1
  144. package/dist/types/lib/context-bisect/localize.d.ts +6 -2
  145. package/dist/types/lib/context-bisect/localize.d.ts.map +1 -1
  146. package/dist/types/lib/context-bisect/rerun.d.ts +124 -0
  147. package/dist/types/lib/context-bisect/rerun.d.ts.map +1 -0
  148. package/dist/types/lib/context-bisect/types.d.ts +8 -0
  149. package/dist/types/lib/context-bisect/types.d.ts.map +1 -1
  150. package/dist/types/lib/influence-core/index.d.ts +2 -0
  151. package/dist/types/lib/influence-core/index.d.ts.map +1 -1
  152. package/dist/types/lib/influence-core/lexical.d.ts +61 -0
  153. package/dist/types/lib/influence-core/lexical.d.ts.map +1 -0
  154. package/dist/types/lib/influence-core/signals.d.ts +5 -0
  155. package/dist/types/lib/influence-core/signals.d.ts.map +1 -1
  156. package/dist/types/lib/influence-core/strategies.d.ts +52 -0
  157. package/dist/types/lib/influence-core/strategies.d.ts.map +1 -0
  158. package/dist/types/lib/recorded-chat/index.d.ts +12 -0
  159. package/dist/types/lib/recorded-chat/index.d.ts.map +1 -0
  160. package/dist/types/lib/recorded-chat/recordedChat.d.ts +21 -0
  161. package/dist/types/lib/recorded-chat/recordedChat.d.ts.map +1 -0
  162. package/dist/types/lib/recorded-chat/types.d.ts +183 -0
  163. package/dist/types/lib/recorded-chat/types.d.ts.map +1 -0
  164. package/dist/types/recorders/core/CheckInRecorder.d.ts +91 -0
  165. package/dist/types/recorders/core/CheckInRecorder.d.ts.map +1 -0
  166. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"strategies.js","sourceRoot":"","sources":["../../../src/lib/influence-core/strategies.ts"],"names":[],"mappings":";;;AAmBA,6CAA8C;AAC9C,6CAAqD;AA2BrD,+EAA+E;AAClE,QAAA,yBAAyB,GAAsB,MAAM,CAAC,MAAM,CAAC;IACxE,IAAI,EAAE,oBAAoB;IAC1B,WAAW,EACT,sFAAsF;QACtF,uFAAuF;QACvF,4CAA4C;IAC9C,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,UAAU,CAAU,CAAC;IAClD,MAAM,EAAE,2BAAc;CACvB,CAAC,CAAC;AAEH,yFAAyF;AAC5E,QAAA,sBAAsB,GAAsB,MAAM,CAAC,MAAM,CAAC;IACrE,IAAI,EAAE,iBAAiB;IACvB,WAAW,EACT,qFAAqF;QACrF,qFAAqF;QACrF,uBAAuB;IACzB,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,EAAW,CAAC;IACxC,MAAM,EAAE,kCAAqB;CAC9B,CAAC,CAAC;AAEH,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,iCAAyB,EAAE,8BAAsB,CAAC,CAAC,CAAC;AAEpF;;;GAGG;AACH,SAAgB,uBAAuB;IACrC,OAAO,QAAQ,CAAC;AAClB,CAAC;AAFD,0DAEC"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ /**
3
+ * recorded-chat — the session-scoped turn recorder over the context-bisect
4
+ * product loop. Absorbs the three correctness traps every chat host re-writes
5
+ * (per-turn artifact freezing, byte-exact history threading, same-factory
6
+ * runner derivation) while COMPOSING with the 7.5 surface, not duplicating it.
7
+ *
8
+ * Exported from `agentfootprint/debug` (every symbol it composes with lives
9
+ * there). Named exports — `export *` is not the house style.
10
+ */
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.recordedChat = void 0;
13
+ var recordedChat_js_1 = require("./recordedChat.js");
14
+ Object.defineProperty(exports, "recordedChat", { enumerable: true, get: function () { return recordedChat_js_1.recordedChat; } });
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/recorded-chat/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAEH,qDAAiD;AAAxC,+GAAA,YAAY,OAAA"}
@@ -0,0 +1,244 @@
1
+ "use strict";
2
+ /**
3
+ * recordedChat — the session-scoped turn recorder.
4
+ *
5
+ * `recordedChat({ makeAgent })` returns a `RecordedChat`: `send()` runs one
6
+ * recorded turn through the consumer's agent factory and freezes that turn's
7
+ * evidence immediately; `reason(k)` / `rerunTurn(k)` / `fork(k)` are the
8
+ * per-turn transparency loop, composing with the existing context-bisect
9
+ * surface (`localizeContextBug`, `rerunWithoutSources`) rather than
10
+ * duplicating it. See `./types.ts` for the three traps this owns.
11
+ *
12
+ * Compose-don't-inherit house style: a module-private session class,
13
+ * factory-returned; no base classes.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.recordedChat = void 0;
17
+ const index_js_1 = require("../context-bisect/index.js");
18
+ const DEFAULT_HEADER = 'Recent conversation:';
19
+ const DEFAULT_USER_LABEL = 'User';
20
+ const DEFAULT_ASSISTANT_LABEL = 'Assistant';
21
+ /** Deterministic key for spec dedup — recursively sorts object keys. */
22
+ function canonicalKey(value) {
23
+ return JSON.stringify(value, (_key, val) => {
24
+ if (val !== null && typeof val === 'object' && !Array.isArray(val)) {
25
+ const sorted = {};
26
+ for (const k of Object.keys(val).sort()) {
27
+ sorted[k] = val[k];
28
+ }
29
+ return sorted;
30
+ }
31
+ return val;
32
+ });
33
+ }
34
+ /** Union of ablation specs, deduped by canonical JSON (order-preserving, first wins). */
35
+ function dedupeSpecs(specs) {
36
+ const seen = new Set();
37
+ const out = [];
38
+ for (const spec of specs) {
39
+ const key = canonicalKey(spec);
40
+ if (seen.has(key))
41
+ continue;
42
+ seen.add(key);
43
+ out.push(spec);
44
+ }
45
+ return out;
46
+ }
47
+ class RecordedChatSession {
48
+ makeAgentFn;
49
+ formatOpt;
50
+ header;
51
+ userLabel;
52
+ assistantLabel;
53
+ /** seed + one (user, assistant) pair per recorded turn. */
54
+ entries;
55
+ seedMessages;
56
+ removedSpecs;
57
+ turnsInternal = [];
58
+ reports = new Map();
59
+ /** result -> turnIndex, the in-process fork-provenance guard. */
60
+ rerunOwner = new WeakMap();
61
+ sending = false;
62
+ forkedFromValue = undefined;
63
+ constructor(options) {
64
+ this.makeAgentFn = options.makeAgent;
65
+ this.formatOpt = options.format;
66
+ this.header = options.format?.header ?? DEFAULT_HEADER;
67
+ this.userLabel = options.format?.userLabel ?? DEFAULT_USER_LABEL;
68
+ this.assistantLabel = options.format?.assistantLabel ?? DEFAULT_ASSISTANT_LABEL;
69
+ this.seedMessages = Object.freeze((options.seed ?? []).map((m) => ({ ...m })));
70
+ this.entries = [...this.seedMessages];
71
+ this.removedSpecs = Object.freeze([...(options.removed ?? [])]);
72
+ }
73
+ get turns() {
74
+ return this.turnsInternal;
75
+ }
76
+ get seed() {
77
+ return this.seedMessages;
78
+ }
79
+ get removed() {
80
+ return this.removedSpecs;
81
+ }
82
+ get forkedFrom() {
83
+ return this.forkedFromValue;
84
+ }
85
+ renderLine(message) {
86
+ const label = message.role === 'user' ? this.userLabel : this.assistantLabel;
87
+ return `${label}: ${message.text}`;
88
+ }
89
+ composeMessage(lines, userMessage) {
90
+ if (lines.length === 0)
91
+ return `${this.userLabel}: ${userMessage}`;
92
+ return `${this.header}\n${lines.join('\n')}\n\n${this.userLabel}: ${userMessage}`;
93
+ }
94
+ async send(userMessage, options) {
95
+ if (this.sending) {
96
+ throw new Error('recordedChat.send: a turn is already in flight — one turn at a time; await the previous send');
97
+ }
98
+ this.sending = true;
99
+ try {
100
+ // Compose the message ONCE, at record time, from the frozen transcript
101
+ // (trap 2 — byte-exact history is threaded HERE and replayed verbatim).
102
+ const transcriptBefore = Object.freeze(this.entries.map((m) => this.renderLine(m)));
103
+ const message = this.composeMessage(transcriptBefore, userMessage);
104
+ const agent = await this.makeAgentFn({ specs: this.removedSpecs, seed: 0 });
105
+ const events = [];
106
+ // Attach the tap BEFORE run() — listener-presence gating drops events
107
+ // otherwise (agentfootprint invariant). Unsubscribe in finally.
108
+ const off = agent.on('*', (event) => {
109
+ events.push(event);
110
+ });
111
+ let out;
112
+ try {
113
+ const raw = await agent.run({
114
+ message,
115
+ ...(options?.identity !== undefined ? { identity: options.identity } : {}),
116
+ });
117
+ if (typeof raw !== 'string') {
118
+ throw new Error("recordedChat.send: the run paused (askHuman/checkIn) — recorded chat turns don't " +
119
+ 'support pauses; drive pausing agents with agent.run() directly');
120
+ }
121
+ out = raw;
122
+ }
123
+ finally {
124
+ off();
125
+ }
126
+ // Capture IMMEDIATELY (trap 1) — getLastSnapshot() is last-run-only, but
127
+ // the per-turn agent is discarded here, so clobbering is impossible.
128
+ const snapshot = agent.getLastSnapshot();
129
+ if (snapshot === undefined) {
130
+ throw new Error('recordedChat.send: the run produced no snapshot — cannot record the turn');
131
+ }
132
+ const lastLlmCallId = (0, index_js_1.llmCallIdsFromEvents)(events).at(-1);
133
+ const index = this.turnsInternal.length;
134
+ this.entries.push({ role: 'user', text: userMessage }, { role: 'assistant', text: out });
135
+ const turn = Object.freeze({
136
+ index,
137
+ userMessage,
138
+ reply: out,
139
+ message,
140
+ transcriptBefore,
141
+ artifacts: Object.freeze({ snapshot, events: Object.freeze(events) }),
142
+ lastLlmCallId,
143
+ identity: options?.identity,
144
+ });
145
+ this.turnsInternal.push(turn);
146
+ return turn;
147
+ }
148
+ finally {
149
+ this.sending = false;
150
+ }
151
+ }
152
+ turn(k) {
153
+ const n = this.turnsInternal.length;
154
+ if (!Number.isInteger(k) || k < 0 || k >= n) {
155
+ const range = n === 0 ? '(no turns recorded yet)' : `0..${n - 1}`;
156
+ throw new RangeError(`recordedChat.turn: no turn ${k} — valid range is ${range}`);
157
+ }
158
+ return this.turnsInternal[k];
159
+ }
160
+ async reason(k, options) {
161
+ const turn = this.turn(k);
162
+ const { fresh, atStep, ...rest } = options;
163
+ const memo = this.reports.get(k);
164
+ if (memo !== undefined && fresh !== true)
165
+ return memo;
166
+ const resolvedAtStep = atStep ?? turn.lastLlmCallId;
167
+ const report = await (0, index_js_1.localizeContextBug)({
168
+ ...rest,
169
+ artifacts: turn.artifacts,
170
+ ...(resolvedAtStep !== undefined ? { atStep: resolvedAtStep } : {}),
171
+ });
172
+ this.reports.set(k, report);
173
+ return report;
174
+ }
175
+ async rerunTurn(k, options) {
176
+ const turn = this.turn(k);
177
+ const { report: reportOption, ...rerunRest } = options;
178
+ let report = reportOption ?? this.reports.get(k);
179
+ if (report === undefined) {
180
+ report = await this.reason(k, { embedder: options.embedder });
181
+ }
182
+ // Derive the runner from the SAME factory (traps 2 + 3): the frozen
183
+ // message bytes are replayed verbatim, and the session's persistent
184
+ // removals ALWAYS apply on top of the probe's specs (empty specs = the
185
+ // baseline probe, which replays the identical turn).
186
+ const runner = async (specs, run) => {
187
+ const agent = await this.makeAgentFn({
188
+ specs: [...this.removedSpecs, ...specs],
189
+ seed: run.seed,
190
+ });
191
+ const out = await agent.run({
192
+ message: turn.message,
193
+ ...(turn.identity !== undefined ? { identity: turn.identity } : {}),
194
+ });
195
+ if (typeof out !== 'string') {
196
+ throw new Error('recordedChat.rerunTurn: a probe run paused (askHuman/checkIn) — recorded chat re-runs ' +
197
+ "don't support pauses");
198
+ }
199
+ return out;
200
+ };
201
+ const result = await (0, index_js_1.rerunWithoutSources)({
202
+ ...rerunRest,
203
+ report,
204
+ runner,
205
+ originalAnswer: turn.reply,
206
+ });
207
+ this.rerunOwner.set(result, k);
208
+ return result;
209
+ }
210
+ fork(k, options) {
211
+ const turn = this.turn(k);
212
+ const fromRerun = options?.fromRerun;
213
+ if (fromRerun !== undefined && this.rerunOwner.get(fromRerun) !== k) {
214
+ throw new Error(`recordedChat.fork: that result was not produced by this session's rerunTurn for turn ${k} — ` +
215
+ 're-run this turn first, then fork');
216
+ }
217
+ const reply = fromRerun?.answer ?? turn.reply;
218
+ const cut = this.seedMessages.length + 2 * k;
219
+ const seed = [
220
+ ...this.entries.slice(0, cut).map((m) => ({ ...m })),
221
+ { role: 'user', text: turn.userMessage },
222
+ { role: 'assistant', text: reply },
223
+ ];
224
+ const removed = dedupeSpecs([...this.removedSpecs, ...(fromRerun?.removed ?? [])]);
225
+ const child = new RecordedChatSession({
226
+ makeAgent: this.makeAgentFn,
227
+ ...(this.formatOpt !== undefined ? { format: this.formatOpt } : {}),
228
+ seed,
229
+ removed,
230
+ });
231
+ child.forkedFromValue = { parent: this, turnIndex: k, viaRerun: fromRerun !== undefined };
232
+ return child;
233
+ }
234
+ }
235
+ /**
236
+ * Record a chat turn-by-turn so any reply can be explained, counterfactually
237
+ * re-run, and forked — without re-writing the correctness-critical glue every
238
+ * chat host gets subtly wrong. See the [recordedChat guide](doc:recorded-chat).
239
+ */
240
+ function recordedChat(options) {
241
+ return new RecordedChatSession(options);
242
+ }
243
+ exports.recordedChat = recordedChat;
244
+ //# sourceMappingURL=recordedChat.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recordedChat.js","sourceRoot":"","sources":["../../../src/lib/recorded-chat/recordedChat.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ /**
3
+ * recorded-chat types — the session-scoped turn recorder over the existing
4
+ * context-bisect product loop (localizeContextBug + rerunWithoutSources +
5
+ * removableSources).
6
+ *
7
+ * WHY THIS EXISTS: multi-turn chat on agentfootprint is a HOST convention —
8
+ * `AgentInput` has no history field, so hosts thread the transcript into the
9
+ * `message` string themselves. Every chat host that wanted per-turn
10
+ * transparency then re-wrote the same correctness-critical glue and got three
11
+ * things subtly wrong:
12
+ *
13
+ * 1. `agent.getLastSnapshot()` is last-run-only — a second `run()` clobbers
14
+ * it, so reasoning about turn K after turn K+1 ran silently attributes
15
+ * the wrong run.
16
+ * 2. History is a convention — the transcript preamble must be BYTE-identical
17
+ * between the recorded turn and its counterfactual re-run, or the re-run
18
+ * ablates a subtly different scenario without failing anything.
19
+ * 3. The `AblationRunner` duplicates turn construction — the re-run is only
20
+ * valid if the rebuilt turn matches the recorded one (same system, facts,
21
+ * preamble).
22
+ *
23
+ * `recordedChat({ makeAgent })` owns exactly those three: per-turn artifact
24
+ * freezing (1), byte-exact history threading (2), and deriving the turn-K
25
+ * runner from the SAME `makeAgent` that ran the turn (3). It COMPOSES with the
26
+ * 7.5 surface — `reason()` calls `localizeContextBug`, `rerunTurn()` delegates
27
+ * to `rerunWithoutSources` and returns its result UNMODIFIED (the honesty
28
+ * tiers are not hidden). Session registries, UI joins, comparators and
29
+ * persistence stay host-side by design (see the guide's "What stays yours").
30
+ */
31
+ Object.defineProperty(exports, "__esModule", { value: true });
32
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/lib/recorded-chat/types.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG"}
@@ -0,0 +1,114 @@
1
+ "use strict";
2
+ /**
3
+ * CheckInRecorder — the audit record for evidence-carrying human consent.
4
+ *
5
+ * Two exports, both for `agentfootprint.checkin.*`:
6
+ *
7
+ * • `checkInEventsBridge(...)` — an {@link EmitBridge} factory (same shape as
8
+ * `costRecorder` / `permissionRecorder`). Forwards `checkin.request` /
9
+ * `checkin.decision` `$emit`s to the EventDispatcher so
10
+ * `agent.on('agentfootprint.checkin.*')` fires. Attached ALWAYS by the
11
+ * Agent (zero-cost until a `checkIn`-declaring tool trips) — this is pure
12
+ * wiring, not a store.
13
+ *
14
+ * • `CheckInRecorder` — a compose-a-STORE recorder (no base class). Attach it
15
+ * with `agent.attach(new CheckInRecorder())` to CAPTURE every ask + decision
16
+ * as a queryable record — the "the decision is a record" pillar. It reads
17
+ * the same `$emit` stream (footprintjs calls `onEmit` for every emit), so it
18
+ * works whether or not any `agent.on(...)` listener is attached.
19
+ *
20
+ * Pattern: Factory over EmitBridge (wiring) + compose-a-store CombinedRecorder
21
+ * (capture). Telemetry rides the EMIT channel — never CommitBundle.
22
+ */
23
+ Object.defineProperty(exports, "__esModule", { value: true });
24
+ exports.CheckInRecorder = exports.checkInEventsBridge = void 0;
25
+ const EmitBridge_js_1 = require("./EmitBridge.js");
26
+ /**
27
+ * The always-on dispatcher bridge for `agentfootprint.checkin.*`. Wiring only:
28
+ * forwards the emits so typed `agent.on(...)` listeners fire.
29
+ */
30
+ function checkInEventsBridge(options) {
31
+ return new EmitBridge_js_1.EmitBridge({
32
+ id: options.id ?? 'agentfootprint.checkin-bridge',
33
+ prefix: 'agentfootprint.checkin.',
34
+ dispatcher: options.dispatcher,
35
+ getRunContext: options.getRunContext,
36
+ });
37
+ }
38
+ exports.checkInEventsBridge = checkInEventsBridge;
39
+ /**
40
+ * A queryable store of every check-in ask + decision. Attach once; read after
41
+ * the run (or between runs — it accumulates across `agent.run()` calls until
42
+ * you detach or make a fresh one).
43
+ *
44
+ * @example
45
+ * const checkins = new CheckInRecorder();
46
+ * agent.attach(checkins);
47
+ * await agent.run({ message });
48
+ * // ...human approves...
49
+ * await agent.resume(outcome.checkpoint, checkInApproved({ by: 'alice' }));
50
+ * checkins.getStats(); // { requested: 1, approved: 1, declined: 0, pending: 0 }
51
+ * checkins.getDecisions(); // [{ toolName, approved: true, by: 'alice', ... }]
52
+ */
53
+ class CheckInRecorder {
54
+ id;
55
+ requests = [];
56
+ decisions = [];
57
+ /**
58
+ * @param id Stable recorder id for idempotent attach/detach. Give distinct
59
+ * ids if you attach more than one to the same agent.
60
+ */
61
+ constructor(id = 'agentfootprint.checkin-recorder') {
62
+ this.id = id;
63
+ }
64
+ onEmit(event) {
65
+ if (event.name === 'agentfootprint.checkin.request') {
66
+ const p = event.payload;
67
+ this.requests.push({
68
+ toolName: p.toolName,
69
+ toolCallId: p.toolCallId,
70
+ iteration: p.iteration,
71
+ request: p.request,
72
+ });
73
+ }
74
+ else if (event.name === 'agentfootprint.checkin.decision') {
75
+ const p = event.payload;
76
+ this.decisions.push({
77
+ toolName: p.toolName,
78
+ toolCallId: p.toolCallId,
79
+ iteration: p.iteration,
80
+ approved: p.approved,
81
+ by: p.by,
82
+ ...(p.note !== undefined && { note: p.note }),
83
+ });
84
+ }
85
+ }
86
+ /** Every check-in ask captured, oldest first. */
87
+ getRequests() {
88
+ return this.requests;
89
+ }
90
+ /** Every human decision captured, oldest first. */
91
+ getDecisions() {
92
+ return this.decisions;
93
+ }
94
+ /** Roll-up counts. `pending` = asks still awaiting a decision. */
95
+ getStats() {
96
+ let approved = 0;
97
+ let declined = 0;
98
+ for (const d of this.decisions)
99
+ d.approved ? approved++ : declined++;
100
+ return {
101
+ requested: this.requests.length,
102
+ approved,
103
+ declined,
104
+ pending: this.requests.length - this.decisions.length,
105
+ };
106
+ }
107
+ /** Drop all captured records (e.g. between runs when reusing the recorder). */
108
+ reset() {
109
+ this.requests.length = 0;
110
+ this.decisions.length = 0;
111
+ }
112
+ }
113
+ exports.CheckInRecorder = CheckInRecorder;
114
+ //# sourceMappingURL=CheckInRecorder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CheckInRecorder.js","sourceRoot":"","sources":["../../../src/recorders/core/CheckInRecorder.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;;;AAGH,mDAAqE;AAQrE;;;GAGG;AACH,SAAgB,mBAAmB,CAAC,OAAqC;IACvE,OAAO,IAAI,0BAAU,CAAC;QACpB,EAAE,EAAE,OAAO,CAAC,EAAE,IAAI,+BAA+B;QACjD,MAAM,EAAE,yBAAyB;QACjC,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,aAAa,EAAE,OAAO,CAAC,aAAa;KACrC,CAAC,CAAC;AACL,CAAC;AAPD,kDAOC;AA8BD;;;;;;;;;;;;;GAaG;AACH,MAAa,eAAe;IACjB,EAAE,CAAS;IACH,QAAQ,GAA2B,EAAE,CAAC;IACtC,SAAS,GAA4B,EAAE,CAAC;IAEzD;;;OAGG;IACH,YAAY,EAAE,GAAG,iCAAiC;QAChD,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IACf,CAAC;IAED,MAAM,CAAC,KAAgB;QACrB,IAAI,KAAK,CAAC,IAAI,KAAK,gCAAgC,EAAE,CAAC;YACpD,MAAM,CAAC,GAAG,KAAK,CAAC,OAAgC,CAAC;YACjD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;gBACjB,QAAQ,EAAE,CAAC,CAAC,QAAQ;gBACpB,UAAU,EAAE,CAAC,CAAC,UAAU;gBACxB,SAAS,EAAE,CAAC,CAAC,SAAS;gBACtB,OAAO,EAAE,CAAC,CAAC,OAAoC;aAChD,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,KAAK,CAAC,IAAI,KAAK,iCAAiC,EAAE,CAAC;YAC5D,MAAM,CAAC,GAAG,KAAK,CAAC,OAAiC,CAAC;YAClD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;gBAClB,QAAQ,EAAE,CAAC,CAAC,QAAQ;gBACpB,UAAU,EAAE,CAAC,CAAC,UAAU;gBACxB,SAAS,EAAE,CAAC,CAAC,SAAS;gBACtB,QAAQ,EAAE,CAAC,CAAC,QAAQ;gBACpB,EAAE,EAAE,CAAC,CAAC,EAAE;gBACR,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;aAC9C,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,iDAAiD;IACjD,WAAW;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,mDAAmD;IACnD,YAAY;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,kEAAkE;IAClE,QAAQ;QACN,IAAI,QAAQ,GAAG,CAAC,CAAC;QACjB,IAAI,QAAQ,GAAG,CAAC,CAAC;QACjB,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,SAAS;YAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QACrE,OAAO;YACL,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM;YAC/B,QAAQ;YACR,QAAQ;YACR,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM;SACtD,CAAC;IACJ,CAAC;IAED,+EAA+E;IAC/E,KAAK;QACH,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;QACzB,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;IAC5B,CAAC;CACF;AA/DD,0CA+DC"}
@@ -17,6 +17,7 @@ import { type CombinedNarrativeEntry, type FlowchartCheckpoint, type ObserverDra
17
17
  import type { CachePolicy, CacheStrategy } from '../cache/types.js';
18
18
  import type { ReliabilityConfig } from '../reliability/types.js';
19
19
  import { type RunnerPauseOutcome } from './pause.js';
20
+ import { type CheckInBuilderOptions } from './checkin.js';
20
21
  import type { MemoryDefinition } from '../memory/define.types.js';
21
22
  import type { Injection, InjectionContext } from '../lib/injection-engine/types.js';
22
23
  import type { EntryScoring } from '../lib/injection-engine/skillGraph.js';
@@ -105,6 +106,10 @@ export declare class Agent extends RunnerBase<AgentInput, AgentOutput> {
105
106
  private readonly costBudget?;
106
107
  private readonly permissionChecker?;
107
108
  private readonly toolArgValidation?;
109
+ /** Resolved check-in config (evidence-carrying human consent). Always
110
+ * present — defaults to `standard` evidence + the lexical scorer, so a tool
111
+ * that declares `checkIn` works even without a `.checkIn()` builder call. */
112
+ private readonly checkInConfig;
108
113
  /** Snapshot read-tracking policy (#18/#14) — forwarded to the internal
109
114
  * executor. Agent default is `'summary'` (cheap markers), NOT
110
115
  * footprintjs's `'full'`. See AgentOptions.readTracking. */
@@ -211,7 +216,7 @@ export declare class Agent extends RunnerBase<AgentInput, AgentOutput> {
211
216
  readonly appName: string;
212
217
  readonly commentaryTemplates: Readonly<Record<string, string>>;
213
218
  readonly thinkingTemplates: Readonly<Record<string, string>>;
214
- }, injections?: readonly Injection[], memories?: readonly MemoryDefinition[], outputSchemaParser?: OutputSchemaParser<unknown>, toolProvider?: ToolProvider, systemPromptCachePolicy?: CachePolicy, cachingDisabled?: boolean, cacheStrategy?: CacheStrategy, outputFallbackCfg?: ResolvedOutputFallback<unknown>, reliabilityConfig?: ReliabilityConfig, thinkingHandlerValue?: ThinkingHandler | null, thinkingBudgetValue?: number, skillGraphNextSkill?: (ctx: InjectionContext) => string | undefined, skillGraphReachable?: (currentSkillId?: string) => readonly string[], skillGraphScoreEntries?: (ctx: InjectionContext, signal?: AbortSignal) => Promise<EntryScoring>);
219
+ }, injections?: readonly Injection[], memories?: readonly MemoryDefinition[], outputSchemaParser?: OutputSchemaParser<unknown>, toolProvider?: ToolProvider, systemPromptCachePolicy?: CachePolicy, cachingDisabled?: boolean, cacheStrategy?: CacheStrategy, outputFallbackCfg?: ResolvedOutputFallback<unknown>, reliabilityConfig?: ReliabilityConfig, thinkingHandlerValue?: ThinkingHandler | null, thinkingBudgetValue?: number, skillGraphNextSkill?: (ctx: InjectionContext) => string | undefined, skillGraphReachable?: (currentSkillId?: string) => readonly string[], skillGraphScoreEntries?: (ctx: InjectionContext, signal?: AbortSignal) => Promise<EntryScoring>, checkInOptions?: CheckInBuilderOptions);
215
220
  static create(opts: AgentOptions): AgentBuilder;
216
221
  /**
217
222
  * Cache policy for the base system prompt. Read by the CacheDecision
@@ -1 +1 @@
1
- {"version":3,"file":"Agent.d.ts","sourceRoot":"","sources":["../../../src/core/Agent.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAGL,KAAK,sBAAsB,EAI3B,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EAExB,KAAK,UAAU,EACf,KAAK,eAAe,EACrB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAOjE,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAuBrD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AASlE,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAE1E,OAAO,EAAuB,KAAK,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AACvF,OAAO,EAKL,KAAK,kBAAkB,EAExB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAwC,KAAK,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAClG,OAAO,EAAE,UAAU,EAAa,MAAM,iBAAiB,CAAC;AACxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAM/D,OAAO,KAAK,EACV,UAAU,EACV,YAAY,EACZ,WAAW,EAEX,uBAAuB,EACxB,MAAM,kBAAkB,CAAC;AAS1B,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAGvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,CAAC;AAMxB,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,uBAAuB,EAAE,CAAC;AAE/E;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,eAAgB,SAAQ,UAAU;IACjD,8FAA8F;IAC9F,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,uIAAuI;IACvI,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAOD,qBAAa,KAAM,SAAQ,UAAU,CAAC,UAAU,EAAE,WAAW,CAAC;IAC5D,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAc;IACvC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;IAC3C;;;;;OAKG;IACH,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAc;IACtD;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAU;IAC/C;;;;;;OAMG;IACH,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgB;IAC9C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA+B;IACxD;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAuB;IAClD;;mEAE+D;IAC/D,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAgD;IACrF;;4DAEwD;IACxD,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAiD;IACtF;;+EAE2E;IAC3E,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAGb;IAC3B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAe;IAC7C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAoB;IACvD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAwB;IAC3D;;iEAE6D;IAC7D,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAmB;IAChD;;;;qCAIiC;IACjC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAmB;IAChD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAqB;IACzD,qEAAqE;IACrE,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAA+B;IAC/D;;;4DAGwD;IACxD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAwB;IACzD;wDACoD;IACpD,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAC,CAA0B;IAEnE;;;;;;OAMG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,mBAAmB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC/D,QAAQ,CAAC,iBAAiB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAE7D,OAAO,CAAC,iBAAiB,CAIvB;IAcF;;;;;OAKG;IACH,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA8B;IAEvD;;;;;OAKG;IACH,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAA8B;IAElE;;;;;OAKG;IACH,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAkC;IAErE;;uEAEmE;IACnE,OAAO,CAAC,oBAAoB,CAAC,CAAwB;IAErD;;;;;;;;OAQG;IACH,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAe;IAErD;;;;;OAKG;IACH,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAoB;IAEvD;;;;;;OAMG;IACH,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAkB;IACnD;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAS;IACzC;;;sBAGkB;IAClB,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAqD;IACzF;qDACiD;IACjD,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAA4C;IAClF;;;;4BAIwB;IACxB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA4C;gBAGpE,IAAI,EAAE,YAAY,EAClB,iBAAiB,EAAE,MAAM,EACzB,QAAQ,EAAE,SAAS,iBAAiB,EAAE,EACtC,KAAK,EAAE;QACL,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,mBAAmB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QAC/D,QAAQ,CAAC,iBAAiB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;KAC9D,EACD,UAAU,GAAE,SAAS,SAAS,EAAO,EACrC,QAAQ,GAAE,SAAS,gBAAgB,EAAO,EAC1C,kBAAkB,CAAC,EAAE,kBAAkB,CAAC,OAAO,CAAC,EAChD,YAAY,CAAC,EAAE,YAAY,EAC3B,uBAAuB,GAAE,WAAsB,EAC/C,eAAe,UAAQ,EACvB,aAAa,CAAC,EAAE,aAAa,EAC7B,iBAAiB,CAAC,EAAE,sBAAsB,CAAC,OAAO,CAAC,EACnD,iBAAiB,CAAC,EAAE,iBAAiB,EACrC,oBAAoB,CAAC,EAAE,eAAe,GAAG,IAAI,EAC7C,mBAAmB,CAAC,EAAE,MAAM,EAC5B,mBAAmB,CAAC,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,MAAM,GAAG,SAAS,EACnE,mBAAmB,CAAC,EAAE,CAAC,cAAc,CAAC,EAAE,MAAM,KAAK,SAAS,MAAM,EAAE,EACpE,sBAAsB,CAAC,EAAE,CAAC,GAAG,EAAE,gBAAgB,EAAE,MAAM,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,YAAY,CAAC;IAuGjG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,YAAY,GAAG,YAAY;IAI/C;;;;;OAKG;IACH,0BAA0B,IAAI,WAAW;IAIzC;;;;;;;;;OASG;IACH,eAAe,IAAI,eAAe,GAAG,SAAS;IAI9C;;;;;;OAMG;IACH,uBAAuB,IAAI,SAAS,sBAAsB,EAAE;IAI5D;;;;;;OAMG;cAMgB,kBAAkB,IAAI,OAAO,iBAAiB,EAAE,eAAe,GAAG,SAAS;IAI9F;;;;;;;;6BAQyB;cACN,oBAAoB,IAAI,OAAO,iBAAiB,EAAE,aAAa;IAelF;;;;;;;;;;OAUG;IACH,WAAW,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC;IAUxC;;;;;;;;;OASG;IACG,gBAAgB,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAoC5D;;;;;;;;;;OAUG;IACG,QAAQ,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,CAAC,CAAC;IAiB/E,GAAG,CACP,KAAK,EAAE,UAAU,EACjB,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,WAAW,GAAG,kBAAkB,CAAC;IA6D5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2CG;IACG,aAAa,CACjB,UAAU,EAAE,kBAAkB,GAAG,OAAO,EACxC,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,WAAW,GAAG,kBAAkB,CAAC;IAQ5C;;;;;;OAMG;IACH,OAAO,CAAC,wBAAwB;IAyB1B,MAAM,CACV,UAAU,EAAE,mBAAmB,EAC/B,KAAK,CAAC,EAAE,OAAO,EACf,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,WAAW,GAAG,kBAAkB,CAAC;IAW5C,OAAO,CAAC,cAAc;IA8FtB;;;;;;;;;;;;;;;;;;;OAmBG;IACH,cAAc,CAAC,IAAI,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAK3E,OAAO,CAAC,cAAc;IA8FtB,OAAO,CAAC,UAAU;CA2KnB"}
1
+ {"version":3,"file":"Agent.d.ts","sourceRoot":"","sources":["../../../src/core/Agent.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"RunnerBase.d.ts","sourceRoot":"","sources":["../../../src/core/RunnerBase.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,gBAAgB,EAChB,SAAS,EACT,iBAAiB,EACjB,mBAAmB,EACnB,UAAU,EACX,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,KAAK,EACV,aAAa,EACb,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,oBAAoB,EACrB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAGV,uBAAuB,EACxB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAgBpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAI3D;;GAEG;AACH,wBAAgB,SAAS,IAAI,MAAM,CAElC;AAED,8BAAsB,UAAU,CAAC,GAAG,GAAG,OAAO,EAAE,IAAI,GAAG,OAAO,CAAE,YAAW,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC;IAC1F,SAAS,CAAC,QAAQ,CAAC,UAAU,kBAAyB;IACtD,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,gBAAgB,EAAE,CAAM;IAE9D;;;;;OAKG;IACH,SAAS,CAAC,YAAY,EAAE,iBAAiB,GAAG,SAAS,CAAC;IAEtD;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,OAAO,CAAC,KAAK,CAAwB;IAErC;;;;;;;;;;;;;OAaG;IACH,eAAe,IAAI,UAAU,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC,GAAG,SAAS;IAI3E;;;;;;;;;;OAUG;IACH,WAAW,IAAI,UAAU,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC,GAAG,SAAS;IAMvE;;;;;;;;;;;;;;OAcG;IACH,OAAO,IAAI,SAAS;IASpB;;;;;;;;;;OAUG;IACH,OAAO,CAAC,YAAY,CAA0C;IAE9D;;;;;;;;;;;;;OAaG;IACH,UAAU,CAAC,CAAC,GAAG,OAAO,KAAK,CAAC,GAAG,SAAS;IA4BxC;;;;;OAKG;IACH,SAAS,CAAC,kBAAkB,IAAI,OAAO,iBAAiB,EAAE,eAAe,GAAG,SAAS;IAIrF;;;;;OAKG;IACH,cAAc,CAAC,CAAC,GAAG,OAAO,EAAE,QAAQ,EAAE,OAAO,iBAAiB,EAAE,eAAe,GAAG,CAAC,GAAG,SAAS;IAM/F;;;;;OAKG;IACH,SAAS,CAAC,oBAAoB,IAAI,OAAO,iBAAiB,EAAE,aAAa,GAAG,SAAS;IAIrF;;;;;;;;;;;;;;;OAeG;IACH,SAAS,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,SAAS,GAAG,IAAI;IASnD;;;OAGG;IACH,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,GAAG,kBAAkB,CAAC;IAElF;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,CACb,UAAU,EAAE,mBAAmB,EAC/B,KAAK,CAAC,EAAE,OAAO,EACf,OAAO,CAAC,EAAE,UAAU,GACnB,OAAO,CAAC,IAAI,GAAG,kBAAkB,CAAC;IAIrC;;;;;;;;OAQG;IACH,SAAS,CAAC,WAAW,CACnB,QAAQ,EAAE,iBAAiB,EAC3B,MAAM,EAAE,OAAO,GACd,kBAAkB,GAAG,SAAS;IAiBjC;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAuBxB;;;OAGG;IACH,SAAS,CAAC,eAAe,CAAC,UAAU,EAAE,mBAAmB,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAsBhF,EAAE,CAAC,CAAC,SAAS,uBAAuB,EAClC,IAAI,EAAE,CAAC,EACP,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,EAC1B,OAAO,CAAC,EAAE,aAAa,GACtB,WAAW;IACd,EAAE,CAAC,IAAI,EAAE,oBAAoB,EAAE,QAAQ,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,WAAW;IAkBhG,GAAG,CAAC,CAAC,SAAS,uBAAuB,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,IAAI;IACjF,GAAG,CAAC,IAAI,EAAE,oBAAoB,EAAE,QAAQ,EAAE,gBAAgB,GAAG,IAAI;IAUjE,IAAI,CAAC,CAAC,SAAS,uBAAuB,EACpC,IAAI,EAAE,CAAC,EACP,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,EAC1B,OAAO,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC,GACpC,WAAW;IACd,IAAI,CACF,IAAI,EAAE,oBAAoB,EAC1B,QAAQ,EAAE,gBAAgB,EAC1B,OAAO,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC,GACpC,WAAW;IAed;;;;;;;;;;;OAWG;IACH,kBAAkB,IAAI,IAAI;IAI1B;;;;;OAKG;IACH,aAAa,CAAC,IAAI,CAAC,EAAE,uBAAuB,GAAG,oBAAoB,GAAG,MAAM;IAM5E;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,MAAM,CAAC,QAAQ,EAAE,gBAAgB,GAAG,WAAW;IAU/C,QAAQ,CAAC,MAAM,EAAE,eAAe,CA0B9B;IAIF;;;;;;;OAOG;IACH,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAa1D;;;OAGG;IACH,SAAS,CAAC,WAAW,IAAI,SAAS;IAYlC;;;OAGG;IACH,SAAS,CAAC,eAAe,IAAI,SAAS,MAAM,EAAE;IAI9C;;;;OAIG;IACH,SAAS,CAAC,aAAa,IAAI,eAAe;CAG3C"}
1
+ {"version":3,"file":"RunnerBase.d.ts","sourceRoot":"","sources":["../../../src/core/RunnerBase.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,7 @@ import type { MemoryDefinition } from '../../memory/define.types.js';
15
15
  import type { ReliabilityConfig } from '../../reliability/types.js';
16
16
  import type { ThinkingHandler } from '../../thinking/types.js';
17
17
  import type { Tool } from '../tools.js';
18
+ import type { CheckInBuilderOptions } from '../checkin.js';
18
19
  import type { ToolProvider } from '../../tool-providers/types.js';
19
20
  import { type SelfExplainOptions } from '../../lib/trace-toolpack/selfExplain.js';
20
21
  import { Agent } from '../Agent.js';
@@ -119,6 +120,7 @@ export declare class AgentBuilder {
119
120
  */
120
121
  private thinkingBudgetValue?;
121
122
  private selfExplainConfig?;
123
+ private checkInConfig?;
122
124
  constructor(opts: AgentOptions);
123
125
  /**
124
126
  * Set the base system prompt.
@@ -560,6 +562,31 @@ export declare class AgentBuilder {
560
562
  * @example
561
563
  * .selfExplain({ delegate: { provider: anthropic(), model: 'claude-haiku-4-5' } })
562
564
  */
565
+ /**
566
+ * Configure the evidence pack that rides a check-in ask. A tool DEMANDS a
567
+ * check-in by declaring `checkIn: 'always'` or a `(args, ctx) => boolean`
568
+ * predicate ({@link defineTool}); this method controls WHAT the human sees
569
+ * when it trips. Optional — a tool with `checkIn` works without it (default:
570
+ * `'standard'` evidence + the deterministic lexical scorer, zero LLM calls).
571
+ *
572
+ * - `evidence: 'standard'` (default) — the full pack: `willDo` (plain-words
573
+ * claim), `read` (what context the run consumed), `drivers` (which context
574
+ * drove the pick, ranked), `trail` (compact run-so-far summary).
575
+ * - `evidence: 'minimal'` — just `willDo` (zero cost).
576
+ * - `evidence: <assembler>` — bring your own {@link CheckInAssembler}.
577
+ * - `scorer` — swap the `drivers` ranker (default is zero-LLM lexical; pass
578
+ * an embedding-backed one wrapping `explainChoice` for semantic ranking).
579
+ *
580
+ * @example
581
+ * Agent.create({ provider, model })
582
+ * .tool(defineTool({ name: 'issue_refund', description: 'Refund a charge',
583
+ * inputSchema: { type: 'object', properties: { amount: { type: 'number' } } },
584
+ * checkIn: (args) => (args.amount as number) > 1000, // ask only for big refunds
585
+ * execute: async ({ amount }) => `refunded ${amount}` }))
586
+ * .checkIn({ evidence: 'standard' })
587
+ * .build();
588
+ */
589
+ checkIn(opts?: CheckInBuilderOptions): this;
563
590
  selfExplain(opts?: SelfExplainOptions): this;
564
591
  build(): Agent;
565
592
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AgentBuilder.d.ts","sourceRoot":"","sources":["../../../../src/core/agent/AgentBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAEL,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACxB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAGL,KAAK,qBAAqB,EAE3B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,WAAW,EAAiB,MAAM,sBAAsB,CAAC;AACvE,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AACvF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0CAA0C,CAAC;AAE7E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,KAAK,EAAE,IAAI,EAAqB,MAAM,aAAa,CAAC;AAC3D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAGlE,OAAO,EAIL,KAAK,kBAAkB,EACxB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C;;;GAGG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAe;IACpC,OAAO,CAAC,iBAAiB,CAAM;IAC/B;;;;OAIG;IACH,OAAO,CAAC,uBAAuB,CAAyB;IACxD;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB,CAAS;IACrC;;;;;OAKG;IACH,OAAO,CAAC,qBAAqB,CAAC,CAAgB;IAC9C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA2B;IACpD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAmB;IACjD;;mCAE+B;IAC/B,OAAO,CAAC,mBAAmB,CAAC,CAAgD;IAC5E;;2DAEuD;IACvD,OAAO,CAAC,mBAAmB,CAAC,CAAiD;IAC7E;;+EAE2E;IAC3E,OAAO,CAAC,sBAAsB,CAAC,CAGJ;IAC3B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA0B;IACrD;;;OAGG;IACH,OAAO,CAAC,kBAAkB,CAAC,CAA8B;IAEzD;2EACuE;IACvE,OAAO,CAAC,iBAAiB,CAAC,CAAkC;IAC5D;;;;;OAKG;IACH,OAAO,CAAC,eAAe,CAAC,CAAe;IACvC;;;;OAIG;IACH,OAAO,CAAC,qBAAqB,CAAC,CAAS;IACvC;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAgD;IAM7E,OAAO,CAAC,YAAY,CAAa;IACjC,OAAO,CAAC,mBAAmB,CAAwC;IACnE,OAAO,CAAC,iBAAiB,CAAwC;IACjE;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB,CAAC,CAAoB;IAE9C;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,oBAAoB,CAAC,CAAyB;IACtD;;;;;OAKG;IACH,OAAO,CAAC,mBAAmB,CAAC,CAAS;IACrC,OAAO,CAAC,iBAAiB,CAAC,CAAqB;gBAEnC,IAAI,EAAE,YAAY;IAS9B;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,IAAI;IAQxE,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,IAAI;IAStD;;;;;OAKG;IACH,KAAK,CAAC,KAAK,EAAE,aAAa,CAAC,IAAI,CAAC,GAAG,IAAI;IAKvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiCG;IACH,YAAY,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI;IAU1C;;;;;;;OAOG;IACH,aAAa,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAQ9B;;;;;;;;;OASG;IACH,QAAQ,CAAC,GAAG,EAAE,OAAO,aAAa,EAAE,gBAAgB,GAAG,IAAI;IAK3D;;;;;OAKG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAK3B;;;;;;;;;OASG;IACH,mBAAmB,CAAC,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,IAAI;IAKtE;;;;;;OAMG;IACH,iBAAiB,CAAC,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,IAAI;IAWpE;;;;OAIG;IACH,SAAS,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAQrC;;;;OAIG;IACH,KAAK,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAIjC;;;;;;;;;;OAUG;IACH,MAAM,CAAC,QAAQ,EAAE;QAAE,IAAI,IAAI,SAAS,SAAS,EAAE,CAAA;KAAE,GAAG,IAAI;IAKxD;;;;;;;;;;;;;OAaG;IACH,UAAU,CAAC,KAAK,EAAE;QAChB,MAAM,EAAE,SAAS,SAAS,EAAE,CAAC;QAC7B,SAAS,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,MAAM,GAAG,SAAS,CAAC;QACzD,eAAe,CAAC,EAAE,CAAC,cAAc,CAAC,EAAE,MAAM,KAAK,SAAS,MAAM,EAAE,CAAC;QACjE,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,gBAAgB,EAAE,MAAM,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC;KACvF,GAAG,IAAI;IAiBR;;;OAGG;IACH,QAAQ,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAIpC;;;;OAIG;IACH,WAAW,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAIvC;;;;;;OAMG;IACH,YAAY,CAAC,UAAU,EAAE,aAAa,CAAC,SAAS,CAAC,GAAG,IAAI;IAKxD;;;;;OAKG;IACH,IAAI,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAIhC;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,MAAM,CAAC,UAAU,EAAE,gBAAgB,GAAG,IAAI;IAW1C;;;;;;;;;;;;;;;;OAgBG;IACH,GAAG,CAAC,UAAU,EAAE,gBAAgB,GAAG,IAAI;IAIvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BG;IACH,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,mBAAmB,GAAG,IAAI;IAqBhF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiCG;IACH,cAAc,CAAC,CAAC,EAAE,OAAO,EAAE,qBAAqB,CAAC,CAAC,CAAC,GAAG,IAAI;IAwB1D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAmDG;IACH,WAAW,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI;IAU5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiCG;IACH,eAAe,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI,GAAG,IAAI;IAUtD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAsCG;IACH,QAAQ,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAiBxC;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,WAAW,CAAC,IAAI,GAAE,kBAAuB,GAAG,IAAI;IAmBhD,KAAK,IAAI,KAAK;CAiFf"}
1
+ {"version":3,"file":"AgentBuilder.d.ts","sourceRoot":"","sources":["../../../../src/core/agent/AgentBuilder.ts"],"names":[],"mappings":"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"}
@@ -28,6 +28,7 @@ import type { PausableHandler, TypedScope } from 'footprintjs';
28
28
  import type { PermissionChecker } from '../../../adapters/types.js';
29
29
  import type { ToolProvider } from '../../../tool-providers/types.js';
30
30
  import type { CredentialProvider } from '../../../identity/types.js';
31
+ import { type ResolvedCheckInConfig } from '../../checkin.js';
31
32
  import type { ProviderToolCache } from '../../slots/buildToolsSlot.js';
32
33
  import type { Tool } from '../../tools.js';
33
34
  import { type ToolArgValidationMode } from '../toolArgsValidation.js';
@@ -69,6 +70,14 @@ export interface ToolCallsHandlerDeps {
69
70
  * Undefined → no gate (plain read_skill agents append as before).
70
71
  */
71
72
  readonly allowedSkillIds?: (currentSkillId?: string) => readonly string[];
73
+ /**
74
+ * Check-in config (evidence-carrying human consent). Resolved from the Agent
75
+ * builder (`.checkIn({...})`) — defaults to `standard` evidence + the
76
+ * deterministic lexical scorer, so a tool that declares `checkIn` works even
77
+ * without `.checkIn()`. Undefined only when the handler is built outside an
78
+ * Agent (no check-in). The gate fires ONLY for tools that declared `checkIn`.
79
+ */
80
+ readonly checkIn?: ResolvedCheckInConfig;
72
81
  }
73
82
  /**
74
83
  * Build the pausable tool-call handler for the agent's chart.
@@ -1 +1 @@
1
- {"version":3,"file":"toolCalls.d.ts","sourceRoot":"","sources":["../../../../../src/core/agent/stages/toolCalls.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,KAAK,EAAc,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAIhF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,KAAK,EAAc,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAGjF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAGL,KAAK,qBAAqB,EAC3B,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,WAAW,oBAAoB;IACnC;;4DAEwD;IACxD,QAAQ,CAAC,cAAc,EAAE,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACnD;;qDAEiD;IACjD,QAAQ,CAAC,oBAAoB,CAAC,EAAE,YAAY,CAAC;IAC7C;;;;;OAKG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IAC/C;;4DAEwD;IACxD,QAAQ,CAAC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IAC/C;;kEAE8D;IAC9D,QAAQ,CAAC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACjD;;;8EAG0E;IAC1E,QAAQ,CAAC,iBAAiB,CAAC,EAAE,qBAAqB,CAAC;IACnD;;;;;;OAMG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,cAAc,CAAC,EAAE,MAAM,KAAK,SAAS,MAAM,EAAE,CAAC;CAC3E;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,oBAAoB,GACzB,eAAe,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAmbzC"}
1
+ {"version":3,"file":"toolCalls.d.ts","sourceRoot":"","sources":["../../../../../src/core/agent/stages/toolCalls.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,KAAK,EAAc,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAIhF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,KAAK,EAAc,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAGjF,OAAO,EAIL,KAAK,qBAAqB,EAG3B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAE3C,OAAO,EAGL,KAAK,qBAAqB,EAC3B,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,WAAW,oBAAoB;IACnC;;4DAEwD;IACxD,QAAQ,CAAC,cAAc,EAAE,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACnD;;qDAEiD;IACjD,QAAQ,CAAC,oBAAoB,CAAC,EAAE,YAAY,CAAC;IAC7C;;;;;OAKG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IAC/C;;4DAEwD;IACxD,QAAQ,CAAC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IAC/C;;kEAE8D;IAC9D,QAAQ,CAAC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACjD;;;8EAG0E;IAC1E,QAAQ,CAAC,iBAAiB,CAAC,EAAE,qBAAqB,CAAC;IACnD;;;;;;OAMG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,cAAc,CAAC,EAAE,MAAM,KAAK,SAAS,MAAM,EAAE,CAAC;IAC1E;;;;;;OAMG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,qBAAqB,CAAC;CAC1C;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,oBAAoB,GACzB,eAAe,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CA0pBzC"}
@@ -287,6 +287,8 @@ export interface AgentState {
287
287
  pausedToolCallId: string;
288
288
  pausedToolName: string;
289
289
  pausedToolStartMs: number;
290
+ pausedCheckIn?: boolean;
291
+ pausedCheckInArgs?: Readonly<Record<string, unknown>>;
290
292
  cumTokensInput: number;
291
293
  cumTokensOutput: number;
292
294
  cumEstimatedUsd: number;