mobbdev 1.0.213 → 1.0.216

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.
@@ -96,6 +96,7 @@ type Scalars = {
96
96
  type AiBlameInferenceFinalizeInput = {
97
97
  aiBlameInferenceId: Scalars['String']['input'];
98
98
  aiResponseAt: Scalars['Timestamp']['input'];
99
+ blameType?: InputMaybe<AiBlameInferenceType>;
99
100
  inferenceKey: Scalars['String']['input'];
100
101
  metadataJSON?: InputMaybe<Scalars['String']['input']>;
101
102
  model?: InputMaybe<Scalars['String']['input']>;
@@ -104,12 +105,18 @@ type AiBlameInferenceFinalizeInput = {
104
105
  };
105
106
  type AiBlameInferenceInitInput = {
106
107
  aiResponseAt: Scalars['Timestamp']['input'];
108
+ blameType?: InputMaybe<AiBlameInferenceType>;
107
109
  inferenceFileName: Scalars['String']['input'];
108
110
  metadataJSON?: InputMaybe<Scalars['String']['input']>;
109
111
  model?: InputMaybe<Scalars['String']['input']>;
110
112
  promptFileName: Scalars['String']['input'];
111
113
  toolName?: InputMaybe<Scalars['String']['input']>;
112
114
  };
115
+ declare enum AiBlameInferenceType {
116
+ Chat = "CHAT",
117
+ HumanEdit = "HUMAN_EDIT",
118
+ TabAutocomplete = "TAB_AUTOCOMPLETE"
119
+ }
113
120
  /** Boolean expression to compare columns of type "Boolean". All fields are combined with logical 'AND'. */
114
121
  type Boolean_Comparison_Exp = {
115
122
  _eq?: InputMaybe<Scalars['Boolean']['input']>;
@@ -3286,6 +3293,25 @@ type GetLastOrgAndNamedProjectQuery = {
3286
3293
  }>;
3287
3294
  }>;
3288
3295
  };
3296
+ type GetLastOrgQueryVariables = Exact<{
3297
+ email: Scalars['String']['input'];
3298
+ }>;
3299
+ type GetLastOrgQuery = {
3300
+ __typename?: 'query_root';
3301
+ user: Array<{
3302
+ __typename?: 'user';
3303
+ id: any;
3304
+ name?: string | null;
3305
+ userOrganizationsAndUserOrganizationRoles: Array<{
3306
+ __typename?: 'organization_to_user';
3307
+ id: any;
3308
+ organization: {
3309
+ __typename?: 'organization';
3310
+ id: any;
3311
+ };
3312
+ }>;
3313
+ }>;
3314
+ };
3289
3315
  type GetEncryptedApiTokenQueryVariables = Exact<{
3290
3316
  loginId: Scalars['uuid']['input'];
3291
3317
  }>;
@@ -4189,6 +4215,7 @@ type SdkFunctionWrapper = <T>(action: (requestHeaders?: Record<string, string>)
4189
4215
  declare function getSdk(client: GraphQLClient, withWrapper?: SdkFunctionWrapper): {
4190
4216
  Me(variables?: MeQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit["signal"]): Promise<MeQuery>;
4191
4217
  getLastOrgAndNamedProject(variables: GetLastOrgAndNamedProjectQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit["signal"]): Promise<GetLastOrgAndNamedProjectQuery>;
4218
+ getLastOrg(variables: GetLastOrgQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit["signal"]): Promise<GetLastOrgQuery>;
4192
4219
  GetEncryptedApiToken(variables: GetEncryptedApiTokenQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit["signal"]): Promise<GetEncryptedApiTokenQuery>;
4193
4220
  FixReportState(variables: FixReportStateQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit["signal"]): Promise<FixReportStateQuery>;
4194
4221
  GetVulnerabilityReportPaths(variables: GetVulnerabilityReportPathsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit["signal"]): Promise<GetVulnerabilityReportPathsQuery>;
@@ -4272,6 +4299,10 @@ declare class GQLClient {
4272
4299
  isTokenAvailable: boolean;
4273
4300
  } | null>;
4274
4301
  } | null | undefined>;
4302
+ getLastOrg(email: string): Promise<{
4303
+ organizationId: any;
4304
+ userName: string;
4305
+ }>;
4275
4306
  createCliLogin(variables: CreateCliLoginMutationVariables): Promise<string>;
4276
4307
  verifyApiConnection(): Promise<boolean>;
4277
4308
  validateUserToken(): Promise<string | boolean>;
@@ -4431,26 +4462,18 @@ declare const PromptItemZ: z.ZodObject<{
4431
4462
  name: string;
4432
4463
  parameters: string;
4433
4464
  result: string;
4434
- accepted?: boolean | undefined;
4435
4465
  rawArguments?: string | undefined;
4466
+ accepted?: boolean | undefined;
4436
4467
  }, {
4437
4468
  name: string;
4438
4469
  parameters: string;
4439
4470
  result: string;
4440
- accepted?: boolean | undefined;
4441
4471
  rawArguments?: string | undefined;
4472
+ accepted?: boolean | undefined;
4442
4473
  }>>;
4443
4474
  }, "strip", z.ZodTypeAny, {
4444
4475
  type: "USER_PROMPT" | "AI_RESPONSE" | "TOOL_EXECUTION" | "AI_THINKING";
4445
- tool?: {
4446
- name: string;
4447
- parameters: string;
4448
- result: string;
4449
- accepted?: boolean | undefined;
4450
- rawArguments?: string | undefined;
4451
- } | undefined;
4452
4476
  date?: Date | undefined;
4453
- text?: string | undefined;
4454
4477
  attachedFiles?: {
4455
4478
  relativePath: string;
4456
4479
  startLine?: number | undefined;
@@ -4459,17 +4482,17 @@ declare const PromptItemZ: z.ZodObject<{
4459
4482
  inputCount: number;
4460
4483
  outputCount: number;
4461
4484
  } | undefined;
4462
- }, {
4463
- type: "USER_PROMPT" | "AI_RESPONSE" | "TOOL_EXECUTION" | "AI_THINKING";
4485
+ text?: string | undefined;
4464
4486
  tool?: {
4465
4487
  name: string;
4466
4488
  parameters: string;
4467
4489
  result: string;
4468
- accepted?: boolean | undefined;
4469
4490
  rawArguments?: string | undefined;
4491
+ accepted?: boolean | undefined;
4470
4492
  } | undefined;
4493
+ }, {
4494
+ type: "USER_PROMPT" | "AI_RESPONSE" | "TOOL_EXECUTION" | "AI_THINKING";
4471
4495
  date?: Date | undefined;
4472
- text?: string | undefined;
4473
4496
  attachedFiles?: {
4474
4497
  relativePath: string;
4475
4498
  startLine?: number | undefined;
@@ -4478,6 +4501,14 @@ declare const PromptItemZ: z.ZodObject<{
4478
4501
  inputCount: number;
4479
4502
  outputCount: number;
4480
4503
  } | undefined;
4504
+ text?: string | undefined;
4505
+ tool?: {
4506
+ name: string;
4507
+ parameters: string;
4508
+ result: string;
4509
+ rawArguments?: string | undefined;
4510
+ accepted?: boolean | undefined;
4511
+ } | undefined;
4481
4512
  }>;
4482
4513
  type PromptItem = z.infer<typeof PromptItemZ>;
4483
4514
  declare const PromptItemArrayZ: z.ZodArray<z.ZodObject<{
@@ -4514,26 +4545,18 @@ declare const PromptItemArrayZ: z.ZodArray<z.ZodObject<{
4514
4545
  name: string;
4515
4546
  parameters: string;
4516
4547
  result: string;
4517
- accepted?: boolean | undefined;
4518
4548
  rawArguments?: string | undefined;
4549
+ accepted?: boolean | undefined;
4519
4550
  }, {
4520
4551
  name: string;
4521
4552
  parameters: string;
4522
4553
  result: string;
4523
- accepted?: boolean | undefined;
4524
4554
  rawArguments?: string | undefined;
4555
+ accepted?: boolean | undefined;
4525
4556
  }>>;
4526
4557
  }, "strip", z.ZodTypeAny, {
4527
4558
  type: "USER_PROMPT" | "AI_RESPONSE" | "TOOL_EXECUTION" | "AI_THINKING";
4528
- tool?: {
4529
- name: string;
4530
- parameters: string;
4531
- result: string;
4532
- accepted?: boolean | undefined;
4533
- rawArguments?: string | undefined;
4534
- } | undefined;
4535
4559
  date?: Date | undefined;
4536
- text?: string | undefined;
4537
4560
  attachedFiles?: {
4538
4561
  relativePath: string;
4539
4562
  startLine?: number | undefined;
@@ -4542,17 +4565,17 @@ declare const PromptItemArrayZ: z.ZodArray<z.ZodObject<{
4542
4565
  inputCount: number;
4543
4566
  outputCount: number;
4544
4567
  } | undefined;
4545
- }, {
4546
- type: "USER_PROMPT" | "AI_RESPONSE" | "TOOL_EXECUTION" | "AI_THINKING";
4568
+ text?: string | undefined;
4547
4569
  tool?: {
4548
4570
  name: string;
4549
4571
  parameters: string;
4550
4572
  result: string;
4551
- accepted?: boolean | undefined;
4552
4573
  rawArguments?: string | undefined;
4574
+ accepted?: boolean | undefined;
4553
4575
  } | undefined;
4576
+ }, {
4577
+ type: "USER_PROMPT" | "AI_RESPONSE" | "TOOL_EXECUTION" | "AI_THINKING";
4554
4578
  date?: Date | undefined;
4555
- text?: string | undefined;
4556
4579
  attachedFiles?: {
4557
4580
  relativePath: string;
4558
4581
  startLine?: number | undefined;
@@ -4561,6 +4584,14 @@ declare const PromptItemArrayZ: z.ZodArray<z.ZodObject<{
4561
4584
  inputCount: number;
4562
4585
  outputCount: number;
4563
4586
  } | undefined;
4587
+ text?: string | undefined;
4588
+ tool?: {
4589
+ name: string;
4590
+ parameters: string;
4591
+ result: string;
4592
+ rawArguments?: string | undefined;
4593
+ accepted?: boolean | undefined;
4594
+ } | undefined;
4564
4595
  }>, "many">;
4565
4596
  type PromptItemArray = z.infer<typeof PromptItemArrayZ>;
4566
4597
  type UploadAiBlameOptions = {
@@ -4569,8 +4600,10 @@ type UploadAiBlameOptions = {
4569
4600
  aiResponseAt?: string[];
4570
4601
  model?: string[];
4571
4602
  toolName?: string[];
4603
+ blameType?: AiBlameInferenceType[];
4572
4604
  'ai-response-at'?: string[];
4573
4605
  'tool-name'?: string[];
4606
+ 'blame-type'?: AiBlameInferenceType[];
4574
4607
  };
4575
4608
  declare function uploadAiBlameBuilder(args: Yargs.Argv<unknown>): Yargs.Argv<UploadAiBlameOptions>;
4576
4609
  declare function uploadAiBlameHandlerFromExtension(args: {
@@ -4579,6 +4612,7 @@ declare function uploadAiBlameHandlerFromExtension(args: {
4579
4612
  model: string;
4580
4613
  tool: string;
4581
4614
  responseTime: string;
4615
+ blameType?: AiBlameInferenceType;
4582
4616
  }): Promise<void>;
4583
4617
  /**
4584
4618
  * Initializes and authenticates a GQL client for AI Blame upload operations.
@@ -112,6 +112,12 @@ import * as dotenv from "dotenv";
112
112
  import { z as z8 } from "zod";
113
113
 
114
114
  // src/features/analysis/scm/generates/client_generates.ts
115
+ var AiBlameInferenceType = /* @__PURE__ */ ((AiBlameInferenceType2) => {
116
+ AiBlameInferenceType2["Chat"] = "CHAT";
117
+ AiBlameInferenceType2["HumanEdit"] = "HUMAN_EDIT";
118
+ AiBlameInferenceType2["TabAutocomplete"] = "TAB_AUTOCOMPLETE";
119
+ return AiBlameInferenceType2;
120
+ })(AiBlameInferenceType || {});
115
121
  var FixQuestionInputType = /* @__PURE__ */ ((FixQuestionInputType2) => {
116
122
  FixQuestionInputType2["Number"] = "NUMBER";
117
123
  FixQuestionInputType2["Select"] = "SELECT";
@@ -561,6 +567,20 @@ var GetLastOrgAndNamedProjectDocument = `
561
567
  }
562
568
  }
563
569
  `;
570
+ var GetLastOrgDocument = `
571
+ query getLastOrg($email: String!) {
572
+ user(where: {email: {_eq: $email}}, limit: 1) {
573
+ id
574
+ name
575
+ userOrganizationsAndUserOrganizationRoles(order_by: {createdOn: desc}) {
576
+ id
577
+ organization {
578
+ id
579
+ }
580
+ }
581
+ }
582
+ }
583
+ `;
564
584
  var GetEncryptedApiTokenDocument = `
565
585
  query GetEncryptedApiToken($loginId: uuid!) {
566
586
  cli_login_by_pk(id: $loginId) {
@@ -1056,6 +1076,9 @@ function getSdk(client, withWrapper = defaultWrapper) {
1056
1076
  getLastOrgAndNamedProject(variables, requestHeaders, signal) {
1057
1077
  return withWrapper((wrappedRequestHeaders) => client.request({ document: GetLastOrgAndNamedProjectDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), "getLastOrgAndNamedProject", "query", variables);
1058
1078
  },
1079
+ getLastOrg(variables, requestHeaders, signal) {
1080
+ return withWrapper((wrappedRequestHeaders) => client.request({ document: GetLastOrgDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), "getLastOrg", "query", variables);
1081
+ },
1059
1082
  GetEncryptedApiToken(variables, requestHeaders, signal) {
1060
1083
  return withWrapper((wrappedRequestHeaders) => client.request({ document: GetEncryptedApiTokenDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), "GetEncryptedApiToken", "query", variables);
1061
1084
  },
@@ -4609,6 +4632,13 @@ var GQLClient = class {
4609
4632
  const { me } = await this._clientSdk.Me();
4610
4633
  return me;
4611
4634
  }
4635
+ async getLastOrg(email) {
4636
+ const getLastOrgRes = await this._clientSdk.getLastOrg({ email });
4637
+ return {
4638
+ organizationId: getLastOrgRes?.user?.[0]?.userOrganizationsAndUserOrganizationRoles?.[0]?.organization?.id,
4639
+ userName: getLastOrgRes?.user?.[0]?.name ?? ""
4640
+ };
4641
+ }
4612
4642
  async createCliLogin(variables) {
4613
4643
  const res = await this._clientSdk.CreateCliLogin(variables, {
4614
4644
  // We may have outdated API key in the config storage. Avoid using it for the login request.
@@ -5118,6 +5148,13 @@ function uploadAiBlameBuilder(args) {
5118
5148
  type: "string",
5119
5149
  array: true,
5120
5150
  describe: chalk3.bold("Tool/IDE name(s) (optional, one per session)")
5151
+ }).option("blame-type", {
5152
+ type: "string",
5153
+ array: true,
5154
+ choices: Object.values(AiBlameInferenceType),
5155
+ describe: chalk3.bold(
5156
+ "Blame type(s) (optional, one per session, defaults to CHAT)"
5157
+ )
5121
5158
  }).strict();
5122
5159
  }
5123
5160
  async function uploadAiBlameHandlerFromExtension(args) {
@@ -5126,7 +5163,8 @@ async function uploadAiBlameHandlerFromExtension(args) {
5126
5163
  inference: [],
5127
5164
  model: [],
5128
5165
  toolName: [],
5129
- aiResponseAt: []
5166
+ aiResponseAt: [],
5167
+ blameType: []
5130
5168
  };
5131
5169
  await withFile(async (promptFile) => {
5132
5170
  await fsPromises2.writeFile(
@@ -5141,6 +5179,7 @@ async function uploadAiBlameHandlerFromExtension(args) {
5141
5179
  uploadArgs.model.push(args.model);
5142
5180
  uploadArgs.toolName.push(args.tool);
5143
5181
  uploadArgs.aiResponseAt.push(args.responseTime);
5182
+ uploadArgs.blameType.push(args.blameType || "CHAT" /* Chat */);
5144
5183
  await uploadAiBlameHandler(uploadArgs, false);
5145
5184
  });
5146
5185
  });
@@ -5163,6 +5202,7 @@ async function uploadAiBlameHandler(args, exitOnError = true) {
5163
5202
  const models = args.model || [];
5164
5203
  const tools = args.toolName || args["tool-name"] || [];
5165
5204
  const responseTimes = args.aiResponseAt || args["ai-response-at"] || [];
5205
+ const blameTypes = args.blameType || args["blame-type"] || [];
5166
5206
  if (prompts.length !== inferences.length) {
5167
5207
  const errorMsg = "prompt and inference must have the same number of entries";
5168
5208
  console.error(chalk3.red(errorMsg));
@@ -5194,7 +5234,8 @@ async function uploadAiBlameHandler(args, exitOnError = true) {
5194
5234
  inferenceFileName: path6.basename(inferencePath),
5195
5235
  aiResponseAt: responseTimes[i] || nowIso,
5196
5236
  model: models[i],
5197
- toolName: tools[i]
5237
+ toolName: tools[i],
5238
+ blameType: blameTypes[i] || "CHAT" /* Chat */
5198
5239
  });
5199
5240
  }
5200
5241
  const authenticatedClient = await getAuthenticatedGQLClientForIdeExtension();
@@ -5214,18 +5255,22 @@ async function uploadAiBlameHandler(args, exitOnError = true) {
5214
5255
  const us = uploadSessions[i];
5215
5256
  const promptPath = String(prompts[i]);
5216
5257
  const inferencePath = String(inferences[i]);
5217
- await uploadFile({
5218
- file: promptPath,
5219
- url: us.prompt.url,
5220
- uploadFields: JSON.parse(us.prompt.uploadFieldsJSON),
5221
- uploadKey: us.prompt.uploadKey
5222
- });
5223
- await uploadFile({
5224
- file: inferencePath,
5225
- url: us.inference.url,
5226
- uploadFields: JSON.parse(us.inference.uploadFieldsJSON),
5227
- uploadKey: us.inference.uploadKey
5228
- });
5258
+ await Promise.all([
5259
+ // Prompt
5260
+ uploadFile({
5261
+ file: promptPath,
5262
+ url: us.prompt.url,
5263
+ uploadFields: JSON.parse(us.prompt.uploadFieldsJSON),
5264
+ uploadKey: us.prompt.uploadKey
5265
+ }),
5266
+ // Inference
5267
+ uploadFile({
5268
+ file: inferencePath,
5269
+ url: us.inference.url,
5270
+ uploadFields: JSON.parse(us.inference.uploadFieldsJSON),
5271
+ uploadKey: us.inference.uploadKey
5272
+ })
5273
+ ]);
5229
5274
  }
5230
5275
  const finalizeSessions = uploadSessions.map((us, i) => {
5231
5276
  const s = sessions[i];
@@ -5235,7 +5280,8 @@ async function uploadAiBlameHandler(args, exitOnError = true) {
5235
5280
  inferenceKey: us.inference.uploadKey,
5236
5281
  aiResponseAt: s.aiResponseAt,
5237
5282
  model: s.model,
5238
- toolName: s.toolName
5283
+ toolName: s.toolName,
5284
+ blameType: s.blameType
5239
5285
  };
5240
5286
  });
5241
5287
  const finRes = await authenticatedClient.finalizeAIBlameInferencesUploadRaw({