@ai-ecoverse/slicc-browsers 0.0.0 → 1.1.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/corpus.json ADDED
@@ -0,0 +1,2533 @@
1
+ {
2
+ "schema": 1,
3
+ "cases": [
4
+ {
5
+ "name": "active-port-files",
6
+ "case": {
7
+ "description": "DevToolsActivePort files in a browser's default user-data dir and in seven-profiles, with CRLF line ends; names come from the browser id or from /json/version",
8
+ "needs": [
9
+ "user-data-dirs",
10
+ "seven-profiles"
11
+ ],
12
+ "files": {
13
+ "{userData:chrome}/DevToolsActivePort": "9301\n/devtools/browser/c1\n",
14
+ "{sevenProfiles}/edge/DevToolsActivePort": "9302\n/devtools/browser/e1\n",
15
+ "{sevenProfiles}/work/DevToolsActivePort": "9303\r\n/devtools/browser/w1\r\n",
16
+ "{sevenProfiles}/empty/Default/Preferences": "{}"
17
+ },
18
+ "http": {
19
+ "127.0.0.1:9301": {
20
+ "version": {
21
+ "Browser": "Chrome/154.0.8037.98",
22
+ "Protocol-Version": "1.3",
23
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
24
+ "V8-Version": "15.4.79.1",
25
+ "WebKit-Version": "537.36 (@a1b2c3)",
26
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9301/devtools/browser/c1"
27
+ },
28
+ "list": [
29
+ {
30
+ "id": "A1",
31
+ "type": "page",
32
+ "url": "https://example.com/",
33
+ "title": "Example",
34
+ "webSocketDebuggerUrl": "ws://127.0.0.1/devtools/page/A1"
35
+ }
36
+ ]
37
+ },
38
+ "127.0.0.1:9302": {
39
+ "version": {
40
+ "Browser": "Edg/154.0.3485.54",
41
+ "Protocol-Version": "1.3",
42
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.0.0 Edg/154.0.3485.54 Safari/537.36",
43
+ "V8-Version": "15.4.79.1",
44
+ "WebKit-Version": "537.36 (@a1b2c3)",
45
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9302/devtools/browser/e1"
46
+ },
47
+ "list": []
48
+ },
49
+ "127.0.0.1:9303": {
50
+ "version": {
51
+ "Browser": "Chrome/154.0.8037.98",
52
+ "Protocol-Version": "1.3",
53
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
54
+ "V8-Version": "15.4.79.1",
55
+ "WebKit-Version": "537.36 (@a1b2c3)",
56
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9303/devtools/browser/w1"
57
+ },
58
+ "list": []
59
+ }
60
+ }
61
+ },
62
+ "expected": {
63
+ "schema": 1,
64
+ "minChromium": 116,
65
+ "entries": [
66
+ {
67
+ "id": "cdp:127.0.0.1:9301",
68
+ "kind": "endpoint",
69
+ "tier": 2,
70
+ "name": "Google Chrome",
71
+ "version": "154.0.8037.98",
72
+ "endpoint": {
73
+ "cdp": "http://127.0.0.1:9301",
74
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9301/devtools/browser/c1",
75
+ "name": "Google Chrome",
76
+ "version": "154.0.8037.98",
77
+ "product": "Chrome/154.0.8037.98",
78
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
79
+ "source": "devtools-active-port",
80
+ "browser": "chrome",
81
+ "userDataDir": "{userData:chrome}",
82
+ "sevenOpen": false,
83
+ "sevenTabs": []
84
+ }
85
+ },
86
+ {
87
+ "id": "cdp:127.0.0.1:9302",
88
+ "kind": "endpoint",
89
+ "tier": 2,
90
+ "name": "Microsoft Edge",
91
+ "version": "154.0.3485.54",
92
+ "endpoint": {
93
+ "cdp": "http://127.0.0.1:9302",
94
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9302/devtools/browser/e1",
95
+ "name": "Microsoft Edge",
96
+ "version": "154.0.3485.54",
97
+ "product": "Edg/154.0.3485.54",
98
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.0.0 Edg/154.0.3485.54 Safari/537.36",
99
+ "source": "devtools-active-port",
100
+ "userDataDir": "{sevenProfiles}/edge",
101
+ "profile": "edge",
102
+ "sevenOpen": false,
103
+ "sevenTabs": []
104
+ }
105
+ },
106
+ {
107
+ "id": "cdp:127.0.0.1:9303",
108
+ "kind": "endpoint",
109
+ "tier": 2,
110
+ "name": "Chrome",
111
+ "version": "154.0.8037.98",
112
+ "endpoint": {
113
+ "cdp": "http://127.0.0.1:9303",
114
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9303/devtools/browser/w1",
115
+ "name": "Chrome",
116
+ "version": "154.0.8037.98",
117
+ "product": "Chrome/154.0.8037.98",
118
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
119
+ "source": "devtools-active-port",
120
+ "userDataDir": "{sevenProfiles}/work",
121
+ "profile": "work",
122
+ "sevenOpen": false,
123
+ "sevenTabs": []
124
+ }
125
+ }
126
+ ]
127
+ }
128
+ },
129
+ {
130
+ "name": "active-port-without-websocket",
131
+ "case": {
132
+ "description": "A DevToolsActivePort without a websocket path starting with / on its second line is stale, even when its port answers",
133
+ "needs": [
134
+ "user-data-dirs",
135
+ "seven-profiles"
136
+ ],
137
+ "files": {
138
+ "{userData:chrome}/DevToolsActivePort": "9501\n",
139
+ "{sevenProfiles}/bare/DevToolsActivePort": "9502",
140
+ "{sevenProfiles}/relative/DevToolsActivePort": "9503\ndevtools/browser/k3\n",
141
+ "{sevenProfiles}/blank/DevToolsActivePort": "9505\n\n",
142
+ "{sevenProfiles}/ok/DevToolsActivePort": "9504\n/devtools/browser/k4\n"
143
+ },
144
+ "http": {
145
+ "127.0.0.1:9501": {
146
+ "version": {
147
+ "Browser": "Chrome/154.0.8037.98",
148
+ "Protocol-Version": "1.3",
149
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
150
+ "V8-Version": "15.4.79.1",
151
+ "WebKit-Version": "537.36 (@a1b2c3)",
152
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9501/devtools/browser/k1"
153
+ },
154
+ "list": []
155
+ },
156
+ "127.0.0.1:9502": {
157
+ "version": {
158
+ "Browser": "Chrome/154.0.8037.98",
159
+ "Protocol-Version": "1.3",
160
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
161
+ "V8-Version": "15.4.79.1",
162
+ "WebKit-Version": "537.36 (@a1b2c3)",
163
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9502/devtools/browser/k2"
164
+ },
165
+ "list": []
166
+ },
167
+ "127.0.0.1:9503": {
168
+ "version": {
169
+ "Browser": "Chrome/154.0.8037.98",
170
+ "Protocol-Version": "1.3",
171
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
172
+ "V8-Version": "15.4.79.1",
173
+ "WebKit-Version": "537.36 (@a1b2c3)",
174
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9503/devtools/browser/k3"
175
+ },
176
+ "list": []
177
+ },
178
+ "127.0.0.1:9504": {
179
+ "version": {
180
+ "Browser": "Chrome/154.0.8037.98",
181
+ "Protocol-Version": "1.3",
182
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
183
+ "V8-Version": "15.4.79.1",
184
+ "WebKit-Version": "537.36 (@a1b2c3)",
185
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9504/devtools/browser/k4"
186
+ },
187
+ "list": []
188
+ },
189
+ "127.0.0.1:9505": {
190
+ "version": {
191
+ "Browser": "Chrome/154.0.8037.98",
192
+ "Protocol-Version": "1.3",
193
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
194
+ "V8-Version": "15.4.79.1",
195
+ "WebKit-Version": "537.36 (@a1b2c3)",
196
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9505/devtools/browser/k5"
197
+ },
198
+ "list": []
199
+ }
200
+ }
201
+ },
202
+ "expected": {
203
+ "schema": 1,
204
+ "minChromium": 116,
205
+ "entries": [
206
+ {
207
+ "id": "cdp:127.0.0.1:9504",
208
+ "kind": "endpoint",
209
+ "tier": 2,
210
+ "name": "Chrome",
211
+ "version": "154.0.8037.98",
212
+ "endpoint": {
213
+ "cdp": "http://127.0.0.1:9504",
214
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9504/devtools/browser/k4",
215
+ "name": "Chrome",
216
+ "version": "154.0.8037.98",
217
+ "product": "Chrome/154.0.8037.98",
218
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
219
+ "source": "devtools-active-port",
220
+ "userDataDir": "{sevenProfiles}/ok",
221
+ "profile": "ok",
222
+ "sevenOpen": false,
223
+ "sevenTabs": []
224
+ }
225
+ }
226
+ ]
227
+ }
228
+ },
229
+ {
230
+ "name": "cdp-localhost",
231
+ "case": {
232
+ "description": "A --cdp URL on localhost or [::1] is listed with cdp on 127.0.0.1; a ws:// URL keeps its websocket URL as given",
233
+ "needs": [
234
+ "flag"
235
+ ],
236
+ "cdp": [
237
+ "localhost:9521",
238
+ "http://LOCALHOST:9522",
239
+ "ws://localhost:9523/devtools/browser/c3",
240
+ "[::1]:9524"
241
+ ],
242
+ "http": {
243
+ "127.0.0.1:9521": {
244
+ "version": {
245
+ "Browser": "Chrome/154.0.8037.98",
246
+ "Protocol-Version": "1.3",
247
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
248
+ "V8-Version": "15.4.79.1",
249
+ "WebKit-Version": "537.36 (@a1b2c3)",
250
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9521/devtools/browser/c1"
251
+ },
252
+ "list": []
253
+ },
254
+ "127.0.0.1:9522": {
255
+ "version": {
256
+ "Browser": "Chrome/154.0.8037.98",
257
+ "Protocol-Version": "1.3",
258
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
259
+ "V8-Version": "15.4.79.1",
260
+ "WebKit-Version": "537.36 (@a1b2c3)",
261
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9522/devtools/browser/c2"
262
+ },
263
+ "list": []
264
+ },
265
+ "127.0.0.1:9523": {},
266
+ "127.0.0.1:9524": {
267
+ "version": {
268
+ "Browser": "Chrome/154.0.8037.98",
269
+ "Protocol-Version": "1.3",
270
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
271
+ "V8-Version": "15.4.79.1",
272
+ "WebKit-Version": "537.36 (@a1b2c3)",
273
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9524/devtools/browser/c4"
274
+ },
275
+ "list": []
276
+ }
277
+ }
278
+ },
279
+ "expected": {
280
+ "schema": 1,
281
+ "minChromium": 116,
282
+ "entries": [
283
+ {
284
+ "id": "cdp:127.0.0.1:9521",
285
+ "kind": "endpoint",
286
+ "tier": 2,
287
+ "name": "Chrome",
288
+ "version": "154.0.8037.98",
289
+ "endpoint": {
290
+ "cdp": "http://127.0.0.1:9521",
291
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9521/devtools/browser/c1",
292
+ "name": "Chrome",
293
+ "version": "154.0.8037.98",
294
+ "product": "Chrome/154.0.8037.98",
295
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
296
+ "source": "flag",
297
+ "sevenOpen": false,
298
+ "sevenTabs": []
299
+ }
300
+ },
301
+ {
302
+ "id": "cdp:127.0.0.1:9522",
303
+ "kind": "endpoint",
304
+ "tier": 2,
305
+ "name": "Chrome",
306
+ "version": "154.0.8037.98",
307
+ "endpoint": {
308
+ "cdp": "http://127.0.0.1:9522",
309
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9522/devtools/browser/c2",
310
+ "name": "Chrome",
311
+ "version": "154.0.8037.98",
312
+ "product": "Chrome/154.0.8037.98",
313
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
314
+ "source": "flag",
315
+ "sevenOpen": false,
316
+ "sevenTabs": []
317
+ }
318
+ },
319
+ {
320
+ "id": "cdp:127.0.0.1:9523",
321
+ "kind": "endpoint",
322
+ "tier": 2,
323
+ "name": "Chromium",
324
+ "endpoint": {
325
+ "cdp": "http://127.0.0.1:9523",
326
+ "webSocketDebuggerUrl": "ws://localhost:9523/devtools/browser/c3",
327
+ "name": "Chromium",
328
+ "source": "flag",
329
+ "wsOnly": true,
330
+ "sevenOpen": false,
331
+ "sevenTabs": []
332
+ }
333
+ },
334
+ {
335
+ "id": "cdp:127.0.0.1:9524",
336
+ "kind": "endpoint",
337
+ "tier": 2,
338
+ "name": "Chrome",
339
+ "version": "154.0.8037.98",
340
+ "endpoint": {
341
+ "cdp": "http://127.0.0.1:9524",
342
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9524/devtools/browser/c4",
343
+ "name": "Chrome",
344
+ "version": "154.0.8037.98",
345
+ "product": "Chrome/154.0.8037.98",
346
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
347
+ "source": "flag",
348
+ "sevenOpen": false,
349
+ "sevenTabs": []
350
+ }
351
+ }
352
+ ]
353
+ }
354
+ },
355
+ {
356
+ "name": "dedupe",
357
+ "case": {
358
+ "description": "An endpoint found by several sources is listed once, by host and port (localhost is 127.0.0.1): DevToolsActivePort wins over --cdp, which wins over the process scan",
359
+ "needs": [
360
+ "seven-profiles",
361
+ "flag",
362
+ "process"
363
+ ],
364
+ "files": {
365
+ "{sevenProfiles}/chrome/DevToolsActivePort": "9391\n/devtools/browser/d1\n"
366
+ },
367
+ "cdp": [
368
+ "localhost:9391",
369
+ "127.0.0.1:9392"
370
+ ],
371
+ "processes": [
372
+ {
373
+ "pid": 201,
374
+ "command": "/opt/google/chrome/chrome --remote-debugging-port=9391"
375
+ },
376
+ {
377
+ "pid": 202,
378
+ "command": "/opt/google/chrome/chrome --remote-debugging-port=9392"
379
+ },
380
+ {
381
+ "pid": 203,
382
+ "command": "/opt/google/chrome/chrome --remote-debugging-port=9393"
383
+ },
384
+ {
385
+ "pid": 204,
386
+ "command": "/opt/google/chrome/chrome --remote-debugging-port=9393 --enable-logging"
387
+ }
388
+ ],
389
+ "http": {
390
+ "127.0.0.1:9391": {
391
+ "version": {
392
+ "Browser": "Chrome/154.0.8037.98",
393
+ "Protocol-Version": "1.3",
394
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
395
+ "V8-Version": "15.4.79.1",
396
+ "WebKit-Version": "537.36 (@a1b2c3)",
397
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9391/devtools/browser/d1"
398
+ },
399
+ "list": []
400
+ },
401
+ "127.0.0.1:9392": {
402
+ "version": {
403
+ "Browser": "Chrome/154.0.8037.98",
404
+ "Protocol-Version": "1.3",
405
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
406
+ "V8-Version": "15.4.79.1",
407
+ "WebKit-Version": "537.36 (@a1b2c3)",
408
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9392/devtools/browser/d2"
409
+ },
410
+ "list": []
411
+ },
412
+ "127.0.0.1:9393": {
413
+ "version": {
414
+ "Browser": "Chrome/154.0.8037.98",
415
+ "Protocol-Version": "1.3",
416
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
417
+ "V8-Version": "15.4.79.1",
418
+ "WebKit-Version": "537.36 (@a1b2c3)",
419
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9393/devtools/browser/d3"
420
+ },
421
+ "list": []
422
+ }
423
+ }
424
+ },
425
+ "expected": {
426
+ "schema": 1,
427
+ "minChromium": 116,
428
+ "entries": [
429
+ {
430
+ "id": "cdp:127.0.0.1:9391",
431
+ "kind": "endpoint",
432
+ "tier": 2,
433
+ "name": "Chrome",
434
+ "version": "154.0.8037.98",
435
+ "endpoint": {
436
+ "cdp": "http://127.0.0.1:9391",
437
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9391/devtools/browser/d1",
438
+ "name": "Chrome",
439
+ "version": "154.0.8037.98",
440
+ "product": "Chrome/154.0.8037.98",
441
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
442
+ "source": "devtools-active-port",
443
+ "userDataDir": "{sevenProfiles}/chrome",
444
+ "profile": "chrome",
445
+ "sevenOpen": false,
446
+ "sevenTabs": []
447
+ }
448
+ },
449
+ {
450
+ "id": "cdp:127.0.0.1:9392",
451
+ "kind": "endpoint",
452
+ "tier": 2,
453
+ "name": "Chrome",
454
+ "version": "154.0.8037.98",
455
+ "endpoint": {
456
+ "cdp": "http://127.0.0.1:9392",
457
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9392/devtools/browser/d2",
458
+ "name": "Chrome",
459
+ "version": "154.0.8037.98",
460
+ "product": "Chrome/154.0.8037.98",
461
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
462
+ "source": "flag",
463
+ "sevenOpen": false,
464
+ "sevenTabs": []
465
+ }
466
+ },
467
+ {
468
+ "id": "cdp:127.0.0.1:9393",
469
+ "kind": "endpoint",
470
+ "tier": 2,
471
+ "name": "Chrome",
472
+ "version": "154.0.8037.98",
473
+ "endpoint": {
474
+ "cdp": "http://127.0.0.1:9393",
475
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9393/devtools/browser/d3",
476
+ "name": "Chrome",
477
+ "version": "154.0.8037.98",
478
+ "product": "Chrome/154.0.8037.98",
479
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
480
+ "source": "process",
481
+ "sevenOpen": false,
482
+ "sevenTabs": []
483
+ }
484
+ }
485
+ ]
486
+ }
487
+ },
488
+ {
489
+ "name": "electron",
490
+ "case": {
491
+ "description": "An Electron endpoint is named Electron; installed Electron apps rank last, and a debug-blocked app keeps debugSupport disabled",
492
+ "needs": [
493
+ "flag",
494
+ "process",
495
+ "installed"
496
+ ],
497
+ "cdp": [
498
+ "127.0.0.1:9352"
499
+ ],
500
+ "processes": [
501
+ {
502
+ "pid": 4101,
503
+ "command": "/Applications/Slack.app/Contents/MacOS/Slack --remote-debugging-port=9351"
504
+ }
505
+ ],
506
+ "http": {
507
+ "127.0.0.1:9351": {
508
+ "version": {
509
+ "Browser": "Chrome/138.0.7204.251",
510
+ "Protocol-Version": "1.3",
511
+ "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Slack/4.46.99 Chrome/138.0.7204.251 Electron/37.6.0 Safari/537.36 Sonic Slack_SSB/4.46.99",
512
+ "V8-Version": "15.4.79.1",
513
+ "WebKit-Version": "537.36 (@a1b2c3)",
514
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9351/devtools/browser/el1"
515
+ },
516
+ "list": [
517
+ {
518
+ "id": "E1",
519
+ "type": "page",
520
+ "url": "https://app.slack.com/client",
521
+ "title": "Slack",
522
+ "webSocketDebuggerUrl": "ws://127.0.0.1/devtools/page/E1"
523
+ }
524
+ ]
525
+ },
526
+ "127.0.0.1:9352": {
527
+ "version": {
528
+ "Browser": "Chrome/154.0.8037.98",
529
+ "Protocol-Version": "1.3",
530
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
531
+ "V8-Version": "15.4.79.1",
532
+ "WebKit-Version": "537.36 (@a1b2c3)",
533
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9352/devtools/browser/el2"
534
+ },
535
+ "list": []
536
+ }
537
+ },
538
+ "installed": [
539
+ {
540
+ "id": "electron:slack",
541
+ "name": "Slack",
542
+ "engine": "electron",
543
+ "path": "/Applications/Slack.app",
544
+ "executable": "/Applications/Slack.app/Contents/MacOS/Slack",
545
+ "debugSupport": "supported",
546
+ "version": "4.46.99",
547
+ "bundleId": "com.tinyspeck.slackmacgap"
548
+ },
549
+ {
550
+ "id": "electron:claude",
551
+ "name": "Claude",
552
+ "engine": "electron",
553
+ "path": "/Applications/Claude.app",
554
+ "executable": "/Applications/Claude.app/Contents/MacOS/Claude",
555
+ "debugSupport": "disabled",
556
+ "version": "0.14.10",
557
+ "bundleId": "com.anthropic.claudefordesktop"
558
+ },
559
+ {
560
+ "id": "chrome",
561
+ "name": "Google Chrome",
562
+ "engine": "chromium",
563
+ "channel": "stable",
564
+ "path": "/Applications/Google Chrome.app",
565
+ "executable": "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome",
566
+ "debugSupport": "supported",
567
+ "version": "154.0.8037.98",
568
+ "bundleId": "com.google.Chrome"
569
+ }
570
+ ]
571
+ },
572
+ "expected": {
573
+ "schema": 1,
574
+ "minChromium": 116,
575
+ "entries": [
576
+ {
577
+ "id": "cdp:127.0.0.1:9351",
578
+ "kind": "endpoint",
579
+ "tier": 2,
580
+ "name": "Electron",
581
+ "version": "138.0.7204.251",
582
+ "endpoint": {
583
+ "cdp": "http://127.0.0.1:9351",
584
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9351/devtools/browser/el1",
585
+ "name": "Electron",
586
+ "version": "138.0.7204.251",
587
+ "product": "Chrome/138.0.7204.251",
588
+ "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Slack/4.46.99 Chrome/138.0.7204.251 Electron/37.6.0 Safari/537.36 Sonic Slack_SSB/4.46.99",
589
+ "source": "process",
590
+ "sevenOpen": false,
591
+ "sevenTabs": []
592
+ }
593
+ },
594
+ {
595
+ "id": "cdp:127.0.0.1:9352",
596
+ "kind": "endpoint",
597
+ "tier": 2,
598
+ "name": "Chrome",
599
+ "version": "154.0.8037.98",
600
+ "endpoint": {
601
+ "cdp": "http://127.0.0.1:9352",
602
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9352/devtools/browser/el2",
603
+ "name": "Chrome",
604
+ "version": "154.0.8037.98",
605
+ "product": "Chrome/154.0.8037.98",
606
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
607
+ "source": "flag",
608
+ "sevenOpen": false,
609
+ "sevenTabs": []
610
+ }
611
+ },
612
+ {
613
+ "id": "chrome",
614
+ "kind": "installed",
615
+ "tier": 3,
616
+ "name": "Google Chrome",
617
+ "version": "154.0.8037.98",
618
+ "installed": {
619
+ "id": "chrome",
620
+ "name": "Google Chrome",
621
+ "engine": "chromium",
622
+ "channel": "stable",
623
+ "version": "154.0.8037.98",
624
+ "path": "/Applications/Google Chrome.app",
625
+ "executable": "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome",
626
+ "bundleId": "com.google.Chrome",
627
+ "debugSupport": "supported"
628
+ }
629
+ },
630
+ {
631
+ "id": "electron:claude",
632
+ "kind": "installed",
633
+ "tier": 5,
634
+ "name": "Claude",
635
+ "version": "0.14.10",
636
+ "installed": {
637
+ "id": "electron:claude",
638
+ "name": "Claude",
639
+ "engine": "electron",
640
+ "version": "0.14.10",
641
+ "path": "/Applications/Claude.app",
642
+ "executable": "/Applications/Claude.app/Contents/MacOS/Claude",
643
+ "bundleId": "com.anthropic.claudefordesktop",
644
+ "debugSupport": "disabled"
645
+ }
646
+ },
647
+ {
648
+ "id": "electron:slack",
649
+ "kind": "installed",
650
+ "tier": 5,
651
+ "name": "Slack",
652
+ "version": "4.46.99",
653
+ "installed": {
654
+ "id": "electron:slack",
655
+ "name": "Slack",
656
+ "engine": "electron",
657
+ "version": "4.46.99",
658
+ "path": "/Applications/Slack.app",
659
+ "executable": "/Applications/Slack.app/Contents/MacOS/Slack",
660
+ "bundleId": "com.tinyspeck.slackmacgap",
661
+ "debugSupport": "supported"
662
+ }
663
+ }
664
+ ]
665
+ }
666
+ },
667
+ {
668
+ "name": "extra-origins",
669
+ "case": {
670
+ "description": "An extra seven origin (--origin, --page) makes a tab on it a seven tab, with or without the default port",
671
+ "needs": [
672
+ "flag",
673
+ "origins"
674
+ ],
675
+ "cdp": [
676
+ "127.0.0.1:9326"
677
+ ],
678
+ "origins": [
679
+ "https://dev.example.test/"
680
+ ],
681
+ "http": {
682
+ "127.0.0.1:9326": {
683
+ "version": {
684
+ "Browser": "Chrome/154.0.8037.98",
685
+ "Protocol-Version": "1.3",
686
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
687
+ "V8-Version": "15.4.79.1",
688
+ "WebKit-Version": "537.36 (@a1b2c3)",
689
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9326/devtools/browser/o1"
690
+ },
691
+ "list": [
692
+ {
693
+ "id": "O1",
694
+ "type": "page",
695
+ "url": "https://dev.example.test/app",
696
+ "title": "dev",
697
+ "webSocketDebuggerUrl": "ws://127.0.0.1/devtools/page/O1"
698
+ },
699
+ {
700
+ "id": "O3",
701
+ "type": "page",
702
+ "url": "https://dev.example.test:443/other",
703
+ "title": "dev again",
704
+ "webSocketDebuggerUrl": "ws://127.0.0.1/devtools/page/O3"
705
+ },
706
+ {
707
+ "id": "O2",
708
+ "type": "page",
709
+ "url": "https://other.example.test/",
710
+ "title": "other",
711
+ "webSocketDebuggerUrl": "ws://127.0.0.1/devtools/page/O2"
712
+ }
713
+ ]
714
+ }
715
+ }
716
+ },
717
+ "expected": {
718
+ "schema": 1,
719
+ "minChromium": 116,
720
+ "entries": [
721
+ {
722
+ "id": "cdp:127.0.0.1:9326",
723
+ "kind": "endpoint",
724
+ "tier": 1,
725
+ "name": "Chrome",
726
+ "version": "154.0.8037.98",
727
+ "endpoint": {
728
+ "cdp": "http://127.0.0.1:9326",
729
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9326/devtools/browser/o1",
730
+ "name": "Chrome",
731
+ "version": "154.0.8037.98",
732
+ "product": "Chrome/154.0.8037.98",
733
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
734
+ "source": "flag",
735
+ "sevenOpen": true,
736
+ "sevenTabs": [
737
+ {
738
+ "id": "O1",
739
+ "url": "https://dev.example.test/app",
740
+ "title": "dev"
741
+ },
742
+ {
743
+ "id": "O3",
744
+ "url": "https://dev.example.test:443/other",
745
+ "title": "dev again"
746
+ }
747
+ ]
748
+ }
749
+ }
750
+ ]
751
+ }
752
+ },
753
+ {
754
+ "name": "linux-flatpak-snap",
755
+ "case": {
756
+ "description": "On Linux, DevToolsActivePort files in flatpak and snap user-data dirs and in a snap's seven-profiles",
757
+ "os": [
758
+ "linux"
759
+ ],
760
+ "needs": [
761
+ "user-data-dirs",
762
+ "seven-profiles"
763
+ ],
764
+ "files": {
765
+ "{home}/.var/app/com.google.Chrome/config/google-chrome/DevToolsActivePort": "9411\n/devtools/browser/l1\n",
766
+ "{home}/snap/chromium/common/chromium/DevToolsActivePort": "9412\n/devtools/browser/l2\n",
767
+ "{home}/snap/chromium/common/slicc/seven-profiles/snappy/DevToolsActivePort": "9413\n/devtools/browser/l3\n"
768
+ },
769
+ "http": {
770
+ "127.0.0.1:9411": {
771
+ "version": {
772
+ "Browser": "Chrome/154.0.8037.98",
773
+ "Protocol-Version": "1.3",
774
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
775
+ "V8-Version": "15.4.79.1",
776
+ "WebKit-Version": "537.36 (@a1b2c3)",
777
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9411/devtools/browser/l1"
778
+ },
779
+ "list": []
780
+ },
781
+ "127.0.0.1:9412": {
782
+ "version": {
783
+ "Browser": "Chrome/150.0.7800.10",
784
+ "Protocol-Version": "1.3",
785
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.7800.10 Safari/537.36",
786
+ "V8-Version": "15.4.79.1",
787
+ "WebKit-Version": "537.36 (@a1b2c3)",
788
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9412/devtools/browser/l2"
789
+ },
790
+ "list": []
791
+ },
792
+ "127.0.0.1:9413": {
793
+ "version": {
794
+ "Browser": "Chrome/154.0.8037.98",
795
+ "Protocol-Version": "1.3",
796
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
797
+ "V8-Version": "15.4.79.1",
798
+ "WebKit-Version": "537.36 (@a1b2c3)",
799
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9413/devtools/browser/l3"
800
+ },
801
+ "list": []
802
+ }
803
+ }
804
+ },
805
+ "expected": {
806
+ "schema": 1,
807
+ "minChromium": 116,
808
+ "entries": [
809
+ {
810
+ "id": "cdp:127.0.0.1:9411",
811
+ "kind": "endpoint",
812
+ "tier": 2,
813
+ "name": "Google Chrome",
814
+ "version": "154.0.8037.98",
815
+ "endpoint": {
816
+ "cdp": "http://127.0.0.1:9411",
817
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9411/devtools/browser/l1",
818
+ "name": "Google Chrome",
819
+ "version": "154.0.8037.98",
820
+ "product": "Chrome/154.0.8037.98",
821
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
822
+ "source": "devtools-active-port",
823
+ "browser": "chrome",
824
+ "userDataDir": "{home}/.var/app/com.google.Chrome/config/google-chrome",
825
+ "sevenOpen": false,
826
+ "sevenTabs": []
827
+ }
828
+ },
829
+ {
830
+ "id": "cdp:127.0.0.1:9412",
831
+ "kind": "endpoint",
832
+ "tier": 2,
833
+ "name": "Chromium",
834
+ "version": "150.0.7800.10",
835
+ "endpoint": {
836
+ "cdp": "http://127.0.0.1:9412",
837
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9412/devtools/browser/l2",
838
+ "name": "Chromium",
839
+ "version": "150.0.7800.10",
840
+ "product": "Chrome/150.0.7800.10",
841
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.7800.10 Safari/537.36",
842
+ "source": "devtools-active-port",
843
+ "browser": "chromium",
844
+ "userDataDir": "{home}/snap/chromium/common/chromium",
845
+ "sevenOpen": false,
846
+ "sevenTabs": []
847
+ }
848
+ },
849
+ {
850
+ "id": "cdp:127.0.0.1:9413",
851
+ "kind": "endpoint",
852
+ "tier": 2,
853
+ "name": "Chrome",
854
+ "version": "154.0.8037.98",
855
+ "endpoint": {
856
+ "cdp": "http://127.0.0.1:9413",
857
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9413/devtools/browser/l3",
858
+ "name": "Chrome",
859
+ "version": "154.0.8037.98",
860
+ "product": "Chrome/154.0.8037.98",
861
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
862
+ "source": "devtools-active-port",
863
+ "userDataDir": "{home}/snap/chromium/common/slicc/seven-profiles/snappy",
864
+ "profile": "snappy",
865
+ "sevenOpen": false,
866
+ "sevenTabs": []
867
+ }
868
+ }
869
+ ]
870
+ }
871
+ },
872
+ {
873
+ "name": "probe",
874
+ "case": {
875
+ "description": "slicc's port probe; the process scan wins over it for the same port",
876
+ "needs": [
877
+ "probe",
878
+ "process"
879
+ ],
880
+ "probePorts": [
881
+ 9401,
882
+ 9402,
883
+ 9403
884
+ ],
885
+ "processes": [
886
+ {
887
+ "pid": 301,
888
+ "command": "/opt/google/chrome/chrome --remote-debugging-port=9403"
889
+ }
890
+ ],
891
+ "http": {
892
+ "127.0.0.1:9401": {
893
+ "version": {
894
+ "Browser": "Chrome/154.0.8037.98",
895
+ "Protocol-Version": "1.3",
896
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
897
+ "V8-Version": "15.4.79.1",
898
+ "WebKit-Version": "537.36 (@a1b2c3)",
899
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9401/devtools/browser/q1"
900
+ },
901
+ "list": []
902
+ },
903
+ "127.0.0.1:9403": {
904
+ "version": {
905
+ "Browser": "Chrome/154.0.8037.98",
906
+ "Protocol-Version": "1.3",
907
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
908
+ "V8-Version": "15.4.79.1",
909
+ "WebKit-Version": "537.36 (@a1b2c3)",
910
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9403/devtools/browser/q3"
911
+ },
912
+ "list": []
913
+ }
914
+ }
915
+ },
916
+ "expected": {
917
+ "schema": 1,
918
+ "minChromium": 116,
919
+ "entries": [
920
+ {
921
+ "id": "cdp:127.0.0.1:9401",
922
+ "kind": "endpoint",
923
+ "tier": 2,
924
+ "name": "Chrome",
925
+ "version": "154.0.8037.98",
926
+ "endpoint": {
927
+ "cdp": "http://127.0.0.1:9401",
928
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9401/devtools/browser/q1",
929
+ "name": "Chrome",
930
+ "version": "154.0.8037.98",
931
+ "product": "Chrome/154.0.8037.98",
932
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
933
+ "source": "probe",
934
+ "sevenOpen": false,
935
+ "sevenTabs": []
936
+ }
937
+ },
938
+ {
939
+ "id": "cdp:127.0.0.1:9403",
940
+ "kind": "endpoint",
941
+ "tier": 2,
942
+ "name": "Chrome",
943
+ "version": "154.0.8037.98",
944
+ "endpoint": {
945
+ "cdp": "http://127.0.0.1:9403",
946
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9403/devtools/browser/q3",
947
+ "name": "Chrome",
948
+ "version": "154.0.8037.98",
949
+ "product": "Chrome/154.0.8037.98",
950
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
951
+ "source": "process",
952
+ "sevenOpen": false,
953
+ "sevenTabs": []
954
+ }
955
+ }
956
+ ]
957
+ }
958
+ },
959
+ {
960
+ "name": "process-scan",
961
+ "case": {
962
+ "description": "The process source: --remote-debugging-port=<n> or <n>, port 0 through the --user-data-dir's DevToolsActivePort, skipping pid 0, this process, wrappers, six's profiles and ports that don't answer",
963
+ "needs": [
964
+ "process"
965
+ ],
966
+ "files": {
967
+ "{home}/tmp/pw2/DevToolsActivePort": "9378\n/devtools/browser/p8\n",
968
+ "{home}/six/slicc/profiles/browser-coding-agent-chrome/DevToolsActivePort": "9380\n/devtools/browser/p10\n"
969
+ },
970
+ "processes": [
971
+ {
972
+ "pid": 101,
973
+ "command": "/opt/google/chrome/chrome --type=browser --remote-debugging-port=9371 --user-data-dir={home}/tmp/pw1"
974
+ },
975
+ {
976
+ "pid": 102,
977
+ "command": "\"C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe\" --remote-debugging-port 9372 --no-first-run"
978
+ },
979
+ {
980
+ "pid": 103,
981
+ "command": "node /usr/lib/node_modules/tool/cli.js --remote-debugging-port=9373"
982
+ },
983
+ {
984
+ "pid": 104,
985
+ "command": "/usr/bin/env CHROME=1 chrome --remote-debugging-port=9374"
986
+ },
987
+ {
988
+ "pid": 105,
989
+ "command": "C:\\Windows\\System32\\cmd.exe /c chrome.exe --remote-debugging-port=9375"
990
+ },
991
+ {
992
+ "pid": 0,
993
+ "command": "/opt/google/chrome/chrome --remote-debugging-port=9376"
994
+ },
995
+ {
996
+ "self": true,
997
+ "command": "/usr/local/bin/tool --remote-debugging-port=9377"
998
+ },
999
+ {
1000
+ "pid": 106,
1001
+ "command": "/Applications/Chromium.app/Contents/MacOS/Chromium --remote-debugging-port=0 --user-data-dir={home}/tmp/pw2"
1002
+ },
1003
+ {
1004
+ "pid": 107,
1005
+ "command": "/opt/google/chrome/chrome --remote-debugging-port=0"
1006
+ },
1007
+ {
1008
+ "pid": 108,
1009
+ "command": "/opt/google/chrome/chrome --remote-debugging-port=9379"
1010
+ },
1011
+ {
1012
+ "pid": 109,
1013
+ "command": "/opt/google/chrome/chrome --remote-debugging-port=0 --user-data-dir={home}/six/slicc/profiles/browser-coding-agent-chrome"
1014
+ },
1015
+ {
1016
+ "pid": 110,
1017
+ "command": "/opt/google/chrome/chrome --remote-debugging-pipe --remote-debugging-port=notaport"
1018
+ },
1019
+ {
1020
+ "pid": 111,
1021
+ "command": "PowerShell.EXE -Command chrome --remote-debugging-port=9383"
1022
+ },
1023
+ {
1024
+ "pid": 112,
1025
+ "command": "/opt/google/chrome/chrome --remote-debugging-port=9384 --remote-debugging-address=127.0.0.1"
1026
+ }
1027
+ ],
1028
+ "http": {
1029
+ "127.0.0.1:9371": {
1030
+ "version": {
1031
+ "Browser": "Chrome/154.0.8037.98",
1032
+ "Protocol-Version": "1.3",
1033
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1034
+ "V8-Version": "15.4.79.1",
1035
+ "WebKit-Version": "537.36 (@a1b2c3)",
1036
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9371/devtools/browser/p1"
1037
+ },
1038
+ "list": []
1039
+ },
1040
+ "127.0.0.1:9372": {
1041
+ "version": {
1042
+ "Browser": "Chrome/154.0.8037.98",
1043
+ "Protocol-Version": "1.3",
1044
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1045
+ "V8-Version": "15.4.79.1",
1046
+ "WebKit-Version": "537.36 (@a1b2c3)",
1047
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9372/devtools/browser/p2"
1048
+ },
1049
+ "list": []
1050
+ },
1051
+ "127.0.0.1:9373": {
1052
+ "version": {
1053
+ "Browser": "Chrome/154.0.8037.98",
1054
+ "Protocol-Version": "1.3",
1055
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1056
+ "V8-Version": "15.4.79.1",
1057
+ "WebKit-Version": "537.36 (@a1b2c3)",
1058
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9373/devtools/browser/p3"
1059
+ },
1060
+ "list": []
1061
+ },
1062
+ "127.0.0.1:9374": {
1063
+ "version": {
1064
+ "Browser": "Chrome/154.0.8037.98",
1065
+ "Protocol-Version": "1.3",
1066
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1067
+ "V8-Version": "15.4.79.1",
1068
+ "WebKit-Version": "537.36 (@a1b2c3)",
1069
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9374/devtools/browser/p4"
1070
+ },
1071
+ "list": []
1072
+ },
1073
+ "127.0.0.1:9375": {
1074
+ "version": {
1075
+ "Browser": "Chrome/154.0.8037.98",
1076
+ "Protocol-Version": "1.3",
1077
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1078
+ "V8-Version": "15.4.79.1",
1079
+ "WebKit-Version": "537.36 (@a1b2c3)",
1080
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9375/devtools/browser/p5"
1081
+ },
1082
+ "list": []
1083
+ },
1084
+ "127.0.0.1:9376": {
1085
+ "version": {
1086
+ "Browser": "Chrome/154.0.8037.98",
1087
+ "Protocol-Version": "1.3",
1088
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1089
+ "V8-Version": "15.4.79.1",
1090
+ "WebKit-Version": "537.36 (@a1b2c3)",
1091
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9376/devtools/browser/p6"
1092
+ },
1093
+ "list": []
1094
+ },
1095
+ "127.0.0.1:9377": {
1096
+ "version": {
1097
+ "Browser": "Chrome/154.0.8037.98",
1098
+ "Protocol-Version": "1.3",
1099
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1100
+ "V8-Version": "15.4.79.1",
1101
+ "WebKit-Version": "537.36 (@a1b2c3)",
1102
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9377/devtools/browser/p7"
1103
+ },
1104
+ "list": []
1105
+ },
1106
+ "127.0.0.1:9378": {
1107
+ "version": {
1108
+ "Browser": "Chrome/150.0.7800.10",
1109
+ "Protocol-Version": "1.3",
1110
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.7800.10 Safari/537.36",
1111
+ "V8-Version": "15.4.79.1",
1112
+ "WebKit-Version": "537.36 (@a1b2c3)",
1113
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9378/devtools/browser/p8"
1114
+ },
1115
+ "list": [
1116
+ {
1117
+ "id": "P1",
1118
+ "type": "page",
1119
+ "url": "https://lars.sliccy.ai/",
1120
+ "title": "seven",
1121
+ "webSocketDebuggerUrl": "ws://127.0.0.1/devtools/page/P1"
1122
+ }
1123
+ ]
1124
+ },
1125
+ "127.0.0.1:9380": {
1126
+ "version": {
1127
+ "Browser": "Chrome/154.0.8037.98",
1128
+ "Protocol-Version": "1.3",
1129
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1130
+ "V8-Version": "15.4.79.1",
1131
+ "WebKit-Version": "537.36 (@a1b2c3)",
1132
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9380/devtools/browser/p10"
1133
+ },
1134
+ "list": []
1135
+ },
1136
+ "127.0.0.1:9383": {
1137
+ "version": {
1138
+ "Browser": "Chrome/154.0.8037.98",
1139
+ "Protocol-Version": "1.3",
1140
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1141
+ "V8-Version": "15.4.79.1",
1142
+ "WebKit-Version": "537.36 (@a1b2c3)",
1143
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9383/devtools/browser/p13"
1144
+ },
1145
+ "list": []
1146
+ },
1147
+ "127.0.0.1:9384": {
1148
+ "version": {
1149
+ "Browser": "Chrome/154.0.8037.98",
1150
+ "Protocol-Version": "1.3",
1151
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1152
+ "V8-Version": "15.4.79.1",
1153
+ "WebKit-Version": "537.36 (@a1b2c3)",
1154
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9384/devtools/browser/p14"
1155
+ },
1156
+ "list": []
1157
+ }
1158
+ }
1159
+ },
1160
+ "expected": {
1161
+ "schema": 1,
1162
+ "minChromium": 116,
1163
+ "entries": [
1164
+ {
1165
+ "id": "cdp:127.0.0.1:9378",
1166
+ "kind": "endpoint",
1167
+ "tier": 1,
1168
+ "name": "Chrome",
1169
+ "version": "150.0.7800.10",
1170
+ "endpoint": {
1171
+ "cdp": "http://127.0.0.1:9378",
1172
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9378/devtools/browser/p8",
1173
+ "name": "Chrome",
1174
+ "version": "150.0.7800.10",
1175
+ "product": "Chrome/150.0.7800.10",
1176
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.7800.10 Safari/537.36",
1177
+ "source": "process",
1178
+ "userDataDir": "{home}/tmp/pw2",
1179
+ "sevenOpen": true,
1180
+ "sevenTabs": [
1181
+ {
1182
+ "id": "P1",
1183
+ "url": "https://lars.sliccy.ai/",
1184
+ "title": "seven"
1185
+ }
1186
+ ]
1187
+ }
1188
+ },
1189
+ {
1190
+ "id": "cdp:127.0.0.1:9371",
1191
+ "kind": "endpoint",
1192
+ "tier": 2,
1193
+ "name": "Chrome",
1194
+ "version": "154.0.8037.98",
1195
+ "endpoint": {
1196
+ "cdp": "http://127.0.0.1:9371",
1197
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9371/devtools/browser/p1",
1198
+ "name": "Chrome",
1199
+ "version": "154.0.8037.98",
1200
+ "product": "Chrome/154.0.8037.98",
1201
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1202
+ "source": "process",
1203
+ "userDataDir": "{home}/tmp/pw1",
1204
+ "sevenOpen": false,
1205
+ "sevenTabs": []
1206
+ }
1207
+ },
1208
+ {
1209
+ "id": "cdp:127.0.0.1:9372",
1210
+ "kind": "endpoint",
1211
+ "tier": 2,
1212
+ "name": "Chrome",
1213
+ "version": "154.0.8037.98",
1214
+ "endpoint": {
1215
+ "cdp": "http://127.0.0.1:9372",
1216
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9372/devtools/browser/p2",
1217
+ "name": "Chrome",
1218
+ "version": "154.0.8037.98",
1219
+ "product": "Chrome/154.0.8037.98",
1220
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1221
+ "source": "process",
1222
+ "sevenOpen": false,
1223
+ "sevenTabs": []
1224
+ }
1225
+ },
1226
+ {
1227
+ "id": "cdp:127.0.0.1:9384",
1228
+ "kind": "endpoint",
1229
+ "tier": 2,
1230
+ "name": "Chrome",
1231
+ "version": "154.0.8037.98",
1232
+ "endpoint": {
1233
+ "cdp": "http://127.0.0.1:9384",
1234
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9384/devtools/browser/p14",
1235
+ "name": "Chrome",
1236
+ "version": "154.0.8037.98",
1237
+ "product": "Chrome/154.0.8037.98",
1238
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1239
+ "source": "process",
1240
+ "sevenOpen": false,
1241
+ "sevenTabs": []
1242
+ }
1243
+ }
1244
+ ]
1245
+ }
1246
+ },
1247
+ {
1248
+ "name": "process-user-data-dir-spaces",
1249
+ "case": {
1250
+ "description": "A process's --user-data-dir runs to the next whitespace followed by --, or to the end; a value that starts with a quote runs to the matching quote",
1251
+ "needs": [
1252
+ "process"
1253
+ ],
1254
+ "files": {
1255
+ "{home}/Library/Application Support/ms-playwright/mcp-chrome/DevToolsActivePort": "9511\n/devtools/browser/u1\n",
1256
+ "{home}/with space/quoted/DevToolsActivePort": "9512\n/devtools/browser/u2\n",
1257
+ "{home}/tail space/DevToolsActivePort": "9513\n/devtools/browser/u3\n",
1258
+ "{home}/single quote/DevToolsActivePort": "9514\n/devtools/browser/u4\n"
1259
+ },
1260
+ "processes": [
1261
+ {
1262
+ "pid": 401,
1263
+ "command": "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome --remote-debugging-port=0 --user-data-dir={home}/Library/Application Support/ms-playwright/mcp-chrome --no-first-run --no-default-browser-check about:blank"
1264
+ },
1265
+ {
1266
+ "pid": 402,
1267
+ "command": "\"C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe\" --remote-debugging-port=0 --user-data-dir=\"{home}/with space/quoted\" --no-first-run"
1268
+ },
1269
+ {
1270
+ "pid": 403,
1271
+ "command": "/opt/google/chrome/chrome --remote-debugging-port 0 --user-data-dir {home}/tail space"
1272
+ },
1273
+ {
1274
+ "pid": 404,
1275
+ "command": "/opt/google/chrome/chrome --remote-debugging-port=0 --user-data-dir='{home}/single quote' --headless=new"
1276
+ }
1277
+ ],
1278
+ "http": {
1279
+ "127.0.0.1:9511": {
1280
+ "version": {
1281
+ "Browser": "Chrome/154.0.8037.98",
1282
+ "Protocol-Version": "1.3",
1283
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1284
+ "V8-Version": "15.4.79.1",
1285
+ "WebKit-Version": "537.36 (@a1b2c3)",
1286
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9511/devtools/browser/u1"
1287
+ },
1288
+ "list": []
1289
+ },
1290
+ "127.0.0.1:9512": {
1291
+ "version": {
1292
+ "Browser": "Chrome/154.0.8037.98",
1293
+ "Protocol-Version": "1.3",
1294
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1295
+ "V8-Version": "15.4.79.1",
1296
+ "WebKit-Version": "537.36 (@a1b2c3)",
1297
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9512/devtools/browser/u2"
1298
+ },
1299
+ "list": []
1300
+ },
1301
+ "127.0.0.1:9513": {
1302
+ "version": {
1303
+ "Browser": "Chrome/154.0.8037.98",
1304
+ "Protocol-Version": "1.3",
1305
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1306
+ "V8-Version": "15.4.79.1",
1307
+ "WebKit-Version": "537.36 (@a1b2c3)",
1308
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9513/devtools/browser/u3"
1309
+ },
1310
+ "list": []
1311
+ },
1312
+ "127.0.0.1:9514": {
1313
+ "version": {
1314
+ "Browser": "Chrome/154.0.8037.98",
1315
+ "Protocol-Version": "1.3",
1316
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1317
+ "V8-Version": "15.4.79.1",
1318
+ "WebKit-Version": "537.36 (@a1b2c3)",
1319
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9514/devtools/browser/u4"
1320
+ },
1321
+ "list": []
1322
+ }
1323
+ }
1324
+ },
1325
+ "expected": {
1326
+ "schema": 1,
1327
+ "minChromium": 116,
1328
+ "entries": [
1329
+ {
1330
+ "id": "cdp:127.0.0.1:9511",
1331
+ "kind": "endpoint",
1332
+ "tier": 2,
1333
+ "name": "Chrome",
1334
+ "version": "154.0.8037.98",
1335
+ "endpoint": {
1336
+ "cdp": "http://127.0.0.1:9511",
1337
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9511/devtools/browser/u1",
1338
+ "name": "Chrome",
1339
+ "version": "154.0.8037.98",
1340
+ "product": "Chrome/154.0.8037.98",
1341
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1342
+ "source": "process",
1343
+ "userDataDir": "{home}/Library/Application Support/ms-playwright/mcp-chrome",
1344
+ "sevenOpen": false,
1345
+ "sevenTabs": []
1346
+ }
1347
+ },
1348
+ {
1349
+ "id": "cdp:127.0.0.1:9512",
1350
+ "kind": "endpoint",
1351
+ "tier": 2,
1352
+ "name": "Chrome",
1353
+ "version": "154.0.8037.98",
1354
+ "endpoint": {
1355
+ "cdp": "http://127.0.0.1:9512",
1356
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9512/devtools/browser/u2",
1357
+ "name": "Chrome",
1358
+ "version": "154.0.8037.98",
1359
+ "product": "Chrome/154.0.8037.98",
1360
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1361
+ "source": "process",
1362
+ "userDataDir": "{home}/with space/quoted",
1363
+ "sevenOpen": false,
1364
+ "sevenTabs": []
1365
+ }
1366
+ },
1367
+ {
1368
+ "id": "cdp:127.0.0.1:9513",
1369
+ "kind": "endpoint",
1370
+ "tier": 2,
1371
+ "name": "Chrome",
1372
+ "version": "154.0.8037.98",
1373
+ "endpoint": {
1374
+ "cdp": "http://127.0.0.1:9513",
1375
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9513/devtools/browser/u3",
1376
+ "name": "Chrome",
1377
+ "version": "154.0.8037.98",
1378
+ "product": "Chrome/154.0.8037.98",
1379
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1380
+ "source": "process",
1381
+ "userDataDir": "{home}/tail space",
1382
+ "sevenOpen": false,
1383
+ "sevenTabs": []
1384
+ }
1385
+ },
1386
+ {
1387
+ "id": "cdp:127.0.0.1:9514",
1388
+ "kind": "endpoint",
1389
+ "tier": 2,
1390
+ "name": "Chrome",
1391
+ "version": "154.0.8037.98",
1392
+ "endpoint": {
1393
+ "cdp": "http://127.0.0.1:9514",
1394
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9514/devtools/browser/u4",
1395
+ "name": "Chrome",
1396
+ "version": "154.0.8037.98",
1397
+ "product": "Chrome/154.0.8037.98",
1398
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1399
+ "source": "process",
1400
+ "userDataDir": "{home}/single quote",
1401
+ "sevenOpen": false,
1402
+ "sevenTabs": []
1403
+ }
1404
+ }
1405
+ ]
1406
+ }
1407
+ },
1408
+ {
1409
+ "name": "ranking-ties",
1410
+ "case": {
1411
+ "description": "Tiers first; endpoints by host, then port as a number; browsers in catalog order; Electron apps by name without case, then id, then path",
1412
+ "needs": [
1413
+ "flag",
1414
+ "installed"
1415
+ ],
1416
+ "cdp": [
1417
+ "127.0.0.1:10001",
1418
+ "127.0.0.1:9341",
1419
+ "10.0.0.5:9343",
1420
+ "127.0.0.1:9342",
1421
+ "127.0.0.1:9344"
1422
+ ],
1423
+ "http": {
1424
+ "127.0.0.1:10001": {
1425
+ "version": {
1426
+ "Browser": "Chrome/154.0.8037.98",
1427
+ "Protocol-Version": "1.3",
1428
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1429
+ "V8-Version": "15.4.79.1",
1430
+ "WebKit-Version": "537.36 (@a1b2c3)",
1431
+ "webSocketDebuggerUrl": "ws://127.0.0.1:10001/devtools/browser/r1"
1432
+ },
1433
+ "list": []
1434
+ },
1435
+ "127.0.0.1:9341": {
1436
+ "version": {
1437
+ "Browser": "Chrome/154.0.8037.98",
1438
+ "Protocol-Version": "1.3",
1439
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1440
+ "V8-Version": "15.4.79.1",
1441
+ "WebKit-Version": "537.36 (@a1b2c3)",
1442
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9341/devtools/browser/r2"
1443
+ },
1444
+ "list": []
1445
+ },
1446
+ "10.0.0.5:9343": {
1447
+ "version": {
1448
+ "Browser": "Chrome/154.0.8037.98",
1449
+ "Protocol-Version": "1.3",
1450
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1451
+ "V8-Version": "15.4.79.1",
1452
+ "WebKit-Version": "537.36 (@a1b2c3)",
1453
+ "webSocketDebuggerUrl": "ws://10.0.0.5:9343/devtools/browser/r3"
1454
+ },
1455
+ "list": []
1456
+ },
1457
+ "127.0.0.1:9342": {
1458
+ "version": {
1459
+ "Browser": "Chrome/154.0.8037.98",
1460
+ "Protocol-Version": "1.3",
1461
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1462
+ "V8-Version": "15.4.79.1",
1463
+ "WebKit-Version": "537.36 (@a1b2c3)",
1464
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9342/devtools/browser/r4"
1465
+ },
1466
+ "list": [
1467
+ {
1468
+ "id": "S1",
1469
+ "type": "page",
1470
+ "url": "https://b.sliccy.ai/",
1471
+ "title": "seven b",
1472
+ "webSocketDebuggerUrl": "ws://127.0.0.1/devtools/page/S1"
1473
+ }
1474
+ ]
1475
+ },
1476
+ "127.0.0.1:9344": {
1477
+ "version": {
1478
+ "Browser": "Chrome/154.0.8037.98",
1479
+ "Protocol-Version": "1.3",
1480
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1481
+ "V8-Version": "15.4.79.1",
1482
+ "WebKit-Version": "537.36 (@a1b2c3)",
1483
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9344/devtools/browser/r5"
1484
+ },
1485
+ "list": [
1486
+ {
1487
+ "id": "S2",
1488
+ "type": "page",
1489
+ "url": "https://a.sliccy.ai/",
1490
+ "title": "seven a",
1491
+ "webSocketDebuggerUrl": "ws://127.0.0.1/devtools/page/S2"
1492
+ }
1493
+ ]
1494
+ }
1495
+ },
1496
+ "installed": [
1497
+ {
1498
+ "id": "electron:zoom",
1499
+ "name": "Zoom",
1500
+ "engine": "electron",
1501
+ "path": "/Applications/zoom.us.app",
1502
+ "executable": "/Applications/zoom.us.app",
1503
+ "debugSupport": "supported"
1504
+ },
1505
+ {
1506
+ "id": "chromium",
1507
+ "name": "Chromium",
1508
+ "engine": "chromium",
1509
+ "channel": "stable",
1510
+ "path": "/usr/bin/chromium",
1511
+ "executable": "/usr/bin/chromium",
1512
+ "debugSupport": "supported"
1513
+ },
1514
+ {
1515
+ "id": "electron:discord",
1516
+ "name": "discord",
1517
+ "engine": "electron",
1518
+ "path": "/Users/me/Applications/Discord.app",
1519
+ "executable": "/Users/me/Applications/Discord.app",
1520
+ "debugSupport": "supported"
1521
+ },
1522
+ {
1523
+ "id": "edge-dev",
1524
+ "name": "Microsoft Edge Dev",
1525
+ "engine": "chromium",
1526
+ "channel": "dev",
1527
+ "path": "/usr/bin/microsoft-edge-dev",
1528
+ "executable": "/usr/bin/microsoft-edge-dev",
1529
+ "debugSupport": "supported"
1530
+ },
1531
+ {
1532
+ "id": "electron:discord",
1533
+ "name": "Discord",
1534
+ "engine": "electron",
1535
+ "path": "/Applications/Discord.app",
1536
+ "executable": "/Applications/Discord.app",
1537
+ "debugSupport": "supported"
1538
+ },
1539
+ {
1540
+ "id": "vivaldi",
1541
+ "name": "Vivaldi",
1542
+ "engine": "chromium",
1543
+ "channel": "stable",
1544
+ "path": "/usr/bin/vivaldi-stable",
1545
+ "executable": "/usr/bin/vivaldi-stable",
1546
+ "debugSupport": "supported"
1547
+ },
1548
+ {
1549
+ "id": "electron:1password",
1550
+ "name": "1Password",
1551
+ "engine": "electron",
1552
+ "path": "/Applications/1Password.app",
1553
+ "executable": "/Applications/1Password.app",
1554
+ "debugSupport": "disabled"
1555
+ },
1556
+ {
1557
+ "id": "chrome",
1558
+ "name": "Google Chrome",
1559
+ "engine": "chromium",
1560
+ "channel": "stable",
1561
+ "path": "/usr/bin/google-chrome-stable",
1562
+ "executable": "/usr/bin/google-chrome-stable",
1563
+ "debugSupport": "supported"
1564
+ },
1565
+ {
1566
+ "id": "edge",
1567
+ "name": "Microsoft Edge",
1568
+ "engine": "chromium",
1569
+ "channel": "stable",
1570
+ "path": "/usr/bin/microsoft-edge-stable",
1571
+ "executable": "/usr/bin/microsoft-edge-stable",
1572
+ "debugSupport": "supported"
1573
+ }
1574
+ ]
1575
+ },
1576
+ "expected": {
1577
+ "schema": 1,
1578
+ "minChromium": 116,
1579
+ "entries": [
1580
+ {
1581
+ "id": "cdp:127.0.0.1:9342",
1582
+ "kind": "endpoint",
1583
+ "tier": 1,
1584
+ "name": "Chrome",
1585
+ "version": "154.0.8037.98",
1586
+ "endpoint": {
1587
+ "cdp": "http://127.0.0.1:9342",
1588
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9342/devtools/browser/r4",
1589
+ "name": "Chrome",
1590
+ "version": "154.0.8037.98",
1591
+ "product": "Chrome/154.0.8037.98",
1592
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1593
+ "source": "flag",
1594
+ "sevenOpen": true,
1595
+ "sevenTabs": [
1596
+ {
1597
+ "id": "S1",
1598
+ "url": "https://b.sliccy.ai/",
1599
+ "title": "seven b"
1600
+ }
1601
+ ]
1602
+ }
1603
+ },
1604
+ {
1605
+ "id": "cdp:127.0.0.1:9344",
1606
+ "kind": "endpoint",
1607
+ "tier": 1,
1608
+ "name": "Chrome",
1609
+ "version": "154.0.8037.98",
1610
+ "endpoint": {
1611
+ "cdp": "http://127.0.0.1:9344",
1612
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9344/devtools/browser/r5",
1613
+ "name": "Chrome",
1614
+ "version": "154.0.8037.98",
1615
+ "product": "Chrome/154.0.8037.98",
1616
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1617
+ "source": "flag",
1618
+ "sevenOpen": true,
1619
+ "sevenTabs": [
1620
+ {
1621
+ "id": "S2",
1622
+ "url": "https://a.sliccy.ai/",
1623
+ "title": "seven a"
1624
+ }
1625
+ ]
1626
+ }
1627
+ },
1628
+ {
1629
+ "id": "cdp:10.0.0.5:9343",
1630
+ "kind": "endpoint",
1631
+ "tier": 2,
1632
+ "name": "Chrome",
1633
+ "version": "154.0.8037.98",
1634
+ "endpoint": {
1635
+ "cdp": "http://10.0.0.5:9343",
1636
+ "webSocketDebuggerUrl": "ws://10.0.0.5:9343/devtools/browser/r3",
1637
+ "name": "Chrome",
1638
+ "version": "154.0.8037.98",
1639
+ "product": "Chrome/154.0.8037.98",
1640
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1641
+ "source": "flag",
1642
+ "sevenOpen": false,
1643
+ "sevenTabs": []
1644
+ }
1645
+ },
1646
+ {
1647
+ "id": "cdp:127.0.0.1:9341",
1648
+ "kind": "endpoint",
1649
+ "tier": 2,
1650
+ "name": "Chrome",
1651
+ "version": "154.0.8037.98",
1652
+ "endpoint": {
1653
+ "cdp": "http://127.0.0.1:9341",
1654
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9341/devtools/browser/r2",
1655
+ "name": "Chrome",
1656
+ "version": "154.0.8037.98",
1657
+ "product": "Chrome/154.0.8037.98",
1658
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1659
+ "source": "flag",
1660
+ "sevenOpen": false,
1661
+ "sevenTabs": []
1662
+ }
1663
+ },
1664
+ {
1665
+ "id": "cdp:127.0.0.1:10001",
1666
+ "kind": "endpoint",
1667
+ "tier": 2,
1668
+ "name": "Chrome",
1669
+ "version": "154.0.8037.98",
1670
+ "endpoint": {
1671
+ "cdp": "http://127.0.0.1:10001",
1672
+ "webSocketDebuggerUrl": "ws://127.0.0.1:10001/devtools/browser/r1",
1673
+ "name": "Chrome",
1674
+ "version": "154.0.8037.98",
1675
+ "product": "Chrome/154.0.8037.98",
1676
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1677
+ "source": "flag",
1678
+ "sevenOpen": false,
1679
+ "sevenTabs": []
1680
+ }
1681
+ },
1682
+ {
1683
+ "id": "chrome",
1684
+ "kind": "installed",
1685
+ "tier": 3,
1686
+ "name": "Google Chrome",
1687
+ "installed": {
1688
+ "id": "chrome",
1689
+ "name": "Google Chrome",
1690
+ "engine": "chromium",
1691
+ "channel": "stable",
1692
+ "path": "/usr/bin/google-chrome-stable",
1693
+ "executable": "/usr/bin/google-chrome-stable",
1694
+ "debugSupport": "supported"
1695
+ }
1696
+ },
1697
+ {
1698
+ "id": "edge",
1699
+ "kind": "installed",
1700
+ "tier": 4,
1701
+ "name": "Microsoft Edge",
1702
+ "installed": {
1703
+ "id": "edge",
1704
+ "name": "Microsoft Edge",
1705
+ "engine": "chromium",
1706
+ "channel": "stable",
1707
+ "path": "/usr/bin/microsoft-edge-stable",
1708
+ "executable": "/usr/bin/microsoft-edge-stable",
1709
+ "debugSupport": "supported"
1710
+ }
1711
+ },
1712
+ {
1713
+ "id": "vivaldi",
1714
+ "kind": "installed",
1715
+ "tier": 4,
1716
+ "name": "Vivaldi",
1717
+ "installed": {
1718
+ "id": "vivaldi",
1719
+ "name": "Vivaldi",
1720
+ "engine": "chromium",
1721
+ "channel": "stable",
1722
+ "path": "/usr/bin/vivaldi-stable",
1723
+ "executable": "/usr/bin/vivaldi-stable",
1724
+ "debugSupport": "supported"
1725
+ }
1726
+ },
1727
+ {
1728
+ "id": "edge-dev",
1729
+ "kind": "installed",
1730
+ "tier": 4,
1731
+ "name": "Microsoft Edge Dev",
1732
+ "installed": {
1733
+ "id": "edge-dev",
1734
+ "name": "Microsoft Edge Dev",
1735
+ "engine": "chromium",
1736
+ "channel": "dev",
1737
+ "path": "/usr/bin/microsoft-edge-dev",
1738
+ "executable": "/usr/bin/microsoft-edge-dev",
1739
+ "debugSupport": "supported"
1740
+ }
1741
+ },
1742
+ {
1743
+ "id": "chromium",
1744
+ "kind": "installed",
1745
+ "tier": 4,
1746
+ "name": "Chromium",
1747
+ "installed": {
1748
+ "id": "chromium",
1749
+ "name": "Chromium",
1750
+ "engine": "chromium",
1751
+ "channel": "stable",
1752
+ "path": "/usr/bin/chromium",
1753
+ "executable": "/usr/bin/chromium",
1754
+ "debugSupport": "supported"
1755
+ }
1756
+ },
1757
+ {
1758
+ "id": "electron:1password",
1759
+ "kind": "installed",
1760
+ "tier": 5,
1761
+ "name": "1Password",
1762
+ "installed": {
1763
+ "id": "electron:1password",
1764
+ "name": "1Password",
1765
+ "engine": "electron",
1766
+ "path": "/Applications/1Password.app",
1767
+ "executable": "/Applications/1Password.app",
1768
+ "debugSupport": "disabled"
1769
+ }
1770
+ },
1771
+ {
1772
+ "id": "electron:discord",
1773
+ "kind": "installed",
1774
+ "tier": 5,
1775
+ "name": "Discord",
1776
+ "installed": {
1777
+ "id": "electron:discord",
1778
+ "name": "Discord",
1779
+ "engine": "electron",
1780
+ "path": "/Applications/Discord.app",
1781
+ "executable": "/Applications/Discord.app",
1782
+ "debugSupport": "supported"
1783
+ }
1784
+ },
1785
+ {
1786
+ "id": "electron:discord",
1787
+ "kind": "installed",
1788
+ "tier": 5,
1789
+ "name": "discord",
1790
+ "installed": {
1791
+ "id": "electron:discord",
1792
+ "name": "discord",
1793
+ "engine": "electron",
1794
+ "path": "/Users/me/Applications/Discord.app",
1795
+ "executable": "/Users/me/Applications/Discord.app",
1796
+ "debugSupport": "supported"
1797
+ }
1798
+ },
1799
+ {
1800
+ "id": "electron:zoom",
1801
+ "kind": "installed",
1802
+ "tier": 5,
1803
+ "name": "Zoom",
1804
+ "installed": {
1805
+ "id": "electron:zoom",
1806
+ "name": "Zoom",
1807
+ "engine": "electron",
1808
+ "path": "/Applications/zoom.us.app",
1809
+ "executable": "/Applications/zoom.us.app",
1810
+ "debugSupport": "supported"
1811
+ }
1812
+ }
1813
+ ]
1814
+ }
1815
+ },
1816
+ {
1817
+ "name": "seven-tab-default-port",
1818
+ "case": {
1819
+ "description": "https://<label>.sliccy.ai:443 is the same origin as without the port; any other port is a different origin",
1820
+ "needs": [
1821
+ "flag"
1822
+ ],
1823
+ "cdp": [
1824
+ "127.0.0.1:9531",
1825
+ "127.0.0.1:9532"
1826
+ ],
1827
+ "http": {
1828
+ "127.0.0.1:9531": {
1829
+ "version": {
1830
+ "Browser": "Chrome/154.0.8037.98",
1831
+ "Protocol-Version": "1.3",
1832
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1833
+ "V8-Version": "15.4.79.1",
1834
+ "WebKit-Version": "537.36 (@a1b2c3)",
1835
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9531/devtools/browser/d1"
1836
+ },
1837
+ "list": [
1838
+ {
1839
+ "id": "D1",
1840
+ "type": "page",
1841
+ "url": "https://seven.sliccy.ai:443/",
1842
+ "title": "seven",
1843
+ "webSocketDebuggerUrl": "ws://127.0.0.1/devtools/page/D1"
1844
+ },
1845
+ {
1846
+ "id": "D2",
1847
+ "type": "page",
1848
+ "url": "https://lars.sliccy.ai:8443/",
1849
+ "title": "other port",
1850
+ "webSocketDebuggerUrl": "ws://127.0.0.1/devtools/page/D2"
1851
+ }
1852
+ ]
1853
+ },
1854
+ "127.0.0.1:9532": {
1855
+ "version": {
1856
+ "Browser": "Chrome/154.0.8037.98",
1857
+ "Protocol-Version": "1.3",
1858
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1859
+ "V8-Version": "15.4.79.1",
1860
+ "WebKit-Version": "537.36 (@a1b2c3)",
1861
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9532/devtools/browser/d2"
1862
+ },
1863
+ "list": [
1864
+ {
1865
+ "id": "D3",
1866
+ "type": "page",
1867
+ "url": "https://lars.sliccy.ai:8443/",
1868
+ "title": "other port",
1869
+ "webSocketDebuggerUrl": "ws://127.0.0.1/devtools/page/D3"
1870
+ }
1871
+ ]
1872
+ }
1873
+ }
1874
+ },
1875
+ "expected": {
1876
+ "schema": 1,
1877
+ "minChromium": 116,
1878
+ "entries": [
1879
+ {
1880
+ "id": "cdp:127.0.0.1:9531",
1881
+ "kind": "endpoint",
1882
+ "tier": 1,
1883
+ "name": "Chrome",
1884
+ "version": "154.0.8037.98",
1885
+ "endpoint": {
1886
+ "cdp": "http://127.0.0.1:9531",
1887
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9531/devtools/browser/d1",
1888
+ "name": "Chrome",
1889
+ "version": "154.0.8037.98",
1890
+ "product": "Chrome/154.0.8037.98",
1891
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1892
+ "source": "flag",
1893
+ "sevenOpen": true,
1894
+ "sevenTabs": [
1895
+ {
1896
+ "id": "D1",
1897
+ "url": "https://seven.sliccy.ai:443/",
1898
+ "title": "seven"
1899
+ }
1900
+ ]
1901
+ }
1902
+ },
1903
+ {
1904
+ "id": "cdp:127.0.0.1:9532",
1905
+ "kind": "endpoint",
1906
+ "tier": 2,
1907
+ "name": "Chrome",
1908
+ "version": "154.0.8037.98",
1909
+ "endpoint": {
1910
+ "cdp": "http://127.0.0.1:9532",
1911
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9532/devtools/browser/d2",
1912
+ "name": "Chrome",
1913
+ "version": "154.0.8037.98",
1914
+ "product": "Chrome/154.0.8037.98",
1915
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1916
+ "source": "flag",
1917
+ "sevenOpen": false,
1918
+ "sevenTabs": []
1919
+ }
1920
+ }
1921
+ ]
1922
+ }
1923
+ },
1924
+ {
1925
+ "name": "seven-tabs",
1926
+ "case": {
1927
+ "description": "sevenOpen needs a page target on https://<label>.sliccy.ai other than www; www, the apex, other schemes, nested labels and non-page targets don't count",
1928
+ "needs": [
1929
+ "flag"
1930
+ ],
1931
+ "cdp": [
1932
+ "127.0.0.1:9321",
1933
+ "9322",
1934
+ "ws://127.0.0.1:9323/devtools/browser/s3"
1935
+ ],
1936
+ "http": {
1937
+ "127.0.0.1:9321": {
1938
+ "version": {
1939
+ "Browser": "Chrome/154.0.8037.98",
1940
+ "Protocol-Version": "1.3",
1941
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
1942
+ "V8-Version": "15.4.79.1",
1943
+ "WebKit-Version": "537.36 (@a1b2c3)",
1944
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9321/devtools/browser/s1"
1945
+ },
1946
+ "list": [
1947
+ {
1948
+ "id": "T1",
1949
+ "type": "page",
1950
+ "url": "https://lars.sliccy.ai/",
1951
+ "title": "seven",
1952
+ "webSocketDebuggerUrl": "ws://127.0.0.1/devtools/page/T1"
1953
+ },
1954
+ {
1955
+ "id": "T2",
1956
+ "type": "page",
1957
+ "url": "https://www.sliccy.ai/",
1958
+ "title": "SLICC",
1959
+ "webSocketDebuggerUrl": "ws://127.0.0.1/devtools/page/T2"
1960
+ },
1961
+ {
1962
+ "id": "T3",
1963
+ "type": "iframe",
1964
+ "url": "https://frame.sliccy.ai/",
1965
+ "title": "frame",
1966
+ "webSocketDebuggerUrl": "ws://127.0.0.1/devtools/page/T3"
1967
+ },
1968
+ {
1969
+ "id": "T4",
1970
+ "type": "page",
1971
+ "url": "http://plain.sliccy.ai/",
1972
+ "title": "plain",
1973
+ "webSocketDebuggerUrl": "ws://127.0.0.1/devtools/page/T4"
1974
+ },
1975
+ {
1976
+ "id": "T5",
1977
+ "type": "page",
1978
+ "url": "https://a.b.sliccy.ai/",
1979
+ "title": "nested",
1980
+ "webSocketDebuggerUrl": "ws://127.0.0.1/devtools/page/T5"
1981
+ },
1982
+ {
1983
+ "id": "T6",
1984
+ "type": "page",
1985
+ "url": "https://seven.sliccy.ai/?x=1#top",
1986
+ "title": "seven too",
1987
+ "webSocketDebuggerUrl": "ws://127.0.0.1/devtools/page/T6"
1988
+ },
1989
+ {
1990
+ "id": "T7",
1991
+ "type": "page",
1992
+ "url": "https://-bad.sliccy.ai/",
1993
+ "title": "bad label",
1994
+ "webSocketDebuggerUrl": "ws://127.0.0.1/devtools/page/T7"
1995
+ },
1996
+ {
1997
+ "id": "T8",
1998
+ "type": "service_worker",
1999
+ "url": "https://lars.sliccy.ai/",
2000
+ "title": "worker",
2001
+ "webSocketDebuggerUrl": "ws://127.0.0.1/devtools/page/T8"
2002
+ }
2003
+ ]
2004
+ },
2005
+ "127.0.0.1:9322": {
2006
+ "version": {
2007
+ "Browser": "Chrome/154.0.8037.98",
2008
+ "Protocol-Version": "1.3",
2009
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
2010
+ "V8-Version": "15.4.79.1",
2011
+ "WebKit-Version": "537.36 (@a1b2c3)",
2012
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9322/devtools/browser/s2"
2013
+ },
2014
+ "list": [
2015
+ {
2016
+ "id": "U1",
2017
+ "type": "page",
2018
+ "url": "https://www.sliccy.ai/",
2019
+ "title": "SLICC",
2020
+ "webSocketDebuggerUrl": "ws://127.0.0.1/devtools/page/U1"
2021
+ },
2022
+ {
2023
+ "id": "U2",
2024
+ "type": "page",
2025
+ "url": "https://sliccy.ai/",
2026
+ "title": "apex",
2027
+ "webSocketDebuggerUrl": "ws://127.0.0.1/devtools/page/U2"
2028
+ }
2029
+ ]
2030
+ },
2031
+ "127.0.0.1:9323": {
2032
+ "version": {
2033
+ "Browser": "Chrome/154.0.8037.98",
2034
+ "Protocol-Version": "1.3",
2035
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
2036
+ "V8-Version": "15.4.79.1",
2037
+ "WebKit-Version": "537.36 (@a1b2c3)",
2038
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9323/devtools/browser/s3"
2039
+ },
2040
+ "list": [
2041
+ {
2042
+ "id": "V1",
2043
+ "type": "page",
2044
+ "url": "https://team-7.sliccy.ai/workspace",
2045
+ "title": "seven",
2046
+ "webSocketDebuggerUrl": "ws://127.0.0.1/devtools/page/V1"
2047
+ }
2048
+ ]
2049
+ }
2050
+ }
2051
+ },
2052
+ "expected": {
2053
+ "schema": 1,
2054
+ "minChromium": 116,
2055
+ "entries": [
2056
+ {
2057
+ "id": "cdp:127.0.0.1:9321",
2058
+ "kind": "endpoint",
2059
+ "tier": 1,
2060
+ "name": "Chrome",
2061
+ "version": "154.0.8037.98",
2062
+ "endpoint": {
2063
+ "cdp": "http://127.0.0.1:9321",
2064
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9321/devtools/browser/s1",
2065
+ "name": "Chrome",
2066
+ "version": "154.0.8037.98",
2067
+ "product": "Chrome/154.0.8037.98",
2068
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
2069
+ "source": "flag",
2070
+ "sevenOpen": true,
2071
+ "sevenTabs": [
2072
+ {
2073
+ "id": "T1",
2074
+ "url": "https://lars.sliccy.ai/",
2075
+ "title": "seven"
2076
+ },
2077
+ {
2078
+ "id": "T6",
2079
+ "url": "https://seven.sliccy.ai/?x=1#top",
2080
+ "title": "seven too"
2081
+ }
2082
+ ]
2083
+ }
2084
+ },
2085
+ {
2086
+ "id": "cdp:127.0.0.1:9323",
2087
+ "kind": "endpoint",
2088
+ "tier": 1,
2089
+ "name": "Chrome",
2090
+ "version": "154.0.8037.98",
2091
+ "endpoint": {
2092
+ "cdp": "http://127.0.0.1:9323",
2093
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9323/devtools/browser/s3",
2094
+ "name": "Chrome",
2095
+ "version": "154.0.8037.98",
2096
+ "product": "Chrome/154.0.8037.98",
2097
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
2098
+ "source": "flag",
2099
+ "sevenOpen": true,
2100
+ "sevenTabs": [
2101
+ {
2102
+ "id": "V1",
2103
+ "url": "https://team-7.sliccy.ai/workspace",
2104
+ "title": "seven"
2105
+ }
2106
+ ]
2107
+ }
2108
+ },
2109
+ {
2110
+ "id": "cdp:127.0.0.1:9322",
2111
+ "kind": "endpoint",
2112
+ "tier": 2,
2113
+ "name": "Chrome",
2114
+ "version": "154.0.8037.98",
2115
+ "endpoint": {
2116
+ "cdp": "http://127.0.0.1:9322",
2117
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9322/devtools/browser/s2",
2118
+ "name": "Chrome",
2119
+ "version": "154.0.8037.98",
2120
+ "product": "Chrome/154.0.8037.98",
2121
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
2122
+ "source": "flag",
2123
+ "sevenOpen": false,
2124
+ "sevenTabs": []
2125
+ }
2126
+ }
2127
+ ]
2128
+ }
2129
+ },
2130
+ {
2131
+ "name": "stale-active-port",
2132
+ "case": {
2133
+ "description": "A DevToolsActivePort is stale unless its port answers /json/version with the websocket path on the file's second line",
2134
+ "needs": [
2135
+ "user-data-dirs",
2136
+ "seven-profiles"
2137
+ ],
2138
+ "files": {
2139
+ "{sevenProfiles}/chrome/DevToolsActivePort": "9311\n/devtools/browser/old\n",
2140
+ "{sevenProfiles}/gone/DevToolsActivePort": "9312\n/devtools/browser/gone\n",
2141
+ "{sevenProfiles}/junk/DevToolsActivePort": "not a port\n",
2142
+ "{sevenProfiles}/zero/DevToolsActivePort": "0\n/devtools/browser/zero\n",
2143
+ "{sevenProfiles}/high/DevToolsActivePort": "70000\n/devtools/browser/high\n",
2144
+ "{userData:chrome}/DevToolsActivePort": "9313\n/devtools/browser/live\n"
2145
+ },
2146
+ "http": {
2147
+ "127.0.0.1:9311": {
2148
+ "version": {
2149
+ "Browser": "Chrome/154.0.8037.98",
2150
+ "Protocol-Version": "1.3",
2151
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
2152
+ "V8-Version": "15.4.79.1",
2153
+ "WebKit-Version": "537.36 (@a1b2c3)",
2154
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9311/devtools/browser/new"
2155
+ },
2156
+ "list": []
2157
+ },
2158
+ "127.0.0.1:9313": {
2159
+ "version": {
2160
+ "Browser": "Chrome/154.0.8037.98",
2161
+ "Protocol-Version": "1.3",
2162
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
2163
+ "V8-Version": "15.4.79.1",
2164
+ "WebKit-Version": "537.36 (@a1b2c3)",
2165
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9313/devtools/browser/live"
2166
+ },
2167
+ "list": []
2168
+ }
2169
+ }
2170
+ },
2171
+ "expected": {
2172
+ "schema": 1,
2173
+ "minChromium": 116,
2174
+ "entries": [
2175
+ {
2176
+ "id": "cdp:127.0.0.1:9313",
2177
+ "kind": "endpoint",
2178
+ "tier": 2,
2179
+ "name": "Google Chrome",
2180
+ "version": "154.0.8037.98",
2181
+ "endpoint": {
2182
+ "cdp": "http://127.0.0.1:9313",
2183
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9313/devtools/browser/live",
2184
+ "name": "Google Chrome",
2185
+ "version": "154.0.8037.98",
2186
+ "product": "Chrome/154.0.8037.98",
2187
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/154.0.8037.98 Safari/537.36",
2188
+ "source": "devtools-active-port",
2189
+ "browser": "chrome",
2190
+ "userDataDir": "{userData:chrome}",
2191
+ "sevenOpen": false,
2192
+ "sevenTabs": []
2193
+ }
2194
+ }
2195
+ ]
2196
+ }
2197
+ },
2198
+ {
2199
+ "name": "version-filter",
2200
+ "case": {
2201
+ "description": "Endpoints below Chromium 116 by their user agent, and installed browsers whose version is a Chromium version below 116, are left out",
2202
+ "needs": [
2203
+ "flag",
2204
+ "installed"
2205
+ ],
2206
+ "cdp": [
2207
+ "127.0.0.1:9331",
2208
+ "127.0.0.1:9332",
2209
+ "127.0.0.1:9333",
2210
+ "127.0.0.1:9334"
2211
+ ],
2212
+ "http": {
2213
+ "127.0.0.1:9331": {
2214
+ "version": {
2215
+ "Browser": "Chrome/115.0.5790.170",
2216
+ "Protocol-Version": "1.3",
2217
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.5790.170 Safari/537.36",
2218
+ "V8-Version": "15.4.79.1",
2219
+ "WebKit-Version": "537.36 (@a1b2c3)",
2220
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9331/devtools/browser/v1"
2221
+ },
2222
+ "list": []
2223
+ },
2224
+ "127.0.0.1:9332": {
2225
+ "version": {
2226
+ "Browser": "Chrome/116.0.5845.96",
2227
+ "Protocol-Version": "1.3",
2228
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.5845.96 Safari/537.36",
2229
+ "V8-Version": "15.4.79.1",
2230
+ "WebKit-Version": "537.36 (@a1b2c3)",
2231
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9332/devtools/browser/v2"
2232
+ },
2233
+ "list": []
2234
+ },
2235
+ "127.0.0.1:9333": {
2236
+ "version": {
2237
+ "Browser": "Chrome/108.0.5359.215",
2238
+ "Protocol-Version": "1.3",
2239
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.5359.215 Electron/22.3.27 Safari/537.36",
2240
+ "V8-Version": "15.4.79.1",
2241
+ "WebKit-Version": "537.36 (@a1b2c3)",
2242
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9333/devtools/browser/v3"
2243
+ },
2244
+ "list": []
2245
+ },
2246
+ "127.0.0.1:9334": {
2247
+ "version": {
2248
+ "Browser": "HeadlessChrome/120.0.6099.0",
2249
+ "Protocol-Version": "1.3",
2250
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/120.0.6099.0 Safari/537.36",
2251
+ "V8-Version": "15.4.79.1",
2252
+ "WebKit-Version": "537.36 (@a1b2c3)",
2253
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9334/devtools/browser/v4"
2254
+ },
2255
+ "list": []
2256
+ }
2257
+ },
2258
+ "installed": [
2259
+ {
2260
+ "id": "chrome",
2261
+ "name": "Google Chrome",
2262
+ "engine": "chromium",
2263
+ "channel": "stable",
2264
+ "version": "115.0.5790.170",
2265
+ "path": "/Applications/Google Chrome.app",
2266
+ "executable": "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome",
2267
+ "bundleId": "com.google.Chrome",
2268
+ "debugSupport": "supported"
2269
+ },
2270
+ {
2271
+ "id": "chrome-beta",
2272
+ "name": "Google Chrome Beta",
2273
+ "engine": "chromium",
2274
+ "channel": "beta",
2275
+ "version": "116.0.5845.50",
2276
+ "path": "/Applications/Google Chrome Beta.app",
2277
+ "executable": "/Applications/Google Chrome Beta.app/Contents/MacOS/Google Chrome Beta",
2278
+ "bundleId": "com.google.Chrome.beta",
2279
+ "debugSupport": "supported"
2280
+ },
2281
+ {
2282
+ "id": "brave",
2283
+ "name": "Brave Browser",
2284
+ "engine": "chromium",
2285
+ "channel": "stable",
2286
+ "version": "1.60.110",
2287
+ "path": "/Applications/Brave Browser.app",
2288
+ "executable": "/Applications/Brave Browser.app/Contents/MacOS/Brave Browser",
2289
+ "bundleId": "com.brave.Browser",
2290
+ "debugSupport": "supported"
2291
+ },
2292
+ {
2293
+ "id": "edge",
2294
+ "name": "Microsoft Edge",
2295
+ "engine": "chromium",
2296
+ "channel": "stable",
2297
+ "path": "/usr/bin/microsoft-edge-stable",
2298
+ "executable": "/usr/bin/microsoft-edge-stable",
2299
+ "debugSupport": "supported"
2300
+ },
2301
+ {
2302
+ "id": "chromium",
2303
+ "name": "Chromium",
2304
+ "engine": "chromium",
2305
+ "channel": "stable",
2306
+ "version": "dev",
2307
+ "path": "/usr/bin/chromium",
2308
+ "executable": "/usr/bin/chromium",
2309
+ "debugSupport": "supported"
2310
+ },
2311
+ {
2312
+ "id": "electron:slack",
2313
+ "name": "Slack",
2314
+ "engine": "electron",
2315
+ "version": "4.41.105",
2316
+ "path": "/Applications/Slack.app",
2317
+ "executable": "/Applications/Slack.app/Contents/MacOS/Slack",
2318
+ "bundleId": "com.tinyspeck.slackmacgap",
2319
+ "debugSupport": "supported"
2320
+ }
2321
+ ]
2322
+ },
2323
+ "expected": {
2324
+ "schema": 1,
2325
+ "minChromium": 116,
2326
+ "entries": [
2327
+ {
2328
+ "id": "cdp:127.0.0.1:9332",
2329
+ "kind": "endpoint",
2330
+ "tier": 2,
2331
+ "name": "Chrome",
2332
+ "version": "116.0.5845.96",
2333
+ "endpoint": {
2334
+ "cdp": "http://127.0.0.1:9332",
2335
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9332/devtools/browser/v2",
2336
+ "name": "Chrome",
2337
+ "version": "116.0.5845.96",
2338
+ "product": "Chrome/116.0.5845.96",
2339
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.5845.96 Safari/537.36",
2340
+ "source": "flag",
2341
+ "sevenOpen": false,
2342
+ "sevenTabs": []
2343
+ }
2344
+ },
2345
+ {
2346
+ "id": "cdp:127.0.0.1:9334",
2347
+ "kind": "endpoint",
2348
+ "tier": 2,
2349
+ "name": "Chrome (headless)",
2350
+ "version": "120.0.6099.0",
2351
+ "endpoint": {
2352
+ "cdp": "http://127.0.0.1:9334",
2353
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9334/devtools/browser/v4",
2354
+ "name": "Chrome (headless)",
2355
+ "version": "120.0.6099.0",
2356
+ "product": "HeadlessChrome/120.0.6099.0",
2357
+ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/120.0.6099.0 Safari/537.36",
2358
+ "source": "flag",
2359
+ "sevenOpen": false,
2360
+ "sevenTabs": []
2361
+ }
2362
+ },
2363
+ {
2364
+ "id": "edge",
2365
+ "kind": "installed",
2366
+ "tier": 4,
2367
+ "name": "Microsoft Edge",
2368
+ "installed": {
2369
+ "id": "edge",
2370
+ "name": "Microsoft Edge",
2371
+ "engine": "chromium",
2372
+ "channel": "stable",
2373
+ "path": "/usr/bin/microsoft-edge-stable",
2374
+ "executable": "/usr/bin/microsoft-edge-stable",
2375
+ "debugSupport": "supported"
2376
+ }
2377
+ },
2378
+ {
2379
+ "id": "brave",
2380
+ "kind": "installed",
2381
+ "tier": 4,
2382
+ "name": "Brave Browser",
2383
+ "version": "1.60.110",
2384
+ "installed": {
2385
+ "id": "brave",
2386
+ "name": "Brave Browser",
2387
+ "engine": "chromium",
2388
+ "channel": "stable",
2389
+ "version": "1.60.110",
2390
+ "path": "/Applications/Brave Browser.app",
2391
+ "executable": "/Applications/Brave Browser.app/Contents/MacOS/Brave Browser",
2392
+ "bundleId": "com.brave.Browser",
2393
+ "debugSupport": "supported"
2394
+ }
2395
+ },
2396
+ {
2397
+ "id": "chrome-beta",
2398
+ "kind": "installed",
2399
+ "tier": 4,
2400
+ "name": "Google Chrome Beta",
2401
+ "version": "116.0.5845.50",
2402
+ "installed": {
2403
+ "id": "chrome-beta",
2404
+ "name": "Google Chrome Beta",
2405
+ "engine": "chromium",
2406
+ "channel": "beta",
2407
+ "version": "116.0.5845.50",
2408
+ "path": "/Applications/Google Chrome Beta.app",
2409
+ "executable": "/Applications/Google Chrome Beta.app/Contents/MacOS/Google Chrome Beta",
2410
+ "bundleId": "com.google.Chrome.beta",
2411
+ "debugSupport": "supported"
2412
+ }
2413
+ },
2414
+ {
2415
+ "id": "chromium",
2416
+ "kind": "installed",
2417
+ "tier": 4,
2418
+ "name": "Chromium",
2419
+ "version": "dev",
2420
+ "installed": {
2421
+ "id": "chromium",
2422
+ "name": "Chromium",
2423
+ "engine": "chromium",
2424
+ "channel": "stable",
2425
+ "version": "dev",
2426
+ "path": "/usr/bin/chromium",
2427
+ "executable": "/usr/bin/chromium",
2428
+ "debugSupport": "supported"
2429
+ }
2430
+ },
2431
+ {
2432
+ "id": "electron:slack",
2433
+ "kind": "installed",
2434
+ "tier": 5,
2435
+ "name": "Slack",
2436
+ "version": "4.41.105",
2437
+ "installed": {
2438
+ "id": "electron:slack",
2439
+ "name": "Slack",
2440
+ "engine": "electron",
2441
+ "version": "4.41.105",
2442
+ "path": "/Applications/Slack.app",
2443
+ "executable": "/Applications/Slack.app/Contents/MacOS/Slack",
2444
+ "bundleId": "com.tinyspeck.slackmacgap",
2445
+ "debugSupport": "supported"
2446
+ }
2447
+ }
2448
+ ]
2449
+ }
2450
+ },
2451
+ {
2452
+ "name": "ws-only",
2453
+ "case": {
2454
+ "description": "A DevToolsActivePort or ws:// --cdp URL whose port is open but serves no /json/version is listed as wsOnly, with the websocket URL from the file or flag",
2455
+ "needs": [
2456
+ "user-data-dirs",
2457
+ "seven-profiles",
2458
+ "flag"
2459
+ ],
2460
+ "files": {
2461
+ "{userData:chrome}/DevToolsActivePort": "9361\n/devtools/browser/ws1\n",
2462
+ "{sevenProfiles}/side/DevToolsActivePort": "9362\n/devtools/browser/ws2\n",
2463
+ "{sevenProfiles}/closed/DevToolsActivePort": "9363\n/devtools/browser/ws3\n"
2464
+ },
2465
+ "cdp": [
2466
+ "127.0.0.1:9364",
2467
+ "ws://127.0.0.1:9365/devtools/browser/ws5"
2468
+ ],
2469
+ "http": {
2470
+ "127.0.0.1:9361": {},
2471
+ "127.0.0.1:9362": {},
2472
+ "127.0.0.1:9364": {},
2473
+ "127.0.0.1:9365": {}
2474
+ }
2475
+ },
2476
+ "expected": {
2477
+ "schema": 1,
2478
+ "minChromium": 116,
2479
+ "entries": [
2480
+ {
2481
+ "id": "cdp:127.0.0.1:9361",
2482
+ "kind": "endpoint",
2483
+ "tier": 2,
2484
+ "name": "Google Chrome",
2485
+ "endpoint": {
2486
+ "cdp": "http://127.0.0.1:9361",
2487
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9361/devtools/browser/ws1",
2488
+ "name": "Google Chrome",
2489
+ "source": "devtools-active-port",
2490
+ "browser": "chrome",
2491
+ "userDataDir": "{userData:chrome}",
2492
+ "wsOnly": true,
2493
+ "sevenOpen": false,
2494
+ "sevenTabs": []
2495
+ }
2496
+ },
2497
+ {
2498
+ "id": "cdp:127.0.0.1:9362",
2499
+ "kind": "endpoint",
2500
+ "tier": 2,
2501
+ "name": "Chromium",
2502
+ "endpoint": {
2503
+ "cdp": "http://127.0.0.1:9362",
2504
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9362/devtools/browser/ws2",
2505
+ "name": "Chromium",
2506
+ "source": "devtools-active-port",
2507
+ "userDataDir": "{sevenProfiles}/side",
2508
+ "profile": "side",
2509
+ "wsOnly": true,
2510
+ "sevenOpen": false,
2511
+ "sevenTabs": []
2512
+ }
2513
+ },
2514
+ {
2515
+ "id": "cdp:127.0.0.1:9365",
2516
+ "kind": "endpoint",
2517
+ "tier": 2,
2518
+ "name": "Chromium",
2519
+ "endpoint": {
2520
+ "cdp": "http://127.0.0.1:9365",
2521
+ "webSocketDebuggerUrl": "ws://127.0.0.1:9365/devtools/browser/ws5",
2522
+ "name": "Chromium",
2523
+ "source": "flag",
2524
+ "wsOnly": true,
2525
+ "sevenOpen": false,
2526
+ "sevenTabs": []
2527
+ }
2528
+ }
2529
+ ]
2530
+ }
2531
+ }
2532
+ ]
2533
+ }