@skyold/model-protocol 0.1.0-beta.0 → 0.1.0-beta.2

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.
@@ -1,5 +1,8 @@
1
1
  import { openAiResponsesSafeErrorFactsV1 } from './openai-responses-egress.js';
2
2
  export function encodeOpenAiResponsesStreamEventV1(event) {
3
+ if (event.providerWire !== undefined && isSafeProviderWireEvent(event.type)) {
4
+ return event.providerWire;
5
+ }
3
6
  const type = (event.type === 'output.content_part.added' ||
4
7
  event.type === 'output.content_part.completed') &&
5
8
  event.part.type === 'reasoning_summary'
@@ -10,6 +13,8 @@ export function encodeOpenAiResponsesStreamEventV1(event) {
10
13
  const base = { type, sequence_number: event.sequenceNumber };
11
14
  let data;
12
15
  switch (event.type) {
16
+ case 'provider.passthrough':
17
+ return encodeOpenAiResponsesStreamFailureV1(undefined, event.sequenceNumber, 'PROVIDER_RESPONSE_INVALID');
13
18
  case 'response.started':
14
19
  data = { ...base, response: { id: event.responseId, status: 'in_progress' } };
15
20
  break;
@@ -155,6 +160,31 @@ export function encodeOpenAiResponsesStreamEventV1(event) {
155
160
  }
156
161
  return `event: ${type}\ndata: ${JSON.stringify(data)}\n\n`;
157
162
  }
163
+ function isSafeProviderWireEvent(type) {
164
+ const safeEvents = {
165
+ 'provider.passthrough': false,
166
+ 'response.started': true,
167
+ 'response.in_progress': true,
168
+ 'output.item.added': true,
169
+ 'output.item.completed': true,
170
+ 'output.content_part.added': true,
171
+ 'output.content_part.completed': true,
172
+ 'output.text.delta': true,
173
+ 'output.text.completed': true,
174
+ 'output.refusal.delta': true,
175
+ 'output.refusal.completed': true,
176
+ 'output.tool_call.delta': true,
177
+ 'output.tool_call.completed': true,
178
+ 'output.reasoning_summary.delta': true,
179
+ 'output.reasoning_summary.completed': true,
180
+ 'usage.updated': true,
181
+ 'response.completed': true,
182
+ 'response.incomplete': true,
183
+ 'response.failed': false,
184
+ 'response.cancelled': false,
185
+ };
186
+ return safeEvents[type];
187
+ }
158
188
  export function encodeOpenAiResponsesStreamFailureV1(responseId, sequenceNumber, code) {
159
189
  const error = openAiResponsesSafeErrorFactsV1(code);
160
190
  if (responseId) {
@@ -174,6 +204,7 @@ export function encodeOpenAiResponsesStreamFailureV1(responseId, sequenceNumber,
174
204
  }
175
205
  function responsesEventType(type) {
176
206
  const names = {
207
+ 'provider.passthrough': 'provider.passthrough',
177
208
  'response.started': 'response.created',
178
209
  'response.in_progress': 'response.in_progress',
179
210
  'output.item.added': 'response.output_item.added',
@@ -1 +1 @@
1
- {"version":3,"file":"openai-responses-stream-egress.js","sourceRoot":"","sources":["../src/openai-responses-stream-egress.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,+BAA+B,EAAE,MAAM,8BAA8B,CAAC;AAE/E,MAAM,UAAU,kCAAkC,CAAC,KAA8B;IAC/E,MAAM,IAAI,GACR,CAAC,KAAK,CAAC,IAAI,KAAK,2BAA2B;QACzC,KAAK,CAAC,IAAI,KAAK,+BAA+B,CAAC;QACjD,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,mBAAmB;QACrC,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,2BAA2B;YAC1C,CAAC,CAAC,uCAAuC;YACzC,CAAC,CAAC,sCAAsC;QAC1C,CAAC,CAAC,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACrC,MAAM,IAAI,GAAG,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,CAAC,cAAc,EAAE,CAAC;IAC7D,IAAI,IAA6B,CAAC;IAClC,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,kBAAkB;YACrB,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,CAAC;YAC9E,MAAM;QACR,KAAK,sBAAsB;YACzB,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;YAC7E,MAAM;QACR,KAAK,mBAAmB;YACtB,IAAI,GAAG;gBACL,GAAG,IAAI;gBACP,YAAY,EAAE,KAAK,CAAC,WAAW;gBAC/B,IAAI,EAAE,gBAAgB,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,CAAC,QAAQ,CAAC;aAChF,CAAC;YACF,MAAM;QACR,KAAK,uBAAuB;YAC1B,IAAI,GAAG;gBACL,GAAG,IAAI;gBACP,YAAY,EAAE,KAAK,CAAC,WAAW;gBAC/B,IAAI,EAAE,gBAAgB,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC;aAC/E,CAAC;YACF,MAAM;QACR,KAAK,2BAA2B,CAAC;QACjC,KAAK,+BAA+B;YAClC,IAAI,GAAG;gBACL,GAAG,IAAI;gBACP,OAAO,EAAE,KAAK,CAAC,MAAM;gBACrB,YAAY,EAAE,KAAK,CAAC,WAAW;gBAC/B,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,mBAAmB;oBACzC,CAAC,CAAC,EAAE,aAAa,EAAE,KAAK,CAAC,YAAY,EAAE;oBACvC,CAAC,CAAC,EAAE,aAAa,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC;gBAC1C,IAAI,EAAE,iBAAiB,CAAC,KAAK,CAAC,IAAI,CAAC;aACpC,CAAC;YACF,MAAM;QACR,KAAK,mBAAmB,CAAC;QACzB,KAAK,sBAAsB;YACzB,IAAI,GAAG;gBACL,GAAG,IAAI;gBACP,OAAO,EAAE,KAAK,CAAC,MAAM;gBACrB,YAAY,EAAE,KAAK,CAAC,WAAW;gBAC/B,aAAa,EAAE,KAAK,CAAC,YAAY;gBACjC,KAAK,EAAE,KAAK,CAAC,KAAK;aACnB,CAAC;YACF,MAAM;QACR,KAAK,uBAAuB;YAC1B,IAAI,GAAG;gBACL,GAAG,IAAI;gBACP,OAAO,EAAE,KAAK,CAAC,MAAM;gBACrB,YAAY,EAAE,KAAK,CAAC,WAAW;gBAC/B,aAAa,EAAE,KAAK,CAAC,YAAY;gBACjC,IAAI,EAAE,KAAK,CAAC,IAAI;aACjB,CAAC;YACF,MAAM;QACR,KAAK,0BAA0B;YAC7B,IAAI,GAAG;gBACL,GAAG,IAAI;gBACP,OAAO,EAAE,KAAK,CAAC,MAAM;gBACrB,YAAY,EAAE,KAAK,CAAC,WAAW;gBAC/B,aAAa,EAAE,KAAK,CAAC,YAAY;gBACjC,OAAO,EAAE,KAAK,CAAC,OAAO;aACvB,CAAC;YACF,MAAM;QACR,KAAK,wBAAwB;YAC3B,IAAI,GAAG;gBACL,GAAG,IAAI;gBACP,OAAO,EAAE,KAAK,CAAC,MAAM;gBACrB,YAAY,EAAE,KAAK,CAAC,WAAW;gBAC/B,OAAO,EAAE,KAAK,CAAC,MAAM;gBACrB,KAAK,EAAE,KAAK,CAAC,cAAc;aAC5B,CAAC;YACF,MAAM;QACR,KAAK,4BAA4B;YAC/B,IAAI,GAAG;gBACL,GAAG,IAAI;gBACP,OAAO,EAAE,KAAK,CAAC,MAAM;gBACrB,YAAY,EAAE,KAAK,CAAC,WAAW;gBAC/B,OAAO,EAAE,KAAK,CAAC,MAAM;gBACrB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,SAAS,EAAE,KAAK,CAAC,SAAS;aAC3B,CAAC;YACF,MAAM;QACR,KAAK,gCAAgC;YACnC,IAAI,GAAG;gBACL,GAAG,IAAI;gBACP,OAAO,EAAE,KAAK,CAAC,MAAM;gBACrB,YAAY,EAAE,KAAK,CAAC,WAAW;gBAC/B,aAAa,EAAE,KAAK,CAAC,YAAY;gBACjC,KAAK,EAAE,KAAK,CAAC,KAAK;aACnB,CAAC;YACF,MAAM;QACR,KAAK,oCAAoC;YACvC,IAAI,GAAG;gBACL,GAAG,IAAI;gBACP,OAAO,EAAE,KAAK,CAAC,MAAM;gBACrB,YAAY,EAAE,KAAK,CAAC,WAAW;gBAC/B,aAAa,EAAE,KAAK,CAAC,YAAY;gBACjC,IAAI,EAAE,KAAK,CAAC,IAAI;aACjB,CAAC;YACF,MAAM;QACR,KAAK,oBAAoB;YACvB,IAAI,GAAG;gBACL,GAAG,IAAI;gBACP,QAAQ,EAAE;oBACR,EAAE,EAAE,KAAK,CAAC,UAAU;oBACpB,MAAM,EAAE,WAAW;oBACnB,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC5D;aACF,CAAC;YACF,MAAM;QACR,KAAK,qBAAqB;YACxB,IAAI,GAAG;gBACL,GAAG,IAAI;gBACP,QAAQ,EAAE;oBACR,EAAE,EAAE,KAAK,CAAC,UAAU;oBACpB,MAAM,EAAE,YAAY;oBACpB,kBAAkB,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE;oBAC5C,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC5D;aACF,CAAC;YACF,MAAM;QACR,KAAK,iBAAiB;YACpB,IAAI,GAAG;gBACL,GAAG,IAAI;gBACP,QAAQ,EAAE;oBACR,EAAE,EAAE,KAAK,CAAC,UAAU;oBACpB,MAAM,EAAE,QAAQ;oBAChB,KAAK,EAAE,+BAA+B,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC;oBACxD,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC5D;aACF,CAAC;YACF,MAAM;QACR,KAAK,oBAAoB;YACvB,IAAI,GAAG;gBACL,GAAG,IAAI;gBACP,QAAQ,EAAE;oBACR,EAAE,EAAE,KAAK,CAAC,UAAU;oBACpB,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC5D;aACF,CAAC;YACF,MAAM;QACR,KAAK,eAAe;YAClB,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,WAAW,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YACnF,MAAM;IACV,CAAC;IACD,OAAO,UAAU,IAAI,WAAW,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC;AAC7D,CAAC;AAED,MAAM,UAAU,oCAAoC,CAClD,UAA8B,EAC9B,cAAsB,EACtB,IAAwB;IAExB,MAAM,KAAK,GAAG,+BAA+B,CAAC,IAAI,CAAC,CAAC;IACpD,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,IAAI,GAAG;YACX,IAAI,EAAE,iBAAiB;YACvB,eAAe,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,CAAC;YAC5C,QAAQ,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE;SACtD,CAAC;QACF,OAAO,iCAAiC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC;IACrE,CAAC;IACD,MAAM,IAAI,GAAG;QACX,IAAI,EAAE,OAAO;QACb,eAAe,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,CAAC;QAC5C,KAAK,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE;KACtC,CAAC;IACF,OAAO,uBAAuB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC;AAC3D,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAqC;IAC/D,MAAM,KAAK,GAAoD;QAC7D,kBAAkB,EAAE,kBAAkB;QACtC,sBAAsB,EAAE,sBAAsB;QAC9C,mBAAmB,EAAE,4BAA4B;QACjD,uBAAuB,EAAE,2BAA2B;QACpD,2BAA2B,EAAE,6BAA6B;QAC1D,+BAA+B,EAAE,4BAA4B;QAC7D,mBAAmB,EAAE,4BAA4B;QACjD,uBAAuB,EAAE,2BAA2B;QACpD,sBAAsB,EAAE,wBAAwB;QAChD,0BAA0B,EAAE,uBAAuB;QACnD,wBAAwB,EAAE,wCAAwC;QAClE,4BAA4B,EAAE,uCAAuC;QACrE,gCAAgC,EAAE,uCAAuC;QACzE,oCAAoC,EAAE,sCAAsC;QAC5E,eAAe,EAAE,wBAAwB;QACzC,oBAAoB,EAAE,oBAAoB;QAC1C,qBAAqB,EAAE,qBAAqB;QAC5C,iBAAiB,EAAE,iBAAiB;QACpC,oBAAoB,EAAE,oBAAoB;KAC3C,CAAC;IACF,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC;AACrB,CAAC;AAED,SAAS,gBAAgB,CACvB,IAA4B,EAC5B,EAAU,EACV,MAAkD,EAClD,QAAqF;IAErF,IAAI,QAAQ,KAAK,eAAe,EAAE,CAAC;QACjC,IAAI,IAAI,CAAC,IAAI,KAAK,eAAe;YAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;QAC3F,OAAO;YACL,EAAE;YACF,IAAI,EAAE,eAAe;YACrB,MAAM;YACN,OAAO,EAAE,IAAI,CAAC,MAAM;YACpB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC;IACJ,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IACrF,IAAI,QAAQ,KAAK,WAAW,EAAE,CAAC;QAC7B,OAAO;YACL,EAAE;YACF,IAAI,EAAE,WAAW;YACjB,MAAM;YACN,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;SAC7C,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,CAAC;AACvF,CAAC;AAED,SAAS,iBAAiB,CAAC,IAA6B;IACtD,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS;QAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;IAC5E,IAAI,IAAI,CAAC,IAAI,KAAK,mBAAmB;QAAE,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;IACxF,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;AAClD,CAAC;AAED,SAAS,WAAW,CAAC,KAAwB;IAC3C,OAAO;QACL,GAAG,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/E,GAAG,CAAC,KAAK,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAClF,GAAG,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/E,GAAG,CAAC,KAAK,CAAC,iBAAiB;YACzB,CAAC,CAAC,EAAE,oBAAoB,EAAE,EAAE,aAAa,EAAE,KAAK,CAAC,iBAAiB,CAAC,YAAY,IAAI,CAAC,EAAE,EAAE;YACxF,CAAC,CAAC,KAAK,CAAC,iBAAiB,KAAK,SAAS;gBACrC,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,oBAAoB,EAAE,EAAE,aAAa,EAAE,KAAK,CAAC,iBAAiB,EAAE,EAAE,CAAC;QAC3E,GAAG,CAAC,KAAK,CAAC,kBAAkB;YAC1B,CAAC,CAAC;gBACE,qBAAqB,EAAE;oBACrB,gBAAgB,EAAE,KAAK,CAAC,kBAAkB,CAAC,eAAe,IAAI,CAAC;iBAChE;aACF;YACH,CAAC,CAAC,KAAK,CAAC,qBAAqB,KAAK,SAAS;gBACzC,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,qBAAqB,EAAE,EAAE,gBAAgB,EAAE,KAAK,CAAC,qBAAqB,EAAE,EAAE,CAAC;KACpF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"openai-responses-stream-egress.js","sourceRoot":"","sources":["../src/openai-responses-stream-egress.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"provider-transport.d.ts","sourceRoot":"","sources":["../src/provider-transport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,wBAAwB,EACxB,yBAAyB,EAC1B,MAAM,iBAAiB,CAAC;AAEzB,eAAO,MAAM,0BAA0B,+BAA+B,CAAC;AACvE,eAAO,MAAM,kCAAkC,QAAoB,CAAC;AAmBpE,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,CAAC,OAAO,EAAE,wBAAwB,KAAK,OAAO,CAAC,yBAAyB,CAAC,GAC9E,iBAAiB,CAenB"}
1
+ {"version":3,"file":"provider-transport.d.ts","sourceRoot":"","sources":["../src/provider-transport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,wBAAwB,EACxB,yBAAyB,EAC1B,MAAM,iBAAiB,CAAC;AAEzB,eAAO,MAAM,0BAA0B,+BAA+B,CAAC;AACvE,eAAO,MAAM,kCAAkC,QAAoB,CAAC;AAUpE,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,CAAC,OAAO,EAAE,wBAAwB,KAAK,OAAO,CAAC,yBAAyB,CAAC,GAC9E,iBAAiB,CAenB"}
@@ -7,14 +7,6 @@ const REQUEST_HEADER_ALLOWLIST = new Set([
7
7
  'anthropic-beta',
8
8
  'openai-beta',
9
9
  ]);
10
- const RESPONSE_HEADER_ALLOWLIST = new Set([
11
- 'content-type',
12
- 'retry-after',
13
- 'request-id',
14
- 'x-request-id',
15
- 'openai-request-id',
16
- 'anthropic-request-id',
17
- ]);
18
10
  export function createSendOnceTransport(send) {
19
11
  let consumed = false;
20
12
  return {
@@ -101,9 +93,9 @@ function sanitizeResponse(response) {
101
93
  const headers = {};
102
94
  for (const [name, value] of Object.entries(response.headers)) {
103
95
  const lowerName = name.toLowerCase();
104
- if (RESPONSE_HEADER_ALLOWLIST.has(lowerName)) {
105
- headers[lowerName] = value;
106
- }
96
+ if (Object.hasOwn(headers, lowerName))
97
+ throw new Error('DUPLICATE_PROVIDER_RESPONSE_HEADER');
98
+ headers[lowerName] = value;
107
99
  }
108
100
  return {
109
101
  status: response.status,
@@ -1 +1 @@
1
- {"version":3,"file":"provider-transport.js","sourceRoot":"","sources":["../src/provider-transport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provider-transport.js","sourceRoot":"","sources":["../src/provider-transport.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { AdapterTerminalOutcome, FixedProviderDispatchInput, NormalizedStreamEventV1, ProviderDispatchInputV2, ProviderAsyncJobListV2, ProviderAsyncJobSnapshotV2, ProviderAsyncJobStartV2, ProviderExecutionStartV2 } from './runtime-v2.js';
1
+ import type { AdapterTerminalOutcome, FixedProviderDispatchInput, NormalizedStreamEventV1, ProviderDispatchInputV2, ProviderAsyncJobListV2, ProviderAsyncJobSnapshotV2, ProviderAsyncJobStartV2, ProviderExecutionStartV2, ProviderWireResponseV1 } from './runtime-v2.js';
2
2
  import type { TaskKind } from './contracts.js';
3
3
  export declare function validateFixedDispatchInput(input: FixedProviderDispatchInput): void;
4
4
  export declare function validateProviderDispatchInputV2(input: ProviderDispatchInputV2): void;
@@ -13,4 +13,5 @@ export declare function validateAdapterTerminalOutcome(input: AdapterTerminalOut
13
13
  export declare function validateProviderAsyncJobStart(input: ProviderAsyncJobStartV2): ProviderAsyncJobStartV2;
14
14
  export declare function validateProviderAsyncJobSnapshot(input: ProviderAsyncJobSnapshotV2): ProviderAsyncJobSnapshotV2;
15
15
  export declare function validateProviderAsyncJobList(input: ProviderAsyncJobListV2): ProviderAsyncJobListV2;
16
+ export declare function validateProviderWireResponseV1(input: ProviderWireResponseV1): ProviderWireResponseV1;
16
17
  //# sourceMappingURL=runtime-v2-validation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-v2-validation.d.ts","sourceRoot":"","sources":["../src/runtime-v2-validation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,0BAA0B,EAK1B,uBAAuB,EAGvB,uBAAuB,EAEvB,sBAAsB,EACtB,0BAA0B,EAC1B,uBAAuB,EACvB,wBAAwB,EAEzB,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAO/C,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,0BAA0B,GAAG,IAAI,CAKlF;AAED,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,uBAAuB,GAAG,IAAI,CA4BpF;AA6JD,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,wBAAwB,EAC/B,gBAAgB,CAAC,EAAE,QAAQ,GAC1B,wBAAwB,CAwC1B;AAED;;;GAGG;AACH,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,uBAAuB,GAC7B,uBAAuB,CAqHzB;AAED,6EAA6E;AAC7E,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,sBAAsB,EAC7B,gBAAgB,CAAC,EAAE,QAAQ,GAC1B,sBAAsB,CA+DxB;AAqRD,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,uBAAuB,GAC7B,uBAAuB,CA0CzB;AAED,wBAAgB,gCAAgC,CAC9C,KAAK,EAAE,0BAA0B,GAChC,0BAA0B,CA6D5B;AAED,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,sBAAsB,GAC5B,sBAAsB,CAiBxB"}
1
+ {"version":3,"file":"runtime-v2-validation.d.ts","sourceRoot":"","sources":["../src/runtime-v2-validation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,0BAA0B,EAK1B,uBAAuB,EAGvB,uBAAuB,EAEvB,sBAAsB,EACtB,0BAA0B,EAC1B,uBAAuB,EACvB,wBAAwB,EAExB,sBAAsB,EACvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAO/C,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,0BAA0B,GAAG,IAAI,CAKlF;AAED,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,uBAAuB,GAAG,IAAI,CA4BpF;AA6JD,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,wBAAwB,EAC/B,gBAAgB,CAAC,EAAE,QAAQ,GAC1B,wBAAwB,CAmD1B;AAED;;;GAGG;AACH,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,uBAAuB,GAC7B,uBAAuB,CA6HzB;AAED,6EAA6E;AAC7E,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,sBAAsB,EAC7B,gBAAgB,CAAC,EAAE,QAAQ,GAC1B,sBAAsB,CA+DxB;AAqRD,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,uBAAuB,GAC7B,uBAAuB,CA0DzB;AAED,wBAAgB,gCAAgC,CAC9C,KAAK,EAAE,0BAA0B,GAChC,0BAA0B,CAoE5B;AAED,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,sBAAsB,GAC5B,sBAAsB,CAuBxB;AAiED,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,sBAAsB,GAC5B,sBAAsB,CAGxB"}
@@ -132,7 +132,11 @@ export function validateProviderExecutionStart(input, expectedTaskKind) {
132
132
  throw new Error('ADAPTER_EXECUTION_START_INVALID');
133
133
  }
134
134
  if (input.kind === 'sync') {
135
- assertOnlyKeys(value, ['kind', 'acceptance', 'responseMetadata', 'terminal'], 'ADAPTER_EXECUTION_START_INVALID');
135
+ assertOnlyKeys(value, ['kind', 'acceptance', 'responseMetadata', 'providerResponse', 'terminal'], 'ADAPTER_EXECUTION_START_INVALID');
136
+ if (value['providerResponse'] !== undefined) {
137
+ validateProviderWireResponseWithCode(value['providerResponse'], 'ADAPTER_EXECUTION_START_INVALID');
138
+ validateProviderResponseMetadataConsistency(value['responseMetadata'], value['providerResponse'], 'ADAPTER_EXECUTION_START_INVALID');
139
+ }
136
140
  validateAdapterTerminalOutcome(input.terminal, expectedTaskKind);
137
141
  validateTerminalAcceptance(input.acceptance, input.terminal);
138
142
  return input;
@@ -166,6 +170,12 @@ export function validateNormalizedStreamEvent(input) {
166
170
  throw new Error('ADAPTER_STREAM_EVENT_INVALID');
167
171
  }
168
172
  switch (value['type']) {
173
+ case 'provider.passthrough':
174
+ assertStreamEventKeys(value, []);
175
+ if (typeof value['providerWire'] !== 'string' || value['providerWire'].length === 0) {
176
+ throw new Error('ADAPTER_STREAM_EVENT_INVALID');
177
+ }
178
+ break;
169
179
  case 'response.started':
170
180
  assertStreamEventKeys(value, []);
171
181
  break;
@@ -252,11 +262,13 @@ export function validateNormalizedStreamEvent(input) {
252
262
  break;
253
263
  case 'response.cancelled':
254
264
  assertStreamEventKeys(value, ['status', 'usage']);
265
+ rejectProviderWire(value);
255
266
  requireLiteral(value['status'], 'cancelled');
256
267
  validateOptionalUsage(value['usage']);
257
268
  break;
258
269
  case 'response.failed': {
259
270
  assertStreamEventKeys(value, ['status', 'error', 'providerError', 'usage']);
271
+ rejectProviderWire(value);
260
272
  if (value['status'] !== undefined)
261
273
  requireLiteral(value['status'], 'failed');
262
274
  const error = runtimeRecord(value['error'], 'ADAPTER_STREAM_EVENT_INVALID');
@@ -565,12 +577,24 @@ function sameUsageDetails(left, right) {
565
577
  }
566
578
  export function validateProviderAsyncJobStart(input) {
567
579
  const value = runtimeRecord(input, 'ADAPTER_ASYNC_START_INVALID');
568
- assertOnlyKeys(value, ['kind', 'acceptance', 'responseMetadata', 'providerJobId', 'failureCode', 'retryable'], 'ADAPTER_ASYNC_START_INVALID');
580
+ assertOnlyKeys(value, [
581
+ 'kind',
582
+ 'acceptance',
583
+ 'responseMetadata',
584
+ 'providerResponse',
585
+ 'providerJobId',
586
+ 'failureCode',
587
+ 'retryable',
588
+ ], 'ADAPTER_ASYNC_START_INVALID');
569
589
  const acceptance = runtimeRecord(value['acceptance'], 'ADAPTER_ASYNC_START_INVALID');
570
590
  assertOnlyKeys(acceptance, ['state'], 'ADAPTER_ASYNC_START_INVALID');
571
591
  validateProviderResponseMetadata(value['responseMetadata'], 'ADAPTER_ASYNC_START_INVALID');
592
+ if (value['providerResponse'] !== undefined) {
593
+ validateProviderWireResponseWithCode(value['providerResponse'], 'ADAPTER_ASYNC_START_INVALID');
594
+ validateProviderResponseMetadataConsistency(value['responseMetadata'], value['providerResponse'], 'ADAPTER_ASYNC_START_INVALID');
595
+ }
572
596
  if (value['kind'] === 'async') {
573
- assertOnlyKeys(value, ['kind', 'acceptance', 'responseMetadata', 'providerJobId'], 'ADAPTER_ASYNC_START_INVALID');
597
+ assertOnlyKeys(value, ['kind', 'acceptance', 'responseMetadata', 'providerResponse', 'providerJobId'], 'ADAPTER_ASYNC_START_INVALID');
574
598
  if (acceptance['state'] !== 'accepted' ||
575
599
  typeof value['providerJobId'] !== 'string' ||
576
600
  !value['providerJobId'].trim()) {
@@ -585,13 +609,14 @@ export function validateProviderAsyncJobStart(input) {
585
609
  typeof value['retryable'] !== 'boolean') {
586
610
  throw new Error('ADAPTER_ASYNC_START_INVALID');
587
611
  }
588
- assertOnlyKeys(value, ['kind', 'acceptance', 'responseMetadata', 'failureCode', 'retryable'], 'ADAPTER_ASYNC_START_INVALID');
612
+ assertOnlyKeys(value, ['kind', 'acceptance', 'responseMetadata', 'providerResponse', 'failureCode', 'retryable'], 'ADAPTER_ASYNC_START_INVALID');
589
613
  return input;
590
614
  }
591
615
  export function validateProviderAsyncJobSnapshot(input) {
592
616
  const value = runtimeRecord(input, 'ADAPTER_ASYNC_JOB_SNAPSHOT_INVALID');
593
617
  assertOnlyKeys(value, [
594
618
  'providerJobId',
619
+ 'providerResponse',
595
620
  'model',
596
621
  'status',
597
622
  'createdAt',
@@ -601,6 +626,9 @@ export function validateProviderAsyncJobSnapshot(input) {
601
626
  'usage',
602
627
  'error',
603
628
  ], 'ADAPTER_ASYNC_JOB_SNAPSHOT_INVALID');
629
+ if (value['providerResponse'] !== undefined) {
630
+ validateProviderWireResponseWithCode(value['providerResponse'], 'ADAPTER_ASYNC_JOB_SNAPSHOT_INVALID');
631
+ }
604
632
  const validStatuses = new Set(['queued', 'running', 'cancelled', 'succeeded', 'failed']);
605
633
  if (typeof value['providerJobId'] !== 'string' ||
606
634
  !value['providerJobId'].trim() ||
@@ -638,7 +666,10 @@ export function validateProviderAsyncJobSnapshot(input) {
638
666
  }
639
667
  export function validateProviderAsyncJobList(input) {
640
668
  const value = runtimeRecord(input, 'ADAPTER_ASYNC_JOB_LIST_INVALID');
641
- assertOnlyKeys(value, ['items', 'total'], 'ADAPTER_ASYNC_JOB_LIST_INVALID');
669
+ assertOnlyKeys(value, ['providerResponse', 'items', 'total'], 'ADAPTER_ASYNC_JOB_LIST_INVALID');
670
+ if (value['providerResponse'] !== undefined) {
671
+ validateProviderWireResponseWithCode(value['providerResponse'], 'ADAPTER_ASYNC_JOB_LIST_INVALID');
672
+ }
642
673
  if (!Array.isArray(value['items']) || !nonNegativeInteger(value['total'])) {
643
674
  throw new Error('ADAPTER_ASYNC_JOB_LIST_INVALID');
644
675
  }
@@ -690,7 +721,49 @@ function validateIndexedItem(value) {
690
721
  }
691
722
  }
692
723
  function assertStreamEventKeys(value, extra) {
693
- assertOnlyKeys(value, ['type', 'eventId', 'sequenceNumber', 'responseId', ...extra], 'ADAPTER_STREAM_EVENT_INVALID');
724
+ assertOnlyKeys(value, ['type', 'eventId', 'sequenceNumber', 'responseId', 'providerWire', ...extra], 'ADAPTER_STREAM_EVENT_INVALID');
725
+ if (value['providerWire'] !== undefined &&
726
+ (typeof value['providerWire'] !== 'string' || value['providerWire'].length === 0)) {
727
+ throw new Error('ADAPTER_STREAM_EVENT_INVALID');
728
+ }
729
+ }
730
+ function rejectProviderWire(value) {
731
+ if (value['providerWire'] !== undefined) {
732
+ throw new Error('ADAPTER_STREAM_EVENT_INVALID');
733
+ }
734
+ }
735
+ export function validateProviderWireResponseV1(input) {
736
+ validateProviderWireResponseWithCode(input, 'ADAPTER_PROVIDER_RESPONSE_INVALID');
737
+ return input;
738
+ }
739
+ function validateProviderWireResponseWithCode(value, errorCode) {
740
+ const response = runtimeRecord(value, errorCode);
741
+ assertOnlyKeys(response, ['status', 'headers', 'body'], errorCode);
742
+ if (!Number.isInteger(response['status']) ||
743
+ response['status'] < 100 ||
744
+ response['status'] > 599 ||
745
+ !(response['body'] instanceof Uint8Array)) {
746
+ throw new Error(errorCode);
747
+ }
748
+ const headers = runtimeRecord(response['headers'], errorCode);
749
+ const normalizedNames = new Set();
750
+ for (const [name, headerValue] of Object.entries(headers)) {
751
+ const lowerName = name.toLowerCase();
752
+ if (!/^[!#$%&'*+.^_`|~0-9A-Za-z-]+$/u.test(name) ||
753
+ normalizedNames.has(lowerName) ||
754
+ typeof headerValue !== 'string' ||
755
+ /[\r\n]/u.test(headerValue)) {
756
+ throw new Error(errorCode);
757
+ }
758
+ normalizedNames.add(lowerName);
759
+ }
760
+ }
761
+ function validateProviderResponseMetadataConsistency(metadataValue, responseValue, errorCode) {
762
+ const metadata = runtimeRecord(metadataValue, errorCode);
763
+ const response = runtimeRecord(responseValue, errorCode);
764
+ if (metadata['headersReceived'] !== true || metadata['statusCode'] !== response['status']) {
765
+ throw new Error(errorCode);
766
+ }
694
767
  }
695
768
  function validateIndexedContent(value) {
696
769
  validateIndexedItem(value);
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-v2-validation.js","sourceRoot":"","sources":["../src/runtime-v2-validation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime-v2-validation.js","sourceRoot":"","sources":["../src/runtime-v2-validation.ts"],"names":[],"mappings":"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"}
@@ -123,6 +123,7 @@ export type ProviderAsyncJobStartV2 = {
123
123
  readonly state: 'accepted';
124
124
  };
125
125
  readonly responseMetadata: ProviderResponseMetadata;
126
+ readonly providerResponse?: ProviderWireResponseV1;
126
127
  readonly providerJobId: string;
127
128
  } | {
128
129
  readonly kind: 'failed';
@@ -130,10 +131,12 @@ export type ProviderAsyncJobStartV2 = {
130
131
  readonly state: 'not-accepted' | 'unknown';
131
132
  };
132
133
  readonly responseMetadata: ProviderResponseMetadata;
134
+ readonly providerResponse?: ProviderWireResponseV1;
133
135
  readonly failureCode: string;
134
136
  readonly retryable: boolean;
135
137
  };
136
138
  export interface ProviderAsyncJobSnapshotV2 {
139
+ readonly providerResponse?: ProviderWireResponseV1;
137
140
  readonly providerJobId: string;
138
141
  readonly model: string;
139
142
  readonly status: 'queued' | 'running' | 'cancelled' | 'succeeded' | 'failed';
@@ -157,6 +160,7 @@ export interface ProviderAsyncJobListInputV2 {
157
160
  readonly providerJobIds?: readonly string[];
158
161
  }
159
162
  export interface ProviderAsyncJobListV2 {
163
+ readonly providerResponse?: ProviderWireResponseV1;
160
164
  readonly items: readonly ProviderAsyncJobSnapshotV2[];
161
165
  readonly total: number;
162
166
  }
@@ -166,7 +170,7 @@ export interface ProviderAsyncJobAdapterV2 {
166
170
  start(input: ProviderAsyncJobStartInputV2): Promise<ProviderAsyncJobStartV2>;
167
171
  get(providerJobId: string, signal: AbortSignal): Promise<ProviderAsyncJobSnapshotV2>;
168
172
  list(input: ProviderAsyncJobListInputV2, signal: AbortSignal): Promise<ProviderAsyncJobListV2>;
169
- cancel(providerJobId: string, signal: AbortSignal): Promise<void>;
173
+ cancel(providerJobId: string, signal: AbortSignal): Promise<ProviderWireResponseV1 | undefined>;
170
174
  }
171
175
  export interface PreparedMediaInputV2 {
172
176
  readonly mimeType: 'image/png' | 'image/jpeg' | 'image/webp';
@@ -193,10 +197,27 @@ export interface ProviderResponseMetadata {
193
197
  /** Provider-declared response model, validated by the Adapter as untrusted evidence. */
194
198
  readonly observedModel?: string;
195
199
  }
200
+ /**
201
+ * Provider HTTP response facts that remain authoritative for same-protocol
202
+ * caller egress. Normalized facts are derived observations and must not replace
203
+ * or silently narrow this response.
204
+ */
205
+ export interface ProviderWireResponseV1 {
206
+ readonly status: number;
207
+ readonly headers: Readonly<Record<string, string>>;
208
+ readonly body: Uint8Array;
209
+ }
210
+ /** A complete Provider response that prevented a normalized operation result. */
211
+ export declare class ProviderWireResponseErrorV1 extends Error {
212
+ readonly providerResponse: ProviderWireResponseV1;
213
+ constructor(providerResponse: ProviderWireResponseV1, message?: string);
214
+ }
215
+ export declare function isProviderWireResponseErrorV1(error: unknown): error is ProviderWireResponseErrorV1;
196
216
  export type ProviderExecutionStartV2 = {
197
217
  readonly kind: 'sync';
198
218
  readonly acceptance: ProviderAcceptanceFacts;
199
219
  readonly responseMetadata: ProviderResponseMetadata;
220
+ readonly providerResponse?: ProviderWireResponseV1;
200
221
  readonly terminal: AdapterTerminalOutcome;
201
222
  } | {
202
223
  readonly kind: 'stream';
@@ -272,7 +293,9 @@ export type NormalizedOutputItemV1 = {
272
293
  readonly arguments: string;
273
294
  };
274
295
  export type NormalizedOutputItemKindV1 = 'message' | 'reasoning' | 'function_call';
275
- export type NormalizedStreamEventV1 = StreamEventBaseV1<'response.started'> | (StreamEventBaseV1<'response.in_progress'> & {
296
+ export type NormalizedStreamEventV1 = (StreamEventBaseV1<'provider.passthrough'> & {
297
+ readonly providerWire: string;
298
+ }) | StreamEventBaseV1<'response.started'> | (StreamEventBaseV1<'response.in_progress'> & {
276
299
  readonly status: 'in_progress';
277
300
  }) | (StreamEventBaseV1<'output.item.added'> & IndexedItemV1 & {
278
301
  readonly itemKind: NormalizedOutputItemKindV1;
@@ -331,6 +354,8 @@ export interface StreamEventBaseV1<T extends string> {
331
354
  readonly eventId: string;
332
355
  readonly sequenceNumber: number;
333
356
  readonly responseId: string;
357
+ /** Canonical Provider SSE frame for authoritative same-protocol egress. */
358
+ readonly providerWire?: string;
334
359
  }
335
360
  export interface IndexedItemV1 {
336
361
  readonly itemId: string;