agentfootprint 9.123.0 → 9.124.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 (212) hide show
  1. package/AGENTS.md +1 -1
  2. package/CAPABILITIES.md +1 -0
  3. package/ai-instructions/claude-code/SKILL.md +1 -1
  4. package/dist/conventions.js +10 -0
  5. package/dist/conventions.js.map +1 -1
  6. package/dist/core/Agent.js +99 -11
  7. package/dist/core/Agent.js.map +1 -1
  8. package/dist/core/agent/AgentBuilder.js +131 -1
  9. package/dist/core/agent/AgentBuilder.js.map +1 -1
  10. package/dist/core/agent/arguments/serve.js +31 -7
  11. package/dist/core/agent/arguments/serve.js.map +1 -1
  12. package/dist/core/agent/assessment/assess.js +61 -1
  13. package/dist/core/agent/assessment/assess.js.map +1 -1
  14. package/dist/core/agent/assessment/compose.js +285 -0
  15. package/dist/core/agent/assessment/compose.js.map +1 -0
  16. package/dist/core/agent/assessment/reasons.js +16 -6
  17. package/dist/core/agent/assessment/reasons.js.map +1 -1
  18. package/dist/core/agent/assessment/stage.js +125 -0
  19. package/dist/core/agent/assessment/stage.js.map +1 -0
  20. package/dist/core/agent/assessment/witness.js +100 -0
  21. package/dist/core/agent/assessment/witness.js.map +1 -0
  22. package/dist/core/agent/buildAgentChart.js +7 -19
  23. package/dist/core/agent/buildAgentChart.js.map +1 -1
  24. package/dist/core/agent/buildDynamicAgentChart.js +5 -19
  25. package/dist/core/agent/buildDynamicAgentChart.js.map +1 -1
  26. package/dist/core/agent/coverage/answer.js +74 -12
  27. package/dist/core/agent/coverage/answer.js.map +1 -1
  28. package/dist/core/agent/coverage/index.js +3 -1
  29. package/dist/core/agent/coverage/index.js.map +1 -1
  30. package/dist/core/agent/findings/judge.js +1 -1
  31. package/dist/core/agent/findings/ledger.js +5 -0
  32. package/dist/core/agent/findings/ledger.js.map +1 -1
  33. package/dist/core/agent/findings/types.js.map +1 -1
  34. package/dist/core/agent/honesty/armed.js +17 -4
  35. package/dist/core/agent/honesty/armed.js.map +1 -1
  36. package/dist/core/agent/honesty/mounts.js +98 -1
  37. package/dist/core/agent/honesty/mounts.js.map +1 -1
  38. package/dist/core/agent/stages/answerCoverage.js +63 -13
  39. package/dist/core/agent/stages/answerCoverage.js.map +1 -1
  40. package/dist/core/agent/stages/prepareFinal.js +112 -8
  41. package/dist/core/agent/stages/prepareFinal.js.map +1 -1
  42. package/dist/core/agent/stages/route.js +108 -44
  43. package/dist/core/agent/stages/route.js.map +1 -1
  44. package/dist/core/agent/stages/seed.js +45 -3
  45. package/dist/core/agent/stages/seed.js.map +1 -1
  46. package/dist/core/agent/stages/toolCalls.js +9 -6
  47. package/dist/core/agent/stages/toolCalls.js.map +1 -1
  48. package/dist/core/runCheckpoint.js +36 -4
  49. package/dist/core/runCheckpoint.js.map +1 -1
  50. package/dist/esm/conventions.d.ts +6 -0
  51. package/dist/esm/conventions.js +10 -0
  52. package/dist/esm/conventions.js.map +1 -1
  53. package/dist/esm/core/Agent.d.ts +30 -6
  54. package/dist/esm/core/Agent.js +99 -11
  55. package/dist/esm/core/Agent.js.map +1 -1
  56. package/dist/esm/core/agent/AgentBuilder.d.ts +60 -0
  57. package/dist/esm/core/agent/AgentBuilder.js +131 -1
  58. package/dist/esm/core/agent/AgentBuilder.js.map +1 -1
  59. package/dist/esm/core/agent/arguments/serve.d.ts +27 -2
  60. package/dist/esm/core/agent/arguments/serve.js +34 -3
  61. package/dist/esm/core/agent/arguments/serve.js.map +1 -1
  62. package/dist/esm/core/agent/assessment/assess.js +61 -1
  63. package/dist/esm/core/agent/assessment/assess.js.map +1 -1
  64. package/dist/esm/core/agent/assessment/compose.d.ts +127 -0
  65. package/dist/esm/core/agent/assessment/compose.js +277 -0
  66. package/dist/esm/core/agent/assessment/compose.js.map +1 -0
  67. package/dist/esm/core/agent/assessment/reasons.d.ts +10 -6
  68. package/dist/esm/core/agent/assessment/reasons.js +16 -6
  69. package/dist/esm/core/agent/assessment/reasons.js.map +1 -1
  70. package/dist/esm/core/agent/assessment/stage.d.ts +57 -0
  71. package/dist/esm/core/agent/assessment/stage.js +98 -0
  72. package/dist/esm/core/agent/assessment/stage.js.map +1 -0
  73. package/dist/esm/core/agent/assessment/types.d.ts +11 -4
  74. package/dist/esm/core/agent/assessment/witness.d.ts +128 -0
  75. package/dist/esm/core/agent/assessment/witness.js +94 -0
  76. package/dist/esm/core/agent/assessment/witness.js.map +1 -0
  77. package/dist/esm/core/agent/buildAgentChart.d.ts +11 -1
  78. package/dist/esm/core/agent/buildAgentChart.js +9 -21
  79. package/dist/esm/core/agent/buildAgentChart.js.map +1 -1
  80. package/dist/esm/core/agent/buildDynamicAgentChart.js +7 -21
  81. package/dist/esm/core/agent/buildDynamicAgentChart.js.map +1 -1
  82. package/dist/esm/core/agent/coverage/answer.d.ts +56 -5
  83. package/dist/esm/core/agent/coverage/answer.js +71 -11
  84. package/dist/esm/core/agent/coverage/answer.js.map +1 -1
  85. package/dist/esm/core/agent/coverage/index.d.ts +1 -1
  86. package/dist/esm/core/agent/coverage/index.js +1 -1
  87. package/dist/esm/core/agent/coverage/index.js.map +1 -1
  88. package/dist/esm/core/agent/findings/judge.d.ts +1 -1
  89. package/dist/esm/core/agent/findings/judge.js +1 -1
  90. package/dist/esm/core/agent/findings/ledger.js +5 -0
  91. package/dist/esm/core/agent/findings/ledger.js.map +1 -1
  92. package/dist/esm/core/agent/findings/types.d.ts +9 -8
  93. package/dist/esm/core/agent/findings/types.js.map +1 -1
  94. package/dist/esm/core/agent/honesty/armed.d.ts +20 -3
  95. package/dist/esm/core/agent/honesty/armed.js +17 -4
  96. package/dist/esm/core/agent/honesty/armed.js.map +1 -1
  97. package/dist/esm/core/agent/honesty/mounts.d.ts +73 -1
  98. package/dist/esm/core/agent/honesty/mounts.js +95 -0
  99. package/dist/esm/core/agent/honesty/mounts.js.map +1 -1
  100. package/dist/esm/core/agent/stages/answerCoverage.d.ts +35 -11
  101. package/dist/esm/core/agent/stages/answerCoverage.js +41 -14
  102. package/dist/esm/core/agent/stages/answerCoverage.js.map +1 -1
  103. package/dist/esm/core/agent/stages/prepareFinal.d.ts +49 -0
  104. package/dist/esm/core/agent/stages/prepareFinal.js +109 -7
  105. package/dist/esm/core/agent/stages/prepareFinal.js.map +1 -1
  106. package/dist/esm/core/agent/stages/route.d.ts +19 -1
  107. package/dist/esm/core/agent/stages/route.js +108 -44
  108. package/dist/esm/core/agent/stages/route.js.map +1 -1
  109. package/dist/esm/core/agent/stages/seed.d.ts +7 -0
  110. package/dist/esm/core/agent/stages/seed.js +45 -3
  111. package/dist/esm/core/agent/stages/seed.js.map +1 -1
  112. package/dist/esm/core/agent/stages/toolCalls.d.ts +8 -0
  113. package/dist/esm/core/agent/stages/toolCalls.js +9 -6
  114. package/dist/esm/core/agent/stages/toolCalls.js.map +1 -1
  115. package/dist/esm/core/agent/types.d.ts +40 -5
  116. package/dist/esm/core/runCheckpoint.d.ts +28 -1
  117. package/dist/esm/core/runCheckpoint.js +36 -4
  118. package/dist/esm/core/runCheckpoint.js.map +1 -1
  119. package/dist/esm/events/dispatcher.d.ts +1 -1
  120. package/dist/esm/events/dispatcher.js.map +1 -1
  121. package/dist/esm/events/payloads.d.ts +77 -0
  122. package/dist/esm/events/registry.d.ts +5 -1
  123. package/dist/esm/events/registry.js +5 -0
  124. package/dist/esm/events/registry.js.map +1 -1
  125. package/dist/esm/index.d.ts +2 -1
  126. package/dist/esm/index.js.map +1 -1
  127. package/dist/esm/lib/answer-account/account.js +159 -24
  128. package/dist/esm/lib/answer-account/account.js.map +1 -1
  129. package/dist/esm/lib/answer-account/facts/howSure.js +1 -0
  130. package/dist/esm/lib/answer-account/facts/howSure.js.map +1 -1
  131. package/dist/esm/lib/answer-account/shown.js +5 -1
  132. package/dist/esm/lib/answer-account/shown.js.map +1 -1
  133. package/dist/esm/lib/answer-account/templates.d.ts +2 -1
  134. package/dist/esm/lib/answer-account/templates.js +3 -1
  135. package/dist/esm/lib/answer-account/templates.js.map +1 -1
  136. package/dist/esm/lib/answer-account/types.d.ts +31 -2
  137. package/dist/events/dispatcher.js.map +1 -1
  138. package/dist/events/registry.js +5 -0
  139. package/dist/events/registry.js.map +1 -1
  140. package/dist/index.js.map +1 -1
  141. package/dist/lib/answer-account/account.js +157 -22
  142. package/dist/lib/answer-account/account.js.map +1 -1
  143. package/dist/lib/answer-account/facts/howSure.js +1 -0
  144. package/dist/lib/answer-account/facts/howSure.js.map +1 -1
  145. package/dist/lib/answer-account/shown.js +5 -1
  146. package/dist/lib/answer-account/shown.js.map +1 -1
  147. package/dist/lib/answer-account/templates.js +3 -1
  148. package/dist/lib/answer-account/templates.js.map +1 -1
  149. package/dist/types/conventions.d.ts +6 -0
  150. package/dist/types/conventions.d.ts.map +1 -1
  151. package/dist/types/core/Agent.d.ts +30 -6
  152. package/dist/types/core/Agent.d.ts.map +1 -1
  153. package/dist/types/core/agent/AgentBuilder.d.ts +60 -0
  154. package/dist/types/core/agent/AgentBuilder.d.ts.map +1 -1
  155. package/dist/types/core/agent/arguments/serve.d.ts +27 -2
  156. package/dist/types/core/agent/arguments/serve.d.ts.map +1 -1
  157. package/dist/types/core/agent/assessment/assess.d.ts.map +1 -1
  158. package/dist/types/core/agent/assessment/compose.d.ts +128 -0
  159. package/dist/types/core/agent/assessment/compose.d.ts.map +1 -0
  160. package/dist/types/core/agent/assessment/reasons.d.ts +10 -6
  161. package/dist/types/core/agent/assessment/reasons.d.ts.map +1 -1
  162. package/dist/types/core/agent/assessment/stage.d.ts +58 -0
  163. package/dist/types/core/agent/assessment/stage.d.ts.map +1 -0
  164. package/dist/types/core/agent/assessment/types.d.ts +11 -4
  165. package/dist/types/core/agent/assessment/types.d.ts.map +1 -1
  166. package/dist/types/core/agent/assessment/witness.d.ts +129 -0
  167. package/dist/types/core/agent/assessment/witness.d.ts.map +1 -0
  168. package/dist/types/core/agent/buildAgentChart.d.ts +11 -1
  169. package/dist/types/core/agent/buildAgentChart.d.ts.map +1 -1
  170. package/dist/types/core/agent/buildDynamicAgentChart.d.ts.map +1 -1
  171. package/dist/types/core/agent/coverage/answer.d.ts +56 -5
  172. package/dist/types/core/agent/coverage/answer.d.ts.map +1 -1
  173. package/dist/types/core/agent/coverage/index.d.ts +1 -1
  174. package/dist/types/core/agent/coverage/index.d.ts.map +1 -1
  175. package/dist/types/core/agent/findings/judge.d.ts +1 -1
  176. package/dist/types/core/agent/findings/ledger.d.ts.map +1 -1
  177. package/dist/types/core/agent/findings/types.d.ts +9 -8
  178. package/dist/types/core/agent/findings/types.d.ts.map +1 -1
  179. package/dist/types/core/agent/honesty/armed.d.ts +20 -3
  180. package/dist/types/core/agent/honesty/armed.d.ts.map +1 -1
  181. package/dist/types/core/agent/honesty/mounts.d.ts +73 -1
  182. package/dist/types/core/agent/honesty/mounts.d.ts.map +1 -1
  183. package/dist/types/core/agent/stages/answerCoverage.d.ts +35 -11
  184. package/dist/types/core/agent/stages/answerCoverage.d.ts.map +1 -1
  185. package/dist/types/core/agent/stages/prepareFinal.d.ts +49 -0
  186. package/dist/types/core/agent/stages/prepareFinal.d.ts.map +1 -1
  187. package/dist/types/core/agent/stages/route.d.ts +19 -1
  188. package/dist/types/core/agent/stages/route.d.ts.map +1 -1
  189. package/dist/types/core/agent/stages/seed.d.ts +7 -0
  190. package/dist/types/core/agent/stages/seed.d.ts.map +1 -1
  191. package/dist/types/core/agent/stages/toolCalls.d.ts +8 -0
  192. package/dist/types/core/agent/stages/toolCalls.d.ts.map +1 -1
  193. package/dist/types/core/agent/types.d.ts +40 -5
  194. package/dist/types/core/agent/types.d.ts.map +1 -1
  195. package/dist/types/core/runCheckpoint.d.ts +28 -1
  196. package/dist/types/core/runCheckpoint.d.ts.map +1 -1
  197. package/dist/types/events/dispatcher.d.ts +1 -1
  198. package/dist/types/events/dispatcher.d.ts.map +1 -1
  199. package/dist/types/events/payloads.d.ts +77 -0
  200. package/dist/types/events/payloads.d.ts.map +1 -1
  201. package/dist/types/events/registry.d.ts +5 -1
  202. package/dist/types/events/registry.d.ts.map +1 -1
  203. package/dist/types/index.d.ts +2 -1
  204. package/dist/types/index.d.ts.map +1 -1
  205. package/dist/types/lib/answer-account/account.d.ts.map +1 -1
  206. package/dist/types/lib/answer-account/facts/howSure.d.ts.map +1 -1
  207. package/dist/types/lib/answer-account/shown.d.ts.map +1 -1
  208. package/dist/types/lib/answer-account/templates.d.ts +2 -1
  209. package/dist/types/lib/answer-account/templates.d.ts.map +1 -1
  210. package/dist/types/lib/answer-account/types.d.ts +31 -2
  211. package/dist/types/lib/answer-account/types.d.ts.map +1 -1
  212. package/package.json +1 -1
package/AGENTS.md CHANGED
@@ -275,7 +275,7 @@ const agent = Agent.create({ provider, model })
275
275
  agent.on('agentfootprint.context.evaluated', (e) => console.log(e.payload.activeIds));
276
276
  ```
277
277
 
278
- **122 typed events across 27 domains.** Two subscription shapes and no third:
278
+ **123 typed events across 28 domains.** Two subscription shapes and no third:
279
279
  `'*'` (every event) and `'agentfootprint.<domain>.*'` (one domain). **`'agentfootprint.*'`
280
280
  is not a pattern** — TypeScript rejects it, and at runtime it would match nothing.
281
281
 
package/CAPABILITIES.md CHANGED
@@ -72,6 +72,7 @@ not in this table, search `src/index.ts` for the nearest noun before writing cod
72
72
  | a tool whose default NOBODY CHOSE (a log search that quietly defaults to 2 hours) — the LIBRARY fills a value the call left out from the tool's declared rule, never the tool; files one `argument` row per ruled argument per call on the findings ledger (`source: 'default'` filled or echoed — `proposed` tells them apart — or `'model'`), stamped with the conversation `turn`; tells the model in a past-tense note (only for a value the call ran with) behind a `toolChars` boundary every reader of a result reads through, so the note grounds nothing and hides no empty result; the answer's standing reads "not sure — assumed"; an "Assumed" block under `.limitsTravelWithTheAnswer()`; carried over MCP `_meta`; a ruled tool on an agent without the layer is REFUSED before any middleware asks, never run unruled; `{ ask }` is the batch ask (next row) | `Tool.askOrAssume` + `Tool.period` (`ToolPeriod`) + `ArgumentRow` + `agentfootprint.findings.argument` + `AgentBuilder.inputsLayer()` + `allow(value, why, { from })` | `src/core/agent/arguments/` | 9.122.0 |
73
73
  | a value the PERSON must give (a look-back period, a site, a row limit) that the model left out — the library asks ONCE for everything the batch needs, before anything in it runs, through the typed ask `requestInput` uses (`isInputPause`, `agent.resume(cp, { requestId, values })`, `standingAgent`): one field per distinct (tool, argument), positional ids, the author's question and choices, `context.agentfootprint` naming each field's calls, one period asked once across spellings (`24h` ↔ `-24h`); the answer re-checked against the property's own schema and asked again (at most three times) when it does not fit; `asked` then `answered` rows; the standing reads "ask" while it waits (`argument-asked`); the resume adds no model call; one human question per resume — a call refused a second pause in the batch that asked keeps the person's answer, so proposed again it runs with it and pauses for its own step (the person is asked once); the resume event carries the reply's shape, never a value | `askOrAssume: { x: { ask, choices? } }` + `argumentAskContext` + `ArgumentRow` (`asked`, `answered`, `free`) | `src/core/agent/arguments/` | 9.123.0 |
74
74
  | how far an answer STANDS — known · consistent with the record · not sure (with the reasons) · ask · not assessed — folded from the run's COMMITTED record (never from the model's confidence, never from events, never "known" from silence: only a passed enforce answer check supports it); each reason names the row it rests on, `checked` counts what ran, this turn only; a pause of any kind reads `ask` from the recording alone, a run with no answer has no standing; one emptiness reader shared with the answer account (`coverage/emptiness.ts`: a `coverage()` envelope read through, a described result counted, an undeclared empty rowset said aloud) | `assessAnswer` + `AnswerAssessment` (on the observe door), `agent.assessment()` | `src/core/agent/assessment/` | 9.120.0 |
75
+ | the answer's standing INSIDE the run, the moment the answer exists — the same fold as `agent.assessment()`, run as the first stage of the final branch and served as DATA (`turn_end` and one event: the value, its word, the reason kinds, the checks that ran — never a value or a quote); the evidence gate's clean pass and an answer given before a skill's declared steps finished committed as witness rows (so a clean gate reads "consistent", never "known"); an opt-in line appended to a PROSE answer (refused beside `.answerValidation()` and `.outputSchema()`); the in-run standing equals the fold of the saved recording; a typed answer's limits carry the values a tool's rule assumed | `AgentBuilder.answerLayer({ standingLine? })` + `turn_end.answerAssessment` + `agentfootprint.answer.assessed` + `GroundedRow` / `StepsUnfinishedRow` + `AnswerCoverage.assumed` | `src/core/agent/assessment/` | 9.124.0 |
75
76
  | serving that explanation to a browser without the recording: one opt-in wire op returns the account plus allow-listed "show me" leaves, owner-only on the `artifact-get` path, lane-free, cached and single-flight, a stated size ceiling, and a swept record answering "not available" even when cached | `standingAgent({ answerAccounts })` + `{ op: 'answer-account', ref }` + `answerAccountPointerKey` | `src/hosting/answerAccounts.ts` | 9.116.0 |
76
77
  | bounding what one session can ask of the artifact door at once: `artifact-head`, `artifact-get` and `answer-account` counted together per session, after the ownership check, refused 429 by name while every other session is served | `standingAgent({ artifactOpsPerSession })` + `ArtifactOpsBusyError` | `src/hosting/standingAgent.ts` | 9.116.0 |
77
78
  | minting one of those shapes from a tool that is NOT JavaScript — the canonical note sentences and reserved marker keys as DATA, so a Python/Go/Rust sidecar reads a file instead of regex-scraping `dist/esm` (which a consumer really did) | `canonical-notes.json` at the package root + the `./canonical-notes.json` exports entry, GENERATED from the built barrel by `scripts/gen-canonical-notes.mjs` | `scripts/gen-canonical-notes.mjs` | 9.70.0 |
@@ -275,7 +275,7 @@ const agent = Agent.create({ provider, model })
275
275
  agent.on('agentfootprint.context.evaluated', (e) => console.log(e.payload.activeIds));
276
276
  ```
277
277
 
278
- **122 typed events across 27 domains.** Two subscription shapes and no third:
278
+ **123 typed events across 28 domains.** Two subscription shapes and no third:
279
279
  `'*'` (every event) and `'agentfootprint.<domain>.*'` (one domain). **`'agentfootprint.*'`
280
280
  is not a pattern** — TypeScript rejects it, and at runtime it would match nothing.
281
281
 
@@ -224,6 +224,12 @@ exports.STAGE_IDS = {
224
224
  RECORD_ARGUMENTS: 'record-arguments',
225
225
  /** … and the fills and refusals ToolCalls applies. */
226
226
  RESOLVE_ARGUMENTS: 'resolve-arguments',
227
+ /** The answer layer (honesty layer 4) — mounted as the FIRST stage of the
228
+ * final branch ONLY when armed (`.answerLayer()`): the answer's standing,
229
+ * folded from the committed record, filed as data for PrepareFinal and
230
+ * announced once (`agentfootprint.answer.assessed`). Absent on every other
231
+ * agent — the final branch starts at PrepareFinal, byte-identical. */
232
+ ASSESS_ANSWER: 'assess-answer',
227
233
  };
228
234
  // ─── Type guards ─────────────────────────────────────────────────────
229
235
  /** True when a subflow id corresponds to one of the 3 context slots. */
@@ -310,6 +316,10 @@ const PLUMBING_LOCAL_IDS = new Set([
310
316
  exports.STAGE_IDS.VERIFY_ARGUMENTS,
311
317
  exports.STAGE_IDS.RECORD_ARGUMENTS,
312
318
  exports.STAGE_IDS.RESOLVE_ARGUMENTS,
319
+ // The answer layer (honesty layer 4): its verdict rides `turn_end` and
320
+ // `agentfootprint.answer.assessed`; the stage that folds it is mechanism —
321
+ // the answer itself is PrepareFinal's milestone, one stage later.
322
+ exports.STAGE_IDS.ASSESS_ANSWER,
313
323
  ]);
314
324
  /** Neutral chart boundaries — entry/exit, rendered normally (not muted). */
315
325
  const BOUNDARY_LOCAL_IDS = new Set([
@@ -1 +1 @@
1
- {"version":3,"file":"conventions.js","sourceRoot":"","sources":["../src/conventions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"conventions.js","sourceRoot":"","sources":["../src/conventions.ts"],"names":[],"mappings":"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"}
@@ -168,6 +168,7 @@ const toolResolver_js_1 = require("./agent/stages/toolResolver.js");
168
168
  const route_js_2 = require("./agent/stages/route.js");
169
169
  const declare_js_1 = require("./agent/arguments/declare.js");
170
170
  const armed_js_1 = require("./agent/honesty/armed.js");
171
+ const mounts_js_1 = require("./agent/honesty/mounts.js");
171
172
  const toolResultCap_js_1 = require("./agent/toolResultCap.js");
172
173
  const buildAgentChart_js_1 = require("./agent/buildAgentChart.js");
173
174
  const buildDynamicAgentChart_js_1 = require("./agent/buildDynamicAgentChart.js");
@@ -339,6 +340,12 @@ class Agent extends RunnerBase_js_1.RunnerBase {
339
340
  * `.inputsLayer()` was set. Gates the findings event bridge and the
340
341
  * widened ledger restore. */
341
342
  inputsLayerArmed = false;
343
+ /** `.answerLayer()` (honesty layer 4): the answer's standing folded at the
344
+ * head of the final branch and served as data; `standingLine` — also one
345
+ * line appended to a prose answer. Undefined on every agent that did not
346
+ * ask, and that undefined is the whole zero-cost guarantee: no stage, no
347
+ * witness row, no stamp, no event, no bridge. */
348
+ answerLayerOption;
342
349
  /** Tool choice by classifier (9.105.0, `.toolChoice()`): the classifier,
343
350
  * the serve dial and the app's own doors. Threaded to the tools slot (the
344
351
  * pick and the narrowing), to call-llm (`toolChoice: true`, the outcome
@@ -758,6 +765,11 @@ class Agent extends RunnerBase_js_1.RunnerBase {
758
765
  this.findingsOptions = opts.findings;
759
766
  if (opts.inputsLayer === true)
760
767
  this.inputsLayerOption = true;
768
+ if (opts.answerLayer === true)
769
+ this.answerLayerOption = {};
770
+ else if (typeof opts.answerLayer === 'object' && opts.answerLayer !== null) {
771
+ this.answerLayerOption = opts.answerLayer.standingLine === true ? { standingLine: true } : {};
772
+ }
761
773
  if (opts.argumentAskContext !== undefined)
762
774
  this.argumentAskContext = opts.argumentAskContext;
763
775
  if (opts.toolChoice !== undefined)
@@ -1582,7 +1594,10 @@ class Agent extends RunnerBase_js_1.RunnerBase {
1582
1594
  this.continuityCursorOf(this.getLastSnapshot()?.sharedState), this.evidenceRecoveryOf(this.getLastSnapshot()?.sharedState),
1583
1595
  // …and the findings ledger (9.101.0), from the same snapshot reader
1584
1596
  // `checkpoint()` uses — one reader, two carriers.
1585
- this.findingsLedgerOf(this.getLastSnapshot()?.sharedState));
1597
+ this.findingsLedgerOf(this.getLastSnapshot()?.sharedState),
1598
+ // …and the turn the failing run was on (honesty layers), so the
1599
+ // retry is stamped the same turn — one reader, two carriers.
1600
+ this.turnNumberOf(this.getLastSnapshot()?.sharedState));
1586
1601
  throw new runCheckpoint_js_1.RunCheckpointError(cause, checkpoint);
1587
1602
  }
1588
1603
  throw cause;
@@ -2086,6 +2101,7 @@ class Agent extends RunnerBase_js_1.RunnerBase {
2086
2101
  const skillCursor = this.continuityCursorOf(state);
2087
2102
  const evidenceRecovery = this.evidenceRecoveryOf(state);
2088
2103
  const findingsLedger = this.findingsLedgerOf(state);
2104
+ const turnNumber = this.turnNumberOf(state);
2089
2105
  return {
2090
2106
  version: 1,
2091
2107
  runId: this.currentRunContext.runId,
@@ -2108,6 +2124,9 @@ class Agent extends RunnerBase_js_1.RunnerBase {
2108
2124
  // The model's standings (9.101.0) — absent unless the run recorded any,
2109
2125
  // by the `folded` rule: an optional key, never a format change.
2110
2126
  ...(findingsLedger !== undefined && { findingsLedger }),
2127
+ // The turn this history ends on (honesty layers) — absent unless a
2128
+ // layer is armed, so every other checkpoint keeps its byte shape.
2129
+ ...(turnNumber !== undefined && { turnNumber }),
2111
2130
  };
2112
2131
  }
2113
2132
  /** Both checkpoint doors keep the repair budget separately from conversation text. */
@@ -2175,6 +2194,22 @@ class Agent extends RunnerBase_js_1.RunnerBase {
2175
2194
  return undefined;
2176
2195
  return structuredClone(ledger);
2177
2196
  }
2197
+ /**
2198
+ * The turn a checkpoint's history ends on — `findingsLedgerOf`'s twin, one
2199
+ * reader for `checkpoint()` and the crash carrier. Only while an honesty
2200
+ * layer is armed (the run constant `honestyLayers`, read from the same
2201
+ * snapshot): that is when every ledger row carries its `turn` and the next
2202
+ * run's stamp must continue from it (`AgentRunCheckpoint.turnNumber`).
2203
+ * `undefined` otherwise, so the key stays absent.
2204
+ *
2205
+ * @internal
2206
+ */
2207
+ turnNumberOf(state) {
2208
+ if (state?.honestyLayers === undefined)
2209
+ return undefined;
2210
+ const turn = state.turnNumber;
2211
+ return typeof turn === 'number' && Number.isSafeInteger(turn) && turn >= 1 ? turn : undefined;
2212
+ }
2178
2213
  /**
2179
2214
  * The two owner facts every conversation carrier stamps — who the run was
2180
2215
  * for, and which agent ran it (9.2.0).
@@ -2221,6 +2256,9 @@ class Agent extends RunnerBase_js_1.RunnerBase {
2221
2256
  this.pendingResumeHistory = {
2222
2257
  history: cp.history,
2223
2258
  appendsUserTurn,
2259
+ // The turn the stored history ends on (honesty layers) — seed continues
2260
+ // the turn stamp from it only while a layer is armed.
2261
+ ...(cp.turnNumber !== undefined && { turn: cp.turnNumber }),
2224
2262
  };
2225
2263
  // The folded spans beside it. A conversation stored before 8.2 has none,
2226
2264
  // and `undefined` is the right answer there — it means "this conversation
@@ -2824,6 +2862,17 @@ class Agent extends RunnerBase_js_1.RunnerBase {
2824
2862
  getRunContext: getRunCtx,
2825
2863
  }));
2826
2864
  }
2865
+ // Same wiring for `agentfootprint.answer.*` (honesty layer 4) — the one
2866
+ // event the answer layer's stage fires per answer. Attached only under
2867
+ // `.answerLayer()`, shipped WITH the domain (the credential.* lesson).
2868
+ if (this.answerLayerOption !== undefined) {
2869
+ attachObserver(new EmitBridge_js_1.EmitBridge({
2870
+ id: 'agentfootprint.answer-bridge',
2871
+ prefix: 'agentfootprint.answer.',
2872
+ dispatcher,
2873
+ getRunContext: getRunCtx,
2874
+ }));
2875
+ }
2827
2876
  // Same wiring for `agentfootprint.tool_choice.*` (9.105.0) — the three
2828
2877
  // events `recordToolChoice` files on scope. Attached only under
2829
2878
  // `.toolChoice()`, for the same reason.
@@ -3238,10 +3287,17 @@ class Agent extends RunnerBase_js_1.RunnerBase {
3238
3287
  * `getLastSnapshot().sharedState.answerCoverage`, one value three ways. The
3239
3288
  * answer string, and so `runTyped()`, is exactly the model's.
3240
3289
  *
3241
- * `undefined` when the run's tools declared no limits, on a prose answer
3242
- * (the block is in the answer string there; `sharedState.coverageDeclared`
3243
- * holds the raw rows either way), and before the first run. Detached from
3244
- * the execution record, so a caller may keep or mutate it.
3290
+ * On an agent whose inputs layer is armed (a tool declares `askOrAssume`),
3291
+ * `assumed` lists the values a tool's rule filled this turn — the same rows,
3292
+ * read the same way, that a prose answer's "Assumed" block prints — each in
3293
+ * the tool's own argument view (`'REDACTED'` with `hidden` when that view
3294
+ * hides it).
3295
+ *
3296
+ * `undefined` when the run's tools declared no limits and nothing was
3297
+ * assumed, on a prose answer (the block is in the answer string there;
3298
+ * `sharedState.coverageDeclared` holds the raw rows either way), and before
3299
+ * the first run. Detached from the execution record, so a caller may keep
3300
+ * or mutate it.
3245
3301
  *
3246
3302
  * @example
3247
3303
  * ```ts
@@ -3762,10 +3818,14 @@ class Agent extends RunnerBase_js_1.RunnerBase {
3762
3818
  const ruledTools = new Map([...registryByName.entries()].filter(([, tool]) => tool.askOrAssume !== undefined || tool.period !== undefined));
3763
3819
  const inputsArmed = ruledTools.size > 0 || this.inputsLayerOption === true;
3764
3820
  this.inputsLayerArmed = inputsArmed;
3765
- if (inputsArmed) {
3766
- if (ruledTools.size > 0)
3767
- seededRuledTools = ruledTools;
3768
- seededHonestyLayers = (0, armed_js_1.honestyLayersOf)(true);
3821
+ if (inputsArmed && ruledTools.size > 0)
3822
+ seededRuledTools = ruledTools;
3823
+ // ── The answer layer (honesty layer 4) — armed by its option alone ─────
3824
+ const answerArmed = this.answerLayerOption !== undefined;
3825
+ // The run constant names every armed layer; the restore is wired whenever
3826
+ // one is (adopted Q6) — still value-conditional inside seed.
3827
+ if (inputsArmed || answerArmed) {
3828
+ seededHonestyLayers = (0, armed_js_1.honestyLayersOf)({ inputs: inputsArmed, answer: answerArmed });
3769
3829
  ledgerRestoreArmed = true;
3770
3830
  }
3771
3831
  // The gate's admissible set, for the record (9.50.0): declared hops from
@@ -4193,7 +4253,11 @@ class Agent extends RunnerBase_js_1.RunnerBase {
4193
4253
  answeredValues: route_js_2.answeredValuesOf,
4194
4254
  }),
4195
4255
  }
4196
- : undefined);
4256
+ : undefined,
4257
+ // THE ANSWER LAYER (honesty layer 4) — the same value-conditional
4258
+ // trailing positional: the judges file the answer's witness rows, and
4259
+ // every row this decider files carries the turn stamp.
4260
+ answerArmed ? true : undefined);
4197
4261
  const routeDecider = this.answerValidationConfig === undefined
4198
4262
  ? baseRouteDecider
4199
4263
  : (0, answerValidation_js_1.withAnswerValidation)(baseRouteDecider, this.answerValidationConfig, this.outputSchemaParser, artifactStore, () => this.consentOutstanding.size > 0);
@@ -4205,7 +4269,13 @@ class Agent extends RunnerBase_js_1.RunnerBase {
4205
4269
  // `turn_end`. A prose answer keeps the block; an agent that asked for
4206
4270
  // neither is handed the decider it always had.
4207
4271
  const limitsAsData = this.limitsTravelWithTheAnswerValue && this.outputSchemaParser !== undefined;
4208
- const terminalRouteDecider = limitsAsData ? (0, answerCoverage_js_1.withAnswerCoverage)(routeDecider) : routeDecider;
4272
+ // With the inputs layer armed, the typed answer's limits carry this
4273
+ // turn's assumed values too — the same rows the prose "Assumed" block
4274
+ // prints (`withAnswerCoverage`'s second argument); a rewrite by a
4275
+ // before-tool chain is read only when the agent has one.
4276
+ const terminalRouteDecider = limitsAsData
4277
+ ? (0, answerCoverage_js_1.withAnswerCoverage)(routeDecider, inputsArmed ? { rewrites: this.toolMiddleware.length > 0 } : undefined)
4278
+ : routeDecider;
4209
4279
  // toolCallsHandler extracted to ./agent/stages/toolCalls.ts (v2.11.2).
4210
4280
  const toolCallsHandler = (0, toolCalls_js_1.buildToolCallsHandler)({
4211
4281
  registryByName,
@@ -4224,6 +4294,9 @@ class Agent extends RunnerBase_js_1.RunnerBase {
4224
4294
  // The inputs layer (honesty layer 2) — the fills, the refusals and the
4225
4295
  // note; absent → a ruled tool's call is refused (fail closed).
4226
4296
  ...(inputsArmed && { inputsLayer: true }),
4297
+ // The answer layer (honesty layer 4) — only the turn stamp on the rows
4298
+ // this handler files (adopted Q6).
4299
+ ...(answerArmed && { answerLayer: true }),
4227
4300
  // …and the host's own context for the layer's batch ask (step 4),
4228
4301
  // value-conditional inside the arm.
4229
4302
  ...(inputsArmed &&
@@ -4447,6 +4520,21 @@ class Agent extends RunnerBase_js_1.RunnerBase {
4447
4520
  ...(this.toolMiddleware.length > 0 && { rewrites: true }),
4448
4521
  },
4449
4522
  }),
4523
+ // The answer layer (honesty layer 4): its stage heads the final branch
4524
+ // in both builders through one helper, reading only the committed keys
4525
+ // this agent's arms can write; absent → the branch is untouched.
4526
+ ...(this.answerLayerOption !== undefined && {
4527
+ answerLayer: {
4528
+ reads: (0, mounts_js_1.answerFoldReads)({
4529
+ tools: canCallTools,
4530
+ evidenceGate: this.evidenceGate !== undefined,
4531
+ answerValidation: this.answerValidationConfig !== undefined,
4532
+ inputs: inputsArmed,
4533
+ toolMiddleware: this.toolMiddleware.length > 0,
4534
+ }),
4535
+ ...(this.answerLayerOption.standingLine === true && { standingLine: true }),
4536
+ },
4537
+ }),
4450
4538
  // Tool choice by classifier (9.105.0): the mount args on the Tools
4451
4539
  // branch and the key across the sf-llm-call boundary, under the arm.
4452
4540
  ...(this.toolChoiceOptions !== undefined && { hasToolChoice: true }),