agentfootprint 9.23.0 → 9.24.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 (83) hide show
  1. package/dist/core/Agent.js +12 -0
  2. package/dist/core/Agent.js.map +1 -1
  3. package/dist/core/RunnerBase.js +8 -0
  4. package/dist/core/RunnerBase.js.map +1 -1
  5. package/dist/core/agent/middleware/ledger.js +1 -0
  6. package/dist/core/agent/middleware/ledger.js.map +1 -1
  7. package/dist/core/agent/middleware/outcomes.js +10 -2
  8. package/dist/core/agent/middleware/outcomes.js.map +1 -1
  9. package/dist/core/agent/stages/toolCalls.js +124 -0
  10. package/dist/core/agent/stages/toolCalls.js.map +1 -1
  11. package/dist/core/askComponent.js +143 -0
  12. package/dist/core/askComponent.js.map +1 -0
  13. package/dist/core/checkin.js.map +1 -1
  14. package/dist/core/pause.js.map +1 -1
  15. package/dist/core/tools.js +16 -0
  16. package/dist/core/tools.js.map +1 -1
  17. package/dist/esm/core/Agent.js +12 -0
  18. package/dist/esm/core/Agent.js.map +1 -1
  19. package/dist/esm/core/RunnerBase.js +8 -0
  20. package/dist/esm/core/RunnerBase.js.map +1 -1
  21. package/dist/esm/core/agent/middleware/ledger.js +1 -0
  22. package/dist/esm/core/agent/middleware/ledger.js.map +1 -1
  23. package/dist/esm/core/agent/middleware/outcomes.js +10 -2
  24. package/dist/esm/core/agent/middleware/outcomes.js.map +1 -1
  25. package/dist/esm/core/agent/middleware/types.d.ts +14 -0
  26. package/dist/esm/core/agent/stages/toolCalls.js +124 -0
  27. package/dist/esm/core/agent/stages/toolCalls.js.map +1 -1
  28. package/dist/esm/core/agent/types.d.ts +1 -0
  29. package/dist/esm/core/askComponent.d.ts +121 -0
  30. package/dist/esm/core/askComponent.js +137 -0
  31. package/dist/esm/core/askComponent.js.map +1 -0
  32. package/dist/esm/core/checkin.d.ts +10 -0
  33. package/dist/esm/core/checkin.js.map +1 -1
  34. package/dist/esm/core/pause.d.ts +8 -0
  35. package/dist/esm/core/pause.js.map +1 -1
  36. package/dist/esm/core/tools.d.ts +16 -0
  37. package/dist/esm/core/tools.js +16 -0
  38. package/dist/esm/core/tools.js.map +1 -1
  39. package/dist/esm/events/payloads.d.ts +12 -0
  40. package/dist/esm/hosting/standingAgent.js +7 -0
  41. package/dist/esm/hosting/standingAgent.js.map +1 -1
  42. package/dist/esm/hosting/types.d.ts +20 -0
  43. package/dist/esm/hosting/types.js.map +1 -1
  44. package/dist/esm/index.d.ts +1 -0
  45. package/dist/esm/index.js +12 -0
  46. package/dist/esm/index.js.map +1 -1
  47. package/dist/esm/recorders/core/CheckInRecorder.d.ts +3 -0
  48. package/dist/esm/recorders/core/CheckInRecorder.js +1 -0
  49. package/dist/esm/recorders/core/CheckInRecorder.js.map +1 -1
  50. package/dist/hosting/standingAgent.js +7 -0
  51. package/dist/hosting/standingAgent.js.map +1 -1
  52. package/dist/hosting/types.js.map +1 -1
  53. package/dist/index.js +18 -3
  54. package/dist/index.js.map +1 -1
  55. package/dist/recorders/core/CheckInRecorder.js +1 -0
  56. package/dist/recorders/core/CheckInRecorder.js.map +1 -1
  57. package/dist/types/core/Agent.d.ts.map +1 -1
  58. package/dist/types/core/RunnerBase.d.ts.map +1 -1
  59. package/dist/types/core/agent/middleware/ledger.d.ts.map +1 -1
  60. package/dist/types/core/agent/middleware/outcomes.d.ts.map +1 -1
  61. package/dist/types/core/agent/middleware/types.d.ts +14 -0
  62. package/dist/types/core/agent/middleware/types.d.ts.map +1 -1
  63. package/dist/types/core/agent/stages/toolCalls.d.ts.map +1 -1
  64. package/dist/types/core/agent/types.d.ts +1 -0
  65. package/dist/types/core/agent/types.d.ts.map +1 -1
  66. package/dist/types/core/askComponent.d.ts +122 -0
  67. package/dist/types/core/askComponent.d.ts.map +1 -0
  68. package/dist/types/core/checkin.d.ts +10 -0
  69. package/dist/types/core/checkin.d.ts.map +1 -1
  70. package/dist/types/core/pause.d.ts +8 -0
  71. package/dist/types/core/pause.d.ts.map +1 -1
  72. package/dist/types/core/tools.d.ts +16 -0
  73. package/dist/types/core/tools.d.ts.map +1 -1
  74. package/dist/types/events/payloads.d.ts +12 -0
  75. package/dist/types/events/payloads.d.ts.map +1 -1
  76. package/dist/types/hosting/standingAgent.d.ts.map +1 -1
  77. package/dist/types/hosting/types.d.ts +20 -0
  78. package/dist/types/hosting/types.d.ts.map +1 -1
  79. package/dist/types/index.d.ts +1 -0
  80. package/dist/types/index.d.ts.map +1 -1
  81. package/dist/types/recorders/core/CheckInRecorder.d.ts +3 -0
  82. package/dist/types/recorders/core/CheckInRecorder.d.ts.map +1 -1
  83. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"RunnerBase.js","sourceRoot":"","sources":["../../../src/core/RunnerBase.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RunnerBase.js","sourceRoot":"","sources":["../../../src/core/RunnerBase.ts"],"names":[],"mappings":"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"}
@@ -58,6 +58,7 @@ export function recordDecisions(scope, rows) {
58
58
  outcome: row.outcome,
59
59
  changed: row.changed,
60
60
  ...(row.why !== undefined && { why: row.why }),
61
+ ...(row.componentId !== undefined && { componentId: row.componentId }),
61
62
  });
62
63
  }
63
64
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ledger.js","sourceRoot":"","sources":["../../../../../src/core/agent/middleware/ledger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AASjE;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,KAAkB,EAAE,IAAmC;IACrF,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAC9B,MAAM,IAAI,GAAI,KAAK,CAAC,mBAAiE,IAAI,EAAE,CAAC;IAC5F,2EAA2E;IAC3E,4EAA4E;IAC5E,yEAAyE;IACzE,KAAK,CAAC,mBAAmB,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;IAC/C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,SAAS,CAAC,KAAK,EAAE,oCAAoC,EAAE;YACrD,UAAU,EAAE,GAAG,CAAC,UAAU;YAC1B,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,EAAE,EAAE,GAAG,CAAC,EAAE;YACV,GAAG,CAAC,GAAG,CAAC,KAAK,KAAK,SAAS,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC;YACpD,GAAG,CAAC,GAAG,CAAC,QAAQ,KAAK,SAAS,IAAI,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC;YAC7D,GAAG,CAAC,GAAG,CAAC,UAAU,KAAK,SAAS,IAAI,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC;YACnE,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,SAAS,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC;SAC/C,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"ledger.js","sourceRoot":"","sources":["../../../../../src/core/agent/middleware/ledger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AASjE;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,KAAkB,EAAE,IAAmC;IACrF,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAC9B,MAAM,IAAI,GAAI,KAAK,CAAC,mBAAiE,IAAI,EAAE,CAAC;IAC5F,2EAA2E;IAC3E,4EAA4E;IAC5E,yEAAyE;IACzE,KAAK,CAAC,mBAAmB,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;IAC/C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,SAAS,CAAC,KAAK,EAAE,oCAAoC,EAAE;YACrD,UAAU,EAAE,GAAG,CAAC,UAAU;YAC1B,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,EAAE,EAAE,GAAG,CAAC,EAAE;YACV,GAAG,CAAC,GAAG,CAAC,KAAK,KAAK,SAAS,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC;YACpD,GAAG,CAAC,GAAG,CAAC,QAAQ,KAAK,SAAS,IAAI,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC;YAC7D,GAAG,CAAC,GAAG,CAAC,UAAU,KAAK,SAAS,IAAI,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC;YACnE,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,SAAS,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC;YAC9C,GAAG,CAAC,GAAG,CAAC,WAAW,KAAK,SAAS,IAAI,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC;SACvE,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
@@ -14,6 +14,7 @@
14
14
  * transform is the only thing here that makes the trace and the wire
15
15
  * disagree, so it is the only thing required to say why.
16
16
  */
17
+ import { assertAskComponent } from '../../askComponent.js';
17
18
  export function allow(value, why) {
18
19
  if (value === undefined) {
19
20
  return typeof why === 'string' && why.length > 0 ? { kind: 'allow', why } : { kind: 'allow' };
@@ -59,8 +60,15 @@ export function ask(payload) {
59
60
  typeof payload !== 'object' ||
60
61
  typeof payload.question !== 'string' ||
61
62
  payload.question.length === 0) {
62
- throw new Error('ask(payload): expected { question, detail? } with a non-empty question. The question ' +
63
- 'is what a person is shown when the run pauses.');
63
+ throw new Error('ask(payload): expected { question, detail?, component? } with a non-empty question. ' +
64
+ 'The question is what a person is shown when the run pauses.');
65
+ }
66
+ // A malformed component fails HERE, in the middleware author's own stack —
67
+ // not as a raise-time refusal attributed to the tool call it happened to
68
+ // gate. Whether a `propsRef` RESOLVES is the dispatch loop's question (it
69
+ // has the store and the run's scope); the shape is this constructor's.
70
+ if (payload.component !== undefined) {
71
+ assertAskComponent(payload.component, 'ask(payload)');
64
72
  }
65
73
  return { kind: 'ask', payload };
66
74
  }
@@ -1 +1 @@
1
- {"version":3,"file":"outcomes.js","sourceRoot":"","sources":["../../../../../src/core/agent/middleware/outcomes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAuBH,MAAM,UAAU,KAAK,CAAI,KAAS,EAAE,GAAY;IAC9C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IAChG,CAAC;IACD,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChD,MAAM,IAAI,KAAK,CACb,oFAAoF;YAClF,mFAAmF;YACnF,iCAAiC,CACpC,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;AACvC,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,IAAI,CAAC,MAAc;IACjC,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtD,MAAM,IAAI,KAAK,CACb,mFAAmF;YACjF,qEAAqE,CACxE,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;AAClC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,GAAG,CAAC,OAAmB;IACrC,IACE,OAAO,KAAK,IAAI;QAChB,OAAO,OAAO,KAAK,QAAQ;QAC3B,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ;QACpC,OAAO,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAC7B,CAAC;QACD,MAAM,IAAI,KAAK,CACb,uFAAuF;YACrF,gDAAgD,CACnD,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;AAClC,CAAC"}
1
+ {"version":3,"file":"outcomes.js","sourceRoot":"","sources":["../../../../../src/core/agent/middleware/outcomes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAsB3D,MAAM,UAAU,KAAK,CAAI,KAAS,EAAE,GAAY;IAC9C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IAChG,CAAC;IACD,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChD,MAAM,IAAI,KAAK,CACb,oFAAoF;YAClF,mFAAmF;YACnF,iCAAiC,CACpC,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;AACvC,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,IAAI,CAAC,MAAc;IACjC,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtD,MAAM,IAAI,KAAK,CACb,mFAAmF;YACjF,qEAAqE,CACxE,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;AAClC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,GAAG,CAAC,OAAmB;IACrC,IACE,OAAO,KAAK,IAAI;QAChB,OAAO,OAAO,KAAK,QAAQ;QAC3B,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ;QACpC,OAAO,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAC7B,CAAC;QACD,MAAM,IAAI,KAAK,CACb,sFAAsF;YACpF,6DAA6D,CAChE,CAAC;IACJ,CAAC;IACD,2EAA2E;IAC3E,yEAAyE;IACzE,0EAA0E;IAC1E,uEAAuE;IACvE,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QACpC,kBAAkB,CAAC,OAAO,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;IACxD,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;AAClC,CAAC"}
@@ -67,6 +67,7 @@
67
67
  * pause machinery that already exists.
68
68
  */
69
69
  import type { LLMMessage } from '../../../adapters/types.js';
70
+ import type { AskComponent } from '../../askComponent.js';
70
71
  import type { MemoryIdentity } from '../../../memory/identity/types.js';
71
72
  import type { LoopMoment } from '../moments.js';
72
73
  /**
@@ -106,6 +107,13 @@ export interface AskPayload {
106
107
  readonly question: string;
107
108
  /** Anything else the answering UI should render. Never interpreted here. */
108
109
  readonly detail?: unknown;
110
+ /**
111
+ * Which REGISTERED screen component collects the answer (9.24.0) — ids and
112
+ * props only, never markup. Small props inline; big props as an artifact
113
+ * ref (`propsRef`), validated to resolve at raise time. Absent → the prose
114
+ * `question`, exactly as before.
115
+ */
116
+ readonly component?: AskComponent;
109
117
  }
110
118
  /**
111
119
  * Everything a tool middleware may answer. Closed, and every arm has a
@@ -321,5 +329,11 @@ export interface MiddlewareDecision {
321
329
  readonly before?: unknown;
322
330
  /** The value after this middleware. Present only when `changed`. */
323
331
  readonly after?: unknown;
332
+ /**
333
+ * The registered component that COLLECTED this decision (9.24.0). Present
334
+ * only on the resume-side rows of an `ask` that carried one — the trace
335
+ * then says which surface the person answered through. Never inferred.
336
+ */
337
+ readonly componentId?: string;
324
338
  }
325
339
  export {};
@@ -55,6 +55,7 @@ import { PRESENT_TOOL_NAME, presentArtifact } from '../../../artifacts/present.j
55
55
  import { placedResultKind, placedToolResult, } from '../../../artifacts/placement.js';
56
56
  import { CONSENT_PAUSE_KEY, consentQuestion, modelRefusal } from '../../../identity/consent.js';
57
57
  import { isPauseRequest, PauseAnswerRequiredError } from '../../pause.js';
58
+ import { assertAskComponent, InvalidAskComponentError, } from '../../askComponent.js';
58
59
  import { shouldCheckIn, isCheckInDecision, checkInDeclined, } from '../../checkin.js';
59
60
  import { runToolChain, runToolAfterChain } from '../middleware/runChain.js';
60
61
  import { recordDecisions } from '../middleware/ledger.js';
@@ -785,6 +786,63 @@ export function buildToolCallsHandler(deps) {
785
786
  ...(verdict.resolved.length > 0 && { wanted: verdict.wanted }),
786
787
  };
787
788
  };
789
+ // ── Typed-HITL ask components at raise time (9.24.0) ───────────────────
790
+ // The ONE gatekeeper every component-carrying ask passes through before it
791
+ // is allowed to pause: `askHuman({ component })`, a middleware `ask`, and a
792
+ // tool's `checkInComponent` all land here. Shape first (the door the value
793
+ // arrived through is named in the refusal), then the `propsRef` questions
794
+ // only a raise site can answer — is there a store, and does the ref resolve
795
+ // in THIS run's scope. A dangling ref is refused at its source, loudly (the
796
+ // run fails with the teaching error), never handed to a screen to discover:
797
+ // a pause whose component cannot render is a question a person
798
+ // half-receives, and silently downgrading a consent gate to prose would be
799
+ // accepted-and-silently-wrong. Refusals + resolutions land on the record as
800
+ // `artifacts.refused { op: 'dispatch' }` / `artifacts.resolved` — the same
801
+ // facts a `wants` resolution files. Asks WITHOUT a component never reach
802
+ // this function: zero reads, zero events, byte-identical.
803
+ const assertComponentDeliverable = async (scope, toolName, component, door) => {
804
+ assertAskComponent(component, door);
805
+ const ref = component.propsRef;
806
+ if (ref === undefined)
807
+ return component;
808
+ const store = deps.artifactStore;
809
+ if (store === undefined) {
810
+ typedEmit(scope, 'agentfootprint.artifacts.refused', {
811
+ op: 'dispatch',
812
+ reason: 'no-store',
813
+ ref,
814
+ detail: `${door}: component.propsRef set but no artifact store is attached`,
815
+ tool: toolName,
816
+ });
817
+ throw new InvalidAskComponentError('no-store', door, `component.propsRef ('${ref}') is set but no artifact store is attached, so the ` +
818
+ `screen could never redeem it. Pass \`artifacts\` to Agent.create({ ..., artifacts }) ` +
819
+ `— inMemoryArtifacts(), fileArtifacts({ directory }) or sqliteArtifacts({ file }) — ` +
820
+ `or carry the payload inline as component.props.`, ref);
821
+ }
822
+ const meta = await store.head(runScopeOf(scope), ref);
823
+ if (meta === null) {
824
+ typedEmit(scope, 'agentfootprint.artifacts.refused', {
825
+ op: 'dispatch',
826
+ reason: 'missing-or-expired',
827
+ ref,
828
+ detail: `${door}: component.propsRef does not resolve in this run's scope`,
829
+ tool: toolName,
830
+ });
831
+ throw new InvalidAskComponentError('unresolved-ref', door, `component.propsRef ('${ref}') does not resolve in this run's artifact scope — ` +
832
+ `missing, expired, or minted under a different scope. Mint the props BEFORE raising ` +
833
+ `the ask (ctx.artifacts.put(...) in the same run) and pass the ref it returns; a ` +
834
+ `ref the screen cannot redeem must be refused here, at the source, not discovered ` +
835
+ `by the person answering.`, ref);
836
+ }
837
+ typedEmit(scope, 'agentfootprint.artifacts.resolved', {
838
+ ref: meta.ref,
839
+ via: 'head',
840
+ kind: meta.kind,
841
+ bytes: meta.bytes,
842
+ tool: toolName,
843
+ });
844
+ return component;
845
+ };
788
846
  // ── The `present` tool's authoritative result (9.22.0, Leg 2) ──────────
789
847
  // The skip_step pattern: the auto-attached placeholder ran; the stage —
790
848
  // which owns the scope, the store and the emit channel — OVERWRITES its
@@ -1452,6 +1510,17 @@ export function buildToolCallsHandler(deps) {
1452
1510
  result = chain.reason;
1453
1511
  }
1454
1512
  else if (chain.kind === 'ask') {
1513
+ // The typed half of the question (9.24.0), judged BEFORE anything
1514
+ // is committed: a component the screen could not render must
1515
+ // refuse here, at the source, not pause and be discovered. The
1516
+ // `ask()` constructor already checked the shape; a hand-built
1517
+ // outcome literal bypasses it, so the shape is re-asserted at
1518
+ // this boundary (cheap, idempotent) along with the propsRef
1519
+ // resolution only a raise site can judge. Asks without a
1520
+ // component skip all of it.
1521
+ const askComponent = chain.payload.component !== undefined
1522
+ ? await assertComponentDeliverable(scope, tc.name, chain.payload.component, `ask middleware '${chain.middleware}'`)
1523
+ : undefined;
1455
1524
  // Commit partial state so resume() finds history intact (the
1456
1525
  // pauseHere / check-in path does the same). The TRANSFORMED args
1457
1526
  // ride the checkpoint: a person approves what the chain produced,
@@ -1464,6 +1533,12 @@ export function buildToolCallsHandler(deps) {
1464
1533
  scope.pausedAskArgs = chain.args;
1465
1534
  scope.pausedAskIndex = chain.index;
1466
1535
  scope.pausedAskMiddleware = chain.middleware;
1536
+ // Which surface will collect the decision — carried so the
1537
+ // resume-side ledger rows can say which component ANSWERED.
1538
+ // Written only when one exists: a component-less ask's
1539
+ // checkpoint stays byte-identical.
1540
+ if (askComponent !== undefined)
1541
+ scope.pausedComponentId = askComponent.componentId;
1467
1542
  // A defined return value triggers the footprintjs pause; this
1468
1543
  // object becomes the checkpoint's pauseData, and detectPause
1469
1544
  // surfaces `pauseData.ask` as `outcome.ask`.
@@ -1544,6 +1619,13 @@ export function buildToolCallsHandler(deps) {
1544
1619
  // path below (this `if` block is the ONLY thing the gate adds).
1545
1620
  }
1546
1621
  else {
1622
+ // The tool's declared decision component (9.24.0), judged BEFORE
1623
+ // the evidence pack is assembled — a gate that cannot be honored
1624
+ // as declared refuses before any work, and a dangling propsRef is
1625
+ // refused at this source rather than discovered by the screen.
1626
+ const gateComponent = tool.checkInComponent !== undefined
1627
+ ? await assertComponentDeliverable(scope, tc.name, tool.checkInComponent, `tool '${tc.name}' checkInComponent`)
1628
+ : undefined;
1547
1629
  const intent = scope.llmLatestContent ? String(scope.llmLatestContent) : undefined;
1548
1630
  const evidence = await deps.checkIn.assembler({
1549
1631
  tool: { name: tc.name, description: tool.schema.description },
@@ -1559,6 +1641,7 @@ export function buildToolCallsHandler(deps) {
1559
1641
  args: callArgs,
1560
1642
  ...(intent !== undefined && { intent }),
1561
1643
  evidence,
1644
+ ...(gateComponent !== undefined && { component: gateComponent }),
1562
1645
  };
1563
1646
  typedEmit(scope, 'agentfootprint.checkin.request', {
1564
1647
  toolName: tc.name,
@@ -1575,6 +1658,11 @@ export function buildToolCallsHandler(deps) {
1575
1658
  scope.pausedToolStartMs = startMs;
1576
1659
  scope.pausedCheckIn = true;
1577
1660
  scope.pausedCheckInArgs = callArgs;
1661
+ // Which surface will collect the decision — read back on resume
1662
+ // so `checkin.decision` says which component ANSWERED. Written
1663
+ // only when one exists (byte-identical otherwise).
1664
+ if (gateComponent !== undefined)
1665
+ scope.pausedComponentId = gateComponent.componentId;
1578
1666
  // Returning a defined value triggers the footprintjs pause; the
1579
1667
  // returned object becomes the checkpoint's pauseData. detectPause
1580
1668
  // surfaces `pauseData.checkIn` as `outcome.checkIn`.
@@ -1765,6 +1853,22 @@ export function buildToolCallsHandler(deps) {
1765
1853
  }
1766
1854
  catch (err) {
1767
1855
  if (isPauseRequest(err)) {
1856
+ // The typed half of the question (9.24.0): a tool that raised
1857
+ // `askHuman({ question, component })` nominated a screen
1858
+ // component, and the nomination is judged HERE — the raise
1859
+ // site — before the pause is allowed to happen. The tool
1860
+ // usually minted `propsRef` via ctx.artifacts moments ago;
1861
+ // this validates the ref it chose to carry still resolves in
1862
+ // this run's scope, so the throw (which fails the run loudly,
1863
+ // naming the fix) lands in the author's lap and never in the
1864
+ // answering person's. Pauses without a component skip this
1865
+ // entirely — byte-identical.
1866
+ if (typeof err.data === 'object' && err.data !== null) {
1867
+ const rawComponent = err.data.component;
1868
+ if (rawComponent !== undefined) {
1869
+ await assertComponentDeliverable(scope, tc.name, rawComponent, `askHuman in tool '${tc.name}'`);
1870
+ }
1871
+ }
1768
1872
  // A pause has NOT settled this call — it is waiting for a
1769
1873
  // person, and the resources it opened are what the resume
1770
1874
  // needs. No `'call'` teardown here, deliberately.
@@ -2103,6 +2207,10 @@ export function buildToolCallsHandler(deps) {
2103
2207
  const args = (scope.pausedAskArgs ?? {});
2104
2208
  const askIndex = (scope.pausedAskIndex ?? 0);
2105
2209
  const askedBy = (scope.pausedAskMiddleware ?? 'middleware');
2210
+ // The registered component that COLLECTED this decision (9.24.0),
2211
+ // written at pause time only when the ask carried one — the ledger
2212
+ // rows below then say which surface the person answered through.
2213
+ const answeredVia = scope.pausedComponentId;
2106
2214
  const decision = isCheckInDecision(input)
2107
2215
  ? input
2108
2216
  : checkInDeclined({ by: 'unknown', note: 'resume input was not a CheckInDecision' });
@@ -2129,6 +2237,7 @@ export function buildToolCallsHandler(deps) {
2129
2237
  outcome: 'deny',
2130
2238
  changed: false,
2131
2239
  why: `declined by ${decision.by}${decision.note ? `: ${decision.note}` : ''}`,
2240
+ ...(answeredVia !== undefined && { componentId: answeredVia }),
2132
2241
  },
2133
2242
  ]);
2134
2243
  }
@@ -2144,6 +2253,7 @@ export function buildToolCallsHandler(deps) {
2144
2253
  outcome: 'allow',
2145
2254
  changed: false,
2146
2255
  why: `approved by ${decision.by}${decision.note ? `: ${decision.note}` : ''}`,
2256
+ ...(answeredVia !== undefined && { componentId: answeredVia }),
2147
2257
  },
2148
2258
  ]);
2149
2259
  // Continue the chain from the link AFTER the one that asked. Its
@@ -2333,6 +2443,11 @@ export function buildToolCallsHandler(deps) {
2333
2443
  scope.pausedAskArgs = undefined;
2334
2444
  scope.pausedAskIndex = undefined;
2335
2445
  scope.pausedAskMiddleware = undefined;
2446
+ // Cleared ONLY when it was set: a later component-less pause in this
2447
+ // run must not inherit this ask's surface, and a run that never
2448
+ // carried one must not gain the key (byte-identical).
2449
+ if (answeredVia !== undefined)
2450
+ scope.pausedComponentId = undefined;
2336
2451
  return;
2337
2452
  }
2338
2453
  // ── Check-in decision path ───────────────────────────────────────
@@ -2351,6 +2466,11 @@ export function buildToolCallsHandler(deps) {
2351
2466
  const decision = isCheckInDecision(input)
2352
2467
  ? input
2353
2468
  : checkInDeclined({ by: 'unknown', note: 'resume input was not a CheckInDecision' });
2469
+ // The registered component that COLLECTED this decision (9.24.0),
2470
+ // written at pause time only when the ask carried one. The decision
2471
+ // stays exactly what it was — a structured `CheckInDecision`, never
2472
+ // parsed from prose — and the record now says which surface asked.
2473
+ const answeredVia = scope.pausedComponentId;
2354
2474
  typedEmit(scope, 'agentfootprint.checkin.decision', {
2355
2475
  toolName,
2356
2476
  toolCallId,
@@ -2358,6 +2478,7 @@ export function buildToolCallsHandler(deps) {
2358
2478
  approved: decision.approved,
2359
2479
  by: decision.by,
2360
2480
  ...(decision.note !== undefined && { note: decision.note }),
2481
+ ...(answeredVia !== undefined && { componentId: answeredVia }),
2361
2482
  });
2362
2483
  let result;
2363
2484
  /** What the model reads — see the ask path above. */
@@ -2455,6 +2576,9 @@ export function buildToolCallsHandler(deps) {
2455
2576
  scope.pausedToolStartMs = 0;
2456
2577
  scope.pausedCheckIn = false;
2457
2578
  scope.pausedCheckInArgs = undefined;
2579
+ // Cleared ONLY when it was set — see the ask path's twin note.
2580
+ if (answeredVia !== undefined)
2581
+ scope.pausedComponentId = undefined;
2458
2582
  return;
2459
2583
  }
2460
2584
  // ── Credential-consent decision path (8.6.0) ─────────────────────