@atlaskit/editor-common 115.14.0 → 115.15.0

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,15 @@
1
1
  # @atlaskit/editor-common
2
2
 
3
+ ## 115.15.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [`9f6b6c9fffc50`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/9f6b6c9fffc50) -
8
+ Add analytics for the on-device (local LLM) autocomplete slow lane: fire a `localModelLoaded`
9
+ track event when the engine initialises successfully (with load duration and GPU info) and a
10
+ `localModelLoadFailed` track event when it fails, categorising the reason and capturing WebGPU
11
+ capability diagnostics to surface user-machine limitations.
12
+
3
13
  ## 115.14.0
4
14
 
5
15
  ### Minor Changes
@@ -230,6 +230,10 @@ var ACTION = exports.ACTION = /*#__PURE__*/function (ACTION) {
230
230
  ACTION["SUGGESTION_INSERTED"] = "suggestionInserted";
231
231
  ACTION["SUGGESTION_DISMISSED"] = "suggestionDismissed";
232
232
  ACTION["SUGGESTION_VIEWED"] = "suggestionViewed";
233
+ // fired when the on-device autocomplete LLM finishes loading/starting
234
+ ACTION["LOCAL_MODEL_LOADED"] = "localModelLoaded";
235
+ // fired when the on-device autocomplete LLM fails to load/start
236
+ ACTION["LOCAL_MODEL_LOAD_FAILED"] = "localModelLoadFailed";
233
237
  ACTION["TABLE_WIDTH_INFO"] = "tableWidthInformation";
234
238
  ACTION["SUPPRESSED"] = "suppressed";
235
239
  return ACTION;
@@ -19,7 +19,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
19
19
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t2 in e) "default" !== _t2 && {}.hasOwnProperty.call(e, _t2) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t2)) && (i.get || i.set) ? o(f, _t2, i) : f[_t2] = e[_t2]); return f; })(e, t); }
20
20
  var SENTRY_DSN = 'https://0b10c8e02fb44d8796c047b102c9bee8@o55978.ingest.sentry.io/4505129224110080';
21
21
  var packageName = 'editor-common'; // Sentry doesn't accept '/' in its releases https://docs.sentry.io/platforms/javascript/configuration/releases/
22
- var packageVersion = "115.13.0";
22
+ var packageVersion = "115.14.0";
23
23
  var sanitiseSentryEvents = function sanitiseSentryEvents(data, _hint) {
24
24
  // Remove URL as it has UGC
25
25
  // Ignored via go/ees007
@@ -24,7 +24,7 @@ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.
24
24
  * @jsx jsx
25
25
  */ // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
26
26
  var packageName = "@atlaskit/editor-common";
27
- var packageVersion = "115.13.0";
27
+ var packageVersion = "115.14.0";
28
28
  var halfFocusRing = 1;
29
29
  var dropOffset = '0, 8';
30
30
  var fadeIn = (0, _react2.keyframes)({
@@ -226,6 +226,10 @@ export let ACTION = /*#__PURE__*/function (ACTION) {
226
226
  ACTION["SUGGESTION_INSERTED"] = "suggestionInserted";
227
227
  ACTION["SUGGESTION_DISMISSED"] = "suggestionDismissed";
228
228
  ACTION["SUGGESTION_VIEWED"] = "suggestionViewed";
229
+ // fired when the on-device autocomplete LLM finishes loading/starting
230
+ ACTION["LOCAL_MODEL_LOADED"] = "localModelLoaded";
231
+ // fired when the on-device autocomplete LLM fails to load/start
232
+ ACTION["LOCAL_MODEL_LOAD_FAILED"] = "localModelLoadFailed";
229
233
  ACTION["TABLE_WIDTH_INFO"] = "tableWidthInformation";
230
234
  ACTION["SUPPRESSED"] = "suppressed";
231
235
  return ACTION;
@@ -4,7 +4,7 @@ import { isFedRamp } from './environment';
4
4
  import { normaliseSentryBreadcrumbs, SERIALIZABLE_ATTRIBUTES } from './normalise-sentry-breadcrumbs';
5
5
  const SENTRY_DSN = 'https://0b10c8e02fb44d8796c047b102c9bee8@o55978.ingest.sentry.io/4505129224110080';
6
6
  const packageName = 'editor-common'; // Sentry doesn't accept '/' in its releases https://docs.sentry.io/platforms/javascript/configuration/releases/
7
- const packageVersion = "115.13.0";
7
+ const packageVersion = "115.14.0";
8
8
  const sanitiseSentryEvents = (data, _hint) => {
9
9
  // Remove URL as it has UGC
10
10
  // Ignored via go/ees007
@@ -14,7 +14,7 @@ import withAnalyticsEvents from '@atlaskit/analytics-next/withAnalyticsEvents';
14
14
  import { fg } from '@atlaskit/platform-feature-flags';
15
15
  import Layer from '../Layer';
16
16
  const packageName = "@atlaskit/editor-common";
17
- const packageVersion = "115.13.0";
17
+ const packageVersion = "115.14.0";
18
18
  const halfFocusRing = 1;
19
19
  const dropOffset = '0, 8';
20
20
  const fadeIn = keyframes({
@@ -226,6 +226,10 @@ export var ACTION = /*#__PURE__*/function (ACTION) {
226
226
  ACTION["SUGGESTION_INSERTED"] = "suggestionInserted";
227
227
  ACTION["SUGGESTION_DISMISSED"] = "suggestionDismissed";
228
228
  ACTION["SUGGESTION_VIEWED"] = "suggestionViewed";
229
+ // fired when the on-device autocomplete LLM finishes loading/starting
230
+ ACTION["LOCAL_MODEL_LOADED"] = "localModelLoaded";
231
+ // fired when the on-device autocomplete LLM fails to load/start
232
+ ACTION["LOCAL_MODEL_LOAD_FAILED"] = "localModelLoadFailed";
229
233
  ACTION["TABLE_WIDTH_INFO"] = "tableWidthInformation";
230
234
  ACTION["SUPPRESSED"] = "suppressed";
231
235
  return ACTION;
@@ -10,7 +10,7 @@ import { isFedRamp } from './environment';
10
10
  import { normaliseSentryBreadcrumbs, SERIALIZABLE_ATTRIBUTES } from './normalise-sentry-breadcrumbs';
11
11
  var SENTRY_DSN = 'https://0b10c8e02fb44d8796c047b102c9bee8@o55978.ingest.sentry.io/4505129224110080';
12
12
  var packageName = 'editor-common'; // Sentry doesn't accept '/' in its releases https://docs.sentry.io/platforms/javascript/configuration/releases/
13
- var packageVersion = "115.13.0";
13
+ var packageVersion = "115.14.0";
14
14
  var sanitiseSentryEvents = function sanitiseSentryEvents(data, _hint) {
15
15
  // Remove URL as it has UGC
16
16
  // Ignored via go/ees007
@@ -21,7 +21,7 @@ import withAnalyticsEvents from '@atlaskit/analytics-next/withAnalyticsEvents';
21
21
  import { fg } from '@atlaskit/platform-feature-flags';
22
22
  import Layer from '../Layer';
23
23
  var packageName = "@atlaskit/editor-common";
24
- var packageVersion = "115.13.0";
24
+ var packageVersion = "115.14.0";
25
25
  var halfFocusRing = 1;
26
26
  var dropOffset = '0, 8';
27
27
  var fadeIn = keyframes({
@@ -24,5 +24,43 @@ type ContextualTypeaheadDismissedAttributes = {
24
24
  reason: 'escape' | 'blur';
25
25
  };
26
26
  type ContextualTypeaheadDismissedAEP = TrackAEP<ACTION.SUGGESTION_DISMISSED, ACTION_SUBJECT.CONTEXTUAL_TYPEAHEAD, undefined, ContextualTypeaheadDismissedAttributes, undefined>;
27
- export type ContextualTypeaheadEventPayload = ContextualTypeaheadViewedAEP | ContextualTypeaheadAcceptedAEP | ContextualTypeaheadDismissedAEP;
27
+ type ContextualTypeaheadLocalModelLoadedAttributes = {
28
+ /** Semantic embedder loaded alongside the causal LM (loads atomically). */
29
+ embeddingModelId: string;
30
+ /** GPU architecture reported by the adapter (e.g. "metal-3"). */
31
+ gpuArchitecture?: string;
32
+ /** GPU vendor reported by the adapter (e.g. "apple", "intel"). */
33
+ gpuVendor?: string;
34
+ /** Model engine load time in ms (excludes the WebGPU capability probe). */
35
+ loadDurationMs: number;
36
+ /** Causal LM identifier that loaded. */
37
+ modelId: string;
38
+ };
39
+ type ContextualTypeaheadLocalModelLoadedAEP = TrackAEP<ACTION.LOCAL_MODEL_LOADED, ACTION_SUBJECT.CONTEXTUAL_TYPEAHEAD, undefined, ContextualTypeaheadLocalModelLoadedAttributes, undefined>;
40
+ type ContextualTypeaheadLocalModelLoadFailedAttributes = {
41
+ /** Whether a usable WebGPU adapter was found on the machine. */
42
+ adapterAvailable?: boolean;
43
+ /** Semantic embedder loaded alongside the causal LM (loads atomically). */
44
+ embeddingModelId: string;
45
+ /** GPU architecture reported by the adapter (e.g. "metal-3"). */
46
+ gpuArchitecture?: string;
47
+ /** GPU vendor reported by the adapter (e.g. "apple", "intel"). */
48
+ gpuVendor?: string;
49
+ /** Largest single GPU buffer the adapter allows, in MB. */
50
+ maxBufferSizeMB?: number;
51
+ /** Largest storage-buffer binding the adapter allows, in MB. */
52
+ maxStorageBufferBindingSizeMB?: number;
53
+ /** Canonical, controlled failure description — derived from `reason`, never raw error text. */
54
+ message: string;
55
+ /** Causal LM identifier that failed to load. */
56
+ modelId: string;
57
+ /** Coarse, controlled failure category — never free-form. */
58
+ reason: 'webgpu_unavailable' | 'webgpu_no_adapter' | 'missing_shader_f16' | 'insufficient_memory' | 'model_download_failed' | 'module_load_failed' | 'init_failed';
59
+ /** Whether the GPU supports the shader-f16 feature the model requires. */
60
+ shaderF16Supported?: boolean;
61
+ /** Whether navigator.gpu exists at all. */
62
+ webgpuAvailable?: boolean;
63
+ };
64
+ type ContextualTypeaheadLocalModelLoadFailedAEP = TrackAEP<ACTION.LOCAL_MODEL_LOAD_FAILED, ACTION_SUBJECT.CONTEXTUAL_TYPEAHEAD, undefined, ContextualTypeaheadLocalModelLoadFailedAttributes, undefined>;
65
+ export type ContextualTypeaheadEventPayload = ContextualTypeaheadViewedAEP | ContextualTypeaheadAcceptedAEP | ContextualTypeaheadDismissedAEP | ContextualTypeaheadLocalModelLoadedAEP | ContextualTypeaheadLocalModelLoadFailedAEP;
28
66
  export {};
@@ -222,6 +222,8 @@ export declare enum ACTION {
222
222
  SUGGESTION_INSERTED = "suggestionInserted",
223
223
  SUGGESTION_DISMISSED = "suggestionDismissed",
224
224
  SUGGESTION_VIEWED = "suggestionViewed",
225
+ LOCAL_MODEL_LOADED = "localModelLoaded",
226
+ LOCAL_MODEL_LOAD_FAILED = "localModelLoadFailed",
225
227
  TABLE_WIDTH_INFO = "tableWidthInformation",
226
228
  SUPPRESSED = "suppressed"
227
229
  }
@@ -24,5 +24,43 @@ type ContextualTypeaheadDismissedAttributes = {
24
24
  reason: 'escape' | 'blur';
25
25
  };
26
26
  type ContextualTypeaheadDismissedAEP = TrackAEP<ACTION.SUGGESTION_DISMISSED, ACTION_SUBJECT.CONTEXTUAL_TYPEAHEAD, undefined, ContextualTypeaheadDismissedAttributes, undefined>;
27
- export type ContextualTypeaheadEventPayload = ContextualTypeaheadViewedAEP | ContextualTypeaheadAcceptedAEP | ContextualTypeaheadDismissedAEP;
27
+ type ContextualTypeaheadLocalModelLoadedAttributes = {
28
+ /** Semantic embedder loaded alongside the causal LM (loads atomically). */
29
+ embeddingModelId: string;
30
+ /** GPU architecture reported by the adapter (e.g. "metal-3"). */
31
+ gpuArchitecture?: string;
32
+ /** GPU vendor reported by the adapter (e.g. "apple", "intel"). */
33
+ gpuVendor?: string;
34
+ /** Model engine load time in ms (excludes the WebGPU capability probe). */
35
+ loadDurationMs: number;
36
+ /** Causal LM identifier that loaded. */
37
+ modelId: string;
38
+ };
39
+ type ContextualTypeaheadLocalModelLoadedAEP = TrackAEP<ACTION.LOCAL_MODEL_LOADED, ACTION_SUBJECT.CONTEXTUAL_TYPEAHEAD, undefined, ContextualTypeaheadLocalModelLoadedAttributes, undefined>;
40
+ type ContextualTypeaheadLocalModelLoadFailedAttributes = {
41
+ /** Whether a usable WebGPU adapter was found on the machine. */
42
+ adapterAvailable?: boolean;
43
+ /** Semantic embedder loaded alongside the causal LM (loads atomically). */
44
+ embeddingModelId: string;
45
+ /** GPU architecture reported by the adapter (e.g. "metal-3"). */
46
+ gpuArchitecture?: string;
47
+ /** GPU vendor reported by the adapter (e.g. "apple", "intel"). */
48
+ gpuVendor?: string;
49
+ /** Largest single GPU buffer the adapter allows, in MB. */
50
+ maxBufferSizeMB?: number;
51
+ /** Largest storage-buffer binding the adapter allows, in MB. */
52
+ maxStorageBufferBindingSizeMB?: number;
53
+ /** Canonical, controlled failure description — derived from `reason`, never raw error text. */
54
+ message: string;
55
+ /** Causal LM identifier that failed to load. */
56
+ modelId: string;
57
+ /** Coarse, controlled failure category — never free-form. */
58
+ reason: 'webgpu_unavailable' | 'webgpu_no_adapter' | 'missing_shader_f16' | 'insufficient_memory' | 'model_download_failed' | 'module_load_failed' | 'init_failed';
59
+ /** Whether the GPU supports the shader-f16 feature the model requires. */
60
+ shaderF16Supported?: boolean;
61
+ /** Whether navigator.gpu exists at all. */
62
+ webgpuAvailable?: boolean;
63
+ };
64
+ type ContextualTypeaheadLocalModelLoadFailedAEP = TrackAEP<ACTION.LOCAL_MODEL_LOAD_FAILED, ACTION_SUBJECT.CONTEXTUAL_TYPEAHEAD, undefined, ContextualTypeaheadLocalModelLoadFailedAttributes, undefined>;
65
+ export type ContextualTypeaheadEventPayload = ContextualTypeaheadViewedAEP | ContextualTypeaheadAcceptedAEP | ContextualTypeaheadDismissedAEP | ContextualTypeaheadLocalModelLoadedAEP | ContextualTypeaheadLocalModelLoadFailedAEP;
28
66
  export {};
@@ -222,6 +222,8 @@ export declare enum ACTION {
222
222
  SUGGESTION_INSERTED = "suggestionInserted",
223
223
  SUGGESTION_DISMISSED = "suggestionDismissed",
224
224
  SUGGESTION_VIEWED = "suggestionViewed",
225
+ LOCAL_MODEL_LOADED = "localModelLoaded",
226
+ LOCAL_MODEL_LOAD_FAILED = "localModelLoadFailed",
225
227
  TABLE_WIDTH_INFO = "tableWidthInformation",
226
228
  SUPPRESSED = "suppressed"
227
229
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/editor-common",
3
- "version": "115.14.0",
3
+ "version": "115.15.0",
4
4
  "description": "A package that contains common classes and components for editor and renderer",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"