@thinkai/tai-api-contract 2.170.0 → 2.171.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.
@@ -66,6 +66,27 @@ export interface paths {
66
66
  patch?: never;
67
67
  trace?: never;
68
68
  };
69
+ "/admin/assessment-manifest-validation": {
70
+ parameters: {
71
+ query?: never;
72
+ header?: never;
73
+ path?: never;
74
+ cookie?: never;
75
+ };
76
+ get?: never;
77
+ put?: never;
78
+ /**
79
+ * Validate an assessment manifest before export
80
+ * @description Runs the fail-closed manifest check for one sold assessment. The server ignores `manifest.validation` and `manifest.watermark` from the client. `buyerDeliverable` is true only when the result is validated and `shareMode` is internal. An external share-safe result can be validated and is never the buyer file. Unset or exceeded tolerances fail. No numeric tolerance is assumed. GitLab and Bitbucket fixtures are not part of this operation.
81
+ * **Authorization:** Bearer JWT required. Caller email must appear in `PLATFORM_ADMIN_EMAILS`.
82
+ */
83
+ post: operations["runAssessmentManifestValidation"];
84
+ delete?: never;
85
+ options?: never;
86
+ head?: never;
87
+ patch?: never;
88
+ trace?: never;
89
+ };
69
90
  "/admin/readiness/token-usage": {
70
91
  parameters: {
71
92
  query?: never;
@@ -12013,6 +12034,108 @@ export interface operations {
12013
12034
  };
12014
12035
  };
12015
12036
  };
12037
+ runAssessmentManifestValidation: {
12038
+ parameters: {
12039
+ query?: never;
12040
+ header?: never;
12041
+ path?: never;
12042
+ cookie?: never;
12043
+ };
12044
+ requestBody: {
12045
+ content: {
12046
+ "application/json": {
12047
+ manifest: {
12048
+ /** @enum {string} */
12049
+ offerId: "engineering_readiness_baseline" | "agentic_ai_roi";
12050
+ dictionaryVersion: string;
12051
+ /** @enum {string} */
12052
+ validation: "validated" | "not_validated";
12053
+ /** @enum {string} */
12054
+ shareMode: "internal" | "external";
12055
+ /** @enum {string|null} */
12056
+ watermark: "NOT VALIDATED" | "SAMPLE · SYNTHETIC DATA" | null;
12057
+ scope: Record<string, never>;
12058
+ windows: Record<string, never>;
12059
+ sources: Record<string, never>[];
12060
+ consent: Record<string, never>;
12061
+ sections: Record<string, never>[];
12062
+ };
12063
+ workspaceId: string;
12064
+ expectedWorkspaceId: string;
12065
+ expectedRepositoryIds: string[];
12066
+ soldWindowComplete: boolean;
12067
+ premiumAiAssessable: boolean;
12068
+ namedPersonSectionIds: string[];
12069
+ tolerances: {
12070
+ id: string;
12071
+ /** @enum {string} */
12072
+ status: "unset" | "exceeded" | "within";
12073
+ }[];
12074
+ };
12075
+ };
12076
+ };
12077
+ responses: {
12078
+ /** @description Validation result. Client validation and watermark inputs are ignored. */
12079
+ 200: {
12080
+ headers: {
12081
+ [name: string]: unknown;
12082
+ };
12083
+ content: {
12084
+ "application/json": {
12085
+ buyerDeliverable: boolean;
12086
+ /** @enum {string} */
12087
+ validation: "validated" | "not_validated";
12088
+ /** @enum {string|null} */
12089
+ watermark: "NOT VALIDATED" | null;
12090
+ reasons: {
12091
+ code: string;
12092
+ message: string;
12093
+ }[];
12094
+ contentHash: string;
12095
+ };
12096
+ };
12097
+ };
12098
+ /** @description Body failed validation. */
12099
+ 400: {
12100
+ headers: {
12101
+ [name: string]: unknown;
12102
+ };
12103
+ content: {
12104
+ /**
12105
+ * @example {
12106
+ * "error": "manifest.offerId is not a known assessment offer",
12107
+ * "code": "invalid_body"
12108
+ * }
12109
+ */
12110
+ "application/json": components["schemas"]["ErrorMessageDto"];
12111
+ };
12112
+ };
12113
+ /** @description Missing or invalid JWT. */
12114
+ 401: {
12115
+ headers: {
12116
+ [name: string]: unknown;
12117
+ };
12118
+ content: {
12119
+ "application/json": components["schemas"]["ErrorMessageDto"];
12120
+ };
12121
+ };
12122
+ /** @description Caller is not a platform admin. */
12123
+ 403: {
12124
+ headers: {
12125
+ [name: string]: unknown;
12126
+ };
12127
+ content: {
12128
+ /**
12129
+ * @example {
12130
+ * "error": "Forbidden",
12131
+ * "code": "forbidden"
12132
+ * }
12133
+ */
12134
+ "application/json": components["schemas"]["ErrorMessageDto"];
12135
+ };
12136
+ };
12137
+ };
12138
+ };
12016
12139
  adminListReadinessTokenUsage: {
12017
12140
  parameters: {
12018
12141
  query?: {