@thinkai/tai-api-contract 2.181.0 → 2.182.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,7 @@
1
1
  openapi: 3.0.3
2
2
  info:
3
3
  title: ThinkAI API
4
- version: 2.181.0
4
+ version: 2.182.0
5
5
  description: >
6
6
  Contract surface for the AI Driven SDLC backend used by ThinkAI.
7
7
  Workspace-scoped routes use `/workspaces/{workspaceId}/...`.
@@ -9154,7 +9154,10 @@ paths:
9154
9154
  description: >
9155
9155
  Any workspace member when chat is ready. Validates size/type against the active
9156
9156
  provider profile (`attachmentLimits` from readiness). Returns metadata; pass `id`
9157
- as `attachmentIds` on the next POST message. Max 5 MB per file.
9157
+ as `attachmentIds` on the next POST message. Max 5 MB per file (JSON bodyLimit is
9158
+ raised for `contentBase64`). When unbound uploads already sit at the per-message
9159
+ file cap (e.g. after an aborted send), the oldest unbound rows are pruned so a new
9160
+ attach can proceed.
9158
9161
  operationId: postCodeChatAttachment
9159
9162
  x-test-coverage-skip: thin HTTP over validateAttachment + store insert
9160
9163
  parameters:
@@ -9173,7 +9176,11 @@ paths:
9173
9176
  schema:
9174
9177
  $ref: "#/components/schemas/CodeChatAttachmentMetaDto"
9175
9178
  "400":
9176
- description: Validation failed (size, type, totals)
9179
+ description: >
9180
+ Validation failed after decode (size, type, totals). Stable codes include
9181
+ `attachment_too_large`, `attachment_total_too_large`, `attachment_too_many`,
9182
+ `attachment_type_unsupported`, `attachment_pdf_too_long`, `attachment_failed`,
9183
+ `invalid_input`.
9177
9184
  content:
9178
9185
  application/json:
9179
9186
  schema:
@@ -9192,6 +9199,19 @@ paths:
9192
9199
  application/json:
9193
9200
  schema:
9194
9201
  $ref: "#/components/schemas/ErrorMessageDto"
9202
+ "413":
9203
+ description: >
9204
+ Fastify rejected the JSON body before the handler (`request_body_too_large`).
9205
+ Typical when `contentBase64` exceeds the route bodyLimit (aligned with the
9206
+ 5 MB per-file cap after base64 expansion). Decoded-size overruns still return
9207
+ `400` `attachment_too_large`.
9208
+ content:
9209
+ application/json:
9210
+ schema:
9211
+ $ref: "#/components/schemas/ErrorMessageDto"
9212
+ example:
9213
+ error: Request body is too large.
9214
+ code: request_body_too_large
9195
9215
  "422":
9196
9216
  description: Could not process the file
9197
9217
  content:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@thinkai/tai-api-contract",
3
- "version": "2.181.0",
3
+ "version": "2.182.0",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -21,7 +21,7 @@
21
21
  "devDependencies": {
22
22
  "@stoplight/spectral-cli": "^6.17.0",
23
23
  "@types/node": "^26.6.5",
24
- "jsonpath-plus": "^11.1.1",
24
+ "jsonpath-plus": "^11.2.1",
25
25
  "openapi-typescript": "^7.13.0",
26
26
  "typescript": "~6.0.3"
27
27
  },
@@ -3343,7 +3343,7 @@ export interface paths {
3343
3343
  put?: never;
3344
3344
  /**
3345
3345
  * Upload a Conversations attachment
3346
- * @description Any workspace member when chat is ready. Validates size/type against the active provider profile (`attachmentLimits` from readiness). Returns metadata; pass `id` as `attachmentIds` on the next POST message. Max 5 MB per file.
3346
+ * @description Any workspace member when chat is ready. Validates size/type against the active provider profile (`attachmentLimits` from readiness). Returns metadata; pass `id` as `attachmentIds` on the next POST message. Max 5 MB per file (JSON bodyLimit is raised for `contentBase64`). When unbound uploads already sit at the per-message file cap (e.g. after an aborted send), the oldest unbound rows are pruned so a new attach can proceed.
3347
3347
  */
3348
3348
  post: operations["postCodeChatAttachment"];
3349
3349
  delete?: never;
@@ -21580,7 +21580,7 @@ export interface operations {
21580
21580
  "application/json": components["schemas"]["CodeChatAttachmentMetaDto"];
21581
21581
  };
21582
21582
  };
21583
- /** @description Validation failed (size, type, totals) */
21583
+ /** @description Validation failed after decode (size, type, totals). Stable codes include `attachment_too_large`, `attachment_total_too_large`, `attachment_too_many`, `attachment_type_unsupported`, `attachment_pdf_too_long`, `attachment_failed`, `invalid_input`. */
21584
21584
  400: {
21585
21585
  headers: {
21586
21586
  [name: string]: unknown;
@@ -21608,6 +21608,21 @@ export interface operations {
21608
21608
  "application/json": components["schemas"]["ErrorMessageDto"];
21609
21609
  };
21610
21610
  };
21611
+ /** @description Fastify rejected the JSON body before the handler (`request_body_too_large`). Typical when `contentBase64` exceeds the route bodyLimit (aligned with the 5 MB per-file cap after base64 expansion). Decoded-size overruns still return `400` `attachment_too_large`. */
21612
+ 413: {
21613
+ headers: {
21614
+ [name: string]: unknown;
21615
+ };
21616
+ content: {
21617
+ /**
21618
+ * @example {
21619
+ * "error": "Request body is too large.",
21620
+ * "code": "request_body_too_large"
21621
+ * }
21622
+ */
21623
+ "application/json": components["schemas"]["ErrorMessageDto"];
21624
+ };
21625
+ };
21611
21626
  /** @description Could not process the file */
21612
21627
  422: {
21613
21628
  headers: {