@thinkai/tai-api-contract 2.81.0 → 2.83.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.
@@ -2122,6 +2122,28 @@ export interface paths {
2122
2122
  patch: operations["patchReadinessRepo"];
2123
2123
  trace?: never;
2124
2124
  };
2125
+ "/workspaces/{workspaceId}/readiness/repos/{repoId}/issues/export": {
2126
+ parameters: {
2127
+ query?: never;
2128
+ header?: never;
2129
+ path?: never;
2130
+ cookie?: never;
2131
+ };
2132
+ /**
2133
+ * Export repository readiness issues as Markdown
2134
+ * @description Download outstanding readiness issues for one repository as a Markdown (`.md`) attachment for local IDE workflows. Reuses the same scorecard as `GET .../readiness/repos/{repoId}` (issues plus optional remediation from `criteriaDetails`).
2135
+ * The Markdown is grouped **by readiness dimension** (catalog order). Each dimension section lists matching issues sorted by severity. Default filter is outstanding issues (`open` + `pr-pending`). Optional query params narrow the set. When `includeCriteria` is true (default), each issue includes a Remediation section from the matching criterion when available.
2136
+ * The response sets `Content-Disposition: attachment` with filename `readiness-issues-{providerSlug}-{date}.md`.
2137
+ */
2138
+ get: operations["exportReadinessRepoIssuesMarkdown"];
2139
+ put?: never;
2140
+ post?: never;
2141
+ delete?: never;
2142
+ options?: never;
2143
+ head?: never;
2144
+ patch?: never;
2145
+ trace?: never;
2146
+ };
2125
2147
  "/workspaces/{workspaceId}/readiness/repos/{repoId}/runs": {
2126
2148
  parameters: {
2127
2149
  query?: never;
@@ -7324,6 +7346,18 @@ export interface components {
7324
7346
  CodeChatSyncIndexesResultDto: {
7325
7347
  enqueued: number;
7326
7348
  items?: components["schemas"]["CodeChatIndexDto"][];
7349
+ /** @description Repositories requested (or considered) for sync but not enqueued */
7350
+ skipped?: components["schemas"]["CodeChatSkippedRepoDto"][];
7351
+ };
7352
+ CodeChatSkippedRepoDto: {
7353
+ /** Format: uuid */
7354
+ repoId: string;
7355
+ repoName: string;
7356
+ /**
7357
+ * @description Stable machine-readable skip reason
7358
+ * @enum {string}
7359
+ */
7360
+ code: "repo_ineligible";
7327
7361
  };
7328
7362
  CodeChatThreadDto: {
7329
7363
  /** Format: uuid */
@@ -7386,8 +7420,48 @@ export interface components {
7386
7420
  content: string;
7387
7421
  };
7388
7422
  CodeChatMessageReplyDto: components["schemas"]["CodeChatMessageDto"] & {
7423
+ /**
7424
+ * @description How the assistant answer was produced. `inventory` returns a deterministic catalog (APIs or modules) rather than LLM synthesis.
7425
+ * @enum {string}
7426
+ */
7427
+ mode: "llm" | "retrieval" | "inventory";
7428
+ /** @description Optional typed inventory payload for rich UI tables */
7429
+ structured?: components["schemas"]["CodeChatStructuredBlockDto"];
7430
+ /** @description True when wiki pages from one or more repos contributed to LLM context */
7431
+ groundedInWiki?: boolean;
7432
+ /** @description Repository names whose wiki pages grounded the answer */
7433
+ wikiRepos?: string[];
7434
+ };
7435
+ CodeChatApiRouteRowDto: {
7436
+ method: string;
7437
+ path: string;
7438
+ file: string;
7439
+ line?: number;
7440
+ summary?: string;
7441
+ /** Format: uuid */
7442
+ repoId?: string;
7443
+ repoName?: string;
7444
+ providerSlug?: string;
7445
+ commitSha?: string | null;
7446
+ };
7447
+ CodeChatModuleInventoryRowDto: {
7448
+ name: string;
7449
+ /** @enum {string} */
7450
+ kind: "package" | "root" | "area";
7451
+ path: string;
7452
+ summary?: string;
7453
+ /** Format: uuid */
7454
+ repoId?: string;
7455
+ repoName?: string;
7456
+ };
7457
+ CodeChatStructuredBlockDto: {
7389
7458
  /** @enum {string} */
7390
- mode: "llm" | "retrieval";
7459
+ kind: "api_inventory";
7460
+ rows: components["schemas"]["CodeChatApiRouteRowDto"][];
7461
+ } | {
7462
+ /** @enum {string} */
7463
+ kind: "module_inventory";
7464
+ rows: components["schemas"]["CodeChatModuleInventoryRowDto"][];
7391
7465
  };
7392
7466
  CodeChatWikiPageDto: {
7393
7467
  /** Format: uuid */
@@ -8214,6 +8288,7 @@ export type CodeChatIndexListDto = components['schemas']['CodeChatIndexListDto']
8214
8288
  export type CodeChatCreateIndexBodyDto = components['schemas']['CodeChatCreateIndexBodyDto'];
8215
8289
  export type CodeChatSyncIndexesBodyDto = components['schemas']['CodeChatSyncIndexesBodyDto'];
8216
8290
  export type CodeChatSyncIndexesResultDto = components['schemas']['CodeChatSyncIndexesResultDto'];
8291
+ export type CodeChatSkippedRepoDto = components['schemas']['CodeChatSkippedRepoDto'];
8217
8292
  export type CodeChatThreadDto = components['schemas']['CodeChatThreadDto'];
8218
8293
  export type CodeChatThreadListDto = components['schemas']['CodeChatThreadListDto'];
8219
8294
  export type CodeChatCreateThreadBodyDto = components['schemas']['CodeChatCreateThreadBodyDto'];
@@ -8222,6 +8297,9 @@ export type CodeChatMessageDto = components['schemas']['CodeChatMessageDto'];
8222
8297
  export type CodeChatThreadDetailDto = components['schemas']['CodeChatThreadDetailDto'];
8223
8298
  export type CodeChatPostMessageBodyDto = components['schemas']['CodeChatPostMessageBodyDto'];
8224
8299
  export type CodeChatMessageReplyDto = components['schemas']['CodeChatMessageReplyDto'];
8300
+ export type CodeChatApiRouteRowDto = components['schemas']['CodeChatApiRouteRowDto'];
8301
+ export type CodeChatModuleInventoryRowDto = components['schemas']['CodeChatModuleInventoryRowDto'];
8302
+ export type CodeChatStructuredBlockDto = components['schemas']['CodeChatStructuredBlockDto'];
8225
8303
  export type CodeChatWikiPageDto = components['schemas']['CodeChatWikiPageDto'];
8226
8304
  export type CodeChatWikiPageListDto = components['schemas']['CodeChatWikiPageListDto'];
8227
8305
  export type CodeChatSymbolQueryBodyDto = components['schemas']['CodeChatSymbolQueryBodyDto'];
@@ -13826,6 +13904,56 @@ export interface operations {
13826
13904
  };
13827
13905
  };
13828
13906
  };
13907
+ exportReadinessRepoIssuesMarkdown: {
13908
+ parameters: {
13909
+ query?: {
13910
+ /** @description When omitted, export outstanding issues (`open` and `pr-pending`). When set, export only issues with this fix status. */
13911
+ fixStatus?: "open" | "pr-pending" | "fixed";
13912
+ dimensionId?: components["schemas"]["ReadinessDimensionId"];
13913
+ severity?: "critical" | "high" | "medium" | "low";
13914
+ /** @description Include remediation from criteriaDetails (default true). */
13915
+ includeCriteria?: boolean;
13916
+ };
13917
+ header?: never;
13918
+ path: {
13919
+ workspaceId: components["parameters"]["WorkspaceId"];
13920
+ repoId: components["parameters"]["RepoId"];
13921
+ };
13922
+ cookie?: never;
13923
+ };
13924
+ requestBody?: never;
13925
+ responses: {
13926
+ /** @description Markdown file of readiness issues */
13927
+ 200: {
13928
+ headers: {
13929
+ [name: string]: unknown;
13930
+ };
13931
+ content: {
13932
+ "text/markdown": string;
13933
+ };
13934
+ };
13935
+ /** @description Malformed `repoId` or invalid query parameters */
13936
+ 400: {
13937
+ headers: {
13938
+ [name: string]: unknown;
13939
+ };
13940
+ content: {
13941
+ "application/json": components["schemas"]["ErrorMessageDto"];
13942
+ };
13943
+ };
13944
+ 401: components["responses"]["Unauthorized"];
13945
+ 403: components["responses"]["Forbidden"];
13946
+ /** @description Workspace or repository not found */
13947
+ 404: {
13948
+ headers: {
13949
+ [name: string]: unknown;
13950
+ };
13951
+ content: {
13952
+ "application/json": components["schemas"]["ErrorMessageDto"];
13953
+ };
13954
+ };
13955
+ };
13956
+ };
13829
13957
  listReadinessRepoRuns: {
13830
13958
  parameters: {
13831
13959
  query?: {
@@ -15416,6 +15544,21 @@ export interface operations {
15416
15544
  "application/json": components["schemas"]["ErrorMessageDto"];
15417
15545
  };
15418
15546
  };
15547
+ /** @description Repository blocked by workspace eligibility or size limits */
15548
+ 422: {
15549
+ headers: {
15550
+ [name: string]: unknown;
15551
+ };
15552
+ content: {
15553
+ /**
15554
+ * @example {
15555
+ * "error": "Repository exceeds the workspace eligibility limits and cannot be indexed",
15556
+ * "code": "repo_ineligible"
15557
+ * }
15558
+ */
15559
+ "application/json": components["schemas"]["ErrorMessageDto"];
15560
+ };
15561
+ };
15419
15562
  };
15420
15563
  };
15421
15564
  syncCodeChatIndexes: {