@thinkai/tai-api-contract 2.11.1 → 2.12.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 +224 -1
- package/dist/generated/openapi.d.ts.map +1 -1
- package/openapi/openapi.yaml +287 -1
- package/package.json +2 -1
- package/src/generated/openapi.ts +224 -1
package/openapi/openapi.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
openapi: 3.0.3
|
|
2
2
|
info:
|
|
3
3
|
title: ThinkAI API
|
|
4
|
-
version: 2.
|
|
4
|
+
version: 2.12.0
|
|
5
5
|
description: >
|
|
6
6
|
Contract surface for the AI Driven SDLC backend used by ThinkAI.
|
|
7
7
|
Workspace-scoped routes use `/workspaces/{workspaceId}/...`.
|
|
@@ -52,6 +52,8 @@ tags:
|
|
|
52
52
|
description: Agentic Foundation pillars (epic #278); reads stored repository readiness snapshots
|
|
53
53
|
- name: YourAiJourney
|
|
54
54
|
description: Your AI Journey dashboard aggregators (epic #267); composes readiness, metrics, and AI-spend data for the /dashboard page
|
|
55
|
+
- name: WorkspaceActivity
|
|
56
|
+
description: Workspace-wide lifecycle activity log — repo add/remove/re-add and integration lifecycle events (issue #515).
|
|
55
57
|
- name: PlatformAdmin
|
|
56
58
|
description: Platform-admin operations restricted to PLATFORM_ADMIN_EMAILS. Callers must present a valid JWT from an email on that allowlist; all other callers receive 403.
|
|
57
59
|
|
|
@@ -2282,6 +2284,12 @@ paths:
|
|
|
2282
2284
|
- $ref: "#/components/parameters/PaginationOrder"
|
|
2283
2285
|
- $ref: "#/components/parameters/ReadinessRepoSearch"
|
|
2284
2286
|
- $ref: "#/components/parameters/ReadinessRepoLanguage"
|
|
2287
|
+
- name: includeArchived
|
|
2288
|
+
in: query
|
|
2289
|
+
description: When `true`, includes Inactive (user-removed) repos alongside Active ones. Default is `false` (active only).
|
|
2290
|
+
schema:
|
|
2291
|
+
type: boolean
|
|
2292
|
+
default: false
|
|
2285
2293
|
responses:
|
|
2286
2294
|
"200":
|
|
2287
2295
|
description: Paginated repositories analyzed
|
|
@@ -2462,6 +2470,62 @@ paths:
|
|
|
2462
2470
|
application/json:
|
|
2463
2471
|
schema:
|
|
2464
2472
|
$ref: "#/components/schemas/ErrorMessageDto"
|
|
2473
|
+
patch:
|
|
2474
|
+
tags: [RepositoryReadiness]
|
|
2475
|
+
summary: Archive (remove) or restore (re-add) a repository
|
|
2476
|
+
description: >
|
|
2477
|
+
Set `archived: true` to soft-remove the repo (Inactive). Set `archived: false` to re-add a
|
|
2478
|
+
previously Inactive repo (Active). Re-add reuses the same `repo_id` row so historical scan
|
|
2479
|
+
foreign keys remain intact, and automatically enqueues a fresh readiness scan.
|
|
2480
|
+
|
|
2481
|
+
Returns `409` with `code: repo_scan_in_progress` if a scan is queued or running when archiving.
|
|
2482
|
+
Returns `409` with `code: repo_already_active` if re-adding a repo that is already Active.
|
|
2483
|
+
operationId: patchReadinessRepo
|
|
2484
|
+
parameters:
|
|
2485
|
+
- $ref: "#/components/parameters/WorkspaceId"
|
|
2486
|
+
- $ref: "#/components/parameters/RepoId"
|
|
2487
|
+
requestBody:
|
|
2488
|
+
required: true
|
|
2489
|
+
content:
|
|
2490
|
+
application/json:
|
|
2491
|
+
schema:
|
|
2492
|
+
$ref: "#/components/schemas/PatchRepoArchiveBodyDto"
|
|
2493
|
+
examples:
|
|
2494
|
+
archive:
|
|
2495
|
+
value:
|
|
2496
|
+
archived: true
|
|
2497
|
+
restore:
|
|
2498
|
+
value:
|
|
2499
|
+
archived: false
|
|
2500
|
+
responses:
|
|
2501
|
+
"200":
|
|
2502
|
+
description: Repo status updated
|
|
2503
|
+
content:
|
|
2504
|
+
application/json:
|
|
2505
|
+
schema:
|
|
2506
|
+
$ref: "#/components/schemas/PatchRepoArchiveResponseDto"
|
|
2507
|
+
"400":
|
|
2508
|
+
description: Malformed request body or repoId
|
|
2509
|
+
content:
|
|
2510
|
+
application/json:
|
|
2511
|
+
schema:
|
|
2512
|
+
$ref: "#/components/schemas/ErrorMessageDto"
|
|
2513
|
+
"401":
|
|
2514
|
+
$ref: "#/components/responses/Unauthorized"
|
|
2515
|
+
"403":
|
|
2516
|
+
$ref: "#/components/responses/Forbidden"
|
|
2517
|
+
"404":
|
|
2518
|
+
description: Workspace or repository not found
|
|
2519
|
+
content:
|
|
2520
|
+
application/json:
|
|
2521
|
+
schema:
|
|
2522
|
+
$ref: "#/components/schemas/ErrorMessageDto"
|
|
2523
|
+
"409":
|
|
2524
|
+
description: Conflict — scan in progress or repo already in the requested state
|
|
2525
|
+
content:
|
|
2526
|
+
application/json:
|
|
2527
|
+
schema:
|
|
2528
|
+
$ref: "#/components/schemas/ErrorMessageDto"
|
|
2465
2529
|
|
|
2466
2530
|
/workspaces/{workspaceId}/readiness/repos/{repoId}/runs:
|
|
2467
2531
|
get:
|
|
@@ -2603,6 +2667,83 @@ paths:
|
|
|
2603
2667
|
schema:
|
|
2604
2668
|
$ref: "#/components/schemas/ErrorMessageDto"
|
|
2605
2669
|
|
|
2670
|
+
/workspaces/{workspaceId}/activity:
|
|
2671
|
+
get:
|
|
2672
|
+
tags: [WorkspaceActivity]
|
|
2673
|
+
summary: Workspace activity log (paginated)
|
|
2674
|
+
operationId: listWorkspaceActivity
|
|
2675
|
+
description: >
|
|
2676
|
+
Paginated, chronological feed of workspace-scoped lifecycle events: repository add/remove/re-add
|
|
2677
|
+
and GitHub integration add/remove. Inactive repos remain visible in this log.
|
|
2678
|
+
Filter by `eventType`, `actorUserId`, or date range (`since`/`until`).
|
|
2679
|
+
parameters:
|
|
2680
|
+
- $ref: "#/components/parameters/WorkspaceId"
|
|
2681
|
+
- $ref: "#/components/parameters/PaginationLimit"
|
|
2682
|
+
- $ref: "#/components/parameters/PaginationOffset"
|
|
2683
|
+
- $ref: "#/components/parameters/PaginationOrder"
|
|
2684
|
+
- name: eventType
|
|
2685
|
+
in: query
|
|
2686
|
+
description: Filter to a specific event type.
|
|
2687
|
+
schema:
|
|
2688
|
+
$ref: "#/components/schemas/ActivityLogEventTypeDto"
|
|
2689
|
+
- name: actorUserId
|
|
2690
|
+
in: query
|
|
2691
|
+
description: Filter to events performed by a specific user (UUID).
|
|
2692
|
+
schema:
|
|
2693
|
+
type: string
|
|
2694
|
+
format: uuid
|
|
2695
|
+
- name: since
|
|
2696
|
+
in: query
|
|
2697
|
+
description: ISO-8601 lower bound on `occurredAt` (inclusive).
|
|
2698
|
+
schema:
|
|
2699
|
+
type: string
|
|
2700
|
+
format: date-time
|
|
2701
|
+
- name: until
|
|
2702
|
+
in: query
|
|
2703
|
+
description: ISO-8601 upper bound on `occurredAt` (inclusive).
|
|
2704
|
+
schema:
|
|
2705
|
+
type: string
|
|
2706
|
+
format: date-time
|
|
2707
|
+
- name: eventCategory
|
|
2708
|
+
in: query
|
|
2709
|
+
required: false
|
|
2710
|
+
description: >
|
|
2711
|
+
Filter by event namespace prefix (e.g. "fix", "repo", "integration", "readiness", "config", "member").
|
|
2712
|
+
schema:
|
|
2713
|
+
type: string
|
|
2714
|
+
- name: search
|
|
2715
|
+
in: query
|
|
2716
|
+
required: false
|
|
2717
|
+
description: >
|
|
2718
|
+
Case-insensitive substring filter applied across repo name,
|
|
2719
|
+
integration type, actor email, and actor display name.
|
|
2720
|
+
schema:
|
|
2721
|
+
type: string
|
|
2722
|
+
maxLength: 200
|
|
2723
|
+
responses:
|
|
2724
|
+
"200":
|
|
2725
|
+
description: Paginated activity log entries
|
|
2726
|
+
content:
|
|
2727
|
+
application/json:
|
|
2728
|
+
schema:
|
|
2729
|
+
$ref: "#/components/schemas/ActivityLogPageDto"
|
|
2730
|
+
"400":
|
|
2731
|
+
description: Invalid query parameters
|
|
2732
|
+
content:
|
|
2733
|
+
application/json:
|
|
2734
|
+
schema:
|
|
2735
|
+
$ref: "#/components/schemas/ErrorMessageDto"
|
|
2736
|
+
"401":
|
|
2737
|
+
$ref: "#/components/responses/Unauthorized"
|
|
2738
|
+
"403":
|
|
2739
|
+
$ref: "#/components/responses/Forbidden"
|
|
2740
|
+
"404":
|
|
2741
|
+
description: Workspace does not exist
|
|
2742
|
+
content:
|
|
2743
|
+
application/json:
|
|
2744
|
+
schema:
|
|
2745
|
+
$ref: "#/components/schemas/ErrorMessageDto"
|
|
2746
|
+
|
|
2606
2747
|
/workspaces/{workspaceId}/readiness/score-history:
|
|
2607
2748
|
get:
|
|
2608
2749
|
tags: [RepositoryReadiness]
|
|
@@ -7363,3 +7504,148 @@ components:
|
|
|
7363
7504
|
type: integer
|
|
7364
7505
|
activeUsers:
|
|
7365
7506
|
type: integer
|
|
7507
|
+
|
|
7508
|
+
PatchRepoArchiveBodyDto:
|
|
7509
|
+
type: object
|
|
7510
|
+
required: [archived]
|
|
7511
|
+
properties:
|
|
7512
|
+
archived:
|
|
7513
|
+
type: boolean
|
|
7514
|
+
description: >
|
|
7515
|
+
`true` to soft-remove (Inactive). `false` to restore a previously Inactive repo (Active),
|
|
7516
|
+
which also enqueues a fresh readiness scan.
|
|
7517
|
+
|
|
7518
|
+
PatchRepoArchiveResponseDto:
|
|
7519
|
+
type: object
|
|
7520
|
+
required: [repoId, status]
|
|
7521
|
+
properties:
|
|
7522
|
+
repoId:
|
|
7523
|
+
type: string
|
|
7524
|
+
format: uuid
|
|
7525
|
+
status:
|
|
7526
|
+
type: string
|
|
7527
|
+
enum: [Active, Inactive]
|
|
7528
|
+
description: Current lifecycle status of the repository after the operation.
|
|
7529
|
+
runId:
|
|
7530
|
+
type: string
|
|
7531
|
+
format: uuid
|
|
7532
|
+
nullable: true
|
|
7533
|
+
description: ID of the freshly enqueued readiness scan run (only present on re-add).
|
|
7534
|
+
|
|
7535
|
+
ActivityLogEventTypeDto:
|
|
7536
|
+
type: string
|
|
7537
|
+
description: Type of workspace lifecycle event.
|
|
7538
|
+
enum:
|
|
7539
|
+
- repo.added
|
|
7540
|
+
- repo.removed
|
|
7541
|
+
- repo.readded
|
|
7542
|
+
- integration.github.added
|
|
7543
|
+
- integration.github.updated
|
|
7544
|
+
- integration.github.removed
|
|
7545
|
+
- integration.github.permissions_changed
|
|
7546
|
+
- integration.github.repo_added
|
|
7547
|
+
- integration.github.repo_removed
|
|
7548
|
+
- fix.requested
|
|
7549
|
+
- fix.generating
|
|
7550
|
+
- fix.pr_created
|
|
7551
|
+
- fix.merged
|
|
7552
|
+
- fix.failed
|
|
7553
|
+
- readiness.scan_started
|
|
7554
|
+
- readiness.scan_completed
|
|
7555
|
+
- readiness.scan_failed
|
|
7556
|
+
- readiness.scan_partial
|
|
7557
|
+
- config.cursor.added
|
|
7558
|
+
- config.cursor.updated
|
|
7559
|
+
- config.cursor.removed
|
|
7560
|
+
- config.cursor.platform_key_enabled
|
|
7561
|
+
- config.cursor.platform_key_disabled
|
|
7562
|
+
- config.claude.added
|
|
7563
|
+
- config.claude.updated
|
|
7564
|
+
- config.claude.removed
|
|
7565
|
+
- member.invited
|
|
7566
|
+
- member.role_changed
|
|
7567
|
+
- member.removed
|
|
7568
|
+
|
|
7569
|
+
ActivityLogActorDto:
|
|
7570
|
+
type: object
|
|
7571
|
+
required: [userId]
|
|
7572
|
+
properties:
|
|
7573
|
+
userId:
|
|
7574
|
+
type: string
|
|
7575
|
+
format: uuid
|
|
7576
|
+
email:
|
|
7577
|
+
type: string
|
|
7578
|
+
format: email
|
|
7579
|
+
nullable: true
|
|
7580
|
+
name:
|
|
7581
|
+
type: string
|
|
7582
|
+
nullable: true
|
|
7583
|
+
|
|
7584
|
+
ActivityLogEntryDto:
|
|
7585
|
+
type: object
|
|
7586
|
+
required: [id, eventType, eventCategory, occurredAt, actorType]
|
|
7587
|
+
properties:
|
|
7588
|
+
id:
|
|
7589
|
+
type: string
|
|
7590
|
+
format: uuid
|
|
7591
|
+
eventType:
|
|
7592
|
+
$ref: "#/components/schemas/ActivityLogEventTypeDto"
|
|
7593
|
+
eventCategory:
|
|
7594
|
+
type: string
|
|
7595
|
+
description: Namespace prefix derived from event_type (e.g. "fix", "repo", "config").
|
|
7596
|
+
occurredAt:
|
|
7597
|
+
type: string
|
|
7598
|
+
format: date-time
|
|
7599
|
+
actorType:
|
|
7600
|
+
type: string
|
|
7601
|
+
enum: [user, system, webhook]
|
|
7602
|
+
description: Whether the event was triggered by a human user, a batch/system process, or a webhook.
|
|
7603
|
+
actor:
|
|
7604
|
+
nullable: true
|
|
7605
|
+
allOf:
|
|
7606
|
+
- $ref: "#/components/schemas/ActivityLogActorDto"
|
|
7607
|
+
repoId:
|
|
7608
|
+
type: string
|
|
7609
|
+
format: uuid
|
|
7610
|
+
nullable: true
|
|
7611
|
+
repoName:
|
|
7612
|
+
type: string
|
|
7613
|
+
nullable: true
|
|
7614
|
+
integrationId:
|
|
7615
|
+
type: string
|
|
7616
|
+
format: uuid
|
|
7617
|
+
nullable: true
|
|
7618
|
+
integrationType:
|
|
7619
|
+
type: string
|
|
7620
|
+
nullable: true
|
|
7621
|
+
fixRequestId:
|
|
7622
|
+
type: string
|
|
7623
|
+
format: uuid
|
|
7624
|
+
nullable: true
|
|
7625
|
+
description: ID of the related fix request (fix.* events).
|
|
7626
|
+
issueId:
|
|
7627
|
+
type: string
|
|
7628
|
+
format: uuid
|
|
7629
|
+
nullable: true
|
|
7630
|
+
description: ID of the related readiness issue (fix.* events).
|
|
7631
|
+
readinessRunId:
|
|
7632
|
+
type: string
|
|
7633
|
+
format: uuid
|
|
7634
|
+
nullable: true
|
|
7635
|
+
description: ID of the related readiness run (readiness.* events).
|
|
7636
|
+
metadata:
|
|
7637
|
+
type: object
|
|
7638
|
+
additionalProperties: true
|
|
7639
|
+
nullable: true
|
|
7640
|
+
description: Event-specific supplementary data (before/after state, installation IDs, etc.).
|
|
7641
|
+
|
|
7642
|
+
ActivityLogPageDto:
|
|
7643
|
+
allOf:
|
|
7644
|
+
- $ref: "#/components/schemas/PageMetaDto"
|
|
7645
|
+
- type: object
|
|
7646
|
+
required: [items]
|
|
7647
|
+
properties:
|
|
7648
|
+
items:
|
|
7649
|
+
type: array
|
|
7650
|
+
items:
|
|
7651
|
+
$ref: "#/components/schemas/ActivityLogEntryDto"
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@thinkai/tai-api-contract",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.12.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -21,6 +21,7 @@
|
|
|
21
21
|
"dependencies": {},
|
|
22
22
|
"devDependencies": {
|
|
23
23
|
"@stoplight/spectral-cli": "^6.15.1",
|
|
24
|
+
"jsonpath-plus": "^10.3.0",
|
|
24
25
|
"openapi-typescript": "^7.13.0",
|
|
25
26
|
"typescript": "~5.3.0"
|
|
26
27
|
},
|
package/src/generated/openapi.ts
CHANGED
|
@@ -949,7 +949,12 @@ export interface paths {
|
|
|
949
949
|
delete?: never;
|
|
950
950
|
options?: never;
|
|
951
951
|
head?: never;
|
|
952
|
-
|
|
952
|
+
/**
|
|
953
|
+
* Archive (remove) or restore (re-add) a repository
|
|
954
|
+
* @description Set `archived: true` to soft-remove the repo (Inactive). Set `archived: false` to re-add a previously Inactive repo (Active). Re-add reuses the same `repo_id` row so historical scan foreign keys remain intact, and automatically enqueues a fresh readiness scan.
|
|
955
|
+
* Returns `409` with `code: repo_scan_in_progress` if a scan is queued or running when archiving. Returns `409` with `code: repo_already_active` if re-adding a repo that is already Active.
|
|
956
|
+
*/
|
|
957
|
+
patch: operations["patchReadinessRepo"];
|
|
953
958
|
trace?: never;
|
|
954
959
|
};
|
|
955
960
|
"/workspaces/{workspaceId}/readiness/repos/{repoId}/runs": {
|
|
@@ -992,6 +997,26 @@ export interface paths {
|
|
|
992
997
|
patch?: never;
|
|
993
998
|
trace?: never;
|
|
994
999
|
};
|
|
1000
|
+
"/workspaces/{workspaceId}/activity": {
|
|
1001
|
+
parameters: {
|
|
1002
|
+
query?: never;
|
|
1003
|
+
header?: never;
|
|
1004
|
+
path?: never;
|
|
1005
|
+
cookie?: never;
|
|
1006
|
+
};
|
|
1007
|
+
/**
|
|
1008
|
+
* Workspace activity log (paginated)
|
|
1009
|
+
* @description Paginated, chronological feed of workspace-scoped lifecycle events: repository add/remove/re-add and GitHub integration add/remove. Inactive repos remain visible in this log. Filter by `eventType`, `actorUserId`, or date range (`since`/`until`).
|
|
1010
|
+
*/
|
|
1011
|
+
get: operations["listWorkspaceActivity"];
|
|
1012
|
+
put?: never;
|
|
1013
|
+
post?: never;
|
|
1014
|
+
delete?: never;
|
|
1015
|
+
options?: never;
|
|
1016
|
+
head?: never;
|
|
1017
|
+
patch?: never;
|
|
1018
|
+
trace?: never;
|
|
1019
|
+
};
|
|
995
1020
|
"/workspaces/{workspaceId}/readiness/score-history": {
|
|
996
1021
|
parameters: {
|
|
997
1022
|
query?: never;
|
|
@@ -3120,6 +3145,79 @@ export interface components {
|
|
|
3120
3145
|
activeUsers: number;
|
|
3121
3146
|
}[];
|
|
3122
3147
|
};
|
|
3148
|
+
PatchRepoArchiveBodyDto: {
|
|
3149
|
+
/** @description `true` to soft-remove (Inactive). `false` to restore a previously Inactive repo (Active), which also enqueues a fresh readiness scan. */
|
|
3150
|
+
archived: boolean;
|
|
3151
|
+
};
|
|
3152
|
+
PatchRepoArchiveResponseDto: {
|
|
3153
|
+
/** Format: uuid */
|
|
3154
|
+
repoId: string;
|
|
3155
|
+
/**
|
|
3156
|
+
* @description Current lifecycle status of the repository after the operation.
|
|
3157
|
+
* @enum {string}
|
|
3158
|
+
*/
|
|
3159
|
+
status: "Active" | "Inactive";
|
|
3160
|
+
/**
|
|
3161
|
+
* Format: uuid
|
|
3162
|
+
* @description ID of the freshly enqueued readiness scan run (only present on re-add).
|
|
3163
|
+
*/
|
|
3164
|
+
runId?: string | null;
|
|
3165
|
+
};
|
|
3166
|
+
/**
|
|
3167
|
+
* @description Type of workspace lifecycle event.
|
|
3168
|
+
* @enum {string}
|
|
3169
|
+
*/
|
|
3170
|
+
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" | "config.cursor.added" | "config.cursor.updated" | "config.cursor.removed" | "config.cursor.platform_key_enabled" | "config.cursor.platform_key_disabled" | "config.claude.added" | "config.claude.updated" | "config.claude.removed" | "member.invited" | "member.role_changed" | "member.removed";
|
|
3171
|
+
ActivityLogActorDto: {
|
|
3172
|
+
/** Format: uuid */
|
|
3173
|
+
userId: string;
|
|
3174
|
+
/** Format: email */
|
|
3175
|
+
email?: string | null;
|
|
3176
|
+
name?: string | null;
|
|
3177
|
+
};
|
|
3178
|
+
ActivityLogEntryDto: {
|
|
3179
|
+
/** Format: uuid */
|
|
3180
|
+
id: string;
|
|
3181
|
+
eventType: components["schemas"]["ActivityLogEventTypeDto"];
|
|
3182
|
+
/** @description Namespace prefix derived from event_type (e.g. "fix", "repo", "config"). */
|
|
3183
|
+
eventCategory: string;
|
|
3184
|
+
/** Format: date-time */
|
|
3185
|
+
occurredAt: string;
|
|
3186
|
+
/**
|
|
3187
|
+
* @description Whether the event was triggered by a human user, a batch/system process, or a webhook.
|
|
3188
|
+
* @enum {string}
|
|
3189
|
+
*/
|
|
3190
|
+
actorType: "user" | "system" | "webhook";
|
|
3191
|
+
actor?: components["schemas"]["ActivityLogActorDto"] | null;
|
|
3192
|
+
/** Format: uuid */
|
|
3193
|
+
repoId?: string | null;
|
|
3194
|
+
repoName?: string | null;
|
|
3195
|
+
/** Format: uuid */
|
|
3196
|
+
integrationId?: string | null;
|
|
3197
|
+
integrationType?: string | null;
|
|
3198
|
+
/**
|
|
3199
|
+
* Format: uuid
|
|
3200
|
+
* @description ID of the related fix request (fix.* events).
|
|
3201
|
+
*/
|
|
3202
|
+
fixRequestId?: string | null;
|
|
3203
|
+
/**
|
|
3204
|
+
* Format: uuid
|
|
3205
|
+
* @description ID of the related readiness issue (fix.* events).
|
|
3206
|
+
*/
|
|
3207
|
+
issueId?: string | null;
|
|
3208
|
+
/**
|
|
3209
|
+
* Format: uuid
|
|
3210
|
+
* @description ID of the related readiness run (readiness.* events).
|
|
3211
|
+
*/
|
|
3212
|
+
readinessRunId?: string | null;
|
|
3213
|
+
/** @description Event-specific supplementary data (before/after state, installation IDs, etc.). */
|
|
3214
|
+
metadata?: {
|
|
3215
|
+
[key: string]: unknown;
|
|
3216
|
+
} | null;
|
|
3217
|
+
};
|
|
3218
|
+
ActivityLogPageDto: components["schemas"]["PageMetaDto"] & {
|
|
3219
|
+
items: components["schemas"]["ActivityLogEntryDto"][];
|
|
3220
|
+
};
|
|
3123
3221
|
};
|
|
3124
3222
|
responses: {
|
|
3125
3223
|
/** @description Missing or invalid bearer token */
|
|
@@ -3341,6 +3439,12 @@ export type YourAiJourneyReadinessAggregateDto = components['schemas']['YourAiJo
|
|
|
3341
3439
|
export type YourAiJourneyAnalyticsDto = components['schemas']['YourAiJourneyAnalyticsDto'];
|
|
3342
3440
|
export type YourAiJourneyAiSpendWeekDto = components['schemas']['YourAiJourneyAiSpendWeekDto'];
|
|
3343
3441
|
export type YourAiJourneyAiSpendDto = components['schemas']['YourAiJourneyAiSpendDto'];
|
|
3442
|
+
export type PatchRepoArchiveBodyDto = components['schemas']['PatchRepoArchiveBodyDto'];
|
|
3443
|
+
export type PatchRepoArchiveResponseDto = components['schemas']['PatchRepoArchiveResponseDto'];
|
|
3444
|
+
export type ActivityLogEventTypeDto = components['schemas']['ActivityLogEventTypeDto'];
|
|
3445
|
+
export type ActivityLogActorDto = components['schemas']['ActivityLogActorDto'];
|
|
3446
|
+
export type ActivityLogEntryDto = components['schemas']['ActivityLogEntryDto'];
|
|
3447
|
+
export type ActivityLogPageDto = components['schemas']['ActivityLogPageDto'];
|
|
3344
3448
|
export type ResponseUnauthorized = components['responses']['Unauthorized'];
|
|
3345
3449
|
export type ResponseForbidden = components['responses']['Forbidden'];
|
|
3346
3450
|
export type ParameterWorkspaceId = components['parameters']['WorkspaceId'];
|
|
@@ -5537,6 +5641,8 @@ export interface operations {
|
|
|
5537
5641
|
search?: components["parameters"]["ReadinessRepoSearch"];
|
|
5538
5642
|
/** @description Exact language filter (e.g. `typescript`). */
|
|
5539
5643
|
language?: components["parameters"]["ReadinessRepoLanguage"];
|
|
5644
|
+
/** @description When `true`, includes Inactive (user-removed) repos alongside Active ones. Default is `false` (active only). */
|
|
5645
|
+
includeArchived?: boolean;
|
|
5540
5646
|
};
|
|
5541
5647
|
header?: never;
|
|
5542
5648
|
path: {
|
|
@@ -5751,6 +5857,62 @@ export interface operations {
|
|
|
5751
5857
|
};
|
|
5752
5858
|
};
|
|
5753
5859
|
};
|
|
5860
|
+
patchReadinessRepo: {
|
|
5861
|
+
parameters: {
|
|
5862
|
+
query?: never;
|
|
5863
|
+
header?: never;
|
|
5864
|
+
path: {
|
|
5865
|
+
workspaceId: components["parameters"]["WorkspaceId"];
|
|
5866
|
+
repoId: components["parameters"]["RepoId"];
|
|
5867
|
+
};
|
|
5868
|
+
cookie?: never;
|
|
5869
|
+
};
|
|
5870
|
+
requestBody: {
|
|
5871
|
+
content: {
|
|
5872
|
+
"application/json": components["schemas"]["PatchRepoArchiveBodyDto"];
|
|
5873
|
+
};
|
|
5874
|
+
};
|
|
5875
|
+
responses: {
|
|
5876
|
+
/** @description Repo status updated */
|
|
5877
|
+
200: {
|
|
5878
|
+
headers: {
|
|
5879
|
+
[name: string]: unknown;
|
|
5880
|
+
};
|
|
5881
|
+
content: {
|
|
5882
|
+
"application/json": components["schemas"]["PatchRepoArchiveResponseDto"];
|
|
5883
|
+
};
|
|
5884
|
+
};
|
|
5885
|
+
/** @description Malformed request body or repoId */
|
|
5886
|
+
400: {
|
|
5887
|
+
headers: {
|
|
5888
|
+
[name: string]: unknown;
|
|
5889
|
+
};
|
|
5890
|
+
content: {
|
|
5891
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
5892
|
+
};
|
|
5893
|
+
};
|
|
5894
|
+
401: components["responses"]["Unauthorized"];
|
|
5895
|
+
403: components["responses"]["Forbidden"];
|
|
5896
|
+
/** @description Workspace or repository not found */
|
|
5897
|
+
404: {
|
|
5898
|
+
headers: {
|
|
5899
|
+
[name: string]: unknown;
|
|
5900
|
+
};
|
|
5901
|
+
content: {
|
|
5902
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
5903
|
+
};
|
|
5904
|
+
};
|
|
5905
|
+
/** @description Conflict — scan in progress or repo already in the requested state */
|
|
5906
|
+
409: {
|
|
5907
|
+
headers: {
|
|
5908
|
+
[name: string]: unknown;
|
|
5909
|
+
};
|
|
5910
|
+
content: {
|
|
5911
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
5912
|
+
};
|
|
5913
|
+
};
|
|
5914
|
+
};
|
|
5915
|
+
};
|
|
5754
5916
|
listReadinessRepoRuns: {
|
|
5755
5917
|
parameters: {
|
|
5756
5918
|
query?: {
|
|
@@ -5854,6 +6016,67 @@ export interface operations {
|
|
|
5854
6016
|
};
|
|
5855
6017
|
};
|
|
5856
6018
|
};
|
|
6019
|
+
listWorkspaceActivity: {
|
|
6020
|
+
parameters: {
|
|
6021
|
+
query?: {
|
|
6022
|
+
/** @description Page size (default 25, max 100). */
|
|
6023
|
+
limit?: components["parameters"]["PaginationLimit"];
|
|
6024
|
+
/** @description Zero-based row offset into the filtered, sorted result set. */
|
|
6025
|
+
offset?: components["parameters"]["PaginationOffset"];
|
|
6026
|
+
/** @description Sort direction. */
|
|
6027
|
+
order?: components["parameters"]["PaginationOrder"];
|
|
6028
|
+
/** @description Filter to a specific event type. */
|
|
6029
|
+
eventType?: components["schemas"]["ActivityLogEventTypeDto"];
|
|
6030
|
+
/** @description Filter to events performed by a specific user (UUID). */
|
|
6031
|
+
actorUserId?: string;
|
|
6032
|
+
/** @description ISO-8601 lower bound on `occurredAt` (inclusive). */
|
|
6033
|
+
since?: string;
|
|
6034
|
+
/** @description ISO-8601 upper bound on `occurredAt` (inclusive). */
|
|
6035
|
+
until?: string;
|
|
6036
|
+
/** @description Filter by event namespace prefix (e.g. "fix", "repo", "integration", "readiness", "config", "member"). */
|
|
6037
|
+
eventCategory?: string;
|
|
6038
|
+
/** @description Case-insensitive substring filter applied across repo name, integration type, actor email, and actor display name. */
|
|
6039
|
+
search?: string;
|
|
6040
|
+
};
|
|
6041
|
+
header?: never;
|
|
6042
|
+
path: {
|
|
6043
|
+
workspaceId: components["parameters"]["WorkspaceId"];
|
|
6044
|
+
};
|
|
6045
|
+
cookie?: never;
|
|
6046
|
+
};
|
|
6047
|
+
requestBody?: never;
|
|
6048
|
+
responses: {
|
|
6049
|
+
/** @description Paginated activity log entries */
|
|
6050
|
+
200: {
|
|
6051
|
+
headers: {
|
|
6052
|
+
[name: string]: unknown;
|
|
6053
|
+
};
|
|
6054
|
+
content: {
|
|
6055
|
+
"application/json": components["schemas"]["ActivityLogPageDto"];
|
|
6056
|
+
};
|
|
6057
|
+
};
|
|
6058
|
+
/** @description Invalid query parameters */
|
|
6059
|
+
400: {
|
|
6060
|
+
headers: {
|
|
6061
|
+
[name: string]: unknown;
|
|
6062
|
+
};
|
|
6063
|
+
content: {
|
|
6064
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
6065
|
+
};
|
|
6066
|
+
};
|
|
6067
|
+
401: components["responses"]["Unauthorized"];
|
|
6068
|
+
403: components["responses"]["Forbidden"];
|
|
6069
|
+
/** @description Workspace does not exist */
|
|
6070
|
+
404: {
|
|
6071
|
+
headers: {
|
|
6072
|
+
[name: string]: unknown;
|
|
6073
|
+
};
|
|
6074
|
+
content: {
|
|
6075
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
6076
|
+
};
|
|
6077
|
+
};
|
|
6078
|
+
};
|
|
6079
|
+
};
|
|
5857
6080
|
getReadinessScoreHistory: {
|
|
5858
6081
|
parameters: {
|
|
5859
6082
|
query?: {
|