@thinkai/tai-api-contract 2.147.0 → 2.148.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.
package/openapi/openapi.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
openapi: 3.0.3
|
|
2
2
|
info:
|
|
3
3
|
title: ThinkAI API
|
|
4
|
-
version: 2.
|
|
4
|
+
version: 2.148.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}/...`.
|
|
@@ -7591,12 +7591,12 @@ paths:
|
|
|
7591
7591
|
/workspaces/{workspaceId}/readiness/issues/{issueId}/fix-guide:
|
|
7592
7592
|
get:
|
|
7593
7593
|
tags: [RepositoryReadiness]
|
|
7594
|
-
summary: Get
|
|
7594
|
+
summary: Get fix instructions for a readiness issue
|
|
7595
7595
|
description: >
|
|
7596
|
-
|
|
7597
|
-
|
|
7598
|
-
|
|
7599
|
-
|
|
7596
|
+
G1–G5 return the markdown guide written during the latest successful scan.
|
|
7597
|
+
Every other issue returns the remediation already stored for that issue
|
|
7598
|
+
(latest succeeded criterion row, otherwise the issue description).
|
|
7599
|
+
When that text is missing, returns `404` so the page can show the empty-guide state.
|
|
7600
7600
|
operationId: getReadinessIssueFixGuide
|
|
7601
7601
|
parameters:
|
|
7602
7602
|
- $ref: "#/components/parameters/WorkspaceId"
|
|
@@ -7609,16 +7609,11 @@ paths:
|
|
|
7609
7609
|
schema:
|
|
7610
7610
|
$ref: "#/components/schemas/ReadinessFixGuideDto"
|
|
7611
7611
|
"400":
|
|
7612
|
-
description:
|
|
7612
|
+
description: issueId is not a UUID
|
|
7613
7613
|
content:
|
|
7614
7614
|
application/json:
|
|
7615
7615
|
schema:
|
|
7616
7616
|
$ref: "#/components/schemas/ErrorMessageDto"
|
|
7617
|
-
examples:
|
|
7618
|
-
not_guidance:
|
|
7619
|
-
value:
|
|
7620
|
-
error: "Fix guide is only available for G1–G5 governance criteria"
|
|
7621
|
-
code: fix_guide_not_guidance
|
|
7622
7617
|
"401":
|
|
7623
7618
|
$ref: "#/components/responses/Unauthorized"
|
|
7624
7619
|
"403":
|
|
@@ -9209,15 +9204,42 @@ paths:
|
|
|
9209
9204
|
get:
|
|
9210
9205
|
tags: [Notifications]
|
|
9211
9206
|
summary: Paginated notifications
|
|
9207
|
+
description: >
|
|
9208
|
+
Inbox for the current user in this workspace. Applies the same notification-type
|
|
9209
|
+
preference filter and routine-title exclusion as the unread badge. `view` defaults to
|
|
9210
|
+
`all` so a client that omits it still receives success rows. Severity is the stored
|
|
9211
|
+
column and is not recomputed per request.
|
|
9212
9212
|
operationId: listNotifications
|
|
9213
9213
|
parameters:
|
|
9214
9214
|
- $ref: "#/components/parameters/WorkspaceId"
|
|
9215
9215
|
- name: limit
|
|
9216
9216
|
in: query
|
|
9217
|
-
schema:
|
|
9217
|
+
schema:
|
|
9218
|
+
type: integer
|
|
9219
|
+
minimum: 1
|
|
9220
|
+
maximum: 100
|
|
9221
|
+
default: 50
|
|
9218
9222
|
- name: offset
|
|
9219
9223
|
in: query
|
|
9220
|
-
schema:
|
|
9224
|
+
schema:
|
|
9225
|
+
type: integer
|
|
9226
|
+
minimum: 0
|
|
9227
|
+
default: 0
|
|
9228
|
+
- name: view
|
|
9229
|
+
in: query
|
|
9230
|
+
description: >
|
|
9231
|
+
`all` returns every severity. `needs_action` returns only `warning` and
|
|
9232
|
+
`destructive`. Omitted is `all`.
|
|
9233
|
+
schema:
|
|
9234
|
+
type: string
|
|
9235
|
+
enum: [all, needs_action]
|
|
9236
|
+
default: all
|
|
9237
|
+
- name: unread
|
|
9238
|
+
in: query
|
|
9239
|
+
description: >
|
|
9240
|
+
Omit to include read and unread rows. `true` is unread only. `false` is read only.
|
|
9241
|
+
schema:
|
|
9242
|
+
type: boolean
|
|
9221
9243
|
responses:
|
|
9222
9244
|
"200":
|
|
9223
9245
|
description: Page of notifications
|
|
@@ -9225,6 +9247,12 @@ paths:
|
|
|
9225
9247
|
application/json:
|
|
9226
9248
|
schema:
|
|
9227
9249
|
$ref: "#/components/schemas/NotificationListDto"
|
|
9250
|
+
"400":
|
|
9251
|
+
description: Invalid `view` or `unread`
|
|
9252
|
+
content:
|
|
9253
|
+
application/json:
|
|
9254
|
+
schema:
|
|
9255
|
+
$ref: "#/components/schemas/ErrorMessageDto"
|
|
9228
9256
|
"401":
|
|
9229
9257
|
$ref: "#/components/responses/Unauthorized"
|
|
9230
9258
|
|
|
@@ -9232,6 +9260,10 @@ paths:
|
|
|
9232
9260
|
get:
|
|
9233
9261
|
tags: [Notifications]
|
|
9234
9262
|
summary: Unread notification count
|
|
9263
|
+
description: >
|
|
9264
|
+
Unread rows for the current user in this workspace after the notification-type
|
|
9265
|
+
preference filter and the routine-title exclusion. `count` is not capped.
|
|
9266
|
+
`hasUnreadCritical` is true when at least one of those rows has severity `destructive`.
|
|
9235
9267
|
operationId: getNotificationUnreadCount
|
|
9236
9268
|
parameters:
|
|
9237
9269
|
- $ref: "#/components/parameters/WorkspaceId"
|
|
@@ -9457,7 +9489,7 @@ paths:
|
|
|
9457
9489
|
description: >
|
|
9458
9490
|
Returns the authenticated user's profile, workspace list, and preferences in one response.
|
|
9459
9491
|
When `workspaceId` is provided and resolves to a workspace the caller belongs to, also
|
|
9460
|
-
returns platform banner, unread notification count, journey progress, and connectors
|
|
9492
|
+
returns platform banner, unread notification count (`count` and `hasUnreadCritical`), journey progress, and connectors
|
|
9461
9493
|
snapshot. Invalid, unknown, or non-member `workspaceId` values do not produce 403/404 —
|
|
9462
9494
|
the response is still 200 with only `me`, `workspaces`, and `preferences` (workspace-scoped
|
|
9463
9495
|
fields omitted).
|
|
@@ -18235,7 +18267,7 @@ components:
|
|
|
18235
18267
|
rubricId:
|
|
18236
18268
|
type: string
|
|
18237
18269
|
maxLength: 16
|
|
18238
|
-
description: G1–G5
|
|
18270
|
+
description: Rubric criterion id (G1–G5 guides, or any other issue with stored remediation)
|
|
18239
18271
|
sourceRunId:
|
|
18240
18272
|
type: string
|
|
18241
18273
|
format: uuid
|
|
@@ -18506,7 +18538,7 @@ components:
|
|
|
18506
18538
|
|
|
18507
18539
|
NotificationDto:
|
|
18508
18540
|
type: object
|
|
18509
|
-
required: [id, type, title, message, read, createdAt]
|
|
18541
|
+
required: [id, type, title, message, read, createdAt, severity]
|
|
18510
18542
|
properties:
|
|
18511
18543
|
id:
|
|
18512
18544
|
type: string
|
|
@@ -18527,6 +18559,8 @@ components:
|
|
|
18527
18559
|
severity:
|
|
18528
18560
|
type: string
|
|
18529
18561
|
enum: [success, warning, destructive, muted, neutral]
|
|
18562
|
+
description: >
|
|
18563
|
+
Stored on the notification row at fan-out. `destructive` is the only critical severity.
|
|
18530
18564
|
triggeredBy:
|
|
18531
18565
|
type: string
|
|
18532
18566
|
nullable: true
|
|
@@ -18544,11 +18578,17 @@ components:
|
|
|
18544
18578
|
|
|
18545
18579
|
NotificationUnreadCountDto:
|
|
18546
18580
|
type: object
|
|
18547
|
-
required: [count]
|
|
18581
|
+
required: [count, hasUnreadCritical]
|
|
18548
18582
|
properties:
|
|
18549
18583
|
count:
|
|
18550
18584
|
type: integer
|
|
18551
18585
|
minimum: 0
|
|
18586
|
+
description: >
|
|
18587
|
+
Unread rows after the type-preference filter and routine-title exclusion. Not capped.
|
|
18588
|
+
hasUnreadCritical:
|
|
18589
|
+
type: boolean
|
|
18590
|
+
description: >
|
|
18591
|
+
True when at least one of those unread rows has severity `destructive`.
|
|
18552
18592
|
|
|
18553
18593
|
EffectiveTaskRowDto:
|
|
18554
18594
|
type: object
|
package/package.json
CHANGED
package/src/generated/openapi.ts
CHANGED
|
@@ -2872,8 +2872,8 @@ export interface paths {
|
|
|
2872
2872
|
cookie?: never;
|
|
2873
2873
|
};
|
|
2874
2874
|
/**
|
|
2875
|
-
* Get
|
|
2876
|
-
* @description
|
|
2875
|
+
* Get fix instructions for a readiness issue
|
|
2876
|
+
* @description G1–G5 return the markdown guide written during the latest successful scan. Every other issue returns the remediation already stored for that issue (latest succeeded criterion row, otherwise the issue description). When that text is missing, returns `404` so the page can show the empty-guide state.
|
|
2877
2877
|
*/
|
|
2878
2878
|
get: operations["getReadinessIssueFixGuide"];
|
|
2879
2879
|
put?: never;
|
|
@@ -3708,7 +3708,10 @@ export interface paths {
|
|
|
3708
3708
|
path?: never;
|
|
3709
3709
|
cookie?: never;
|
|
3710
3710
|
};
|
|
3711
|
-
/**
|
|
3711
|
+
/**
|
|
3712
|
+
* Paginated notifications
|
|
3713
|
+
* @description Inbox for the current user in this workspace. Applies the same notification-type preference filter and routine-title exclusion as the unread badge. `view` defaults to `all` so a client that omits it still receives success rows. Severity is the stored column and is not recomputed per request.
|
|
3714
|
+
*/
|
|
3712
3715
|
get: operations["listNotifications"];
|
|
3713
3716
|
put?: never;
|
|
3714
3717
|
post?: never;
|
|
@@ -3725,7 +3728,10 @@ export interface paths {
|
|
|
3725
3728
|
path?: never;
|
|
3726
3729
|
cookie?: never;
|
|
3727
3730
|
};
|
|
3728
|
-
/**
|
|
3731
|
+
/**
|
|
3732
|
+
* Unread notification count
|
|
3733
|
+
* @description Unread rows for the current user in this workspace after the notification-type preference filter and the routine-title exclusion. `count` is not capped. `hasUnreadCritical` is true when at least one of those rows has severity `destructive`.
|
|
3734
|
+
*/
|
|
3729
3735
|
get: operations["getNotificationUnreadCount"];
|
|
3730
3736
|
put?: never;
|
|
3731
3737
|
post?: never;
|
|
@@ -3852,7 +3858,7 @@ export interface paths {
|
|
|
3852
3858
|
};
|
|
3853
3859
|
/**
|
|
3854
3860
|
* App chrome bootstrap payload
|
|
3855
|
-
* @description Returns the authenticated user's profile, workspace list, and preferences in one response. When `workspaceId` is provided and resolves to a workspace the caller belongs to, also returns platform banner, unread notification count, journey progress, and connectors snapshot. Invalid, unknown, or non-member `workspaceId` values do not produce 403/404 — the response is still 200 with only `me`, `workspaces`, and `preferences` (workspace-scoped fields omitted).
|
|
3861
|
+
* @description Returns the authenticated user's profile, workspace list, and preferences in one response. When `workspaceId` is provided and resolves to a workspace the caller belongs to, also returns platform banner, unread notification count (`count` and `hasUnreadCritical`), journey progress, and connectors snapshot. Invalid, unknown, or non-member `workspaceId` values do not produce 403/404 — the response is still 200 with only `me`, `workspaces`, and `preferences` (workspace-scoped fields omitted).
|
|
3856
3862
|
*/
|
|
3857
3863
|
get: operations["getAppShell"];
|
|
3858
3864
|
put?: never;
|
|
@@ -7740,7 +7746,7 @@ export interface components {
|
|
|
7740
7746
|
issueId: string;
|
|
7741
7747
|
/** Format: uuid */
|
|
7742
7748
|
repoId: string;
|
|
7743
|
-
/** @description G1–G5
|
|
7749
|
+
/** @description Rubric criterion id (G1–G5 guides, or any other issue with stored remediation) */
|
|
7744
7750
|
rubricId: string;
|
|
7745
7751
|
/**
|
|
7746
7752
|
* Format: uuid
|
|
@@ -7880,8 +7886,11 @@ export interface components {
|
|
|
7880
7886
|
/** Format: date-time */
|
|
7881
7887
|
createdAt: string;
|
|
7882
7888
|
route?: string;
|
|
7883
|
-
/**
|
|
7884
|
-
|
|
7889
|
+
/**
|
|
7890
|
+
* @description Stored on the notification row at fan-out. `destructive` is the only critical severity.
|
|
7891
|
+
* @enum {string}
|
|
7892
|
+
*/
|
|
7893
|
+
severity: "success" | "warning" | "destructive" | "muted" | "neutral";
|
|
7885
7894
|
triggeredBy?: string | null;
|
|
7886
7895
|
};
|
|
7887
7896
|
NotificationListDto: {
|
|
@@ -7889,7 +7898,10 @@ export interface components {
|
|
|
7889
7898
|
total: number;
|
|
7890
7899
|
};
|
|
7891
7900
|
NotificationUnreadCountDto: {
|
|
7901
|
+
/** @description Unread rows after the type-preference filter and routine-title exclusion. Not capped. */
|
|
7892
7902
|
count: number;
|
|
7903
|
+
/** @description True when at least one of those unread rows has severity `destructive`. */
|
|
7904
|
+
hasUnreadCritical: boolean;
|
|
7893
7905
|
};
|
|
7894
7906
|
EffectiveTaskRowDto: {
|
|
7895
7907
|
id: string;
|
|
@@ -18653,7 +18665,7 @@ export interface operations {
|
|
|
18653
18665
|
"application/json": components["schemas"]["ReadinessFixGuideDto"];
|
|
18654
18666
|
};
|
|
18655
18667
|
};
|
|
18656
|
-
/** @description
|
|
18668
|
+
/** @description issueId is not a UUID */
|
|
18657
18669
|
400: {
|
|
18658
18670
|
headers: {
|
|
18659
18671
|
[name: string]: unknown;
|
|
@@ -20580,6 +20592,10 @@ export interface operations {
|
|
|
20580
20592
|
query?: {
|
|
20581
20593
|
limit?: number;
|
|
20582
20594
|
offset?: number;
|
|
20595
|
+
/** @description `all` returns every severity. `needs_action` returns only `warning` and `destructive`. Omitted is `all`. */
|
|
20596
|
+
view?: "all" | "needs_action";
|
|
20597
|
+
/** @description Omit to include read and unread rows. `true` is unread only. `false` is read only. */
|
|
20598
|
+
unread?: boolean;
|
|
20583
20599
|
};
|
|
20584
20600
|
header?: never;
|
|
20585
20601
|
path: {
|
|
@@ -20598,6 +20614,15 @@ export interface operations {
|
|
|
20598
20614
|
"application/json": components["schemas"]["NotificationListDto"];
|
|
20599
20615
|
};
|
|
20600
20616
|
};
|
|
20617
|
+
/** @description Invalid `view` or `unread` */
|
|
20618
|
+
400: {
|
|
20619
|
+
headers: {
|
|
20620
|
+
[name: string]: unknown;
|
|
20621
|
+
};
|
|
20622
|
+
content: {
|
|
20623
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
20624
|
+
};
|
|
20625
|
+
};
|
|
20601
20626
|
401: components["responses"]["Unauthorized"];
|
|
20602
20627
|
};
|
|
20603
20628
|
};
|