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
@@ -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,25 +16,136 @@
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
  /** Cap so a pathological schema/args pair can't flood history or events. */
35
63
  const MAX_ISSUES = 10;
64
+ /** Ceiling on the echoed excerpt of an offending string. Enough to recognize
65
+ * a sentence bound where an identifier belonged; short enough that a 5 MB
66
+ * argument cannot ride the message into history. */
67
+ const MAX_VALUE_CHARS = 80;
68
+ /**
69
+ * Ceiling on compiled `pattern`s held. Schemas are finite in a process, so
70
+ * this is a fence against dynamically-minted ones rather than a tuning knob:
71
+ * past it, patterns compile per call (and a broken one warns again) instead of
72
+ * the map growing without bound.
73
+ */
74
+ const MAX_CACHED_PATTERNS = 256;
75
+ /**
76
+ * Compiled `pattern`s, and the warn-once ledger for the broken ones. A `null`
77
+ * entry means "this pattern does not compile" — recorded so a schema bug is
78
+ * reported once to the developer rather than once per dispatch.
79
+ */
80
+ const patternCache = new Map();
81
+ function compilePattern(pattern) {
82
+ const cached = patternCache.get(pattern);
83
+ if (cached !== undefined)
84
+ return cached;
85
+ let compiled = null;
86
+ try {
87
+ // No flags: JSON Schema `pattern` is an unanchored ECMA-262 match, and a
88
+ // `g` flag would make the RegExp stateful across calls.
89
+ compiled = new RegExp(pattern);
90
+ }
91
+ catch {
92
+ console.warn(`[agentfootprint] a tool inputSchema declares a \`pattern\` that is not a valid regular ` +
93
+ `expression (${pattern}) — it is IGNORED, so this argument's shape is NOT enforced. ` +
94
+ `Fix the expression or drop the keyword.`);
95
+ }
96
+ if (patternCache.size < MAX_CACHED_PATTERNS)
97
+ patternCache.set(pattern, compiled);
98
+ return compiled;
99
+ }
100
+ /** A length bound this validator will act on: a non-negative integer. Anything
101
+ * else is outside the honest subset and ignored rather than guessed at. */
102
+ function lengthBound(raw) {
103
+ return typeof raw === 'number' && Number.isInteger(raw) && raw >= 0 ? raw : undefined;
104
+ }
105
+ function excerptOf(value) {
106
+ return value.length <= MAX_VALUE_CHARS ? value : `${value.slice(0, MAX_VALUE_CHARS)}…`;
107
+ }
108
+ function descriptionOf(schema) {
109
+ const raw = schema.description;
110
+ if (typeof raw !== 'string')
111
+ return undefined;
112
+ const trimmed = raw.trim();
113
+ return trimmed === '' ? undefined : trimmed;
114
+ }
115
+ /**
116
+ * The string SHAPE keywords. At most ONE issue per argument: `pattern`
117
+ * describes the value completely, so adding "and it is too short" is a second
118
+ * sentence about one mistake.
119
+ */
120
+ function checkStringShape(value, schema, path, issues) {
121
+ const hint = descriptionOf(schema);
122
+ const teach = (expected, got) => {
123
+ issues.push({
124
+ path,
125
+ expected,
126
+ got,
127
+ value: excerptOf(value),
128
+ ...(hint !== undefined && { hint }),
129
+ });
130
+ };
131
+ const pattern = schema.pattern;
132
+ if (typeof pattern === 'string') {
133
+ const regex = compilePattern(pattern);
134
+ if (regex !== null && !regex.test(value)) {
135
+ teach(`a string matching ${pattern}`, 'string');
136
+ return;
137
+ }
138
+ }
139
+ const min = lengthBound(schema.minLength);
140
+ if (min !== undefined && value.length < min) {
141
+ teach(`a string of at least ${min} characters`, `string of length ${value.length}`);
142
+ return;
143
+ }
144
+ const max = lengthBound(schema.maxLength);
145
+ if (max !== undefined && value.length > max) {
146
+ teach(`a string of at most ${max} characters`, `string of length ${value.length}`);
147
+ }
148
+ }
36
149
  function typeNameOf(value) {
37
150
  if (value === null)
38
151
  return 'null';
@@ -94,6 +207,12 @@ function validateNode(value, schema, path, issues) {
94
207
  return;
95
208
  }
96
209
  }
210
+ // String SHAPE — same place, same dial, same result shape as `type`/`enum`
211
+ // above. Applies to strings only, which is JSON Schema's own rule.
212
+ if (typeof value === 'string') {
213
+ checkStringShape(value, schema, path, issues);
214
+ return;
215
+ }
97
216
  // Object keywords.
98
217
  if (typeof value === 'object' && value !== null && !Array.isArray(value)) {
99
218
  const record = value;
@@ -169,17 +288,22 @@ export function validateToolArgs(args, inputSchema) {
169
288
  return { ok: issues.length === 0, issues };
170
289
  }
171
290
  /**
172
- * Render the MODEL-VISIBLE tool result for a rejected call. Names paths,
173
- * expectations, and received TYPES — never received values. The model
174
- * already has the full schema in its tools block; pointing at the issues
175
- * is what makes the retry converge.
291
+ * Render the MODEL-VISIBLE tool result for a rejected call. Names paths and
292
+ * expectations; reports received TYPES for structural issues and the capped
293
+ * offending VALUE for string-shape ones, because a shape complaint that will
294
+ * not say which string it is about cannot be acted on. `JSON.stringify` quotes
295
+ * and escapes the excerpt, so a multi-line argument stays one line.
296
+ *
297
+ * The parameter's own `description` follows on its own line when the schema
298
+ * declares one: that sentence is usually the whole correction.
176
299
  */
177
300
  export function formatToolArgIssues(toolName, issues) {
178
301
  const lines = issues.map((issue) => {
179
302
  const where = issue.path === '' ? 'arguments' : `'${issue.path}'`;
180
- return issue.expected === 'required'
303
+ const head = issue.expected === 'required'
181
304
  ? `- ${where} is required but missing`
182
- : `- ${where}: expected ${issue.expected}, got ${issue.got}`;
305
+ : `- ${where}: expected ${issue.expected}, got ${issue.value === undefined ? issue.got : JSON.stringify(issue.value)}`;
306
+ return issue.hint === undefined ? head : `${head}\n ${where} is described as: ${issue.hint}`;
183
307
  });
184
308
  return (`Invalid arguments for tool '${toolName}' — the call was not executed.\n` +
185
309
  `${lines.join('\n')}\n` +
@@ -1 +1 @@
1
- {"version":3,"file":"toolArgsValidation.js","sourceRoot":"","sources":["../../../../src/core/agent/toolArgsValidation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"toolArgsValidation.js","sourceRoot":"","sources":["../../../../src/core/agent/toolArgsValidation.ts"],"names":[],"mappings":"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"}
@@ -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
  /**
@@ -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
  }
@@ -480,4 +480,47 @@ export declare class SessionsNotCarriedError extends Error {
480
480
  * // or branch instead of insisting:
481
481
  * if (host.capabilities.includes('streaming')) { ... }
482
482
  */
483
+ /**
484
+ * Thrown when a request body exceeds the ceiling the host was given.
485
+ *
486
+ * A body is memory this process pays for while somebody else fills it, so a
487
+ * host with a ceiling stops reading at it rather than discovering the limit as
488
+ * an out-of-memory kill. The read is abandoned at the byte that crossed the
489
+ * line — nothing further is buffered, and the bytes already read are dropped.
490
+ *
491
+ * There is no default ceiling: see `HttpHostOptions.maxBodyBytes` for why the
492
+ * absence is deliberate and what it costs.
493
+ */
494
+ export declare class RequestTooLargeError extends Error {
495
+ readonly limitBytes: number;
496
+ readonly code: "ERR_REQUEST_TOO_LARGE";
497
+ constructor(limitBytes: number, hostName: string);
498
+ }
499
+ /**
500
+ * A dialect's refusal of THIS request — its own status, its own code.
501
+ *
502
+ * `readRequest` is a wire's one chance to look at a body before a turn is paid
503
+ * for, and some dialects can tell from the shape alone that they cannot serve
504
+ * it: an input item kind this dialect does not carry, a field whose type is
505
+ * wrong. Throwing this says so with a status the caller can act on, instead of
506
+ * a 500 that reads as "the server broke" for a request the caller could fix.
507
+ *
508
+ * The distinction it keeps: this is the REQUEST being wrong. A dialect that
509
+ * throws anything else from `readRequest` still gets that request's 500, which
510
+ * is the honest answer when the dialect itself is what failed.
511
+ *
512
+ * @example A dialect refusing an input kind it does not carry
513
+ * throw new WireRequestRefusal(
514
+ * 'unsupported_input',
515
+ * 'image input is not carried by this dialect',
516
+ * );
517
+ */
518
+ export declare class WireRequestRefusal extends Error {
519
+ readonly code: string;
520
+ /** HTTP status for this refusal. Default 400 — the request is what is wrong. */
521
+ readonly status: number;
522
+ constructor(code: string, detail: string,
523
+ /** HTTP status for this refusal. Default 400 — the request is what is wrong. */
524
+ status?: number);
525
+ }
483
526
  export declare function requireCapability(host: AgentHost | ConversationHost, capability: HostCapability): void;
@@ -718,6 +718,58 @@ export class SessionsNotCarriedError extends Error {
718
718
  * // or branch instead of insisting:
719
719
  * if (host.capabilities.includes('streaming')) { ... }
720
720
  */
721
+ /**
722
+ * Thrown when a request body exceeds the ceiling the host was given.
723
+ *
724
+ * A body is memory this process pays for while somebody else fills it, so a
725
+ * host with a ceiling stops reading at it rather than discovering the limit as
726
+ * an out-of-memory kill. The read is abandoned at the byte that crossed the
727
+ * line — nothing further is buffered, and the bytes already read are dropped.
728
+ *
729
+ * There is no default ceiling: see `HttpHostOptions.maxBodyBytes` for why the
730
+ * absence is deliberate and what it costs.
731
+ */
732
+ export class RequestTooLargeError extends Error {
733
+ limitBytes;
734
+ code = 'ERR_REQUEST_TOO_LARGE';
735
+ constructor(limitBytes, hostName) {
736
+ super(`[hosting] the '${hostName}' host refuses a request body over ${String(limitBytes)} ` +
737
+ `bytes. Raise maxBodyBytes if this deployment genuinely carries larger requests.`);
738
+ this.limitBytes = limitBytes;
739
+ this.name = 'RequestTooLargeError';
740
+ }
741
+ }
742
+ /**
743
+ * A dialect's refusal of THIS request — its own status, its own code.
744
+ *
745
+ * `readRequest` is a wire's one chance to look at a body before a turn is paid
746
+ * for, and some dialects can tell from the shape alone that they cannot serve
747
+ * it: an input item kind this dialect does not carry, a field whose type is
748
+ * wrong. Throwing this says so with a status the caller can act on, instead of
749
+ * a 500 that reads as "the server broke" for a request the caller could fix.
750
+ *
751
+ * The distinction it keeps: this is the REQUEST being wrong. A dialect that
752
+ * throws anything else from `readRequest` still gets that request's 500, which
753
+ * is the honest answer when the dialect itself is what failed.
754
+ *
755
+ * @example A dialect refusing an input kind it does not carry
756
+ * throw new WireRequestRefusal(
757
+ * 'unsupported_input',
758
+ * 'image input is not carried by this dialect',
759
+ * );
760
+ */
761
+ export class WireRequestRefusal extends Error {
762
+ code;
763
+ status;
764
+ constructor(code, detail,
765
+ /** HTTP status for this refusal. Default 400 — the request is what is wrong. */
766
+ status = 400) {
767
+ super(`[hosting] ${detail}`);
768
+ this.code = code;
769
+ this.status = status;
770
+ this.name = 'WireRequestRefusal';
771
+ }
772
+ }
721
773
  export function requireCapability(host, capability) {
722
774
  if (host.capabilities.includes(capability))
723
775
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/hosting/errors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/hosting/errors.ts"],"names":[],"mappings":"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"}
@@ -90,6 +90,72 @@ export interface HttpRequestFacts {
90
90
  * going out as one body or as a stream of frames — those are {@link httpHost}'s
91
91
  * job, identical for every wire, which is the entire point of separating them.
92
92
  */
93
+ /**
94
+ * One Server-Sent Event: the name it is announced under, and the body that
95
+ * rides with it.
96
+ */
97
+ /**
98
+ * Where a failure came from.
99
+ *
100
+ * `'refused'` is the handler CHOOSING to fail with words it picked for the
101
+ * caller. `'threw'` is an exception this host caught — the message is the
102
+ * author's note to their own logs, and may name a query, a path or a token.
103
+ *
104
+ * The distinction exists because a dialect that sanitises has to sanitise the
105
+ * right one: replacing both silences deliberate refusals, and replacing
106
+ * neither publishes stack-trace prose to whoever is on the other end.
107
+ */
108
+ export type FailureOrigin = 'refused' | 'threw';
109
+ export interface StreamFrame {
110
+ readonly event: string;
111
+ readonly data: unknown;
112
+ }
113
+ /**
114
+ * The frames ONE streaming response is made of.
115
+ *
116
+ * ── Why this exists ──────────────────────────────────────────────────────────
117
+ * A wire's body methods answer "what do the fields say". This answers a
118
+ * different question: "what SHAPE is a stream". This host's own dialect frames
119
+ * one homogeneous `chunk` per piece and one terminal frame, and that is a real
120
+ * shape — but it is not the only one. Several protocols in wide use frame a
121
+ * stream as a LIFECYCLE instead: named events that open a response, announce
122
+ * that output is beginning, carry deltas, close each part, and close the
123
+ * response — every event referring to one response object by id, often
124
+ * numbered.
125
+ *
126
+ * Those cannot be expressed as "a body shape per chunk", because one host
127
+ * lifecycle point becomes SEVERAL frames, and because the frames share state
128
+ * (an id minted once, a counter that only goes up). So a dialect that frames
129
+ * this way supplies one of these PER RESPONSE and keeps that state in it.
130
+ *
131
+ * ── The default is one of these ──────────────────────────────────────────────
132
+ * A wire that supplies none gets framing built from its own body methods —
133
+ * `chunk`/`complete`/`error`, exactly as before. The incumbent shape is an
134
+ * INSTANCE of this seam rather than a special case beside it, which is the
135
+ * reason to believe the seam is in the right place.
136
+ */
137
+ export interface StreamFraming {
138
+ /**
139
+ * Frames to write the moment the stream opens, before the handler runs.
140
+ * Absent or empty means the stream announces itself with nothing, which is
141
+ * this host's own behaviour.
142
+ */
143
+ open?(): readonly StreamFrame[];
144
+ /** Frames for one piece of streamed output. */
145
+ chunk(text: string): readonly StreamFrame[];
146
+ /** Frames that close a response that completed. */
147
+ complete(output: string): readonly StreamFrame[];
148
+ /** Frames that close a response that failed. */
149
+ failure(message: string, code?: string, origin?: FailureOrigin): readonly StreamFrame[];
150
+ /**
151
+ * Frames that close a response ending in one of the other terminals. Absent
152
+ * means the single-frame default, so a framing written for text alone keeps
153
+ * working when an artifact or a paused run comes back through it.
154
+ */
155
+ awaiting?(pending: PendingAsk): readonly StreamFrame[];
156
+ artifact?(result: ArtifactWireResult): readonly StreamFrame[];
157
+ sessions?(result: SessionWireResult): readonly StreamFrame[];
158
+ }
93
159
  export interface HttpWire {
94
160
  /**
95
161
  * Pull the port's vocabulary out of one request. Anything the wire cannot
@@ -151,12 +217,47 @@ export interface HttpWire {
151
217
  */
152
218
  readonly responseHeaders?: Readonly<Record<string, string>>;
153
219
  };
220
+ /**
221
+ * Did THIS caller ask for a stream?
222
+ *
223
+ * Absent, the answer is the HTTP one: an `Accept` of `text/event-stream`.
224
+ * That is the right default and the wrong rule for dialects that carry the
225
+ * choice in the body instead — where a client sets a field and never touches
226
+ * `Accept`, and a host reading only the header answers one JSON body to a
227
+ * caller waiting for events.
228
+ *
229
+ * Present, this is the whole answer: a dialect that says how its callers ask
230
+ * is not second-guessed by the header. Read before any reply is framed, so it
231
+ * decides `content-type` for the request.
232
+ */
233
+ wantsStream?(facts: HttpRequestFacts): boolean;
234
+ /**
235
+ * Framing for ONE streaming response — see {@link StreamFraming}.
236
+ *
237
+ * Called once per streaming request, so whatever the framing has to remember
238
+ * across its frames (an id minted for this response, a sequence counter) is
239
+ * per-response state and never shared between callers. Absent, this host
240
+ * frames the stream with the wire's own body shapes.
241
+ */
242
+ stream?(facts: HttpRequestFacts): StreamFraming;
154
243
  /** Body for a health probe. `uptimeMs` is how long this host has been serving. */
155
244
  health(uptimeMs: number): unknown;
156
- /** Body for a reply that completed. */
157
- output(output: string): unknown;
158
- /** Body for a reply that failed. `code` is the refusal's stable code, when it has one. */
159
- failure(message: string, code?: string): unknown;
245
+ /**
246
+ * Body for a reply that completed.
247
+ *
248
+ * `facts` is the request that produced it, for dialects whose reply repeats
249
+ * something the request said — a model name, a conversation id. Absent only
250
+ * where there is no request to show: this host has none to give when a body
251
+ * is built outside a request's own lifecycle.
252
+ */
253
+ output(output: string, facts?: HttpRequestFacts): unknown;
254
+ /**
255
+ * Body for a reply that failed. `code` is the refusal's stable code, when it
256
+ * has one — and its PRESENCE is the signal that the message was authored by
257
+ * this library rather than thrown by somebody's handler, which is what lets a
258
+ * dialect decide what is safe to repeat to a caller.
259
+ */
260
+ failure(message: string, code?: string, facts?: HttpRequestFacts, origin?: FailureOrigin): unknown;
160
261
  /** Body for one streamed piece, when the caller asked for Server-Sent Events. */
161
262
  chunk(text: string): unknown;
162
263
  /**
@@ -355,6 +456,34 @@ export interface HttpHostOptions {
355
456
  * });
356
457
  */
357
458
  readonly onUnhandled?: (req: IncomingMessage, res: ServerResponse) => void;
459
+ /**
460
+ * Ceiling on a request body, in bytes. Default: **none**.
461
+ *
462
+ * ── Why the default is no ceiling ────────────────────────────────────────
463
+ * Not because unbounded is right — it is not. A body is memory this process
464
+ * pays for while somebody else fills it, and a host without a ceiling can be
465
+ * stopped by one caller with a large POST. The default is absent because
466
+ * every adapter built on this file inherited unbounded reads before this
467
+ * option existed, and a number chosen here would silently start refusing
468
+ * requests that deployments are serving today.
469
+ *
470
+ * **Set it.** A deployment that knows the largest body it legitimately
471
+ * carries should say so; a request over the line is refused with
472
+ * `ERR_REQUEST_TOO_LARGE` (413) and the read is abandoned at the byte that
473
+ * crossed it, rather than buffered to the end and then judged.
474
+ */
475
+ readonly maxBodyBytes?: number;
476
+ /**
477
+ * Answer `HEAD` on the invoke path with 204, instead of the 404 an unowned
478
+ * method gets. Default `false`.
479
+ *
480
+ * Some deployment contracts probe a door before using it — "is the agent
481
+ * here?" — and a probe is not a turn: nothing is read, nothing is run, and
482
+ * the body is empty by definition. Opt-in, because a host that answered it
483
+ * unasked would change what every existing adapter says to a method it has
484
+ * always declined.
485
+ */
486
+ readonly invokeHeadProbe?: boolean;
358
487
  }
359
488
  /** A {@link HostHandle} that also says where it landed. */
360
489
  export interface HttpHostHandle extends HostHandle {