@slicemachine/manager 0.26.2 → 0.26.3-alpha.jp-fix-volumes-move-error.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.
Files changed (111) hide show
  1. package/dist/_node_modules/@amplitude/analytics-node/lib/esm/transports/http.cjs +6 -6
  2. package/dist/_node_modules/@amplitude/analytics-node/lib/esm/transports/http.js +4 -4
  3. package/dist/_node_modules/@amplitude/analytics-node/lib/esm/transports/http.js.map +1 -1
  4. package/dist/_node_modules/@amplitude/experiment-node-server/dist/src/transport/http.cjs +4 -4
  5. package/dist/_node_modules/@amplitude/experiment-node-server/dist/src/transport/http.cjs.map +1 -1
  6. package/dist/_node_modules/@amplitude/experiment-node-server/dist/src/transport/http.js +4 -4
  7. package/dist/_node_modules/@amplitude/experiment-node-server/dist/src/transport/http.js.map +1 -1
  8. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/constants.cjs +5 -0
  9. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/constants.cjs.map +1 -0
  10. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/constants.js +5 -0
  11. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/constants.js.map +1 -0
  12. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/debug-build.cjs +5 -0
  13. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/debug-build.cjs.map +1 -0
  14. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/debug-build.js +5 -0
  15. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/debug-build.js.map +1 -0
  16. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/eventProcessors.cjs +29 -0
  17. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/eventProcessors.cjs.map +1 -0
  18. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/eventProcessors.js +29 -0
  19. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/eventProcessors.js.map +1 -0
  20. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/exports.cjs +17 -0
  21. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/exports.cjs.map +1 -0
  22. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/exports.js +17 -0
  23. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/exports.js.map +1 -0
  24. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/hub.cjs +535 -0
  25. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/hub.cjs.map +1 -0
  26. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/hub.js +535 -0
  27. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/hub.js.map +1 -0
  28. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/scope.cjs +545 -0
  29. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/scope.cjs.map +1 -0
  30. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/scope.js +545 -0
  31. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/scope.js.map +1 -0
  32. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/session.cjs +109 -0
  33. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/session.cjs.map +1 -0
  34. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/session.js +109 -0
  35. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/session.js.map +1 -0
  36. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/tracing/dynamicSamplingContext.cjs +50 -0
  37. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/tracing/dynamicSamplingContext.cjs.map +1 -0
  38. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/tracing/dynamicSamplingContext.js +50 -0
  39. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/tracing/dynamicSamplingContext.js.map +1 -0
  40. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/utils/applyScopeDataToEvent.cjs +85 -0
  41. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/utils/applyScopeDataToEvent.cjs.map +1 -0
  42. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/utils/applyScopeDataToEvent.js +85 -0
  43. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/utils/applyScopeDataToEvent.js.map +1 -0
  44. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/utils/getRootSpan.cjs +7 -0
  45. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/utils/getRootSpan.cjs.map +1 -0
  46. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/utils/getRootSpan.js +7 -0
  47. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/utils/getRootSpan.js.map +1 -0
  48. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/utils/prepareEvent.cjs +35 -0
  49. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/utils/prepareEvent.cjs.map +1 -0
  50. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/utils/prepareEvent.js +35 -0
  51. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/utils/prepareEvent.js.map +1 -0
  52. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/utils/spanUtils.cjs +39 -0
  53. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/utils/spanUtils.cjs.map +1 -0
  54. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/utils/spanUtils.js +39 -0
  55. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/utils/spanUtils.js.map +1 -0
  56. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/version.cjs +5 -0
  57. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/version.cjs.map +1 -0
  58. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/version.js +5 -0
  59. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/version.js.map +1 -0
  60. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/debug-build.cjs +5 -0
  61. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/debug-build.cjs.map +1 -0
  62. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/debug-build.js +5 -0
  63. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/debug-build.js.map +1 -0
  64. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/is.cjs +15 -0
  65. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/is.cjs.map +1 -0
  66. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/is.js +15 -0
  67. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/is.js.map +1 -0
  68. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/logger.cjs +69 -0
  69. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/logger.cjs.map +1 -0
  70. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/logger.js +69 -0
  71. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/logger.js.map +1 -0
  72. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/misc.cjs +34 -0
  73. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/misc.cjs.map +1 -0
  74. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/misc.js +34 -0
  75. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/misc.js.map +1 -0
  76. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/object.cjs +49 -0
  77. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/object.cjs.map +1 -0
  78. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/object.js +49 -0
  79. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/object.js.map +1 -0
  80. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/syncpromise.cjs +142 -0
  81. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/syncpromise.cjs.map +1 -0
  82. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/syncpromise.js +142 -0
  83. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/syncpromise.js.map +1 -0
  84. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/time.cjs +45 -0
  85. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/time.cjs.map +1 -0
  86. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/time.js +45 -0
  87. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/time.js.map +1 -0
  88. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/worldwide.cjs +18 -0
  89. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/worldwide.cjs.map +1 -0
  90. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/worldwide.js +18 -0
  91. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/worldwide.js.map +1 -0
  92. package/dist/lib/checkIsSentryEnabled.d.ts +9 -0
  93. package/dist/lib/sentryErrorHandlers.cjs +10 -0
  94. package/dist/lib/sentryErrorHandlers.cjs.map +1 -0
  95. package/dist/lib/sentryErrorHandlers.d.ts +1 -0
  96. package/dist/lib/sentryErrorHandlers.js +10 -0
  97. package/dist/lib/sentryErrorHandlers.js.map +1 -0
  98. package/dist/managers/customTypes/CustomTypesManager.cjs +25 -6
  99. package/dist/managers/customTypes/CustomTypesManager.cjs.map +1 -1
  100. package/dist/managers/customTypes/CustomTypesManager.js +26 -7
  101. package/dist/managers/customTypes/CustomTypesManager.js.map +1 -1
  102. package/dist/managers/telemetry/types.cjs +8 -0
  103. package/dist/managers/telemetry/types.cjs.map +1 -1
  104. package/dist/managers/telemetry/types.d.ts +19 -1
  105. package/dist/managers/telemetry/types.js +8 -0
  106. package/dist/managers/telemetry/types.js.map +1 -1
  107. package/package.json +4 -3
  108. package/src/lib/checkIsSentryEnabled.ts +12 -0
  109. package/src/lib/sentryErrorHandlers.ts +13 -0
  110. package/src/managers/customTypes/CustomTypesManager.ts +46 -10
  111. package/src/managers/telemetry/types.ts +42 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@slicemachine/manager",
3
- "version": "0.26.2",
3
+ "version": "0.26.3-alpha.jp-fix-volumes-move-error.1",
4
4
  "description": "Manage all aspects of a Slice Machine project.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -71,7 +71,7 @@
71
71
  "@prismicio/mocks": "2.14.0",
72
72
  "@prismicio/types-internal": "3.11.2",
73
73
  "@segment/analytics-node": "^2.1.2",
74
- "@slicemachine/plugin-kit": "0.4.87",
74
+ "@slicemachine/plugin-kit": "0.4.88-alpha.jp-fix-volumes-move-error.1",
75
75
  "cookie": "^1.0.1",
76
76
  "cors": "^2.8.5",
77
77
  "execa": "^7.1.1",
@@ -131,5 +131,6 @@
131
131
  },
132
132
  "publishConfig": {
133
133
  "access": "public"
134
- }
134
+ },
135
+ "stableVersion": "0.26.2"
135
136
  }
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Checks whether or not Sentry is enabled.
3
+ *
4
+ * Sentry is enabled automatically in production but can be disabled by setting
5
+ * `VITE_ENABLE_SENTRY` to `false`.
6
+ *
7
+ * @returns Whether or not Sentry is enabled.
8
+ */
9
+ export const checkIsSentryEnabled = (): boolean =>
10
+ import.meta.env.VITE_ENABLE_SENTRY === undefined
11
+ ? import.meta.env.PROD
12
+ : import.meta.env.VITE_ENABLE_SENTRY === "true";
@@ -0,0 +1,13 @@
1
+ import * as Sentry from "@sentry/node";
2
+
3
+ import { checkIsSentryEnabled } from "./checkIsSentryEnabled";
4
+
5
+ export function trackSentryError(error: unknown): void {
6
+ if (!checkIsSentryEnabled()) {
7
+ return;
8
+ }
9
+
10
+ Sentry.captureException(error, {
11
+ ...(error instanceof Error ? { extra: { cause: error.cause } } : {}),
12
+ });
13
+ }
@@ -42,13 +42,14 @@ import { randomUUID } from "node:crypto";
42
42
  import { join as joinPath, relative as relativePath } from "node:path";
43
43
  import {
44
44
  mkdtemp,
45
- rename,
46
45
  rm,
47
46
  writeFile,
48
47
  readFile,
49
48
  readdir,
49
+ copyFile,
50
50
  } from "node:fs/promises";
51
51
  import { query as queryClaude } from "@anthropic-ai/claude-agent-sdk";
52
+ import { trackSentryError } from "../../lib/sentryErrorHandlers";
52
53
 
53
54
  type SliceMachineManagerReadCustomTypeLibraryReturnType = {
54
55
  ids: string[];
@@ -595,6 +596,8 @@ export class CustomTypesManager extends BaseManager {
595
596
  .parse(exp.payload);
596
597
 
597
598
  let tmpDir: string | undefined;
599
+ const claudeErrors: string[] = [];
600
+
598
601
  try {
599
602
  const config = await this.project.getSliceMachineConfig();
600
603
 
@@ -818,9 +821,13 @@ FINAL REMINDERS:
818
821
  prompt,
819
822
  options: {
820
823
  cwd,
821
- stderr: (data) => {
822
- if (!data.startsWith("Spawning Claude Code process")) {
823
- console.error("inferSlice error:" + data);
824
+ stderr: (error) => {
825
+ if (!error.startsWith("Spawning Claude Code process")) {
826
+ claudeErrors.push(error);
827
+ console.error(
828
+ `inferSlice - stderr for request ${requestId}:`,
829
+ error,
830
+ );
824
831
  }
825
832
  },
826
833
  model: "claude-haiku-4-5",
@@ -873,10 +880,21 @@ FINAL REMINDERS:
873
880
  for await (const query of queries) {
874
881
  switch (query.type) {
875
882
  case "result":
876
- if (query.subtype === "success") {
877
- newSliceAbsPath = query.result.match(
878
- /<new_slice_path>(.*)<\/new_slice_path>/s,
879
- )?.[1];
883
+ switch (query.subtype) {
884
+ case "success":
885
+ newSliceAbsPath = query.result.match(
886
+ /<new_slice_path>(.*)<\/new_slice_path>/s,
887
+ )?.[1];
888
+ break;
889
+ case "error_during_execution":
890
+ case "error_max_budget_usd":
891
+ case "error_max_turns":
892
+ claudeErrors.push(...query.errors);
893
+ console.error(
894
+ `inferSlice - result query error for request ${requestId}}:`,
895
+ query.errors,
896
+ );
897
+ break;
880
898
  }
881
899
  break;
882
900
  }
@@ -897,17 +915,35 @@ FINAL REMINDERS:
897
915
  );
898
916
  }
899
917
 
900
- // move the screenshot image to the new slice directory
901
- await rename(
918
+ // copy instead of moving because the file might be in a different volume
919
+ await copyFile(
902
920
  tmpImageAbsPath,
903
921
  joinPath(newSliceAbsPath, "screenshot-default.png"),
904
922
  );
905
923
 
924
+ try {
925
+ await rm(tmpImageAbsPath);
926
+ } catch (error) {
927
+ console.warn(
928
+ `inferSlice - Failed to delete temporary slice screenshot at ${tmpImageAbsPath}`,
929
+ error,
930
+ );
931
+ }
932
+
906
933
  return InferSliceResponse.parse({ slice: JSON.parse(model) });
907
934
  } finally {
908
935
  if (tmpDir && existsSync(tmpDir)) {
909
936
  await rm(tmpDir, { recursive: true });
910
937
  }
938
+
939
+ if (claudeErrors.length > 0) {
940
+ trackSentryError(
941
+ new Error(
942
+ `inferSlice - Claude encountered errors for request ${requestId}`,
943
+ { cause: { errors: claudeErrors } },
944
+ ),
945
+ );
946
+ }
911
947
  }
912
948
  } else {
913
949
  const searchParams = new URLSearchParams({ repository });
@@ -45,6 +45,11 @@ export const SegmentEventType = {
45
45
  sharedOnboarding_completed: "shared-onboarding:completed",
46
46
  sharedOnboarding_tutorial: "shared-onboarding:follow-tutorial",
47
47
  sliceGenerationFeedback: "slice-generation-feedback",
48
+ sliceGeneration_pastedFromFigma: "slice-generation:pasted-from-figma",
49
+ sliceGeneration_started: "slice-generation:started",
50
+ sliceGeneration_ended: "slice-generation:ended",
51
+ sliceGeneration_pluginInstallationClicked:
52
+ "slice-generation:plugin-installation-clicked",
48
53
  navigation_documentationLinkClicked: "navigation:documentation-link-clicked",
49
54
  sidebar_link_clicked: "sidebar:link-clicked",
50
55
  mcp_promo_link_clicked: "mcp:promo-link-clicked",
@@ -106,6 +111,14 @@ export const HumanSegmentEventType = {
106
111
  [SegmentEventType.sharedOnboarding_tutorial]:
107
112
  "Prismic Onboarding Guide Follow Tutorial",
108
113
  [SegmentEventType.sliceGenerationFeedback]: "Slice Generation Feedback",
114
+ [SegmentEventType.sliceGeneration_pastedFromFigma]:
115
+ "SliceMachine Shared Slice Generation - Pasted From Figma",
116
+ [SegmentEventType.sliceGeneration_started]:
117
+ "SliceMachine Shared Slice Generation - Started",
118
+ [SegmentEventType.sliceGeneration_ended]:
119
+ "SliceMachine Shared Slice Generation - Ended",
120
+ [SegmentEventType.sliceGeneration_pluginInstallationClicked]:
121
+ "SliceMachine Shared Slice Generation - Plugin Installation Clicked",
109
122
  [SegmentEventType.navigation_documentationLinkClicked]:
110
123
  "SliceMachine Documentation Link Clicked",
111
124
  [SegmentEventType.sidebar_link_clicked]: "Sidebar Link Clicked",
@@ -428,6 +441,31 @@ type SliceGenerationFeedback = SegmentEvent<
428
441
  }
429
442
  >;
430
443
 
444
+ type SliceGenerationPastedFromFigma = SegmentEvent<
445
+ typeof SegmentEventType.sliceGeneration_pastedFromFigma,
446
+ {
447
+ source: "shortcut" | "button";
448
+ }
449
+ >;
450
+
451
+ type SliceGenerationStarted = SegmentEvent<
452
+ typeof SegmentEventType.sliceGeneration_started,
453
+ {
454
+ source: "figma" | "upload";
455
+ }
456
+ >;
457
+
458
+ type SliceGenerationEnded = SegmentEvent<
459
+ typeof SegmentEventType.sliceGeneration_ended,
460
+ {
461
+ error: boolean;
462
+ }
463
+ >;
464
+
465
+ type SliceGenerationPluginInstallationClicked = SegmentEvent<
466
+ typeof SegmentEventType.sliceGeneration_pluginInstallationClicked
467
+ >;
468
+
431
469
  type NavigationDocumentationLinkClicked = SegmentEvent<
432
470
  typeof SegmentEventType.navigation_documentationLinkClicked,
433
471
  {
@@ -502,6 +540,10 @@ export type SegmentEvents =
502
540
  | SliceMachinePostPushToastCtaClicked
503
541
  | SliceMachineExperimentExposure
504
542
  | SliceGenerationFeedback
543
+ | SliceGenerationPastedFromFigma
544
+ | SliceGenerationStarted
545
+ | SliceGenerationEnded
546
+ | SliceGenerationPluginInstallationClicked
505
547
  | NavigationDocumentationLinkClicked
506
548
  | SidebarLinkClicked
507
549
  | McpPromoLinkClicked