@mozaik-ai/core 2.4.0 → 2.4.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.
package/dist/index.d.mts CHANGED
@@ -150,6 +150,7 @@ interface ContextRepository {
150
150
  declare class InferenceRequest {
151
151
  readonly model: GenerativeModel<string>;
152
152
  readonly context: Context;
153
+ providerRequest: Record<string, unknown>;
153
154
  constructor(model: GenerativeModel<string>, context: Context);
154
155
  }
155
156
 
@@ -171,4 +172,4 @@ declare class GPT54 implements GenerativeModel<"gpt-5.4"> {
171
172
  }
172
173
  declare const gpt54: GPT54;
173
174
 
174
- export { Context, ContextItem, type ContextRepository, DeveloperMessage, FunctionCall, FunctionCallOutput, type GenerativeModel, ModelMessage, OpenAIResponses, Reasoning, UserMessage, gpt54 };
175
+ export { Context, ContextItem, type ContextRepository, DeveloperMessage, FunctionCall, FunctionCallOutput, type GenerativeModel, InferenceRequest, ModelMessage, OpenAIResponses, Reasoning, UserMessage, gpt54 };
package/dist/index.d.ts CHANGED
@@ -150,6 +150,7 @@ interface ContextRepository {
150
150
  declare class InferenceRequest {
151
151
  readonly model: GenerativeModel<string>;
152
152
  readonly context: Context;
153
+ providerRequest: Record<string, unknown>;
153
154
  constructor(model: GenerativeModel<string>, context: Context);
154
155
  }
155
156
 
@@ -171,4 +172,4 @@ declare class GPT54 implements GenerativeModel<"gpt-5.4"> {
171
172
  }
172
173
  declare const gpt54: GPT54;
173
174
 
174
- export { Context, ContextItem, type ContextRepository, DeveloperMessage, FunctionCall, FunctionCallOutput, type GenerativeModel, ModelMessage, OpenAIResponses, Reasoning, UserMessage, gpt54 };
175
+ export { Context, ContextItem, type ContextRepository, DeveloperMessage, FunctionCall, FunctionCallOutput, type GenerativeModel, InferenceRequest, ModelMessage, OpenAIResponses, Reasoning, UserMessage, gpt54 };
package/dist/index.js CHANGED
@@ -35,6 +35,7 @@ __export(index_exports, {
35
35
  DeveloperMessage: () => DeveloperMessage,
36
36
  FunctionCall: () => FunctionCall,
37
37
  FunctionCallOutput: () => FunctionCallOutput,
38
+ InferenceRequest: () => InferenceRequest,
38
39
  ModelMessage: () => ModelMessage,
39
40
  OpenAIResponses: () => OpenAIResponses,
40
41
  Reasoning: () => Reasoning,
@@ -330,7 +331,7 @@ var Rule = class {
330
331
  if (this.condition.isSatisfiedBy(candidate)) {
331
332
  return this.action.apply(candidate);
332
333
  }
333
- throw new Error("Condition not satisfied");
334
+ return candidate;
334
335
  }
335
336
  };
336
337
 
@@ -363,18 +364,24 @@ var ReasoningEffortSupported = class extends BaseCondition {
363
364
  return candidate.model.capabilities.some((capability) => capability instanceof ReasoningEffort);
364
365
  }
365
366
  };
366
- var GetReasoningEffort = class {
367
+ var SetReasoningEffort = class {
367
368
  apply(candidate) {
368
369
  const reasoningCapability = candidate.model.capabilities.find((capability) => capability instanceof ReasoningEffort);
369
370
  if (reasoningCapability) {
370
- return reasoningCapability.getReasoningEffort();
371
+ const providerRequest = candidate.providerRequest;
372
+ candidate.providerRequest = {
373
+ ...providerRequest,
374
+ reasoning: {
375
+ effort: reasoningCapability.getReasoningEffort()
376
+ }
377
+ };
371
378
  }
372
- throw new Error("Reasoning capability not supported");
379
+ return candidate;
373
380
  }
374
381
  };
375
382
  var reasoningEffortRule = new Rule({
376
383
  when: new ReasoningEffortSupported(),
377
- then: new GetReasoningEffort()
384
+ then: new SetReasoningEffort()
378
385
  });
379
386
 
380
387
  // src/providers/openai/runtime/openai-responses.ts
@@ -385,12 +392,11 @@ var OpenAIResponses = class {
385
392
  }
386
393
  async infer(inferenceRequest) {
387
394
  const input = this.mapContextToRequest(inferenceRequest.context);
395
+ reasoningEffortRule.apply(inferenceRequest);
388
396
  const response = await this.client.responses.create({
389
397
  model: inferenceRequest.model.id,
390
398
  input,
391
- reasoning: {
392
- effort: reasoningEffortRule.apply(inferenceRequest)
393
- }
399
+ ...inferenceRequest.providerRequest
394
400
  });
395
401
  return this.extractContextItems(response);
396
402
  }
@@ -421,6 +427,15 @@ var GPT54 = class {
421
427
  }
422
428
  };
423
429
  var gpt54 = new GPT54();
430
+
431
+ // src/core/generative-model/inference-request.ts
432
+ var InferenceRequest = class {
433
+ constructor(model, context) {
434
+ this.model = model;
435
+ this.context = context;
436
+ this.providerRequest = {};
437
+ }
438
+ };
424
439
  // Annotate the CommonJS export names for ESM import in node:
425
440
  0 && (module.exports = {
426
441
  Context,
@@ -428,6 +443,7 @@ var gpt54 = new GPT54();
428
443
  DeveloperMessage,
429
444
  FunctionCall,
430
445
  FunctionCallOutput,
446
+ InferenceRequest,
431
447
  ModelMessage,
432
448
  OpenAIResponses,
433
449
  Reasoning,
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/core/context-runtime/context.ts","../src/core/context-runtime/context-item.ts","../src/core/context-runtime/content.ts","../src/core/context-runtime/content/input-text.ts","../src/core/context-runtime/input/user-message.ts","../src/core/context-runtime/input/developer-message.ts","../src/core/context-runtime/content/output-text.ts","../src/core/context-runtime/output/model-message.ts","../src/core/context-runtime/output/function-call.ts","../src/core/context-runtime/output/reasoning.ts","../src/core/context-runtime/input/function-call-output.ts","../src/core/context-engine/condition/and-condition.ts","../src/core/context-engine/condition/not-condition.ts","../src/core/context-engine/condition/or-condition.ts","../src/core/context-engine/condition/base-condition.ts","../src/core/context-engine/rule/rule.ts","../src/core/generative-model/capabilities/capability.ts","../src/core/generative-model/capabilities/reasoning-effort.ts","../src/providers/openai/rules/reasoning-effort.ts","../src/providers/openai/runtime/openai-responses.ts","../src/providers/openai/models/gpt-5-4.ts"],"sourcesContent":["import { Context } from \"@core/context-runtime/context\"\nimport { ContextItem } from \"@core/context-runtime/context-item\"\nimport { UserMessage } from \"@core/context-runtime/input/user-message\"\nimport { DeveloperMessage } from \"@core/context-runtime/input/developer-message\"\nimport { ModelMessage } from \"@core/context-runtime/output/model-message\"\nimport { FunctionCall } from \"@core/context-runtime/output/function-call\"\nimport { Reasoning } from \"@core/context-runtime/output/reasoning\"\nimport { GenerativeModel } from \"@core/generative-model/generative-model\"\nimport { FunctionCallOutput } from \"@core/context-runtime/input/function-call-output\"\nimport { ContextRepository } from \"@core/context-runtime/context-repository\"\nimport { OpenAIResponses } from \"@openai/runtime/openai-responses\"\nimport { gpt54 } from \"@openai/models/gpt-5-4\"\n\nexport {\n\tContext,\n\tContextItem,\n\tUserMessage,\n\tDeveloperMessage,\n\tModelMessage,\n\tFunctionCall,\n\tFunctionCallOutput,\n\tReasoning,\n\tGenerativeModel,\n\tContextRepository,\n\tOpenAIResponses,\n\tgpt54,\n}\n","import { ContextItem } from \"@core/context-runtime/context-item\"\n\nexport class Context {\n\treadonly id: string\n\treadonly projectId: string\n\treadonly items: ContextItem[]\n\n\tconstructor(id: string, projectId: string, items: ContextItem[]) {\n\t\tthis.projectId = projectId\n\t\tthis.id = id\n\t\tthis.items = items\n\t}\n\n\taddItem(item: ContextItem): Context {\n\t\tthis.items.push(item)\n\t\treturn this\n\t}\n\n\tapplyModelOutput(items: ContextItem[]): Context {\n\t\tfor (const item of items) {\n\t\t\tconst itemType = item.getType()\n\t\t\tif (itemType !== \"function_call\" && itemType !== \"message\" && itemType !== \"reasoning\") {\n\t\t\t\tthrow new Error(`Invalid item type: ${itemType}`)\n\t\t\t}\n\t\t}\n\t\tthis.items.push(...items)\n\t\treturn this\n\t}\n\n\tgetItems(): ContextItem[] {\n\t\treturn this.items\n\t}\n\n\tstatic create(projectId: string): Context {\n\t\tconst id = crypto.randomUUID()\n\t\treturn new Context(id, projectId, [])\n\t}\n\n\tstatic rehydrate(data: { id: string; projectId: string; items: ContextItem[] }): Context {\n\t\treturn new Context(data.id, data.projectId, data.items)\n\t}\n\n\ttoJSON(): any {\n\t\treturn this.items.map((item) => item.toJSON())\n\t}\n}\n","export abstract class ContextItem {\n\tabstract readonly type: string\n\n\tgetType(): string {\n\t\treturn this.type\n\t}\n\n\tabstract toJSON(): any\n}\n","export abstract class Content {\n\tabstract readonly type: string\n}\n","import { Content } from \"@core/context-runtime/content\"\n\nexport class InputText extends Content {\n\treadonly type = \"input_text\"\n\n\tprivate constructor(public readonly text: string) {\n\t\tsuper()\n\t}\n\n\tstatic create(text: string): InputText {\n\t\treturn new InputText(text)\n\t}\n\n\tstatic rehydrate(data: { text: string }): InputText {\n\t\treturn new InputText(data.text)\n\t}\n\n\ttoJSON(): any[] {\n\t\treturn [\n\t\t\t{\n\t\t\t\ttype: this.type,\n\t\t\t\ttext: this.text,\n\t\t\t},\n\t\t]\n\t}\n}\n","import { ContextItem } from \"@core/context-runtime/context-item\"\nimport { InputText } from \"@core/context-runtime/content/input-text\"\n\nexport class UserMessage extends ContextItem {\n\treadonly type = \"message\"\n\treadonly role = \"user\"\n\treadonly content: InputText\n\n\tprivate constructor(content: InputText) {\n\t\tsuper()\n\t\tthis.content = content\n\t}\n\n\tstatic create(text: string): UserMessage {\n\t\tconst content = InputText.create(text)\n\t\treturn new UserMessage(content)\n\t}\n\n\tstatic rehydrate(data: { text: string }): UserMessage {\n\t\tconst content = InputText.rehydrate(data)\n\t\treturn new UserMessage(content)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\trole: this.role,\n\t\t\tcontent: this.content.toJSON(),\n\t\t}\n\t}\n}\n","import { InputText } from \"@core/context-runtime/content/input-text\"\nimport { ContextItem } from \"@core/context-runtime/context-item\"\n\nexport class DeveloperMessage extends ContextItem {\n\treadonly type = \"message\"\n\treadonly role = \"developer\"\n\treadonly content: InputText\n\n\tprivate constructor(content: InputText) {\n\t\tsuper()\n\t\tthis.content = content\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\trole: this.role,\n\t\t\tcontent: this.content.toJSON(),\n\t\t}\n\t}\n\n\tstatic create(text: string): DeveloperMessage {\n\t\tconst content = InputText.create(text)\n\t\treturn new DeveloperMessage(content)\n\t}\n\n\tstatic rehydrate(data: { text: string }): DeveloperMessage {\n\t\tconst content = InputText.rehydrate(data)\n\t\treturn new DeveloperMessage(content)\n\t}\n}\n","import { Content } from \"@core/context-runtime/content\"\n\nexport class OutputText extends Content {\n\treadonly type = \"output_text\"\n\n\tprivate constructor(public readonly text: string) {\n\t\tsuper()\n\t}\n\n\tstatic rehydrate(data: { text: string }): OutputText {\n\t\treturn new OutputText(data.text)\n\t}\n\n\ttoJSON(): any[] {\n\t\treturn [\n\t\t\t{\n\t\t\t\ttype: this.type,\n\t\t\t\ttext: this.text,\n\t\t\t},\n\t\t]\n\t}\n}\n","import { ContextItem } from \"@core/context-runtime/context-item\"\nimport { OutputText } from \"@core/context-runtime/content/output-text\"\n\nexport class ModelMessage extends ContextItem {\n\treadonly type = \"message\"\n\treadonly role = \"assistant\"\n\treadonly content: OutputText\n\n\tprivate constructor(content: OutputText) {\n\t\tsuper()\n\t\tthis.content = content\n\t}\n\n\tstatic rehydrate(data: { text: string }): ModelMessage {\n\t\tconst content = OutputText.rehydrate(data)\n\t\treturn new ModelMessage(content)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\trole: this.role,\n\t\t\tcontent: this.content.toJSON(),\n\t\t}\n\t}\n}\n","import { ContextItem } from \"@core/context-runtime/context-item\"\n\nexport class FunctionCall extends ContextItem {\n\treadonly type = \"function_call\"\n\treadonly callId: string\n\treadonly name: string\n\treadonly args: string\n\n\tprivate constructor(callId: string, name: string, args: string) {\n\t\tsuper()\n\t\tthis.callId = callId\n\t\tthis.name = name\n\t\tthis.args = args\n\t}\n\n\tstatic rehydrate(data: { callId: string; name: string; args: string }): FunctionCall {\n\t\treturn new FunctionCall(data.callId, data.name, data.args)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\tcallId: this.callId,\n\t\t\tname: this.name,\n\t\t\targuments: this.args,\n\t\t}\n\t}\n}\n","import { InputText } from \"@core/context-runtime/content/input-text\"\nimport { SummaryText } from \"@core/context-runtime/content/summary-text\"\nimport { ContextItem } from \"@core/context-runtime/context-item\"\n\nexport class Reasoning extends ContextItem {\n\treadonly type = \"reasoning\"\n\treadonly content: InputText | undefined\n\treadonly encryptedContent: string | undefined\n\treadonly summary: SummaryText[]\n\n\tprivate constructor(\n\t\tcontent: InputText | undefined,\n\t\tencryptedContent?: string | undefined,\n\t\tsummary: SummaryText[] = [],\n\t) {\n\t\tsuper()\n\t\tthis.content = content\n\t\tthis.encryptedContent = encryptedContent\n\t\tthis.summary = summary\n\t}\n\n\tstatic rehydrate(data: {\n\t\tcontent: InputText | undefined\n\t\tencryptedContent: string | undefined\n\t\tsummary: SummaryText[]\n\t}): Reasoning {\n\t\treturn new Reasoning(data.content, data.encryptedContent, data.summary)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\tcontent: this.content?.toJSON(),\n\t\t\tencryptedContent: this.encryptedContent,\n\t\t\tsummary: this.summary.map((s) => s.toJSON()),\n\t\t}\n\t}\n}\n","import { ContextItem } from \"@core/context-runtime/context-item\"\nimport { InputText } from \"@core/context-runtime/content/input-text\"\n\nexport class FunctionCallOutput extends ContextItem {\n\treadonly type = \"function_call_output\"\n\treadonly callId: string\n\treadonly output: InputText[]\n\n\tprivate constructor(callId: string, output: InputText[]) {\n\t\tsuper()\n\t\tthis.callId = callId\n\t\tthis.output = output\n\t}\n\n\tstatic create(callId: string, output: InputText[]): FunctionCallOutput {\n\t\treturn new FunctionCallOutput(callId, output)\n\t}\n\n\tstatic rehydrate(data: { callId: string; output: InputText[] }): FunctionCallOutput {\n\t\treturn new FunctionCallOutput(data.callId, data.output)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\tcallId: this.callId,\n\t\t\toutput: this.output.map((o) => o.toJSON()),\n\t\t}\n\t}\n}\n","import { BaseCondition } from \"@core/context-engine/condition/base-condition\"\nimport { Condition } from \"@core/context-engine/condition/condition\"\n\nexport class AndCondition<T> extends BaseCondition<T> {\n\tconstructor(\n\t\tprivate readonly left: Condition<T>,\n\t\tprivate readonly right: Condition<T>,\n\t) {\n\t\tsuper()\n\t}\n\n\tisSatisfiedBy(candidate: T): boolean {\n\t\treturn this.left.isSatisfiedBy(candidate) && this.right.isSatisfiedBy(candidate)\n\t}\n}\n","import { BaseCondition } from \"@core/context-engine/condition/base-condition\"\nimport { Condition } from \"@core/context-engine/condition/condition\"\n\nexport class NotCondition<T> extends BaseCondition<T> {\n\tconstructor(private readonly condition: Condition<T>) {\n\t\tsuper()\n\t}\n\n\tisSatisfiedBy(candidate: T): boolean {\n\t\treturn !this.condition.isSatisfiedBy(candidate)\n\t}\n}\n","import { BaseCondition } from \"@core/context-engine/condition/base-condition\"\nimport { Condition } from \"@core/context-engine/condition/condition\"\n\nexport class OrCondition<T> extends BaseCondition<T> {\n\tconstructor(\n\t\tprivate readonly left: Condition<T>,\n\t\tprivate readonly right: Condition<T>,\n\t) {\n\t\tsuper()\n\t}\n\n\tisSatisfiedBy(candidate: T): boolean {\n\t\treturn this.left.isSatisfiedBy(candidate) || this.right.isSatisfiedBy(candidate)\n\t}\n}\n","import { AndCondition } from \"@core/context-engine/condition/and-condition\"\nimport { Condition } from \"@core/context-engine/condition/condition\"\nimport { NotCondition } from \"@core/context-engine/condition/not-condition\"\nimport { OrCondition } from \"@core/context-engine/condition/or-condition\"\n\nexport abstract class BaseCondition<T> implements Condition<T> {\n\tabstract isSatisfiedBy(candidate: T): boolean\n\n\tand(other: Condition<T>): Condition<T> {\n\t\treturn new AndCondition(this, other)\n\t}\n\n\tor(other: Condition<T>): Condition<T> {\n\t\treturn new OrCondition(this, other)\n\t}\n\n\tnot(): Condition<T> {\n\t\treturn new NotCondition(this)\n\t}\n}\n","import { Condition } from \"@core/context-engine/condition/condition\"\n\nexport interface Action<T, R> {\n\tapply(candidate: T): R\n}\n\nexport class Rule<T, R> {\n\tprivate condition: Condition<T>\n\tprivate action: Action<T, R>\n\n\tconstructor({ when, then }: { when: Condition<T>; then: Action<T, R> }) {\n\t\tthis.condition = when\t\n\t\tthis.action = then\n\t}\n\n\tapply(candidate: T): R {\n\t\tif (this.condition.isSatisfiedBy(candidate)) {\n\t\t\treturn this.action.apply(candidate)\n\t\t}\n\t\tthrow new Error(\"Condition not satisfied\")\n\t}\n}\n","export abstract class Capability {\n abstract readonly capability: string\n}","import { Capability } from \"./capability\"\n\nexport class ReasoningEffort<Effort extends string> extends Capability {\n\treadonly capability = \"reasoning-effort\"\n\treadonly supportedEfforts: readonly Effort[]\n\treasoningEffort: Effort\n\n\tconstructor(supportedEfforts: readonly Effort[], defaultEffort: Effort) {\n\t\tsuper()\n\t\tthis.supportedEfforts = supportedEfforts\n\t\tthis.reasoningEffort = defaultEffort\n\t}\n\n\tsetReasoningEffort(effort: Effort): void {\n\t\tif (!this.supportedEfforts.includes(effort)) {\n\t\t\tthrow new Error(`Invalid reasoning effort: ${effort}`)\n\t\t}\n\t\tthis.reasoningEffort = effort;\n\t}\n\n\tgetReasoningEffort(): Effort {\n\t\treturn this.reasoningEffort\n\t}\n}\n","import { BaseCondition } from \"@core/context-engine/condition/base-condition\"\nimport { Action, Rule } from \"@core/context-engine/rule/rule\"\nimport { ReasoningEffort } from \"@core/generative-model/capabilities/reasoning-effort\"\nimport { InferenceRequest } from \"@core/generative-model/inference-request\"\n\nexport class ReasoningEffortSupported extends BaseCondition<InferenceRequest> {\n\tisSatisfiedBy(candidate: InferenceRequest): boolean {\n\t\treturn candidate.model.capabilities.some((capability) => capability instanceof ReasoningEffort)\n\t}\n}\n\nexport class GetReasoningEffort implements Action<InferenceRequest, \"low\" | \"medium\" | \"high\" | \"xhigh\" | \"none\"> {\n\tapply(candidate: InferenceRequest): \"low\" | \"medium\" | \"high\" | \"xhigh\" | \"none\" {\n\t\tconst reasoningCapability = candidate.model.capabilities.find((capability) => capability instanceof ReasoningEffort)\n\t\tif (reasoningCapability) {\n\t\t\treturn reasoningCapability.getReasoningEffort()\n\t\t}\n\t\tthrow new Error(\"Reasoning capability not supported\")\n\t}\n}\nexport const reasoningEffortRule = new Rule({\n\twhen: new ReasoningEffortSupported(),\n\tthen: new GetReasoningEffort(),\n})","import { Context } from \"@core/context-runtime/context\"\nimport { ContextItem } from \"@core/context-runtime/context-item\"\nimport { FunctionCall } from \"@core/context-runtime/output/function-call\"\nimport { ModelMessage } from \"@core/context-runtime/output/model-message\"\nimport { Reasoning } from \"@core/context-runtime/output/reasoning\"\nimport { InferenceRequest } from \"@core/generative-model/inference-request\"\nimport { ModelRuntime } from \"@core/generative-model/runtime/model-runtime\"\nimport { reasoningEffortRule } from \"@openai/rules/reasoning-effort\"\nimport OpenAI from \"openai\"\n\nexport class OpenAIResponses implements ModelRuntime {\n\tprivate readonly client: OpenAI\n\n\tconstructor() {\n\t\tthis.client = new OpenAI()\n\t}\n\n\tasync infer(inferenceRequest: InferenceRequest): Promise<ContextItem[]> {\n\t\tconst input = this.mapContextToRequest(inferenceRequest.context)\n\t\tconst response = await this.client.responses.create({\n\t\t\tmodel: inferenceRequest.model.id,\n\t\t\tinput: input,\n\t\t\treasoning: {\n\t\t\t\teffort: reasoningEffortRule.apply(inferenceRequest)\n\t\t\t}\n\t\t})\n\t\treturn this.extractContextItems(response)\n\t}\n\n\tmapContextToRequest(context: Context): any[] {\n\t\treturn context.getItems().map((item) => item.toJSON())\n\t}\n\n\textractContextItems(response: any): ContextItem[] {\n\t\treturn response.output.map((item: any) => {\n\t\t\tif (item.type === \"message\" && item.status === \"completed\") {\n\t\t\t\treturn ModelMessage.rehydrate(item.content[0] as { text: string })\n\t\t\t}\n\t\t\tif (item.type === \"function_call\" && item.status === \"completed\") {\n\t\t\t\treturn FunctionCall.rehydrate(item)\n\t\t\t}\n\t\t\tif (item.type === \"reasoning\" && item.status === \"completed\") {\n\t\t\t\treturn Reasoning.rehydrate(item)\n\t\t\t}\n\t\t})\n\t}\n}\n","import { Capability } from \"@core/generative-model/capabilities/capability\"\nimport { ReasoningEffort } from \"@core/generative-model/capabilities/reasoning-effort\"\nimport { GenerativeModel } from \"@core/generative-model/generative-model\"\n\nexport const openaiReasoningEffort = new ReasoningEffort<\"xhigh\" | \"high\" | \"medium\" | \"low\" | \"none\">([\"xhigh\", \"high\", \"medium\", \"low\", \"none\"], \"medium\")\n\nexport class GPT54 implements GenerativeModel<\"gpt-5.4\"> {\n\treadonly id = \"gpt-5.4\"\n\treadonly capabilities: Capability[] = [openaiReasoningEffort]\n}\n\nexport const gpt54 = new GPT54()"],"mappings":"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","names":["OpenAI"]}
1
+ {"version":3,"sources":["../src/index.ts","../src/core/context-runtime/context.ts","../src/core/context-runtime/context-item.ts","../src/core/context-runtime/content.ts","../src/core/context-runtime/content/input-text.ts","../src/core/context-runtime/input/user-message.ts","../src/core/context-runtime/input/developer-message.ts","../src/core/context-runtime/content/output-text.ts","../src/core/context-runtime/output/model-message.ts","../src/core/context-runtime/output/function-call.ts","../src/core/context-runtime/output/reasoning.ts","../src/core/context-runtime/input/function-call-output.ts","../src/core/context-engine/condition/and-condition.ts","../src/core/context-engine/condition/not-condition.ts","../src/core/context-engine/condition/or-condition.ts","../src/core/context-engine/condition/base-condition.ts","../src/core/context-engine/rule/rule.ts","../src/core/generative-model/capabilities/capability.ts","../src/core/generative-model/capabilities/reasoning-effort.ts","../src/providers/openai/rules/reasoning-effort.ts","../src/providers/openai/runtime/openai-responses.ts","../src/providers/openai/models/gpt-5-4.ts","../src/core/generative-model/inference-request.ts"],"sourcesContent":["import { Context } from \"@core/context-runtime/context\"\nimport { ContextItem } from \"@core/context-runtime/context-item\"\nimport { UserMessage } from \"@core/context-runtime/input/user-message\"\nimport { DeveloperMessage } from \"@core/context-runtime/input/developer-message\"\nimport { ModelMessage } from \"@core/context-runtime/output/model-message\"\nimport { FunctionCall } from \"@core/context-runtime/output/function-call\"\nimport { Reasoning } from \"@core/context-runtime/output/reasoning\"\nimport { GenerativeModel } from \"@core/generative-model/generative-model\"\nimport { FunctionCallOutput } from \"@core/context-runtime/input/function-call-output\"\nimport { ContextRepository } from \"@core/context-runtime/context-repository\"\nimport { OpenAIResponses } from \"@openai/runtime/openai-responses\"\nimport { gpt54 } from \"@openai/models/gpt-5-4\"\nimport { InferenceRequest } from \"@core/generative-model/inference-request\"\n\nexport {\n\tContext,\n\tContextItem,\n\tUserMessage,\n\tDeveloperMessage,\n\tModelMessage,\n\tFunctionCall,\n\tFunctionCallOutput,\n\tReasoning,\n\tGenerativeModel,\n\tContextRepository,\n\tOpenAIResponses,\n\tgpt54,\n\tInferenceRequest,\n}\n","import { ContextItem } from \"@core/context-runtime/context-item\"\n\nexport class Context {\n\treadonly id: string\n\treadonly projectId: string\n\treadonly items: ContextItem[]\n\n\tconstructor(id: string, projectId: string, items: ContextItem[]) {\n\t\tthis.projectId = projectId\n\t\tthis.id = id\n\t\tthis.items = items\n\t}\n\n\taddItem(item: ContextItem): Context {\n\t\tthis.items.push(item)\n\t\treturn this\n\t}\n\n\tapplyModelOutput(items: ContextItem[]): Context {\n\t\tfor (const item of items) {\n\t\t\tconst itemType = item.getType()\n\t\t\tif (itemType !== \"function_call\" && itemType !== \"message\" && itemType !== \"reasoning\") {\n\t\t\t\tthrow new Error(`Invalid item type: ${itemType}`)\n\t\t\t}\n\t\t}\n\t\tthis.items.push(...items)\n\t\treturn this\n\t}\n\n\tgetItems(): ContextItem[] {\n\t\treturn this.items\n\t}\n\n\tstatic create(projectId: string): Context {\n\t\tconst id = crypto.randomUUID()\n\t\treturn new Context(id, projectId, [])\n\t}\n\n\tstatic rehydrate(data: { id: string; projectId: string; items: ContextItem[] }): Context {\n\t\treturn new Context(data.id, data.projectId, data.items)\n\t}\n\n\ttoJSON(): any {\n\t\treturn this.items.map((item) => item.toJSON())\n\t}\n}\n","export abstract class ContextItem {\n\tabstract readonly type: string\n\n\tgetType(): string {\n\t\treturn this.type\n\t}\n\n\tabstract toJSON(): any\n}\n","export abstract class Content {\n\tabstract readonly type: string\n}\n","import { Content } from \"@core/context-runtime/content\"\n\nexport class InputText extends Content {\n\treadonly type = \"input_text\"\n\n\tprivate constructor(public readonly text: string) {\n\t\tsuper()\n\t}\n\n\tstatic create(text: string): InputText {\n\t\treturn new InputText(text)\n\t}\n\n\tstatic rehydrate(data: { text: string }): InputText {\n\t\treturn new InputText(data.text)\n\t}\n\n\ttoJSON(): any[] {\n\t\treturn [\n\t\t\t{\n\t\t\t\ttype: this.type,\n\t\t\t\ttext: this.text,\n\t\t\t},\n\t\t]\n\t}\n}\n","import { ContextItem } from \"@core/context-runtime/context-item\"\nimport { InputText } from \"@core/context-runtime/content/input-text\"\n\nexport class UserMessage extends ContextItem {\n\treadonly type = \"message\"\n\treadonly role = \"user\"\n\treadonly content: InputText\n\n\tprivate constructor(content: InputText) {\n\t\tsuper()\n\t\tthis.content = content\n\t}\n\n\tstatic create(text: string): UserMessage {\n\t\tconst content = InputText.create(text)\n\t\treturn new UserMessage(content)\n\t}\n\n\tstatic rehydrate(data: { text: string }): UserMessage {\n\t\tconst content = InputText.rehydrate(data)\n\t\treturn new UserMessage(content)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\trole: this.role,\n\t\t\tcontent: this.content.toJSON(),\n\t\t}\n\t}\n}\n","import { InputText } from \"@core/context-runtime/content/input-text\"\nimport { ContextItem } from \"@core/context-runtime/context-item\"\n\nexport class DeveloperMessage extends ContextItem {\n\treadonly type = \"message\"\n\treadonly role = \"developer\"\n\treadonly content: InputText\n\n\tprivate constructor(content: InputText) {\n\t\tsuper()\n\t\tthis.content = content\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\trole: this.role,\n\t\t\tcontent: this.content.toJSON(),\n\t\t}\n\t}\n\n\tstatic create(text: string): DeveloperMessage {\n\t\tconst content = InputText.create(text)\n\t\treturn new DeveloperMessage(content)\n\t}\n\n\tstatic rehydrate(data: { text: string }): DeveloperMessage {\n\t\tconst content = InputText.rehydrate(data)\n\t\treturn new DeveloperMessage(content)\n\t}\n}\n","import { Content } from \"@core/context-runtime/content\"\n\nexport class OutputText extends Content {\n\treadonly type = \"output_text\"\n\n\tprivate constructor(public readonly text: string) {\n\t\tsuper()\n\t}\n\n\tstatic rehydrate(data: { text: string }): OutputText {\n\t\treturn new OutputText(data.text)\n\t}\n\n\ttoJSON(): any[] {\n\t\treturn [\n\t\t\t{\n\t\t\t\ttype: this.type,\n\t\t\t\ttext: this.text,\n\t\t\t},\n\t\t]\n\t}\n}\n","import { ContextItem } from \"@core/context-runtime/context-item\"\nimport { OutputText } from \"@core/context-runtime/content/output-text\"\n\nexport class ModelMessage extends ContextItem {\n\treadonly type = \"message\"\n\treadonly role = \"assistant\"\n\treadonly content: OutputText\n\n\tprivate constructor(content: OutputText) {\n\t\tsuper()\n\t\tthis.content = content\n\t}\n\n\tstatic rehydrate(data: { text: string }): ModelMessage {\n\t\tconst content = OutputText.rehydrate(data)\n\t\treturn new ModelMessage(content)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\trole: this.role,\n\t\t\tcontent: this.content.toJSON(),\n\t\t}\n\t}\n}\n","import { ContextItem } from \"@core/context-runtime/context-item\"\n\nexport class FunctionCall extends ContextItem {\n\treadonly type = \"function_call\"\n\treadonly callId: string\n\treadonly name: string\n\treadonly args: string\n\n\tprivate constructor(callId: string, name: string, args: string) {\n\t\tsuper()\n\t\tthis.callId = callId\n\t\tthis.name = name\n\t\tthis.args = args\n\t}\n\n\tstatic rehydrate(data: { callId: string; name: string; args: string }): FunctionCall {\n\t\treturn new FunctionCall(data.callId, data.name, data.args)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\tcallId: this.callId,\n\t\t\tname: this.name,\n\t\t\targuments: this.args,\n\t\t}\n\t}\n}\n","import { InputText } from \"@core/context-runtime/content/input-text\"\nimport { SummaryText } from \"@core/context-runtime/content/summary-text\"\nimport { ContextItem } from \"@core/context-runtime/context-item\"\n\nexport class Reasoning extends ContextItem {\n\treadonly type = \"reasoning\"\n\treadonly content: InputText | undefined\n\treadonly encryptedContent: string | undefined\n\treadonly summary: SummaryText[]\n\n\tprivate constructor(\n\t\tcontent: InputText | undefined,\n\t\tencryptedContent?: string | undefined,\n\t\tsummary: SummaryText[] = [],\n\t) {\n\t\tsuper()\n\t\tthis.content = content\n\t\tthis.encryptedContent = encryptedContent\n\t\tthis.summary = summary\n\t}\n\n\tstatic rehydrate(data: {\n\t\tcontent: InputText | undefined\n\t\tencryptedContent: string | undefined\n\t\tsummary: SummaryText[]\n\t}): Reasoning {\n\t\treturn new Reasoning(data.content, data.encryptedContent, data.summary)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\tcontent: this.content?.toJSON(),\n\t\t\tencryptedContent: this.encryptedContent,\n\t\t\tsummary: this.summary.map((s) => s.toJSON()),\n\t\t}\n\t}\n}\n","import { ContextItem } from \"@core/context-runtime/context-item\"\nimport { InputText } from \"@core/context-runtime/content/input-text\"\n\nexport class FunctionCallOutput extends ContextItem {\n\treadonly type = \"function_call_output\"\n\treadonly callId: string\n\treadonly output: InputText[]\n\n\tprivate constructor(callId: string, output: InputText[]) {\n\t\tsuper()\n\t\tthis.callId = callId\n\t\tthis.output = output\n\t}\n\n\tstatic create(callId: string, output: InputText[]): FunctionCallOutput {\n\t\treturn new FunctionCallOutput(callId, output)\n\t}\n\n\tstatic rehydrate(data: { callId: string; output: InputText[] }): FunctionCallOutput {\n\t\treturn new FunctionCallOutput(data.callId, data.output)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\tcallId: this.callId,\n\t\t\toutput: this.output.map((o) => o.toJSON()),\n\t\t}\n\t}\n}\n","import { BaseCondition } from \"@core/context-engine/condition/base-condition\"\nimport { Condition } from \"@core/context-engine/condition/condition\"\n\nexport class AndCondition<T> extends BaseCondition<T> {\n\tconstructor(\n\t\tprivate readonly left: Condition<T>,\n\t\tprivate readonly right: Condition<T>,\n\t) {\n\t\tsuper()\n\t}\n\n\tisSatisfiedBy(candidate: T): boolean {\n\t\treturn this.left.isSatisfiedBy(candidate) && this.right.isSatisfiedBy(candidate)\n\t}\n}\n","import { BaseCondition } from \"@core/context-engine/condition/base-condition\"\nimport { Condition } from \"@core/context-engine/condition/condition\"\n\nexport class NotCondition<T> extends BaseCondition<T> {\n\tconstructor(private readonly condition: Condition<T>) {\n\t\tsuper()\n\t}\n\n\tisSatisfiedBy(candidate: T): boolean {\n\t\treturn !this.condition.isSatisfiedBy(candidate)\n\t}\n}\n","import { BaseCondition } from \"@core/context-engine/condition/base-condition\"\nimport { Condition } from \"@core/context-engine/condition/condition\"\n\nexport class OrCondition<T> extends BaseCondition<T> {\n\tconstructor(\n\t\tprivate readonly left: Condition<T>,\n\t\tprivate readonly right: Condition<T>,\n\t) {\n\t\tsuper()\n\t}\n\n\tisSatisfiedBy(candidate: T): boolean {\n\t\treturn this.left.isSatisfiedBy(candidate) || this.right.isSatisfiedBy(candidate)\n\t}\n}\n","import { AndCondition } from \"@core/context-engine/condition/and-condition\"\nimport { Condition } from \"@core/context-engine/condition/condition\"\nimport { NotCondition } from \"@core/context-engine/condition/not-condition\"\nimport { OrCondition } from \"@core/context-engine/condition/or-condition\"\n\nexport abstract class BaseCondition<T> implements Condition<T> {\n\tabstract isSatisfiedBy(candidate: T): boolean\n\n\tand(other: Condition<T>): Condition<T> {\n\t\treturn new AndCondition(this, other)\n\t}\n\n\tor(other: Condition<T>): Condition<T> {\n\t\treturn new OrCondition(this, other)\n\t}\n\n\tnot(): Condition<T> {\n\t\treturn new NotCondition(this)\n\t}\n}\n","import { Condition } from \"@core/context-engine/condition/condition\"\n\nexport interface Action<T> {\n\tapply(candidate: T): T\n}\n\nexport class Rule<T> {\n\tprivate condition: Condition<T>\n\tprivate action: Action<T>\n\n\tconstructor({ when, then }: { when: Condition<T>; then: Action<T> }) {\n\t\tthis.condition = when\t\n\t\tthis.action = then\n\t}\n\n\tapply(candidate: T): T {\n\t\tif (this.condition.isSatisfiedBy(candidate)) {\n\t\t\treturn this.action.apply(candidate)\n\t\t}\n\t\treturn candidate\n\t}\n}\n","export abstract class Capability {\n abstract readonly capability: string\n}","import { Capability } from \"./capability\"\n\nexport class ReasoningEffort<Effort extends string> extends Capability {\n\treadonly capability = \"reasoning-effort\"\n\treadonly supportedEfforts: readonly Effort[]\n\treasoningEffort: Effort\n\n\tconstructor(supportedEfforts: readonly Effort[], defaultEffort: Effort) {\n\t\tsuper()\n\t\tthis.supportedEfforts = supportedEfforts\n\t\tthis.reasoningEffort = defaultEffort\n\t}\n\n\tsetReasoningEffort(effort: Effort): void {\n\t\tif (!this.supportedEfforts.includes(effort)) {\n\t\t\tthrow new Error(`Invalid reasoning effort: ${effort}`)\n\t\t}\n\t\tthis.reasoningEffort = effort;\n\t}\n\n\tgetReasoningEffort(): Effort {\n\t\treturn this.reasoningEffort\n\t}\n}\n","import { BaseCondition } from \"@core/context-engine/condition/base-condition\"\nimport { Action, Rule } from \"@core/context-engine/rule/rule\"\nimport { ReasoningEffort } from \"@core/generative-model/capabilities/reasoning-effort\"\nimport { InferenceRequest } from \"@core/generative-model/inference-request\"\n\nexport class ReasoningEffortSupported extends BaseCondition<InferenceRequest> {\n\tisSatisfiedBy(candidate: InferenceRequest): boolean {\n\t\treturn candidate.model.capabilities.some((capability) => capability instanceof ReasoningEffort)\n\t}\n}\n\nexport class SetReasoningEffort implements Action<InferenceRequest> {\n\tapply(candidate: InferenceRequest): InferenceRequest {\n\t\tconst reasoningCapability = candidate.model.capabilities.find((capability) => capability instanceof ReasoningEffort)\n\t\tif (reasoningCapability) {\n const providerRequest = candidate.providerRequest\n\t\t\tcandidate.providerRequest = {\n ...providerRequest,\n\t\t\t\treasoning: {\n\t\t\t\t\teffort: reasoningCapability.getReasoningEffort()\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn candidate\n\t}\n}\nexport const reasoningEffortRule = new Rule({\n\twhen: new ReasoningEffortSupported(),\n\tthen: new SetReasoningEffort(),\n})","import { Context } from \"@core/context-runtime/context\"\nimport { ContextItem } from \"@core/context-runtime/context-item\"\nimport { FunctionCall } from \"@core/context-runtime/output/function-call\"\nimport { ModelMessage } from \"@core/context-runtime/output/model-message\"\nimport { Reasoning } from \"@core/context-runtime/output/reasoning\"\nimport { InferenceRequest } from \"@core/generative-model/inference-request\"\nimport { ModelRuntime } from \"@core/generative-model/runtime/model-runtime\"\nimport { reasoningEffortRule } from \"@openai/rules/reasoning-effort\"\nimport OpenAI from \"openai\"\n\nexport class OpenAIResponses implements ModelRuntime {\n\tprivate readonly client: OpenAI\n\n\tconstructor() {\n\t\tthis.client = new OpenAI()\n\t}\n\n\tasync infer(inferenceRequest: InferenceRequest): Promise<ContextItem[]> {\n\t\tconst input = this.mapContextToRequest(inferenceRequest.context)\n\n\t\treasoningEffortRule.apply(inferenceRequest)\n\t\tconst response = await this.client.responses.create({\n\t\t\tmodel: inferenceRequest.model.id,\n\t\t\tinput: input,\n\t\t\t...inferenceRequest.providerRequest\n\t\t})\n\t\treturn this.extractContextItems(response)\n\t}\n\n\tmapContextToRequest(context: Context): any[] {\n\t\treturn context.getItems().map((item) => item.toJSON())\n\t}\n\n\textractContextItems(response: any): ContextItem[] {\n\t\treturn response.output.map((item: any) => {\n\t\t\tif (item.type === \"message\" && item.status === \"completed\") {\n\t\t\t\treturn ModelMessage.rehydrate(item.content[0] as { text: string })\n\t\t\t}\n\t\t\tif (item.type === \"function_call\" && item.status === \"completed\") {\n\t\t\t\treturn FunctionCall.rehydrate(item)\n\t\t\t}\n\t\t\tif (item.type === \"reasoning\" && item.status === \"completed\") {\n\t\t\t\treturn Reasoning.rehydrate(item)\n\t\t\t}\n\t\t})\n\t}\n}\n","import { Capability } from \"@core/generative-model/capabilities/capability\"\nimport { ReasoningEffort } from \"@core/generative-model/capabilities/reasoning-effort\"\nimport { GenerativeModel } from \"@core/generative-model/generative-model\"\n\nexport const openaiReasoningEffort = new ReasoningEffort<\"xhigh\" | \"high\" | \"medium\" | \"low\" | \"none\">([\"xhigh\", \"high\", \"medium\", \"low\", \"none\"], \"medium\")\n\nexport class GPT54 implements GenerativeModel<\"gpt-5.4\"> {\n\treadonly id = \"gpt-5.4\"\n\treadonly capabilities: Capability[] = [openaiReasoningEffort]\n}\n\nexport const gpt54 = new GPT54()","import { Context } from \"@core/context-runtime/context\"\nimport { GenerativeModel } from \"./generative-model\"\n\nexport class InferenceRequest {\n\treadonly model: GenerativeModel<string>\n\treadonly context: Context\n providerRequest: Record<string, unknown>\n\n\tconstructor(model: GenerativeModel<string>, context: Context) {\n\t\tthis.model = model\n\t\tthis.context = context\n\t\tthis.providerRequest = {}\n\t}\n}"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACEO,IAAM,UAAN,MAAM,SAAQ;AAAA,EAKpB,YAAY,IAAY,WAAmB,OAAsB;AAChE,SAAK,YAAY;AACjB,SAAK,KAAK;AACV,SAAK,QAAQ;AAAA,EACd;AAAA,EAEA,QAAQ,MAA4B;AACnC,SAAK,MAAM,KAAK,IAAI;AACpB,WAAO;AAAA,EACR;AAAA,EAEA,iBAAiB,OAA+B;AAC/C,eAAW,QAAQ,OAAO;AACzB,YAAM,WAAW,KAAK,QAAQ;AAC9B,UAAI,aAAa,mBAAmB,aAAa,aAAa,aAAa,aAAa;AACvF,cAAM,IAAI,MAAM,sBAAsB,QAAQ,EAAE;AAAA,MACjD;AAAA,IACD;AACA,SAAK,MAAM,KAAK,GAAG,KAAK;AACxB,WAAO;AAAA,EACR;AAAA,EAEA,WAA0B;AACzB,WAAO,KAAK;AAAA,EACb;AAAA,EAEA,OAAO,OAAO,WAA4B;AACzC,UAAM,KAAK,OAAO,WAAW;AAC7B,WAAO,IAAI,SAAQ,IAAI,WAAW,CAAC,CAAC;AAAA,EACrC;AAAA,EAEA,OAAO,UAAU,MAAwE;AACxF,WAAO,IAAI,SAAQ,KAAK,IAAI,KAAK,WAAW,KAAK,KAAK;AAAA,EACvD;AAAA,EAEA,SAAc;AACb,WAAO,KAAK,MAAM,IAAI,CAAC,SAAS,KAAK,OAAO,CAAC;AAAA,EAC9C;AACD;;;AC7CO,IAAe,cAAf,MAA2B;AAAA,EAGjC,UAAkB;AACjB,WAAO,KAAK;AAAA,EACb;AAGD;;;ACRO,IAAe,UAAf,MAAuB;AAE9B;;;ACAO,IAAM,YAAN,MAAM,mBAAkB,QAAQ;AAAA,EAG9B,YAA4B,MAAc;AACjD,UAAM;AAD6B;AAFpC,SAAS,OAAO;AAAA,EAIhB;AAAA,EAEA,OAAO,OAAO,MAAyB;AACtC,WAAO,IAAI,WAAU,IAAI;AAAA,EAC1B;AAAA,EAEA,OAAO,UAAU,MAAmC;AACnD,WAAO,IAAI,WAAU,KAAK,IAAI;AAAA,EAC/B;AAAA,EAEA,SAAgB;AACf,WAAO;AAAA,MACN;AAAA,QACC,MAAM,KAAK;AAAA,QACX,MAAM,KAAK;AAAA,MACZ;AAAA,IACD;AAAA,EACD;AACD;;;ACtBO,IAAM,cAAN,MAAM,qBAAoB,YAAY;AAAA,EAKpC,YAAY,SAAoB;AACvC,UAAM;AALP,SAAS,OAAO;AAChB,SAAS,OAAO;AAKf,SAAK,UAAU;AAAA,EAChB;AAAA,EAEA,OAAO,OAAO,MAA2B;AACxC,UAAM,UAAU,UAAU,OAAO,IAAI;AACrC,WAAO,IAAI,aAAY,OAAO;AAAA,EAC/B;AAAA,EAEA,OAAO,UAAU,MAAqC;AACrD,UAAM,UAAU,UAAU,UAAU,IAAI;AACxC,WAAO,IAAI,aAAY,OAAO;AAAA,EAC/B;AAAA,EAEA,SAAc;AACb,WAAO;AAAA,MACN,MAAM,KAAK;AAAA,MACX,MAAM,KAAK;AAAA,MACX,SAAS,KAAK,QAAQ,OAAO;AAAA,IAC9B;AAAA,EACD;AACD;;;AC3BO,IAAM,mBAAN,MAAM,0BAAyB,YAAY;AAAA,EAKzC,YAAY,SAAoB;AACvC,UAAM;AALP,SAAS,OAAO;AAChB,SAAS,OAAO;AAKf,SAAK,UAAU;AAAA,EAChB;AAAA,EAEA,SAAc;AACb,WAAO;AAAA,MACN,MAAM,KAAK;AAAA,MACX,MAAM,KAAK;AAAA,MACX,SAAS,KAAK,QAAQ,OAAO;AAAA,IAC9B;AAAA,EACD;AAAA,EAEA,OAAO,OAAO,MAAgC;AAC7C,UAAM,UAAU,UAAU,OAAO,IAAI;AACrC,WAAO,IAAI,kBAAiB,OAAO;AAAA,EACpC;AAAA,EAEA,OAAO,UAAU,MAA0C;AAC1D,UAAM,UAAU,UAAU,UAAU,IAAI;AACxC,WAAO,IAAI,kBAAiB,OAAO;AAAA,EACpC;AACD;;;AC5BO,IAAM,aAAN,MAAM,oBAAmB,QAAQ;AAAA,EAG/B,YAA4B,MAAc;AACjD,UAAM;AAD6B;AAFpC,SAAS,OAAO;AAAA,EAIhB;AAAA,EAEA,OAAO,UAAU,MAAoC;AACpD,WAAO,IAAI,YAAW,KAAK,IAAI;AAAA,EAChC;AAAA,EAEA,SAAgB;AACf,WAAO;AAAA,MACN;AAAA,QACC,MAAM,KAAK;AAAA,QACX,MAAM,KAAK;AAAA,MACZ;AAAA,IACD;AAAA,EACD;AACD;;;AClBO,IAAM,eAAN,MAAM,sBAAqB,YAAY;AAAA,EAKrC,YAAY,SAAqB;AACxC,UAAM;AALP,SAAS,OAAO;AAChB,SAAS,OAAO;AAKf,SAAK,UAAU;AAAA,EAChB;AAAA,EAEA,OAAO,UAAU,MAAsC;AACtD,UAAM,UAAU,WAAW,UAAU,IAAI;AACzC,WAAO,IAAI,cAAa,OAAO;AAAA,EAChC;AAAA,EAEA,SAAc;AACb,WAAO;AAAA,MACN,MAAM,KAAK;AAAA,MACX,MAAM,KAAK;AAAA,MACX,SAAS,KAAK,QAAQ,OAAO;AAAA,IAC9B;AAAA,EACD;AACD;;;ACvBO,IAAM,eAAN,MAAM,sBAAqB,YAAY;AAAA,EAMrC,YAAY,QAAgB,MAAc,MAAc;AAC/D,UAAM;AANP,SAAS,OAAO;AAOf,SAAK,SAAS;AACd,SAAK,OAAO;AACZ,SAAK,OAAO;AAAA,EACb;AAAA,EAEA,OAAO,UAAU,MAAoE;AACpF,WAAO,IAAI,cAAa,KAAK,QAAQ,KAAK,MAAM,KAAK,IAAI;AAAA,EAC1D;AAAA,EAEA,SAAc;AACb,WAAO;AAAA,MACN,MAAM,KAAK;AAAA,MACX,QAAQ,KAAK;AAAA,MACb,MAAM,KAAK;AAAA,MACX,WAAW,KAAK;AAAA,IACjB;AAAA,EACD;AACD;;;ACvBO,IAAM,YAAN,MAAM,mBAAkB,YAAY;AAAA,EAMlC,YACP,SACA,kBACA,UAAyB,CAAC,GACzB;AACD,UAAM;AAVP,SAAS,OAAO;AAWf,SAAK,UAAU;AACf,SAAK,mBAAmB;AACxB,SAAK,UAAU;AAAA,EAChB;AAAA,EAEA,OAAO,UAAU,MAIH;AACb,WAAO,IAAI,WAAU,KAAK,SAAS,KAAK,kBAAkB,KAAK,OAAO;AAAA,EACvE;AAAA,EAEA,SAAc;AA7Bf;AA8BE,WAAO;AAAA,MACN,MAAM,KAAK;AAAA,MACX,UAAS,UAAK,YAAL,mBAAc;AAAA,MACvB,kBAAkB,KAAK;AAAA,MACvB,SAAS,KAAK,QAAQ,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC;AAAA,IAC5C;AAAA,EACD;AACD;;;AClCO,IAAM,qBAAN,MAAM,4BAA2B,YAAY;AAAA,EAK3C,YAAY,QAAgB,QAAqB;AACxD,UAAM;AALP,SAAS,OAAO;AAMf,SAAK,SAAS;AACd,SAAK,SAAS;AAAA,EACf;AAAA,EAEA,OAAO,OAAO,QAAgB,QAAyC;AACtE,WAAO,IAAI,oBAAmB,QAAQ,MAAM;AAAA,EAC7C;AAAA,EAEA,OAAO,UAAU,MAAmE;AACnF,WAAO,IAAI,oBAAmB,KAAK,QAAQ,KAAK,MAAM;AAAA,EACvD;AAAA,EAEA,SAAc;AACb,WAAO;AAAA,MACN,MAAM,KAAK;AAAA,MACX,QAAQ,KAAK;AAAA,MACb,QAAQ,KAAK,OAAO,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC;AAAA,IAC1C;AAAA,EACD;AACD;;;AC1BO,IAAM,eAAN,cAA8B,cAAiB;AAAA,EACrD,YACkB,MACA,OAChB;AACD,UAAM;AAHW;AACA;AAAA,EAGlB;AAAA,EAEA,cAAc,WAAuB;AACpC,WAAO,KAAK,KAAK,cAAc,SAAS,KAAK,KAAK,MAAM,cAAc,SAAS;AAAA,EAChF;AACD;;;ACXO,IAAM,eAAN,cAA8B,cAAiB;AAAA,EACrD,YAA6B,WAAyB;AACrD,UAAM;AADsB;AAAA,EAE7B;AAAA,EAEA,cAAc,WAAuB;AACpC,WAAO,CAAC,KAAK,UAAU,cAAc,SAAS;AAAA,EAC/C;AACD;;;ACRO,IAAM,cAAN,cAA6B,cAAiB;AAAA,EACpD,YACkB,MACA,OAChB;AACD,UAAM;AAHW;AACA;AAAA,EAGlB;AAAA,EAEA,cAAc,WAAuB;AACpC,WAAO,KAAK,KAAK,cAAc,SAAS,KAAK,KAAK,MAAM,cAAc,SAAS;AAAA,EAChF;AACD;;;ACTO,IAAe,gBAAf,MAAwD;AAAA,EAG9D,IAAI,OAAmC;AACtC,WAAO,IAAI,aAAa,MAAM,KAAK;AAAA,EACpC;AAAA,EAEA,GAAG,OAAmC;AACrC,WAAO,IAAI,YAAY,MAAM,KAAK;AAAA,EACnC;AAAA,EAEA,MAAoB;AACnB,WAAO,IAAI,aAAa,IAAI;AAAA,EAC7B;AACD;;;ACbO,IAAM,OAAN,MAAc;AAAA,EAIpB,YAAY,EAAE,MAAM,KAAK,GAA4C;AACpE,SAAK,YAAY;AACjB,SAAK,SAAS;AAAA,EACf;AAAA,EAEA,MAAM,WAAiB;AACtB,QAAI,KAAK,UAAU,cAAc,SAAS,GAAG;AAC5C,aAAO,KAAK,OAAO,MAAM,SAAS;AAAA,IACnC;AACA,WAAO;AAAA,EACR;AACD;;;ACrBO,IAAe,aAAf,MAA0B;AAEjC;;;ACAO,IAAM,kBAAN,cAAqD,WAAW;AAAA,EAKtE,YAAY,kBAAqC,eAAuB;AACvE,UAAM;AALP,SAAS,aAAa;AAMrB,SAAK,mBAAmB;AACxB,SAAK,kBAAkB;AAAA,EACxB;AAAA,EAEA,mBAAmB,QAAsB;AACxC,QAAI,CAAC,KAAK,iBAAiB,SAAS,MAAM,GAAG;AAC5C,YAAM,IAAI,MAAM,6BAA6B,MAAM,EAAE;AAAA,IACtD;AACA,SAAK,kBAAkB;AAAA,EACxB;AAAA,EAEA,qBAA6B;AAC5B,WAAO,KAAK;AAAA,EACb;AACD;;;AClBO,IAAM,2BAAN,cAAuC,cAAgC;AAAA,EAC7E,cAAc,WAAsC;AACnD,WAAO,UAAU,MAAM,aAAa,KAAK,CAAC,eAAe,sBAAsB,eAAe;AAAA,EAC/F;AACD;AAEO,IAAM,qBAAN,MAA6D;AAAA,EACnE,MAAM,WAA+C;AACpD,UAAM,sBAAsB,UAAU,MAAM,aAAa,KAAK,CAAC,eAAe,sBAAsB,eAAe;AACnH,QAAI,qBAAqB;AACf,YAAM,kBAAkB,UAAU;AAC3C,gBAAU,kBAAkB;AAAA,QACf,GAAG;AAAA,QACf,WAAW;AAAA,UACV,QAAQ,oBAAoB,mBAAmB;AAAA,QAChD;AAAA,MACD;AAAA,IACD;AACA,WAAO;AAAA,EACR;AACD;AACO,IAAM,sBAAsB,IAAI,KAAK;AAAA,EAC3C,MAAM,IAAI,yBAAyB;AAAA,EACnC,MAAM,IAAI,mBAAmB;AAC9B,CAAC;;;ACrBD,oBAAmB;AAEZ,IAAM,kBAAN,MAA8C;AAAA,EAGpD,cAAc;AACb,SAAK,SAAS,IAAI,cAAAA,QAAO;AAAA,EAC1B;AAAA,EAEA,MAAM,MAAM,kBAA4D;AACvE,UAAM,QAAQ,KAAK,oBAAoB,iBAAiB,OAAO;AAE/D,wBAAoB,MAAM,gBAAgB;AAC1C,UAAM,WAAW,MAAM,KAAK,OAAO,UAAU,OAAO;AAAA,MACnD,OAAO,iBAAiB,MAAM;AAAA,MAC9B;AAAA,MACA,GAAG,iBAAiB;AAAA,IACrB,CAAC;AACD,WAAO,KAAK,oBAAoB,QAAQ;AAAA,EACzC;AAAA,EAEA,oBAAoB,SAAyB;AAC5C,WAAO,QAAQ,SAAS,EAAE,IAAI,CAAC,SAAS,KAAK,OAAO,CAAC;AAAA,EACtD;AAAA,EAEA,oBAAoB,UAA8B;AACjD,WAAO,SAAS,OAAO,IAAI,CAAC,SAAc;AACzC,UAAI,KAAK,SAAS,aAAa,KAAK,WAAW,aAAa;AAC3D,eAAO,aAAa,UAAU,KAAK,QAAQ,CAAC,CAAqB;AAAA,MAClE;AACA,UAAI,KAAK,SAAS,mBAAmB,KAAK,WAAW,aAAa;AACjE,eAAO,aAAa,UAAU,IAAI;AAAA,MACnC;AACA,UAAI,KAAK,SAAS,eAAe,KAAK,WAAW,aAAa;AAC7D,eAAO,UAAU,UAAU,IAAI;AAAA,MAChC;AAAA,IACD,CAAC;AAAA,EACF;AACD;;;AC1CO,IAAM,wBAAwB,IAAI,gBAA8D,CAAC,SAAS,QAAQ,UAAU,OAAO,MAAM,GAAG,QAAQ;AAEpJ,IAAM,QAAN,MAAkD;AAAA,EAAlD;AACN,SAAS,KAAK;AACd,SAAS,eAA6B,CAAC,qBAAqB;AAAA;AAC7D;AAEO,IAAM,QAAQ,IAAI,MAAM;;;ACRxB,IAAM,mBAAN,MAAuB;AAAA,EAK7B,YAAY,OAAgC,SAAkB;AAC7D,SAAK,QAAQ;AACb,SAAK,UAAU;AACf,SAAK,kBAAkB,CAAC;AAAA,EACzB;AACD;","names":["OpenAI"]}
package/dist/index.mjs CHANGED
@@ -285,7 +285,7 @@ var Rule = class {
285
285
  if (this.condition.isSatisfiedBy(candidate)) {
286
286
  return this.action.apply(candidate);
287
287
  }
288
- throw new Error("Condition not satisfied");
288
+ return candidate;
289
289
  }
290
290
  };
291
291
 
@@ -318,18 +318,24 @@ var ReasoningEffortSupported = class extends BaseCondition {
318
318
  return candidate.model.capabilities.some((capability) => capability instanceof ReasoningEffort);
319
319
  }
320
320
  };
321
- var GetReasoningEffort = class {
321
+ var SetReasoningEffort = class {
322
322
  apply(candidate) {
323
323
  const reasoningCapability = candidate.model.capabilities.find((capability) => capability instanceof ReasoningEffort);
324
324
  if (reasoningCapability) {
325
- return reasoningCapability.getReasoningEffort();
325
+ const providerRequest = candidate.providerRequest;
326
+ candidate.providerRequest = {
327
+ ...providerRequest,
328
+ reasoning: {
329
+ effort: reasoningCapability.getReasoningEffort()
330
+ }
331
+ };
326
332
  }
327
- throw new Error("Reasoning capability not supported");
333
+ return candidate;
328
334
  }
329
335
  };
330
336
  var reasoningEffortRule = new Rule({
331
337
  when: new ReasoningEffortSupported(),
332
- then: new GetReasoningEffort()
338
+ then: new SetReasoningEffort()
333
339
  });
334
340
 
335
341
  // src/providers/openai/runtime/openai-responses.ts
@@ -340,12 +346,11 @@ var OpenAIResponses = class {
340
346
  }
341
347
  async infer(inferenceRequest) {
342
348
  const input = this.mapContextToRequest(inferenceRequest.context);
349
+ reasoningEffortRule.apply(inferenceRequest);
343
350
  const response = await this.client.responses.create({
344
351
  model: inferenceRequest.model.id,
345
352
  input,
346
- reasoning: {
347
- effort: reasoningEffortRule.apply(inferenceRequest)
348
- }
353
+ ...inferenceRequest.providerRequest
349
354
  });
350
355
  return this.extractContextItems(response);
351
356
  }
@@ -376,12 +381,22 @@ var GPT54 = class {
376
381
  }
377
382
  };
378
383
  var gpt54 = new GPT54();
384
+
385
+ // src/core/generative-model/inference-request.ts
386
+ var InferenceRequest = class {
387
+ constructor(model, context) {
388
+ this.model = model;
389
+ this.context = context;
390
+ this.providerRequest = {};
391
+ }
392
+ };
379
393
  export {
380
394
  Context,
381
395
  ContextItem,
382
396
  DeveloperMessage,
383
397
  FunctionCall,
384
398
  FunctionCallOutput,
399
+ InferenceRequest,
385
400
  ModelMessage,
386
401
  OpenAIResponses,
387
402
  Reasoning,
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/core/context-runtime/context.ts","../src/core/context-runtime/context-item.ts","../src/core/context-runtime/content.ts","../src/core/context-runtime/content/input-text.ts","../src/core/context-runtime/input/user-message.ts","../src/core/context-runtime/input/developer-message.ts","../src/core/context-runtime/content/output-text.ts","../src/core/context-runtime/output/model-message.ts","../src/core/context-runtime/output/function-call.ts","../src/core/context-runtime/output/reasoning.ts","../src/core/context-runtime/input/function-call-output.ts","../src/core/context-engine/condition/and-condition.ts","../src/core/context-engine/condition/not-condition.ts","../src/core/context-engine/condition/or-condition.ts","../src/core/context-engine/condition/base-condition.ts","../src/core/context-engine/rule/rule.ts","../src/core/generative-model/capabilities/capability.ts","../src/core/generative-model/capabilities/reasoning-effort.ts","../src/providers/openai/rules/reasoning-effort.ts","../src/providers/openai/runtime/openai-responses.ts","../src/providers/openai/models/gpt-5-4.ts"],"sourcesContent":["import { ContextItem } from \"@core/context-runtime/context-item\"\n\nexport class Context {\n\treadonly id: string\n\treadonly projectId: string\n\treadonly items: ContextItem[]\n\n\tconstructor(id: string, projectId: string, items: ContextItem[]) {\n\t\tthis.projectId = projectId\n\t\tthis.id = id\n\t\tthis.items = items\n\t}\n\n\taddItem(item: ContextItem): Context {\n\t\tthis.items.push(item)\n\t\treturn this\n\t}\n\n\tapplyModelOutput(items: ContextItem[]): Context {\n\t\tfor (const item of items) {\n\t\t\tconst itemType = item.getType()\n\t\t\tif (itemType !== \"function_call\" && itemType !== \"message\" && itemType !== \"reasoning\") {\n\t\t\t\tthrow new Error(`Invalid item type: ${itemType}`)\n\t\t\t}\n\t\t}\n\t\tthis.items.push(...items)\n\t\treturn this\n\t}\n\n\tgetItems(): ContextItem[] {\n\t\treturn this.items\n\t}\n\n\tstatic create(projectId: string): Context {\n\t\tconst id = crypto.randomUUID()\n\t\treturn new Context(id, projectId, [])\n\t}\n\n\tstatic rehydrate(data: { id: string; projectId: string; items: ContextItem[] }): Context {\n\t\treturn new Context(data.id, data.projectId, data.items)\n\t}\n\n\ttoJSON(): any {\n\t\treturn this.items.map((item) => item.toJSON())\n\t}\n}\n","export abstract class ContextItem {\n\tabstract readonly type: string\n\n\tgetType(): string {\n\t\treturn this.type\n\t}\n\n\tabstract toJSON(): any\n}\n","export abstract class Content {\n\tabstract readonly type: string\n}\n","import { Content } from \"@core/context-runtime/content\"\n\nexport class InputText extends Content {\n\treadonly type = \"input_text\"\n\n\tprivate constructor(public readonly text: string) {\n\t\tsuper()\n\t}\n\n\tstatic create(text: string): InputText {\n\t\treturn new InputText(text)\n\t}\n\n\tstatic rehydrate(data: { text: string }): InputText {\n\t\treturn new InputText(data.text)\n\t}\n\n\ttoJSON(): any[] {\n\t\treturn [\n\t\t\t{\n\t\t\t\ttype: this.type,\n\t\t\t\ttext: this.text,\n\t\t\t},\n\t\t]\n\t}\n}\n","import { ContextItem } from \"@core/context-runtime/context-item\"\nimport { InputText } from \"@core/context-runtime/content/input-text\"\n\nexport class UserMessage extends ContextItem {\n\treadonly type = \"message\"\n\treadonly role = \"user\"\n\treadonly content: InputText\n\n\tprivate constructor(content: InputText) {\n\t\tsuper()\n\t\tthis.content = content\n\t}\n\n\tstatic create(text: string): UserMessage {\n\t\tconst content = InputText.create(text)\n\t\treturn new UserMessage(content)\n\t}\n\n\tstatic rehydrate(data: { text: string }): UserMessage {\n\t\tconst content = InputText.rehydrate(data)\n\t\treturn new UserMessage(content)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\trole: this.role,\n\t\t\tcontent: this.content.toJSON(),\n\t\t}\n\t}\n}\n","import { InputText } from \"@core/context-runtime/content/input-text\"\nimport { ContextItem } from \"@core/context-runtime/context-item\"\n\nexport class DeveloperMessage extends ContextItem {\n\treadonly type = \"message\"\n\treadonly role = \"developer\"\n\treadonly content: InputText\n\n\tprivate constructor(content: InputText) {\n\t\tsuper()\n\t\tthis.content = content\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\trole: this.role,\n\t\t\tcontent: this.content.toJSON(),\n\t\t}\n\t}\n\n\tstatic create(text: string): DeveloperMessage {\n\t\tconst content = InputText.create(text)\n\t\treturn new DeveloperMessage(content)\n\t}\n\n\tstatic rehydrate(data: { text: string }): DeveloperMessage {\n\t\tconst content = InputText.rehydrate(data)\n\t\treturn new DeveloperMessage(content)\n\t}\n}\n","import { Content } from \"@core/context-runtime/content\"\n\nexport class OutputText extends Content {\n\treadonly type = \"output_text\"\n\n\tprivate constructor(public readonly text: string) {\n\t\tsuper()\n\t}\n\n\tstatic rehydrate(data: { text: string }): OutputText {\n\t\treturn new OutputText(data.text)\n\t}\n\n\ttoJSON(): any[] {\n\t\treturn [\n\t\t\t{\n\t\t\t\ttype: this.type,\n\t\t\t\ttext: this.text,\n\t\t\t},\n\t\t]\n\t}\n}\n","import { ContextItem } from \"@core/context-runtime/context-item\"\nimport { OutputText } from \"@core/context-runtime/content/output-text\"\n\nexport class ModelMessage extends ContextItem {\n\treadonly type = \"message\"\n\treadonly role = \"assistant\"\n\treadonly content: OutputText\n\n\tprivate constructor(content: OutputText) {\n\t\tsuper()\n\t\tthis.content = content\n\t}\n\n\tstatic rehydrate(data: { text: string }): ModelMessage {\n\t\tconst content = OutputText.rehydrate(data)\n\t\treturn new ModelMessage(content)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\trole: this.role,\n\t\t\tcontent: this.content.toJSON(),\n\t\t}\n\t}\n}\n","import { ContextItem } from \"@core/context-runtime/context-item\"\n\nexport class FunctionCall extends ContextItem {\n\treadonly type = \"function_call\"\n\treadonly callId: string\n\treadonly name: string\n\treadonly args: string\n\n\tprivate constructor(callId: string, name: string, args: string) {\n\t\tsuper()\n\t\tthis.callId = callId\n\t\tthis.name = name\n\t\tthis.args = args\n\t}\n\n\tstatic rehydrate(data: { callId: string; name: string; args: string }): FunctionCall {\n\t\treturn new FunctionCall(data.callId, data.name, data.args)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\tcallId: this.callId,\n\t\t\tname: this.name,\n\t\t\targuments: this.args,\n\t\t}\n\t}\n}\n","import { InputText } from \"@core/context-runtime/content/input-text\"\nimport { SummaryText } from \"@core/context-runtime/content/summary-text\"\nimport { ContextItem } from \"@core/context-runtime/context-item\"\n\nexport class Reasoning extends ContextItem {\n\treadonly type = \"reasoning\"\n\treadonly content: InputText | undefined\n\treadonly encryptedContent: string | undefined\n\treadonly summary: SummaryText[]\n\n\tprivate constructor(\n\t\tcontent: InputText | undefined,\n\t\tencryptedContent?: string | undefined,\n\t\tsummary: SummaryText[] = [],\n\t) {\n\t\tsuper()\n\t\tthis.content = content\n\t\tthis.encryptedContent = encryptedContent\n\t\tthis.summary = summary\n\t}\n\n\tstatic rehydrate(data: {\n\t\tcontent: InputText | undefined\n\t\tencryptedContent: string | undefined\n\t\tsummary: SummaryText[]\n\t}): Reasoning {\n\t\treturn new Reasoning(data.content, data.encryptedContent, data.summary)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\tcontent: this.content?.toJSON(),\n\t\t\tencryptedContent: this.encryptedContent,\n\t\t\tsummary: this.summary.map((s) => s.toJSON()),\n\t\t}\n\t}\n}\n","import { ContextItem } from \"@core/context-runtime/context-item\"\nimport { InputText } from \"@core/context-runtime/content/input-text\"\n\nexport class FunctionCallOutput extends ContextItem {\n\treadonly type = \"function_call_output\"\n\treadonly callId: string\n\treadonly output: InputText[]\n\n\tprivate constructor(callId: string, output: InputText[]) {\n\t\tsuper()\n\t\tthis.callId = callId\n\t\tthis.output = output\n\t}\n\n\tstatic create(callId: string, output: InputText[]): FunctionCallOutput {\n\t\treturn new FunctionCallOutput(callId, output)\n\t}\n\n\tstatic rehydrate(data: { callId: string; output: InputText[] }): FunctionCallOutput {\n\t\treturn new FunctionCallOutput(data.callId, data.output)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\tcallId: this.callId,\n\t\t\toutput: this.output.map((o) => o.toJSON()),\n\t\t}\n\t}\n}\n","import { BaseCondition } from \"@core/context-engine/condition/base-condition\"\nimport { Condition } from \"@core/context-engine/condition/condition\"\n\nexport class AndCondition<T> extends BaseCondition<T> {\n\tconstructor(\n\t\tprivate readonly left: Condition<T>,\n\t\tprivate readonly right: Condition<T>,\n\t) {\n\t\tsuper()\n\t}\n\n\tisSatisfiedBy(candidate: T): boolean {\n\t\treturn this.left.isSatisfiedBy(candidate) && this.right.isSatisfiedBy(candidate)\n\t}\n}\n","import { BaseCondition } from \"@core/context-engine/condition/base-condition\"\nimport { Condition } from \"@core/context-engine/condition/condition\"\n\nexport class NotCondition<T> extends BaseCondition<T> {\n\tconstructor(private readonly condition: Condition<T>) {\n\t\tsuper()\n\t}\n\n\tisSatisfiedBy(candidate: T): boolean {\n\t\treturn !this.condition.isSatisfiedBy(candidate)\n\t}\n}\n","import { BaseCondition } from \"@core/context-engine/condition/base-condition\"\nimport { Condition } from \"@core/context-engine/condition/condition\"\n\nexport class OrCondition<T> extends BaseCondition<T> {\n\tconstructor(\n\t\tprivate readonly left: Condition<T>,\n\t\tprivate readonly right: Condition<T>,\n\t) {\n\t\tsuper()\n\t}\n\n\tisSatisfiedBy(candidate: T): boolean {\n\t\treturn this.left.isSatisfiedBy(candidate) || this.right.isSatisfiedBy(candidate)\n\t}\n}\n","import { AndCondition } from \"@core/context-engine/condition/and-condition\"\nimport { Condition } from \"@core/context-engine/condition/condition\"\nimport { NotCondition } from \"@core/context-engine/condition/not-condition\"\nimport { OrCondition } from \"@core/context-engine/condition/or-condition\"\n\nexport abstract class BaseCondition<T> implements Condition<T> {\n\tabstract isSatisfiedBy(candidate: T): boolean\n\n\tand(other: Condition<T>): Condition<T> {\n\t\treturn new AndCondition(this, other)\n\t}\n\n\tor(other: Condition<T>): Condition<T> {\n\t\treturn new OrCondition(this, other)\n\t}\n\n\tnot(): Condition<T> {\n\t\treturn new NotCondition(this)\n\t}\n}\n","import { Condition } from \"@core/context-engine/condition/condition\"\n\nexport interface Action<T, R> {\n\tapply(candidate: T): R\n}\n\nexport class Rule<T, R> {\n\tprivate condition: Condition<T>\n\tprivate action: Action<T, R>\n\n\tconstructor({ when, then }: { when: Condition<T>; then: Action<T, R> }) {\n\t\tthis.condition = when\t\n\t\tthis.action = then\n\t}\n\n\tapply(candidate: T): R {\n\t\tif (this.condition.isSatisfiedBy(candidate)) {\n\t\t\treturn this.action.apply(candidate)\n\t\t}\n\t\tthrow new Error(\"Condition not satisfied\")\n\t}\n}\n","export abstract class Capability {\n abstract readonly capability: string\n}","import { Capability } from \"./capability\"\n\nexport class ReasoningEffort<Effort extends string> extends Capability {\n\treadonly capability = \"reasoning-effort\"\n\treadonly supportedEfforts: readonly Effort[]\n\treasoningEffort: Effort\n\n\tconstructor(supportedEfforts: readonly Effort[], defaultEffort: Effort) {\n\t\tsuper()\n\t\tthis.supportedEfforts = supportedEfforts\n\t\tthis.reasoningEffort = defaultEffort\n\t}\n\n\tsetReasoningEffort(effort: Effort): void {\n\t\tif (!this.supportedEfforts.includes(effort)) {\n\t\t\tthrow new Error(`Invalid reasoning effort: ${effort}`)\n\t\t}\n\t\tthis.reasoningEffort = effort;\n\t}\n\n\tgetReasoningEffort(): Effort {\n\t\treturn this.reasoningEffort\n\t}\n}\n","import { BaseCondition } from \"@core/context-engine/condition/base-condition\"\nimport { Action, Rule } from \"@core/context-engine/rule/rule\"\nimport { ReasoningEffort } from \"@core/generative-model/capabilities/reasoning-effort\"\nimport { InferenceRequest } from \"@core/generative-model/inference-request\"\n\nexport class ReasoningEffortSupported extends BaseCondition<InferenceRequest> {\n\tisSatisfiedBy(candidate: InferenceRequest): boolean {\n\t\treturn candidate.model.capabilities.some((capability) => capability instanceof ReasoningEffort)\n\t}\n}\n\nexport class GetReasoningEffort implements Action<InferenceRequest, \"low\" | \"medium\" | \"high\" | \"xhigh\" | \"none\"> {\n\tapply(candidate: InferenceRequest): \"low\" | \"medium\" | \"high\" | \"xhigh\" | \"none\" {\n\t\tconst reasoningCapability = candidate.model.capabilities.find((capability) => capability instanceof ReasoningEffort)\n\t\tif (reasoningCapability) {\n\t\t\treturn reasoningCapability.getReasoningEffort()\n\t\t}\n\t\tthrow new Error(\"Reasoning capability not supported\")\n\t}\n}\nexport const reasoningEffortRule = new Rule({\n\twhen: new ReasoningEffortSupported(),\n\tthen: new GetReasoningEffort(),\n})","import { Context } from \"@core/context-runtime/context\"\nimport { ContextItem } from \"@core/context-runtime/context-item\"\nimport { FunctionCall } from \"@core/context-runtime/output/function-call\"\nimport { ModelMessage } from \"@core/context-runtime/output/model-message\"\nimport { Reasoning } from \"@core/context-runtime/output/reasoning\"\nimport { InferenceRequest } from \"@core/generative-model/inference-request\"\nimport { ModelRuntime } from \"@core/generative-model/runtime/model-runtime\"\nimport { reasoningEffortRule } from \"@openai/rules/reasoning-effort\"\nimport OpenAI from \"openai\"\n\nexport class OpenAIResponses implements ModelRuntime {\n\tprivate readonly client: OpenAI\n\n\tconstructor() {\n\t\tthis.client = new OpenAI()\n\t}\n\n\tasync infer(inferenceRequest: InferenceRequest): Promise<ContextItem[]> {\n\t\tconst input = this.mapContextToRequest(inferenceRequest.context)\n\t\tconst response = await this.client.responses.create({\n\t\t\tmodel: inferenceRequest.model.id,\n\t\t\tinput: input,\n\t\t\treasoning: {\n\t\t\t\teffort: reasoningEffortRule.apply(inferenceRequest)\n\t\t\t}\n\t\t})\n\t\treturn this.extractContextItems(response)\n\t}\n\n\tmapContextToRequest(context: Context): any[] {\n\t\treturn context.getItems().map((item) => item.toJSON())\n\t}\n\n\textractContextItems(response: any): ContextItem[] {\n\t\treturn response.output.map((item: any) => {\n\t\t\tif (item.type === \"message\" && item.status === \"completed\") {\n\t\t\t\treturn ModelMessage.rehydrate(item.content[0] as { text: string })\n\t\t\t}\n\t\t\tif (item.type === \"function_call\" && item.status === \"completed\") {\n\t\t\t\treturn FunctionCall.rehydrate(item)\n\t\t\t}\n\t\t\tif (item.type === \"reasoning\" && item.status === \"completed\") {\n\t\t\t\treturn Reasoning.rehydrate(item)\n\t\t\t}\n\t\t})\n\t}\n}\n","import { Capability } from \"@core/generative-model/capabilities/capability\"\nimport { ReasoningEffort } from \"@core/generative-model/capabilities/reasoning-effort\"\nimport { GenerativeModel } from \"@core/generative-model/generative-model\"\n\nexport const openaiReasoningEffort = new ReasoningEffort<\"xhigh\" | \"high\" | \"medium\" | \"low\" | \"none\">([\"xhigh\", \"high\", \"medium\", \"low\", \"none\"], \"medium\")\n\nexport class GPT54 implements GenerativeModel<\"gpt-5.4\"> {\n\treadonly id = \"gpt-5.4\"\n\treadonly capabilities: Capability[] = [openaiReasoningEffort]\n}\n\nexport const gpt54 = new GPT54()"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../src/core/context-runtime/context.ts","../src/core/context-runtime/context-item.ts","../src/core/context-runtime/content.ts","../src/core/context-runtime/content/input-text.ts","../src/core/context-runtime/input/user-message.ts","../src/core/context-runtime/input/developer-message.ts","../src/core/context-runtime/content/output-text.ts","../src/core/context-runtime/output/model-message.ts","../src/core/context-runtime/output/function-call.ts","../src/core/context-runtime/output/reasoning.ts","../src/core/context-runtime/input/function-call-output.ts","../src/core/context-engine/condition/and-condition.ts","../src/core/context-engine/condition/not-condition.ts","../src/core/context-engine/condition/or-condition.ts","../src/core/context-engine/condition/base-condition.ts","../src/core/context-engine/rule/rule.ts","../src/core/generative-model/capabilities/capability.ts","../src/core/generative-model/capabilities/reasoning-effort.ts","../src/providers/openai/rules/reasoning-effort.ts","../src/providers/openai/runtime/openai-responses.ts","../src/providers/openai/models/gpt-5-4.ts","../src/core/generative-model/inference-request.ts"],"sourcesContent":["import { ContextItem } from \"@core/context-runtime/context-item\"\n\nexport class Context {\n\treadonly id: string\n\treadonly projectId: string\n\treadonly items: ContextItem[]\n\n\tconstructor(id: string, projectId: string, items: ContextItem[]) {\n\t\tthis.projectId = projectId\n\t\tthis.id = id\n\t\tthis.items = items\n\t}\n\n\taddItem(item: ContextItem): Context {\n\t\tthis.items.push(item)\n\t\treturn this\n\t}\n\n\tapplyModelOutput(items: ContextItem[]): Context {\n\t\tfor (const item of items) {\n\t\t\tconst itemType = item.getType()\n\t\t\tif (itemType !== \"function_call\" && itemType !== \"message\" && itemType !== \"reasoning\") {\n\t\t\t\tthrow new Error(`Invalid item type: ${itemType}`)\n\t\t\t}\n\t\t}\n\t\tthis.items.push(...items)\n\t\treturn this\n\t}\n\n\tgetItems(): ContextItem[] {\n\t\treturn this.items\n\t}\n\n\tstatic create(projectId: string): Context {\n\t\tconst id = crypto.randomUUID()\n\t\treturn new Context(id, projectId, [])\n\t}\n\n\tstatic rehydrate(data: { id: string; projectId: string; items: ContextItem[] }): Context {\n\t\treturn new Context(data.id, data.projectId, data.items)\n\t}\n\n\ttoJSON(): any {\n\t\treturn this.items.map((item) => item.toJSON())\n\t}\n}\n","export abstract class ContextItem {\n\tabstract readonly type: string\n\n\tgetType(): string {\n\t\treturn this.type\n\t}\n\n\tabstract toJSON(): any\n}\n","export abstract class Content {\n\tabstract readonly type: string\n}\n","import { Content } from \"@core/context-runtime/content\"\n\nexport class InputText extends Content {\n\treadonly type = \"input_text\"\n\n\tprivate constructor(public readonly text: string) {\n\t\tsuper()\n\t}\n\n\tstatic create(text: string): InputText {\n\t\treturn new InputText(text)\n\t}\n\n\tstatic rehydrate(data: { text: string }): InputText {\n\t\treturn new InputText(data.text)\n\t}\n\n\ttoJSON(): any[] {\n\t\treturn [\n\t\t\t{\n\t\t\t\ttype: this.type,\n\t\t\t\ttext: this.text,\n\t\t\t},\n\t\t]\n\t}\n}\n","import { ContextItem } from \"@core/context-runtime/context-item\"\nimport { InputText } from \"@core/context-runtime/content/input-text\"\n\nexport class UserMessage extends ContextItem {\n\treadonly type = \"message\"\n\treadonly role = \"user\"\n\treadonly content: InputText\n\n\tprivate constructor(content: InputText) {\n\t\tsuper()\n\t\tthis.content = content\n\t}\n\n\tstatic create(text: string): UserMessage {\n\t\tconst content = InputText.create(text)\n\t\treturn new UserMessage(content)\n\t}\n\n\tstatic rehydrate(data: { text: string }): UserMessage {\n\t\tconst content = InputText.rehydrate(data)\n\t\treturn new UserMessage(content)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\trole: this.role,\n\t\t\tcontent: this.content.toJSON(),\n\t\t}\n\t}\n}\n","import { InputText } from \"@core/context-runtime/content/input-text\"\nimport { ContextItem } from \"@core/context-runtime/context-item\"\n\nexport class DeveloperMessage extends ContextItem {\n\treadonly type = \"message\"\n\treadonly role = \"developer\"\n\treadonly content: InputText\n\n\tprivate constructor(content: InputText) {\n\t\tsuper()\n\t\tthis.content = content\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\trole: this.role,\n\t\t\tcontent: this.content.toJSON(),\n\t\t}\n\t}\n\n\tstatic create(text: string): DeveloperMessage {\n\t\tconst content = InputText.create(text)\n\t\treturn new DeveloperMessage(content)\n\t}\n\n\tstatic rehydrate(data: { text: string }): DeveloperMessage {\n\t\tconst content = InputText.rehydrate(data)\n\t\treturn new DeveloperMessage(content)\n\t}\n}\n","import { Content } from \"@core/context-runtime/content\"\n\nexport class OutputText extends Content {\n\treadonly type = \"output_text\"\n\n\tprivate constructor(public readonly text: string) {\n\t\tsuper()\n\t}\n\n\tstatic rehydrate(data: { text: string }): OutputText {\n\t\treturn new OutputText(data.text)\n\t}\n\n\ttoJSON(): any[] {\n\t\treturn [\n\t\t\t{\n\t\t\t\ttype: this.type,\n\t\t\t\ttext: this.text,\n\t\t\t},\n\t\t]\n\t}\n}\n","import { ContextItem } from \"@core/context-runtime/context-item\"\nimport { OutputText } from \"@core/context-runtime/content/output-text\"\n\nexport class ModelMessage extends ContextItem {\n\treadonly type = \"message\"\n\treadonly role = \"assistant\"\n\treadonly content: OutputText\n\n\tprivate constructor(content: OutputText) {\n\t\tsuper()\n\t\tthis.content = content\n\t}\n\n\tstatic rehydrate(data: { text: string }): ModelMessage {\n\t\tconst content = OutputText.rehydrate(data)\n\t\treturn new ModelMessage(content)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\trole: this.role,\n\t\t\tcontent: this.content.toJSON(),\n\t\t}\n\t}\n}\n","import { ContextItem } from \"@core/context-runtime/context-item\"\n\nexport class FunctionCall extends ContextItem {\n\treadonly type = \"function_call\"\n\treadonly callId: string\n\treadonly name: string\n\treadonly args: string\n\n\tprivate constructor(callId: string, name: string, args: string) {\n\t\tsuper()\n\t\tthis.callId = callId\n\t\tthis.name = name\n\t\tthis.args = args\n\t}\n\n\tstatic rehydrate(data: { callId: string; name: string; args: string }): FunctionCall {\n\t\treturn new FunctionCall(data.callId, data.name, data.args)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\tcallId: this.callId,\n\t\t\tname: this.name,\n\t\t\targuments: this.args,\n\t\t}\n\t}\n}\n","import { InputText } from \"@core/context-runtime/content/input-text\"\nimport { SummaryText } from \"@core/context-runtime/content/summary-text\"\nimport { ContextItem } from \"@core/context-runtime/context-item\"\n\nexport class Reasoning extends ContextItem {\n\treadonly type = \"reasoning\"\n\treadonly content: InputText | undefined\n\treadonly encryptedContent: string | undefined\n\treadonly summary: SummaryText[]\n\n\tprivate constructor(\n\t\tcontent: InputText | undefined,\n\t\tencryptedContent?: string | undefined,\n\t\tsummary: SummaryText[] = [],\n\t) {\n\t\tsuper()\n\t\tthis.content = content\n\t\tthis.encryptedContent = encryptedContent\n\t\tthis.summary = summary\n\t}\n\n\tstatic rehydrate(data: {\n\t\tcontent: InputText | undefined\n\t\tencryptedContent: string | undefined\n\t\tsummary: SummaryText[]\n\t}): Reasoning {\n\t\treturn new Reasoning(data.content, data.encryptedContent, data.summary)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\tcontent: this.content?.toJSON(),\n\t\t\tencryptedContent: this.encryptedContent,\n\t\t\tsummary: this.summary.map((s) => s.toJSON()),\n\t\t}\n\t}\n}\n","import { ContextItem } from \"@core/context-runtime/context-item\"\nimport { InputText } from \"@core/context-runtime/content/input-text\"\n\nexport class FunctionCallOutput extends ContextItem {\n\treadonly type = \"function_call_output\"\n\treadonly callId: string\n\treadonly output: InputText[]\n\n\tprivate constructor(callId: string, output: InputText[]) {\n\t\tsuper()\n\t\tthis.callId = callId\n\t\tthis.output = output\n\t}\n\n\tstatic create(callId: string, output: InputText[]): FunctionCallOutput {\n\t\treturn new FunctionCallOutput(callId, output)\n\t}\n\n\tstatic rehydrate(data: { callId: string; output: InputText[] }): FunctionCallOutput {\n\t\treturn new FunctionCallOutput(data.callId, data.output)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\tcallId: this.callId,\n\t\t\toutput: this.output.map((o) => o.toJSON()),\n\t\t}\n\t}\n}\n","import { BaseCondition } from \"@core/context-engine/condition/base-condition\"\nimport { Condition } from \"@core/context-engine/condition/condition\"\n\nexport class AndCondition<T> extends BaseCondition<T> {\n\tconstructor(\n\t\tprivate readonly left: Condition<T>,\n\t\tprivate readonly right: Condition<T>,\n\t) {\n\t\tsuper()\n\t}\n\n\tisSatisfiedBy(candidate: T): boolean {\n\t\treturn this.left.isSatisfiedBy(candidate) && this.right.isSatisfiedBy(candidate)\n\t}\n}\n","import { BaseCondition } from \"@core/context-engine/condition/base-condition\"\nimport { Condition } from \"@core/context-engine/condition/condition\"\n\nexport class NotCondition<T> extends BaseCondition<T> {\n\tconstructor(private readonly condition: Condition<T>) {\n\t\tsuper()\n\t}\n\n\tisSatisfiedBy(candidate: T): boolean {\n\t\treturn !this.condition.isSatisfiedBy(candidate)\n\t}\n}\n","import { BaseCondition } from \"@core/context-engine/condition/base-condition\"\nimport { Condition } from \"@core/context-engine/condition/condition\"\n\nexport class OrCondition<T> extends BaseCondition<T> {\n\tconstructor(\n\t\tprivate readonly left: Condition<T>,\n\t\tprivate readonly right: Condition<T>,\n\t) {\n\t\tsuper()\n\t}\n\n\tisSatisfiedBy(candidate: T): boolean {\n\t\treturn this.left.isSatisfiedBy(candidate) || this.right.isSatisfiedBy(candidate)\n\t}\n}\n","import { AndCondition } from \"@core/context-engine/condition/and-condition\"\nimport { Condition } from \"@core/context-engine/condition/condition\"\nimport { NotCondition } from \"@core/context-engine/condition/not-condition\"\nimport { OrCondition } from \"@core/context-engine/condition/or-condition\"\n\nexport abstract class BaseCondition<T> implements Condition<T> {\n\tabstract isSatisfiedBy(candidate: T): boolean\n\n\tand(other: Condition<T>): Condition<T> {\n\t\treturn new AndCondition(this, other)\n\t}\n\n\tor(other: Condition<T>): Condition<T> {\n\t\treturn new OrCondition(this, other)\n\t}\n\n\tnot(): Condition<T> {\n\t\treturn new NotCondition(this)\n\t}\n}\n","import { Condition } from \"@core/context-engine/condition/condition\"\n\nexport interface Action<T> {\n\tapply(candidate: T): T\n}\n\nexport class Rule<T> {\n\tprivate condition: Condition<T>\n\tprivate action: Action<T>\n\n\tconstructor({ when, then }: { when: Condition<T>; then: Action<T> }) {\n\t\tthis.condition = when\t\n\t\tthis.action = then\n\t}\n\n\tapply(candidate: T): T {\n\t\tif (this.condition.isSatisfiedBy(candidate)) {\n\t\t\treturn this.action.apply(candidate)\n\t\t}\n\t\treturn candidate\n\t}\n}\n","export abstract class Capability {\n abstract readonly capability: string\n}","import { Capability } from \"./capability\"\n\nexport class ReasoningEffort<Effort extends string> extends Capability {\n\treadonly capability = \"reasoning-effort\"\n\treadonly supportedEfforts: readonly Effort[]\n\treasoningEffort: Effort\n\n\tconstructor(supportedEfforts: readonly Effort[], defaultEffort: Effort) {\n\t\tsuper()\n\t\tthis.supportedEfforts = supportedEfforts\n\t\tthis.reasoningEffort = defaultEffort\n\t}\n\n\tsetReasoningEffort(effort: Effort): void {\n\t\tif (!this.supportedEfforts.includes(effort)) {\n\t\t\tthrow new Error(`Invalid reasoning effort: ${effort}`)\n\t\t}\n\t\tthis.reasoningEffort = effort;\n\t}\n\n\tgetReasoningEffort(): Effort {\n\t\treturn this.reasoningEffort\n\t}\n}\n","import { BaseCondition } from \"@core/context-engine/condition/base-condition\"\nimport { Action, Rule } from \"@core/context-engine/rule/rule\"\nimport { ReasoningEffort } from \"@core/generative-model/capabilities/reasoning-effort\"\nimport { InferenceRequest } from \"@core/generative-model/inference-request\"\n\nexport class ReasoningEffortSupported extends BaseCondition<InferenceRequest> {\n\tisSatisfiedBy(candidate: InferenceRequest): boolean {\n\t\treturn candidate.model.capabilities.some((capability) => capability instanceof ReasoningEffort)\n\t}\n}\n\nexport class SetReasoningEffort implements Action<InferenceRequest> {\n\tapply(candidate: InferenceRequest): InferenceRequest {\n\t\tconst reasoningCapability = candidate.model.capabilities.find((capability) => capability instanceof ReasoningEffort)\n\t\tif (reasoningCapability) {\n const providerRequest = candidate.providerRequest\n\t\t\tcandidate.providerRequest = {\n ...providerRequest,\n\t\t\t\treasoning: {\n\t\t\t\t\teffort: reasoningCapability.getReasoningEffort()\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn candidate\n\t}\n}\nexport const reasoningEffortRule = new Rule({\n\twhen: new ReasoningEffortSupported(),\n\tthen: new SetReasoningEffort(),\n})","import { Context } from \"@core/context-runtime/context\"\nimport { ContextItem } from \"@core/context-runtime/context-item\"\nimport { FunctionCall } from \"@core/context-runtime/output/function-call\"\nimport { ModelMessage } from \"@core/context-runtime/output/model-message\"\nimport { Reasoning } from \"@core/context-runtime/output/reasoning\"\nimport { InferenceRequest } from \"@core/generative-model/inference-request\"\nimport { ModelRuntime } from \"@core/generative-model/runtime/model-runtime\"\nimport { reasoningEffortRule } from \"@openai/rules/reasoning-effort\"\nimport OpenAI from \"openai\"\n\nexport class OpenAIResponses implements ModelRuntime {\n\tprivate readonly client: OpenAI\n\n\tconstructor() {\n\t\tthis.client = new OpenAI()\n\t}\n\n\tasync infer(inferenceRequest: InferenceRequest): Promise<ContextItem[]> {\n\t\tconst input = this.mapContextToRequest(inferenceRequest.context)\n\n\t\treasoningEffortRule.apply(inferenceRequest)\n\t\tconst response = await this.client.responses.create({\n\t\t\tmodel: inferenceRequest.model.id,\n\t\t\tinput: input,\n\t\t\t...inferenceRequest.providerRequest\n\t\t})\n\t\treturn this.extractContextItems(response)\n\t}\n\n\tmapContextToRequest(context: Context): any[] {\n\t\treturn context.getItems().map((item) => item.toJSON())\n\t}\n\n\textractContextItems(response: any): ContextItem[] {\n\t\treturn response.output.map((item: any) => {\n\t\t\tif (item.type === \"message\" && item.status === \"completed\") {\n\t\t\t\treturn ModelMessage.rehydrate(item.content[0] as { text: string })\n\t\t\t}\n\t\t\tif (item.type === \"function_call\" && item.status === \"completed\") {\n\t\t\t\treturn FunctionCall.rehydrate(item)\n\t\t\t}\n\t\t\tif (item.type === \"reasoning\" && item.status === \"completed\") {\n\t\t\t\treturn Reasoning.rehydrate(item)\n\t\t\t}\n\t\t})\n\t}\n}\n","import { Capability } from \"@core/generative-model/capabilities/capability\"\nimport { ReasoningEffort } from \"@core/generative-model/capabilities/reasoning-effort\"\nimport { GenerativeModel } from \"@core/generative-model/generative-model\"\n\nexport const openaiReasoningEffort = new ReasoningEffort<\"xhigh\" | \"high\" | \"medium\" | \"low\" | \"none\">([\"xhigh\", \"high\", \"medium\", \"low\", \"none\"], \"medium\")\n\nexport class GPT54 implements GenerativeModel<\"gpt-5.4\"> {\n\treadonly id = \"gpt-5.4\"\n\treadonly capabilities: Capability[] = [openaiReasoningEffort]\n}\n\nexport const gpt54 = new GPT54()","import { Context } from \"@core/context-runtime/context\"\nimport { GenerativeModel } from \"./generative-model\"\n\nexport class InferenceRequest {\n\treadonly model: GenerativeModel<string>\n\treadonly context: Context\n providerRequest: Record<string, unknown>\n\n\tconstructor(model: GenerativeModel<string>, context: Context) {\n\t\tthis.model = model\n\t\tthis.context = context\n\t\tthis.providerRequest = {}\n\t}\n}"],"mappings":"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","names":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mozaik-ai/core",
3
- "version": "2.4.0",
3
+ "version": "2.4.2",
4
4
  "description": "A TypeScript library for building AI agents",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",