@wix/ditto-codegen-public 1.0.199 → 1.0.201

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.
Files changed (2) hide show
  1. package/dist/out.js +90 -37
  2. package/package.json +2 -2
package/dist/out.js CHANGED
@@ -40580,6 +40580,51 @@ var require_forceDataPermissionsToAnyone = __commonJS({
40580
40580
  }
40581
40581
  });
40582
40582
 
40583
+ // dist/types.js
40584
+ var require_types2 = __commonJS({
40585
+ "dist/types.js"(exports2) {
40586
+ "use strict";
40587
+ Object.defineProperty(exports2, "__esModule", { value: true });
40588
+ exports2.History = void 0;
40589
+ var History = class _History {
40590
+ constructor(messages) {
40591
+ this.messages = messages;
40592
+ }
40593
+ /**
40594
+ * Get all messages from the history
40595
+ */
40596
+ getMessages() {
40597
+ return this.messages;
40598
+ }
40599
+ /**
40600
+ * Get only user messages from the history
40601
+ */
40602
+ getUserMessages() {
40603
+ return this.messages.filter((msg) => msg.role === "USER").map((msg) => msg.text);
40604
+ }
40605
+ /**
40606
+ * Check if history has any user messages
40607
+ */
40608
+ hasUserMessages() {
40609
+ return this.getUserMessages().length > 0;
40610
+ }
40611
+ /**
40612
+ * Check if history is empty
40613
+ */
40614
+ isEmpty() {
40615
+ return this.messages.length === 0;
40616
+ }
40617
+ /**
40618
+ * Create a History instance from an array of ChatMessage
40619
+ */
40620
+ static from(messages) {
40621
+ return new _History(messages ?? []);
40622
+ }
40623
+ };
40624
+ exports2.History = History;
40625
+ }
40626
+ });
40627
+
40583
40628
  // dist/agents/planner/PlannerAgent.js
40584
40629
  var require_PlannerAgent = __commonJS({
40585
40630
  "dist/agents/planner/PlannerAgent.js"(exports2) {
@@ -40593,6 +40638,7 @@ var require_PlannerAgent = __commonJS({
40593
40638
  var forceDataPermissionsToAnyone_1 = require_forceDataPermissionsToAnyone();
40594
40639
  var constants_1 = require_constants();
40595
40640
  var codeGenerationService_12 = require_codeGenerationService();
40641
+ var types_2 = require_types2();
40596
40642
  var PlannerAgent = class {
40597
40643
  constructor(useIteration = false) {
40598
40644
  this.useIteration = useIteration;
@@ -40605,8 +40651,14 @@ var require_PlannerAgent = __commonJS({
40605
40651
  isIteration: this.useIteration
40606
40652
  });
40607
40653
  }
40608
- buildUserMessage(blueprint, previousResources, error) {
40654
+ buildUserMessage(blueprint, history, previousResources, error) {
40609
40655
  const sections = [];
40656
+ const historyHelper = types_2.History.from(history);
40657
+ if (historyHelper.hasUserMessages()) {
40658
+ const userMessages = historyHelper.getUserMessages();
40659
+ sections.push(`## User Requirements from Chat History
40660
+ ${userMessages.join("\n\n")}`);
40661
+ }
40610
40662
  sections.push(`## App: ${blueprint.appName}`);
40611
40663
  sections.push(`### Summary
40612
40664
  ${blueprint.summary}`);
@@ -40629,8 +40681,8 @@ ${error}`);
40629
40681
  }
40630
40682
  return sections.join("\n\n");
40631
40683
  }
40632
- async generatePlan({ systemPrompt, blueprint, error, previousResources, schema }) {
40633
- const userMessage = this.buildUserMessage(blueprint, previousResources, error);
40684
+ async generatePlan({ systemPrompt, blueprint, error, previousResources, schema, history }) {
40685
+ const userMessage = this.buildUserMessage(blueprint, history, previousResources, error);
40634
40686
  const result = await codeGenerationService_12.codegenAIProxyService.generateCodegenObject({
40635
40687
  userMessage,
40636
40688
  systemPrompt,
@@ -40647,7 +40699,7 @@ ${error}`);
40647
40699
  return plan;
40648
40700
  }
40649
40701
  async generate(blueprint, options) {
40650
- const { previousResources } = options || {};
40702
+ const { history, previousResources } = options || {};
40651
40703
  const extensions = blueprint?.extensions || [];
40652
40704
  const hasEmbeddedScriptExtensions = extensions.some((ext) => ext.type === types_1.ExtensionType.EMBEDDED_SCRIPT);
40653
40705
  const hasBackendApiExtensions = extensions.some((ext) => ext.type === types_1.ExtensionType.BACKEND_API);
@@ -40664,7 +40716,8 @@ ${error}`);
40664
40716
  blueprint,
40665
40717
  error: lastError,
40666
40718
  previousResources,
40667
- schema
40719
+ schema,
40720
+ history
40668
40721
  });
40669
40722
  return result;
40670
40723
  } catch (error) {
@@ -84461,7 +84514,7 @@ var require_zod_compat = __commonJS({
84461
84514
  });
84462
84515
 
84463
84516
  // ../../node_modules/@modelcontextprotocol/sdk/dist/cjs/types.js
84464
- var require_types2 = __commonJS({
84517
+ var require_types3 = __commonJS({
84465
84518
  "../../node_modules/@modelcontextprotocol/sdk/dist/cjs/types.js"(exports2) {
84466
84519
  "use strict";
84467
84520
  var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
@@ -87877,7 +87930,7 @@ var require_protocol = __commonJS({
87877
87930
  exports2.Protocol = exports2.DEFAULT_REQUEST_TIMEOUT_MSEC = void 0;
87878
87931
  exports2.mergeCapabilities = mergeCapabilities;
87879
87932
  var zod_compat_js_1 = require_zod_compat();
87880
- var types_js_1 = require_types2();
87933
+ var types_js_1 = require_types3();
87881
87934
  var interfaces_js_1 = require_interfaces();
87882
87935
  var zod_json_schema_compat_js_1 = require_zod_json_schema_compat();
87883
87936
  exports2.DEFAULT_REQUEST_TIMEOUT_MSEC = 6e4;
@@ -94916,7 +94969,7 @@ var require_draft7 = __commonJS({
94916
94969
  });
94917
94970
 
94918
94971
  // ../../node_modules/@modelcontextprotocol/sdk/node_modules/ajv/dist/vocabularies/discriminator/types.js
94919
- var require_types3 = __commonJS({
94972
+ var require_types4 = __commonJS({
94920
94973
  "../../node_modules/@modelcontextprotocol/sdk/node_modules/ajv/dist/vocabularies/discriminator/types.js"(exports2) {
94921
94974
  "use strict";
94922
94975
  Object.defineProperty(exports2, "__esModule", { value: true });
@@ -94935,7 +94988,7 @@ var require_discriminator = __commonJS({
94935
94988
  "use strict";
94936
94989
  Object.defineProperty(exports2, "__esModule", { value: true });
94937
94990
  var codegen_1 = require_codegen();
94938
- var types_1 = require_types3();
94991
+ var types_1 = require_types4();
94939
94992
  var compile_1 = require_compile2();
94940
94993
  var ref_error_1 = require_ref_error();
94941
94994
  var util_1 = require_util3();
@@ -95663,7 +95716,7 @@ var require_client = __commonJS({
95663
95716
  "use strict";
95664
95717
  Object.defineProperty(exports2, "__esModule", { value: true });
95665
95718
  exports2.ExperimentalClientTasks = void 0;
95666
- var types_js_1 = require_types2();
95719
+ var types_js_1 = require_types3();
95667
95720
  var ExperimentalClientTasks = class {
95668
95721
  constructor(_client) {
95669
95722
  this._client = _client;
@@ -95871,7 +95924,7 @@ var require_client2 = __commonJS({
95871
95924
  exports2.Client = void 0;
95872
95925
  exports2.getSupportedElicitationModes = getSupportedElicitationModes;
95873
95926
  var protocol_js_1 = require_protocol();
95874
- var types_js_1 = require_types2();
95927
+ var types_js_1 = require_types3();
95875
95928
  var ajv_provider_js_1 = require_ajv_provider();
95876
95929
  var zod_compat_js_1 = require_zod_compat();
95877
95930
  var client_js_1 = require_client();
@@ -96901,7 +96954,7 @@ var require_stdio = __commonJS({
96901
96954
  exports2.ReadBuffer = void 0;
96902
96955
  exports2.deserializeMessage = deserializeMessage;
96903
96956
  exports2.serializeMessage = serializeMessage;
96904
- var types_js_1 = require_types2();
96957
+ var types_js_1 = require_types3();
96905
96958
  var ReadBuffer = class {
96906
96959
  append(chunk) {
96907
96960
  this._buffer = this._buffer ? Buffer.concat([this._buffer, chunk]) : chunk;
@@ -97126,7 +97179,7 @@ var require_WixMCPClient = __commonJS({
97126
97179
  exports2.disconnectWixMCPClient = disconnectWixMCPClient;
97127
97180
  var index_js_1 = require_client2();
97128
97181
  var stdio_js_1 = require_stdio2();
97129
- var types_js_1 = require_types2();
97182
+ var types_js_1 = require_types3();
97130
97183
  var WixMCPClient = class {
97131
97184
  constructor() {
97132
97185
  this.client = null;
@@ -97241,7 +97294,7 @@ var require_WixMCPClient = __commonJS({
97241
97294
  });
97242
97295
 
97243
97296
  // ../sdk-picker/dist/types.js
97244
- var require_types4 = __commonJS({
97297
+ var require_types5 = __commonJS({
97245
97298
  "../sdk-picker/dist/types.js"(exports2) {
97246
97299
  "use strict";
97247
97300
  Object.defineProperty(exports2, "__esModule", { value: true });
@@ -97284,7 +97337,7 @@ var require_tools3 = __commonJS({
97284
97337
  exports2.createReadMethodSchemaTool = createReadMethodSchemaTool;
97285
97338
  exports2.createSubmitPlanTool = createSubmitPlanTool;
97286
97339
  exports2.createSDKPickerTools = createSDKPickerTools;
97287
- var types_1 = require_types4();
97340
+ var types_1 = require_types5();
97288
97341
  exports2.SDK_PICKER_TOOL_NAMES = {
97289
97342
  SEARCH_SDK_DOCS: "search_sdk_docs",
97290
97343
  READ_DOCS_ARTICLE: "read_docs_article",
@@ -97412,20 +97465,14 @@ var require_sdkEnricher = __commonJS({
97412
97465
  console.warn(`No docsUrl for API ${api.api}, skipping documentation fetch`);
97413
97466
  return api;
97414
97467
  }
97415
- try {
97416
- const [docsResponse, schemaResponse] = await Promise.all([
97417
- mcpClient.readDocsArticle(api.docsUrl),
97418
- mcpClient.readMethodSchema(api.docsUrl)
97419
- ]);
97420
- return {
97421
- ...api,
97422
- documentation: docsResponse.content,
97423
- methodSchema: schemaResponse.schema
97424
- };
97425
- } catch (error) {
97426
- console.error(`Failed to fetch documentation for ${api.api}:`, error);
97427
- return api;
97468
+ const [documentation, methodSchema] = await Promise.all([
97469
+ mcpClient.readDocsArticle(api.docsUrl).then((r) => r.content).catch(() => void 0),
97470
+ mcpClient.readMethodSchema(api.docsUrl).then((r) => r.schema).catch(() => void 0)
97471
+ ]);
97472
+ if (!documentation && !methodSchema) {
97473
+ throw new Error(`Failed to fetch documentation for API: ${api.api}`);
97428
97474
  }
97475
+ return { ...api, documentation, methodSchema };
97429
97476
  }
97430
97477
  }
97431
97478
  });
@@ -102099,10 +102146,12 @@ var require_orchestrator = __commonJS({
102099
102146
  this.agentsFactory = agentsFactory;
102100
102147
  }
102101
102148
  async generatePlan(request) {
102102
- const { blueprint } = request;
102149
+ const { blueprint, history } = request;
102103
102150
  this.emitEvent("planner:start", {});
102104
102151
  const planner = this.agentsFactory.getAgent({ type: "PLANNER" });
102105
- const plan = await planner.generate(blueprint);
102152
+ const plan = await planner.generate(blueprint, {
102153
+ history
102154
+ });
102106
102155
  console.log("Plan", JSON.stringify(plan, null, 2));
102107
102156
  this.emitEvent("planner:done", {});
102108
102157
  return plan;
@@ -108265,7 +108314,7 @@ var require_http_client_node = __commonJS({
108265
108314
  });
108266
108315
 
108267
108316
  // ../../node_modules/@wix/http-client/dist/src/types.js
108268
- var require_types5 = __commonJS({
108317
+ var require_types6 = __commonJS({
108269
108318
  "../../node_modules/@wix/http-client/dist/src/types.js"(exports2) {
108270
108319
  "use strict";
108271
108320
  Object.defineProperty(exports2, "__esModule", { value: true });
@@ -108303,7 +108352,7 @@ var require_index_node = __commonJS({
108303
108352
  Object.defineProperty(exports2, "HttpClient", { enumerable: true, get: function() {
108304
108353
  return http_client_node_1.HttpClient;
108305
108354
  } });
108306
- tslib_1.__exportStar(require_types5(), exports2);
108355
+ tslib_1.__exportStar(require_types6(), exports2);
108307
108356
  }
108308
108357
  });
108309
108358
 
@@ -108407,7 +108456,7 @@ var require_init_codegen = __commonJS({
108407
108456
  var ditto_codegen_types_12 = require_dist();
108408
108457
  var codegen_flow_helpers_1 = require_codegen_flow_helpers();
108409
108458
  var ditto_codegen_types_2 = require_dist();
108410
- var runInitCodegenFlow = async (blueprint) => {
108459
+ var runInitCodegenFlow = async (blueprint, history) => {
108411
108460
  const localJobContext = job_context_storage_12.jobContextStorage.getStore();
108412
108461
  console.log(`[Init] Starting init codegen task: jobId=${localJobContext?.jobId}, taskId=${localJobContext?.taskId}`);
108413
108462
  await codeGenerationService_12.codeGenerationService.updateTask(localJobContext.jobId, localJobContext.taskId, ditto_codegen_types_12.Status.RUNNING, {});
@@ -108421,20 +108470,23 @@ var require_init_codegen = __commonJS({
108421
108470
  try {
108422
108471
  const requiredPermissionsResponse = await (0, codegen_flow_helpers_1.getRequiredPermissions)(blueprint?.extensions ?? []);
108423
108472
  await (0, codegen_flow_helpers_1.updateJobPayload)(localJobContext, {
108424
- requiredPermissions: requiredPermissionsResponse?.data?.requiredPermissions ?? []
108473
+ requiredPermissions: requiredPermissionsResponse?.data?.requiredPermissions ?? [],
108474
+ history
108425
108475
  });
108426
108476
  } catch (error) {
108427
108477
  const codegenError = (0, ditto_codegen_types_2.toCodegenError)(error);
108428
108478
  console.error(`\u274C [Init] Failed to get required permissions: jobId=${localJobContext.jobId}, taskId=${localJobContext.taskId}`, error);
108429
108479
  await (0, codegen_flow_helpers_1.updateJobPayload)(localJobContext, {
108430
108480
  requiredPermissions: [],
108431
- requiredPermissionsErrors: codegenError
108481
+ requiredPermissionsErrors: codegenError,
108482
+ history
108432
108483
  });
108433
108484
  }
108434
108485
  await orchestrator.generateCode({
108435
108486
  blueprint,
108436
108487
  outputPath,
108437
- appNamespace: context_12.ctx.appNamespace
108488
+ appNamespace: context_12.ctx.appNamespace,
108489
+ history
108438
108490
  });
108439
108491
  await (0, codegen_flow_helpers_1.updateParentTaskStatus)(localJobContext, ditto_codegen_types_12.Status.COMPLETED);
108440
108492
  console.log(`[Init] Completed init codegen task: jobId=${localJobContext.jobId}, taskId=${localJobContext.taskId}`);
@@ -322676,7 +322728,8 @@ async function processJob(job) {
322676
322728
  const chatHistory = payload.history ?? [];
322677
322729
  await (0, iterate_codegen_1.runIterateCodegenFlow)(chatHistory);
322678
322730
  } else if (task.kind === "INIT_CODEGEN") {
322679
- await (0, init_codegen_1.runInitCodegenFlow)(payload.blueprint);
322731
+ const chatHistory = payload.history ?? [];
322732
+ await (0, init_codegen_1.runInitCodegenFlow)(payload.blueprint, chatHistory);
322680
322733
  }
322681
322734
  });
322682
322735
  } finally {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wix/ditto-codegen-public",
3
- "version": "1.0.199",
3
+ "version": "1.0.201",
4
4
  "description": "AI-powered Wix CLI app generator - standalone executable",
5
5
  "scripts": {
6
6
  "build": "node build.mjs",
@@ -24,5 +24,5 @@
24
24
  "@wix/ditto-codegen": "1.0.0",
25
25
  "esbuild": "^0.27.2"
26
26
  },
27
- "falconPackageHash": "295ad1ba89bf4d6f350d0a357b5cce77feac122236b271aa949ea47f"
27
+ "falconPackageHash": "8d034896942f8536f96c25ce069474b54ab4745cb22b248a130a2be7"
28
28
  }