@memberjunction/ai 5.47.0 → 5.49.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.
@@ -1 +1 @@
1
- {"version":3,"file":"baseLLM.d.ts","sourceRoot":"","sources":["../../src/generic/baseLLM.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"baseLLM.d.ts","sourceRoot":"","sources":["../../src/generic/baseLLM.ts"],"names":[],"mappings":"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"}
@@ -193,8 +193,21 @@ export class BaseLLM extends BaseModel {
193
193
  }
194
194
  }
195
195
  catch (streamError) {
196
- // If there's an error in the for-await loop, log and continue
197
- console.error("Error processing stream chunks:", streamError);
196
+ // A failure part-way through the stream means the content we accumulated is
197
+ // TRUNCATED. Historically this was logged and swallowed, and the response was
198
+ // then finalized as a SUCCESS — so a dropped connection, a provider fault, or
199
+ // an abort mid-response silently produced a partial answer that the caller was
200
+ // told was complete. That is data corruption, and it affected every provider.
201
+ //
202
+ // Cancellation is the one case we deliberately let through to
203
+ // finalizeStreamingResponse: providers differ on whether an abort throws here
204
+ // or simply ends iteration (Anthropic's stream returns silently), so they own
205
+ // that decision and return a cancelled result of their own shape. Everything
206
+ // else is a genuine failure and must surface as one.
207
+ if (!params.cancellationToken?.aborted) {
208
+ throw streamError;
209
+ }
210
+ console.error("Stream aborted while processing chunks:", streamError);
198
211
  }
199
212
  // Stream complete, call OnContent one last time with isComplete=true
200
213
  if (params.streamingCallbacks?.OnContent) {
@@ -1 +1 @@
1
- {"version":3,"file":"baseLLM.js","sourceRoot":"","sources":["../../src/generic/baseLLM.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAc,UAAU,EAAmF,MAAM,cAAc,CAAC;AAEvI,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AA4BhD;;;GAGG;AACH,MAAM,OAAgB,OAAQ,SAAQ,SAAS;IAA/C;;QACI;;WAEG;QACO,wBAAmB,GAAwB,EAAE,CAAC;QAiUxD,kEAAkE;QAElE;;;WAGG;QACO,wBAAmB,GAA+B,IAAI,CAAC;IA4JrE,CAAC;IAjeG;;OAEG;IACH,IAAW,kBAAkB;QACzB,OAAO,IAAI,CAAC,mBAAmB,CAAC;IACpC,CAAC;IAED;;;;;OAKG;IACI,qBAAqB,CAAC,QAA6B;QACtD,IAAI,CAAC,mBAAmB,GAAG,EAAC,GAAG,IAAI,CAAC,mBAAmB,EAAE,GAAG,QAAQ,EAAC,CAAC;IAC1E,CAAC;IAED;;;;OAIG;IACI,uBAAuB;QAC1B,IAAI,CAAC,mBAAmB,GAAG,EAAE,CAAC;IAClC,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,cAAc,CAAC,MAAkB;QAC1C,IAAI,MAAM,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YACrC,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC,8BAA8B;QAC/D,CAAC;QAED,uDAAuD;QACvD,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,kBAAkB,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC1E,OAAO,IAAI,CAAC,6BAA6B,CAAC,MAAM,CAAC,CAAC;QACtD,CAAC;QAED,oDAAoD;QACpD,OAAO,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC;IACnD,CAAC;IAED;;;;;;;;;OASG;IACI,KAAK,CAAC,eAAe,CACxB,WAAyB,EACzB,SAA4C;QAE5C,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3C,OAAO,EAAE,CAAC;QACd,CAAC;QAED,sCAAsC;QACtC,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAC/C,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC;aACtB,IAAI,CAAC,QAAQ,CAAC,EAAE;YACb,6CAA6C;YAC7C,IAAI,SAAS,EAAE,YAAY,EAAE,CAAC;gBAC1B,SAAS,CAAC,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YAC5C,CAAC;YACD,OAAO,QAAQ,CAAC;QACpB,CAAC,CAAC;aACD,KAAK,CAAC,KAAK,CAAC,EAAE;YACX,wCAAwC;YACxC,IAAI,SAAS,EAAE,OAAO,EAAE,CAAC;gBACrB,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YACpC,CAAC;YACD,MAAM,KAAK,CAAC,CAAC,8CAA8C;QAC/D,CAAC,CAAC,CACT,CAAC;QAEF,0DAA0D;QAC1D,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAEnD,yDAAyD;QACzD,kDAAkD;QAClD,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YAC9C,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;gBAChC,OAAO,MAAM,CAAC,KAAK,CAAC;YACxB,CAAC;iBAAM,CAAC;gBACJ,yBAAyB;gBACzB,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;gBAC7B,MAAM,OAAO,GAAG,IAAI,IAAI,EAAE,CAAC;gBAC3B,MAAM,WAAW,GAAG,IAAI,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;gBAC9D,WAAW,CAAC,IAAI,GAAG;oBACf,OAAO,EAAE,EAAE;oBACX,KAAK,EAAE,IAAI,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC;iBAC9B,CAAC;gBACF,WAAW,CAAC,UAAU,GAAG,OAAO,CAAC;gBACjC,WAAW,CAAC,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,IAAI,eAAe,CAAC;gBACrE,WAAW,CAAC,SAAS,GAAG,EAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAC,CAAC;gBACnD,WAAW,CAAC,SAAS,GAAG,aAAa,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;gBACzF,OAAO,WAAW,CAAC;YACvB,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,+CAA+C;QAC/C,IAAI,SAAS,EAAE,cAAc,EAAE,CAAC;YAC5B,SAAS,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QAC1C,CAAC;QAED,OAAO,WAAW,CAAC;IACvB,CAAC;IAUD;;;OAGG;IACH,IAAW,iBAAiB;QACxB,qEAAqE;QACrE,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;;;;OAKG;IACH,IAAW,eAAe;QACtB,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;;;OAIG;IACI,mBAAmB;QACtB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACO,KAAK,CAAC,6BAA6B,CAAC,MAAkB;QAC5D,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;QAC7B,0EAA0E;QAC1E,sEAAsE;QACtE,oEAAoE;QACpE,oEAAoE;QACpE,uEAAuE;QACvE,wEAAwE;QACxE,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAE3B,OAAO,IAAI,OAAO,CAAa,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC/C,CAAC,KAAK,IAAI,EAAE;gBACR,IAAI,CAAC;oBACD,+BAA+B;oBAC/B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC;oBAEzD,8CAA8C;oBAC9C,IAAI,kBAAkB,GAAG,EAAE,CAAC;oBAC5B,IAAI,SAAS,GAAQ,IAAI,CAAC;oBAC1B,IAAI,KAAK,GAAG;wBACR,YAAY,EAAE,CAAC;wBACf,gBAAgB,EAAE,CAAC;wBACnB,WAAW,EAAE,CAAC;qBACjB,CAAC;oBAEF,yCAAyC;oBACzC,IAAI,CAAC,MAAM,EAAE,CAAC;wBACV,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;oBACnD,CAAC;oBAED,4DAA4D;oBAC5D,IAAI,CAAC;wBACD,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;4BAC/B,IAAI,KAAK,EAAE,CAAC;gCACR,MAAM,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;gCAEpD,IAAI,SAAS,EAAE,OAAO,EAAE,CAAC;oCACrB,kBAAkB,IAAI,SAAS,CAAC,OAAO,CAAC;oCAExC,IAAI,MAAM,CAAC,kBAAkB,EAAE,SAAS,EAAE,CAAC;wCACvC,MAAM,CAAC,kBAAkB,CAAC,SAAS,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;oCAClE,CAAC;gCACL,CAAC;gCAED,SAAS,GAAG,KAAK,CAAC;gCAElB,4BAA4B;gCAC5B,IAAI,SAAS,EAAE,KAAK,EAAE,CAAC;oCACnB,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC;gCAC5B,CAAC;4BACL,CAAC;wBACL,CAAC;oBACL,CAAC;oBAAC,OAAO,WAAW,EAAE,CAAC;wBACnB,8DAA8D;wBAC9D,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,WAAW,CAAC,CAAC;oBAClE,CAAC;oBAED,qEAAqE;oBACrE,IAAI,MAAM,CAAC,kBAAkB,EAAE,SAAS,EAAE,CAAC;wBACvC,MAAM,CAAC,kBAAkB,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;oBAClD,CAAC;oBAED,oEAAoE;oBACpE,MAAM,OAAO,GAAG,IAAI,IAAI,EAAE,CAAC;oBAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,yBAAyB,CACzC,kBAAkB,EAClB,SAAS,EACT,KAAK,CACR,CAAC;oBAEF,4BAA4B;oBAC5B,IAAI,CAAC,MAAM,EAAE,CAAC;wBACV,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;oBAC/C,CAAC;oBAED,wEAAwE;oBACxE,2EAA2E;oBAC3E,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;oBAC7B,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC;oBACzB,uEAAuE;oBAEvE,oCAAoC;oBACpC,IAAI,MAAM,CAAC,kBAAkB,EAAE,UAAU,EAAE,CAAC;wBACxC,MAAM,CAAC,kBAAkB,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;oBACjD,CAAC;oBAED,OAAO,CAAC,MAAM,CAAC,CAAC;gBACpB,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACb,IAAI,MAAM,CAAC,kBAAkB,EAAE,OAAO,EAAE,CAAC;wBACrC,MAAM,CAAC,kBAAkB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;oBAC7C,CAAC;oBAED,MAAM,OAAO,GAAG,IAAI,IAAI,EAAE,CAAC;oBAE3B,qDAAqD;oBACrD,MAAM,WAAW,GAAG,IAAI,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;oBAC9D,WAAW,CAAC,IAAI,GAAG;wBACf,OAAO,EAAE,EAAE;wBACX,KAAK,EAAE,IAAI,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC;qBAC9B,CAAC;oBACF,WAAW,CAAC,UAAU,GAAG,OAAO,CAAC;oBACjC,WAAW,CAAC,YAAY,GAAG,KAAK,EAAE,OAAO,IAAI,eAAe,CAAC;oBAC7D,WAAW,CAAC,SAAS,GAAG,EAAC,SAAS,EAAE,KAAK,EAAC,CAAC;oBAC3C,WAAW,CAAC,SAAS,GAAG,aAAa,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;oBAEjF,MAAM,CAAC,WAAW,CAAC,CAAC;gBACxB,CAAC;wBAAS,CAAC;oBACP,4DAA4D;oBAC5D,yDAAyD;oBACzD,0DAA0D;oBAC1D,IAAI,CAAC;wBACD,IAAI,CAAC,mBAAmB,EAAE,CAAC;oBAC/B,CAAC;oBAAC,MAAM,CAAC;wBACL,oEAAoE;oBACxE,CAAC;gBACL,CAAC;YACL,CAAC,CAAC,EAAE,CAAC;QACT,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;;;;;OAQG;IACO,mBAAmB;QACzB,qCAAqC;IACzC,CAAC;IAyCD;;;OAGG;IACO,sBAAsB;QAC5B,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;;OAGG;IACO,oBAAoB;QAC1B,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;IAClD,CAAC;IAED;;;OAGG;IACO,0BAA0B,CAAC,OAAe;QAIhD,IAAI,CAAC,OAAO;YACR,OAAO;gBACH,OAAO;gBACP,QAAQ,EAAE,SAAS;aACtB,CAAC;QAEN,IAAI,gBAAgB,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;QACtC,IAAI,eAAe,GAAuB,SAAS,CAAC;QAEpD,MAAM,IAAI,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;QACzC,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QAC7C,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QAC/C,MAAM,YAAY,GAAG,gBAAgB,CAAC,WAAW,EAAE,CAAC;QAEpD,+DAA+D;QAC/D,IAAI,YAAY,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,YAAY,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;YAChF,oDAAoD;YACpD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;YACpC,MAAM,aAAa,GAAG,YAAY,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;YAE1D,IAAI,aAAa,KAAK,CAAC,CAAC,EAAE,CAAC;gBACvB,eAAe,GAAG,gBAAgB,CAAC,SAAS,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC,IAAI,EAAE,CAAC;gBAC/E,gBAAgB,GAAG,gBAAgB,CAAC,SAAS,CAAC,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;YAC5F,CAAC;QACL,CAAC;QAED,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC;IACpE,CAAC;IAED;;OAEG;IACO,6BAA6B;QACnC,IAAI,CAAC,mBAAmB,GAAG;YACvB,mBAAmB,EAAE,EAAE;YACvB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,EAAE;YAClB,gBAAgB,EAAE,KAAK;SAC1B,CAAC;IACN,CAAC;IAED;;OAEG;IACO,wBAAwB;QAC9B,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;IACpC,CAAC;IAED;;;OAGG;IACO,8BAA8B,CAAC,UAAkB;QACvD,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC5B,8DAA8D;YAC9D,OAAO,UAAU,CAAC;QACtB,CAAC;QAED,IAAI,aAAa,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,mBAAmB,CAAC,cAAc,IAAI,UAAU,CAAC;QAEtD,mEAAmE;QACnE,IAAI,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,EAAE,CAAC;YAC5C,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC,cAAc,CAAC;YACxD,IAAI,CAAC,mBAAmB,CAAC,cAAc,GAAG,EAAE,CAAC;YAC7C,OAAO,aAAa,CAAC;QACzB,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;QACzC,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,cAAc,CAAC;QACxD,MAAM,YAAY,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QAE3C,8DAA8D;QAC9D,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,eAAe,IAAI,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;YAC9F,MAAM,eAAe,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;YAEtE,yDAAyD;YACzD,IAAI,eAAe,GAAG,CAAC,EAAE,CAAC;gBACtB,aAAa,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC;gBACtD,IAAI,CAAC,mBAAmB,CAAC,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;gBAC7E,OAAO,aAAa,CAAC;YACzB,CAAC;YAED,gCAAgC;YAChC,IAAI,CAAC,mBAAmB,CAAC,eAAe,GAAG,IAAI,CAAC;YAEhD,yBAAyB;YACzB,IAAI,CAAC,mBAAmB,CAAC,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClF,CAAC;QAED,oEAAoE;QACpE,IAAI,IAAI,CAAC,mBAAmB,CAAC,eAAe,EAAE,CAAC;YAC3C,MAAM,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClF,MAAM,aAAa,GAAG,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;YAE5E,IAAI,aAAa,KAAK,CAAC,CAAC,EAAE,CAAC;gBACvB,kCAAkC;gBAClC,IAAI,CAAC,mBAAmB,CAAC,mBAAmB,IAAI,IAAI,CAAC,mBAAmB,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC;gBACpH,IAAI,CAAC,mBAAmB,CAAC,cAAc,GAAG,IAAI,CAAC,mBAAmB,CAAC,cAAc,CAAC,SAAS,CAAC,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBAC/H,IAAI,CAAC,mBAAmB,CAAC,eAAe,GAAG,KAAK,CAAC;gBACjD,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,GAAG,IAAI,CAAC;gBAEjD,4CAA4C;gBAC5C,OAAO,IAAI,CAAC,8BAA8B,CAAC,EAAE,CAAC,CAAC;YACnD,CAAC;iBAAM,CAAC;gBACJ,sCAAsC;gBACtC,IAAI,CAAC,mBAAmB,CAAC,mBAAmB,IAAI,IAAI,CAAC,mBAAmB,CAAC,cAAc,CAAC;gBACxF,IAAI,CAAC,mBAAmB,CAAC,cAAc,GAAG,EAAE,CAAC;gBAC7C,OAAO,EAAE,CAAC;YACd,CAAC;QACL,CAAC;QAED,mDAAmD;QACnD,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC,cAAc,CAAC;QACxD,IAAI,CAAC,mBAAmB,CAAC,cAAc,GAAG,EAAE,CAAC;QAC7C,OAAO,aAAa,CAAC;IACzB,CAAC;IAED;;OAEG;IACO,oBAAoB,CAC1B,OAA8B,EAC9B,eAAwB;QAExB,IAAI,eAAe,EAAE,CAAC;YAClB,OAAO,CAAC,QAAQ,GAAG,eAAe,CAAC;QACvC,CAAC;QACD,OAAO,OAAO,CAAC;IACnB,CAAC;CACJ;AAYD;;;;;;;;;GASG;AACH,MAAM,UAAU,wBAAwB,CACpC,QAAgB,EAChB,aAAqB,EACrB,YAAqC,EACrC,oBAAoC,EACpC,gBAAwB;IAExB,IAAI,oBAAoB,KAAK,IAAI,EAAE,CAAC;QAChC,OAAO;YACH,kBAAkB,EAAE,oBAAoB;YACxC,UAAU,EAAE,oBAAoB,IAAI,YAAY,KAAK,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK;YAC3F,MAAM,EAAE,oBAAoB;gBACxB,CAAC,CAAC,8CAA8C;gBAChD,CAAC,CAAC,+CAA+C;SACxD,CAAC;IACN,CAAC;IAED,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;QACxB,OAAO;YACH,kBAAkB,EAAE,KAAK;YACzB,UAAU,EAAE,KAAK;YACjB,MAAM,EAAE,oCAAoC;SAC/C,CAAC;IACN,CAAC;IAED,MAAM,KAAK,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;IACrC,MAAM,OAAO,GAAG,YAAY,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7D,MAAM,CAAC,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QAChC,6EAA6E;QAC7E,2EAA2E;QAC3E,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YACnB,OAAO,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5C,CAAC;QACD,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YACvB,OAAO,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,KAAK,KAAK,CAAC,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,OAAO,EAAE,CAAC;QACX,OAAO;YACH,kBAAkB,EAAE,KAAK;YACzB,UAAU,EAAE,KAAK;YACjB,MAAM,EAAE,cAAc,QAAQ,6BAA6B,YAAY,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;SAC1G,CAAC;IACN,CAAC;IAED,IAAI,aAAa,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC;QAC3C,OAAO;YACH,kBAAkB,EAAE,KAAK;YACzB,UAAU,EAAE,KAAK;YACjB,MAAM,EAAE,aAAa,aAAa,0BAA0B,YAAY,CAAC,WAAW,EAAE;SACzF,CAAC;IACN,CAAC;IAED,IAAI,gBAAgB,IAAI,YAAY,CAAC,kBAAkB,EAAE,CAAC;QACtD,OAAO;YACH,kBAAkB,EAAE,KAAK;YACzB,UAAU,EAAE,KAAK;YACjB,MAAM,EAAE,cAAc,gBAAgB,4BAA4B,YAAY,CAAC,kBAAkB,EAAE;SACtG,CAAC;IACN,CAAC;IAED,OAAO;QACH,kBAAkB,EAAE,IAAI;QACxB,UAAU,EAAE,YAAY,CAAC,UAAU;QACnC,MAAM,EAAE,sCAAsC;KACjD,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"baseLLM.js","sourceRoot":"","sources":["../../src/generic/baseLLM.ts"],"names":[],"mappings":"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"}
@@ -161,6 +161,14 @@ export declare abstract class BaseRealtimeModel extends BaseModel {
161
161
  */
162
162
  get SupportedVoices(): RealtimeVoiceOption[];
163
163
  }
164
+ /**
165
+ * The MJ-side Config-bag keys shared across the realtime driver family that are NEVER provider
166
+ * wire fields: feature knobs the OpenAI-protocol family translates (and gates per profile) plus
167
+ * transport settings for self-hosted/proxied drivers. NON-OpenAI-protocol drivers (Gemini,
168
+ * ElevenLabs, AssemblyAI, Inworld) MUST scrub these before forwarding an open config bag to their
169
+ * SDK/wire — a co-agent config carrying them must be safe on every provider.
170
+ */
171
+ export declare const REALTIME_SHARED_CONFIG_KEYS: readonly string[];
164
172
  /** A selectable provider-native voice — `ID` is sent to the provider, `Name` is the human label. */
165
173
  export interface RealtimeVoiceOption {
166
174
  /** The provider-native voice id (e.g. `echo`) — what gets written to the session config. */
@@ -527,6 +535,13 @@ export interface RealtimeTranscript {
527
535
  * Whether this is the final transcript for the turn (`true`) or an interim delta (`false`).
528
536
  */
529
537
  IsFinal: boolean;
538
+ /**
539
+ * When true, this FINAL transcript REPLACES the previous final for the same in-flight turn —
540
+ * providers that STREAM their "completed" transcription (each event carrying the full growing
541
+ * text, e.g. Grok) set this so consumers collapse the stream into one in-place-updating turn
542
+ * instead of a stack of growing duplicates. Absent/false: a normal, append-worthy final.
543
+ */
544
+ ReplacesPrevious?: boolean;
530
545
  }
531
546
  /**
532
547
  * An error surfaced by a realtime session via {@link IRealtimeSession.OnError}.
@@ -578,6 +593,32 @@ export interface RealtimeUsage {
578
593
  * Number of output tokens reported in this usage update.
579
594
  */
580
595
  OutputTokens: number;
596
+ /**
597
+ * Per-modality breakdown of the input tokens, when the provider reports one. Realtime models
598
+ * bill audio and text tokens at very different rates (e.g. GPT Realtime 2.1: $32/M audio in
599
+ * vs $4/M text in), so cost attribution REQUIRES this split — the totals alone force a wrong
600
+ * blended rate. Absent when the provider reports only totals.
601
+ */
602
+ InputTokenDetails?: RealtimeUsageModalityDetail;
603
+ /**
604
+ * Per-modality breakdown of the output tokens, when the provider reports one.
605
+ * See {@link RealtimeUsage.InputTokenDetails}.
606
+ */
607
+ OutputTokenDetails?: RealtimeUsageModalityDetail;
608
+ }
609
+ /**
610
+ * Per-modality token counts inside a {@link RealtimeUsage} update. All fields optional — providers
611
+ * report different subsets (OpenAI GA: text/audio/cached on input, text/audio on output).
612
+ */
613
+ export interface RealtimeUsageModalityDetail {
614
+ /** Text-modality tokens. */
615
+ TextTokens?: number;
616
+ /** Audio-modality tokens. */
617
+ AudioTokens?: number;
618
+ /** Image-modality tokens (input only on current providers). */
619
+ ImageTokens?: number;
620
+ /** Tokens served from the provider's prompt cache (billed at the cached rate). */
621
+ CachedTokens?: number;
581
622
  }
582
623
  /**
583
624
  * Minimal, Core-level definition of a tool exposed to a realtime model.
@@ -1 +1 @@
1
- {"version":3,"file":"baseRealtime.d.ts","sourceRoot":"","sources":["../../src/generic/baseRealtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"baseRealtime.d.ts","sourceRoot":"","sources":["../../src/generic/baseRealtime.ts"],"names":[],"mappings":"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"}
@@ -149,4 +149,23 @@ export class BaseRealtimeModel extends BaseModel {
149
149
  return [];
150
150
  }
151
151
  }
152
+ /**
153
+ * The MJ-side Config-bag keys shared across the realtime driver family that are NEVER provider
154
+ * wire fields: feature knobs the OpenAI-protocol family translates (and gates per profile) plus
155
+ * transport settings for self-hosted/proxied drivers. NON-OpenAI-protocol drivers (Gemini,
156
+ * ElevenLabs, AssemblyAI, Inworld) MUST scrub these before forwarding an open config bag to their
157
+ * SDK/wire — a co-agent config carrying them must be safe on every provider.
158
+ */
159
+ export const REALTIME_SHARED_CONFIG_KEYS = [
160
+ 'effortLevel',
161
+ 'reasoningEffort',
162
+ 'parallelToolCalls',
163
+ 'mcpTools',
164
+ 'inputTranscriptionModel',
165
+ 'voice',
166
+ 'disableAutoResponse',
167
+ 'endpoint',
168
+ 'sampleRate',
169
+ 'proxyBaseUrl',
170
+ ];
152
171
  //# sourceMappingURL=baseRealtime.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"baseRealtime.js","sourceRoot":"","sources":["../../src/generic/baseRealtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAoBxC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6DG;AAEH;;;;;;;;;;GAUG;AACH,MAAM,UAAU,eAAe,CAAC,OAAe;IAC3C,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IACvD,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,KAAK,EAAE,CAAC;QAC3C,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;AACL,CAAC;AAED,MAAM,OAAgB,iBAAkB,SAAQ,SAAS;IAcrD;;;;;;;;;;;OAWG;IACH,IAAW,oBAAoB;QAC3B,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACI,KAAK,CAAC,mBAAmB,CAAC,OAA8B;QAC3D,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,mDAAmD,CAAC,CAAC;IACjG,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,IAAW,aAAa;QACpB,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;;;;;;;;;OAUG;IACH,IAAW,eAAe;QACtB,OAAO,EAAE,CAAC;IACd,CAAC;CACJ"}
1
+ {"version":3,"file":"baseRealtime.js","sourceRoot":"","sources":["../../src/generic/baseRealtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAoBxC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6DG;AAEH;;;;;;;;;;GAUG;AACH,MAAM,UAAU,eAAe,CAAC,OAAe;IAC3C,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IACvD,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,KAAK,EAAE,CAAC;QAC3C,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;AACL,CAAC;AAED,MAAM,OAAgB,iBAAkB,SAAQ,SAAS;IAcrD;;;;;;;;;;;OAWG;IACH,IAAW,oBAAoB;QAC3B,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACI,KAAK,CAAC,mBAAmB,CAAC,OAA8B;QAC3D,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,mDAAmD,CAAC,CAAC;IACjG,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,IAAW,aAAa;QACpB,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;;;;;;;;;OAUG;IACH,IAAW,eAAe;QACtB,OAAO,EAAE,CAAC;IACd,CAAC;CACJ;AAED;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAsB;IAC1D,aAAa;IACb,iBAAiB;IACjB,mBAAmB;IACnB,UAAU;IACV,yBAAyB;IACzB,OAAO;IACP,qBAAqB;IACrB,UAAU;IACV,YAAY;IACZ,cAAc;CACR,CAAC"}
@@ -2,12 +2,28 @@ import { BaseParams, ModelUsage } from "./baseModel.js";
2
2
  import { ChatMessageContent } from "./chat.types.js";
3
3
  export type EmbedTextParams = BaseParams & {
4
4
  text: string;
5
+ /**
6
+ * Optional output dimension override. Only supported by models that accept a
7
+ * `dimensions` parameter (e.g. OpenAI `text-embedding-3-*`). When omitted,
8
+ * the model's native default dimension is used. The value stored in
9
+ * `MJ: Vector Indexes.Dimensions` is the authoritative source — callers should
10
+ * read it from there and pass it here.
11
+ */
12
+ dimensions?: number;
5
13
  };
6
14
  export type EmbedTextsParams = BaseParams & {
7
15
  texts: string[];
16
+ /**
17
+ * Optional output dimension override. See `EmbedTextParams.dimensions`.
18
+ */
19
+ dimensions?: number;
8
20
  };
9
21
  export type EmbedContentParams = BaseParams & {
10
22
  content: ChatMessageContent;
23
+ /**
24
+ * Optional output dimension override. See `EmbedTextParams.dimensions`.
25
+ */
26
+ dimensions?: number;
11
27
  };
12
28
  export type EmbedResult = {
13
29
  object: 'object' | 'list';
@@ -1 +1 @@
1
- {"version":3,"file":"embed.types.d.ts","sourceRoot":"","sources":["../../src/generic/embed.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAElD,MAAM,MAAM,eAAe,GAAG,UAAU,GAAG;IACvC,IAAI,EAAE,MAAM,CAAA;CACf,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG,UAAU,GAAG;IACxC,KAAK,EAAE,MAAM,EAAE,CAAA;CAClB,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG,UAAU,GAAG;IAC1C,OAAO,EAAE,kBAAkB,CAAA;CAC9B,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IACtB,MAAM,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,UAAU,CAAC;CAC1B,CAAA;AAED,MAAM,MAAM,eAAe,GAAG,WAAW,GAAG;IACxC,MAAM,EAAE,MAAM,EAAE,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG,WAAW,GAAG;IACzC,OAAO,EAAE,MAAM,EAAE,EAAE,CAAA;CACtB,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG,eAAe,CAAA"}
1
+ {"version":3,"file":"embed.types.d.ts","sourceRoot":"","sources":["../../src/generic/embed.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAElD,MAAM,MAAM,eAAe,GAAG,UAAU,GAAG;IACvC,IAAI,EAAE,MAAM,CAAA;IACZ;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;CACtB,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG,UAAU,GAAG;IACxC,KAAK,EAAE,MAAM,EAAE,CAAA;IACf;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;CACtB,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG,UAAU,GAAG;IAC1C,OAAO,EAAE,kBAAkB,CAAA;IAC3B;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;CACtB,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IACtB,MAAM,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,UAAU,CAAC;CAC1B,CAAA;AAED,MAAM,MAAM,eAAe,GAAG,WAAW,GAAG;IACxC,MAAM,EAAE,MAAM,EAAE,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG,WAAW,GAAG;IACzC,OAAO,EAAE,MAAM,EAAE,EAAE,CAAA;CACtB,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG,eAAe,CAAA"}
@@ -0,0 +1,88 @@
1
+ import { BaseSingleton } from '@memberjunction/global';
2
+ /**
3
+ * The URL path MJAPI's realtime proxy listens on for websocket upgrades, and that provider drivers
4
+ * embed in the browser-facing `wss://<mjapi-public><REALTIME_PROXY_PATH>?ticket=<id>` URL. Shared here
5
+ * (in Core) so the minting side (driver) and the serving side (MJServer proxy) can never drift.
6
+ */
7
+ export declare const REALTIME_PROXY_PATH = "/realtime-proxy";
8
+ /**
9
+ * A short-lived, one-time authorization to open ONE upstream realtime websocket through the
10
+ * MJAPI realtime proxy. Stored server-side only — the upstream URL and (optional) auth header
11
+ * NEVER leave the server; the browser only ever receives the opaque ticket id embedded in the
12
+ * proxy URL it connects to.
13
+ *
14
+ * This is the seam that lets a **self-hosted** realtime provider (e.g. HuggingFace
15
+ * speech-to-speech) participate in the shipped client-direct audio topology WITHOUT exposing
16
+ * the internal endpoint to the browser: the provider driver mints a ticket (via
17
+ * {@link RealtimeProxyRegistry.Issue}) pointing at the internal endpoint, hands the browser a
18
+ * `wss://<mjapi-public>/realtime-proxy?ticket=<id>` URL, and MJAPI's proxy consumes the ticket
19
+ * ({@link RealtimeProxyRegistry.Consume}) to open the authenticated upstream leg and pump frames.
20
+ */
21
+ export interface RealtimeProxyTicketEntry {
22
+ /** The internal upstream websocket URL to tunnel to (e.g. `ws://hf-s2s.internal:8000/v1/realtime`). */
23
+ UpstreamUrl: string;
24
+ /**
25
+ * Full `Authorization` header value applied on the UPSTREAM socket only (e.g. `Bearer <key>`).
26
+ * Optional — many self-hosted endpoints are unauthenticated. Never serialized to the browser.
27
+ */
28
+ UpstreamAuthHeader?: string;
29
+ /** The MJ user this ticket was minted for (for audit / optional validation at consume time). */
30
+ UserID?: string;
31
+ /** Epoch-ms after which the ticket is invalid. Enforced on {@link RealtimeProxyRegistry.Consume}. */
32
+ ExpiresAtMs: number;
33
+ }
34
+ /** The parameters for minting a proxy ticket via {@link RealtimeProxyRegistry.Issue}. */
35
+ export interface RealtimeProxyIssueParams {
36
+ /** The internal upstream websocket URL to tunnel to. */
37
+ UpstreamUrl: string;
38
+ /** Full `Authorization` header value for the upstream socket (optional). */
39
+ UpstreamAuthHeader?: string;
40
+ /** The MJ user the ticket is for (optional). */
41
+ UserID?: string;
42
+ /** Time-to-live, in seconds, for the ONE upstream open this ticket authorizes. */
43
+ TTLSeconds: number;
44
+ }
45
+ /** The result of minting a ticket: the opaque id to embed in the browser proxy URL, plus its expiry. */
46
+ export interface RealtimeProxyTicket {
47
+ /** The opaque, single-use ticket id (a UUID) — embedded in the browser-facing proxy URL. */
48
+ ID: string;
49
+ /** ISO-8601 timestamp at which the ticket expires. */
50
+ ExpiresAt: string;
51
+ }
52
+ /**
53
+ * Process-wide, in-memory registry of one-time realtime-proxy tickets (Global Object Store backed
54
+ * via {@link BaseSingleton}, so the provider driver that mints and the MJAPI proxy that consumes
55
+ * share the SAME instance even under bundler code duplication).
56
+ *
57
+ * Intentionally has **no** background timer: entries are pruned lazily on every {@link Issue} /
58
+ * {@link Consume}, so there is nothing to shut down and no `IShutdownable` wiring is required. Tickets
59
+ * are short-lived and single-use — the map never grows unbounded in practice.
60
+ *
61
+ * Deliberately transport-agnostic: it stores plain data (URL + optional auth + expiry) and knows
62
+ * nothing about websockets or any specific provider. The proxy transport lives in MJServer; the
63
+ * mint logic lives in the provider driver. This is the neutral shared state between them.
64
+ */
65
+ export declare class RealtimeProxyRegistry extends BaseSingleton<RealtimeProxyRegistry> {
66
+ private readonly _tickets;
67
+ protected constructor();
68
+ /** Process-wide singleton accessor. */
69
+ static get Instance(): RealtimeProxyRegistry;
70
+ /**
71
+ * Mints a single-use ticket authorizing ONE upstream open within its TTL window, and returns the
72
+ * opaque id to embed in the browser-facing proxy URL. Prunes expired tickets as a side effect.
73
+ */
74
+ Issue(params: RealtimeProxyIssueParams): RealtimeProxyTicket;
75
+ /**
76
+ * Consumes a ticket by id: returns its entry and DELETES it (single-use), or `null` if the id is
77
+ * unknown or expired. Prunes expired tickets as a side effect. The proxy calls this exactly once,
78
+ * during the websocket upgrade, before opening the upstream leg.
79
+ */
80
+ Consume(id: string): RealtimeProxyTicketEntry | null;
81
+ /** Current number of live (un-consumed, un-expired) tickets — for diagnostics/tests. */
82
+ get Count(): number;
83
+ /** Drops every ticket whose window has closed. */
84
+ private pruneExpired;
85
+ /** Generates an opaque ticket id. Uses the platform crypto UUID (Node 16+ / browsers). */
86
+ private static newTicketId;
87
+ }
88
+ //# sourceMappingURL=realtimeProxyRegistry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"realtimeProxyRegistry.d.ts","sourceRoot":"","sources":["../../src/generic/realtimeProxyRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,oBAAoB,CAAC;AAErD;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,wBAAwB;IACrC,uGAAuG;IACvG,WAAW,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,gGAAgG;IAChG,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qGAAqG;IACrG,WAAW,EAAE,MAAM,CAAC;CACvB;AAED,yFAAyF;AACzF,MAAM,WAAW,wBAAwB;IACrC,wDAAwD;IACxD,WAAW,EAAE,MAAM,CAAC;IACpB,4EAA4E;IAC5E,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,gDAAgD;IAChD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kFAAkF;IAClF,UAAU,EAAE,MAAM,CAAC;CACtB;AAED,wGAAwG;AACxG,MAAM,WAAW,mBAAmB;IAChC,4FAA4F;IAC5F,EAAE,EAAE,MAAM,CAAC;IACX,sDAAsD;IACtD,SAAS,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,qBAAsB,SAAQ,aAAa,CAAC,qBAAqB,CAAC;IAC3E,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAoD;IAE7E,SAAS;IAIT,uCAAuC;IACvC,WAAkB,QAAQ,IAAI,qBAAqB,CAElD;IAED;;;OAGG;IACI,KAAK,CAAC,MAAM,EAAE,wBAAwB,GAAG,mBAAmB;IAanE;;;;OAIG;IACI,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,wBAAwB,GAAG,IAAI;IAgB3D,wFAAwF;IACxF,IAAW,KAAK,IAAI,MAAM,CAGzB;IAED,kDAAkD;IAClD,OAAO,CAAC,YAAY;IASpB,0FAA0F;IAC1F,OAAO,CAAC,MAAM,CAAC,WAAW;CAY7B"}
@@ -0,0 +1,94 @@
1
+ import { BaseSingleton } from '@memberjunction/global';
2
+ /**
3
+ * The URL path MJAPI's realtime proxy listens on for websocket upgrades, and that provider drivers
4
+ * embed in the browser-facing `wss://<mjapi-public><REALTIME_PROXY_PATH>?ticket=<id>` URL. Shared here
5
+ * (in Core) so the minting side (driver) and the serving side (MJServer proxy) can never drift.
6
+ */
7
+ export const REALTIME_PROXY_PATH = '/realtime-proxy';
8
+ /**
9
+ * Process-wide, in-memory registry of one-time realtime-proxy tickets (Global Object Store backed
10
+ * via {@link BaseSingleton}, so the provider driver that mints and the MJAPI proxy that consumes
11
+ * share the SAME instance even under bundler code duplication).
12
+ *
13
+ * Intentionally has **no** background timer: entries are pruned lazily on every {@link Issue} /
14
+ * {@link Consume}, so there is nothing to shut down and no `IShutdownable` wiring is required. Tickets
15
+ * are short-lived and single-use — the map never grows unbounded in practice.
16
+ *
17
+ * Deliberately transport-agnostic: it stores plain data (URL + optional auth + expiry) and knows
18
+ * nothing about websockets or any specific provider. The proxy transport lives in MJServer; the
19
+ * mint logic lives in the provider driver. This is the neutral shared state between them.
20
+ */
21
+ export class RealtimeProxyRegistry extends BaseSingleton {
22
+ constructor() {
23
+ super();
24
+ this._tickets = new Map();
25
+ }
26
+ /** Process-wide singleton accessor. */
27
+ static get Instance() {
28
+ return super.getInstance();
29
+ }
30
+ /**
31
+ * Mints a single-use ticket authorizing ONE upstream open within its TTL window, and returns the
32
+ * opaque id to embed in the browser-facing proxy URL. Prunes expired tickets as a side effect.
33
+ */
34
+ Issue(params) {
35
+ this.pruneExpired();
36
+ const id = RealtimeProxyRegistry.newTicketId();
37
+ const expiresAtMs = Date.now() + Math.max(1, params.TTLSeconds) * 1000;
38
+ this._tickets.set(id, {
39
+ UpstreamUrl: params.UpstreamUrl,
40
+ UpstreamAuthHeader: params.UpstreamAuthHeader,
41
+ UserID: params.UserID,
42
+ ExpiresAtMs: expiresAtMs,
43
+ });
44
+ return { ID: id, ExpiresAt: new Date(expiresAtMs).toISOString() };
45
+ }
46
+ /**
47
+ * Consumes a ticket by id: returns its entry and DELETES it (single-use), or `null` if the id is
48
+ * unknown or expired. Prunes expired tickets as a side effect. The proxy calls this exactly once,
49
+ * during the websocket upgrade, before opening the upstream leg.
50
+ */
51
+ Consume(id) {
52
+ this.pruneExpired();
53
+ if (!id) {
54
+ return null;
55
+ }
56
+ const entry = this._tickets.get(id);
57
+ if (!entry) {
58
+ return null;
59
+ }
60
+ this._tickets.delete(id); // single-use — always removed on first consume
61
+ if (entry.ExpiresAtMs <= Date.now()) {
62
+ return null; // expired between prune and lookup — treat as invalid
63
+ }
64
+ return entry;
65
+ }
66
+ /** Current number of live (un-consumed, un-expired) tickets — for diagnostics/tests. */
67
+ get Count() {
68
+ this.pruneExpired();
69
+ return this._tickets.size;
70
+ }
71
+ /** Drops every ticket whose window has closed. */
72
+ pruneExpired() {
73
+ const now = Date.now();
74
+ for (const [id, entry] of this._tickets) {
75
+ if (entry.ExpiresAtMs <= now) {
76
+ this._tickets.delete(id);
77
+ }
78
+ }
79
+ }
80
+ /** Generates an opaque ticket id. Uses the platform crypto UUID (Node 16+ / browsers). */
81
+ static newTicketId() {
82
+ const cryptoObj = globalThis.crypto;
83
+ if (cryptoObj?.randomUUID) {
84
+ return cryptoObj.randomUUID();
85
+ }
86
+ // Fallback: a UUID-shaped random string (only reached on runtimes without crypto.randomUUID).
87
+ return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, (c) => {
88
+ const r = Math.floor(Math.random() * 16);
89
+ const v = c === 'x' ? r : (r & 0x3) | 0x8;
90
+ return v.toString(16);
91
+ });
92
+ }
93
+ }
94
+ //# sourceMappingURL=realtimeProxyRegistry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"realtimeProxyRegistry.js","sourceRoot":"","sources":["../../src/generic/realtimeProxyRegistry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * @fileoverview Pure helper for recognizing a STREAMED transcript continuation.
3
+ *
4
+ * Deliberately dependency-free: it is imported by realtime drivers on both the server
5
+ * (`@memberjunction/ai-openai`) and the browser (`@memberjunction/ai-realtime-client`), and keeping it
6
+ * free of base-class imports lets those packages' tests exercise the REAL implementation instead of a
7
+ * hand-written stub that could silently drift from it.
8
+ *
9
+ * @module @memberjunction/ai
10
+ */
11
+ /**
12
+ * Decides whether a newly-arrived transcript is a CONTINUATION of one already in flight — i.e. the
13
+ * same utterance re-emitted with more words on the end — rather than a genuinely new turn.
14
+ *
15
+ * **Why this exists.** Providers that stream their input transcription (Grok) re-emit the FULL
16
+ * accumulated utterance on every `completed` frame, and their VAD fires `speech_started` on ordinary
17
+ * mid-sentence pauses. Treating each `speech_started` as a hard turn boundary therefore splits ONE
18
+ * spoken thought into several persisted turns, each a longer copy of the last:
19
+ *
20
+ * ```
21
+ * "...including whiteboarding, uh, remote." ← turn 1
22
+ * "...including whiteboarding, uh, remote, so just get going." ← turn 2 (repeats turn 1)
23
+ * ```
24
+ *
25
+ * **Why a naive prefix test is not enough.** ASR engines RE-PUNCTUATE as a sentence continues, so the
26
+ * earlier text is frequently *not* a literal prefix of the later one (`remote.` becomes `remote,`
27
+ * above — observed in production). Both sides are therefore normalized — lowercased, punctuation and
28
+ * repeated whitespace collapsed — before the prefix comparison, which is what makes the real case match.
29
+ *
30
+ * Callers should scope this to a single speaker turn: clear the tracked text once the model responds,
31
+ * so two genuinely separate utterances that happen to share an opening can never be merged.
32
+ *
33
+ * @param previous The text of the turn currently in flight (empty/undefined ⇒ never a continuation).
34
+ * @param next The newly-arrived transcript text.
35
+ * @returns True when `next` extends `previous` and should REPLACE it in place.
36
+ */
37
+ export declare function IsTranscriptContinuation(previous: string | undefined, next: string | undefined): boolean;
38
+ /**
39
+ * Reduces a transcript to a comparison form: lowercased, with every run of non-alphanumeric
40
+ * characters (punctuation, whitespace) collapsed to a single space and the ends trimmed.
41
+ *
42
+ * This is what makes continuation detection survive an ASR re-punctuating mid-sentence.
43
+ *
44
+ * @param value The raw transcript text.
45
+ * @returns The normalized comparison form.
46
+ */
47
+ export declare function NormalizeTranscriptForComparison(value: string): string;
48
+ //# sourceMappingURL=transcriptContinuation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transcriptContinuation.d.ts","sourceRoot":"","sources":["../../src/generic/transcriptContinuation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAWxG;AAED;;;;;;;;GAQG;AACH,wBAAgB,gCAAgC,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEtE"}
@@ -0,0 +1,61 @@
1
+ /**
2
+ * @fileoverview Pure helper for recognizing a STREAMED transcript continuation.
3
+ *
4
+ * Deliberately dependency-free: it is imported by realtime drivers on both the server
5
+ * (`@memberjunction/ai-openai`) and the browser (`@memberjunction/ai-realtime-client`), and keeping it
6
+ * free of base-class imports lets those packages' tests exercise the REAL implementation instead of a
7
+ * hand-written stub that could silently drift from it.
8
+ *
9
+ * @module @memberjunction/ai
10
+ */
11
+ /**
12
+ * Decides whether a newly-arrived transcript is a CONTINUATION of one already in flight — i.e. the
13
+ * same utterance re-emitted with more words on the end — rather than a genuinely new turn.
14
+ *
15
+ * **Why this exists.** Providers that stream their input transcription (Grok) re-emit the FULL
16
+ * accumulated utterance on every `completed` frame, and their VAD fires `speech_started` on ordinary
17
+ * mid-sentence pauses. Treating each `speech_started` as a hard turn boundary therefore splits ONE
18
+ * spoken thought into several persisted turns, each a longer copy of the last:
19
+ *
20
+ * ```
21
+ * "...including whiteboarding, uh, remote." ← turn 1
22
+ * "...including whiteboarding, uh, remote, so just get going." ← turn 2 (repeats turn 1)
23
+ * ```
24
+ *
25
+ * **Why a naive prefix test is not enough.** ASR engines RE-PUNCTUATE as a sentence continues, so the
26
+ * earlier text is frequently *not* a literal prefix of the later one (`remote.` becomes `remote,`
27
+ * above — observed in production). Both sides are therefore normalized — lowercased, punctuation and
28
+ * repeated whitespace collapsed — before the prefix comparison, which is what makes the real case match.
29
+ *
30
+ * Callers should scope this to a single speaker turn: clear the tracked text once the model responds,
31
+ * so two genuinely separate utterances that happen to share an opening can never be merged.
32
+ *
33
+ * @param previous The text of the turn currently in flight (empty/undefined ⇒ never a continuation).
34
+ * @param next The newly-arrived transcript text.
35
+ * @returns True when `next` extends `previous` and should REPLACE it in place.
36
+ */
37
+ export function IsTranscriptContinuation(previous, next) {
38
+ if (!previous || !next) {
39
+ return false;
40
+ }
41
+ const before = NormalizeTranscriptForComparison(previous);
42
+ const after = NormalizeTranscriptForComparison(next);
43
+ if (!before || !after) {
44
+ return false;
45
+ }
46
+ // Strictly longer AND starting with everything seen so far ⇒ the same utterance, extended.
47
+ return after.length > before.length && after.startsWith(before);
48
+ }
49
+ /**
50
+ * Reduces a transcript to a comparison form: lowercased, with every run of non-alphanumeric
51
+ * characters (punctuation, whitespace) collapsed to a single space and the ends trimmed.
52
+ *
53
+ * This is what makes continuation detection survive an ASR re-punctuating mid-sentence.
54
+ *
55
+ * @param value The raw transcript text.
56
+ * @returns The normalized comparison form.
57
+ */
58
+ export function NormalizeTranscriptForComparison(value) {
59
+ return value.toLowerCase().replace(/[^\p{L}\p{N}]+/gu, ' ').trim();
60
+ }
61
+ //# sourceMappingURL=transcriptContinuation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transcriptContinuation.js","sourceRoot":"","sources":["../../src/generic/transcriptContinuation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,UAAU,wBAAwB,CAAC,QAA4B,EAAE,IAAwB;IAC3F,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QACrB,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,MAAM,MAAM,GAAG,gCAAgC,CAAC,QAAQ,CAAC,CAAC;IAC1D,MAAM,KAAK,GAAG,gCAAgC,CAAC,IAAI,CAAC,CAAC;IACrD,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACpB,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,2FAA2F;IAC3F,OAAO,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;AACpE,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,gCAAgC,CAAC,KAAa;IAC1D,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;AACvE,CAAC"}
package/dist/index.d.ts CHANGED
@@ -12,6 +12,8 @@ export * from './generic/baseEmbeddings.js';
12
12
  export * from './generic/baseAudio.js';
13
13
  export * from './generic/baseVideo.js';
14
14
  export * from './generic/baseRealtime.js';
15
+ export * from './generic/transcriptContinuation.js';
16
+ export * from './generic/realtimeProxyRegistry.js';
15
17
  export * from './generic/baseRealtimeChannelServer.js';
16
18
  export * from './generic/errorTypes.js';
17
19
  export * from './generic/errorAnalyzer.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAA;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qCAAqC,CAAC;AACpD,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAA;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,kCAAkC,CAAC;AACjD,cAAc,iCAAiC,CAAC;AAChD,cAAc,qCAAqC,CAAC;AACpD,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC"}
package/dist/index.js CHANGED
@@ -12,6 +12,8 @@ export * from './generic/baseEmbeddings.js';
12
12
  export * from './generic/baseAudio.js';
13
13
  export * from './generic/baseVideo.js';
14
14
  export * from './generic/baseRealtime.js';
15
+ export * from './generic/transcriptContinuation.js';
16
+ export * from './generic/realtimeProxyRegistry.js';
15
17
  export * from './generic/baseRealtimeChannelServer.js';
16
18
  export * from './generic/errorTypes.js';
17
19
  export * from './generic/errorAnalyzer.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAA;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qCAAqC,CAAC;AACpD,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAA;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,kCAAkC,CAAC;AACjD,cAAc,iCAAiC,CAAC;AAChD,cAAc,qCAAqC,CAAC;AACpD,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@memberjunction/ai",
3
3
  "type": "module",
4
- "version": "5.47.0",
4
+ "version": "5.49.0",
5
5
  "description": "MemberJunction: AI - core components for abstracting LLMs and other AI model types that are usable anywhere without ANY other MJ dependencies past @memberjunction/global which itself has zero additional dependencies.",
6
6
  "main": "dist/index.js",
7
7
  "types": "dist/index.d.ts",
@@ -17,7 +17,7 @@
17
17
  "author": "MemberJunction.com",
18
18
  "license": "ISC",
19
19
  "dependencies": {
20
- "@memberjunction/global": "5.47.0",
20
+ "@memberjunction/global": "5.49.0",
21
21
  "dotenv": "^17.2.4",
22
22
  "rxjs": "^7.8.2"
23
23
  },