@thinkai/tai-api-contract 2.154.0 → 2.157.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/dist/generated/openapi.d.ts +28 -34
- package/dist/generated/openapi.d.ts.map +1 -1
- package/openapi/openapi.yaml +93 -36
- package/package.json +1 -1
- package/src/generated/openapi.ts +28 -34
|
@@ -3773,7 +3773,7 @@ export interface paths {
|
|
|
3773
3773
|
};
|
|
3774
3774
|
/**
|
|
3775
3775
|
* Slack install URL for Message Center
|
|
3776
|
-
* @description Workspace admin only. Returns the Slack OAuth authorize URL. State is stored server-side and names this workspace and the signed-in admin. Editor or viewer is `403` with `code` `workspace_admin_required`. Missing Slack app settings are `503` with `code` `slack_not_configured`.
|
|
3776
|
+
* @description Workspace admin only. Returns the Slack OAuth authorize URL with `incoming-webhook` scope. State is stored server-side and names this workspace and the signed-in admin. Editor or viewer is `403` with `code` `workspace_admin_required`. Missing Slack app settings are `503` with `code` `slack_not_configured`.
|
|
3777
3777
|
*/
|
|
3778
3778
|
get: operations["getSlackInstallUrl"];
|
|
3779
3779
|
put?: never;
|
|
@@ -3793,7 +3793,7 @@ export interface paths {
|
|
|
3793
3793
|
};
|
|
3794
3794
|
/**
|
|
3795
3795
|
* Slack OAuth callback
|
|
3796
|
-
* @description Browser return from Slack. The provider redirect does not include the API bearer token. `state` was issued by `getSlackInstallUrl` to a signed-in admin and is single-use. The
|
|
3796
|
+
* @description Browser return from Slack. The provider redirect does not include the API bearer token. `state` was issued by `getSlackInstallUrl` to a signed-in admin and is single-use. Install requests `incoming-webhook` only. The encrypted incoming-webhook URL and the channel Slack returns are stored only when that user is still a workspace admin. Success redirects to `{spa}/workspace/preferences?chat=slack`. Failures redirect to the same page with `slack=error`. The webhook URL is never in the redirect.
|
|
3797
3797
|
*/
|
|
3798
3798
|
get: operations["getSlackOauthCallback"];
|
|
3799
3799
|
put?: never;
|
|
@@ -3813,14 +3813,14 @@ export interface paths {
|
|
|
3813
3813
|
};
|
|
3814
3814
|
/**
|
|
3815
3815
|
* Slack connection status
|
|
3816
|
-
* @description Any workspace member. `{ connected, channelName }`. `
|
|
3816
|
+
* @description Any workspace member. `{ connected, channelName }`. `connected` is true only when a decryptable install webhook is stored. `channelName` is the channel chosen on Slack's install screen (null when not connected). Secrets are never returned.
|
|
3817
3817
|
*/
|
|
3818
3818
|
get: operations["getSlackIntegration"];
|
|
3819
3819
|
put?: never;
|
|
3820
3820
|
post?: never;
|
|
3821
3821
|
/**
|
|
3822
3822
|
* Disconnect Slack
|
|
3823
|
-
* @description Workspace admin only. Removes the bot token and saved channel. Later Message Center delivery does not post to Slack.
|
|
3823
|
+
* @description Workspace admin only. Removes the install webhook, optional bot token, and saved channel. Later Message Center delivery does not post to Slack.
|
|
3824
3824
|
*/
|
|
3825
3825
|
delete: operations["deleteSlackIntegration"];
|
|
3826
3826
|
options?: never;
|
|
@@ -3837,8 +3837,8 @@ export interface paths {
|
|
|
3837
3837
|
};
|
|
3838
3838
|
get?: never;
|
|
3839
3839
|
/**
|
|
3840
|
-
*
|
|
3841
|
-
* @description Workspace admin only. Body `{ channelId }`. Slack
|
|
3840
|
+
* Change Slack channel (requires reinstall)
|
|
3841
|
+
* @description Workspace admin only. Body `{ channelId }`. The notification channel is chosen on Slack's install screen with the incoming webhook; this route does not rewrite channel metadata. When Slack is connected, the API returns `409` with `code` `slack_channel_reinstall_required` — reconnect via `getSlackInstallUrl` to pick a different channel. Malformed `channelId` is `400` `invalid_slack_channel`. Not connected is `409` `slack_not_connected`.
|
|
3842
3842
|
*/
|
|
3843
3843
|
put: operations["putSlackChannel"];
|
|
3844
3844
|
post?: never;
|
|
@@ -7489,6 +7489,8 @@ export interface components {
|
|
|
7489
7489
|
fixStatus: "open" | "pr-pending" | "fixed";
|
|
7490
7490
|
/** @description True when the platform does not yet have an auto-fix skill for this issue's dimension. The UI should render these items as disabled with a "Coming Soon" tooltip. */
|
|
7491
7491
|
comingSoon?: boolean;
|
|
7492
|
+
/** @description Short labels when the instruction file names two alternatives and does not pick one. Fix it stays disabled until the request includes one of these as patternChoice. */
|
|
7493
|
+
unresolvedChoices?: string[];
|
|
7492
7494
|
/**
|
|
7493
7495
|
* @description How automated fixing is supported for this criterion. `auto` — agent edits files directly; no human input needed. `decisions-first` — agent requires docs/ai-readiness-decisions.md to be filled first. `guidance` — admin-level action; agent creates an instructions doc PR.
|
|
7494
7496
|
* @enum {string}
|
|
@@ -7929,6 +7931,15 @@ export interface components {
|
|
|
7929
7931
|
/** @description Issues whose fix has been applied (fix_status = fixed). */
|
|
7930
7932
|
fixed: number;
|
|
7931
7933
|
};
|
|
7934
|
+
/** @description Distinct non-archived repos whose latest succeeded scan has an A1 gap (no instruction file) or a B5 gap (CI never runs tests). A gap whose matching issue is already fixed is excluded. Omitted when the server cannot see per-criterion status. */
|
|
7935
|
+
verificationGapCount?: number;
|
|
7936
|
+
/** @description Up to 12 repo and reason pairs for verificationGapCount. A repo with both gaps appears twice. Does not change averageOverallScore. */
|
|
7937
|
+
verificationGaps?: components["schemas"]["AgenticFoundationVerificationGapDto"][];
|
|
7938
|
+
};
|
|
7939
|
+
AgenticFoundationVerificationGapDto: {
|
|
7940
|
+
repoName: string;
|
|
7941
|
+
/** @enum {string} */
|
|
7942
|
+
reason: "no instruction file" | "CI never runs tests";
|
|
7932
7943
|
};
|
|
7933
7944
|
PageMetaDto: {
|
|
7934
7945
|
/** @description Total rows matching filters (full workspace, not just this page). */
|
|
@@ -8097,6 +8108,8 @@ export interface components {
|
|
|
8097
8108
|
* @description Workspace repository id that owns the issue
|
|
8098
8109
|
*/
|
|
8099
8110
|
repoId: string;
|
|
8111
|
+
/** @description Required when the issue has unresolvedChoices. Must be one of those labels. Stored on the fix row and stated in the worker prompt. */
|
|
8112
|
+
patternChoice?: string;
|
|
8100
8113
|
};
|
|
8101
8114
|
PhaseRoleDto: {
|
|
8102
8115
|
phase: string;
|
|
@@ -8340,12 +8353,13 @@ export interface components {
|
|
|
8340
8353
|
teams: components["schemas"]["NotificationChatChannelsDto"];
|
|
8341
8354
|
};
|
|
8342
8355
|
SlackInstallUrlDto: {
|
|
8343
|
-
/** @description Slack OAuth authorize URL
|
|
8356
|
+
/** @description Slack OAuth authorize URL (`incoming-webhook` scope). Secrets are not included. */
|
|
8344
8357
|
url: string;
|
|
8345
8358
|
};
|
|
8346
8359
|
SlackIntegrationStatusDto: {
|
|
8360
|
+
/** @description True only when a decryptable install webhook URL is stored for this workspace. */
|
|
8347
8361
|
connected: boolean;
|
|
8348
|
-
/** @description
|
|
8362
|
+
/** @description Channel name returned by Slack at install time. Null when not connected. */
|
|
8349
8363
|
channelName: string | null;
|
|
8350
8364
|
};
|
|
8351
8365
|
SlackChannelBodyDto: {
|
|
@@ -11097,6 +11111,7 @@ export type LinkedRolePendingDto = components['schemas']['LinkedRolePendingDto']
|
|
|
11097
11111
|
export type LinkedRoleAssessmentDto = components['schemas']['LinkedRoleAssessmentDto'];
|
|
11098
11112
|
export type RepoReadinessScoreDetailDto = components['schemas']['RepoReadinessScoreDetailDto'];
|
|
11099
11113
|
export type AgenticFoundationDashboardSummaryDto = components['schemas']['AgenticFoundationDashboardSummaryDto'];
|
|
11114
|
+
export type AgenticFoundationVerificationGapDto = components['schemas']['AgenticFoundationVerificationGapDto'];
|
|
11100
11115
|
export type PageMetaDto = components['schemas']['PageMetaDto'];
|
|
11101
11116
|
export type ReadinessEligibilityLimitsDto = components['schemas']['ReadinessEligibilityLimitsDto'];
|
|
11102
11117
|
export type ReadinessRepoListDto = components['schemas']['ReadinessRepoListDto'];
|
|
@@ -18981,7 +18996,7 @@ export interface operations {
|
|
|
18981
18996
|
"application/json": components["schemas"]["FixRequestDto"];
|
|
18982
18997
|
};
|
|
18983
18998
|
};
|
|
18984
|
-
/** @description Invalid body
|
|
18999
|
+
/** @description Invalid body, malformed `repoId`, or a missing/unknown `patternChoice` when the issue has `unresolvedChoices` (`pattern_choice_required`, `pattern_choice_invalid`). */
|
|
18985
19000
|
400: {
|
|
18986
19001
|
headers: {
|
|
18987
19002
|
[name: string]: unknown;
|
|
@@ -21382,7 +21397,7 @@ export interface operations {
|
|
|
21382
21397
|
};
|
|
21383
21398
|
};
|
|
21384
21399
|
responses: {
|
|
21385
|
-
/** @description
|
|
21400
|
+
/** @description Not returned. The channel is chosen on Slack's install screen; when connected the API responds with `409` `slack_channel_reinstall_required`. */
|
|
21386
21401
|
200: {
|
|
21387
21402
|
headers: {
|
|
21388
21403
|
[name: string]: unknown;
|
|
@@ -21391,7 +21406,7 @@ export interface operations {
|
|
|
21391
21406
|
"application/json": components["schemas"]["SlackIntegrationStatusDto"];
|
|
21392
21407
|
};
|
|
21393
21408
|
};
|
|
21394
|
-
/** @description channelId is missing
|
|
21409
|
+
/** @description channelId is missing or malformed */
|
|
21395
21410
|
400: {
|
|
21396
21411
|
headers: {
|
|
21397
21412
|
[name: string]: unknown;
|
|
@@ -21399,7 +21414,7 @@ export interface operations {
|
|
|
21399
21414
|
content: {
|
|
21400
21415
|
/**
|
|
21401
21416
|
* @example {
|
|
21402
|
-
* "error": "
|
|
21417
|
+
* "error": "channelId is required",
|
|
21403
21418
|
* "code": "invalid_slack_channel"
|
|
21404
21419
|
* }
|
|
21405
21420
|
*/
|
|
@@ -21431,33 +21446,12 @@ export interface operations {
|
|
|
21431
21446
|
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
21432
21447
|
};
|
|
21433
21448
|
};
|
|
21434
|
-
/** @description Slack is not connected */
|
|
21449
|
+
/** @description Slack is not connected (`slack_not_connected`), or the channel cannot be changed without a new install (`slack_channel_reinstall_required`). */
|
|
21435
21450
|
409: {
|
|
21436
21451
|
headers: {
|
|
21437
21452
|
[name: string]: unknown;
|
|
21438
21453
|
};
|
|
21439
21454
|
content: {
|
|
21440
|
-
/**
|
|
21441
|
-
* @example {
|
|
21442
|
-
* "error": "Slack is not connected",
|
|
21443
|
-
* "code": "slack_not_connected"
|
|
21444
|
-
* }
|
|
21445
|
-
*/
|
|
21446
|
-
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
21447
|
-
};
|
|
21448
|
-
};
|
|
21449
|
-
/** @description Slack rejected the lookup */
|
|
21450
|
-
502: {
|
|
21451
|
-
headers: {
|
|
21452
|
-
[name: string]: unknown;
|
|
21453
|
-
};
|
|
21454
|
-
content: {
|
|
21455
|
-
/**
|
|
21456
|
-
* @example {
|
|
21457
|
-
* "error": "Slack did not accept the channel",
|
|
21458
|
-
* "code": "slack_request_failed"
|
|
21459
|
-
* }
|
|
21460
|
-
*/
|
|
21461
21455
|
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
21462
21456
|
};
|
|
21463
21457
|
};
|