appium-xcuitest-driver 12.1.4 → 12.2.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.
Files changed (36) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/build/lib/commands/bidi/constants.d.ts +1 -0
  3. package/build/lib/commands/bidi/constants.d.ts.map +1 -1
  4. package/build/lib/commands/bidi/constants.js +1 -0
  5. package/build/lib/commands/bidi/constants.js.map +1 -1
  6. package/build/lib/commands/bidi/models.d.ts +7 -1
  7. package/build/lib/commands/bidi/models.d.ts.map +1 -1
  8. package/build/lib/commands/bidi/models.js +15 -1
  9. package/build/lib/commands/bidi/models.js.map +1 -1
  10. package/build/lib/commands/bidi/types.d.ts +16 -0
  11. package/build/lib/commands/bidi/types.d.ts.map +1 -1
  12. package/build/lib/commands/system-monitor.d.ts +18 -0
  13. package/build/lib/commands/system-monitor.d.ts.map +1 -0
  14. package/build/lib/commands/system-monitor.js +50 -0
  15. package/build/lib/commands/system-monitor.js.map +1 -0
  16. package/build/lib/device/system-monitor-session.d.ts +46 -0
  17. package/build/lib/device/system-monitor-session.d.ts.map +1 -0
  18. package/build/lib/device/system-monitor-session.js +124 -0
  19. package/build/lib/device/system-monitor-session.js.map +1 -0
  20. package/build/lib/driver.d.ts +14 -0
  21. package/build/lib/driver.d.ts.map +1 -1
  22. package/build/lib/driver.js +10 -0
  23. package/build/lib/driver.js.map +1 -1
  24. package/build/lib/execute-method-map.d.ts +9 -0
  25. package/build/lib/execute-method-map.d.ts.map +1 -1
  26. package/build/lib/execute-method-map.js +9 -0
  27. package/build/lib/execute-method-map.js.map +1 -1
  28. package/lib/commands/bidi/constants.ts +1 -0
  29. package/lib/commands/bidi/models.ts +28 -2
  30. package/lib/commands/bidi/types.ts +18 -0
  31. package/lib/commands/system-monitor.ts +57 -0
  32. package/lib/device/system-monitor-session.ts +141 -0
  33. package/lib/driver.ts +13 -0
  34. package/lib/execute-method-map.ts +9 -0
  35. package/npm-shrinkwrap.json +19 -19
  36. package/package.json +2 -2
package/CHANGELOG.md CHANGED
@@ -1,3 +1,9 @@
1
+ ## [12.2.0](https://github.com/appium/appium-xcuitest-driver/compare/v12.1.4...v12.2.0) (2026-08-04)
2
+
3
+ ### Features
4
+
5
+ * Add mobile extensions for DVT sysmontap system monitoring ([#2933](https://github.com/appium/appium-xcuitest-driver/issues/2933)) ([7ee1ba0](https://github.com/appium/appium-xcuitest-driver/commit/7ee1ba03862e2018488827d7bda0ce2eb1c79045))
6
+
1
7
  ## [12.1.4](https://github.com/appium/appium-xcuitest-driver/compare/v12.1.3...v12.1.4) (2026-08-01)
2
8
 
3
9
  ### Miscellaneous Chores
@@ -2,4 +2,5 @@ export declare const BIDI_EVENT_NAME = "bidiEvent";
2
2
  export declare const CONTEXT_UPDATED_EVENT = "appium:xcuitest.contextUpdated";
3
3
  export declare const LOG_ENTRY_ADDED_EVENT = "log.entryAdded";
4
4
  export declare const NETWORK_MONITOR_EVENT = "appium:xcuitest.networkMonitor";
5
+ export declare const SYSTEM_MONITOR_EVENT = "appium:xcuitest.systemMonitor";
5
6
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../lib/commands/bidi/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe,cAAc,CAAC;AAE3C,eAAO,MAAM,qBAAqB,mCAAoC,CAAC;AACvE,eAAO,MAAM,qBAAqB,mBAAmB,CAAC;AACtD,eAAO,MAAM,qBAAqB,mCAAoC,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../lib/commands/bidi/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe,cAAc,CAAC;AAE3C,eAAO,MAAM,qBAAqB,mCAAoC,CAAC;AACvE,eAAO,MAAM,qBAAqB,mBAAmB,CAAC;AACtD,eAAO,MAAM,qBAAqB,mCAAoC,CAAC;AACvE,eAAO,MAAM,oBAAoB,kCAAmC,CAAC"}
@@ -3,4 +3,5 @@ const DOMAIN = 'xcuitest';
3
3
  export const CONTEXT_UPDATED_EVENT = `appium:${DOMAIN}.contextUpdated`;
4
4
  export const LOG_ENTRY_ADDED_EVENT = 'log.entryAdded';
5
5
  export const NETWORK_MONITOR_EVENT = `appium:${DOMAIN}.networkMonitor`;
6
+ export const SYSTEM_MONITOR_EVENT = `appium:${DOMAIN}.systemMonitor`;
6
7
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../lib/commands/bidi/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG,WAAW,CAAC;AAC3C,MAAM,MAAM,GAAG,UAAU,CAAC;AAC1B,MAAM,CAAC,MAAM,qBAAqB,GAAG,UAAU,MAAM,iBAAiB,CAAC;AACvE,MAAM,CAAC,MAAM,qBAAqB,GAAG,gBAAgB,CAAC;AACtD,MAAM,CAAC,MAAM,qBAAqB,GAAG,UAAU,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../lib/commands/bidi/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG,WAAW,CAAC;AAC3C,MAAM,MAAM,GAAG,UAAU,CAAC;AAC1B,MAAM,CAAC,MAAM,qBAAqB,GAAG,UAAU,MAAM,iBAAiB,CAAC;AACvE,MAAM,CAAC,MAAM,qBAAqB,GAAG,gBAAgB,CAAC;AACtD,MAAM,CAAC,MAAM,qBAAqB,GAAG,UAAU,MAAM,iBAAiB,CAAC;AACvE,MAAM,CAAC,MAAM,oBAAoB,GAAG,UAAU,MAAM,gBAAgB,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { LogEntry } from '../types.js';
2
- import type { LogEntryAddedEvent, ContextUpdatedEvent, NetworkMonitorBiDiEvent } from './types.js';
2
+ import type { LogEntryAddedEvent, ContextUpdatedEvent, NetworkMonitorBiDiEvent, SystemMonitorBiDiEvent } from './types.js';
3
3
  export declare const makeContextUpdatedEvent: (contextName: string) => ContextUpdatedEvent;
4
4
  /**
5
5
  * Builds a BiDi event for a single DVT NetworkMonitor instrument payload.
@@ -7,6 +7,12 @@ export declare const makeContextUpdatedEvent: (contextName: string) => ContextUp
7
7
  * downstream mutates) without the lossiness of `JSON.stringify` (e.g. `NaN`, `undefined` handling).
8
8
  */
9
9
  export declare function makeNetworkMonitorEvent(event: object): NetworkMonitorBiDiEvent;
10
+ /**
11
+ * Builds a BiDi event for a single labelled DVT sysmontap sample (system or per-process snapshot).
12
+ * Clones the payload with `structuredClone` so subscribers get a plain snapshot (safe if anything
13
+ * downstream mutates) without the lossiness of `JSON.stringify` (e.g. `NaN`, `undefined` handling).
14
+ */
15
+ export declare function makeSystemMonitorEvent(event: object): SystemMonitorBiDiEvent;
10
16
  /** Builds the BiDi log.entryAdded payload from an internal log entry. */
11
17
  export declare function makeLogEntryAddedEvent(entry: LogEntry, context: string, type: string): LogEntryAddedEvent;
12
18
  //# sourceMappingURL=models.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../../../lib/commands/bidi/models.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,aAAa,CAAC;AAE1C,OAAO,KAAK,EAAC,kBAAkB,EAAE,mBAAmB,EAAgB,uBAAuB,EAAC,MAAM,YAAY,CAAC;AAY/G,eAAO,MAAM,uBAAuB,GAAI,aAAa,MAAM,wBACA,CAAC;AAE5D;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,uBAAuB,CAQ9E;AAED,yEAAyE;AACzE,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,kBAAkB,CAezG"}
1
+ {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../../../lib/commands/bidi/models.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,aAAa,CAAC;AAO1C,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EAEnB,uBAAuB,EACvB,sBAAsB,EACvB,MAAM,YAAY,CAAC;AAYpB,eAAO,MAAM,uBAAuB,GAAI,aAAa,MAAM,wBACA,CAAC;AAE5D;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,uBAAuB,CAQ9E;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,sBAAsB,CAQ5E;AAED,yEAAyE;AACzE,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,kBAAkB,CAezG"}
@@ -1,5 +1,5 @@
1
1
  import { NATIVE_WIN } from '../constants.js';
2
- import { CONTEXT_UPDATED_EVENT, LOG_ENTRY_ADDED_EVENT, NETWORK_MONITOR_EVENT } from './constants.js';
2
+ import { CONTEXT_UPDATED_EVENT, LOG_ENTRY_ADDED_EVENT, NETWORK_MONITOR_EVENT, SYSTEM_MONITOR_EVENT, } from './constants.js';
3
3
  function toContextUpdatedEvent(method, contextName) {
4
4
  return {
5
5
  method,
@@ -24,6 +24,20 @@ export function makeNetworkMonitorEvent(event) {
24
24
  },
25
25
  };
26
26
  }
27
+ /**
28
+ * Builds a BiDi event for a single labelled DVT sysmontap sample (system or per-process snapshot).
29
+ * Clones the payload with `structuredClone` so subscribers get a plain snapshot (safe if anything
30
+ * downstream mutates) without the lossiness of `JSON.stringify` (e.g. `NaN`, `undefined` handling).
31
+ */
32
+ export function makeSystemMonitorEvent(event) {
33
+ return {
34
+ context: NATIVE_WIN,
35
+ method: SYSTEM_MONITOR_EVENT,
36
+ params: {
37
+ event: structuredClone(event),
38
+ },
39
+ };
40
+ }
27
41
  /** Builds the BiDi log.entryAdded payload from an internal log entry. */
28
42
  export function makeLogEntryAddedEvent(entry, context, type) {
29
43
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"models.js","sourceRoot":"","sources":["../../../../lib/commands/bidi/models.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAC;AAE3C,OAAO,EAAC,qBAAqB,EAAE,qBAAqB,EAAE,qBAAqB,EAAC,MAAM,gBAAgB,CAAC;AAGnG,SAAS,qBAAqB,CAAC,MAAc,EAAE,WAAmB;IAChE,OAAO;QACL,MAAM;QACN,MAAM,EAAE;YACN,IAAI,EAAE,WAAW;YACjB,IAAI,EAAE,WAAW,KAAK,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK;SACpD;KACF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,WAAmB,EAAE,EAAE,CAC7D,qBAAqB,CAAC,qBAAqB,EAAE,WAAW,CAAC,CAAC;AAE5D;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CAAC,KAAa;IACnD,OAAO;QACL,OAAO,EAAE,UAAU;QACnB,MAAM,EAAE,qBAAqB;QAC7B,MAAM,EAAE;YACN,KAAK,EAAE,eAAe,CAAC,KAAK,CAA4B;SACzD;KACF,CAAC;AACJ,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,sBAAsB,CAAC,KAAe,EAAE,OAAe,EAAE,IAAY;IACnF,OAAO;QACL,OAAO;QACP,MAAM,EAAE,qBAAqB;QAC7B,MAAM,EAAE;YACN,IAAI;YACJ,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC;YAClC,MAAM,EAAE;gBACN,KAAK,EAAE,EAAE;gBACT,OAAO;aACR;YACD,IAAI,EAAE,KAAK,CAAC,OAAO;YACnB,SAAS,EAAE,KAAK,CAAC,SAAS;SAC3B;KACF,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,aAAqB;IAC3C,MAAM,eAAe,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC,WAAW,EAAE,CAAC;IAC5D,QAAQ,eAAe,EAAE,CAAC;QACxB,KAAK,OAAO,CAAC;QACb,KAAK,MAAM,CAAC;QACZ,KAAK,MAAM,CAAC;QACZ,KAAK,OAAO;YACV,OAAO,eAA+B,CAAC;QACzC;YACE,OAAO,MAAM,CAAC;IAClB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"models.js","sourceRoot":"","sources":["../../../../lib/commands/bidi/models.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAC;AAE3C,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,gBAAgB,CAAC;AASxB,SAAS,qBAAqB,CAAC,MAAc,EAAE,WAAmB;IAChE,OAAO;QACL,MAAM;QACN,MAAM,EAAE;YACN,IAAI,EAAE,WAAW;YACjB,IAAI,EAAE,WAAW,KAAK,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK;SACpD;KACF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,WAAmB,EAAE,EAAE,CAC7D,qBAAqB,CAAC,qBAAqB,EAAE,WAAW,CAAC,CAAC;AAE5D;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CAAC,KAAa;IACnD,OAAO;QACL,OAAO,EAAE,UAAU;QACnB,MAAM,EAAE,qBAAqB;QAC7B,MAAM,EAAE;YACN,KAAK,EAAE,eAAe,CAAC,KAAK,CAA4B;SACzD;KACF,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CAAC,KAAa;IAClD,OAAO;QACL,OAAO,EAAE,UAAU;QACnB,MAAM,EAAE,oBAAoB;QAC5B,MAAM,EAAE;YACN,KAAK,EAAE,eAAe,CAAC,KAAK,CAA4B;SACzD;KACF,CAAC;AACJ,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,sBAAsB,CAAC,KAAe,EAAE,OAAe,EAAE,IAAY;IACnF,OAAO;QACL,OAAO;QACP,MAAM,EAAE,qBAAqB;QAC7B,MAAM,EAAE;YACN,IAAI;YACJ,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC;YAClC,MAAM,EAAE;gBACN,KAAK,EAAE,EAAE;gBACT,OAAO;aACR;YACD,IAAI,EAAE,KAAK,CAAC,OAAO;YACnB,SAAS,EAAE,KAAK,CAAC,SAAS;SAC3B;KACF,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,aAAqB;IAC3C,MAAM,eAAe,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC,WAAW,EAAE,CAAC;IAC5D,QAAQ,eAAe,EAAE,CAAC;QACxB,KAAK,OAAO,CAAC;QACb,KAAK,MAAM,CAAC;QACZ,KAAK,MAAM,CAAC;QACZ,KAAK,OAAO;YACV,OAAO,eAA+B,CAAC;QACzC;YACE,OAAO,MAAM,CAAC;IAClB,CAAC;AACH,CAAC"}
@@ -16,6 +16,22 @@ export interface NetworkMonitorEventParams {
16
16
  export interface NetworkMonitorBiDiEvent extends BiDiEvent<NetworkMonitorEventParams> {
17
17
  context: string;
18
18
  }
19
+ export interface SystemMonitorEventParams {
20
+ /**
21
+ * DVT sysmontap sample, labelled by attribute name. Tagged by `kind`:
22
+ * `system` carries device-wide metrics (`event.system`), `processes` carries a
23
+ * per-process snapshot array (`event.processes`).
24
+ */
25
+ event: Record<string, unknown>;
26
+ }
27
+ /**
28
+ * BiDi event emitted for each labelled DVT sysmontap sample while `mobile: startSystemMonitor` is active.
29
+ *
30
+ * @see https://github.com/appium/appium-ios-remotexpc
31
+ */
32
+ export interface SystemMonitorBiDiEvent extends BiDiEvent<SystemMonitorEventParams> {
33
+ context: string;
34
+ }
19
35
  interface BiDiEvent<TParams> {
20
36
  method: string;
21
37
  params: TParams;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../lib/commands/bidi/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAG/D,MAAM,WAAW,kBAAmB,SAAQ,SAAS,CAAC,wBAAwB,CAAC;IAC7E,OAAO,EAAE,MAAM,CAAC;CACjB;AAGD,MAAM,WAAW,mBAAoB,SAAQ,SAAS,CAAC,oBAAoB,CAAC;CAAG;AAE/E,MAAM,WAAW,yBAAyB;IACxC,gGAAgG;IAChG,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED;;;;GAIG;AACH,MAAM,WAAW,uBAAwB,SAAQ,SAAS,CAAC,yBAAyB,CAAC;IACnF,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,SAAS,CAAC,OAAO;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,UAAU,cAAc;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,wBAAwB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,YAAY,CAAC;IACpB,MAAM,EAAE,cAAc,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,oBAAoB;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,QAAQ,GAAG,KAAK,CAAC;CACxB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../lib/commands/bidi/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAG/D,MAAM,WAAW,kBAAmB,SAAQ,SAAS,CAAC,wBAAwB,CAAC;IAC7E,OAAO,EAAE,MAAM,CAAC;CACjB;AAGD,MAAM,WAAW,mBAAoB,SAAQ,SAAS,CAAC,oBAAoB,CAAC;CAAG;AAE/E,MAAM,WAAW,yBAAyB;IACxC,gGAAgG;IAChG,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED;;;;GAIG;AACH,MAAM,WAAW,uBAAwB,SAAQ,SAAS,CAAC,yBAAyB,CAAC;IACnF,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,wBAAwB;IACvC;;;;OAIG;IACH,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED;;;;GAIG;AACH,MAAM,WAAW,sBAAuB,SAAQ,SAAS,CAAC,wBAAwB,CAAC;IACjF,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,SAAS,CAAC,OAAO;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,UAAU,cAAc;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,wBAAwB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,YAAY,CAAC;IACpB,MAAM,EAAE,cAAc,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,oBAAoB;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,QAAQ,GAAG,KAAK,CAAC;CACxB"}
@@ -0,0 +1,18 @@
1
+ import type { XCUITestDriver } from '../driver.js';
2
+ /**
3
+ * Starts streaming DVT sysmontap (CPU / memory / per-process) samples to WebDriver BiDi subscribers
4
+ * (`appium:xcuitest.systemMonitor`).
5
+ *
6
+ * Requires a real device on iOS/tvOS 18+ and appium-ios-remotexpc.
7
+ *
8
+ * @see https://github.com/appium/appium-ios-remotexpc
9
+ *
10
+ * @param intervalMs - Optional sampling interval in milliseconds, forwarded to `sysmontap.configure()`.
11
+ * Uses the sysmontap default (500ms) when omitted.
12
+ *
13
+ * If a monitor is already running, this is a no-op so the session keeps streaming.
14
+ */
15
+ export declare function mobileStartSystemMonitor(this: XCUITestDriver, intervalMs?: number): Promise<void>;
16
+ /** Stops DVT sysmontap streaming started with `mobile: startSystemMonitor`. */
17
+ export declare function mobileStopSystemMonitor(this: XCUITestDriver): Promise<void>;
18
+ //# sourceMappingURL=system-monitor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"system-monitor.d.ts","sourceRoot":"","sources":["../../../lib/commands/system-monitor.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,cAAc,CAAC;AAIjD;;;;;;;;;;;;GAYG;AACH,wBAAsB,wBAAwB,CAAC,IAAI,EAAE,cAAc,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA0BvG;AAED,+EAA+E;AAC/E,wBAAsB,uBAAuB,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAOjF"}
@@ -0,0 +1,50 @@
1
+ import { errors } from 'appium/driver.js';
2
+ import { SystemMonitorSession } from '../device/system-monitor-session.js';
3
+ import { isIos18OrNewer } from '../utils/index.js';
4
+ import { requireRealDevice } from './helpers/index.js';
5
+ /**
6
+ * Starts streaming DVT sysmontap (CPU / memory / per-process) samples to WebDriver BiDi subscribers
7
+ * (`appium:xcuitest.systemMonitor`).
8
+ *
9
+ * Requires a real device on iOS/tvOS 18+ and appium-ios-remotexpc.
10
+ *
11
+ * @see https://github.com/appium/appium-ios-remotexpc
12
+ *
13
+ * @param intervalMs - Optional sampling interval in milliseconds, forwarded to `sysmontap.configure()`.
14
+ * Uses the sysmontap default (500ms) when omitted.
15
+ *
16
+ * If a monitor is already running, this is a no-op so the session keeps streaming.
17
+ */
18
+ export async function mobileStartSystemMonitor(intervalMs) {
19
+ requireRealDevice(this, 'DVT system monitor');
20
+ if (!isIos18OrNewer(this.opts)) {
21
+ throw new errors.InvalidArgumentError(`mobile: startSystemMonitor requires iOS/tvOS 18 or newer. ` +
22
+ `The current platformVersion is '${this.opts.platformVersion ?? 'unknown'}'.`);
23
+ }
24
+ if (this._systemMonitorSession?.isRunning()) {
25
+ this.log.info(`DVT system monitor is already active; continuing`);
26
+ return;
27
+ }
28
+ if (this._systemMonitorSession) {
29
+ this._systemMonitorSession = null;
30
+ }
31
+ const session = new SystemMonitorSession(this.log, this.device.udid, this.remoteXPCFacade);
32
+ try {
33
+ await session.start(this.eventEmitter, { intervalMs });
34
+ }
35
+ catch (e) {
36
+ await session.interrupt();
37
+ throw e;
38
+ }
39
+ this._systemMonitorSession = session;
40
+ }
41
+ /** Stops DVT sysmontap streaming started with `mobile: startSystemMonitor`. */
42
+ export async function mobileStopSystemMonitor() {
43
+ if (!this._systemMonitorSession) {
44
+ this.log.info('System monitor has not been started; nothing to stop');
45
+ return;
46
+ }
47
+ await this._systemMonitorSession.interrupt();
48
+ this._systemMonitorSession = null;
49
+ }
50
+ //# sourceMappingURL=system-monitor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"system-monitor.js","sourceRoot":"","sources":["../../../lib/commands/system-monitor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,kBAAkB,CAAC;AAExC,OAAO,EAAC,oBAAoB,EAAC,MAAM,qCAAqC,CAAC;AAEzE,OAAO,EAAC,cAAc,EAAC,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAC,iBAAiB,EAAC,MAAM,oBAAoB,CAAC;AAErD;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAuB,UAAmB;IACtF,iBAAiB,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;IAE9C,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,MAAM,CAAC,oBAAoB,CACnC,4DAA4D;YAC1D,mCAAmC,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,SAAS,IAAI,CAChF,CAAC;IACJ,CAAC;IAED,IAAI,IAAI,CAAC,qBAAqB,EAAE,SAAS,EAAE,EAAE,CAAC;QAC5C,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;QAClE,OAAO;IACT,CAAC;IACD,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC/B,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;IACpC,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,oBAAoB,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;IAC3F,IAAI,CAAC;QACH,MAAM,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE,EAAC,UAAU,EAAC,CAAC,CAAC;IACvD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,OAAO,CAAC,SAAS,EAAE,CAAC;QAC1B,MAAM,CAAC,CAAC;IACV,CAAC;IACD,IAAI,CAAC,qBAAqB,GAAG,OAAO,CAAC;AACvC,CAAC;AAED,+EAA+E;AAC/E,MAAM,CAAC,KAAK,UAAU,uBAAuB;IAC3C,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAChC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAC;QACtE,OAAO;IACT,CAAC;IACD,MAAM,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE,CAAC;IAC7C,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;AACpC,CAAC"}
@@ -0,0 +1,46 @@
1
+ import type { EventEmitter } from 'node:events';
2
+ import type { AppiumLogger } from '@appium/types';
3
+ import type { RemoteXPCFacade } from './remote-xpc/index.js';
4
+ export interface SystemMonitorSessionOptions {
5
+ /** Sampling interval in milliseconds, forwarded to `sysmontap.configure()`. */
6
+ intervalMs?: number;
7
+ }
8
+ /**
9
+ * Active DVT sysmontap session: streams labelled CPU/memory/process samples to the driver BiDi event bus.
10
+ */
11
+ export declare class SystemMonitorSession {
12
+ private readonly log;
13
+ private readonly udid;
14
+ private readonly remoteXPCFacade;
15
+ private dvt;
16
+ private runPromise;
17
+ private stopped;
18
+ /**
19
+ * @param log - Logger for this session (typically the driver logger).
20
+ * @param udid - Target device UDID for `startDVTService`.
21
+ */
22
+ constructor(log: AppiumLogger, udid: string, remoteXPCFacade: RemoteXPCFacade | null);
23
+ /**
24
+ * @returns `true` only while the consume loop may still be receiving events (`this.dvt` is set).
25
+ * After normal completion, error, or {@link interrupt}, this becomes `false`.
26
+ */
27
+ isRunning(): boolean;
28
+ /**
29
+ * Opens `startDVTService` and begins iterating `sysmontap.messages()`, labelling each raw sample and
30
+ * emitting it on `eventEmitter` using `BIDI_EVENT_NAME` and `makeSystemMonitorEvent`
31
+ * (BiDi `appium:xcuitest.systemMonitor`).
32
+ *
33
+ * @param eventEmitter - Typically the session driver's `eventEmitter` (WebDriver BiDi bus).
34
+ */
35
+ start(eventEmitter: EventEmitter, options?: SystemMonitorSessionOptions): Promise<void>;
36
+ /**
37
+ * Stops monitoring and waits for the consume loop to finish. DVT is closed in
38
+ * {@link consumeEvents} after the sysmontap iterator exits (same pattern as
39
+ * condition inducer `disable()` → `close()`).
40
+ */
41
+ interrupt(): Promise<void>;
42
+ private consumeEvents;
43
+ private emitSample;
44
+ private closeDvt;
45
+ }
46
+ //# sourceMappingURL=system-monitor-session.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"system-monitor-session.d.ts","sourceRoot":"","sources":["../../../lib/device/system-monitor-session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;AAE9C,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAKhD,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,uBAAuB,CAAC;AAE3D,MAAM,WAAW,2BAA2B;IAC1C,+EAA+E;IAC/E,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,qBAAa,oBAAoB;IAU7B,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAXlC,OAAO,CAAC,GAAG,CAA+B;IAC1C,OAAO,CAAC,UAAU,CAA8B;IAChD,OAAO,CAAC,OAAO,CAAS;IAExB;;;OAGG;gBAEgB,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE,MAAM,EACZ,eAAe,EAAE,eAAe,GAAG,IAAI;IAG1D;;;OAGG;IACH,SAAS,IAAI,OAAO;IAIpB;;;;;;OAMG;IACG,KAAK,CAAC,YAAY,EAAE,YAAY,EAAE,OAAO,GAAE,2BAAgC,GAAG,OAAO,CAAC,IAAI,CAAC;IAejG;;;;OAIG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;YA4BlB,aAAa;IAc3B,OAAO,CAAC,UAAU;YAeJ,QAAQ;CAOvB"}
@@ -0,0 +1,124 @@
1
+ import { BIDI_EVENT_NAME } from '../commands/bidi/constants.js';
2
+ import { makeSystemMonitorEvent } from '../commands/bidi/models.js';
3
+ /**
4
+ * Active DVT sysmontap session: streams labelled CPU/memory/process samples to the driver BiDi event bus.
5
+ */
6
+ export class SystemMonitorSession {
7
+ log;
8
+ udid;
9
+ remoteXPCFacade;
10
+ dvt = null;
11
+ runPromise = null;
12
+ stopped = false;
13
+ /**
14
+ * @param log - Logger for this session (typically the driver logger).
15
+ * @param udid - Target device UDID for `startDVTService`.
16
+ */
17
+ constructor(log, udid, remoteXPCFacade) {
18
+ this.log = log;
19
+ this.udid = udid;
20
+ this.remoteXPCFacade = remoteXPCFacade;
21
+ }
22
+ /**
23
+ * @returns `true` only while the consume loop may still be receiving events (`this.dvt` is set).
24
+ * After normal completion, error, or {@link interrupt}, this becomes `false`.
25
+ */
26
+ isRunning() {
27
+ return this.dvt !== null;
28
+ }
29
+ /**
30
+ * Opens `startDVTService` and begins iterating `sysmontap.messages()`, labelling each raw sample and
31
+ * emitting it on `eventEmitter` using `BIDI_EVENT_NAME` and `makeSystemMonitorEvent`
32
+ * (BiDi `appium:xcuitest.systemMonitor`).
33
+ *
34
+ * @param eventEmitter - Typically the session driver's `eventEmitter` (WebDriver BiDi bus).
35
+ */
36
+ async start(eventEmitter, options = {}) {
37
+ this.stopped = false;
38
+ if (!this.remoteXPCFacade) {
39
+ throw new Error(`RemoteXPC is not available for device '${this.udid}'`);
40
+ }
41
+ const dvt = await this.remoteXPCFacade.requireService('system monitor', (Services) => Services.startDVTService(this.udid));
42
+ this.dvt = dvt;
43
+ if (options.intervalMs !== undefined) {
44
+ await dvt.sysmontap.configure({ intervalMs: options.intervalMs });
45
+ }
46
+ this.runPromise = this.consumeEvents(dvt, eventEmitter);
47
+ }
48
+ /**
49
+ * Stops monitoring and waits for the consume loop to finish. DVT is closed in
50
+ * {@link consumeEvents} after the sysmontap iterator exits (same pattern as
51
+ * condition inducer `disable()` → `close()`).
52
+ */
53
+ async interrupt() {
54
+ if (this.stopped) {
55
+ return;
56
+ }
57
+ this.stopped = true;
58
+ const dvt = this.dvt;
59
+ const runPromise = this.runPromise;
60
+ this.dvt = null;
61
+ this.runPromise = null;
62
+ if (dvt) {
63
+ try {
64
+ await dvt.sysmontap.stop();
65
+ }
66
+ catch (err) {
67
+ this.log.debug(`Error stopping system monitor: ${err?.message ?? err}`);
68
+ }
69
+ }
70
+ if (runPromise) {
71
+ try {
72
+ await runPromise;
73
+ }
74
+ catch (err) {
75
+ this.log.debug(`Error while finishing system monitor consume loop: ${err?.message ?? err}`);
76
+ }
77
+ }
78
+ }
79
+ async consumeEvents(dvt, eventEmitter) {
80
+ try {
81
+ for await (const sample of dvt.sysmontap.messages()) {
82
+ this.emitSample(dvt, sample, eventEmitter);
83
+ }
84
+ }
85
+ catch (err) {
86
+ if (!this.stopped) {
87
+ this.log.error('System monitor stream ended unexpectedly', err);
88
+ }
89
+ }
90
+ finally {
91
+ await this.closeDvt(dvt);
92
+ }
93
+ }
94
+ emitSample(dvt, sample, eventEmitter) {
95
+ if (sample.System) {
96
+ const system = zipAttributes(dvt.sysmontap.getSystemAttributes(), sample.System);
97
+ eventEmitter.emit(BIDI_EVENT_NAME, makeSystemMonitorEvent({ kind: 'system', system }));
98
+ }
99
+ if (sample.Processes) {
100
+ const processAttributes = dvt.sysmontap.getProcessAttributes();
101
+ const processes = Object.entries(sample.Processes)
102
+ .filter(([, values]) => Array.isArray(values))
103
+ .map(([pid, values]) => ({ pid: Number(pid), ...zipAttributes(processAttributes, values) }));
104
+ eventEmitter.emit(BIDI_EVENT_NAME, makeSystemMonitorEvent({ kind: 'processes', processes }));
105
+ }
106
+ }
107
+ async closeDvt(dvt) {
108
+ try {
109
+ await dvt.dvtService.close();
110
+ }
111
+ catch (err) {
112
+ this.log.debug(`Error closing DVT service for system monitor: ${err?.message ?? err}`);
113
+ }
114
+ }
115
+ }
116
+ /** Zip an ordered list of attribute names with a raw sysmontap value tuple. */
117
+ function zipAttributes(attributes, values) {
118
+ const result = {};
119
+ for (let i = 0; i < attributes.length; i++) {
120
+ result[attributes[i]] = values[i];
121
+ }
122
+ return result;
123
+ }
124
+ //# sourceMappingURL=system-monitor-session.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"system-monitor-session.js","sourceRoot":"","sources":["../../../lib/device/system-monitor-session.ts"],"names":[],"mappings":"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"}
@@ -54,6 +54,7 @@ import * as screenshotCommands from './commands/screenshots.js';
54
54
  import * as simctlCommands from './commands/simctl.js';
55
55
  import * as simulatorCommands from './commands/simulator.js';
56
56
  import * as sourceCommands from './commands/source.js';
57
+ import * as systemMonitorCommands from './commands/system-monitor.js';
57
58
  import * as timeoutCommands from './commands/timeouts.js';
58
59
  import type { WaitingAtoms, LogListener, FullContext } from './commands/types.js';
59
60
  import * as voiceOverCommands from './commands/voiceover.js';
@@ -67,6 +68,7 @@ import { DeviceConnectionsFactory } from './device/device-connections-factory.js
67
68
  import type { NetworkMonitorSession } from './device/network-monitor-session.js';
68
69
  import { type RealDevice } from './device/real-device-management.js';
69
70
  import { RemoteXPCFacade } from './device/remote-xpc/index.js';
71
+ import type { SystemMonitorSession } from './device/system-monitor-session.js';
70
72
  import type { CalibrationData, IConditionInducer, LifecycleData } from './types.js';
71
73
  export type XCUITestDriverOpts = DriverOpts<XCUITestDriverConstraints>;
72
74
  export type W3CXCUITestDriverCaps = W3CDriverCaps<XCUITestDriverConstraints>;
@@ -743,6 +745,15 @@ export declare class XCUITestDriver extends BaseDriver<XCUITestDriverConstraints
743
745
  readonly 'mobile: stopNetworkMonitor': {
744
746
  readonly command: "mobileStopNetworkMonitor";
745
747
  };
748
+ readonly 'mobile: startSystemMonitor': {
749
+ readonly command: "mobileStartSystemMonitor";
750
+ readonly params: {
751
+ readonly optional: readonly ["intervalMs"];
752
+ };
753
+ };
754
+ readonly 'mobile: stopSystemMonitor': {
755
+ readonly command: "mobileStopSystemMonitor";
756
+ };
746
757
  readonly 'mobile: listConditionInducers': {
747
758
  readonly command: "listConditionInducers";
748
759
  };
@@ -888,6 +899,7 @@ export declare class XCUITestDriver extends BaseDriver<XCUITestDriverConstraints
888
899
  _audioRecorder: AudioRecorder | null;
889
900
  xcodeVersion: XcodeVersion | undefined;
890
901
  _networkMonitorSession: NetworkMonitorSession | null;
902
+ _systemMonitorSession: SystemMonitorSession | null;
891
903
  _remoteXPCFacade: RemoteXPCFacade | null;
892
904
  _recentScreenRecorder: ScreenRecorder | null;
893
905
  _device: Simulator | RealDevice;
@@ -1082,6 +1094,8 @@ export declare class XCUITestDriver extends BaseDriver<XCUITestDriverConstraints
1082
1094
  mobileGetPasteboard: typeof pasteboardCommands.mobileGetPasteboard;
1083
1095
  mobileStartNetworkMonitor: typeof networkMonitorCommands.mobileStartNetworkMonitor;
1084
1096
  mobileStopNetworkMonitor: typeof networkMonitorCommands.mobileStopNetworkMonitor;
1097
+ mobileStartSystemMonitor: typeof systemMonitorCommands.mobileStartSystemMonitor;
1098
+ mobileStopSystemMonitor: typeof systemMonitorCommands.mobileStopSystemMonitor;
1085
1099
  mobileStartPerfRecord: typeof performanceCommands.mobileStartPerfRecord;
1086
1100
  mobileStopPerfRecord: typeof performanceCommands.mobileStopPerfRecord;
1087
1101
  mobileResetPermission: typeof permissionsCommands.mobileResetPermission;
@@ -1 +1 @@
1
- {"version":3,"file":"driver.d.ts","sourceRoot":"","sources":["../../lib/driver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"driver.d.ts","sourceRoot":"","sources":["../../lib/driver.ts"],"names":[],"mappings":"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"}
@@ -50,6 +50,7 @@ import * as screenshotCommands from './commands/screenshots.js';
50
50
  import * as simctlCommands from './commands/simctl.js';
51
51
  import * as simulatorCommands from './commands/simulator.js';
52
52
  import * as sourceCommands from './commands/source.js';
53
+ import * as systemMonitorCommands from './commands/system-monitor.js';
53
54
  import * as timeoutCommands from './commands/timeouts.js';
54
55
  import * as voiceOverCommands from './commands/voiceover.js';
55
56
  import { isXcodebuildNeeded as isWdaXcodebuildNeeded } from './commands/wda/constants.js';
@@ -183,6 +184,7 @@ export class XCUITestDriver extends BaseDriver {
183
184
  _audioRecorder;
184
185
  xcodeVersion;
185
186
  _networkMonitorSession;
187
+ _systemMonitorSession;
186
188
  _remoteXPCFacade;
187
189
  _recentScreenRecorder;
188
190
  _device;
@@ -484,6 +486,11 @@ export class XCUITestDriver extends BaseDriver {
484
486
  +------------------+*/
485
487
  mobileStartNetworkMonitor = networkMonitorCommands.mobileStartNetworkMonitor;
486
488
  mobileStopNetworkMonitor = networkMonitorCommands.mobileStopNetworkMonitor;
489
+ /*-----------------+
490
+ | SYSTEM MONITOR |
491
+ +-----------------+*/
492
+ mobileStartSystemMonitor = systemMonitorCommands.mobileStartSystemMonitor;
493
+ mobileStopSystemMonitor = systemMonitorCommands.mobileStopSystemMonitor;
487
494
  /*-------------+
488
495
  | PERFORMANCE |
489
496
  +-------------+*/
@@ -617,6 +624,7 @@ export class XCUITestDriver extends BaseDriver {
617
624
  this.settings = new DeviceSettings(DEFAULT_SETTINGS, this.onSettingsUpdate.bind(this));
618
625
  this.logs = {};
619
626
  this._networkMonitorSession = null;
627
+ this._systemMonitorSession = null;
620
628
  this._remoteXPCFacade = null;
621
629
  // memoize functions here, so that they are done on a per-instance basis
622
630
  for (const fn of MEMOIZED_FUNCTIONS) {
@@ -727,6 +735,8 @@ export class XCUITestDriver extends BaseDriver {
727
735
  }
728
736
  await this._networkMonitorSession?.interrupt();
729
737
  this._networkMonitorSession = null;
738
+ await this._systemMonitorSession?.interrupt();
739
+ this._systemMonitorSession = null;
730
740
  if (!isEmpty(this._perfRecorders)) {
731
741
  await Promise.all(this._perfRecorders.map((x) => x.stop(true)));
732
742
  this._perfRecorders = [];