@testdroid-ai/cli 0.1.2 → 0.1.4

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.
@@ -1 +1 @@
1
- {"version":3,"file":"connect.d.ts","sourceRoot":"","sources":["../../src/commands/connect.ts"],"names":[],"mappings":"AAeA,UAAU,cAAc;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAgDD,wBAAsB,cAAc,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAwM3E"}
1
+ {"version":3,"file":"connect.d.ts","sourceRoot":"","sources":["../../src/commands/connect.ts"],"names":[],"mappings":"AAeA,UAAU,cAAc;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAgDD,wBAAsB,cAAc,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CA2N3E"}
@@ -203,6 +203,12 @@ async function connectCommand(options) {
203
203
  const message = err instanceof Error ? err.message : String(err);
204
204
  spinner.fail(chalk_1.default.red(`Connection error: ${message}`));
205
205
  wsClient.disconnect();
206
+ // Stale credentials — server rejected the WebSocket handshake. Clear
207
+ // the saved token so the next `testdroid connect` falls back to pairing.
208
+ if (err instanceof socket_1.AuthRejectedError) {
209
+ tokenManager.clear();
210
+ console.log(chalk_1.default.yellow(' Saved credentials cleared. Run `testdroid connect` again to re-pair.'));
211
+ }
206
212
  return;
207
213
  }
208
214
  // ─── Device Tracking ────────────────────────────────────────────
@@ -215,7 +221,9 @@ async function connectCommand(options) {
215
221
  try {
216
222
  wsClient.registerDevice(device);
217
223
  }
218
- catch { }
224
+ catch (err) {
225
+ console.log(chalk_1.default.yellow(` (server registration skipped: ${err.message})`));
226
+ }
219
227
  });
220
228
  tracker.on('remove', (serial) => {
221
229
  const idx = devices.findIndex((d) => d.serial === serial);
@@ -226,7 +234,9 @@ async function connectCommand(options) {
226
234
  try {
227
235
  wsClient.unregisterDevice(serial);
228
236
  }
229
- catch { }
237
+ catch (err) {
238
+ console.log(chalk_1.default.dim(` (unregister skipped: ${err.message})`));
239
+ }
230
240
  });
231
241
  tracker.on('error', (err) => {
232
242
  console.log(chalk_1.default.dim(` ADB tracker error: ${err.message}`));
@@ -1 +1 @@
1
- {"version":3,"file":"connect.js","sourceRoot":"","sources":["../../src/commands/connect.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connect.js","sourceRoot":"","sources":["../../src/commands/connect.ts"],"names":[],"mappings":"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"}
@@ -1,38 +1,18 @@
1
1
  import { Socket } from 'socket.io-client';
2
2
  import { Device } from '@testdroid-ai/shared';
3
+ export declare class AuthRejectedError extends Error {
4
+ readonly reason: string;
5
+ constructor(reason: string);
6
+ }
3
7
  export declare class WebSocketClient {
4
8
  private socket;
5
- /**
6
- * Conecta ao servidor backend via WebSocket.
7
- */
8
9
  connect(url: string, token: string): Promise<void>;
9
- /**
10
- * Registra um dispositivo no backend.
11
- */
12
10
  registerDevice(device: Device): void;
13
- /**
14
- * Remove o registro de um dispositivo do backend.
15
- */
16
11
  unregisterDevice(serial: string): void;
17
- /**
18
- * Escuta um evento do servidor.
19
- */
20
12
  on(event: string, callback: (...args: any[]) => void): void;
21
- /**
22
- * Emite um evento para o servidor.
23
- */
24
13
  emit(event: string, data?: any): void;
25
- /**
26
- * Retorna o socket para uso direto (ex: listening de eventos).
27
- */
28
14
  getSocket(): Socket | null;
29
- /**
30
- * Verifica se esta conectado.
31
- */
32
15
  isConnected(): boolean;
33
- /**
34
- * Desconecta do servidor.
35
- */
36
16
  disconnect(): void;
37
17
  }
38
18
  //# sourceMappingURL=socket.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"socket.d.ts","sourceRoot":"","sources":["../../src/ws/socket.ts"],"names":[],"mappings":"AAAA,OAAO,EAAM,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAa,MAAM,sBAAsB,CAAC;AAEzD,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAuB;IAErC;;OAEG;IACG,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA4BxD;;OAEG;IACH,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAOpC;;OAEG;IACH,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAOtC;;OAEG;IACH,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,GAAG,IAAI;IAI3D;;OAEG;IACH,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI;IAOrC;;OAEG;IACH,SAAS,IAAI,MAAM,GAAG,IAAI;IAI1B;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB;;OAEG;IACH,UAAU,IAAI,IAAI;CAMnB"}
1
+ {"version":3,"file":"socket.d.ts","sourceRoot":"","sources":["../../src/ws/socket.ts"],"names":[],"mappings":"AAAA,OAAO,EAAM,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAa,MAAM,sBAAsB,CAAC;AAUzD,qBAAa,iBAAkB,SAAQ,KAAK;aACd,MAAM,EAAE,MAAM;gBAAd,MAAM,EAAE,MAAM;CAQ3C;AAED,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAuB;IAE/B,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAuDxD,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAOpC,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAOtC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,GAAG,IAAI;IAI3D,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI;IAOrC,SAAS,IAAI,MAAM,GAAG,IAAI;IAI1B,WAAW,IAAI,OAAO;IAItB,UAAU,IAAI,IAAI;CAMnB"}
package/dist/ws/socket.js CHANGED
@@ -1,85 +1,102 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.WebSocketClient = void 0;
3
+ exports.WebSocketClient = exports.AuthRejectedError = void 0;
4
4
  const socket_io_client_1 = require("socket.io-client");
5
5
  const shared_1 = require("@testdroid-ai/shared");
6
+ /**
7
+ * Window after `connect` in which an immediate `disconnect` is treated as an
8
+ * authentication rejection from the server. The backend's WsJwtGuard runs
9
+ * asynchronously after the transport is established, so a revoked or invalid
10
+ * token causes the server to disconnect the socket shortly after `connect` fires.
11
+ */
12
+ const AUTH_CONFIRM_WINDOW_MS = 1500;
13
+ class AuthRejectedError extends Error {
14
+ reason;
15
+ constructor(reason) {
16
+ super(`Servidor rejeitou a conexao (${reason}). ` +
17
+ `Sua sessao pode ter sido revogada. ` +
18
+ `Rode 'testdroid connect' novamente para parear.`);
19
+ this.reason = reason;
20
+ this.name = 'AuthRejectedError';
21
+ }
22
+ }
23
+ exports.AuthRejectedError = AuthRejectedError;
6
24
  class WebSocketClient {
7
25
  socket = null;
8
- /**
9
- * Conecta ao servidor backend via WebSocket.
10
- */
11
26
  async connect(url, token) {
12
27
  return new Promise((resolve, reject) => {
28
+ let settled = false;
29
+ const settle = (fn) => {
30
+ if (settled)
31
+ return;
32
+ settled = true;
33
+ fn();
34
+ };
35
+ // Reconnection is disabled during handshake so that a server-side
36
+ // disconnect surfaces as an error instead of triggering a silent retry
37
+ // loop. It gets enabled after the auth-confirm window passes.
13
38
  this.socket = (0, socket_io_client_1.io)(url, {
14
39
  auth: { token },
15
40
  transports: ['websocket'],
16
- reconnection: true,
17
- reconnectionAttempts: 5,
18
- reconnectionDelay: 2000,
41
+ reconnection: false,
42
+ });
43
+ this.socket.on('connect_error', (err) => {
44
+ settle(() => reject(new Error(`Falha na conexao: ${err.message}`)));
19
45
  });
20
46
  this.socket.on('connect', () => {
21
- resolve();
47
+ // Wait AUTH_CONFIRM_WINDOW_MS. If the server disconnects us in that
48
+ // window, the `disconnect` handler below rejects. Otherwise we
49
+ // consider the handshake accepted and enable reconnection.
50
+ setTimeout(() => {
51
+ if (!this.socket?.connected)
52
+ return; // disconnect handler fires
53
+ const manager = this.socket.io;
54
+ if (manager?.opts) {
55
+ manager.opts.reconnection = true;
56
+ manager.opts.reconnectionAttempts = 5;
57
+ manager.opts.reconnectionDelay = 2000;
58
+ }
59
+ settle(() => resolve());
60
+ }, AUTH_CONFIRM_WINDOW_MS);
22
61
  });
23
- this.socket.on('connect_error', (err) => {
24
- reject(new Error(`Falha na conexao: ${err.message}`));
62
+ this.socket.on('disconnect', (reason) => {
63
+ settle(() => reject(new AuthRejectedError(reason)));
25
64
  });
26
- // Timeout de conexão
27
65
  setTimeout(() => {
28
66
  if (!this.socket?.connected) {
29
67
  this.socket?.disconnect();
30
- reject(new Error('Timeout: nao foi possivel conectar ao servidor'));
68
+ settle(() => reject(new Error('Timeout: nao foi possivel conectar ao servidor')));
31
69
  }
32
70
  }, 10000);
33
71
  });
34
72
  }
35
- /**
36
- * Registra um dispositivo no backend.
37
- */
38
73
  registerDevice(device) {
39
74
  if (!this.socket?.connected) {
40
75
  throw new Error('WebSocket nao conectado');
41
76
  }
42
77
  this.socket.emit(shared_1.WS_EVENTS.DEVICE_CONNECTED, device);
43
78
  }
44
- /**
45
- * Remove o registro de um dispositivo do backend.
46
- */
47
79
  unregisterDevice(serial) {
48
80
  if (!this.socket?.connected) {
49
81
  throw new Error('WebSocket nao conectado');
50
82
  }
51
83
  this.socket.emit(shared_1.WS_EVENTS.DEVICE_DISCONNECTED, { serial });
52
84
  }
53
- /**
54
- * Escuta um evento do servidor.
55
- */
56
85
  on(event, callback) {
57
86
  this.socket?.on(event, callback);
58
87
  }
59
- /**
60
- * Emite um evento para o servidor.
61
- */
62
88
  emit(event, data) {
63
89
  if (!this.socket?.connected) {
64
90
  throw new Error('WebSocket nao conectado');
65
91
  }
66
92
  this.socket.emit(event, data);
67
93
  }
68
- /**
69
- * Retorna o socket para uso direto (ex: listening de eventos).
70
- */
71
94
  getSocket() {
72
95
  return this.socket;
73
96
  }
74
- /**
75
- * Verifica se esta conectado.
76
- */
77
97
  isConnected() {
78
98
  return this.socket?.connected ?? false;
79
99
  }
80
- /**
81
- * Desconecta do servidor.
82
- */
83
100
  disconnect() {
84
101
  if (this.socket) {
85
102
  this.socket.disconnect();
@@ -1 +1 @@
1
- {"version":3,"file":"socket.js","sourceRoot":"","sources":["../../src/ws/socket.ts"],"names":[],"mappings":";;;AAAA,uDAA8C;AAC9C,iDAAyD;AAEzD,MAAa,eAAe;IAClB,MAAM,GAAkB,IAAI,CAAC;IAErC;;OAEG;IACH,KAAK,CAAC,OAAO,CAAC,GAAW,EAAE,KAAa;QACtC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,IAAI,CAAC,MAAM,GAAG,IAAA,qBAAE,EAAC,GAAG,EAAE;gBACpB,IAAI,EAAE,EAAE,KAAK,EAAE;gBACf,UAAU,EAAE,CAAC,WAAW,CAAC;gBACzB,YAAY,EAAE,IAAI;gBAClB,oBAAoB,EAAE,CAAC;gBACvB,iBAAiB,EAAE,IAAI;aACxB,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;gBAC7B,OAAO,EAAE,CAAC;YACZ,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,eAAe,EAAE,CAAC,GAAG,EAAE,EAAE;gBACtC,MAAM,CAAC,IAAI,KAAK,CAAC,qBAAqB,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YACxD,CAAC,CAAC,CAAC;YAEH,qBAAqB;YACrB,UAAU,CAAC,GAAG,EAAE;gBACd,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC;oBAC5B,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC;oBAC1B,MAAM,CAAC,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC,CAAC;gBACtE,CAAC;YACH,CAAC,EAAE,KAAK,CAAC,CAAC;QACZ,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,MAAc;QAC3B,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC7C,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAS,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;IACvD,CAAC;IAED;;OAEG;IACH,gBAAgB,CAAC,MAAc;QAC7B,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC7C,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAS,CAAC,mBAAmB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED;;OAEG;IACH,EAAE,CAAC,KAAa,EAAE,QAAkC;QAClD,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,IAAI,CAAC,KAAa,EAAE,IAAU;QAC5B,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC7C,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,WAAW;QACT,OAAO,IAAI,CAAC,MAAM,EAAE,SAAS,IAAI,KAAK,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,UAAU;QACR,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YACzB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACrB,CAAC;IACH,CAAC;CACF;AA9FD,0CA8FC"}
1
+ {"version":3,"file":"socket.js","sourceRoot":"","sources":["../../src/ws/socket.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "@testdroid-ai/cli",
3
- "version": "0.1.2",
3
+ "version": "0.1.4",
4
4
  "description": "CLI for TestDroid AI — mobile test automation with AI",
5
5
  "bin": {
6
- "testdroid": "./dist/index.js"
6
+ "testdroid": "dist/index.js"
7
7
  },
8
8
  "files": [
9
9
  "dist/",