@thinkai/tai-api-contract 2.98.0 → 2.99.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.
@@ -1314,7 +1314,11 @@ export interface paths {
1314
1314
  */
1315
1315
  get: operations["getCodeInsightsRepoDetail"];
1316
1316
  put?: never;
1317
- post?: never;
1317
+ /**
1318
+ * Code Insights — enqueue Design risks analysis
1319
+ * @description Enqueues an on-demand Design risks run (`run_kind=code_insights_design`) for the repository. Reuses the readiness worker queue but never grades the readiness rubric. Editor/admin only. Returns `409` when a design run is already queued or running for the same provider slug (independent of readiness runs).
1320
+ */
1321
+ post: operations["postCodeInsightsDesignAnalyze"];
1318
1322
  delete?: never;
1319
1323
  options?: never;
1320
1324
  head?: never;
@@ -7127,7 +7131,7 @@ export interface components {
7127
7131
  * @description Type of workspace lifecycle event.
7128
7132
  * @enum {string}
7129
7133
  */
7130
- ActivityLogEventTypeDto: "repo.added" | "repo.removed" | "repo.readded" | "integration.github.added" | "integration.github.updated" | "integration.github.removed" | "integration.github.permissions_changed" | "integration.github.repo_added" | "integration.github.repo_removed" | "fix.requested" | "fix.generating" | "fix.pr_created" | "fix.merged" | "fix.failed" | "readiness.scan_started" | "readiness.scan_completed" | "readiness.scan_failed" | "readiness.scan_partial" | "integrations.agent_execution.provider_changed" | "integrations.repo_eligibility.overrides_changed" | "integrations.repo_eligibility.languages_refresh_requested" | "integrations.cursor.platform_key_enabled" | "integrations.cursor.platform_key_disabled" | "member.invited" | "member.invite_accepted" | "member.invite_rejected" | "member.role_changed" | "member.removed" | "hris.personio.sync_started" | "hris.personio.sync_completed" | "hris.personio.sync_failed" | "hris.zenhr.sync_started" | "hris.zenhr.sync_completed" | "hris.zenhr.sync_failed" | "hris.zelt.sync_started" | "hris.zelt.sync_completed" | "hris.zelt.sync_failed" | "hris.sync_started" | "hris.sync_completed" | "hris.sync_failed" | "repo.sync_skipped" | "integrations.cursor.execution_key.added" | "integrations.cursor.execution_key.updated" | "integrations.cursor.execution_key.removed" | "integrations.cursor.execution_key.check_failed" | "integrations.cursor.admin_key.added" | "integrations.cursor.admin_key.updated" | "integrations.cursor.admin_key.removed" | "integrations.claude.execution_key.added" | "integrations.claude.execution_key.updated" | "integrations.claude.execution_key.removed" | "integrations.claude.execution_key.check_failed" | "integrations.claude.admin_key.added" | "integrations.claude.admin_key.updated" | "integrations.claude.admin_key.removed" | "integrations.claude.analytics_key.added" | "integrations.claude.analytics_key.updated" | "integrations.claude.analytics_key.removed" | "integrations.code_intelligence.settings_changed" | "integrations.code_intelligence.execution_key.added" | "integrations.code_intelligence.execution_key.updated" | "integrations.code_intelligence.execution_key.removed" | "integrations.code_intelligence.execution_key.check_failed" | "readiness.scan_precheck_failed" | "productivity.ingest.completed" | "productivity.ingest.failed" | "productivity.ingest.skipped" | "productivity.ingest.repo_skipped" | "productivity.ingest.coverage_gap_detected" | "integrations.newrelic.added" | "integrations.newrelic.removed" | "integrations.newrelic.sync_completed" | "integrations.newrelic.sync_failed" | "integrations.prometheus.added" | "integrations.prometheus.removed" | "integrations.prometheus.sync_completed" | "integrations.prometheus.sync_failed" | "integrations.grafana.added" | "integrations.grafana.removed" | "integrations.grafana.sync_completed" | "integrations.grafana.sync_failed" | "integrations.zelt.added" | "integrations.zelt.removed";
7134
+ ActivityLogEventTypeDto: "repo.added" | "repo.removed" | "repo.readded" | "integration.github.added" | "integration.github.updated" | "integration.github.removed" | "integration.github.permissions_changed" | "integration.github.repo_added" | "integration.github.repo_removed" | "fix.requested" | "fix.generating" | "fix.pr_created" | "fix.merged" | "fix.failed" | "readiness.scan_started" | "readiness.scan_completed" | "readiness.scan_failed" | "readiness.scan_partial" | "code_insights.design_run_started" | "integrations.agent_execution.provider_changed" | "integrations.repo_eligibility.overrides_changed" | "integrations.repo_eligibility.languages_refresh_requested" | "integrations.cursor.platform_key_enabled" | "integrations.cursor.platform_key_disabled" | "member.invited" | "member.invite_accepted" | "member.invite_rejected" | "member.role_changed" | "member.removed" | "hris.personio.sync_started" | "hris.personio.sync_completed" | "hris.personio.sync_failed" | "hris.zenhr.sync_started" | "hris.zenhr.sync_completed" | "hris.zenhr.sync_failed" | "hris.zelt.sync_started" | "hris.zelt.sync_completed" | "hris.zelt.sync_failed" | "hris.sync_started" | "hris.sync_completed" | "hris.sync_failed" | "repo.sync_skipped" | "integrations.cursor.execution_key.added" | "integrations.cursor.execution_key.updated" | "integrations.cursor.execution_key.removed" | "integrations.cursor.execution_key.check_failed" | "integrations.cursor.admin_key.added" | "integrations.cursor.admin_key.updated" | "integrations.cursor.admin_key.removed" | "integrations.claude.execution_key.added" | "integrations.claude.execution_key.updated" | "integrations.claude.execution_key.removed" | "integrations.claude.execution_key.check_failed" | "integrations.claude.admin_key.added" | "integrations.claude.admin_key.updated" | "integrations.claude.admin_key.removed" | "integrations.claude.analytics_key.added" | "integrations.claude.analytics_key.updated" | "integrations.claude.analytics_key.removed" | "integrations.code_intelligence.settings_changed" | "integrations.code_intelligence.execution_key.added" | "integrations.code_intelligence.execution_key.updated" | "integrations.code_intelligence.execution_key.removed" | "integrations.code_intelligence.execution_key.check_failed" | "readiness.scan_precheck_failed" | "productivity.ingest.completed" | "productivity.ingest.failed" | "productivity.ingest.skipped" | "productivity.ingest.repo_skipped" | "productivity.ingest.coverage_gap_detected" | "integrations.newrelic.added" | "integrations.newrelic.removed" | "integrations.newrelic.sync_completed" | "integrations.newrelic.sync_failed" | "integrations.prometheus.added" | "integrations.prometheus.removed" | "integrations.prometheus.sync_completed" | "integrations.prometheus.sync_failed" | "integrations.grafana.added" | "integrations.grafana.removed" | "integrations.grafana.sync_completed" | "integrations.grafana.sync_failed" | "integrations.zelt.added" | "integrations.zelt.removed";
7131
7135
  ActivityLogActorDto: {
7132
7136
  /** Format: uuid */
7133
7137
  userId: string;
@@ -8203,8 +8207,27 @@ export interface components {
8203
8207
  /** @description Null when the repo is pending its first metrics scan. */
8204
8208
  metrics: components["schemas"]["CodeInsightsMetricsDto"] | null;
8205
8209
  hotspots: components["schemas"]["CodeInsightsHotspotDto"][];
8206
- /** @description Findings from the latest scan only (history is retention-bounded). */
8210
+ /** @description Deterministic findings from the latest metrics scan plus LLM findings from the latest **succeeded** Design risks run only. Stale LLM rows from older design runs are not returned. */
8207
8211
  findings: components["schemas"]["CodeInsightsFindingDto"][];
8212
+ /** @description Latest Design risks run of any status (for UI polling). Null when Design risks has never been enqueued for this repo. */
8213
+ designAnalysis: components["schemas"]["CodeInsightsDesignAnalysisDto"] | null;
8214
+ };
8215
+ CodeInsightsDesignAnalysisDto: {
8216
+ /** Format: uuid */
8217
+ runId: string;
8218
+ /** @enum {string} */
8219
+ status: "queued" | "running" | "succeeded" | "failed" | "partial_failed";
8220
+ /** Format: date-time */
8221
+ finishedAt: string | null;
8222
+ errorCode: string | null;
8223
+ errorDetail: string | null;
8224
+ };
8225
+ CodeInsightsDesignAnalyzeResponseDto: {
8226
+ /**
8227
+ * Format: uuid
8228
+ * @description Enqueued Design risks run id (`tai_workspace_readiness_runs.id`).
8229
+ */
8230
+ runId: string;
8208
8231
  };
8209
8232
  CodeInsightsOrgHotspotDto: components["schemas"]["CodeInsightsHotspotDto"] & {
8210
8233
  /** Format: uuid */
@@ -8765,6 +8788,8 @@ export type CodeInsightsFindingsBySeverityDto = components['schemas']['CodeInsig
8765
8788
  export type CodeInsightsRepoListItemDto = components['schemas']['CodeInsightsRepoListItemDto'];
8766
8789
  export type CodeInsightsRepoListDto = components['schemas']['CodeInsightsRepoListDto'];
8767
8790
  export type CodeInsightsRepoDetailDto = components['schemas']['CodeInsightsRepoDetailDto'];
8791
+ export type CodeInsightsDesignAnalysisDto = components['schemas']['CodeInsightsDesignAnalysisDto'];
8792
+ export type CodeInsightsDesignAnalyzeResponseDto = components['schemas']['CodeInsightsDesignAnalyzeResponseDto'];
8768
8793
  export type CodeInsightsOrgHotspotDto = components['schemas']['CodeInsightsOrgHotspotDto'];
8769
8794
  export type CodeInsightsSonarDto = components['schemas']['CodeInsightsSonarDto'];
8770
8795
  export type CodeInsightsSummaryDto = components['schemas']['CodeInsightsSummaryDto'];
@@ -12411,6 +12436,59 @@ export interface operations {
12411
12436
  };
12412
12437
  };
12413
12438
  };
12439
+ postCodeInsightsDesignAnalyze: {
12440
+ parameters: {
12441
+ query?: never;
12442
+ header?: never;
12443
+ path: {
12444
+ workspaceId: components["parameters"]["WorkspaceId"];
12445
+ /** @description Internal repo UUID (`tai_workspace_repos.id`). */
12446
+ repoId: string;
12447
+ };
12448
+ cookie?: never;
12449
+ };
12450
+ requestBody?: never;
12451
+ responses: {
12452
+ /** @description Design risks analysis enqueued */
12453
+ 202: {
12454
+ headers: {
12455
+ [name: string]: unknown;
12456
+ };
12457
+ content: {
12458
+ "application/json": components["schemas"]["CodeInsightsDesignAnalyzeResponseDto"];
12459
+ };
12460
+ };
12461
+ /** @description Malformed repoId, unsupported provider, or GitHub not connected */
12462
+ 400: {
12463
+ headers: {
12464
+ [name: string]: unknown;
12465
+ };
12466
+ content: {
12467
+ "application/json": components["schemas"]["ErrorMessageDto"];
12468
+ };
12469
+ };
12470
+ 401: components["responses"]["Unauthorized"];
12471
+ 403: components["responses"]["Forbidden"];
12472
+ /** @description Workspace or repo does not exist */
12473
+ 404: {
12474
+ headers: {
12475
+ [name: string]: unknown;
12476
+ };
12477
+ content: {
12478
+ "application/json": components["schemas"]["ErrorMessageDto"];
12479
+ };
12480
+ };
12481
+ /** @description An active Design risks run already exists for this repo slug */
12482
+ 409: {
12483
+ headers: {
12484
+ [name: string]: unknown;
12485
+ };
12486
+ content: {
12487
+ "application/json": components["schemas"]["ErrorMessageDto"];
12488
+ };
12489
+ };
12490
+ };
12491
+ };
12414
12492
  getAiToolMembers: {
12415
12493
  parameters: {
12416
12494
  query?: {