mobbdev 1.3.7 → 1.4.1

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.
@@ -56,61 +56,61 @@ declare const PromptItemZ: z.ZodObject<{
56
56
  name: string;
57
57
  parameters: string;
58
58
  result: string;
59
- rawArguments?: string | undefined;
60
59
  accepted?: boolean | undefined;
60
+ rawArguments?: string | undefined;
61
61
  mcpServer?: string | undefined;
62
62
  mcpToolName?: string | undefined;
63
63
  }, {
64
64
  name: string;
65
65
  parameters: string;
66
66
  result: string;
67
- rawArguments?: string | undefined;
68
67
  accepted?: boolean | undefined;
68
+ rawArguments?: string | undefined;
69
69
  mcpServer?: string | undefined;
70
70
  mcpToolName?: string | undefined;
71
71
  }>>;
72
72
  }, "strip", z.ZodTypeAny, {
73
73
  type: "USER_PROMPT" | "AI_RESPONSE" | "TOOL_EXECUTION" | "AI_THINKING" | "MCP_TOOL_CALL";
74
- date?: Date | undefined;
75
- attachedFiles?: {
76
- relativePath: string;
77
- startLine?: number | undefined;
78
- }[] | undefined;
79
- tokens?: {
80
- inputCount: number;
81
- outputCount: number;
82
- } | undefined;
83
- text?: string | undefined;
84
74
  tool?: {
85
75
  name: string;
86
76
  parameters: string;
87
77
  result: string;
88
- rawArguments?: string | undefined;
89
78
  accepted?: boolean | undefined;
79
+ rawArguments?: string | undefined;
90
80
  mcpServer?: string | undefined;
91
81
  mcpToolName?: string | undefined;
92
82
  } | undefined;
93
- }, {
94
- type: "USER_PROMPT" | "AI_RESPONSE" | "TOOL_EXECUTION" | "AI_THINKING" | "MCP_TOOL_CALL";
95
83
  date?: Date | undefined;
96
- attachedFiles?: {
97
- relativePath: string;
98
- startLine?: number | undefined;
99
- }[] | undefined;
100
84
  tokens?: {
101
85
  inputCount: number;
102
86
  outputCount: number;
103
87
  } | undefined;
104
88
  text?: string | undefined;
89
+ attachedFiles?: {
90
+ relativePath: string;
91
+ startLine?: number | undefined;
92
+ }[] | undefined;
93
+ }, {
94
+ type: "USER_PROMPT" | "AI_RESPONSE" | "TOOL_EXECUTION" | "AI_THINKING" | "MCP_TOOL_CALL";
105
95
  tool?: {
106
96
  name: string;
107
97
  parameters: string;
108
98
  result: string;
109
- rawArguments?: string | undefined;
110
99
  accepted?: boolean | undefined;
100
+ rawArguments?: string | undefined;
111
101
  mcpServer?: string | undefined;
112
102
  mcpToolName?: string | undefined;
113
103
  } | undefined;
104
+ date?: Date | undefined;
105
+ tokens?: {
106
+ inputCount: number;
107
+ outputCount: number;
108
+ } | undefined;
109
+ text?: string | undefined;
110
+ attachedFiles?: {
111
+ relativePath: string;
112
+ startLine?: number | undefined;
113
+ }[] | undefined;
114
114
  }>;
115
115
  type PromptItem = z.infer<typeof PromptItemZ>;
116
116
  declare const PromptItemArrayZ: z.ZodArray<z.ZodObject<{
@@ -149,61 +149,61 @@ declare const PromptItemArrayZ: z.ZodArray<z.ZodObject<{
149
149
  name: string;
150
150
  parameters: string;
151
151
  result: string;
152
- rawArguments?: string | undefined;
153
152
  accepted?: boolean | undefined;
153
+ rawArguments?: string | undefined;
154
154
  mcpServer?: string | undefined;
155
155
  mcpToolName?: string | undefined;
156
156
  }, {
157
157
  name: string;
158
158
  parameters: string;
159
159
  result: string;
160
- rawArguments?: string | undefined;
161
160
  accepted?: boolean | undefined;
161
+ rawArguments?: string | undefined;
162
162
  mcpServer?: string | undefined;
163
163
  mcpToolName?: string | undefined;
164
164
  }>>;
165
165
  }, "strip", z.ZodTypeAny, {
166
166
  type: "USER_PROMPT" | "AI_RESPONSE" | "TOOL_EXECUTION" | "AI_THINKING" | "MCP_TOOL_CALL";
167
- date?: Date | undefined;
168
- attachedFiles?: {
169
- relativePath: string;
170
- startLine?: number | undefined;
171
- }[] | undefined;
172
- tokens?: {
173
- inputCount: number;
174
- outputCount: number;
175
- } | undefined;
176
- text?: string | undefined;
177
167
  tool?: {
178
168
  name: string;
179
169
  parameters: string;
180
170
  result: string;
181
- rawArguments?: string | undefined;
182
171
  accepted?: boolean | undefined;
172
+ rawArguments?: string | undefined;
183
173
  mcpServer?: string | undefined;
184
174
  mcpToolName?: string | undefined;
185
175
  } | undefined;
186
- }, {
187
- type: "USER_PROMPT" | "AI_RESPONSE" | "TOOL_EXECUTION" | "AI_THINKING" | "MCP_TOOL_CALL";
188
176
  date?: Date | undefined;
189
- attachedFiles?: {
190
- relativePath: string;
191
- startLine?: number | undefined;
192
- }[] | undefined;
193
177
  tokens?: {
194
178
  inputCount: number;
195
179
  outputCount: number;
196
180
  } | undefined;
197
181
  text?: string | undefined;
182
+ attachedFiles?: {
183
+ relativePath: string;
184
+ startLine?: number | undefined;
185
+ }[] | undefined;
186
+ }, {
187
+ type: "USER_PROMPT" | "AI_RESPONSE" | "TOOL_EXECUTION" | "AI_THINKING" | "MCP_TOOL_CALL";
198
188
  tool?: {
199
189
  name: string;
200
190
  parameters: string;
201
191
  result: string;
202
- rawArguments?: string | undefined;
203
192
  accepted?: boolean | undefined;
193
+ rawArguments?: string | undefined;
204
194
  mcpServer?: string | undefined;
205
195
  mcpToolName?: string | undefined;
206
196
  } | undefined;
197
+ date?: Date | undefined;
198
+ tokens?: {
199
+ inputCount: number;
200
+ outputCount: number;
201
+ } | undefined;
202
+ text?: string | undefined;
203
+ attachedFiles?: {
204
+ relativePath: string;
205
+ startLine?: number | undefined;
206
+ }[] | undefined;
207
207
  }>, "many">;
208
208
  type PromptItemArray = z.infer<typeof PromptItemArrayZ>;
209
209
  /**
@@ -129,10 +129,13 @@ function getSdk(client, withWrapper = defaultWrapper) {
129
129
  },
130
130
  ScanSkill(variables, requestHeaders, signal) {
131
131
  return withWrapper((wrappedRequestHeaders) => client.request({ document: ScanSkillDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), "ScanSkill", "mutation", variables);
132
+ },
133
+ SkillVerdictsByMd5(variables, requestHeaders, signal) {
134
+ return withWrapper((wrappedRequestHeaders) => client.request({ document: SkillVerdictsByMd5Document, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), "SkillVerdictsByMd5", "query", variables);
132
135
  }
133
136
  };
134
137
  }
135
- var AiBlameInferenceType, FixQuestionInputType, Language, ManifestAction, Effort_To_Apply_Fix_Enum, Fix_Rating_Tag_Enum, Fix_Report_State_Enum, Fix_State_Enum, IssueLanguage_Enum, IssueType_Enum, Pr_Status_Enum, Project_Role_Type_Enum, Vulnerability_Report_Issue_Category_Enum, Vulnerability_Report_Issue_State_Enum, Vulnerability_Report_Issue_Tag_Enum, Vulnerability_Report_Vendor_Enum, Vulnerability_Severity_Enum, FixDetailsFragmentDoc, FixReportSummaryFieldsFragmentDoc, MeDocument, GetLastOrgAndNamedProjectDocument, GetLastOrgDocument, GetEncryptedApiTokenDocument, FixReportStateDocument, GetVulnerabilityReportPathsDocument, GetAnalysisSubscriptionDocument, GetAnalysisDocument, GetFixesDocument, GetVulByNodesMetadataDocument, GetFalsePositiveDocument, UpdateScmTokenDocument, UploadS3BucketInfoDocument, GetTracyDiffUploadUrlDocument, AnalyzeCommitForExtensionAiBlameDocument, GetAiBlameInferenceDocument, GetAiBlameAttributionPromptDocument, GetPromptSummaryDocument, UploadAiBlameInferencesInitDocument, FinalizeAiBlameInferencesUploadDocument, UploadTracyRecordsDocument, GetTracyRawDataUploadUrlDocument, DigestVulnerabilityReportDocument, SubmitVulnerabilityReportDocument, CreateCommunityUserDocument, CreateCliLoginDocument, PerformCliLoginDocument, CreateProjectDocument, ValidateRepoUrlDocument, GitReferenceDocument, AutoPrAnalysisDocument, GetFixReportsByRepoUrlDocument, GetReportFixesDocument, GetLatestReportByRepoUrlDocument, UpdateDownloadedFixDataDocument, GetUserMvsAutoFixDocument, StreamBlameAiAnalysisRequestsDocument, StreamCommitBlameRequestsDocument, ScanSkillDocument, defaultWrapper;
138
+ var AiBlameInferenceType, FixQuestionInputType, Language, ManifestAction, Effort_To_Apply_Fix_Enum, Fix_Rating_Tag_Enum, Fix_Report_State_Enum, Fix_State_Enum, IssueLanguage_Enum, IssueType_Enum, Pr_Status_Enum, Project_Role_Type_Enum, Vulnerability_Report_Issue_Category_Enum, Vulnerability_Report_Issue_State_Enum, Vulnerability_Report_Issue_Tag_Enum, Vulnerability_Report_Vendor_Enum, Vulnerability_Severity_Enum, FixDetailsFragmentDoc, FixReportSummaryFieldsFragmentDoc, MeDocument, GetLastOrgAndNamedProjectDocument, GetLastOrgDocument, GetEncryptedApiTokenDocument, FixReportStateDocument, GetVulnerabilityReportPathsDocument, GetAnalysisSubscriptionDocument, GetAnalysisDocument, GetFixesDocument, GetVulByNodesMetadataDocument, GetFalsePositiveDocument, UpdateScmTokenDocument, UploadS3BucketInfoDocument, GetTracyDiffUploadUrlDocument, AnalyzeCommitForExtensionAiBlameDocument, GetAiBlameInferenceDocument, GetAiBlameAttributionPromptDocument, GetPromptSummaryDocument, UploadAiBlameInferencesInitDocument, FinalizeAiBlameInferencesUploadDocument, UploadTracyRecordsDocument, GetTracyRawDataUploadUrlDocument, DigestVulnerabilityReportDocument, SubmitVulnerabilityReportDocument, CreateCommunityUserDocument, CreateCliLoginDocument, PerformCliLoginDocument, CreateProjectDocument, ValidateRepoUrlDocument, GitReferenceDocument, AutoPrAnalysisDocument, GetFixReportsByRepoUrlDocument, GetReportFixesDocument, GetLatestReportByRepoUrlDocument, UpdateDownloadedFixDataDocument, GetUserMvsAutoFixDocument, StreamBlameAiAnalysisRequestsDocument, StreamCommitBlameRequestsDocument, ScanSkillDocument, SkillVerdictsByMd5Document, defaultWrapper;
136
139
  var init_client_generates = __esm({
137
140
  "src/features/analysis/scm/generates/client_generates.ts"() {
138
141
  "use strict";
@@ -260,10 +263,12 @@ var init_client_generates = __esm({
260
263
  IssueType_Enum2["ImproperExceptionHandling"] = "IMPROPER_EXCEPTION_HANDLING";
261
264
  IssueType_Enum2["ImproperResourceShutdownOrRelease"] = "IMPROPER_RESOURCE_SHUTDOWN_OR_RELEASE";
262
265
  IssueType_Enum2["ImproperStringFormatting"] = "IMPROPER_STRING_FORMATTING";
266
+ IssueType_Enum2["ImproperValidationOfArrayIndex"] = "IMPROPER_VALIDATION_OF_ARRAY_INDEX";
263
267
  IssueType_Enum2["IncompleteHostnameRegex"] = "INCOMPLETE_HOSTNAME_REGEX";
264
268
  IssueType_Enum2["IncompleteSanitization"] = "INCOMPLETE_SANITIZATION";
265
269
  IssueType_Enum2["IncompleteUrlSanitization"] = "INCOMPLETE_URL_SANITIZATION";
266
270
  IssueType_Enum2["IncompleteUrlSchemeCheck"] = "INCOMPLETE_URL_SCHEME_CHECK";
271
+ IssueType_Enum2["IncorrectIntegerConversion"] = "INCORRECT_INTEGER_CONVERSION";
267
272
  IssueType_Enum2["IncorrectSqlApiUsage"] = "INCORRECT_SQL_API_USAGE";
268
273
  IssueType_Enum2["InformationExposureViaHeaders"] = "INFORMATION_EXPOSURE_VIA_HEADERS";
269
274
  IssueType_Enum2["InsecureBinderConfiguration"] = "INSECURE_BINDER_CONFIGURATION";
@@ -288,6 +293,7 @@ var init_client_generates = __esm({
288
293
  IssueType_Enum2["MissingUser"] = "MISSING_USER";
289
294
  IssueType_Enum2["MissingWhitespace"] = "MISSING_WHITESPACE";
290
295
  IssueType_Enum2["MissingWorkflowPermissions"] = "MISSING_WORKFLOW_PERMISSIONS";
296
+ IssueType_Enum2["MissingXFrameOptions"] = "MISSING_X_FRAME_OPTIONS";
291
297
  IssueType_Enum2["ModifiedDefaultParam"] = "MODIFIED_DEFAULT_PARAM";
292
298
  IssueType_Enum2["NonFinalPublicStaticField"] = "NON_FINAL_PUBLIC_STATIC_FIELD";
293
299
  IssueType_Enum2["NonReadonlyField"] = "NON_READONLY_FIELD";
@@ -405,6 +411,7 @@ var init_client_generates = __esm({
405
411
  return Vulnerability_Report_Issue_Tag_Enum3;
406
412
  })(Vulnerability_Report_Issue_Tag_Enum || {});
407
413
  Vulnerability_Report_Vendor_Enum = /* @__PURE__ */ ((Vulnerability_Report_Vendor_Enum3) => {
414
+ Vulnerability_Report_Vendor_Enum3["BlackDuck"] = "blackDuck";
408
415
  Vulnerability_Report_Vendor_Enum3["Checkmarx"] = "checkmarx";
409
416
  Vulnerability_Report_Vendor_Enum3["CheckmarxXml"] = "checkmarxXml";
410
417
  Vulnerability_Report_Vendor_Enum3["Codeql"] = "codeql";
@@ -1265,6 +1272,18 @@ var init_client_generates = __esm({
1265
1272
  cached
1266
1273
  summary
1267
1274
  }
1275
+ }
1276
+ `;
1277
+ SkillVerdictsByMd5Document = `
1278
+ query SkillVerdictsByMd5($md5s: [String!]!) {
1279
+ skillVerdictsByMd5(md5s: $md5s) {
1280
+ md5
1281
+ verdict
1282
+ summary
1283
+ scannerName
1284
+ scannerVersion
1285
+ scannedAt
1286
+ }
1268
1287
  }
1269
1288
  `;
1270
1289
  defaultWrapper = (action, _operationName, _operationType, _variables) => action();
@@ -1760,7 +1779,10 @@ var init_getIssueType = __esm({
1760
1779
  ["REDUNDANT_NIL_ERROR_CHECK" /* RedundantNilErrorCheck */]: "Redundant Nil Error Check",
1761
1780
  ["MISSING_WORKFLOW_PERMISSIONS" /* MissingWorkflowPermissions */]: "Missing Workflow Permissions",
1762
1781
  ["EXCESSIVE_SECRETS_EXPOSURE" /* ExcessiveSecretsExposure */]: "Excessive Secrets Exposure",
1763
- ["TAINTED_NUMERIC_CAST" /* TaintedNumericCast */]: "Tainted Numeric Cast"
1782
+ ["TAINTED_NUMERIC_CAST" /* TaintedNumericCast */]: "Tainted Numeric Cast",
1783
+ ["MISSING_X_FRAME_OPTIONS" /* MissingXFrameOptions */]: "Missing X-Frame-Options Header",
1784
+ ["IMPROPER_VALIDATION_OF_ARRAY_INDEX" /* ImproperValidationOfArrayIndex */]: "Improper Validation of Array Index",
1785
+ ["INCORRECT_INTEGER_CONVERSION" /* IncorrectIntegerConversion */]: "Incorrect Integer Conversion"
1764
1786
  };
1765
1787
  issueTypeZ = z5.nativeEnum(IssueType_Enum);
1766
1788
  getIssueTypeFriendlyString = (issueType) => {
@@ -4335,7 +4357,8 @@ var SCANNERS = {
4335
4357
  Snyk: "snyk",
4336
4358
  Sonarqube: "sonarqube",
4337
4359
  Semgrep: "semgrep",
4338
- Datadog: "datadog"
4360
+ Datadog: "datadog",
4361
+ BlackDuck: "blackduck"
4339
4362
  };
4340
4363
  var scannerToVulnerabilityReportVendorEnum = {
4341
4364
  [SCANNERS.Checkmarx]: "checkmarx" /* Checkmarx */,
@@ -4344,7 +4367,8 @@ var scannerToVulnerabilityReportVendorEnum = {
4344
4367
  [SCANNERS.Codeql]: "codeql" /* Codeql */,
4345
4368
  [SCANNERS.Fortify]: "fortify" /* Fortify */,
4346
4369
  [SCANNERS.Semgrep]: "semgrep" /* Semgrep */,
4347
- [SCANNERS.Datadog]: "datadog" /* Datadog */
4370
+ [SCANNERS.Datadog]: "datadog" /* Datadog */,
4371
+ [SCANNERS.BlackDuck]: "blackDuck" /* BlackDuck */
4348
4372
  };
4349
4373
  var SupportedScannersZ = z8.enum([SCANNERS.Checkmarx, SCANNERS.Snyk]);
4350
4374
  var envVariablesSchema = z8.object({
@@ -4927,7 +4951,10 @@ var fixDetailsData = {
4927
4951
  ["REDUNDANT_NIL_ERROR_CHECK" /* RedundantNilErrorCheck */]: void 0,
4928
4952
  ["MISSING_WORKFLOW_PERMISSIONS" /* MissingWorkflowPermissions */]: void 0,
4929
4953
  ["EXCESSIVE_SECRETS_EXPOSURE" /* ExcessiveSecretsExposure */]: void 0,
4930
- ["TAINTED_NUMERIC_CAST" /* TaintedNumericCast */]: void 0
4954
+ ["TAINTED_NUMERIC_CAST" /* TaintedNumericCast */]: void 0,
4955
+ ["MISSING_X_FRAME_OPTIONS" /* MissingXFrameOptions */]: void 0,
4956
+ ["IMPROPER_VALIDATION_OF_ARRAY_INDEX" /* ImproperValidationOfArrayIndex */]: void 0,
4957
+ ["INCORRECT_INTEGER_CONVERSION" /* IncorrectIntegerConversion */]: void 0
4931
4958
  };
4932
4959
 
4933
4960
  // src/features/analysis/scm/shared/src/commitDescriptionMarkup.ts
@@ -6177,6 +6204,19 @@ var headerMaxAge = {
6177
6204
  }
6178
6205
  };
6179
6206
 
6207
+ // src/features/analysis/scm/shared/src/storedQuestionData/js/missingXFrameOptions.ts
6208
+ var xFrameOptionsValue = {
6209
+ xFrameOptionsValue: {
6210
+ content: () => "Please provide the value for the X-Frame-Options header",
6211
+ description: () => `The \`X-Frame-Options\` HTTP response header tells the browser whether the page is allowed to be rendered inside a \`<frame>\`, \`<iframe>\`, \`<embed>\` or \`<object>\`. Without it, attackers can embed your application in an invisible iframe and trick users into clicking on it \u2014 a class of attacks known as clickjacking (UI redressing).
6212
+ &nbsp;
6213
+ &nbsp; **Allowed values:**
6214
+ &nbsp; - \`DENY\` \u2014 the page cannot be framed by any site, including your own. Recommended default for any page that does not need to be embedded.
6215
+ &nbsp; - \`SAMEORIGIN\` \u2014 the page can only be framed by pages served from the same origin. Use this only if your own application legitimately embeds this page in an iframe.`,
6216
+ guidance: () => ``
6217
+ }
6218
+ };
6219
+
6180
6220
  // src/features/analysis/scm/shared/src/storedQuestionData/js/noLimitsOrThrottling.ts
6181
6221
  var noLimitsOrThrottling2 = {
6182
6222
  setGlobalLimiter: {
@@ -6321,6 +6361,7 @@ var vulnerabilities13 = {
6321
6361
  ["UNCHECKED_LOOP_CONDITION" /* UncheckedLoopCondition */]: uncheckedLoopCondition2,
6322
6362
  ["NO_LIMITS_OR_THROTTLING" /* NoLimitsOrThrottling */]: noLimitsOrThrottling2,
6323
6363
  ["MISSING_CSP_HEADER" /* MissingCspHeader */]: cspHeaderValue,
6364
+ ["MISSING_X_FRAME_OPTIONS" /* MissingXFrameOptions */]: xFrameOptionsValue,
6324
6365
  ["HARDCODED_DOMAIN_IN_HTML" /* HardcodedDomainInHtml */]: hardcodedDomainInHtml,
6325
6366
  ["CSRF" /* Csrf */]: csrf2
6326
6367
  };
@@ -6502,6 +6543,13 @@ var ReferenceType = /* @__PURE__ */ ((ReferenceType2) => {
6502
6543
  ReferenceType2["TAG"] = "TAG";
6503
6544
  return ReferenceType2;
6504
6545
  })(ReferenceType || {});
6546
+ var GithubFullShaZ = z14.string().regex(/^[a-f0-9]{40}$/);
6547
+ var MergedPrSurvivalMetadataZ = z14.object({
6548
+ mergeCommitShas: z14.array(GithubFullShaZ).min(1).refine((shas) => new Set(shas).size === shas.length, {
6549
+ message: "mergeCommitShas must contain unique SHAs"
6550
+ }),
6551
+ targetBranch: z14.string().min(1)
6552
+ });
6505
6553
  var scmCloudHostname = {
6506
6554
  ["GitLab" /* GitLab */]: new URL(scmCloudUrl.GitLab).hostname,
6507
6555
  ["GitHub" /* GitHub */]: new URL(scmCloudUrl.GitHub).hostname,
@@ -7233,6 +7281,10 @@ var GQLClient = class {
7233
7281
  async scanSkill(variables) {
7234
7282
  return await this._clientSdk.ScanSkill(variables);
7235
7283
  }
7284
+ // T-467 — batched verdict lookup for the client-side quarantine check.
7285
+ async skillVerdictsByMd5(md5s) {
7286
+ return await this._clientSdk.SkillVerdictsByMd5({ md5s });
7287
+ }
7236
7288
  };
7237
7289
 
7238
7290
  // src/features/analysis/graphql/tracy-batch-upload.ts