Skip to content

feat:Update AI21 OpenAPI: new endpoints, schemas and response formats#191

Closed
HavenDV wants to merge 1 commit into
mainfrom
bot/update-openapi_202509180145
Closed

feat:Update AI21 OpenAPI: new endpoints, schemas and response formats#191
HavenDV wants to merge 1 commit into
mainfrom
bot/update-openapi_202509180145

Conversation

@HavenDV

@HavenDV HavenDV commented Sep 18, 2025

Copy link
Copy Markdown
Contributor

Summary by CodeRabbit

  • New Features

    • Added assistant management: create/modify/run assistants, create/modify plans, manage routes, and validate plans.
    • Introduced MCP tool discovery endpoint.
    • Added vector store support: fetch by ID and include vector_store_id in compliance/RFI flows.
    • Generate-response-pdf now returns JSON or PDF.
    • Expanded tool options: RAG tool, plus new file/web search, HTTP, and MCP tool resources.
    • Enhanced assistant model with requirements, budget, visibility, and type fields.
    • Improved conversational RAG config with retrieval strategy, max documents, and unset response language.
  • Refactor

    • Reorganized public tool definitions and schemas for greater modularity.

@coderabbitai

coderabbitai Bot commented Sep 18, 2025

Copy link
Copy Markdown

Walkthrough

The OpenAPI spec in src/libs/AI21/openapi.yaml was updated to add new assistants, routes, plans, MCP discovery, and vector-store endpoints, expand/rename schemas and enums, adjust tool definitions/references, update demos payloads, and enable JSON/PDF responses for generate-response-pdf. All changes are confined to this file.

Changes

Cohort / File(s) Summary
Assistants endpoints (CRUD, run, validation, plans, routes)
src/libs/AI21/openapi.yaml
Added POST /studio/v1/assistants, PATCH /assistants/{assistant_id}, POST /assistants/{assistant_id}/run, POST /assistants/{assistant_id}/plans, PATCH /assistants/{assistant_id}/plans/{plan_id}, GET/POST /assistants/{assistant_id}/routes, GET/PATCH/DELETE /assistants/{assistant_id}/routes/{route_id}, POST /assistants/{assistant_id}/validate_plan with corresponding request/response schemas.
MCP discovery API
src/libs/AI21/openapi.yaml
Added POST /studio/v1/mcp/discover returning MCPDiscoveryResponse; introduced MCPDefinition, MCPTool, MCPToolResource schemas.
Vector store and demos
src/libs/AI21/openapi.yaml
Added GET /studio/v1/demos/regulations/vector-store/{vector_store_id}. Updated demos payloads (upload-check-compliance, process RFI) to accept vector_store_id. generate-response-pdf now supports application/json and application/pdf responses.
Assistant model/enums
src/libs/AI21/openapi.yaml
Extended Assistant with requirements, budget (BudgetLevel, default medium), visibility (Visibility, default public), assistant_type (AssistantType, default default). Added enums: BudgetLevel, Visibility, AssistantType. AssistantTool enum includes rag.
Tool definitions/resources refactor
src/libs/AI21/openapi.yaml
Replaced top-level ToolDefinition with language_studio_api_server__data_types__execution_engine__ToolDefinition (discriminator-based). Added language_studio_api_server__data_types__chat__ToolDefinition. Renamed ToolResources → ToolResource. Added HTTPTool* schemas, FileSearchToolResource, WebSearchToolResource.
Chat/Maestro tool references
src/libs/AI21/openapi.yaml
ChatRequest.tools now reference chat-specific ToolDefinition. Maestro/run payloads reference execution_engine ToolDefinition.
RAG and language settings
src/libs/AI21/openapi.yaml
ConversationalRagConfig now composes RetrievalStrategy, adds max_documents, and allows response_language to be unset (default unset).
Schema additions for runs and modifications
src/libs/AI21/openapi.yaml
Added CreateAssistantRequest, ModifyAssistantRequest, RunAssistantRequest, RunOptimization.
RFI requirement type alignment
src/libs/AI21/openapi.yaml
Replaced RFIResponseSection Requirement with language_studio_api_server__data_types__assistant__Requirement.

Sequence Diagram(s)

sequenceDiagram
  autonumber
  actor Client
  participant API as Studio API
  participant Assist as Assistants Service
  participant Exec as Execution Engine
  participant Tools as Tool Integrations
  participant VS as Vector Store

  Note over Client,API: Create/Modify/Run Assistant flow
  Client->>API: POST /assistants (or PATCH /assistants/{id})
  API->>Assist: Validate & persist Assistant
  Assist-->>API: Assistant
  API-->>Client: 200 Assistant

  Client->>API: POST /assistants/{id}/run (RunAssistantRequest)
  API->>Assist: Prepare run (routes/plans)
  Assist->>Exec: Execute plan/tools
  par Tool calls
    Exec->>Tools: HTTP/MCP/FileSearch/WebSearch calls
    Tools-->>Exec: Results
  and Retrieval
    Exec->>VS: Query documents (if vector_store_id)
    VS-->>Exec: Documents
  end
  Exec-->>Assist: Run result
  Assist-->>API: MaestroRunResult
  API-->>Client: 200 MaestroRunResult

  Note over Client,API: Routes/Plans management similar CRUD on /assistants/{id}/routes|/plans
Loading
sequenceDiagram
  autonumber
  actor Client
  participant API as Studio API
  participant MCP as MCP Discovery

  Note over Client,API: MCP tool discovery
  Client->>API: POST /mcp/discover
  API->>MCP: Discover tools
  MCP-->>API: MCPDiscoveryResponse
  API-->>Client: 200 MCPDiscoveryResponse
Loading
sequenceDiagram
  autonumber
  actor Client
  participant API as Studio API
  participant VS as Vector Store

  Note over Client,API: Vector store fetch for demos
  Client->>API: GET /demos/regulations/vector-store/{vector_store_id}
  API->>VS: Fetch by ID
  VS-->>API: Vector store object
  API-->>Client: 200 Object or 422 on validation
Loading

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~60 minutes

Possibly related PRs

Poem

A rabbit taps keys with a thump-thump cheer,
New routes, new plans, assistants appear.
MCP whispers, “discover me, friend,”
Vectors align, and PDFs send.
Tools hop in harmony, neatly aligned—
Ship it we shall, with carrots signed. 🥕✨

Pre-merge checks and finishing touches

❌ Failed checks (1 inconclusive)
Check name Status Explanation Resolution
Title Check ❓ Inconclusive The PR title "feat:@coderabbitai" is terse and appears to be an author/automation tag rather than a description of the changes. It does not summarize the substantial OpenAPI changes in this PR (new assistants CRUD, routes/plans, MCP discovery, vector-store endpoints, and many schema updates), so a reviewer cannot determine the primary purpose from the title alone. Please update the title to a concise, descriptive summary that highlights the main change and scope (for example: "feat(openapi): add assistants CRUD, routes & plans; add MCP discovery and vector-store endpoints"), keeping it short and reviewer-friendly.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Docstring Coverage ✅ Passed No functions found in the changes. Docstring coverage check skipped.
✨ Finishing touches
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch bot/update-openapi_202509180145

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions github-actions Bot enabled auto-merge September 18, 2025 01:46
@coderabbitai coderabbitai Bot changed the title feat:@coderabbitai feat:Update AI21 OpenAPI: new endpoints, schemas and response formats Sep 18, 2025

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
src/libs/AI21/openapi.yaml (1)

2068-2070: Fix duplicate operationId values in src/libs/AI21/openapi.yaml

Multiple endpoints share the same operationId (breaks codegen). Make each operationId unique.

  • v1_library_management — lines 91, 171, 198, 370, 397 (paths: /studio/v1/library/files [GET], /studio/v1/library/files/{file_id} [GET, PUT], /studio/v1/library/batches/{batch_id}/status [GET], /studio/v1/library/files/{file_id}/download [GET]).
  • v1_secret_storage — lines 280, 291, 314, 339 (paths: /studio/v1/secrets [GET, POST, DELETE], /studio/v1/secrets/{secret_id} [PATCH]).

Rename operationIds to unique, descriptive names (or consolidate intentionally identical ops) so codegen produces distinct clients/handlers.

🧹 Nitpick comments (11)
src/libs/AI21/openapi.yaml (11)

1018-1043: Add 404 and (optionally) UUID format for vector_store_id.

GET by ID should declare a 404. If IDs are UUIDs, add format hints.

Apply:

   parameters:
     - name: vector_store_id
       in: path
       required: true
       schema:
         title: Vector Store Id
-        type: string
+        type: string
+        format: uuid
   responses:
     '200':
       description: Successful Response
       content:
         application/json:
           schema:
             title: Response Get Vector Store Studio V1 Demos Regulations Vector Store  Vector Store Id  Get
             type: object
+    '404':
+      description: Not Found
+      content:
+        application/json:
+          schema:
+            $ref: '#/components/schemas/HTTPValidationError'

1520-1541: Support 201 Created + Location for resource creation.

Keep 200 for backward compatibility; add 201 with Location.

   responses:
     '200':
       description: Successful Response
       content:
         application/json:
           schema:
             $ref: '#/components/schemas/Assistant'
+    '201':
+      description: Created
+      headers:
+        Location:
+          description: URL of the created Assistant
+          schema: { type: string }
+      content:
+        application/json:
+          schema:
+            $ref: '#/components/schemas/Assistant'
     '422':

1590-1617: PATCH should include 404 Not Found.

Missing 404 complicates client error handling.

   responses:
     '200':
       description: Successful Response
       content:
         application/json:
           schema:
             $ref: '#/components/schemas/Assistant'
+    '404':
+      description: Assistant not found
+      content:
+        application/json:
+          schema:
+            $ref: '#/components/schemas/HTTPValidationError'
     '422':

1619-1647: Add 404 for Run Assistant.

Running a non-existent assistant should be modeled as 404.

   responses:
     '200':
       description: Successful Response
       content:
         application/json:
           schema:
             $ref: '#/components/schemas/MaestroRunResult'
+    '404':
+      description: Assistant not found
+      content:
+        application/json:
+          schema:
+            $ref: '#/components/schemas/HTTPValidationError'
     '422':

2278-2286: Unify budget typing with BudgetLevel enum.

These payloads use uppercase strings (default MEDIUM) while BudgetLevel is lowercased. Use the enum for consistent validation.

     budget:
-      title: Budget
-      type: string
-      description: 'Budget level: LOW, MEDIUM, or HIGH'
-      default: MEDIUM
+      allOf:
+        - $ref: '#/components/schemas/BudgetLevel'
+      description: 'Budget level'
+      default: medium
     vector_store_id:

2297-2304: Apply the same budget enum fix here.

Align with BudgetLevel and lowercase default.

     budget:
-      title: Budget
-      type: string
-      default: MEDIUM
+      allOf:
+        - $ref: '#/components/schemas/BudgetLevel'
+      default: medium
     vector_store_id:

2826-2870: Normalize CreateAssistantRequest: tools shape, tool_resources ref, and optimization enum.

  • tools currently model as array of “object with additionalProperties: AssistantTool”, which is awkward for codegen and inconsistent with typical enum arrays.
  • tool_resources should reuse AssistantToolResource (ModifyAssistantRequest already does).
  • optimization should use RunOptimization like ModifyAssistantRequest.
   properties:
     name:
       title: Name
       type: string
@@
-    optimization:
-      title: Optimization
-      type: string
+    optimization:
+      $ref: '#/components/schemas/RunOptimization'
@@
-    tools:
-      title: Tools
-      type: array
-      items:
-        type: object
-        additionalProperties:
-          $ref: '#/components/schemas/AssistantTool'
+    tools:
+      title: Tools
+      type: array
+      items:
+        $ref: '#/components/schemas/AssistantTool'
@@
-    tool_resources:
-      title: Tool Resources
-      type: object
+    tool_resources:
+      $ref: '#/components/schemas/AssistantToolResource'

Follow-up: consider aligning Assistant.tools similarly for consistency across read/write models.


3400-3484: HTTP tool schema seems underspecified (no HTTP method/body).

HTTPToolEndpoint lacks method; HTTPToolFunction doesn’t indicate where params map (query/path/body). Add minimal fields to avoid ambiguous execution.

 HTTPToolEndpoint:
   title: HTTPToolEndpoint
   required:
     - url
+    - method
   type: object
   properties:
     url:
       title: Url
       type: string
+    method:
+      title: Method
+      enum: [GET, POST, PUT, PATCH, DELETE]
+      type: string
     headers:
       title: Headers
       type: object
@@
 HTTPToolFunction:
   title: HTTPToolFunction
   required:
     - name
     - description
     - parameters
   type: object
   properties:
@@
     parameters:
       $ref: '#/components/schemas/HTTPToolFunctionParameters'
+    body_schema:
+      title: Body Schema
+      type: object
+      description: Optional JSON schema for request body

3894-3935: ModifyAssistantRequest tools shape inconsistent with Create fix.

If you adopt the CreateAssistantRequest tools change, mirror it here for symmetry.

-    tools:
-      title: Tools
-      type: array
-      items:
-        type: object
-        additionalProperties:
-          $ref: '#/components/schemas/AssistantTool'
+    tools:
+      title: Tools
+      type: array
+      items:
+        $ref: '#/components/schemas/AssistantTool'

4323-4330: Consolidate ToolResource vs AssistantToolResource.

Having both ToolResource and AssistantToolResource increases divergence risk. Prefer one schema (with plan_approval if needed) used across Assistant, Create/Modify, and Maestro runs.


1045-1061: Model application/pdf as binary.

Optional but clearer for generators.

       content:
         application/json:
           schema: { }
-        application/pdf: { }
+        application/pdf:
+          schema:
+            type: string
+            format: binary
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between fed30ee and 9c2e6e4.

⛔ Files ignored due to path filters (132)
  • src/libs/AI21/Generated/AI21..JsonSerializerContext.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Ai21Api.GetVectorStoreStudioV1DemosRegulationsVectorStoreVectorStoreIdGet.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Ai21Api.McpToolDiscoveryStudioV1McpDiscoverPost.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Ai21Api.UploadCheckComplianceStudioV1DemosRegulationsUploadCheckCompliancePost.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Ai21Api.V1ConversationalRag.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Ai21Api.V1CreateAssistant.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Ai21Api.V1MaestroRun.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Ai21Api.V1ModifyAssistant.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Ai21Api.V1RunAssistant.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.IAi21Api.GetVectorStoreStudioV1DemosRegulationsVectorStoreVectorStoreIdGet.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.IAi21Api.McpToolDiscoveryStudioV1McpDiscoverPost.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.IAi21Api.UploadCheckComplianceStudioV1DemosRegulationsUploadCheckCompliancePost.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.IAi21Api.V1ConversationalRag.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.IAi21Api.V1CreateAssistant.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.IAi21Api.V1MaestroRun.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.IAi21Api.V1ModifyAssistant.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.IAi21Api.V1RunAssistant.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.IJambaCompleteClient.V1ChatComplete.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.JambaCompleteClient.V1ChatComplete.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.JsonConverters.AssistantType.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.JsonConverters.AssistantTypeNullable.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.JsonConverters.BudgetLevel.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.JsonConverters.BudgetLevelNullable.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.JsonConverters.FileSearchToolResourceLabelsFilterMode.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.JsonConverters.FileSearchToolResourceLabelsFilterModeNullable.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.JsonConverters.FileSearchToolResourceResponseLanguage.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.JsonConverters.FileSearchToolResourceResponseLanguageNullable.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.JsonConverters.FileSearchToolResourceType.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.JsonConverters.FileSearchToolResourceTypeNullable.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.JsonConverters.HTTPToolFunctionParametersType.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.JsonConverters.HTTPToolFunctionParametersTypeNullable.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.JsonConverters.HTTPToolResourceType.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.JsonConverters.HTTPToolResourceTypeNullable.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.JsonConverters.LanguageStudioApiServerDataTypesChatToolDefinitionType.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.JsonConverters.LanguageStudioApiServerDataTypesChatToolDefinitionTypeNullable.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.JsonConverters.LanguageStudioApiServerDataTypesExecutionEngineToolDefinition.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.JsonConverters.LanguageStudioApiServerDataTypesExecutionEngineToolDefinitionDiscriminatorType.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.JsonConverters.LanguageStudioApiServerDataTypesExecutionEngineToolDefinitionDiscriminatorTypeNullable.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.JsonConverters.MCPToolResourceType.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.JsonConverters.MCPToolResourceTypeNullable.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.JsonConverters.RunAssistantRequestResponseLanguage.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.JsonConverters.RunAssistantRequestResponseLanguageNullable.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.JsonConverters.RunOptimization.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.JsonConverters.RunOptimizationNullable.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.JsonConverters.Visibility.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.JsonConverters.VisibilityNullable.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.JsonConverters.WebSearchToolResourceType.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.JsonConverters.WebSearchToolResourceTypeNullable.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.JsonSerializerContextTypes.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.Assistant.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.AssistantTool2.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.AssistantType.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.BodyUploadCheckComplianceStudioV1DemosRegulationsUploadCheckCompliancePost.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.BudgetLevel.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.ChatRequest.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.ConversationalRagConfig.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.ConversationalRagConfigResponseLanguage.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.ConversationalRagConfigRetrievalStrategy.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.CreateAssistantRequest.Json.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.CreateAssistantRequest.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.CreateAssistantRequestTool.Json.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.CreateAssistantRequestTool.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.CreateAssistantRequestToolResources.Json.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.CreateAssistantRequestToolResources.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.CreateMaestroRunsPayload.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.CreateMaestroRunsPayloadResponseLanguage.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.FileSearchToolResource.Json.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.FileSearchToolResource.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.FileSearchToolResourceLabelsFilterMode.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.FileSearchToolResourceResponseLanguage.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.FileSearchToolResourceType.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.GetVectorStoreStudioV1DemosRegulationsVectorStoreVectorStoreIdGetResponse.Json.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.GetVectorStoreStudioV1DemosRegulationsVectorStoreVectorStoreIdGetResponse.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.HTTPToolEndpoint.Json.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.HTTPToolEndpoint.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.HTTPToolEndpointHeaders.Json.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.HTTPToolEndpointHeaders.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.HTTPToolFunction.Json.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.HTTPToolFunction.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.HTTPToolFunctionParamProperties.Json.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.HTTPToolFunctionParamProperties.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.HTTPToolFunctionParameters.Json.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.HTTPToolFunctionParameters.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.HTTPToolFunctionParametersProperties.Json.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.HTTPToolFunctionParametersProperties.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.HTTPToolFunctionParametersType.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.HTTPToolResource.Json.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.HTTPToolResource.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.HTTPToolResourceType.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.LanguageStudioApiServerDataTypesAssistantRequirement.Json.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.LanguageStudioApiServerDataTypesAssistantRequirement.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.LanguageStudioApiServerDataTypesChatToolDefinition.Json.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.LanguageStudioApiServerDataTypesChatToolDefinition.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.LanguageStudioApiServerDataTypesChatToolDefinitionType.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.LanguageStudioApiServerDataTypesExecutionEngineRequirement.Json.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.LanguageStudioApiServerDataTypesExecutionEngineRequirement.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.LanguageStudioApiServerDataTypesExecutionEngineToolDefinition.Json.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.LanguageStudioApiServerDataTypesExecutionEngineToolDefinition.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.LanguageStudioApiServerDataTypesExecutionEngineToolDefinitionDiscriminator.Json.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.LanguageStudioApiServerDataTypesExecutionEngineToolDefinitionDiscriminator.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.LanguageStudioApiServerDataTypesExecutionEngineToolDefinitionDiscriminatorType.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.MCPDefinition.Json.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.MCPDefinition.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.MCPDefinitionHeaders.Json.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.MCPDefinitionHeaders.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.MCPDiscoveryResponse.Json.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.MCPDiscoveryResponse.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.MCPTool.Json.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.MCPTool.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.MCPToolInputSchema.Json.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.MCPToolInputSchema.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.MCPToolResource.Json.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.MCPToolResource.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.MCPToolResourceHeaders.Json.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.MCPToolResourceHeaders.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.MCPToolResourceType.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.ModifyAssistantRequest.Json.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.ModifyAssistantRequest.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.ModifyAssistantRequestTool.Json.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.ModifyAssistantRequestTool.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.RunAssistantRequest.Json.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.RunAssistantRequest.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.RunAssistantRequestOutputType.Json.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.RunAssistantRequestOutputType.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.RunAssistantRequestResponseLanguage.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.RunOptimization.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.ToolResource.Json.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.ToolResource.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.Visibility.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.WebSearchToolResource.Json.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.WebSearchToolResource.g.cs is excluded by !**/generated/**
  • src/libs/AI21/Generated/AI21.Models.WebSearchToolResourceType.g.cs is excluded by !**/generated/**
📒 Files selected for processing (1)
  • src/libs/AI21/openapi.yaml (23 hunks)
🔇 Additional comments (12)
src/libs/AI21/openapi.yaml (12)

2137-2153: Assistant fields additions LGTM.

Defaults match enums; no schema conflicts spotted.


2218-2222: Enum extension to include rag looks good.

No downstream breakage expected.


2340-2346: BudgetLevel enum LGTM.


2468-2468: Switch to chat ToolDefinition is correct.

This matches the discriminator-based function tool shape.


2719-2725: ConversationalRagConfig updates look consistent.

RetrievalStrategy via allOf, max_documents, and response_language=unset are coherent.

Please confirm server-side behavior treats 'unset' as “use workspace default”.

Also applies to: 2738-2752


2896-2906: Execution engine tool wiring LGTM.

Using execution_engine ToolDefinition and ToolResource is consistent.


3672-3743: MCP discovery models LGTM.

Shapes are minimal but sufficient; tool inputSchema is opaque, which is fine.


4093-4142: RunAssistantRequest LGTM.

Defaults and includes are sensible; enum values align with other schemas.


4447-4451: Visibility enum LGTM.


4453-4470: WebSearchToolResource LGTM.

Consider adding a query cap or per-domain limit later; not blocking.


4613-4672: New language_ Requirement/ToolDefinition models LGTM.*

Discriminator mapping and refs resolve cleanly.


1948-1969: MCP discovery endpoint LGTM.

Request/response wiring matches new schemas; nothing blocking.

@HavenDV HavenDV closed this Mar 10, 2026
auto-merge was automatically disabled March 10, 2026 22:19

Pull request was closed

@HavenDV HavenDV deleted the bot/update-openapi_202509180145 branch March 21, 2026 00:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant