@thinkai/tai-api-contract 2.4.0 → 2.4.3

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.
@@ -605,7 +605,10 @@ export interface paths {
605
605
  path?: never;
606
606
  cookie?: never;
607
607
  };
608
- /** Single repo readiness */
608
+ /**
609
+ * Single repo readiness
610
+ * @description Returns one stored repository scorecard with all eight dimensions and nested issues. Unknown `repoId` or a repo that belongs to another workspace returns `404` (no cross-tenant leakage).
611
+ */
609
612
  get: operations["getReadinessRepo"];
610
613
  put?: never;
611
614
  post?: never;
@@ -615,6 +618,206 @@ export interface paths {
615
618
  patch?: never;
616
619
  trace?: never;
617
620
  };
621
+ "/workspaces/{workspaceId}/agentic-foundation/dashboard": {
622
+ parameters: {
623
+ query?: never;
624
+ header?: never;
625
+ path?: never;
626
+ cookie?: never;
627
+ };
628
+ /**
629
+ * Agentic Foundation dashboard
630
+ * @description Returns stored repository readiness scorecards plus a flattened issue queue for the Agentic Foundation dashboard surfaces. This is read-only and does not run scoring on the request path (issue #279). Field `generatedAt` is the server timestamp when this JSON payload was assembled; it is not the same as per-repo `lastAnalyzed` on `RepoReadinessScoreDto`.
631
+ */
632
+ get: operations["getAgenticFoundationDashboard"];
633
+ put?: never;
634
+ post?: never;
635
+ delete?: never;
636
+ options?: never;
637
+ head?: never;
638
+ patch?: never;
639
+ trace?: never;
640
+ };
641
+ "/workspaces/{workspaceId}/agentic-foundation/agentic-readiness": {
642
+ parameters: {
643
+ query?: never;
644
+ header?: never;
645
+ path?: never;
646
+ cookie?: never;
647
+ };
648
+ /**
649
+ * Agentic readiness pillar (stored dimension slice)
650
+ * @description Returns `RepoReadinessScoreDto` rows with only the `ai-agent-readiness` dimension populated per repo. Same auth and persistence source as `GET .../readiness/repos` (issue #280).
651
+ */
652
+ get: operations["getAgenticFoundationAgenticReadiness"];
653
+ put?: never;
654
+ post?: never;
655
+ delete?: never;
656
+ options?: never;
657
+ head?: never;
658
+ patch?: never;
659
+ trace?: never;
660
+ };
661
+ "/workspaces/{workspaceId}/agentic-foundation/repository-health": {
662
+ parameters: {
663
+ query?: never;
664
+ header?: never;
665
+ path?: never;
666
+ cookie?: never;
667
+ };
668
+ /**
669
+ * Repository health pillar (repo-hygiene slice)
670
+ * @description Returns per-repo `repo-hygiene` dimension only (issue
671
+ */
672
+ get: operations["getAgenticFoundationRepositoryHealth"];
673
+ put?: never;
674
+ post?: never;
675
+ delete?: never;
676
+ options?: never;
677
+ head?: never;
678
+ patch?: never;
679
+ trace?: never;
680
+ };
681
+ "/workspaces/{workspaceId}/agentic-foundation/codebase-quality": {
682
+ parameters: {
683
+ query?: never;
684
+ header?: never;
685
+ path?: never;
686
+ cookie?: never;
687
+ };
688
+ /**
689
+ * Codebase quality pillar (stack-quality slice)
690
+ * @description Returns per-repo `stack-quality` dimension only (issue
691
+ */
692
+ get: operations["getAgenticFoundationCodebaseQuality"];
693
+ put?: never;
694
+ post?: never;
695
+ delete?: never;
696
+ options?: never;
697
+ head?: never;
698
+ patch?: never;
699
+ trace?: never;
700
+ };
701
+ "/workspaces/{workspaceId}/agentic-foundation/test-qa": {
702
+ parameters: {
703
+ query?: never;
704
+ header?: never;
705
+ path?: never;
706
+ cookie?: never;
707
+ };
708
+ /**
709
+ * Test and QA pillar (tests-qa slice)
710
+ * @description Returns per-repo `tests-qa` dimension only (issue
711
+ */
712
+ get: operations["getAgenticFoundationTestQa"];
713
+ put?: never;
714
+ post?: never;
715
+ delete?: never;
716
+ options?: never;
717
+ head?: never;
718
+ patch?: never;
719
+ trace?: never;
720
+ };
721
+ "/workspaces/{workspaceId}/agentic-foundation/observability": {
722
+ parameters: {
723
+ query?: never;
724
+ header?: never;
725
+ path?: never;
726
+ cookie?: never;
727
+ };
728
+ /**
729
+ * Observability pillar (observability slice)
730
+ * @description Returns per-repo `observability` dimension only (issue
731
+ */
732
+ get: operations["getAgenticFoundationObservability"];
733
+ put?: never;
734
+ post?: never;
735
+ delete?: never;
736
+ options?: never;
737
+ head?: never;
738
+ patch?: never;
739
+ trace?: never;
740
+ };
741
+ "/workspaces/{workspaceId}/agentic-foundation/api-contract": {
742
+ parameters: {
743
+ query?: never;
744
+ header?: never;
745
+ path?: never;
746
+ cookie?: never;
747
+ };
748
+ /**
749
+ * API contract pillar (api-contracts slice)
750
+ * @description Returns per-repo `api-contracts` dimension only (issue
751
+ */
752
+ get: operations["getAgenticFoundationApiContract"];
753
+ put?: never;
754
+ post?: never;
755
+ delete?: never;
756
+ options?: never;
757
+ head?: never;
758
+ patch?: never;
759
+ trace?: never;
760
+ };
761
+ "/workspaces/{workspaceId}/agentic-foundation/platform-governance": {
762
+ parameters: {
763
+ query?: never;
764
+ header?: never;
765
+ path?: never;
766
+ cookie?: never;
767
+ };
768
+ /**
769
+ * Platform governance pillar (platform-governance slice)
770
+ * @description Returns per-repo `platform-governance` dimension only (issue
771
+ */
772
+ get: operations["getAgenticFoundationPlatformGovernance"];
773
+ put?: never;
774
+ post?: never;
775
+ delete?: never;
776
+ options?: never;
777
+ head?: never;
778
+ patch?: never;
779
+ trace?: never;
780
+ };
781
+ "/workspaces/{workspaceId}/agentic-foundation/delivery-governance": {
782
+ parameters: {
783
+ query?: never;
784
+ header?: never;
785
+ path?: never;
786
+ cookie?: never;
787
+ };
788
+ /**
789
+ * Delivery governance pillar (delivery slice)
790
+ * @description Returns per-repo `delivery` dimension only (issue
791
+ */
792
+ get: operations["getAgenticFoundationDeliveryGovernance"];
793
+ put?: never;
794
+ post?: never;
795
+ delete?: never;
796
+ options?: never;
797
+ head?: never;
798
+ patch?: never;
799
+ trace?: never;
800
+ };
801
+ "/workspaces/{workspaceId}/agentic-foundation/ai-resolution-hub": {
802
+ parameters: {
803
+ query?: never;
804
+ header?: never;
805
+ path?: never;
806
+ cookie?: never;
807
+ };
808
+ /**
809
+ * AI resolution hub (full readiness scorecards)
810
+ * @description Returns the same payload as `GET .../readiness/repos` (all dimensions per repo) for cross-pillar hub views (issue #288).
811
+ */
812
+ get: operations["getAgenticFoundationAiResolutionHub"];
813
+ put?: never;
814
+ post?: never;
815
+ delete?: never;
816
+ options?: never;
817
+ head?: never;
818
+ patch?: never;
819
+ trace?: never;
820
+ };
618
821
  "/workspaces/{workspaceId}/readiness/dimensions": {
619
822
  parameters: {
620
823
  query?: never;
@@ -622,7 +825,10 @@ export interface paths {
622
825
  path?: never;
623
826
  cookie?: never;
624
827
  };
625
- /** Readiness dimensions catalog */
828
+ /**
829
+ * Readiness dimensions catalog
830
+ * @description Returns static rubric metadata (id, name, description, maxScore) aligned with the readiness scanner dimensions. Does not run scoring on the request path.
831
+ */
626
832
  get: operations["listReadinessDimensions"];
627
833
  put?: never;
628
834
  post?: never;
@@ -639,10 +845,16 @@ export interface paths {
639
845
  path?: never;
640
846
  cookie?: never;
641
847
  };
642
- /** List fix requests */
848
+ /**
849
+ * List fix requests
850
+ * @description Returns persisted fix-queue rows for the workspace (newest first). Empty array when none exist.
851
+ */
643
852
  get: operations["listReadinessFixes"];
644
853
  put?: never;
645
- /** Enqueue fix for an issue */
854
+ /**
855
+ * Enqueue fix for an issue
856
+ * @description Creates a fix request with `status: queued` when `issueId` belongs to `repoId` in this workspace. Requires workspace editor or admin. Re-posting the same `issueId` and `repoId` returns the existing row (idempotent).
857
+ */
646
858
  post: operations["postReadinessFix"];
647
859
  delete?: never;
648
860
  options?: never;
@@ -1188,6 +1400,11 @@ export interface components {
1188
1400
  };
1189
1401
  /** @enum {string} */
1190
1402
  ReadinessRunStatusDto: "queued" | "running" | "succeeded" | "failed" | "partial_failed";
1403
+ /**
1404
+ * @description Whether an AI readiness analysis run is queued or in progress for this repository slug. `idle` means no `queued`/`running` row exists in `tai_workspace_readiness_runs`.
1405
+ * @enum {string}
1406
+ */
1407
+ ReadinessRepoAnalysisStatusDto: "idle" | "queued" | "running";
1191
1408
  ReadinessRunSummaryDto: {
1192
1409
  /** Format: uuid */
1193
1410
  runId: string;
@@ -1233,6 +1450,43 @@ export interface components {
1233
1450
  /** Format: uuid */
1234
1451
  teamId?: string | null;
1235
1452
  provider: components["schemas"]["RepoProviderDto"];
1453
+ analysisStatus: components["schemas"]["ReadinessRepoAnalysisStatusDto"];
1454
+ /**
1455
+ * Format: uuid
1456
+ * @description Present when `analysisStatus` is `queued` or `running`; use with `GET .../readiness/runs/{runId}`.
1457
+ */
1458
+ activeRunId?: string | null;
1459
+ };
1460
+ AgenticFoundationDashboardSummaryDto: {
1461
+ repoCount: number;
1462
+ averageOverallScore: number;
1463
+ issueCount: number;
1464
+ criticalIssueCount: number;
1465
+ };
1466
+ AgenticFoundationDashboardIssueDto: {
1467
+ /** Format: uuid */
1468
+ id: string;
1469
+ /** Format: uuid */
1470
+ repoId: string;
1471
+ repoName: string;
1472
+ provider: components["schemas"]["RepoProviderDto"];
1473
+ dimensionId: components["schemas"]["ReadinessDimensionId"];
1474
+ /** @enum {string} */
1475
+ severity: "critical" | "high" | "medium" | "low";
1476
+ title: string;
1477
+ description: string;
1478
+ filePath: string | null;
1479
+ /** @enum {string} */
1480
+ fixStatus: "open" | "pr-pending" | "fixed";
1481
+ };
1482
+ AgenticFoundationDashboardDto: {
1483
+ /** Format: uuid */
1484
+ workspaceId: string;
1485
+ /** Format: date-time */
1486
+ generatedAt: string;
1487
+ summary: components["schemas"]["AgenticFoundationDashboardSummaryDto"];
1488
+ repos: components["schemas"]["RepoReadinessScoreDto"][];
1489
+ issueQueue: components["schemas"]["AgenticFoundationDashboardIssueDto"][];
1236
1490
  };
1237
1491
  FixRequestDto: {
1238
1492
  id: string;
@@ -1250,7 +1504,15 @@ export interface components {
1250
1504
  createdAt: string;
1251
1505
  };
1252
1506
  CreateFixRequestBodyDto: {
1507
+ /**
1508
+ * Format: uuid
1509
+ * @description Readiness issue id from stored scorecard data
1510
+ */
1253
1511
  issueId: string;
1512
+ /**
1513
+ * Format: uuid
1514
+ * @description Workspace repository id that owns the issue
1515
+ */
1254
1516
  repoId: string;
1255
1517
  };
1256
1518
  PhaseRoleDto: {
@@ -1482,10 +1744,14 @@ export type RepoProviderDto = components['schemas']['RepoProviderDto'];
1482
1744
  export type ReadinessAnalyzeBodyDto = components['schemas']['ReadinessAnalyzeBodyDto'];
1483
1745
  export type ReadinessAnalyzeResponseDto = components['schemas']['ReadinessAnalyzeResponseDto'];
1484
1746
  export type ReadinessRunStatusDto = components['schemas']['ReadinessRunStatusDto'];
1747
+ export type ReadinessRepoAnalysisStatusDto = components['schemas']['ReadinessRepoAnalysisStatusDto'];
1485
1748
  export type ReadinessRunSummaryDto = components['schemas']['ReadinessRunSummaryDto'];
1486
1749
  export type ReadinessIssueDto = components['schemas']['ReadinessIssueDto'];
1487
1750
  export type DimensionScoreDto = components['schemas']['DimensionScoreDto'];
1488
1751
  export type RepoReadinessScoreDto = components['schemas']['RepoReadinessScoreDto'];
1752
+ export type AgenticFoundationDashboardSummaryDto = components['schemas']['AgenticFoundationDashboardSummaryDto'];
1753
+ export type AgenticFoundationDashboardIssueDto = components['schemas']['AgenticFoundationDashboardIssueDto'];
1754
+ export type AgenticFoundationDashboardDto = components['schemas']['AgenticFoundationDashboardDto'];
1489
1755
  export type FixRequestDto = components['schemas']['FixRequestDto'];
1490
1756
  export type CreateFixRequestBodyDto = components['schemas']['CreateFixRequestBodyDto'];
1491
1757
  export type PhaseRoleDto = components['schemas']['PhaseRoleDto'];
@@ -2924,10 +3190,29 @@ export interface operations {
2924
3190
  "application/json": components["schemas"]["RepoReadinessScoreDto"];
2925
3191
  };
2926
3192
  };
3193
+ /** @description Malformed `repoId` (not a UUID) */
3194
+ 400: {
3195
+ headers: {
3196
+ [name: string]: unknown;
3197
+ };
3198
+ content: {
3199
+ "application/json": components["schemas"]["ErrorMessageDto"];
3200
+ };
3201
+ };
2927
3202
  401: components["responses"]["Unauthorized"];
3203
+ 403: components["responses"]["Forbidden"];
3204
+ /** @description Workspace or repository not found */
3205
+ 404: {
3206
+ headers: {
3207
+ [name: string]: unknown;
3208
+ };
3209
+ content: {
3210
+ "application/json": components["schemas"]["ErrorMessageDto"];
3211
+ };
3212
+ };
2928
3213
  };
2929
3214
  };
2930
- listReadinessDimensions: {
3215
+ getAgenticFoundationDashboard: {
2931
3216
  parameters: {
2932
3217
  query?: never;
2933
3218
  header?: never;
@@ -2938,19 +3223,29 @@ export interface operations {
2938
3223
  };
2939
3224
  requestBody?: never;
2940
3225
  responses: {
2941
- /** @description Dimensions */
3226
+ /** @description Dashboard scorecards and issue queue */
2942
3227
  200: {
2943
3228
  headers: {
2944
3229
  [name: string]: unknown;
2945
3230
  };
2946
3231
  content: {
2947
- "application/json": components["schemas"]["ReadinessDimensionDto"][];
3232
+ "application/json": components["schemas"]["AgenticFoundationDashboardDto"];
2948
3233
  };
2949
3234
  };
2950
3235
  401: components["responses"]["Unauthorized"];
3236
+ 403: components["responses"]["Forbidden"];
3237
+ /** @description Workspace does not exist */
3238
+ 404: {
3239
+ headers: {
3240
+ [name: string]: unknown;
3241
+ };
3242
+ content: {
3243
+ "application/json": components["schemas"]["ErrorMessageDto"];
3244
+ };
3245
+ };
2951
3246
  };
2952
3247
  };
2953
- listReadinessFixes: {
3248
+ getAgenticFoundationAgenticReadiness: {
2954
3249
  parameters: {
2955
3250
  query?: never;
2956
3251
  header?: never;
@@ -2961,19 +3256,29 @@ export interface operations {
2961
3256
  };
2962
3257
  requestBody?: never;
2963
3258
  responses: {
2964
- /** @description Fix queue */
3259
+ /** @description Repositories with ai-agent-readiness slice */
2965
3260
  200: {
2966
3261
  headers: {
2967
3262
  [name: string]: unknown;
2968
3263
  };
2969
3264
  content: {
2970
- "application/json": components["schemas"]["FixRequestDto"][];
3265
+ "application/json": components["schemas"]["RepoReadinessScoreDto"][];
2971
3266
  };
2972
3267
  };
2973
3268
  401: components["responses"]["Unauthorized"];
3269
+ 403: components["responses"]["Forbidden"];
3270
+ /** @description Workspace does not exist */
3271
+ 404: {
3272
+ headers: {
3273
+ [name: string]: unknown;
3274
+ };
3275
+ content: {
3276
+ "application/json": components["schemas"]["ErrorMessageDto"];
3277
+ };
3278
+ };
2974
3279
  };
2975
3280
  };
2976
- postReadinessFix: {
3281
+ getAgenticFoundationRepositoryHealth: {
2977
3282
  parameters: {
2978
3283
  query?: never;
2979
3284
  header?: never;
@@ -2982,22 +3287,371 @@ export interface operations {
2982
3287
  };
2983
3288
  cookie?: never;
2984
3289
  };
2985
- requestBody: {
2986
- content: {
2987
- "application/json": components["schemas"]["CreateFixRequestBodyDto"];
2988
- };
2989
- };
3290
+ requestBody?: never;
2990
3291
  responses: {
2991
- /** @description Fix request created */
3292
+ /** @description Repositories with repo-hygiene slice */
2992
3293
  200: {
2993
3294
  headers: {
2994
3295
  [name: string]: unknown;
2995
3296
  };
2996
3297
  content: {
2997
- "application/json": components["schemas"]["FixRequestDto"];
3298
+ "application/json": components["schemas"]["RepoReadinessScoreDto"][];
2998
3299
  };
2999
3300
  };
3000
3301
  401: components["responses"]["Unauthorized"];
3302
+ 403: components["responses"]["Forbidden"];
3303
+ /** @description Workspace does not exist */
3304
+ 404: {
3305
+ headers: {
3306
+ [name: string]: unknown;
3307
+ };
3308
+ content: {
3309
+ "application/json": components["schemas"]["ErrorMessageDto"];
3310
+ };
3311
+ };
3312
+ };
3313
+ };
3314
+ getAgenticFoundationCodebaseQuality: {
3315
+ parameters: {
3316
+ query?: never;
3317
+ header?: never;
3318
+ path: {
3319
+ workspaceId: components["parameters"]["WorkspaceId"];
3320
+ };
3321
+ cookie?: never;
3322
+ };
3323
+ requestBody?: never;
3324
+ responses: {
3325
+ /** @description Repositories with stack-quality slice */
3326
+ 200: {
3327
+ headers: {
3328
+ [name: string]: unknown;
3329
+ };
3330
+ content: {
3331
+ "application/json": components["schemas"]["RepoReadinessScoreDto"][];
3332
+ };
3333
+ };
3334
+ 401: components["responses"]["Unauthorized"];
3335
+ 403: components["responses"]["Forbidden"];
3336
+ /** @description Workspace does not exist */
3337
+ 404: {
3338
+ headers: {
3339
+ [name: string]: unknown;
3340
+ };
3341
+ content: {
3342
+ "application/json": components["schemas"]["ErrorMessageDto"];
3343
+ };
3344
+ };
3345
+ };
3346
+ };
3347
+ getAgenticFoundationTestQa: {
3348
+ parameters: {
3349
+ query?: never;
3350
+ header?: never;
3351
+ path: {
3352
+ workspaceId: components["parameters"]["WorkspaceId"];
3353
+ };
3354
+ cookie?: never;
3355
+ };
3356
+ requestBody?: never;
3357
+ responses: {
3358
+ /** @description Repositories with tests-qa slice */
3359
+ 200: {
3360
+ headers: {
3361
+ [name: string]: unknown;
3362
+ };
3363
+ content: {
3364
+ "application/json": components["schemas"]["RepoReadinessScoreDto"][];
3365
+ };
3366
+ };
3367
+ 401: components["responses"]["Unauthorized"];
3368
+ 403: components["responses"]["Forbidden"];
3369
+ /** @description Workspace does not exist */
3370
+ 404: {
3371
+ headers: {
3372
+ [name: string]: unknown;
3373
+ };
3374
+ content: {
3375
+ "application/json": components["schemas"]["ErrorMessageDto"];
3376
+ };
3377
+ };
3378
+ };
3379
+ };
3380
+ getAgenticFoundationObservability: {
3381
+ parameters: {
3382
+ query?: never;
3383
+ header?: never;
3384
+ path: {
3385
+ workspaceId: components["parameters"]["WorkspaceId"];
3386
+ };
3387
+ cookie?: never;
3388
+ };
3389
+ requestBody?: never;
3390
+ responses: {
3391
+ /** @description Repositories with observability slice */
3392
+ 200: {
3393
+ headers: {
3394
+ [name: string]: unknown;
3395
+ };
3396
+ content: {
3397
+ "application/json": components["schemas"]["RepoReadinessScoreDto"][];
3398
+ };
3399
+ };
3400
+ 401: components["responses"]["Unauthorized"];
3401
+ 403: components["responses"]["Forbidden"];
3402
+ /** @description Workspace does not exist */
3403
+ 404: {
3404
+ headers: {
3405
+ [name: string]: unknown;
3406
+ };
3407
+ content: {
3408
+ "application/json": components["schemas"]["ErrorMessageDto"];
3409
+ };
3410
+ };
3411
+ };
3412
+ };
3413
+ getAgenticFoundationApiContract: {
3414
+ parameters: {
3415
+ query?: never;
3416
+ header?: never;
3417
+ path: {
3418
+ workspaceId: components["parameters"]["WorkspaceId"];
3419
+ };
3420
+ cookie?: never;
3421
+ };
3422
+ requestBody?: never;
3423
+ responses: {
3424
+ /** @description Repositories with api-contracts slice */
3425
+ 200: {
3426
+ headers: {
3427
+ [name: string]: unknown;
3428
+ };
3429
+ content: {
3430
+ "application/json": components["schemas"]["RepoReadinessScoreDto"][];
3431
+ };
3432
+ };
3433
+ 401: components["responses"]["Unauthorized"];
3434
+ 403: components["responses"]["Forbidden"];
3435
+ /** @description Workspace does not exist */
3436
+ 404: {
3437
+ headers: {
3438
+ [name: string]: unknown;
3439
+ };
3440
+ content: {
3441
+ "application/json": components["schemas"]["ErrorMessageDto"];
3442
+ };
3443
+ };
3444
+ };
3445
+ };
3446
+ getAgenticFoundationPlatformGovernance: {
3447
+ parameters: {
3448
+ query?: never;
3449
+ header?: never;
3450
+ path: {
3451
+ workspaceId: components["parameters"]["WorkspaceId"];
3452
+ };
3453
+ cookie?: never;
3454
+ };
3455
+ requestBody?: never;
3456
+ responses: {
3457
+ /** @description Repositories with platform-governance slice */
3458
+ 200: {
3459
+ headers: {
3460
+ [name: string]: unknown;
3461
+ };
3462
+ content: {
3463
+ "application/json": components["schemas"]["RepoReadinessScoreDto"][];
3464
+ };
3465
+ };
3466
+ 401: components["responses"]["Unauthorized"];
3467
+ 403: components["responses"]["Forbidden"];
3468
+ /** @description Workspace does not exist */
3469
+ 404: {
3470
+ headers: {
3471
+ [name: string]: unknown;
3472
+ };
3473
+ content: {
3474
+ "application/json": components["schemas"]["ErrorMessageDto"];
3475
+ };
3476
+ };
3477
+ };
3478
+ };
3479
+ getAgenticFoundationDeliveryGovernance: {
3480
+ parameters: {
3481
+ query?: never;
3482
+ header?: never;
3483
+ path: {
3484
+ workspaceId: components["parameters"]["WorkspaceId"];
3485
+ };
3486
+ cookie?: never;
3487
+ };
3488
+ requestBody?: never;
3489
+ responses: {
3490
+ /** @description Repositories with delivery slice */
3491
+ 200: {
3492
+ headers: {
3493
+ [name: string]: unknown;
3494
+ };
3495
+ content: {
3496
+ "application/json": components["schemas"]["RepoReadinessScoreDto"][];
3497
+ };
3498
+ };
3499
+ 401: components["responses"]["Unauthorized"];
3500
+ 403: components["responses"]["Forbidden"];
3501
+ /** @description Workspace does not exist */
3502
+ 404: {
3503
+ headers: {
3504
+ [name: string]: unknown;
3505
+ };
3506
+ content: {
3507
+ "application/json": components["schemas"]["ErrorMessageDto"];
3508
+ };
3509
+ };
3510
+ };
3511
+ };
3512
+ getAgenticFoundationAiResolutionHub: {
3513
+ parameters: {
3514
+ query?: never;
3515
+ header?: never;
3516
+ path: {
3517
+ workspaceId: components["parameters"]["WorkspaceId"];
3518
+ };
3519
+ cookie?: never;
3520
+ };
3521
+ requestBody?: never;
3522
+ responses: {
3523
+ /** @description Full repository readiness scorecards */
3524
+ 200: {
3525
+ headers: {
3526
+ [name: string]: unknown;
3527
+ };
3528
+ content: {
3529
+ "application/json": components["schemas"]["RepoReadinessScoreDto"][];
3530
+ };
3531
+ };
3532
+ 401: components["responses"]["Unauthorized"];
3533
+ 403: components["responses"]["Forbidden"];
3534
+ /** @description Workspace does not exist */
3535
+ 404: {
3536
+ headers: {
3537
+ [name: string]: unknown;
3538
+ };
3539
+ content: {
3540
+ "application/json": components["schemas"]["ErrorMessageDto"];
3541
+ };
3542
+ };
3543
+ };
3544
+ };
3545
+ listReadinessDimensions: {
3546
+ parameters: {
3547
+ query?: never;
3548
+ header?: never;
3549
+ path: {
3550
+ workspaceId: components["parameters"]["WorkspaceId"];
3551
+ };
3552
+ cookie?: never;
3553
+ };
3554
+ requestBody?: never;
3555
+ responses: {
3556
+ /** @description Dimensions */
3557
+ 200: {
3558
+ headers: {
3559
+ [name: string]: unknown;
3560
+ };
3561
+ content: {
3562
+ "application/json": components["schemas"]["ReadinessDimensionDto"][];
3563
+ };
3564
+ };
3565
+ 401: components["responses"]["Unauthorized"];
3566
+ 403: components["responses"]["Forbidden"];
3567
+ /** @description Workspace does not exist */
3568
+ 404: {
3569
+ headers: {
3570
+ [name: string]: unknown;
3571
+ };
3572
+ content: {
3573
+ "application/json": components["schemas"]["ErrorMessageDto"];
3574
+ };
3575
+ };
3576
+ };
3577
+ };
3578
+ listReadinessFixes: {
3579
+ parameters: {
3580
+ query?: never;
3581
+ header?: never;
3582
+ path: {
3583
+ workspaceId: components["parameters"]["WorkspaceId"];
3584
+ };
3585
+ cookie?: never;
3586
+ };
3587
+ requestBody?: never;
3588
+ responses: {
3589
+ /** @description Fix queue */
3590
+ 200: {
3591
+ headers: {
3592
+ [name: string]: unknown;
3593
+ };
3594
+ content: {
3595
+ "application/json": components["schemas"]["FixRequestDto"][];
3596
+ };
3597
+ };
3598
+ 401: components["responses"]["Unauthorized"];
3599
+ 403: components["responses"]["Forbidden"];
3600
+ /** @description Workspace does not exist */
3601
+ 404: {
3602
+ headers: {
3603
+ [name: string]: unknown;
3604
+ };
3605
+ content: {
3606
+ "application/json": components["schemas"]["ErrorMessageDto"];
3607
+ };
3608
+ };
3609
+ };
3610
+ };
3611
+ postReadinessFix: {
3612
+ parameters: {
3613
+ query?: never;
3614
+ header?: never;
3615
+ path: {
3616
+ workspaceId: components["parameters"]["WorkspaceId"];
3617
+ };
3618
+ cookie?: never;
3619
+ };
3620
+ requestBody: {
3621
+ content: {
3622
+ "application/json": components["schemas"]["CreateFixRequestBodyDto"];
3623
+ };
3624
+ };
3625
+ responses: {
3626
+ /** @description Fix request created or existing row returned */
3627
+ 200: {
3628
+ headers: {
3629
+ [name: string]: unknown;
3630
+ };
3631
+ content: {
3632
+ "application/json": components["schemas"]["FixRequestDto"];
3633
+ };
3634
+ };
3635
+ /** @description Invalid body or malformed `repoId` (not a UUID) */
3636
+ 400: {
3637
+ headers: {
3638
+ [name: string]: unknown;
3639
+ };
3640
+ content: {
3641
+ "application/json": components["schemas"]["ErrorMessageDto"];
3642
+ };
3643
+ };
3644
+ 401: components["responses"]["Unauthorized"];
3645
+ 403: components["responses"]["Forbidden"];
3646
+ /** @description Workspace not found, or issue/repo pair not in workspace */
3647
+ 404: {
3648
+ headers: {
3649
+ [name: string]: unknown;
3650
+ };
3651
+ content: {
3652
+ "application/json": components["schemas"]["ErrorMessageDto"];
3653
+ };
3654
+ };
3001
3655
  };
3002
3656
  };
3003
3657
  getSquad: {