@growthub/cli 0.13.1 → 0.13.2

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.
@@ -92,6 +92,7 @@ const CUSTOM_API_SOURCE_TYPE = "custom-api-webhooks";
92
92
  const DATA_MODEL_SOURCE_TYPE = "workspace-data-model";
93
93
  const LIVE_SOURCE_TYPE = "workspace-source-records";
94
94
  const TESTED_SOURCE_STATUSES = new Set(["connected", "approved", "ok", "success"]);
95
+ const HIDDEN_SANDBOX_OBJECT_IDS = new Set(["workspace-helper-sandbox"]);
95
96
 
96
97
  const SOURCE_TYPE_OBJECTS = [
97
98
  {
@@ -363,6 +364,15 @@ function getDataModelObject(config, objectId) {
363
364
  return objects.find((object) => object?.id === objectId) || null;
364
365
  }
365
366
 
367
+ function getWorkflowSandboxObject(config) {
368
+ const objects = Array.isArray(config?.dataModel?.objects) ? config.dataModel.objects : [];
369
+ return objects.find((object) => {
370
+ if (object?.objectType !== "sandbox-environment") return false;
371
+ const id = String(object?.id || "").trim();
372
+ return id && !HIDDEN_SANDBOX_OBJECT_IDS.has(id);
373
+ }) || null;
374
+ }
375
+
366
376
  function listBuilderWorkflowItems(config) {
367
377
  const navFolders = getDataModelObject(config, "nav-folders");
368
378
  const rows = Array.isArray(navFolders?.rows) ? navFolders.rows : [];
@@ -3716,13 +3726,13 @@ function WorkspaceBuilder({ initialConfig, adapterConfig, integrationAdapter, in
3716
3726
 
3717
3727
  const createWorkflow = useCallback(async () => {
3718
3728
  if (saving) return;
3719
- const sandboxObjectId = "sandboxes-alignment-loop";
3720
3729
  const nowIso = new Date().toISOString();
3721
- const existing = getDataModelObject(config, sandboxObjectId);
3730
+ const existing = getWorkflowSandboxObject(config);
3722
3731
  if (!existing) {
3723
3732
  setConfigMessage("Workflow sandbox object is missing.");
3724
3733
  return;
3725
3734
  }
3735
+ const sandboxObjectId = String(existing.id || "").trim();
3726
3736
  const rows = Array.isArray(existing.rows) ? existing.rows : [];
3727
3737
  const base = slugifyWorkflowName(`workflow-${rows.length + 1}`);
3728
3738
  const existingIds = new Set(rows.map((row) => String(row?.Name || row?.name || row?.id || "").trim()));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@growthub/cli",
3
- "version": "0.13.1",
3
+ "version": "0.13.2",
4
4
  "description": "CLI control plane for Growthub Local and Agent Workspace as Code: export, fork, inspect, operate, sync, and optionally activate governed AI workspaces.",
5
5
  "type": "module",
6
6
  "bin": {