@thinkai/tai-api-contract 2.4.3 → 2.4.5
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 +116 -15
- package/dist/generated/openapi.d.ts.map +1 -1
- package/dist/index.d.ts +7 -3
- package/dist/index.d.ts.map +1 -1
- package/openapi/openapi.yaml +172 -16
- package/package.json +1 -1
- package/src/generated/openapi.ts +116 -15
- package/src/index.ts +8 -3
|
@@ -1031,7 +1031,10 @@ export interface paths {
|
|
|
1031
1031
|
};
|
|
1032
1032
|
get?: never;
|
|
1033
1033
|
put?: never;
|
|
1034
|
-
/**
|
|
1034
|
+
/**
|
|
1035
|
+
* Import org chart from Supabase storage path
|
|
1036
|
+
* @description Parse-only. Downloads the CSV at `storagePath` from the `org-charts` bucket and returns `persons` and `errors`. Does not persist to `spa_org_chart` or `org_chart`. The SPA derives teams client-side and saves the org structure via `POST /workspaces/{workspaceId}/org-chart`.
|
|
1037
|
+
*/
|
|
1035
1038
|
post: operations["postOrgChartImport"];
|
|
1036
1039
|
delete?: never;
|
|
1037
1040
|
options?: never;
|
|
@@ -1065,6 +1068,16 @@ export interface components {
|
|
|
1065
1068
|
/** @enum {string} */
|
|
1066
1069
|
role: "admin" | "editor" | "viewer";
|
|
1067
1070
|
};
|
|
1071
|
+
OrgChartNodeDto: {
|
|
1072
|
+
id: string;
|
|
1073
|
+
name: string;
|
|
1074
|
+
/** @enum {string} */
|
|
1075
|
+
type: "org" | "department" | "team" | "person";
|
|
1076
|
+
external_ids?: {
|
|
1077
|
+
[key: string]: string;
|
|
1078
|
+
};
|
|
1079
|
+
children?: components["schemas"]["OrgChartNodeDto"][];
|
|
1080
|
+
};
|
|
1068
1081
|
OrgChartTreeNodeDto: {
|
|
1069
1082
|
id: string;
|
|
1070
1083
|
name?: string;
|
|
@@ -1078,9 +1091,31 @@ export interface components {
|
|
|
1078
1091
|
};
|
|
1079
1092
|
children?: components["schemas"]["OrgChartTreeNodeDto"][];
|
|
1080
1093
|
};
|
|
1081
|
-
|
|
1094
|
+
ScoringOrgChartDto: {
|
|
1082
1095
|
root: components["schemas"]["OrgChartTreeNodeDto"];
|
|
1083
1096
|
};
|
|
1097
|
+
OrgChartDto: {
|
|
1098
|
+
root: components["schemas"]["OrgChartNodeDto"];
|
|
1099
|
+
};
|
|
1100
|
+
OrgChartPersonDto: {
|
|
1101
|
+
employeeId: string;
|
|
1102
|
+
name: string;
|
|
1103
|
+
email: string;
|
|
1104
|
+
title: string;
|
|
1105
|
+
department: string;
|
|
1106
|
+
team: string;
|
|
1107
|
+
managerId: string;
|
|
1108
|
+
location: string;
|
|
1109
|
+
};
|
|
1110
|
+
OrgChartImportResultDto: {
|
|
1111
|
+
persons: components["schemas"]["OrgChartPersonDto"][];
|
|
1112
|
+
errors: string[];
|
|
1113
|
+
};
|
|
1114
|
+
OrgChartSaveResultDto: {
|
|
1115
|
+
ok: boolean;
|
|
1116
|
+
/** Format: uuid */
|
|
1117
|
+
tenantId: string;
|
|
1118
|
+
};
|
|
1084
1119
|
TenantSourceEntryDto: {
|
|
1085
1120
|
type: string;
|
|
1086
1121
|
} & {
|
|
@@ -1101,7 +1136,7 @@ export interface components {
|
|
|
1101
1136
|
};
|
|
1102
1137
|
WorkspaceConfigDto: {
|
|
1103
1138
|
sources: components["schemas"]["TenantSourceEntryDto"][];
|
|
1104
|
-
orgChart?: components["schemas"]["
|
|
1139
|
+
orgChart?: components["schemas"]["ScoringOrgChartDto"] | null;
|
|
1105
1140
|
/** @enum {string|null} */
|
|
1106
1141
|
region?: "us" | "eu" | "me" | null;
|
|
1107
1142
|
};
|
|
@@ -1419,22 +1454,40 @@ export interface components {
|
|
|
1419
1454
|
/** Format: date-time */
|
|
1420
1455
|
finishedAt: string | null;
|
|
1421
1456
|
};
|
|
1457
|
+
ReadinessCriteriaSummaryDto: {
|
|
1458
|
+
total: number;
|
|
1459
|
+
met: number;
|
|
1460
|
+
partial: number;
|
|
1461
|
+
gap: number;
|
|
1462
|
+
na: number;
|
|
1463
|
+
blocked: number;
|
|
1464
|
+
};
|
|
1422
1465
|
ReadinessIssueDto: {
|
|
1423
1466
|
/** Format: uuid */
|
|
1424
1467
|
id: string;
|
|
1425
1468
|
dimensionId: components["schemas"]["ReadinessDimensionId"];
|
|
1426
1469
|
/** @enum {string} */
|
|
1427
1470
|
severity: "critical" | "high" | "medium" | "low";
|
|
1471
|
+
/** @description Human-readable rubric label (e.g. Agent instructions) */
|
|
1428
1472
|
title: string;
|
|
1473
|
+
/** @description Scan notes, remediation, and optional detection gist for tooltips */
|
|
1429
1474
|
description: string;
|
|
1475
|
+
/** @description Rubric criterion id (e.g. A1, B3) */
|
|
1476
|
+
rubricId?: string | null;
|
|
1430
1477
|
filePath?: string | null;
|
|
1431
1478
|
/** @enum {string} */
|
|
1432
1479
|
fixStatus: "open" | "pr-pending" | "fixed";
|
|
1433
1480
|
};
|
|
1434
1481
|
DimensionScoreDto: {
|
|
1435
1482
|
dimensionId: components["schemas"]["ReadinessDimensionId"];
|
|
1483
|
+
/** @description Dimension points earned (weighted rubric average × maxScore, rounded) */
|
|
1436
1484
|
score: number;
|
|
1485
|
+
/** @description Maximum points for this dimension pillar */
|
|
1437
1486
|
maxScore: number;
|
|
1487
|
+
/** @description score / maxScore as 0–100 when maxScore > 0 */
|
|
1488
|
+
scorePercent?: number;
|
|
1489
|
+
/** @description Per-criterion status counts from the latest successful scan */
|
|
1490
|
+
criteriaSummary?: components["schemas"]["ReadinessCriteriaSummaryDto"] | null;
|
|
1438
1491
|
issues: components["schemas"]["ReadinessIssueDto"][];
|
|
1439
1492
|
};
|
|
1440
1493
|
RepoReadinessScoreDto: {
|
|
@@ -1475,6 +1528,7 @@ export interface components {
|
|
|
1475
1528
|
severity: "critical" | "high" | "medium" | "low";
|
|
1476
1529
|
title: string;
|
|
1477
1530
|
description: string;
|
|
1531
|
+
rubricId?: string | null;
|
|
1478
1532
|
filePath: string | null;
|
|
1479
1533
|
/** @enum {string} */
|
|
1480
1534
|
fixStatus: "open" | "pr-pending" | "fixed";
|
|
@@ -1701,8 +1755,13 @@ export type TeamMemberDto = components['schemas']['TeamMemberDto'];
|
|
|
1701
1755
|
export type TeamMemberListDto = components['schemas']['TeamMemberListDto'];
|
|
1702
1756
|
export type InviteTeamMemberBodyDto = components['schemas']['InviteTeamMemberBodyDto'];
|
|
1703
1757
|
export type UpdateTeamMemberRoleBodyDto = components['schemas']['UpdateTeamMemberRoleBodyDto'];
|
|
1758
|
+
export type OrgChartNodeDto = components['schemas']['OrgChartNodeDto'];
|
|
1704
1759
|
export type OrgChartTreeNodeDto = components['schemas']['OrgChartTreeNodeDto'];
|
|
1760
|
+
export type ScoringOrgChartDto = components['schemas']['ScoringOrgChartDto'];
|
|
1705
1761
|
export type OrgChartDto = components['schemas']['OrgChartDto'];
|
|
1762
|
+
export type OrgChartPersonDto = components['schemas']['OrgChartPersonDto'];
|
|
1763
|
+
export type OrgChartImportResultDto = components['schemas']['OrgChartImportResultDto'];
|
|
1764
|
+
export type OrgChartSaveResultDto = components['schemas']['OrgChartSaveResultDto'];
|
|
1706
1765
|
export type TenantSourceEntryDto = components['schemas']['TenantSourceEntryDto'];
|
|
1707
1766
|
export type CursorSourceDto = components['schemas']['CursorSourceDto'];
|
|
1708
1767
|
export type WorkspaceConfigDto = components['schemas']['WorkspaceConfigDto'];
|
|
@@ -1746,6 +1805,7 @@ export type ReadinessAnalyzeResponseDto = components['schemas']['ReadinessAnalyz
|
|
|
1746
1805
|
export type ReadinessRunStatusDto = components['schemas']['ReadinessRunStatusDto'];
|
|
1747
1806
|
export type ReadinessRepoAnalysisStatusDto = components['schemas']['ReadinessRepoAnalysisStatusDto'];
|
|
1748
1807
|
export type ReadinessRunSummaryDto = components['schemas']['ReadinessRunSummaryDto'];
|
|
1808
|
+
export type ReadinessCriteriaSummaryDto = components['schemas']['ReadinessCriteriaSummaryDto'];
|
|
1749
1809
|
export type ReadinessIssueDto = components['schemas']['ReadinessIssueDto'];
|
|
1750
1810
|
export type DimensionScoreDto = components['schemas']['DimensionScoreDto'];
|
|
1751
1811
|
export type RepoReadinessScoreDto = components['schemas']['RepoReadinessScoreDto'];
|
|
@@ -2014,9 +2074,7 @@ export interface operations {
|
|
|
2014
2074
|
};
|
|
2015
2075
|
getTenantOrgChart: {
|
|
2016
2076
|
parameters: {
|
|
2017
|
-
query?:
|
|
2018
|
-
withScores?: boolean;
|
|
2019
|
-
};
|
|
2077
|
+
query?: never;
|
|
2020
2078
|
header?: never;
|
|
2021
2079
|
path: {
|
|
2022
2080
|
workspaceId: components["parameters"]["WorkspaceId"];
|
|
@@ -2025,7 +2083,7 @@ export interface operations {
|
|
|
2025
2083
|
};
|
|
2026
2084
|
requestBody?: never;
|
|
2027
2085
|
responses: {
|
|
2028
|
-
/** @description
|
|
2086
|
+
/** @description SPA org structure chart (`spa_org_chart`; per-node scores not included — use GET /config for scoring tree) */
|
|
2029
2087
|
200: {
|
|
2030
2088
|
headers: {
|
|
2031
2089
|
[name: string]: unknown;
|
|
@@ -2035,6 +2093,7 @@ export interface operations {
|
|
|
2035
2093
|
};
|
|
2036
2094
|
};
|
|
2037
2095
|
401: components["responses"]["Unauthorized"];
|
|
2096
|
+
403: components["responses"]["Forbidden"];
|
|
2038
2097
|
/** @description Workspace not found */
|
|
2039
2098
|
404: {
|
|
2040
2099
|
headers: {
|
|
@@ -2065,13 +2124,20 @@ export interface operations {
|
|
|
2065
2124
|
[name: string]: unknown;
|
|
2066
2125
|
};
|
|
2067
2126
|
content: {
|
|
2068
|
-
"application/json":
|
|
2069
|
-
|
|
2070
|
-
|
|
2071
|
-
|
|
2127
|
+
"application/json": components["schemas"]["OrgChartSaveResultDto"];
|
|
2128
|
+
};
|
|
2129
|
+
};
|
|
2130
|
+
/** @description Invalid request body or chart limits exceeded */
|
|
2131
|
+
400: {
|
|
2132
|
+
headers: {
|
|
2133
|
+
[name: string]: unknown;
|
|
2134
|
+
};
|
|
2135
|
+
content: {
|
|
2136
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
2072
2137
|
};
|
|
2073
2138
|
};
|
|
2074
2139
|
401: components["responses"]["Unauthorized"];
|
|
2140
|
+
403: components["responses"]["Forbidden"];
|
|
2075
2141
|
};
|
|
2076
2142
|
};
|
|
2077
2143
|
getWorkspaceConfig: {
|
|
@@ -4034,18 +4100,53 @@ export interface operations {
|
|
|
4034
4100
|
};
|
|
4035
4101
|
};
|
|
4036
4102
|
responses: {
|
|
4037
|
-
/** @description Parsed persons
|
|
4103
|
+
/** @description Parsed persons from uploaded CSV (not persisted server-side) */
|
|
4038
4104
|
200: {
|
|
4039
4105
|
headers: {
|
|
4040
4106
|
[name: string]: unknown;
|
|
4041
4107
|
};
|
|
4042
4108
|
content: {
|
|
4043
|
-
"application/json":
|
|
4044
|
-
|
|
4045
|
-
|
|
4109
|
+
"application/json": components["schemas"]["OrgChartImportResultDto"];
|
|
4110
|
+
};
|
|
4111
|
+
};
|
|
4112
|
+
/** @description Invalid body or storage path */
|
|
4113
|
+
400: {
|
|
4114
|
+
headers: {
|
|
4115
|
+
[name: string]: unknown;
|
|
4116
|
+
};
|
|
4117
|
+
content: {
|
|
4118
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
4046
4119
|
};
|
|
4047
4120
|
};
|
|
4048
4121
|
401: components["responses"]["Unauthorized"];
|
|
4122
|
+
403: components["responses"]["Forbidden"];
|
|
4123
|
+
/** @description Storage object not found */
|
|
4124
|
+
404: {
|
|
4125
|
+
headers: {
|
|
4126
|
+
[name: string]: unknown;
|
|
4127
|
+
};
|
|
4128
|
+
content: {
|
|
4129
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
4130
|
+
};
|
|
4131
|
+
};
|
|
4132
|
+
/** @description Failed to download file from storage */
|
|
4133
|
+
502: {
|
|
4134
|
+
headers: {
|
|
4135
|
+
[name: string]: unknown;
|
|
4136
|
+
};
|
|
4137
|
+
content: {
|
|
4138
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
4139
|
+
};
|
|
4140
|
+
};
|
|
4141
|
+
/** @description Storage import not configured or service unavailable */
|
|
4142
|
+
503: {
|
|
4143
|
+
headers: {
|
|
4144
|
+
[name: string]: unknown;
|
|
4145
|
+
};
|
|
4146
|
+
content: {
|
|
4147
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
4148
|
+
};
|
|
4149
|
+
};
|
|
4049
4150
|
};
|
|
4050
4151
|
};
|
|
4051
4152
|
}
|