@thinkai/tai-api-contract 2.157.0 → 2.158.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/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.158.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}/...`.
|
|
@@ -6959,6 +6959,15 @@ paths:
|
|
|
6959
6959
|
fixed: 0
|
|
6960
6960
|
verificationGapCount: 0
|
|
6961
6961
|
verificationGaps: []
|
|
6962
|
+
blockedRepoCount: 0
|
|
6963
|
+
topBlockingRuleTitle: null
|
|
6964
|
+
topBlockingRuleRepoCount: 0
|
|
6965
|
+
fixProof:
|
|
6966
|
+
windowDays: 30
|
|
6967
|
+
mergeRatePercent: null
|
|
6968
|
+
medianDaysToMerge: null
|
|
6969
|
+
clearedCount: 0
|
|
6970
|
+
rows: []
|
|
6962
6971
|
dimensionAggregates: []
|
|
6963
6972
|
fixStatusSummary:
|
|
6964
6973
|
queued: 0
|
|
@@ -11515,7 +11524,7 @@ components:
|
|
|
11515
11524
|
description: Allowlisted repository sort field.
|
|
11516
11525
|
schema:
|
|
11517
11526
|
type: string
|
|
11518
|
-
enum: [repoName, overallScore, lastAnalyzed, language]
|
|
11527
|
+
enum: [repoName, overallScore, lastAnalyzed, language, blockingRule]
|
|
11519
11528
|
default: overallScore
|
|
11520
11529
|
CodeInsightsRepoSort:
|
|
11521
11530
|
name: sort
|
|
@@ -18471,6 +18480,15 @@ components:
|
|
|
18471
18480
|
scores; live CI health stays in SDLC Insights.
|
|
18472
18481
|
items:
|
|
18473
18482
|
$ref: "#/components/schemas/ScanImprovementDto"
|
|
18483
|
+
blockingRule:
|
|
18484
|
+
type: object
|
|
18485
|
+
nullable: true
|
|
18486
|
+
allOf:
|
|
18487
|
+
- $ref: "#/components/schemas/ReadinessBlockingRuleDto"
|
|
18488
|
+
description: >
|
|
18489
|
+
The one open gap or partial criterion on the latest succeeded scan that is not
|
|
18490
|
+
already fixed. Null when the repo is not blocked. Severity ranks first, then
|
|
18491
|
+
dimension weight, then rubric id.
|
|
18474
18492
|
|
|
18475
18493
|
LinkedRolePendingDto:
|
|
18476
18494
|
type: object
|
|
@@ -18649,10 +18667,27 @@ components:
|
|
|
18649
18667
|
description: See RepoReadinessScoreDto.scanImprovements.
|
|
18650
18668
|
items:
|
|
18651
18669
|
$ref: "#/components/schemas/ScanImprovementDto"
|
|
18670
|
+
blockingRule:
|
|
18671
|
+
type: object
|
|
18672
|
+
nullable: true
|
|
18673
|
+
allOf:
|
|
18674
|
+
- $ref: "#/components/schemas/ReadinessBlockingRuleDto"
|
|
18675
|
+
description: See RepoReadinessScoreDto.blockingRule.
|
|
18652
18676
|
|
|
18653
18677
|
AgenticFoundationDashboardSummaryDto:
|
|
18654
18678
|
type: object
|
|
18655
|
-
required:
|
|
18679
|
+
required:
|
|
18680
|
+
[
|
|
18681
|
+
repoCount,
|
|
18682
|
+
averageOverallScore,
|
|
18683
|
+
issueCount,
|
|
18684
|
+
criticalIssueCount,
|
|
18685
|
+
issuesByFixStatus,
|
|
18686
|
+
blockedRepoCount,
|
|
18687
|
+
topBlockingRuleTitle,
|
|
18688
|
+
topBlockingRuleRepoCount,
|
|
18689
|
+
fixProof,
|
|
18690
|
+
]
|
|
18656
18691
|
properties:
|
|
18657
18692
|
repoCount:
|
|
18658
18693
|
type: integer
|
|
@@ -18704,6 +18739,91 @@ components:
|
|
|
18704
18739
|
both gaps appears twice. Does not change averageOverallScore.
|
|
18705
18740
|
items:
|
|
18706
18741
|
$ref: "#/components/schemas/AgenticFoundationVerificationGapDto"
|
|
18742
|
+
blockedRepoCount:
|
|
18743
|
+
type: integer
|
|
18744
|
+
minimum: 0
|
|
18745
|
+
description: >
|
|
18746
|
+
Non-archived repos whose latest succeeded scan still has a gap or partial
|
|
18747
|
+
criterion that is not fixed. A repo with no open gap is not blocked.
|
|
18748
|
+
topBlockingRuleTitle:
|
|
18749
|
+
type: string
|
|
18750
|
+
nullable: true
|
|
18751
|
+
description: Rule title that blocks the most repos. Null when blockedRepoCount is 0.
|
|
18752
|
+
topBlockingRuleRepoCount:
|
|
18753
|
+
type: integer
|
|
18754
|
+
minimum: 0
|
|
18755
|
+
description: How many blocked repos share topBlockingRuleTitle.
|
|
18756
|
+
fixProof:
|
|
18757
|
+
$ref: "#/components/schemas/AgenticFoundationFixProofDto"
|
|
18758
|
+
|
|
18759
|
+
ReadinessBlockingRuleDto:
|
|
18760
|
+
type: object
|
|
18761
|
+
additionalProperties: false
|
|
18762
|
+
required: [rubricId, title, severity]
|
|
18763
|
+
properties:
|
|
18764
|
+
rubricId:
|
|
18765
|
+
type: string
|
|
18766
|
+
title:
|
|
18767
|
+
type: string
|
|
18768
|
+
severity:
|
|
18769
|
+
type: string
|
|
18770
|
+
enum: [critical, high, medium, low]
|
|
18771
|
+
|
|
18772
|
+
AgenticFoundationFixProofDto:
|
|
18773
|
+
type: object
|
|
18774
|
+
additionalProperties: false
|
|
18775
|
+
required: [windowDays, mergeRatePercent, medianDaysToMerge, clearedCount, rows]
|
|
18776
|
+
properties:
|
|
18777
|
+
windowDays:
|
|
18778
|
+
type: integer
|
|
18779
|
+
minimum: 1
|
|
18780
|
+
mergeRatePercent:
|
|
18781
|
+
type: integer
|
|
18782
|
+
minimum: 0
|
|
18783
|
+
maximum: 100
|
|
18784
|
+
nullable: true
|
|
18785
|
+
description: >
|
|
18786
|
+
Rounded percent of terminal fixes in the window that merged (merged / merged + failed).
|
|
18787
|
+
Null when there is no terminal fix.
|
|
18788
|
+
medianDaysToMerge:
|
|
18789
|
+
type: number
|
|
18790
|
+
nullable: true
|
|
18791
|
+
description: Median days from created_at to merge. Null when nothing merged in the window.
|
|
18792
|
+
clearedCount:
|
|
18793
|
+
type: integer
|
|
18794
|
+
minimum: 0
|
|
18795
|
+
description: Merged fixes in the window whose next scan marked the criterion met.
|
|
18796
|
+
rows:
|
|
18797
|
+
type: array
|
|
18798
|
+
maxItems: 10
|
|
18799
|
+
items:
|
|
18800
|
+
$ref: "#/components/schemas/AgenticFoundationFixProofRowDto"
|
|
18801
|
+
|
|
18802
|
+
AgenticFoundationFixProofRowDto:
|
|
18803
|
+
type: object
|
|
18804
|
+
additionalProperties: false
|
|
18805
|
+
required: [repoName, ruleTitle, scoreBefore, scoreAfter, cleared]
|
|
18806
|
+
properties:
|
|
18807
|
+
repoName:
|
|
18808
|
+
type: string
|
|
18809
|
+
ruleTitle:
|
|
18810
|
+
type: string
|
|
18811
|
+
scoreBefore:
|
|
18812
|
+
type: integer
|
|
18813
|
+
minimum: 0
|
|
18814
|
+
maximum: 100
|
|
18815
|
+
nullable: true
|
|
18816
|
+
scoreAfter:
|
|
18817
|
+
type: integer
|
|
18818
|
+
minimum: 0
|
|
18819
|
+
maximum: 100
|
|
18820
|
+
nullable: true
|
|
18821
|
+
cleared:
|
|
18822
|
+
type: boolean
|
|
18823
|
+
nullable: true
|
|
18824
|
+
description: >
|
|
18825
|
+
True when the first succeeded scan after the merge marked the criterion met.
|
|
18826
|
+
Null when that scan has not run yet.
|
|
18707
18827
|
|
|
18708
18828
|
AgenticFoundationVerificationGapDto:
|
|
18709
18829
|
type: object
|
package/package.json
CHANGED
package/src/generated/openapi.ts
CHANGED
|
@@ -7835,6 +7835,8 @@ export interface components {
|
|
|
7835
7835
|
linkedRoleAssessment?: components["schemas"]["LinkedRoleAssessmentDto"] | null;
|
|
7836
7836
|
/** @description Repo-level "Improve this scan" recommendations for Agentic Foundation CI setup (at most three). Omitted when the scan emitted none. Does not change criterion scores; live CI health stays in SDLC Insights. */
|
|
7837
7837
|
scanImprovements?: components["schemas"]["ScanImprovementDto"][];
|
|
7838
|
+
/** @description The one open gap or partial criterion on the latest succeeded scan that is not already fixed. Null when the repo is not blocked. Severity ranks first, then dimension weight, then rubric id. */
|
|
7839
|
+
blockingRule?: components["schemas"]["ReadinessBlockingRuleDto"] | null;
|
|
7838
7840
|
};
|
|
7839
7841
|
LinkedRolePendingDto: {
|
|
7840
7842
|
/** @description Topology role key, e.g. terraform | gitops | ci_templates | api_contracts. */
|
|
@@ -7915,6 +7917,8 @@ export interface components {
|
|
|
7915
7917
|
linkedRoleAssessment?: components["schemas"]["LinkedRoleAssessmentDto"] | null;
|
|
7916
7918
|
/** @description See RepoReadinessScoreDto.scanImprovements. */
|
|
7917
7919
|
scanImprovements?: components["schemas"]["ScanImprovementDto"][];
|
|
7920
|
+
/** @description See RepoReadinessScoreDto.blockingRule. */
|
|
7921
|
+
blockingRule?: components["schemas"]["ReadinessBlockingRuleDto"] | null;
|
|
7918
7922
|
};
|
|
7919
7923
|
AgenticFoundationDashboardSummaryDto: {
|
|
7920
7924
|
repoCount: number;
|
|
@@ -7936,6 +7940,37 @@ export interface components {
|
|
|
7936
7940
|
verificationGapCount?: number;
|
|
7937
7941
|
/** @description Up to 12 repo and reason pairs for verificationGapCount. A repo with both gaps appears twice. Does not change averageOverallScore. */
|
|
7938
7942
|
verificationGaps?: components["schemas"]["AgenticFoundationVerificationGapDto"][];
|
|
7943
|
+
/** @description Non-archived repos whose latest succeeded scan still has a gap or partial criterion that is not fixed. A repo with no open gap is not blocked. */
|
|
7944
|
+
blockedRepoCount: number;
|
|
7945
|
+
/** @description Rule title that blocks the most repos. Null when blockedRepoCount is 0. */
|
|
7946
|
+
topBlockingRuleTitle: string | null;
|
|
7947
|
+
/** @description How many blocked repos share topBlockingRuleTitle. */
|
|
7948
|
+
topBlockingRuleRepoCount: number;
|
|
7949
|
+
fixProof: components["schemas"]["AgenticFoundationFixProofDto"];
|
|
7950
|
+
};
|
|
7951
|
+
ReadinessBlockingRuleDto: {
|
|
7952
|
+
rubricId: string;
|
|
7953
|
+
title: string;
|
|
7954
|
+
/** @enum {string} */
|
|
7955
|
+
severity: "critical" | "high" | "medium" | "low";
|
|
7956
|
+
};
|
|
7957
|
+
AgenticFoundationFixProofDto: {
|
|
7958
|
+
windowDays: number;
|
|
7959
|
+
/** @description Rounded percent of terminal fixes in the window that merged (merged / merged + failed). Null when there is no terminal fix. */
|
|
7960
|
+
mergeRatePercent: number | null;
|
|
7961
|
+
/** @description Median days from created_at to merge. Null when nothing merged in the window. */
|
|
7962
|
+
medianDaysToMerge: number | null;
|
|
7963
|
+
/** @description Merged fixes in the window whose next scan marked the criterion met. */
|
|
7964
|
+
clearedCount: number;
|
|
7965
|
+
rows: components["schemas"]["AgenticFoundationFixProofRowDto"][];
|
|
7966
|
+
};
|
|
7967
|
+
AgenticFoundationFixProofRowDto: {
|
|
7968
|
+
repoName: string;
|
|
7969
|
+
ruleTitle: string;
|
|
7970
|
+
scoreBefore: number | null;
|
|
7971
|
+
scoreAfter: number | null;
|
|
7972
|
+
/** @description True when the first succeeded scan after the merge marked the criterion met. Null when that scan has not run yet. */
|
|
7973
|
+
cleared: boolean | null;
|
|
7939
7974
|
};
|
|
7940
7975
|
AgenticFoundationVerificationGapDto: {
|
|
7941
7976
|
repoName: string;
|
|
@@ -10801,7 +10836,7 @@ export interface components {
|
|
|
10801
10836
|
/** @description Sort direction. */
|
|
10802
10837
|
PaginationOrder: "asc" | "desc";
|
|
10803
10838
|
/** @description Allowlisted repository sort field. */
|
|
10804
|
-
ReadinessRepoSort: "repoName" | "overallScore" | "lastAnalyzed" | "language";
|
|
10839
|
+
ReadinessRepoSort: "repoName" | "overallScore" | "lastAnalyzed" | "language" | "blockingRule";
|
|
10805
10840
|
/** @description Allowlisted Code Insights repo sort field. */
|
|
10806
10841
|
CodeInsightsRepoSort: "repoName" | "locTotal" | "ccAvg" | "dupPct" | "lastMeasuredAt";
|
|
10807
10842
|
/** @description Case-insensitive substring filter on repo name / provider slug. */
|
|
@@ -11112,6 +11147,9 @@ export type LinkedRolePendingDto = components['schemas']['LinkedRolePendingDto']
|
|
|
11112
11147
|
export type LinkedRoleAssessmentDto = components['schemas']['LinkedRoleAssessmentDto'];
|
|
11113
11148
|
export type RepoReadinessScoreDetailDto = components['schemas']['RepoReadinessScoreDetailDto'];
|
|
11114
11149
|
export type AgenticFoundationDashboardSummaryDto = components['schemas']['AgenticFoundationDashboardSummaryDto'];
|
|
11150
|
+
export type ReadinessBlockingRuleDto = components['schemas']['ReadinessBlockingRuleDto'];
|
|
11151
|
+
export type AgenticFoundationFixProofDto = components['schemas']['AgenticFoundationFixProofDto'];
|
|
11152
|
+
export type AgenticFoundationFixProofRowDto = components['schemas']['AgenticFoundationFixProofRowDto'];
|
|
11115
11153
|
export type AgenticFoundationVerificationGapDto = components['schemas']['AgenticFoundationVerificationGapDto'];
|
|
11116
11154
|
export type PageMetaDto = components['schemas']['PageMetaDto'];
|
|
11117
11155
|
export type ReadinessEligibilityLimitsDto = components['schemas']['ReadinessEligibilityLimitsDto'];
|