@thinkai/tai-api-contract 2.96.0 → 2.98.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 +159 -1
- package/dist/generated/openapi.d.ts.map +1 -1
- package/dist/index.d.ts +8 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/openapi/openapi.yaml +198 -2
- package/package.json +1 -1
- package/src/generated/openapi.ts +159 -1
- package/src/index.ts +8 -0
|
@@ -560,6 +560,27 @@ export interface paths {
|
|
|
560
560
|
patch?: never;
|
|
561
561
|
trace?: never;
|
|
562
562
|
};
|
|
563
|
+
"/workspaces/{workspaceId}/delivery-topology": {
|
|
564
|
+
parameters: {
|
|
565
|
+
query?: never;
|
|
566
|
+
header?: never;
|
|
567
|
+
path?: never;
|
|
568
|
+
cookie?: never;
|
|
569
|
+
};
|
|
570
|
+
get?: never;
|
|
571
|
+
/**
|
|
572
|
+
* Set workspace delivery topology
|
|
573
|
+
* @description Persist the workspace delivery topology used by federated readiness assessment: which connected repos hold terraform / gitops / ci_templates / api_contracts artifacts, plus optional per-service overrides. Role and override `providerSlug` values must reference repos connected to this workspace, otherwise the request is rejected with `400 invalid_delivery_topology`. Send `null` (or `{ "deliveryTopology": null }`) to clear the topology.
|
|
574
|
+
* Requires editor or admin workspace role.
|
|
575
|
+
*/
|
|
576
|
+
put: operations["putWorkspaceDeliveryTopology"];
|
|
577
|
+
post?: never;
|
|
578
|
+
delete?: never;
|
|
579
|
+
options?: never;
|
|
580
|
+
head?: never;
|
|
581
|
+
patch?: never;
|
|
582
|
+
trace?: never;
|
|
583
|
+
};
|
|
563
584
|
"/workspaces/{workspaceId}/sources": {
|
|
564
585
|
parameters: {
|
|
565
586
|
query?: never;
|
|
@@ -4181,6 +4202,52 @@ export interface components {
|
|
|
4181
4202
|
codeIntelligenceClaudeModel?: string | null;
|
|
4182
4203
|
/** @description True when a dedicated `code_intelligence` source has a stored executionToken. */
|
|
4183
4204
|
hasCodeIntelligenceExecutionToken?: boolean;
|
|
4205
|
+
/** @description Federated-readiness delivery topology: which connected repos hold terraform / gitops / ci_templates / api_contracts truth for this workspace. Null when not configured. Change via `PUT /workspaces/{workspaceId}/delivery-topology`. */
|
|
4206
|
+
deliveryTopology?: components["schemas"]["DeliveryTopologyDto"] | null;
|
|
4207
|
+
};
|
|
4208
|
+
DeliveryRoleConfigDto: {
|
|
4209
|
+
/** @description Connected workspace repo (`owner/repo`) that holds this role's artifacts. */
|
|
4210
|
+
providerSlug: string;
|
|
4211
|
+
/**
|
|
4212
|
+
* @description IaC engine hint (terraform role only).
|
|
4213
|
+
* @enum {string}
|
|
4214
|
+
*/
|
|
4215
|
+
engine?: "terraform" | "pulumi" | "cdk";
|
|
4216
|
+
/**
|
|
4217
|
+
* @description CI templates flavor (ci_templates role only).
|
|
4218
|
+
* @enum {string}
|
|
4219
|
+
*/
|
|
4220
|
+
type?: "reusable_workflows";
|
|
4221
|
+
/** @description Set true for extension roles outside the known role keys. */
|
|
4222
|
+
custom?: boolean;
|
|
4223
|
+
};
|
|
4224
|
+
RepoDeliveryOverrideDto: {
|
|
4225
|
+
/** @enum {string} */
|
|
4226
|
+
deliveryModel?: "auto" | "k8s_microservices" | "mobile_store" | "web_hosting" | "data_pipelines" | "monorepo" | "library" | "hybrid";
|
|
4227
|
+
/** @description Per-service role → providerSlug overrides (merged over workspace roles). */
|
|
4228
|
+
roles?: {
|
|
4229
|
+
[key: string]: string;
|
|
4230
|
+
};
|
|
4231
|
+
/** @description Path prefix inside platform repos where this service's artifacts live. */
|
|
4232
|
+
targetPathHint?: string;
|
|
4233
|
+
};
|
|
4234
|
+
DeliveryTopologyDto: {
|
|
4235
|
+
/** @enum {string} */
|
|
4236
|
+
deliveryModel: "auto" | "k8s_microservices" | "mobile_store" | "web_hosting" | "data_pipelines" | "monorepo" | "library" | "hybrid";
|
|
4237
|
+
/** @enum {string} */
|
|
4238
|
+
ciProvider: "github_actions" | "jenkins" | "gitlab" | "bitbucket" | "hybrid" | "external_documented";
|
|
4239
|
+
/** @description True when infra/delivery artifacts live outside service repos. */
|
|
4240
|
+
splitInfra: boolean;
|
|
4241
|
+
/** @description Role → platform repo mapping. Known keys: terraform, gitops, ci_templates, jenkins_shared, mobile_release, hosting, data_platform, api_contracts, sonar_config. */
|
|
4242
|
+
roles: {
|
|
4243
|
+
[key: string]: components["schemas"]["DeliveryRoleConfigDto"];
|
|
4244
|
+
};
|
|
4245
|
+
/** @description Optional path template inside platform repos, e.g. `services/{repo_name}/` (`{repo_name}` and `{provider_slug}` placeholders supported). */
|
|
4246
|
+
servicePathConvention?: string | null;
|
|
4247
|
+
/** @description Per-service-repo overrides keyed by provider slug. */
|
|
4248
|
+
repoOverrides: {
|
|
4249
|
+
[key: string]: components["schemas"]["RepoDeliveryOverrideDto"];
|
|
4250
|
+
};
|
|
4184
4251
|
};
|
|
4185
4252
|
TestConnectionResponseDto: {
|
|
4186
4253
|
success: boolean;
|
|
@@ -4574,13 +4641,17 @@ export interface components {
|
|
|
4574
4641
|
failures: string[];
|
|
4575
4642
|
/** @description Failed GitHub Actions workflow runs for this UTC day when CI ingest is enabled. */
|
|
4576
4643
|
failureItems?: components["schemas"]["ProductivityInsightsContributorFailureItemDto"][];
|
|
4577
|
-
/** @description Optional PR rows
|
|
4644
|
+
/** @description Optional merged PR rows for day drilldown (label, optional GitHub URL, optional ship-weight score / pending flag). Includes label-only rows so unscored or URL-less merges still surface ship-weight state. */
|
|
4578
4645
|
mergedPrItems?: components["schemas"]["ProductivityInsightsContributorMergedPrItemDto"][];
|
|
4579
4646
|
};
|
|
4580
4647
|
ProductivityInsightsContributorMergedPrItemDto: {
|
|
4581
4648
|
label: string;
|
|
4582
4649
|
/** Format: uri */
|
|
4583
4650
|
url?: string;
|
|
4651
|
+
/** @description v13 ship-weight score for this PR when scored (typically 0–10). */
|
|
4652
|
+
shipWeight?: number;
|
|
4653
|
+
/** @description True when this GitHub PR is still awaiting ship-weight scoring. */
|
|
4654
|
+
shipWeightPending?: boolean;
|
|
4584
4655
|
};
|
|
4585
4656
|
ProductivityInsightsContributorFailureItemDto: {
|
|
4586
4657
|
label: string;
|
|
@@ -6368,6 +6439,33 @@ export interface components {
|
|
|
6368
6439
|
}[] | null;
|
|
6369
6440
|
/** @description GitHub-reported repository size in KB (includes git history), refreshed on each readiness scan (#729). Compare against `eligibilityLimits.maxRepoSizeKb` on the list response to show per-repo "size / limit". When the size exceeds the limit the latest scan is recorded as `partial_failed` with `lastRunErrorCode = exceeded_repo_size_limit` and the repo is marked `ineligible`. Null until a scan has populated it. */
|
|
6370
6441
|
sizeKb?: number | null;
|
|
6442
|
+
/**
|
|
6443
|
+
* @description Federated readiness: set when the repo was classified as a platform repository and scored with the reduced platform rubric profile. Null for service repos. The UI shows a "Platform repository" badge instead of comparing its score against service repos.
|
|
6444
|
+
* @enum {string|null}
|
|
6445
|
+
*/
|
|
6446
|
+
platformArchetype?: "terraform_platform" | "gitops_platform" | "ci_templates" | "api_contracts_platform" | null;
|
|
6447
|
+
/** @description Federated readiness completeness for service repos: which linked platform roles (terraform/gitops/ci_templates/api_contracts, from the workspace delivery topology) are still missing scan evidence. Absent/null when no topology is configured or every declared role has fresh metadata (`complete: true`). */
|
|
6448
|
+
linkedRoleAssessment?: components["schemas"]["LinkedRoleAssessmentDto"] | null;
|
|
6449
|
+
};
|
|
6450
|
+
LinkedRolePendingDto: {
|
|
6451
|
+
/** @description Topology role key, e.g. terraform | gitops | ci_templates | api_contracts. */
|
|
6452
|
+
role: string;
|
|
6453
|
+
/** @description Platform repo (`owner/repo`) that must be scanned to satisfy this role. */
|
|
6454
|
+
providerSlug: string;
|
|
6455
|
+
/**
|
|
6456
|
+
* @description `no_scan` — the platform repo has no successful readiness run yet; `no_metadata_emitted` — it was scanned but emitted no linkage for this service (wrong archetype or scan predates federated readiness); `stale` — metadata is older than the hard TTL (30 days) and must be refreshed by re-scanning the platform repo.
|
|
6457
|
+
* @enum {string}
|
|
6458
|
+
*/
|
|
6459
|
+
reason: "no_scan" | "no_metadata_emitted" | "stale";
|
|
6460
|
+
/**
|
|
6461
|
+
* Format: date-time
|
|
6462
|
+
* @description Latest succeeded scan of the platform repo, when one exists.
|
|
6463
|
+
*/
|
|
6464
|
+
lastRunAt?: string | null;
|
|
6465
|
+
};
|
|
6466
|
+
LinkedRoleAssessmentDto: {
|
|
6467
|
+
complete: boolean;
|
|
6468
|
+
pending: components["schemas"]["LinkedRolePendingDto"][];
|
|
6371
6469
|
};
|
|
6372
6470
|
/** @description Single-repo detail response. Identical to RepoReadinessScoreDto except dimensions use DimensionScoreDetailDto (criteriaDetails required per dimension). */
|
|
6373
6471
|
RepoReadinessScoreDetailDto: {
|
|
@@ -6419,6 +6517,13 @@ export interface components {
|
|
|
6419
6517
|
}[] | null;
|
|
6420
6518
|
/** @description GitHub-reported repository size in KB, refreshed on each scan. See RepoReadinessScoreDto.sizeKb. */
|
|
6421
6519
|
sizeKb?: number | null;
|
|
6520
|
+
/**
|
|
6521
|
+
* @description See RepoReadinessScoreDto.platformArchetype.
|
|
6522
|
+
* @enum {string|null}
|
|
6523
|
+
*/
|
|
6524
|
+
platformArchetype?: "terraform_platform" | "gitops_platform" | "ci_templates" | "api_contracts_platform" | null;
|
|
6525
|
+
/** @description See RepoReadinessScoreDto.linkedRoleAssessment. */
|
|
6526
|
+
linkedRoleAssessment?: components["schemas"]["LinkedRoleAssessmentDto"] | null;
|
|
6422
6527
|
};
|
|
6423
6528
|
AgenticFoundationDashboardSummaryDto: {
|
|
6424
6529
|
repoCount: number;
|
|
@@ -7425,6 +7530,8 @@ export interface components {
|
|
|
7425
7530
|
/** Format: date */
|
|
7426
7531
|
weekStartIso: string;
|
|
7427
7532
|
mergedPrs: number;
|
|
7533
|
+
/** @description Sum of ship-weight scores for merged PRs in this week bucket. */
|
|
7534
|
+
shipWeightSum?: number;
|
|
7428
7535
|
ciFailRatePct: number;
|
|
7429
7536
|
/** @description False when CI metrics were not available for this week bucket. */
|
|
7430
7537
|
hasCiMetrics?: boolean;
|
|
@@ -7433,6 +7540,8 @@ export interface components {
|
|
|
7433
7540
|
weeks: components["schemas"]["InsightsVelocityQualityWeek"][];
|
|
7434
7541
|
targetFailRatePct: number;
|
|
7435
7542
|
volumeGrowthPct: number;
|
|
7543
|
+
/** @description Ship-weight volume growth vs the prior equal-length window. */
|
|
7544
|
+
shipWeightVolumeGrowthPct?: number;
|
|
7436
7545
|
};
|
|
7437
7546
|
InsightsRecommendationsVelocityQualityResponse: components["schemas"]["InsightsRecommendationsVelocityQuality"] & {
|
|
7438
7547
|
_meta: components["schemas"]["InsightsResponseMeta"];
|
|
@@ -8290,6 +8399,9 @@ export type JiraSourceConfigDto = components['schemas']['JiraSourceConfigDto'];
|
|
|
8290
8399
|
export type AgentExecutionProviderDto = components['schemas']['AgentExecutionProviderDto'];
|
|
8291
8400
|
export type PutCodeIntelligenceSettingsDto = components['schemas']['PutCodeIntelligenceSettingsDto'];
|
|
8292
8401
|
export type WorkspaceConfigDto = components['schemas']['WorkspaceConfigDto'];
|
|
8402
|
+
export type DeliveryRoleConfigDto = components['schemas']['DeliveryRoleConfigDto'];
|
|
8403
|
+
export type RepoDeliveryOverrideDto = components['schemas']['RepoDeliveryOverrideDto'];
|
|
8404
|
+
export type DeliveryTopologyDto = components['schemas']['DeliveryTopologyDto'];
|
|
8293
8405
|
export type TestConnectionResponseDto = components['schemas']['TestConnectionResponseDto'];
|
|
8294
8406
|
export type CursorKeyUsageDto = components['schemas']['CursorKeyUsageDto'];
|
|
8295
8407
|
export type AiToolSeatDto = components['schemas']['AiToolSeatDto'];
|
|
@@ -8463,6 +8575,8 @@ export type ReadinessScoreHistoryPointDto = components['schemas']['ReadinessScor
|
|
|
8463
8575
|
export type ReadinessRepoScoreHistoryDto = components['schemas']['ReadinessRepoScoreHistoryDto'];
|
|
8464
8576
|
export type WorkspaceReadinessScoreHistoryDto = components['schemas']['WorkspaceReadinessScoreHistoryDto'];
|
|
8465
8577
|
export type RepoReadinessScoreDto = components['schemas']['RepoReadinessScoreDto'];
|
|
8578
|
+
export type LinkedRolePendingDto = components['schemas']['LinkedRolePendingDto'];
|
|
8579
|
+
export type LinkedRoleAssessmentDto = components['schemas']['LinkedRoleAssessmentDto'];
|
|
8466
8580
|
export type RepoReadinessScoreDetailDto = components['schemas']['RepoReadinessScoreDetailDto'];
|
|
8467
8581
|
export type AgenticFoundationDashboardSummaryDto = components['schemas']['AgenticFoundationDashboardSummaryDto'];
|
|
8468
8582
|
export type PageMetaDto = components['schemas']['PageMetaDto'];
|
|
@@ -10241,6 +10355,50 @@ export interface operations {
|
|
|
10241
10355
|
};
|
|
10242
10356
|
};
|
|
10243
10357
|
};
|
|
10358
|
+
putWorkspaceDeliveryTopology: {
|
|
10359
|
+
parameters: {
|
|
10360
|
+
query?: never;
|
|
10361
|
+
header?: never;
|
|
10362
|
+
path: {
|
|
10363
|
+
workspaceId: components["parameters"]["WorkspaceId"];
|
|
10364
|
+
};
|
|
10365
|
+
cookie?: never;
|
|
10366
|
+
};
|
|
10367
|
+
requestBody: {
|
|
10368
|
+
content: {
|
|
10369
|
+
"application/json": components["schemas"]["DeliveryTopologyDto"] | null;
|
|
10370
|
+
};
|
|
10371
|
+
};
|
|
10372
|
+
responses: {
|
|
10373
|
+
/** @description Topology persisted (or cleared). */
|
|
10374
|
+
204: {
|
|
10375
|
+
headers: {
|
|
10376
|
+
[name: string]: unknown;
|
|
10377
|
+
};
|
|
10378
|
+
content?: never;
|
|
10379
|
+
};
|
|
10380
|
+
/** @description Invalid topology payload or unconnected repo referenced. */
|
|
10381
|
+
400: {
|
|
10382
|
+
headers: {
|
|
10383
|
+
[name: string]: unknown;
|
|
10384
|
+
};
|
|
10385
|
+
content: {
|
|
10386
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
10387
|
+
};
|
|
10388
|
+
};
|
|
10389
|
+
401: components["responses"]["Unauthorized"];
|
|
10390
|
+
403: components["responses"]["Forbidden"];
|
|
10391
|
+
/** @description Workspace does not exist or malformed workspaceId */
|
|
10392
|
+
404: {
|
|
10393
|
+
headers: {
|
|
10394
|
+
[name: string]: unknown;
|
|
10395
|
+
};
|
|
10396
|
+
content: {
|
|
10397
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
10398
|
+
};
|
|
10399
|
+
};
|
|
10400
|
+
};
|
|
10401
|
+
};
|
|
10244
10402
|
putTenantSources: {
|
|
10245
10403
|
parameters: {
|
|
10246
10404
|
query?: never;
|