@thinkai/tai-api-contract 2.191.0 → 2.193.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.
@@ -1894,6 +1894,26 @@ export interface paths {
1894
1894
  patch?: never;
1895
1895
  trace?: never;
1896
1896
  };
1897
+ "/workspaces/{workspaceId}/integrations/github/installations/{installationId}/automated-fixes/pr-creation-mode": {
1898
+ parameters: {
1899
+ query?: never;
1900
+ header?: never;
1901
+ path?: never;
1902
+ cookie?: never;
1903
+ };
1904
+ get?: never;
1905
+ /**
1906
+ * Set fix PR creation mode for a GitHub installation
1907
+ * @description Workspace admin only. Sets whether readiness fix PRs are opened only after an explicit Fix it (`manual`) or may be auto-enqueued by the fix processor (`auto`). Requires a linked Automations (write) installation. The mode is ignored while automated fixes are disabled or the write app is suspended.
1908
+ */
1909
+ put: operations["putGithubAutomatedFixesPrCreationMode"];
1910
+ post?: never;
1911
+ delete?: never;
1912
+ options?: never;
1913
+ head?: never;
1914
+ patch?: never;
1915
+ trace?: never;
1916
+ };
1897
1917
  "/workspaces/{workspaceId}/integrations/github/user-authorize-url": {
1898
1918
  parameters: {
1899
1919
  query?: never;
@@ -2363,6 +2383,46 @@ export interface paths {
2363
2383
  patch?: never;
2364
2384
  trace?: never;
2365
2385
  };
2386
+ "/workspaces/{workspaceId}/integrations/sentry": {
2387
+ parameters: {
2388
+ query?: never;
2389
+ header?: never;
2390
+ path?: never;
2391
+ cookie?: never;
2392
+ };
2393
+ /**
2394
+ * Sentry monitoring integration status
2395
+ * @description Returns whether Sentry is connected for the workspace (org slug + auth token) and the last monitoring ingest sync outcome (incidents/deployments pulled into Quality and DORA metrics).
2396
+ */
2397
+ get: operations["getWorkspaceSentryIntegrationStatus"];
2398
+ put?: never;
2399
+ post?: never;
2400
+ delete?: never;
2401
+ options?: never;
2402
+ head?: never;
2403
+ patch?: never;
2404
+ trace?: never;
2405
+ };
2406
+ "/workspaces/{workspaceId}/integrations/sentry/sync": {
2407
+ parameters: {
2408
+ query?: never;
2409
+ header?: never;
2410
+ path?: never;
2411
+ cookie?: never;
2412
+ };
2413
+ get?: never;
2414
+ put?: never;
2415
+ /**
2416
+ * Trigger Sentry monitoring ingest now
2417
+ * @description Manually polls Sentry for issues (incidents) and releases (deployments), persists canonical monitoring events, and refreshes org-level Quality/DORA dashboard buckets. Requires editor role.
2418
+ */
2419
+ post: operations["postWorkspaceSentryIntegrationSync"];
2420
+ delete?: never;
2421
+ options?: never;
2422
+ head?: never;
2423
+ patch?: never;
2424
+ trace?: never;
2425
+ };
2366
2426
  "/integrations/github/webhook": {
2367
2427
  parameters: {
2368
2428
  query?: never;
@@ -8046,6 +8106,11 @@ export interface components {
8046
8106
  automatedFixesEnabled: boolean;
8047
8107
  /** @description True when an Automations (write) GitHub App installation is linked. */
8048
8108
  writeAppInstalled: boolean;
8109
+ /**
8110
+ * @description `manual` (default): open fix PRs only after Fix it / POST readiness/fixes. `auto`: allow the fix processor to auto-enqueue open readiness issues for this installation when automated fixes are enabled. Meaningful only when `writeAppInstalled` is true.
8111
+ * @enum {string}
8112
+ */
8113
+ fixPrCreationMode: "manual" | "auto";
8049
8114
  /** @description GitHub installation id for the Automations (write) app, when linked. */
8050
8115
  writeInstallationId?: string | null;
8051
8116
  /**
@@ -8253,6 +8318,47 @@ export interface components {
8253
8318
  /** @description Error message when status is error. */
8254
8319
  error?: string;
8255
8320
  };
8321
+ SentryIntegrationStatusDto: {
8322
+ /** @description True when a type:sentry workspace source is configured. */
8323
+ connected: boolean;
8324
+ /** @description Configured Sentry organization slug when connected. */
8325
+ orgSlug?: string;
8326
+ /** @description Org display name when known from the last successful verify. */
8327
+ orgName?: string;
8328
+ /**
8329
+ * Format: date-time
8330
+ * @description Timestamp of the last monitoring ingest attempt (success or failure).
8331
+ */
8332
+ lastSyncAt?: string | null;
8333
+ /**
8334
+ * @description Outcome of the most recent sync (`never` when not yet synced).
8335
+ * @enum {string}
8336
+ */
8337
+ status: "ok" | "error" | "never";
8338
+ lastError?: string | null;
8339
+ /** @description Issues (incidents) fetched on the last successful sync (30d lookback). */
8340
+ issueCount?: number | null;
8341
+ /** @description Releases (deployments) fetched on the last successful sync (30d lookback). */
8342
+ deploymentCount?: number | null;
8343
+ /** @description Canonical monitoring events upserted on the last successful sync. */
8344
+ eventCount?: number | null;
8345
+ };
8346
+ SentryTriggerSyncResultDto: {
8347
+ /** @enum {string} */
8348
+ status: "ok" | "skipped" | "error";
8349
+ /** @description Stable machine-readable code (e.g. `sentry_not_connected`). */
8350
+ code?: string;
8351
+ /** @description Human-readable skip reason when status is skipped. */
8352
+ reason?: string;
8353
+ issueCount?: number;
8354
+ deploymentCount?: number;
8355
+ eventCount?: number;
8356
+ /** @description Weekly dashboard metric buckets updated from monitoring events. */
8357
+ bucketsWritten?: number;
8358
+ durationMs?: number;
8359
+ /** @description Error message when status is error. */
8360
+ error?: string;
8361
+ };
8256
8362
  GithubActionsEnableResponseDto: {
8257
8363
  /** @enum {string} */
8258
8364
  outcome: "enabled" | "needs_github" | "permissions_missing" | "error";
@@ -8356,6 +8462,17 @@ export interface components {
8356
8462
  url: string;
8357
8463
  state: string;
8358
8464
  };
8465
+ GithubFixPrCreationModeRequestDto: {
8466
+ /**
8467
+ * @description `manual` requires Fix it; `auto` allows processor auto-enqueue of open fix issues.
8468
+ * @enum {string}
8469
+ */
8470
+ mode: "manual" | "auto";
8471
+ };
8472
+ GithubFixPrCreationModeResponseDto: {
8473
+ /** @enum {string} */
8474
+ mode: "manual" | "auto";
8475
+ };
8359
8476
  GithubAutomatedFixesEnableResponseDto: {
8360
8477
  /**
8361
8478
  * @description enabled — write app already linked and flag flipped; needs_install — client should call install-url with intent=enable_fixes.
@@ -10045,7 +10162,7 @@ export interface components {
10045
10162
  * @description Type of workspace lifecycle event.
10046
10163
  * @enum {string}
10047
10164
  */
10048
- ActivityLogEventTypeDto: "repo.added" | "repo.removed" | "repo.readded" | "integration.github.added" | "integration.github.updated" | "integration.github.removed" | "integration.github.permissions_changed" | "integration.github.suspended" | "integration.github.unsuspended" | "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" | "rules_skills.soft_quality.override" | "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.hibob.sync_started" | "hris.hibob.sync_completed" | "hris.hibob.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.datadog.added" | "integrations.datadog.removed" | "integrations.datadog.sync_completed" | "integrations.datadog.sync_failed" | "integrations.zelt.added" | "integrations.zelt.removed" | "report.exported" | "report.assessment_stored" | "report.assessment_link_sent" | "report.assessment_link_revoked" | "report.assessment_downloaded" | "report.assessment_hidden" | "report.assessment_restored" | "workspace.aggregate_use.changed" | "workspace.assessment_rollout.changed";
10165
+ ActivityLogEventTypeDto: "repo.added" | "repo.removed" | "repo.readded" | "integration.github.added" | "integration.github.updated" | "integration.github.removed" | "integration.github.permissions_changed" | "integration.github.suspended" | "integration.github.unsuspended" | "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" | "rules_skills.soft_quality.override" | "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.hibob.sync_started" | "hris.hibob.sync_completed" | "hris.hibob.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.datadog.added" | "integrations.datadog.removed" | "integrations.datadog.sync_completed" | "integrations.datadog.sync_failed" | "integrations.sentry.added" | "integrations.sentry.removed" | "integrations.sentry.sync_completed" | "integrations.sentry.sync_failed" | "integrations.zelt.added" | "integrations.zelt.removed" | "report.exported" | "report.assessment_stored" | "report.assessment_link_sent" | "report.assessment_link_revoked" | "report.assessment_downloaded" | "report.assessment_hidden" | "report.assessment_restored" | "workspace.aggregate_use.changed" | "workspace.assessment_rollout.changed";
10049
10166
  /** @description Current legal-approved opt-in notice, or `unset` while opt-in is unavailable. */
10050
10167
  AggregateUseNoticeStatusDto: {
10051
10168
  /** @enum {string} */
@@ -10208,7 +10325,7 @@ export interface components {
10208
10325
  };
10209
10326
  AssessmentDictionaryDto: {
10210
10327
  /** @enum {string} */
10211
- version: "2026-10-25.1";
10328
+ version: "2026-10-26.1";
10212
10329
  /** @enum {integer} */
10213
10330
  periodDays: 90;
10214
10331
  /** @enum {integer} */
@@ -10244,7 +10361,7 @@ export interface components {
10244
10361
  aiProviders: ("cursor" | "claude" | "copilot")[];
10245
10362
  optionalProviders: {
10246
10363
  roadmap: "jira"[];
10247
- incident: ("pagerduty" | "opsgenie" | "goalert" | "newrelic" | "prometheus" | "grafana" | "datadog")[];
10364
+ incident: ("pagerduty" | "opsgenie" | "goalert" | "newrelic" | "prometheus" | "grafana" | "datadog" | "sentry")[];
10248
10365
  };
10249
10366
  selfManagedGit: {
10250
10367
  /** @enum {string} */
@@ -13282,10 +13399,14 @@ export type GrafanaIntegrationStatusDto = components['schemas']['GrafanaIntegrat
13282
13399
  export type GrafanaTriggerSyncResultDto = components['schemas']['GrafanaTriggerSyncResultDto'];
13283
13400
  export type DatadogIntegrationStatusDto = components['schemas']['DatadogIntegrationStatusDto'];
13284
13401
  export type DatadogTriggerSyncResultDto = components['schemas']['DatadogTriggerSyncResultDto'];
13402
+ export type SentryIntegrationStatusDto = components['schemas']['SentryIntegrationStatusDto'];
13403
+ export type SentryTriggerSyncResultDto = components['schemas']['SentryTriggerSyncResultDto'];
13285
13404
  export type GithubActionsEnableResponseDto = components['schemas']['GithubActionsEnableResponseDto'];
13286
13405
  export type GithubInstallationStatusDto = components['schemas']['GithubInstallationStatusDto'];
13287
13406
  export type GithubInstallUrlRequestDto = components['schemas']['GithubInstallUrlRequestDto'];
13288
13407
  export type GithubInstallUrlResponseDto = components['schemas']['GithubInstallUrlResponseDto'];
13408
+ export type GithubFixPrCreationModeRequestDto = components['schemas']['GithubFixPrCreationModeRequestDto'];
13409
+ export type GithubFixPrCreationModeResponseDto = components['schemas']['GithubFixPrCreationModeResponseDto'];
13289
13410
  export type GithubAutomatedFixesEnableResponseDto = components['schemas']['GithubAutomatedFixesEnableResponseDto'];
13290
13411
  export type GithubUserAuthorizeUrlRequestDto = components['schemas']['GithubUserAuthorizeUrlRequestDto'];
13291
13412
  export type GithubUserAuthorizeUrlResponseDto = components['schemas']['GithubUserAuthorizeUrlResponseDto'];
@@ -19399,6 +19520,53 @@ export interface operations {
19399
19520
  };
19400
19521
  };
19401
19522
  };
19523
+ putGithubAutomatedFixesPrCreationMode: {
19524
+ parameters: {
19525
+ query?: never;
19526
+ header?: never;
19527
+ path: {
19528
+ workspaceId: components["parameters"]["WorkspaceId"];
19529
+ installationId: string;
19530
+ };
19531
+ cookie?: never;
19532
+ };
19533
+ requestBody: {
19534
+ content: {
19535
+ "application/json": components["schemas"]["GithubFixPrCreationModeRequestDto"];
19536
+ };
19537
+ };
19538
+ responses: {
19539
+ /** @description Updated mode */
19540
+ 200: {
19541
+ headers: {
19542
+ [name: string]: unknown;
19543
+ };
19544
+ content: {
19545
+ "application/json": components["schemas"]["GithubFixPrCreationModeResponseDto"];
19546
+ };
19547
+ };
19548
+ 401: components["responses"]["Unauthorized"];
19549
+ 403: components["responses"]["Forbidden"];
19550
+ /** @description Workspace, installation, or write app link not found */
19551
+ 404: {
19552
+ headers: {
19553
+ [name: string]: unknown;
19554
+ };
19555
+ content: {
19556
+ "application/json": components["schemas"]["ErrorMessageDto"];
19557
+ };
19558
+ };
19559
+ /** @description Write installation suspended */
19560
+ 409: {
19561
+ headers: {
19562
+ [name: string]: unknown;
19563
+ };
19564
+ content: {
19565
+ "application/json": components["schemas"]["ErrorMessageDto"];
19566
+ };
19567
+ };
19568
+ };
19569
+ };
19402
19570
  postGithubUserAuthorizeUrl: {
19403
19571
  parameters: {
19404
19572
  query?: never;
@@ -20449,6 +20617,90 @@ export interface operations {
20449
20617
  };
20450
20618
  };
20451
20619
  };
20620
+ getWorkspaceSentryIntegrationStatus: {
20621
+ parameters: {
20622
+ query?: never;
20623
+ header?: never;
20624
+ path: {
20625
+ workspaceId: components["parameters"]["WorkspaceId"];
20626
+ };
20627
+ cookie?: never;
20628
+ };
20629
+ requestBody?: never;
20630
+ responses: {
20631
+ /** @description Sentry integration status */
20632
+ 200: {
20633
+ headers: {
20634
+ [name: string]: unknown;
20635
+ };
20636
+ content: {
20637
+ "application/json": components["schemas"]["SentryIntegrationStatusDto"];
20638
+ };
20639
+ };
20640
+ 401: components["responses"]["Unauthorized"];
20641
+ 403: components["responses"]["Forbidden"];
20642
+ /** @description Workspace does not exist or malformed workspaceId */
20643
+ 404: {
20644
+ headers: {
20645
+ [name: string]: unknown;
20646
+ };
20647
+ content: {
20648
+ "application/json": components["schemas"]["ErrorMessageDto"];
20649
+ };
20650
+ };
20651
+ };
20652
+ };
20653
+ postWorkspaceSentryIntegrationSync: {
20654
+ parameters: {
20655
+ query?: never;
20656
+ header?: never;
20657
+ path: {
20658
+ workspaceId: components["parameters"]["WorkspaceId"];
20659
+ };
20660
+ cookie?: never;
20661
+ };
20662
+ requestBody?: never;
20663
+ responses: {
20664
+ /** @description Sync completed */
20665
+ 200: {
20666
+ headers: {
20667
+ [name: string]: unknown;
20668
+ };
20669
+ content: {
20670
+ "application/json": components["schemas"]["SentryTriggerSyncResultDto"];
20671
+ };
20672
+ };
20673
+ 401: components["responses"]["Unauthorized"];
20674
+ 403: components["responses"]["Forbidden"];
20675
+ /** @description Workspace does not exist or malformed workspaceId */
20676
+ 404: {
20677
+ headers: {
20678
+ [name: string]: unknown;
20679
+ };
20680
+ content: {
20681
+ "application/json": components["schemas"]["ErrorMessageDto"];
20682
+ };
20683
+ };
20684
+ /** @description Sentry is not connected on this workspace */
20685
+ 422: {
20686
+ headers: {
20687
+ [name: string]: unknown;
20688
+ };
20689
+ content: {
20690
+ "application/json": components["schemas"]["SentryTriggerSyncResultDto"];
20691
+ };
20692
+ };
20693
+ /** @description Sync failed (Sentry API or persistence error) */
20694
+ 503: {
20695
+ headers: {
20696
+ [name: string]: unknown;
20697
+ };
20698
+ content: {
20699
+ "application/json": components["schemas"]["SentryTriggerSyncResultDto"];
20700
+ };
20701
+ };
20702
+ };
20703
+ };
20452
20704
  postGithubWebhook: {
20453
20705
  parameters: {
20454
20706
  query?: never;