@frugalco/frugal-sdk-node 0.2.0 → 0.4.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 (55) hide show
  1. package/README.md +21 -10
  2. package/dist/config.d.ts +17 -0
  3. package/dist/config.d.ts.map +1 -1
  4. package/dist/config.js +130 -4
  5. package/dist/config.js.map +1 -1
  6. package/dist/duplicate-filter.d.ts +46 -0
  7. package/dist/duplicate-filter.d.ts.map +1 -0
  8. package/dist/duplicate-filter.js +168 -0
  9. package/dist/duplicate-filter.js.map +1 -0
  10. package/dist/index.d.ts +2 -0
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/index.js +1 -0
  13. package/dist/index.js.map +1 -1
  14. package/dist/instrument.d.ts +36 -1
  15. package/dist/instrument.d.ts.map +1 -1
  16. package/dist/instrument.js +242 -22
  17. package/dist/instrument.js.map +1 -1
  18. package/dist/otel.d.ts +2 -0
  19. package/dist/otel.d.ts.map +1 -1
  20. package/dist/otel.js +17 -2
  21. package/dist/otel.js.map +1 -1
  22. package/dist/prompt-analyzer.d.ts +12 -1
  23. package/dist/prompt-analyzer.d.ts.map +1 -1
  24. package/dist/prompt-analyzer.js +185 -14
  25. package/dist/prompt-analyzer.js.map +1 -1
  26. package/dist/providers.d.ts +87 -0
  27. package/dist/providers.d.ts.map +1 -0
  28. package/dist/providers.js +128 -0
  29. package/dist/providers.js.map +1 -0
  30. package/dist/semconv.d.ts +12 -0
  31. package/dist/semconv.d.ts.map +1 -1
  32. package/dist/semconv.js +31 -0
  33. package/dist/semconv.js.map +1 -1
  34. package/dist/streams.d.ts.map +1 -1
  35. package/dist/streams.js +15 -2
  36. package/dist/streams.js.map +1 -1
  37. package/dist/track.d.ts +32 -4
  38. package/dist/track.d.ts.map +1 -1
  39. package/dist/track.js +2 -1
  40. package/dist/track.js.map +1 -1
  41. package/dist/wrappers/anthropic.d.ts.map +1 -1
  42. package/dist/wrappers/anthropic.js +9 -1
  43. package/dist/wrappers/anthropic.js.map +1 -1
  44. package/dist/wrappers/batch.d.ts +11 -0
  45. package/dist/wrappers/batch.d.ts.map +1 -0
  46. package/dist/wrappers/batch.js +338 -0
  47. package/dist/wrappers/batch.js.map +1 -0
  48. package/dist/wrappers/openai.d.ts.map +1 -1
  49. package/dist/wrappers/openai.js +37 -30
  50. package/dist/wrappers/openai.js.map +1 -1
  51. package/dist/wrappers/patching.d.ts +10 -0
  52. package/dist/wrappers/patching.d.ts.map +1 -0
  53. package/dist/wrappers/patching.js +38 -0
  54. package/dist/wrappers/patching.js.map +1 -0
  55. package/package.json +1 -1
@@ -10,7 +10,8 @@ import { getInstruments } from "../otel.js";
10
10
  import { startCall, } from "../instrument.js";
11
11
  import { FRUGAL_CUSTOMER_ID, FRUGAL_PROJECT_ID, OP_CHAT, OP_EMBEDDINGS, OP_TEXT_COMPLETION, SYSTEM_OPENAI, } from "../semconv.js";
12
12
  import { wrapStreamObject } from "../streams.js";
13
- const FRUGAL_MARK = "__frugalWrapped";
13
+ import { patchOpenAIBatchCreate } from "./batch.js";
14
+ import { FRUGAL_MARK, installWrapped, resolveChain, unwrappedMethod, } from "./patching.js";
14
15
  export function wrapOpenAI(client) {
15
16
  const config = loadConfig();
16
17
  if (config === null)
@@ -27,7 +28,7 @@ export function wrapOpenAI(client) {
27
28
  config,
28
29
  usageExtractor: chatUsage,
29
30
  streamHandler: chatStreamEvent,
30
- capturePayload: true,
31
+ capturePayload: captureOpenAIPayload,
31
32
  });
32
33
  patch(c, ["completions"], "create", {
33
34
  operation: OP_TEXT_COMPLETION,
@@ -36,7 +37,7 @@ export function wrapOpenAI(client) {
36
37
  config,
37
38
  usageExtractor: completionUsage,
38
39
  streamHandler: chatStreamEvent,
39
- capturePayload: true,
40
+ capturePayload: captureOpenAIPayload,
40
41
  });
41
42
  patch(c, ["embeddings"], "create", {
42
43
  operation: OP_EMBEDDINGS,
@@ -54,8 +55,10 @@ export function wrapOpenAI(client) {
54
55
  usageExtractor: responsesUsage,
55
56
  streamHandler: responsesStreamEvent,
56
57
  required: false,
57
- capturePayload: true,
58
+ capturePayload: captureResponsesPayload,
58
59
  });
60
+ // Batch API submissions get the frugal.batched="true" side of the contract.
61
+ patchOpenAIBatchCreate(c, { config, system, skipDirs });
59
62
  try {
60
63
  Object.defineProperty(c, FRUGAL_MARK, {
61
64
  value: true,
@@ -88,31 +91,14 @@ function buildSkipDirs() {
88
91
  return dirs;
89
92
  }
90
93
  function patch(client, chain, methodName, opts) {
91
- let target = client;
92
- for (const step of chain) {
93
- if (!target || typeof target !== "object") {
94
- target = undefined;
95
- break;
96
- }
97
- target = target[step];
98
- if (!target)
99
- break;
100
- }
94
+ const target = resolveChain(client, chain);
101
95
  if (!target)
102
96
  return;
103
- const original = target[methodName];
104
- if (typeof original !== "function")
105
- return;
106
- if (original[FRUGAL_MARK])
97
+ const original = unwrappedMethod(target, methodName);
98
+ if (!original)
107
99
  return;
108
100
  const wrapped = makeWrapper(original.bind(target), opts);
109
- wrapped[FRUGAL_MARK] = true;
110
- try {
111
- target[methodName] = wrapped;
112
- }
113
- catch {
114
- // ignore — nothing we can do if the property is non-writable
115
- }
101
+ installWrapped(target, methodName, wrapped);
116
102
  }
117
103
  function makeWrapper(original, opts) {
118
104
  return function wrapped(...args) {
@@ -132,7 +118,7 @@ function makeWrapper(original, opts) {
132
118
  requestModel: typeof params.model === "string" ? params.model : "<unknown>",
133
119
  skipPackageDirs: opts.skipDirs,
134
120
  batched: false,
135
- requestPayload: opts.capturePayload ? captureOpenAIPayload(params) : undefined,
121
+ requestPayload: opts.capturePayload ? opts.capturePayload(params) : undefined,
136
122
  };
137
123
  emit = startCall(opts.config, ctx);
138
124
  }
@@ -231,16 +217,37 @@ function isPromiseLike(value) {
231
217
  function captureOpenAIPayload(params) {
232
218
  const maxTokensRaw = params.max_tokens ?? params.max_completion_tokens;
233
219
  const maxTokens = typeof maxTokensRaw === "number" ? maxTokensRaw : null;
234
- // The Responses API uses `input` instead of `messages`. Treat both as messages
235
- // for analyzer purposes — they share the role/content shape.
236
- const messages = (params.messages ?? params.input);
237
220
  return {
238
- messages,
221
+ messages: params.messages,
239
222
  tools: params.tools,
240
223
  responseFormat: params.response_format,
241
224
  maxTokens,
242
225
  };
243
226
  }
227
+ // The Responses API spells everything differently from chat completions:
228
+ // `input` (array of role/content items OR a bare string), `instructions`
229
+ // (system prompt), `max_output_tokens`, and `text.format` (response_format).
230
+ // Each must be mapped, or two calls differing only in instructions/schema/cap
231
+ // would hash identically and fabricate repeat_seen. A bare-string input is the
232
+ // single-user-message form, so it is captured as exactly that — giving it the
233
+ // same duplicate/history signal as the array form instead of none.
234
+ function captureResponsesPayload(params) {
235
+ const input = params.input;
236
+ const messages = typeof input === "string" ? [{ role: "user", content: input }] : input;
237
+ const format = params.text && typeof params.text === "object"
238
+ ? params.text.format
239
+ : undefined;
240
+ return {
241
+ messages,
242
+ system: params.instructions,
243
+ tools: params.tools,
244
+ responseFormat: format,
245
+ maxTokens: typeof params.max_output_tokens === "number" ? params.max_output_tokens : null,
246
+ previousResponseId: typeof params.previous_response_id === "string"
247
+ ? params.previous_response_id
248
+ : null,
249
+ };
250
+ }
244
251
  // --- usage extractors ------------------------------------------------------
245
252
  function attr(obj, key) {
246
253
  if (obj === null || obj === undefined)
@@ -1 +1 @@
1
- {"version":3,"file":"openai.js","sourceRoot":"","sources":["../../src/wrappers/openai.ts"],"names":[],"mappings":"AAAA,yBAAyB;AACzB,EAAE;AACF,8EAA8E;AAC9E,8EAA8E;AAC9E,oEAAoE;AAEpE,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAe,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EACL,SAAS,GAGV,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,OAAO,EACP,aAAa,EACb,kBAAkB,EAClB,aAAa,GACd,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,gBAAgB,EAA2B,MAAM,eAAe,CAAC;AAE1E,MAAM,WAAW,GAAG,iBAAiB,CAAC;AAUtC,MAAM,UAAU,UAAU,CAAI,MAAS;IACrC,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;IAC5B,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,MAAM,CAAC;IAEnC,MAAM,CAAC,GAAG,MAA8B,CAAC;IACzC,IAAI,CAAC,CAAC,WAAW,CAAC;QAAE,OAAO,MAAM,CAAC;IAElC,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACpC,MAAM,QAAQ,GAAG,aAAa,EAAE,CAAC;IAEjC,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,CAAC,EAAE,QAAQ,EAAE;QAC1C,SAAS,EAAE,OAAO;QAClB,MAAM;QACN,QAAQ;QACR,MAAM;QACN,cAAc,EAAE,SAAS;QACzB,aAAa,EAAE,eAAe;QAC9B,cAAc,EAAE,IAAI;KACrB,CAAC,CAAC;IACH,KAAK,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE;QAClC,SAAS,EAAE,kBAAkB;QAC7B,MAAM;QACN,QAAQ;QACR,MAAM;QACN,cAAc,EAAE,eAAe;QAC/B,aAAa,EAAE,eAAe;QAC9B,cAAc,EAAE,IAAI;KACrB,CAAC,CAAC;IACH,KAAK,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE;QACjC,SAAS,EAAE,aAAa;QACxB,MAAM;QACN,QAAQ;QACR,MAAM;QACN,cAAc,EAAE,cAAc;QAC9B,aAAa,EAAE,IAAI;KACpB,CAAC,CAAC;IACH,KAAK,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,EAAE,QAAQ,EAAE;QAChC,SAAS,EAAE,OAAO;QAClB,MAAM;QACN,QAAQ;QACR,MAAM;QACN,cAAc,EAAE,cAAc;QAC9B,aAAa,EAAE,oBAAoB;QACnC,QAAQ,EAAE,KAAK;QACf,cAAc,EAAE,IAAI;KACrB,CAAC,CAAC;IAEH,IAAI,CAAC;QACH,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,WAAW,EAAE;YACpC,KAAK,EAAE,IAAI;YACX,QAAQ,EAAE,KAAK;YACf,UAAU,EAAE,KAAK;SAClB,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,SAAS;IACX,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,YAAY,CAAC,OAAgB;IACpC,4EAA4E;IAC5E,sDAAsD;IACtD,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,SAAS,aAAa;IACpB,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC9C,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;IACtB,wEAAwE;IACxE,2EAA2E;IAC3E,2EAA2E;IAC3E,wEAAwE;IACxE,4EAA4E;IAC5E,2EAA2E;IAC3E,4EAA4E;IAC5E,4EAA4E;IAC5E,eAAe;IACf,OAAO,IAAI,CAAC;AACd,CAAC;AAaD,SAAS,KAAK,CACZ,MAAiB,EACjB,KAAwB,EACxB,UAAkB,EAClB,IAAkB;IAElB,IAAI,MAAM,GAAwC,MAGjD,CAAC;IACF,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC1C,MAAM,GAAG,SAAS,CAAC;YACnB,MAAM;QACR,CAAC;QACD,MAAM,GAAG,MAAM,CAAC,IAAI,CAAwC,CAAC;QAC7D,IAAI,CAAC,MAAM;YAAE,MAAM;IACrB,CAAC;IACD,IAAI,CAAC,MAAM;QAAE,OAAO;IAEpB,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,CAErB,CAAC;IACd,IAAI,OAAO,QAAQ,KAAK,UAAU;QAAE,OAAO;IAC3C,IAAK,QAAwC,CAAC,WAAW,CAAC;QAAE,OAAO;IAEnE,MAAM,OAAO,GAAG,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC;IACxD,OAAuC,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC;IAC7D,IAAI,CAAC;QACH,MAAM,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,6DAA6D;IAC/D,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAClB,QAAyC,EACzC,IAAkB;IAElB,OAAO,SAAS,OAAO,CAAC,GAAG,IAAe;QACxC,iEAAiE;QACjE,gEAAgE;QAChE,IAAI,IAAkC,CAAC;QACvC,IAAI,SAAkB,CAAC;QACvB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAA4B,CAAC;YAC1D,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACnC,IAAI,SAAS,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;gBAC7C,OAAO,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAC;YAC3B,CAAC;YACD,MAAM,GAAG,GAAgB;gBACvB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,YAAY,EAAE,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW;gBAC3E,eAAe,EAAE,IAAI,CAAC,QAAQ;gBAC9B,OAAO,EAAE,KAAK;gBACd,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS;aAC/E,CAAC;YACF,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACrC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,mBAAmB,CAAC,cAAc,EAAE,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YACtD,OAAO,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAC;QAC3B,CAAC;QAED,IAAI,MAAe,CAAC;QACpB,IAAI,CAAC;YACH,MAAM,GAAG,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAC;QAC7B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;YAC5B,MAAM,GAAG,CAAC;QACZ,CAAC;QAED,IAAI,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;YAC1B,OAAO,CAAC,KAAK,IAAI,EAAE;gBACjB,IAAI,OAAgB,CAAC;gBACrB,IAAI,CAAC;oBACH,OAAO,GAAG,MAAM,MAAM,CAAC;gBACzB,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;oBAC5B,MAAM,GAAG,CAAC;gBACZ,CAAC;gBACD,IAAI,SAAS,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;oBAC7C,IAAI,CAAC;wBACH,OAAO,gBAAgB,CACrB,OAA0C,EAC1C,IAAI,EACJ,IAAI,CAAC,aAAa,CACnB,CAAC;oBACJ,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,mBAAmB,CAAC,qBAAqB,EAAE,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;wBAC7D,OAAO,OAAO,CAAC;oBACjB,CAAC;gBACH,CAAC;gBACD,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gBACvD,OAAO,OAAO,CAAC;YACjB,CAAC,CAAC,EAAE,CAAC;QACP,CAAC;QAED,IAAI,SAAS,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;YAC7C,IAAI,CAAC;gBACH,OAAO,gBAAgB,CACrB,MAAyC,EACzC,IAAI,EACJ,IAAI,CAAC,aAAa,CACnB,CAAC;YACJ,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,mBAAmB,CAAC,qBAAqB,EAAE,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC7D,OAAO,MAAM,CAAC;YAChB,CAAC;QACH,CAAC;QACD,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACtD,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,IAAI,CAAC,EAAc;IAC1B,IAAI,CAAC;QACH,EAAE,EAAE,CAAC;IACP,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,mBAAmB,CAAC,UAAU,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;IAC7C,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAC1B,KAAa,EACb,GAAY,EACZ,MAAqB;IAErB,IAAI,KAAK,KAAK,cAAc,EAAE,CAAC;QAC7B,6EAA6E;QAC7E,2DAA2D;QAC3D,WAAW,CACT,qBAAqB,EACrB,OAAO,EACP,gCAAgC,SAAS,CAAC,GAAG,CAAC,EAAE,CACjD,CAAC;IACJ,CAAC;IACD,IAAI,CAAC;QACH,6EAA6E;QAC7E,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,MAAM,WAAW,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;QAC3C,WAAW,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,EAAE;YAChC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzE,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC,SAAS;YACrC,6BAA6B,EAAE,KAAK;YACpC,4BAA4B,EAAE,SAAS,CAAC,GAAG,CAAC;SAC7C,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,gCAAgC;IAClC,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,GAAY;IAC7B,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,IAAI,GAAG,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACpF,OAAO,GAAG,CAAC,IAAI,CAAC;IAClB,CAAC;IACD,IAAI,GAAG,YAAY,KAAK;QAAE,OAAO,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC;IACtD,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,SAAS,aAAa,CAAC,KAAc;IACnC,OAAO,CACL,KAAK,KAAK,IAAI;QACd,OAAO,KAAK,KAAK,QAAQ;QACzB,OAAQ,KAA4B,CAAC,IAAI,KAAK,UAAU,CACzD,CAAC;AACJ,CAAC;AAED,6EAA6E;AAE7E,SAAS,oBAAoB,CAAC,MAA+B;IAC3D,MAAM,YAAY,GACf,MAAM,CAAC,UAAsB,IAAK,MAAM,CAAC,qBAAiC,CAAC;IAC9E,MAAM,SAAS,GAAG,OAAO,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC;IACzE,+EAA+E;IAC/E,6DAA6D;IAC7D,MAAM,QAAQ,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAY,CAAC;IAC9D,OAAO;QACL,QAAQ;QACR,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,cAAc,EAAE,MAAM,CAAC,eAAe;QACtC,SAAS;KACV,CAAC;AACJ,CAAC;AAED,8EAA8E;AAE9E,SAAS,IAAI,CAAC,GAAY,EAAE,GAAW;IACrC,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACxD,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IAC9C,OAAQ,GAA+B,CAAC,GAAG,CAAC,CAAC;AAC/C,CAAC;AAED,SAAS,QAAQ,CAAC,CAAU;IAC1B,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC1C,CAAC;AAED,SAAS,QAAQ,CAAC,CAAU;IAC1B,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC1C,CAAC;AAED,SAAS,SAAS,CAAC,QAAiB;IAClC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACtC,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,EAAE,2BAA2B,CAAC,CAAC;IAC7D,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,EAAE,uBAAuB,CAAC,CAAC;IAC3D,OAAO;QACL,aAAa,EAAE,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAChD,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;QACnD,YAAY,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAAC;QACxD,eAAe,EAAE,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAC;QAChE,eAAe,EAAE,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;KAChE,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,QAAiB;IACxC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACtC,OAAO;QACL,aAAa,EAAE,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAChD,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;QACnD,YAAY,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAAC;KACzD,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,QAAiB;IACvC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACtC,OAAO;QACL,aAAa,EAAE,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAChD,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;KACpD,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,QAAiB;IACvC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACtC,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,EAAE,uBAAuB,CAAC,CAAC;IACxD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,EAAE,sBAAsB,CAAC,CAAC;IACtD,OAAO;QACL,aAAa,EAAE,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAChD,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;QAClD,YAAY,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;QACpD,eAAe,EAAE,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAC;QAC/D,eAAe,EAAE,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;KAC5D,CAAC;AACJ,CAAC;AAED,8EAA8E;AAE9E,SAAS,eAAe,CAAC,KAAc,EAAE,KAAkB;IACzD,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;IAC7C,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,aAAa;QAAE,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC;IAC/D,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACxC,IAAI,CAAC,UAAU;QAAE,OAAO;IACxB,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC;IAC1D,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAC,CAAC;IAC/D,IAAI,KAAK,KAAK,IAAI;QAAE,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC;IAC9C,IAAI,MAAM,KAAK,IAAI;QAAE,KAAK,CAAC,YAAY,GAAG,MAAM,CAAC;IACjD,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,EAAE,2BAA2B,CAAC,CAAC;IAClE,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAC,CAAC;QAClE,IAAI,SAAS,KAAK,IAAI;YAAE,KAAK,CAAC,eAAe,GAAG,SAAS,CAAC;IAC5D,CAAC;IACD,MAAM,aAAa,GAAG,IAAI,CAAC,UAAU,EAAE,uBAAuB,CAAC,CAAC;IAChE,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC,CAAC;QAC9D,IAAI,MAAM,KAAK,IAAI;YAAE,KAAK,CAAC,eAAe,GAAG,MAAM,CAAC;IACtD,CAAC;AACH,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAc,EAAE,KAAkB;IAC9D,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IACzC,IAAI,CAAC,QAAQ;QAAE,OAAO;IACtB,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;IAChD,IAAI,KAAK;QAAE,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC;IACvC,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACvC,IAAI,CAAC,MAAM;QAAE,OAAO;IACpB,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC;IACrD,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC;IACvD,IAAI,KAAK,KAAK,IAAI;QAAE,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC;IAC9C,IAAI,MAAM,KAAK,IAAI;QAAE,KAAK,CAAC,YAAY,GAAG,MAAM,CAAC;IACjD,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC;IACzD,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAC,CAAC;QACjE,IAAI,SAAS,KAAK,IAAI;YAAE,KAAK,CAAC,eAAe,GAAG,SAAS,CAAC;IAC5D,CAAC;IACD,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;IACvD,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC,CAAC;QAC1D,IAAI,MAAM,KAAK,IAAI;YAAE,KAAK,CAAC,eAAe,GAAG,MAAM,CAAC;IACtD,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"openai.js","sourceRoot":"","sources":["../../src/wrappers/openai.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ export declare const FRUGAL_MARK = "__frugalWrapped";
2
+ type AnyRecord = Record<string, unknown>;
3
+ /** Walk `chain` from `root`, returning the final object or undefined. */
4
+ export declare function resolveChain(root: unknown, chain: readonly string[]): AnyRecord | undefined;
5
+ /** The named method of `target`, or undefined when absent / already wrapped. */
6
+ export declare function unwrappedMethod(target: AnyRecord, methodName: string): ((...args: unknown[]) => unknown) | undefined;
7
+ /** Mark `wrapped` and install it on `target`; failures are swallowed. */
8
+ export declare function installWrapped(target: AnyRecord, methodName: string, wrapped: (...args: unknown[]) => unknown): void;
9
+ export {};
10
+ //# sourceMappingURL=patching.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"patching.d.ts","sourceRoot":"","sources":["../../src/wrappers/patching.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,WAAW,oBAAoB,CAAC;AAE7C,KAAK,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEzC,yEAAyE;AACzE,wBAAgB,YAAY,CAC1B,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,SAAS,MAAM,EAAE,GACvB,SAAS,GAAG,SAAS,CAQvB;AAED,gFAAgF;AAChF,wBAAgB,eAAe,CAC7B,MAAM,EAAE,SAAS,EACjB,UAAU,EAAE,MAAM,GACjB,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,GAAG,SAAS,CAK/C;AAED,yEAAyE;AACzE,wBAAgB,cAAc,CAC5B,MAAM,EAAE,SAAS,EACjB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,GACvC,IAAI,CAON"}
@@ -0,0 +1,38 @@
1
+ // Shared method-patching helpers for the provider wrappers.
2
+ //
3
+ // Every wrapper marks what it patched with the same non-enumerable flag so
4
+ // re-wrapping a client (or wrapping a client whose method was already wrapped
5
+ // through another path) is idempotent, and every wrapper walks attribute
6
+ // chains the same way so nested resources (chat.completions, messages.batches)
7
+ // are resolved with identical missing-attribute semantics.
8
+ export const FRUGAL_MARK = "__frugalWrapped";
9
+ /** Walk `chain` from `root`, returning the final object or undefined. */
10
+ export function resolveChain(root, chain) {
11
+ let target = root && typeof root === "object" ? root : undefined;
12
+ for (const step of chain) {
13
+ if (!target || typeof target !== "object")
14
+ return undefined;
15
+ target = target[step];
16
+ }
17
+ return target && typeof target === "object" ? target : undefined;
18
+ }
19
+ /** The named method of `target`, or undefined when absent / already wrapped. */
20
+ export function unwrappedMethod(target, methodName) {
21
+ const original = target[methodName];
22
+ if (typeof original !== "function")
23
+ return undefined;
24
+ if (original[FRUGAL_MARK])
25
+ return undefined;
26
+ return original;
27
+ }
28
+ /** Mark `wrapped` and install it on `target`; failures are swallowed. */
29
+ export function installWrapped(target, methodName, wrapped) {
30
+ wrapped[FRUGAL_MARK] = true;
31
+ try {
32
+ target[methodName] = wrapped;
33
+ }
34
+ catch {
35
+ // ignore — nothing we can do if the property is non-writable
36
+ }
37
+ }
38
+ //# sourceMappingURL=patching.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"patching.js","sourceRoot":"","sources":["../../src/wrappers/patching.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,EAAE;AACF,2EAA2E;AAC3E,8EAA8E;AAC9E,yEAAyE;AACzE,+EAA+E;AAC/E,2DAA2D;AAE3D,MAAM,CAAC,MAAM,WAAW,GAAG,iBAAiB,CAAC;AAI7C,yEAAyE;AACzE,MAAM,UAAU,YAAY,CAC1B,IAAa,EACb,KAAwB;IAExB,IAAI,MAAM,GACR,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAE,IAAkB,CAAC,CAAC,CAAC,SAAS,CAAC;IACrE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;YAAE,OAAO,SAAS,CAAC;QAC5D,MAAM,GAAG,MAAM,CAAC,IAAI,CAA0B,CAAC;IACjD,CAAC;IACD,OAAO,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AACnE,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,eAAe,CAC7B,MAAiB,EACjB,UAAkB;IAElB,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;IACpC,IAAI,OAAO,QAAQ,KAAK,UAAU;QAAE,OAAO,SAAS,CAAC;IACrD,IAAK,QAAwC,CAAC,WAAW,CAAC;QAAE,OAAO,SAAS,CAAC;IAC7E,OAAO,QAA2C,CAAC;AACrD,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,cAAc,CAC5B,MAAiB,EACjB,UAAkB,EAClB,OAAwC;IAEvC,OAAuC,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC;IAC7D,IAAI,CAAC;QACH,MAAM,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,6DAA6D;IAC/D,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@frugalco/frugal-sdk-node",
3
- "version": "0.2.0",
3
+ "version": "0.4.0",
4
4
  "description": "Instrumentation for Cost-to-Code attribution.",
5
5
  "homepage": "https://frugal.co",
6
6
  "license": "Apache-2.0",