@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.
@@ -7834,6 +7834,8 @@ export interface components {
7834
7834
  linkedRoleAssessment?: components["schemas"]["LinkedRoleAssessmentDto"] | null;
7835
7835
  /** @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. */
7836
7836
  scanImprovements?: components["schemas"]["ScanImprovementDto"][];
7837
+ /** @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. */
7838
+ blockingRule?: components["schemas"]["ReadinessBlockingRuleDto"] | null;
7837
7839
  };
7838
7840
  LinkedRolePendingDto: {
7839
7841
  /** @description Topology role key, e.g. terraform | gitops | ci_templates | api_contracts. */
@@ -7914,6 +7916,8 @@ export interface components {
7914
7916
  linkedRoleAssessment?: components["schemas"]["LinkedRoleAssessmentDto"] | null;
7915
7917
  /** @description See RepoReadinessScoreDto.scanImprovements. */
7916
7918
  scanImprovements?: components["schemas"]["ScanImprovementDto"][];
7919
+ /** @description See RepoReadinessScoreDto.blockingRule. */
7920
+ blockingRule?: components["schemas"]["ReadinessBlockingRuleDto"] | null;
7917
7921
  };
7918
7922
  AgenticFoundationDashboardSummaryDto: {
7919
7923
  repoCount: number;
@@ -7935,6 +7939,37 @@ export interface components {
7935
7939
  verificationGapCount?: number;
7936
7940
  /** @description Up to 12 repo and reason pairs for verificationGapCount. A repo with both gaps appears twice. Does not change averageOverallScore. */
7937
7941
  verificationGaps?: components["schemas"]["AgenticFoundationVerificationGapDto"][];
7942
+ /** @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. */
7943
+ blockedRepoCount: number;
7944
+ /** @description Rule title that blocks the most repos. Null when blockedRepoCount is 0. */
7945
+ topBlockingRuleTitle: string | null;
7946
+ /** @description How many blocked repos share topBlockingRuleTitle. */
7947
+ topBlockingRuleRepoCount: number;
7948
+ fixProof: components["schemas"]["AgenticFoundationFixProofDto"];
7949
+ };
7950
+ ReadinessBlockingRuleDto: {
7951
+ rubricId: string;
7952
+ title: string;
7953
+ /** @enum {string} */
7954
+ severity: "critical" | "high" | "medium" | "low";
7955
+ };
7956
+ AgenticFoundationFixProofDto: {
7957
+ windowDays: number;
7958
+ /** @description Rounded percent of terminal fixes in the window that merged (merged / merged + failed). Null when there is no terminal fix. */
7959
+ mergeRatePercent: number | null;
7960
+ /** @description Median days from created_at to merge. Null when nothing merged in the window. */
7961
+ medianDaysToMerge: number | null;
7962
+ /** @description Merged fixes in the window whose next scan marked the criterion met. */
7963
+ clearedCount: number;
7964
+ rows: components["schemas"]["AgenticFoundationFixProofRowDto"][];
7965
+ };
7966
+ AgenticFoundationFixProofRowDto: {
7967
+ repoName: string;
7968
+ ruleTitle: string;
7969
+ scoreBefore: number | null;
7970
+ scoreAfter: number | null;
7971
+ /** @description True when the first succeeded scan after the merge marked the criterion met. Null when that scan has not run yet. */
7972
+ cleared: boolean | null;
7938
7973
  };
7939
7974
  AgenticFoundationVerificationGapDto: {
7940
7975
  repoName: string;
@@ -10800,7 +10835,7 @@ export interface components {
10800
10835
  /** @description Sort direction. */
10801
10836
  PaginationOrder: "asc" | "desc";
10802
10837
  /** @description Allowlisted repository sort field. */
10803
- ReadinessRepoSort: "repoName" | "overallScore" | "lastAnalyzed" | "language";
10838
+ ReadinessRepoSort: "repoName" | "overallScore" | "lastAnalyzed" | "language" | "blockingRule";
10804
10839
  /** @description Allowlisted Code Insights repo sort field. */
10805
10840
  CodeInsightsRepoSort: "repoName" | "locTotal" | "ccAvg" | "dupPct" | "lastMeasuredAt";
10806
10841
  /** @description Case-insensitive substring filter on repo name / provider slug. */
@@ -11111,6 +11146,9 @@ export type LinkedRolePendingDto = components['schemas']['LinkedRolePendingDto']
11111
11146
  export type LinkedRoleAssessmentDto = components['schemas']['LinkedRoleAssessmentDto'];
11112
11147
  export type RepoReadinessScoreDetailDto = components['schemas']['RepoReadinessScoreDetailDto'];
11113
11148
  export type AgenticFoundationDashboardSummaryDto = components['schemas']['AgenticFoundationDashboardSummaryDto'];
11149
+ export type ReadinessBlockingRuleDto = components['schemas']['ReadinessBlockingRuleDto'];
11150
+ export type AgenticFoundationFixProofDto = components['schemas']['AgenticFoundationFixProofDto'];
11151
+ export type AgenticFoundationFixProofRowDto = components['schemas']['AgenticFoundationFixProofRowDto'];
11114
11152
  export type AgenticFoundationVerificationGapDto = components['schemas']['AgenticFoundationVerificationGapDto'];
11115
11153
  export type PageMetaDto = components['schemas']['PageMetaDto'];
11116
11154
  export type ReadinessEligibilityLimitsDto = components['schemas']['ReadinessEligibilityLimitsDto'];