agentfootprint 9.63.0 → 9.65.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 (87) hide show
  1. package/dist/adapters/hosting/foundryResponses.js +110 -0
  2. package/dist/adapters/hosting/foundryResponses.js.map +1 -0
  3. package/dist/adapters/hosting/responsesWire.js +322 -0
  4. package/dist/adapters/hosting/responsesWire.js.map +1 -0
  5. package/dist/adapters/observability/otel.js +5 -2
  6. package/dist/adapters/observability/otel.js.map +1 -1
  7. package/dist/core/agent/coverage/absent.js +14 -11
  8. package/dist/core/agent/coverage/absent.js.map +1 -1
  9. package/dist/core/agent/coverage/evidence.js +77 -34
  10. package/dist/core/agent/coverage/evidence.js.map +1 -1
  11. package/dist/core/agent/evidence/evidenceIndex.js +15 -14
  12. package/dist/core/agent/evidence/evidenceIndex.js.map +1 -1
  13. package/dist/core/agent/toolArgsValidation.js +142 -18
  14. package/dist/core/agent/toolArgsValidation.js.map +1 -1
  15. package/dist/esm/adapters/hosting/foundryResponses.d.ts +89 -0
  16. package/dist/esm/adapters/hosting/foundryResponses.js +106 -0
  17. package/dist/esm/adapters/hosting/foundryResponses.js.map +1 -0
  18. package/dist/esm/adapters/hosting/responsesWire.d.ts +75 -0
  19. package/dist/esm/adapters/hosting/responsesWire.js +316 -0
  20. package/dist/esm/adapters/hosting/responsesWire.js.map +1 -0
  21. package/dist/esm/adapters/observability/otel.js +5 -2
  22. package/dist/esm/adapters/observability/otel.js.map +1 -1
  23. package/dist/esm/core/agent/coverage/absent.d.ts +14 -11
  24. package/dist/esm/core/agent/coverage/absent.js +14 -11
  25. package/dist/esm/core/agent/coverage/absent.js.map +1 -1
  26. package/dist/esm/core/agent/coverage/evidence.d.ts +52 -28
  27. package/dist/esm/core/agent/coverage/evidence.js +77 -34
  28. package/dist/esm/core/agent/coverage/evidence.js.map +1 -1
  29. package/dist/esm/core/agent/evidence/evidenceIndex.d.ts +8 -7
  30. package/dist/esm/core/agent/evidence/evidenceIndex.js +15 -14
  31. package/dist/esm/core/agent/evidence/evidenceIndex.js.map +1 -1
  32. package/dist/esm/core/agent/toolArgsValidation.d.ts +62 -17
  33. package/dist/esm/core/agent/toolArgsValidation.js +142 -18
  34. package/dist/esm/core/agent/toolArgsValidation.js.map +1 -1
  35. package/dist/esm/core/agent/types.d.ts +9 -4
  36. package/dist/esm/events/payloads.d.ts +9 -0
  37. package/dist/esm/hosting/errors.d.ts +43 -0
  38. package/dist/esm/hosting/errors.js +52 -0
  39. package/dist/esm/hosting/errors.js.map +1 -1
  40. package/dist/esm/hosting/httpHost.d.ts +133 -4
  41. package/dist/esm/hosting/httpHost.js +120 -22
  42. package/dist/esm/hosting/httpHost.js.map +1 -1
  43. package/dist/esm/hosting/index.d.ts +2 -2
  44. package/dist/esm/hosting/index.js +1 -1
  45. package/dist/esm/hosting/index.js.map +1 -1
  46. package/dist/esm/hosting-providers.d.ts +17 -0
  47. package/dist/esm/hosting-providers.js +19 -0
  48. package/dist/esm/hosting-providers.js.map +1 -1
  49. package/dist/esm/index.d.ts +1 -1
  50. package/dist/esm/index.js.map +1 -1
  51. package/dist/hosting/errors.js +55 -1
  52. package/dist/hosting/errors.js.map +1 -1
  53. package/dist/hosting/httpHost.js +119 -21
  54. package/dist/hosting/httpHost.js.map +1 -1
  55. package/dist/hosting/index.js +4 -2
  56. package/dist/hosting/index.js.map +1 -1
  57. package/dist/hosting-providers.js +30 -1
  58. package/dist/hosting-providers.js.map +1 -1
  59. package/dist/index.js.map +1 -1
  60. package/dist/types/adapters/hosting/foundryResponses.d.ts +90 -0
  61. package/dist/types/adapters/hosting/foundryResponses.d.ts.map +1 -0
  62. package/dist/types/adapters/hosting/responsesWire.d.ts +76 -0
  63. package/dist/types/adapters/hosting/responsesWire.d.ts.map +1 -0
  64. package/dist/types/adapters/observability/otel.d.ts.map +1 -1
  65. package/dist/types/core/agent/coverage/absent.d.ts +14 -11
  66. package/dist/types/core/agent/coverage/absent.d.ts.map +1 -1
  67. package/dist/types/core/agent/coverage/evidence.d.ts +52 -28
  68. package/dist/types/core/agent/coverage/evidence.d.ts.map +1 -1
  69. package/dist/types/core/agent/evidence/evidenceIndex.d.ts +8 -7
  70. package/dist/types/core/agent/evidence/evidenceIndex.d.ts.map +1 -1
  71. package/dist/types/core/agent/toolArgsValidation.d.ts +62 -17
  72. package/dist/types/core/agent/toolArgsValidation.d.ts.map +1 -1
  73. package/dist/types/core/agent/types.d.ts +9 -4
  74. package/dist/types/core/agent/types.d.ts.map +1 -1
  75. package/dist/types/events/payloads.d.ts +9 -0
  76. package/dist/types/events/payloads.d.ts.map +1 -1
  77. package/dist/types/hosting/errors.d.ts +43 -0
  78. package/dist/types/hosting/errors.d.ts.map +1 -1
  79. package/dist/types/hosting/httpHost.d.ts +133 -4
  80. package/dist/types/hosting/httpHost.d.ts.map +1 -1
  81. package/dist/types/hosting/index.d.ts +2 -2
  82. package/dist/types/hosting/index.d.ts.map +1 -1
  83. package/dist/types/hosting-providers.d.ts +17 -0
  84. package/dist/types/hosting-providers.d.ts.map +1 -1
  85. package/dist/types/index.d.ts +1 -1
  86. package/dist/types/index.d.ts.map +1 -1
  87. package/package.json +1 -1
@@ -0,0 +1,90 @@
1
+ /**
2
+ * adapters/hosting/foundryResponses — an agent behind Microsoft Foundry's
3
+ * hosted-agent contract.
4
+ *
5
+ * ── The split, and why it is here ────────────────────────────────────────────
6
+ * Two different things are needed to serve a Foundry hosted agent, and only one
7
+ * of them is Microsoft's:
8
+ *
9
+ * • The **Responses protocol** — `input` items, a `response` object, the
10
+ * named streaming lifecycle. That is a protocol several runtimes speak, so
11
+ * it lives in `responsesWire.ts` with no vendor in it.
12
+ * • The **hosting contract** — port 8088, `POST /responses`, a `HEAD` probe
13
+ * on the same path, `GET /readiness` answering `{"status":"healthy"}`, and
14
+ * `agent_session_id` as a session alias. That IS this runtime's contract,
15
+ * the same way `/invocations` and `X-Amzn-…` are another's, and it is what
16
+ * this file supplies.
17
+ *
18
+ * So this file is a configuration, not an implementation. Everything hard —
19
+ * draining on close, aborting when the caller hangs up, failing a handler that
20
+ * throws or answers nothing — is `httpHost`'s, shared with every other adapter
21
+ * rather than reimplemented here where the two would drift.
22
+ *
23
+ * ── What it does NOT do ──────────────────────────────────────────────────────
24
+ * **Workflow Visualizer topology is not provided.** The Inspector can invoke
25
+ * this host and render its answer; it does not learn that the answer came from
26
+ * four composed agents, because nothing in the Responses protocol carries that
27
+ * and inventing a channel for it would be claiming a compatibility this has
28
+ * never demonstrated. An agent's internal structure is readable from
29
+ * agentfootprint's own recorders.
30
+ *
31
+ * Everything the protocol does not carry — tool calls, image and file input,
32
+ * function-call output, structured output — is refused by name. See
33
+ * `responsesWire.ts`.
34
+ *
35
+ * This is an **inbound hosting adapter**: it is the door callers arrive at. It
36
+ * is not a model provider, and it has nothing to do with which model the agent
37
+ * calls — for Foundry models, that is `openai()` with the endpoint's base URL.
38
+ *
39
+ * @example An agent behind the Inspector
40
+ * import { foundryResponsesHost, memorySessions, standingAgent } from 'agentfootprint/hosting';
41
+ *
42
+ * const handle = await standingAgent({
43
+ * agent,
44
+ * sessions: memorySessions(),
45
+ * host: foundryResponsesHost(),
46
+ * });
47
+ * process.on('SIGTERM', () => void handle.close());
48
+ */
49
+ /// <reference types="node" />
50
+ import type { IncomingMessage, Server, ServerResponse } from 'node:http';
51
+ import { type HttpHost } from '../../hosting/httpHost.js';
52
+ /** The port a Foundry hosted agent is expected on. */
53
+ export declare const DEFAULT_FOUNDRY_PORT = 8088;
54
+ /** The path that takes a turn. */
55
+ export declare const FOUNDRY_INVOKE_PATH = "/responses";
56
+ /** The path a Foundry hosted agent answers a readiness probe on. */
57
+ export declare const FOUNDRY_READINESS_PATH = "/readiness";
58
+ /**
59
+ * Session aliases this contract accepts, in precedence order.
60
+ *
61
+ * `conversation` is the protocol's own; `agent_session_id` is this runtime's;
62
+ * `session_id` is the spelling several clients send anyway. First one present
63
+ * wins, so a caller using any of the three reaches the same session.
64
+ */
65
+ export declare const FOUNDRY_SESSION_FIELDS: readonly string[];
66
+ export interface FoundryResponsesHostOptions {
67
+ /** Port to bind. Default {@link DEFAULT_FOUNDRY_PORT}. Pass `0` for an ephemeral test port. */
68
+ readonly port?: number;
69
+ /** Interface to bind. Default `'0.0.0.0'` — a container's door has to be reachable from outside it. */
70
+ readonly hostname?: string;
71
+ /** Model label echoed in `response` objects when the request names none. */
72
+ readonly model?: string;
73
+ /** Ceiling on a request body. Default one mebibyte. */
74
+ readonly maxBodyBytes?: number;
75
+ /**
76
+ * A `node:http` server you own, to ATTACH these routes to rather than binding
77
+ * one. Refused together with `port`/`hostname`, which would name a socket
78
+ * this host does not bind.
79
+ */
80
+ readonly server?: Server;
81
+ /** Answer a path this host does not own. Private-server mode only. */
82
+ readonly onUnhandled?: (req: IncomingMessage, res: ServerResponse) => void;
83
+ }
84
+ /**
85
+ * An {@link HttpHost} speaking Foundry's hosted-agent contract.
86
+ *
87
+ * @param options - Port, interface, model label and body ceiling.
88
+ */
89
+ export declare function foundryResponsesHost(options?: FoundryResponsesHostOptions): HttpHost;
90
+ //# sourceMappingURL=foundryResponses.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"foundryResponses.d.ts","sourceRoot":"","sources":["../../../../src/adapters/hosting/foundryResponses.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAEzE,OAAO,EAAY,KAAK,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAGpE,sDAAsD;AACtD,eAAO,MAAM,oBAAoB,OAAO,CAAC;AAEzC,kCAAkC;AAClC,eAAO,MAAM,mBAAmB,eAAe,CAAC;AAEhD,oEAAoE;AACpE,eAAO,MAAM,sBAAsB,eAAe,CAAC;AAEnD;;;;;;GAMG;AACH,eAAO,MAAM,sBAAsB,EAAE,SAAS,MAAM,EAInD,CAAC;AAQF,MAAM,WAAW,2BAA2B;IAC1C,+FAA+F;IAC/F,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,uGAAuG;IACvG,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,4EAA4E;IAC5E,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,uDAAuD;IACvD,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B;;;;OAIG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,sEAAsE;IACtE,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,cAAc,KAAK,IAAI,CAAC;CAC5E;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,GAAE,2BAAgC,GAAG,QAAQ,CA2BxF"}
@@ -0,0 +1,76 @@
1
+ /**
2
+ * adapters/hosting/responsesWire — the Responses protocol, as an `HttpWire`.
3
+ *
4
+ * ── What this is, and what it deliberately is not ────────────────────────────
5
+ * This file speaks the **Responses** wire protocol: a request carries `input`
6
+ * as text or as message items, a reply is a `response` object with an id and a
7
+ * status, and a stream is a LIFECYCLE of named events that open the response,
8
+ * announce output, carry deltas, and close each part before closing the
9
+ * response itself.
10
+ *
11
+ * That protocol is nobody's product. It is the shape a Responses-speaking
12
+ * client sends and expects, and several hosted runtimes speak it. So it lives
13
+ * here as a dialect on its own, and the runtimes that CONFIGURE it — their
14
+ * paths, their ports, their probe bodies, their session aliases — live in their
15
+ * own files beside this one. Keeping the split means the next runtime that
16
+ * speaks Responses is a configuration rather than a copy, and it means no
17
+ * vendor's spelling ends up in the protocol.
18
+ *
19
+ * ── The subset ───────────────────────────────────────────────────────────────
20
+ * A text turn, streamed or not, with a session. Deliberately not the whole
21
+ * Responses API: tool calls, reasoning items, image/file input, structured
22
+ * output and function-call output are NOT carried, and each is REFUSED by name
23
+ * rather than dropped — a request whose content this dialect cannot represent
24
+ * is answered 400 before a turn is paid for, never answered 200 with the parts
25
+ * it happened to understand.
26
+ *
27
+ * @example A host that speaks Responses on paths of its own choosing
28
+ * httpHost({
29
+ * name: 'myResponsesHost',
30
+ * wire: responsesWire({ defaultModel: 'my-agent' }),
31
+ * invokePath: '/responses',
32
+ * healthPath: '/health',
33
+ * });
34
+ */
35
+ import type { HttpWire } from '../../hosting/httpHost.js';
36
+ /** Body fields that may carry a session id, in the order they are consulted. */
37
+ export declare const DEFAULT_SESSION_FIELDS: readonly string[];
38
+ /**
39
+ * What a caller is told when a handler THREW.
40
+ *
41
+ * A thrown error's message is the author's note to their own logs — a query, a
42
+ * path, a token in a connection string — and none of it is the caller's. A
43
+ * handler that CHOSE to fail chose its words for the caller, so those travel
44
+ * unchanged. The host tells this dialect which happened; it never guesses from
45
+ * the message.
46
+ */
47
+ export declare const PUBLIC_FAILURE_MESSAGE = "The agent could not complete this request.";
48
+ export interface ResponsesWireOptions {
49
+ /** Model label echoed in `response` objects when the request names none. */
50
+ readonly defaultModel?: string;
51
+ /**
52
+ * Body fields that carry a session id, in precedence order. The first one
53
+ * present and non-empty wins. Default `['conversation', 'session_id']`.
54
+ *
55
+ * A runtime with its own spelling passes its own list — that is the seam a
56
+ * hosting contract configures rather than forks this file for.
57
+ */
58
+ readonly sessionFields?: readonly string[];
59
+ /** Body for the health probe. Default `{ status: 'ok' }`. */
60
+ readonly health?: unknown;
61
+ }
62
+ type JsonObject = Readonly<Record<string, unknown>>;
63
+ /** The turn's text: a bare string, or the user message items that carry it. */
64
+ export declare function readResponsesInput(input: unknown): string;
65
+ /** The session this request claims, by whichever of its aliases it used. */
66
+ export declare function readResponsesSession(body: JsonObject, fields: readonly string[]): string | undefined;
67
+ /**
68
+ * An `HttpWire` speaking the Responses protocol.
69
+ *
70
+ * Pair it with `httpHost` and the paths your deployment contract names. The
71
+ * host keeps its own promises — draining, aborting on disconnect, failing a
72
+ * handler that throws or answers nothing — and this supplies only the dialect.
73
+ */
74
+ export declare function responsesWire(options?: ResponsesWireOptions): HttpWire;
75
+ export {};
76
+ //# sourceMappingURL=responsesWire.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"responsesWire.d.ts","sourceRoot":"","sources":["../../../../src/adapters/hosting/responsesWire.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAKH,OAAO,KAAK,EAGV,QAAQ,EAGT,MAAM,2BAA2B,CAAC;AAEnC,gFAAgF;AAChF,eAAO,MAAM,sBAAsB,EAAE,SAAS,MAAM,EAAmC,CAAC;AAExF;;;;;;;;GAQG;AACH,eAAO,MAAM,sBAAsB,+CAA+C,CAAC;AAInF,MAAM,WAAW,oBAAoB;IACnC,4EAA4E;IAC5E,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B;;;;;;OAMG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3C,6DAA6D;IAC7D,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,KAAK,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAuCpD,+EAA+E;AAC/E,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAgCzD;AAED,4EAA4E;AAC5E,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,UAAU,EAChB,MAAM,EAAE,SAAS,MAAM,EAAE,GACxB,MAAM,GAAG,SAAS,CAUpB;AAqMD;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,OAAO,GAAE,oBAAyB,GAAG,QAAQ,CAuC1E"}
@@ -1 +1 @@
1
- {"version":3,"file":"otel.d.ts","sourceRoot":"","sources":["../../../../src/adapters/observability/otel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsHG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACxE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAEpE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAMvE,MAAM,WAAW,wBAAwB;IACvC;2CACuC;IACvC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B;;qEAEiE;IACjE,QAAQ,CAAC,MAAM,CAAC,EAAE,cAAc,CAAC;IACjC;;;;8DAI0D;IAC1D,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAClC;;;;;OAKG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAClC;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE,mBAAmB,KAAK,IAAI,CAAC;CACxE;AAID;;0DAE0D;AAC1D,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,MAAM,EAAE,CAAC;AAE/E,8DAA8D;AAC9D,MAAM,WAAW,cAAc;IAC7B,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,YAAY,CAAC;CACrF;AAED,sDAAsD;AACtD,MAAM,WAAW,eAAe;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,4DAA4D;AAC5D,MAAM,WAAW,YAAY;IAC3B,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC;IAC9D,SAAS,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;IAC/D,GAAG,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,WAAW,IAAI;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IACvE;;+DAE2D;IAC3D,QAAQ,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,GAAG,OAAO,CAAC;CACnF;AAgBD;;;;;;GAMG;AACH,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,KAAK,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAC3C,UAAU,CAAC,KAAK,EAAE,iBAAiB,GAAG,IAAI,CAAC;CAC5C;AAED;wEACwE;AACxE,MAAM,WAAW,yBAA0B,SAAQ,qBAAqB;IACtE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACH,wBAAwB,IAAI,4BAA4B,CAAC;CAC1D;AA2GD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,wBAAwB,GAAG,yBAAyB,CA+sB3F"}
1
+ {"version":3,"file":"otel.d.ts","sourceRoot":"","sources":["../../../../src/adapters/observability/otel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsHG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACxE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAEpE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAMvE,MAAM,WAAW,wBAAwB;IACvC;2CACuC;IACvC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B;;qEAEiE;IACjE,QAAQ,CAAC,MAAM,CAAC,EAAE,cAAc,CAAC;IACjC;;;;8DAI0D;IAC1D,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAClC;;;;;OAKG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAClC;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE,mBAAmB,KAAK,IAAI,CAAC;CACxE;AAID;;0DAE0D;AAC1D,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,MAAM,EAAE,CAAC;AAE/E,8DAA8D;AAC9D,MAAM,WAAW,cAAc;IAC7B,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,YAAY,CAAC;CACrF;AAED,sDAAsD;AACtD,MAAM,WAAW,eAAe;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,4DAA4D;AAC5D,MAAM,WAAW,YAAY;IAC3B,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC;IAC9D,SAAS,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;IAC/D,GAAG,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,WAAW,IAAI;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IACvE;;+DAE2D;IAC3D,QAAQ,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,GAAG,OAAO,CAAC;CACnF;AAgBD;;;;;;GAMG;AACH,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,KAAK,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAC3C,UAAU,CAAC,KAAK,EAAE,iBAAiB,GAAG,IAAI,CAAC;CAC5C;AAED;wEACwE;AACxE,MAAM,WAAW,yBAA0B,SAAQ,qBAAqB;IACtE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACH,wBAAwB,IAAI,4BAA4B,CAAC;CAC1D;AA2GD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,wBAAwB,GAAG,yBAAyB,CAktB3F"}
@@ -29,17 +29,20 @@
29
29
  *
30
30
  * ## Why the note is never interpolated
31
31
  *
32
- * Everything in the rendered absence except the coverage lists is either
33
- * static library text or the author's prose about the request — and the
34
- * author's prose about the request usually quotes the model's own arguments
35
- * ("no FLOGI entries on fc1/3", where `fc1/3` came from the model). Tool
36
- * results are the evidence gate's corpus, so an absence that echoed arguments
37
- * into that corpus would GROUND every identifier a model invented, as long as
38
- * it handed it to one tool that found nothing. That is laundering an
39
- * invention through a failed lookup — the same bug `evidence/frames.ts`
40
- * exists to stop on the other side of the conversation. The gate therefore
41
- * indexes an absence's COVERAGE only (see `evidenceIndex.ts`), and the note
42
- * is kept free of interpolation so the whitelist has nothing to leak around.
32
+ * Tool results are the evidence gate's corpus, so an absence that echoed the
33
+ * model's own arguments into that corpus would GROUND every identifier a model
34
+ * invented, as long as it handed the invention to one tool that found nothing.
35
+ * That is laundering an invention through a failed lookup — the same bug
36
+ * `evidence/frames.ts` exists to stop on the other side of the conversation.
37
+ *
38
+ * The gate therefore withholds `looked_for`, and only `looked_for` (see
39
+ * `coverage/evidence.ts`): it is the one field whose job is to quote the
40
+ * request. Everything else the absence carries — the coverage lists, the
41
+ * author's `tryInstead`, any extra key the tool attached to the envelope — is
42
+ * the TOOL speaking about the world and does ground, because an answer that
43
+ * follows the absence's own advice must not be called ungrounded for doing so.
44
+ * The note is kept free of interpolation for the same reason the exclusion
45
+ * exists: static library text has nothing of the caller's to leak.
43
46
  */
44
47
  import type { AbsenceDeclaration, Coverage, ToolAbsence } from './types.js';
45
48
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"absent.d.ts","sourceRoot":"","sources":["../../../../../src/core/agent/coverage/absent.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AAGH,OAAO,KAAK,EAAE,kBAAkB,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE5E;;;;GAIG;AACH,eAAO,MAAM,cAAc,cAAc,CAAC;AAE1C;;;;;GAKG;AACH,eAAO,MAAM,YAAY,QAKmB,CAAC;AAE7C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAgB,MAAM,CAAC,IAAI,EAAE,kBAAkB,GAAG,WAAW,CAwC5D;AAED;;;;;;;;;GASG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,GAAG,SAAS,CAMnE;AAED;sDACsD;AACtD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,WAAW,GAAG,QAAQ,CAMhE"}
1
+ {"version":3,"file":"absent.d.ts","sourceRoot":"","sources":["../../../../../src/core/agent/coverage/absent.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AAGH,OAAO,KAAK,EAAE,kBAAkB,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE5E;;;;GAIG;AACH,eAAO,MAAM,cAAc,cAAc,CAAC;AAE1C;;;;;GAKG;AACH,eAAO,MAAM,YAAY,QAKmB,CAAC;AAE7C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAgB,MAAM,CAAC,IAAI,EAAE,kBAAkB,GAAG,WAAW,CAwC5D;AAED;;;;;;;;;GASG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,GAAG,SAAS,CAMnE;AAED;sDACsD;AACtD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,WAAW,GAAG,QAAQ,CAMhE"}
@@ -25,32 +25,52 @@
25
25
  * machine**, and adding a primitive whose purpose is to make failed lookups
26
26
  * informative would have made it cheaper still.
27
27
  *
28
- * So an absence grounds its COVERAGE and nothing else. `checked`,
29
- * `not_checked` and `cannot_cover` are the tool's own words about the world —
30
- * a fabric name, a collector, a window — and they are exactly what an answer
31
- * built on an absence should be allowed to cite. `looked_for`, `try_instead`,
32
- * the note and the marker are not.
28
+ * ## The line, and where it actually falls
33
29
  *
34
- * The consequence is deliberate and worth stating: if the USER named the
35
- * thing, it is exempt anyway (their message is the exempt corpus), so a real
36
- * question about a real port is unaffected. Only a value that appears *for
37
- * the first time* in an absence loses its grounding — which is the only case
38
- * where it was never evidence to begin with.
30
+ * The first cut of this file drew the line at the coverage lists. That was too
31
+ * narrow, and the field said so: a share-lookup tool returned its absence with
32
+ * the answer attached — an extra `known_shares` key holding the 40 real share
33
+ * names on the filer — and a `try_instead` telling the model to pick one. The
34
+ * model did exactly that, and the gate called the share it picked ungrounded.
35
+ * Following the tool's own advice produced a flagged answer, which makes the
36
+ * advice worthless and the gate wrong.
37
+ *
38
+ * So the line is not "coverage vs everything else". It is **tool-authored
39
+ * knowledge vs caller echo**:
40
+ *
41
+ * • Everything a recognized absence carries is the TOOL speaking about the
42
+ * world — the coverage lists, an extra key like `known_shares`, the
43
+ * author's `try_instead`, the library's own note. Tool knowledge is
44
+ * precisely what the corpus is for, so all of it grounds.
45
+ * • `looked_for` is the one field that quotes the REQUEST rather than
46
+ * stating what the tool knows. It never grounds. See
47
+ * {@link CALLER_ECHO_FIELD}.
48
+ *
49
+ * This widens leniency — the gate accuses less — which is the safe direction
50
+ * on an accusation boundary: a missed fabrication costs a value nobody
51
+ * checked, a false accusation costs a correct answer and a real turn.
52
+ *
53
+ * The consequence of the exclusion is deliberate and worth stating: if the
54
+ * USER named the thing, it is exempt anyway (their message is the exempt
55
+ * corpus), so a real question about a real port is unaffected. Only a value
56
+ * that appears *for the first time* in an absence's `looked_for` loses its
57
+ * grounding — which is the only case where it was never evidence to begin
58
+ * with.
39
59
  *
40
60
  * ## What this does NOT close, said plainly
41
61
  *
42
- * The whitelist rests on "coverage is the tool's own words about the world".
43
- * An author who interpolates an unvalidated argument into a coverage entry —
44
- * a `checked` line built by string-interpolating the `switch` argument the
45
- * model passed — puts a model-supplied token back into the corpus through the
46
- * one list this file admits. That is narrower than the hole it closes (the
47
- * author chose to echo, rather than the primitive echoing by design), and it
48
- * is not detectable from here: this library cannot tell which characters of a
49
- * sentence a tool composed and which it copied. The guidance is on the door
50
- * itself — interpolate identifiers you RESOLVED, not identifiers you were
51
- * handed. It is also the general limit of the evidence corpus, not a new one:
52
- * any tool that echoes its arguments into its result has always grounded
53
- * them.
62
+ * The rule rests on "everything but `looked_for` is the tool's own words about
63
+ * the world". An author who interpolates an unvalidated argument into any
64
+ * other field — a `checked` line built by string-interpolating the `switch`
65
+ * argument the model passed, an extra key echoing the request back — puts a
66
+ * model-supplied token into the corpus by hand. That is narrower than the hole
67
+ * this file closes (the author chose to echo, rather than the primitive
68
+ * echoing by design), and it is not detectable from here: this library cannot
69
+ * tell which characters of a sentence a tool composed and which it copied. The
70
+ * guidance is on the door itself — interpolate identifiers you RESOLVED, not
71
+ * identifiers you were handed. It is also the general limit of the evidence
72
+ * corpus, not a new one: any tool that echoes its arguments into its result
73
+ * has always grounded them.
54
74
  */
55
75
  /**
56
76
  * Project a parsed tool result down to what it may ground, or `undefined`
@@ -58,12 +78,16 @@
58
78
  * indexes exactly as it always did.
59
79
  *
60
80
  * Two shapes carry one: a bare absence, and an absence bounded by a coverage
61
- * ledger (`coverage(absent(…), …)`). A ledger's own lists are all tool
62
- * prose, so they are indexed whole; only the absence inside it is narrowed.
63
- * An absence buried deeper than that — inside a tool's own domain object —
64
- * is NOT found, and is left indexed as ordinary data: this projection
65
- * recognizes the shapes this library mints, and does not go hunting through
66
- * values it did not write.
81
+ * ledger (`coverage(absent(…), …)`). A ledger's own lists are all tool prose,
82
+ * so they are indexed whole; the absence inside it loses the same one field a
83
+ * bare absence loses, and nothing else. An absence buried deeper than that —
84
+ * inside a tool's own domain object — is NOT found, and is left indexed as
85
+ * ordinary data: this projection recognizes the shapes this library mints, and
86
+ * does not go hunting through values it did not write.
87
+ *
88
+ * What comes back is a value to WALK, not a set of strings: the caller's
89
+ * indexer does the leaf and key work, so an extra key holding a nested object
90
+ * or an array of names is projected without this file knowing its shape.
67
91
  */
68
92
  export declare function absenceEvidenceProjection(parsed: unknown): unknown | undefined;
69
93
  //# sourceMappingURL=evidence.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"evidence.d.ts","sourceRoot":"","sources":["../../../../../src/core/agent/coverage/evidence.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AAWH;;;;;;;;;;;;GAYG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS,CAQ9E"}
1
+ {"version":3,"file":"evidence.d.ts","sourceRoot":"","sources":["../../../../../src/core/agent/coverage/evidence.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyEG;AA+BH;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS,CAQ9E"}
@@ -26,13 +26,14 @@
26
26
  * value because the model passed it to a tool would let any invention
27
27
  * launder itself through one failed lookup.
28
28
  * • **The model's own earlier answers do not count**, for the same reason.
29
- * • **An `absent(…)` result grounds its COVERAGE only.** An absence names
30
- * what was looked FOR, which in practice quotes the arguments the model
31
- * passed — so indexing the whole frame would ground an invented
32
- * identifier through the one operation that proves nothing about it: a
33
- * lookup that found nothing. `checked` / `not_checked` / `cannot_cover`
34
- * are the tool's own words about the world and do count. See
35
- * `../coverage/evidence.ts`.
29
+ * • **An `absent(…)` result grounds everything EXCEPT `looked_for`.** Its
30
+ * coverage lists, its `try_instead`, its note and any extra key the tool
31
+ * attached (a `known_shares` list, say) are the tool's own words about the
32
+ * world, and an answer that follows the absence's advice must not be
33
+ * called ungrounded for doing so. `looked_for` alone quotes the arguments
34
+ * the model passed, so indexing it would ground an invented identifier
35
+ * through the one operation that proves nothing about it: a lookup that
36
+ * found nothing. See `../coverage/evidence.ts`.
36
37
  *
37
38
  * The EXEMPT index is built from a different corpus with the same machinery:
38
39
  * the user's own message, the conversation's user/system turns, and the
@@ -1 +1 @@
1
- {"version":3,"file":"evidenceIndex.d.ts","sourceRoot":"","sources":["../../../../../src/core/agent/evidence/evidenceIndex.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAYxE,+EAA+E;AAC/E,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACrC;;;;;OAKG;IACH,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;CAC7B;AA8ED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,SAAS,UAAU,EAAE,GAAG,cAAc,CAOlF;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE;IAClC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,SAAS,UAAU,EAAE,CAAC;IACxC,QAAQ,CAAC,sBAAsB,CAAC,EAAE,SAAS,eAAe,EAAE,CAAC;CAC9D,GAAG,WAAW,CAAC,MAAM,CAAC,CAoBtB"}
1
+ {"version":3,"file":"evidenceIndex.d.ts","sourceRoot":"","sources":["../../../../../src/core/agent/evidence/evidenceIndex.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAYxE,+EAA+E;AAC/E,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACrC;;;;;OAKG;IACH,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;CAC7B;AA8ED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,SAAS,UAAU,EAAE,GAAG,cAAc,CAOlF;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE;IAClC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,SAAS,UAAU,EAAE,CAAC;IACxC,QAAQ,CAAC,sBAAsB,CAAC,EAAE,SAAS,eAAe,EAAE,CAAC;CAC9D,GAAG,WAAW,CAAC,MAAM,CAAC,CAoBtB"}
@@ -2,8 +2,10 @@
2
2
  * toolArgsValidation — validate LLM-produced tool args against the tool's
3
3
  * declared `inputSchema` BEFORE dispatch (backlog #9).
4
4
  *
5
- * Pattern: pure function module — no state, no events; the toolCalls stage
6
- * owns when to call it and what to do with the verdict.
5
+ * Pattern: pure function module — no events, and no state beyond one compiled-
6
+ * regex cache (which doubles as the warn-once ledger for `pattern`s
7
+ * that do not compile); the toolCalls stage owns when to call it and
8
+ * what to do with the verdict.
7
9
  * Role: The model writes tool args as free-form JSON; nothing guaranteed
8
10
  * they match the schema the tool advertised. Dispatching garbage
9
11
  * surfaced as deep tool stack traces (or worse, silent misbehavior).
@@ -14,32 +16,71 @@
14
16
  * ── Honest-subset contract ────────────────────────────────────────────────
15
17
  * This is NOT a full JSON Schema implementation. It enforces the core that
16
18
  * tool schemas in the wild actually use, and IGNORES everything else
17
- * (permissive on unknown keywords — a schema using `pattern`/`oneOf`/`$ref`
18
- * still validates the supported core, never false-rejects on the rest):
19
+ * (permissive on unknown keywords — a schema using `oneOf`/`$ref` still
20
+ * validates the supported core, never false-rejects on the rest):
19
21
  *
20
22
  * ENFORCED: `type` (object/array/string/number/integer/boolean/null,
21
23
  * union arrays), `required`, `properties` (recursive),
22
24
  * `items` (single-schema, recursive), `enum` (primitives),
23
- * `additionalProperties: false` ONLY when explicitly set.
24
- * IGNORED: format, pattern, min/max*, oneOf/anyOf/allOf/not, $ref,
25
+ * `additionalProperties: false` ONLY when explicitly set,
26
+ * and the STRING SHAPE keywords `pattern` / `minLength` /
27
+ * `maxLength`.
28
+ * IGNORED: format, numeric min/max, oneOf/anyOf/allOf/not, $ref,
25
29
  * const, dependencies, …
26
30
  *
27
- * ── Security: never echo VALUES ───────────────────────────────────────────
28
- * Issues name the PATH, the EXPECTED shape, and the TYPE of what arrived —
29
- * never the supplied value itself. The message flows into history (LLM),
30
- * the emit channel, and traces; arg values can carry PII or injection
31
- * payloads. Enum expectations echo SCHEMA values only (already LLM-visible
32
- * in the tools block).
31
+ * ── Why string SHAPE joined the subset ────────────────────────────────────
32
+ * A tool result ended with an offer ("I can also map these ids to volume
33
+ * names"); the person answered "yes please"; the model bound that sentence as
34
+ * the IDENTIFIER argument and dispatched. The tool's schema declared the
35
+ * identifier's shape and this boundary did not read it, so a call that could
36
+ * never succeed cost a round trip — and the consumer hand-rolled an
37
+ * affirmative blocklist to do what the declaration already said. A declared
38
+ * shape a boundary ignores is worse than no declaration: the author believes
39
+ * it is enforced.
40
+ *
41
+ * `pattern` is JSON Schema's own semantics — UNANCHORED, ECMA-262, applied to
42
+ * strings only. A regex the schema author got wrong must never take dispatch
43
+ * with it: it is compiled once, and a compile failure degrades to no-pattern
44
+ * plus one developer warning.
45
+ *
46
+ * ── Security: what an issue may echo ──────────────────────────────────────
47
+ * `type` / `enum` / `required` / `additionalProperties` issues name the PATH,
48
+ * the EXPECTED shape, and the TYPE of what arrived — never the supplied value.
49
+ * Enum expectations echo SCHEMA values only (already LLM-visible in the tools
50
+ * block).
51
+ *
52
+ * String-SHAPE issues are the one exception, and it is a narrow one: the
53
+ * complaint IS the value's shape, so `expected string, got string` teaches
54
+ * nothing and the correction cannot converge. They carry `value` — a capped
55
+ * excerpt ({@link MAX_VALUE_CHARS}) of the offending string — plus `hint`, the
56
+ * parameter's own `description`, which is where an author writes what the
57
+ * identifier looks like. Neither adds exposure: the value is the model's own
58
+ * tool-call argument, already verbatim in the history this message is appended
59
+ * to. The OTel adapter renders `path`/`expected`/`got` only, so third-party
60
+ * telemetry stays value-free either way.
33
61
  */
34
62
  /** When to enforce: 'enforce' rejects before dispatch (default), 'warn'
35
63
  * emits the event but executes anyway, 'off' skips validation entirely. */
36
64
  export type ToolArgValidationMode = 'enforce' | 'warn' | 'off';
37
- /** One schema violation. `got` is a TYPE NAME, never a value. */
65
+ /** One schema violation. `got` is a TYPE NAME (optionally with a measured
66
+ * length), never a value. */
38
67
  export interface ToolArgIssue {
39
68
  /** Dot/bracket path from the args root, '' for the root itself. */
40
69
  readonly path: string;
41
70
  readonly expected: string;
42
71
  readonly got: string;
72
+ /**
73
+ * A capped excerpt of the offending STRING. Present on string-shape issues
74
+ * (`pattern` / `minLength` / `maxLength`) and on nothing else — see the
75
+ * security note in this file's header for why those alone may echo.
76
+ */
77
+ readonly value?: string;
78
+ /**
79
+ * The parameter's own `description` from the schema, when it declares one.
80
+ * Carried on string-shape issues: the description is where an author writes
81
+ * what the identifier looks like, and that sentence is the correction.
82
+ */
83
+ readonly hint?: string;
43
84
  }
44
85
  export interface ToolArgValidationResult {
45
86
  readonly ok: boolean;
@@ -54,10 +95,14 @@ export interface ToolArgValidationResult {
54
95
  */
55
96
  export declare function validateToolArgs(args: unknown, inputSchema: Readonly<Record<string, unknown>> | undefined): ToolArgValidationResult;
56
97
  /**
57
- * Render the MODEL-VISIBLE tool result for a rejected call. Names paths,
58
- * expectations, and received TYPES — never received values. The model
59
- * already has the full schema in its tools block; pointing at the issues
60
- * is what makes the retry converge.
98
+ * Render the MODEL-VISIBLE tool result for a rejected call. Names paths and
99
+ * expectations; reports received TYPES for structural issues and the capped
100
+ * offending VALUE for string-shape ones, because a shape complaint that will
101
+ * not say which string it is about cannot be acted on. `JSON.stringify` quotes
102
+ * and escapes the excerpt, so a multi-line argument stays one line.
103
+ *
104
+ * The parameter's own `description` follows on its own line when the schema
105
+ * declares one: that sentence is usually the whole correction.
61
106
  */
62
107
  export declare function formatToolArgIssues(toolName: string, issues: readonly ToolArgIssue[]): string;
63
108
  //# sourceMappingURL=toolArgsValidation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"toolArgsValidation.d.ts","sourceRoot":"","sources":["../../../../src/core/agent/toolArgsValidation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH;4EAC4E;AAC5E,MAAM,MAAM,qBAAqB,GAAG,SAAS,GAAG,MAAM,GAAG,KAAK,CAAC;AAE/D,iEAAiE;AACjE,MAAM,WAAW,YAAY;IAC3B,mEAAmE;IACnE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,CAAC;CAC1C;AA8ID;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,OAAO,EACb,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,SAAS,GACzD,uBAAuB,CAKzB;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,YAAY,EAAE,GAAG,MAAM,CAY7F"}
1
+ {"version":3,"file":"toolArgsValidation.d.ts","sourceRoot":"","sources":["../../../../src/core/agent/toolArgsValidation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4DG;AAEH;4EAC4E;AAC5E,MAAM,MAAM,qBAAqB,GAAG,SAAS,GAAG,MAAM,GAAG,KAAK,CAAC;AAE/D;8BAC8B;AAC9B,MAAM,WAAW,YAAY;IAC3B,mEAAmE;IACnE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,CAAC;CAC1C;AAwPD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,OAAO,EACb,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,SAAS,GACzD,uBAAuB,CAKzB;AAED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,YAAY,EAAE,GAAG,MAAM,CAgB7F"}
@@ -204,12 +204,17 @@ export interface AgentOptions {
204
204
  * are validated against the tool's declared `inputSchema` BEFORE dispatch.
205
205
  * On mismatch the tool is NOT executed — the model receives a structured
206
206
  * retry message as the tool result (paths + expected shapes + received
207
- * TYPES, never the supplied values) and corrects itself on the next
208
- * iteration. Emits `agentfootprint.validation.args_invalid`.
207
+ * TYPES) and corrects itself on the next iteration. Emits
208
+ * `agentfootprint.validation.args_invalid`.
209
209
  * `'warn'` emits the event but executes anyway; `'off'` disables.
210
210
  * Validation is an honest JSON-Schema subset (type/required/properties/
211
- * items/enum/explicit additionalProperties:false) — unsupported keywords
212
- * are ignored, never false-rejecting.
211
+ * items/enum/explicit additionalProperties:false, plus the string SHAPE
212
+ * keywords pattern/minLength/maxLength) — unsupported keywords are
213
+ * ignored, never false-rejecting.
214
+ *
215
+ * A string-shape refusal quotes a CAPPED excerpt of the offending value
216
+ * and the parameter's own `description`, because "expected string, got
217
+ * string" cannot be acted on; every other issue still names types only.
213
218
  */
214
219
  readonly toolArgValidation?: ToolArgValidationMode;
215
220
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/core/agent/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/core/agent/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,qBAAqB,EACrB,wBAAwB,EACxB,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EACjB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,KAAK,EACV,UAAU,EACV,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,YAAY,EACb,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACvE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAC3E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAI9D;;;;;;;;GAQG;AACH,MAAM,MAAM,uBAAuB,GAAG,IAAI,CAAC,qBAAqB,EAAE,UAAU,CAAC,CAAC;AAE9E;;;;GAIG;AACH,MAAM,MAAM,mBAAmB,GAAG,WAAW,CAAC,wBAAwB,CAAC,iBAAiB,CAAC,CAAC,CAAC;AAE3F;;;;;GAKG;AACH,MAAM,WAAW,qBAAqB;IACpC,0EAA0E;IAC1E,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC;IAC9B;;;;;;;;OAQG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,iBAAiB,CAAC;IACvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAoCG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,GAAG,sBAAsB,CAAC;CACxD;AAED,mEAAmE;AACnE,MAAM,WAAW,sBAAsB;IACrC;;;;;;;OAOG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;IAC/B,qEAAqE;IACrE,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,8DAA8D;IAC9D,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,kEAAkE;IAClE,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC;;;;OAIG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC;IACrC;;;;;OAKG;IACH;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG;QAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IAC5F;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE;QACvB,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;QAC/B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;KACzB,CAAC;IACF;;;;;;;OAOG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IAC/C;;;;;;;;;;;;;;;;OAgBG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,qBAAqB,CAAC;IACnD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAuCG;IACH,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IACrC;;;;;;;;;;;;;;;OAeG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IACxC;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,gBAAgB,CAAC;IACzC;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,gBAAgB,CAAC;IACzC;;;;;;;;;;;;;;;;OAgBG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,mBAAmB,CAAC;IAC/C;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,QAAQ,CAAC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IACtC;;;;;;OAMG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,kBAAkB,CAAC;IAC1C;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,aAAa,GAAG,qBAAqB,CAAC;IAC3D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IACrC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiCG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IAC9C;;;;;;;;;;;;;;;OAeG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,SAAS,GAAG,KAAK,CAAC;IAC9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8CG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IACzC;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,QAAQ,CAAC,uBAAuB,CAAC,EAAE,yBAAyB,CAAC;IAC7D;;;;;;;;;OASG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC;IACzB;;;;;OAKG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC;IACvC;;;;;;;;;;;;;;;OAeG;IACH,QAAQ,CAAC,kBAAkB,CAAC,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAC3D;;;;;;;;OAQG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,eAAe,CAAC;IAC3C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,iBAAiB,CAAC;IAC/D;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IAClD;;;;OAIG;IACH,QAAQ,CAAC,uBAAuB,CAAC,EAAE,uBAAuB,CAAC;CAC5D;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,SAAS;IACxB,+CAA+C;IAC/C,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,0EAA0E;IAC1E,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;CAChC;AAED,iDAAiD;AACjD,MAAM,WAAW,gBAAgB;IAC/B,6CAA6C;IAC7C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,6EAA6E;IAC7E,QAAQ,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAC;IACnC,iFAAiF;IACjF,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,8EAA8E;IAC9E,QAAQ,CAAC,QAAQ,EAAE;QACjB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;KAC/B,CAAC;CACH;AAED;;;GAGG;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,GAAG,EAAE,gBAAgB,KAAK,SAAS,GAAG,SAAS,CAAC;AAE3E,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAEzB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAwCG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAC;IAEnC;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,kBAAkB,CAAC;CAC5C;AAED,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC;AAIjC;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,UAAU;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,SAAS,UAAU,EAAE,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IAKpB,WAAW,EAAE,cAAc,CAAC;IAC5B;;;;;;;;;;;;;OAaG;IACH,iBAAiB,CAAC,EAAE,SAAS,CAAC;IAG9B,WAAW,EAAE,SAAS,UAAU,EAAE,CAAC;IAMnC,UAAU,EAAE,MAAM,CAAC;IAGnB,sBAAsB,EAAE,MAAM,CAAC;IAE/B,sBAAsB,EAAE,SAAS,eAAe,EAAE,CAAC;IACnD,kBAAkB,EAAE,SAAS,eAAe,EAAE,CAAC;IAC/C,eAAe,EAAE,SAAS,eAAe,EAAE,CAAC;IAE5C,gBAAgB,EAAE,MAAM,CAAC;IACzB,kBAAkB,EAAE,SAAS;QAC3B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;QACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;QAKjD,QAAQ,CAAC,YAAY,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;KAC3D,EAAE,CAAC;IAEJ,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,MAAM,CAAC;IAC1B;;;;;;;;;;;;;;OAcG;IACH,cAAc,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAMnD,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,iBAAiB,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAOtD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAS3B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,aAAa,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAClD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAS7B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,oBAAoB,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACzD,uBAAuB,CAAC,EAAE,MAAM,CAAC;IAUjC;;;;;8EAK0E;IAC1E,mBAAmB,CAAC,EAAE,SAAS,kBAAkB,EAAE,CAAC;IAGpD;;;;gFAI4E;IAC5E,cAAc,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;IAC1C;;;;iBAIa;IACb,mBAAmB,CAAC,EAAE;QACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,KAAK,EAAE,YAAY,GAAG,iBAAiB,CAAC;QACjD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC;IACF;;;;;;;;;;;;;OAaG;IACH,mBAAmB,CAAC,EAAE;QACpB,uCAAuC;QACvC,QAAQ,CAAC,KAAK,EAAE,YAAY,GAAG,iBAAiB,CAAC;QACjD,kEAAkE;QAClE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QACvB,yEAAyE;QACzE,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QACvB,2EAA2E;QAC3E,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC1B,mEAAmE;QACnE,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;QAC9B;uEAC+D;QAC/D,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAC;QACrC;2EACmE;QACnE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;KAC5B,CAAC;IAGF;;;;;;iEAM6D;IAC7D,mBAAmB,CAAC,EAAE;QACpB,QAAQ,CAAC,MAAM,EAAE,SAAS,gBAAgB,EAAE,CAAC;QAC7C,2EAA2E;QAC3E,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;KAC7B,CAAC;IACF;;kFAE8E;IAC9E,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAGhC;;;;;;;;;;;;;;;OAeG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;;;;;;;;;OAaG;IACH,iBAAiB,CAAC,EAAE;QAClB,oDAAoD;QACpD,QAAQ,CAAC,MAAM,EAAE,SAAS,gBAAgB,EAAE,CAAC;QAC7C,kEAAkE;QAClE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;QAC5B,qEAAqE;QACrE,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;QAC1B;oCAC4B;QAC5B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;QAC1B,sEAAsE;QACtE,QAAQ,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,GAAG,OAAO,CAAC;KAChD,CAAC;IACF;;sEAEkE;IAClE,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,kBAAkB,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC;IACxC,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,OAAO,CAAC;IACvB;iEAC6D;IAC7D,kBAAkB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACrC;;;;;;;;;;;;;;;OAeG;IACH,YAAY,CAAC,EAAE;QACb,QAAQ,CAAC,MAAM,EAAE,gBAAgB,GAAG,aAAa,CAAC;QAClD,yCAAyC;QACzC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAC3B,mEAAmE;QACnE,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;QAClC,2EAA2E;QAC3E,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;QACjC;;;;;;;;;;;;;;WAcG;QACH,QAAQ,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC;KAC3B,CAAC;IAEF;yEACqE;IACrE,gBAAgB,EAAE,SAAS,eAAe,EAAE,CAAC;IAC7C;sEACkE;IAClE,qBAAqB,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC;;mDAE+C;IAC/C,cAAc,CAAC,EAAE;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,sEAAsE;QACtE,MAAM,CAAC,EAAE,OAAO,kBAAkB,EAAE,gBAAgB,CAAC;KACtD,CAAC;IAQF;;;;0EAIsE;IACtE,WAAW,CAAC,EAAE,aAAa,CAAC;QAC1B,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;QACnB;;+BAEuB;QACvB,MAAM,CAAC,EAAE,OAAO,kBAAkB,EAAE,gBAAgB,CAAC;KACtD,CAAC,CAAC;IACH;;;;;4DAKwD;IACxD,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC;;;;+DAI2D;IAC3D,oBAAoB,EAAE,SAAS,MAAM,EAAE,CAAC;IACxC;4DACwD;IACxD,kBAAkB,EAAE,SAAS,aAAa,EAAE,CAAC;IAE7C;;sEAEkE;IAClE,YAAY,EAAE,SAAS,WAAW,EAAE,CAAC;IACrC,wEAAwE;IACxE,eAAe,EAAE,OAAO,CAAC;IACzB;uEACmE;IACnE,aAAa,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC;;2CAEuC;IACvC,YAAY,EAAE,SAAS,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,CAAC;IAC9C;;;;;sDAKkD;IAClD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;sFAKkF;IAClF,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;;;kFAM8E;IAC9E,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;2EAGuE;IACvE,WAAW,CAAC,EAAE,aAAa,CAAC;QAC1B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;QACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;KAC5B,CAAC,CAAC;IACH;mDAC+C;IAC/C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;+DAI2D;IAC3D,SAAS,CAAC,EAAE,OAAO,6CAA6C,EAAE,SAAS,CAAC;IAC5E;;;;;;;;;;;;;6EAayE;IACzE,WAAW,CAAC,EAAE,OAAO,0CAA0C,EAAE,kBAAkB,CAAC;IACpF;;wCAEoC;IACpC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;oBAGgB;IAChB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B;;;oEAGgE;IAChE,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;;oEAIgE;IAChE,qBAAqB,CAAC,EAAE,OAAO,kBAAkB,EAAE,qBAAqB,CAAC;IACzE;;;4CAGwC;IACxC,iBAAiB,CAAC,EAAE,aAAa,CAAC,OAAO,kBAAkB,EAAE,gBAAgB,CAAC,CAAC;IAE/E;;;;;;;;;OASG;IACH;;;0BAGsB;IACtB,kBAAkB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,aAAa,CAAC,EAAE,OAAO,gCAAgC,EAAE,aAAa,CAAC;IAEvE;;;;;;;;;;;;OAYG;IACH,gBAAgB,CAAC,EAAE,aAAa,CAAC,OAAO,qBAAqB,EAAE,gBAAgB,CAAC,CAAC;IACjF;;;;;;;;;;;;OAYG;IACH,UAAU,CAAC,EAAE,aAAa,CAAC,OAAO,4CAA4C,EAAE,cAAc,CAAC,CAAC;IAGhG;;;;;;kDAM8C;IAC9C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;4EACwE;IACxE,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAG9B;;;;;;;;;;;;;;;2DAeuD;IACvD,WAAW,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;IACtC;;;;;;;;;;;;yEAYqE;IACrE,WAAW,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IAGpC;;;;0EAIsE;IACtE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;0BAEsB;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,qEAAqE;IACrE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,cAAc,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACnD,yCAAyC;IACzC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,kEAAkE;IAClE,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAG7B;;;6EAGyE;IACzE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;0CAIsC;IACtC,cAAc,EAAE,SAAS,aAAa,EAAE,CAAC;IAGzC;;;;;;iFAM6E;IAC7E,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,sBAAsB,CAAC,EAAE,gBAAgB,CAAC,aAAa,CAAC,CAAC;IACzD,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B;kEAC8D;IAC9D,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,wBAAwB,CAAC,EAAE,MAAM,CAAC;CACnC"}
@@ -951,6 +951,15 @@ export interface ValidationArgsInvalidPayload {
951
951
  readonly path: string;
952
952
  readonly expected: string;
953
953
  readonly got: string;
954
+ /**
955
+ * A capped excerpt of the offending STRING — present on string-shape
956
+ * issues (`pattern` / `minLength` / `maxLength`) only, where the
957
+ * complaint IS the value's shape. Structural issues (type, enum,
958
+ * required, additionalProperties) still carry no value at all.
959
+ */
960
+ readonly value?: string;
961
+ /** The parameter's own schema `description`, when it declares one. */
962
+ readonly hint?: string;
954
963
  }>;
955
964
  readonly enforced: boolean;
956
965
  }