@sysid/sandbox-runtime-improved 0.0.52-sysid.1 → 0.0.55-sysid.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. package/README.md +5 -2
  2. package/dist/cli.js +91 -7
  3. package/dist/cli.js.map +1 -1
  4. package/dist/index.d.ts +4 -0
  5. package/dist/index.d.ts.map +1 -1
  6. package/dist/index.js +3 -0
  7. package/dist/index.js.map +1 -1
  8. package/dist/sandbox/http-proxy.d.ts +7 -0
  9. package/dist/sandbox/http-proxy.d.ts.map +1 -1
  10. package/dist/sandbox/http-proxy.js +20 -0
  11. package/dist/sandbox/http-proxy.js.map +1 -1
  12. package/dist/sandbox/linux-sandbox-utils.d.ts +2 -0
  13. package/dist/sandbox/linux-sandbox-utils.d.ts.map +1 -1
  14. package/dist/sandbox/linux-sandbox-utils.js +107 -46
  15. package/dist/sandbox/linux-sandbox-utils.js.map +1 -1
  16. package/dist/sandbox/macos-sandbox-utils.d.ts +3 -0
  17. package/dist/sandbox/macos-sandbox-utils.d.ts.map +1 -1
  18. package/dist/sandbox/macos-sandbox-utils.js +32 -3
  19. package/dist/sandbox/macos-sandbox-utils.js.map +1 -1
  20. package/dist/sandbox/mitm-leaf.d.ts.map +1 -1
  21. package/dist/sandbox/mitm-leaf.js +18 -5
  22. package/dist/sandbox/mitm-leaf.js.map +1 -1
  23. package/dist/sandbox/sandbox-config.d.ts +63 -2
  24. package/dist/sandbox/sandbox-config.d.ts.map +1 -1
  25. package/dist/sandbox/sandbox-config.js +52 -2
  26. package/dist/sandbox/sandbox-config.js.map +1 -1
  27. package/dist/sandbox/sandbox-manager.d.ts +5 -0
  28. package/dist/sandbox/sandbox-manager.d.ts.map +1 -1
  29. package/dist/sandbox/sandbox-manager.js +208 -44
  30. package/dist/sandbox/sandbox-manager.js.map +1 -1
  31. package/dist/sandbox/sandbox-schemas.d.ts +9 -3
  32. package/dist/sandbox/sandbox-schemas.d.ts.map +1 -1
  33. package/dist/sandbox/sandbox-utils.d.ts +1 -1
  34. package/dist/sandbox/sandbox-utils.d.ts.map +1 -1
  35. package/dist/sandbox/sandbox-utils.js +46 -18
  36. package/dist/sandbox/sandbox-utils.js.map +1 -1
  37. package/dist/sandbox/socks-proxy.d.ts +6 -0
  38. package/dist/sandbox/socks-proxy.d.ts.map +1 -1
  39. package/dist/sandbox/socks-proxy.js +11 -0
  40. package/dist/sandbox/socks-proxy.js.map +1 -1
  41. package/dist/sandbox/tls-terminate-proxy.js +18 -4
  42. package/dist/sandbox/tls-terminate-proxy.js.map +1 -1
  43. package/dist/sandbox/windows-sandbox-utils.d.ts +224 -0
  44. package/dist/sandbox/windows-sandbox-utils.d.ts.map +1 -0
  45. package/dist/sandbox/windows-sandbox-utils.js +433 -0
  46. package/dist/sandbox/windows-sandbox-utils.js.map +1 -0
  47. package/dist/vendor/srt-win/Cargo.lock +361 -0
  48. package/dist/vendor/srt-win/Cargo.toml +46 -0
  49. package/dist/vendor/srt-win/ci/cleanup.ps1 +49 -0
  50. package/dist/vendor/srt-win/ci/smoke-exec.ps1 +446 -0
  51. package/dist/vendor/srt-win/ci/smoke.ps1 +307 -0
  52. package/dist/vendor/srt-win/src/job.rs +102 -0
  53. package/dist/vendor/srt-win/src/launch.rs +732 -0
  54. package/dist/vendor/srt-win/src/lib.rs +20 -0
  55. package/dist/vendor/srt-win/src/main.rs +669 -0
  56. package/dist/vendor/srt-win/src/self_protect.rs +169 -0
  57. package/dist/vendor/srt-win/src/sid.rs +296 -0
  58. package/dist/vendor/srt-win/src/token.rs +341 -0
  59. package/dist/vendor/srt-win/src/util.rs +42 -0
  60. package/dist/vendor/srt-win/src/wfp.rs +992 -0
  61. package/dist/vendor/srt-win/src/winsta.rs +209 -0
  62. package/dist/vendor/srt-win/tests/sd_access_check_matrix.rs +259 -0
  63. package/package.json +2 -2
  64. package/vendor/srt-win/Cargo.lock +361 -0
  65. package/vendor/srt-win/Cargo.toml +46 -0
  66. package/vendor/srt-win/ci/cleanup.ps1 +49 -0
  67. package/vendor/srt-win/ci/smoke-exec.ps1 +446 -0
  68. package/vendor/srt-win/ci/smoke.ps1 +307 -0
  69. package/vendor/srt-win/src/job.rs +102 -0
  70. package/vendor/srt-win/src/launch.rs +732 -0
  71. package/vendor/srt-win/src/lib.rs +20 -0
  72. package/vendor/srt-win/src/main.rs +669 -0
  73. package/vendor/srt-win/src/self_protect.rs +169 -0
  74. package/vendor/srt-win/src/sid.rs +296 -0
  75. package/vendor/srt-win/src/token.rs +341 -0
  76. package/vendor/srt-win/src/util.rs +42 -0
  77. package/vendor/srt-win/src/wfp.rs +992 -0
  78. package/vendor/srt-win/src/winsta.rs +209 -0
  79. package/vendor/srt-win/tests/sd_access_check_matrix.rs +259 -0
@@ -0,0 +1,361 @@
1
+ # This file is automatically @generated by Cargo.
2
+ # It is not intended for manual editing.
3
+ version = 4
4
+
5
+ [[package]]
6
+ name = "anstream"
7
+ version = "1.0.0"
8
+ source = "registry+https://github.com/rust-lang/crates.io-index"
9
+ checksum = "824a212faf96e9acacdbd09febd34438f8f711fb84e09a8916013cd7815ca28d"
10
+ dependencies = [
11
+ "anstyle",
12
+ "anstyle-parse",
13
+ "anstyle-query",
14
+ "anstyle-wincon",
15
+ "colorchoice",
16
+ "is_terminal_polyfill",
17
+ "utf8parse",
18
+ ]
19
+
20
+ [[package]]
21
+ name = "anstyle"
22
+ version = "1.0.14"
23
+ source = "registry+https://github.com/rust-lang/crates.io-index"
24
+ checksum = "940b3a0ca603d1eade50a4846a2afffd5ef57a9feac2c0e2ec2e14f9ead76000"
25
+
26
+ [[package]]
27
+ name = "anstyle-parse"
28
+ version = "1.0.0"
29
+ source = "registry+https://github.com/rust-lang/crates.io-index"
30
+ checksum = "52ce7f38b242319f7cabaa6813055467063ecdc9d355bbb4ce0c68908cd8130e"
31
+ dependencies = [
32
+ "utf8parse",
33
+ ]
34
+
35
+ [[package]]
36
+ name = "anstyle-query"
37
+ version = "1.1.5"
38
+ source = "registry+https://github.com/rust-lang/crates.io-index"
39
+ checksum = "40c48f72fd53cd289104fc64099abca73db4166ad86ea0b4341abe65af83dadc"
40
+ dependencies = [
41
+ "windows-sys",
42
+ ]
43
+
44
+ [[package]]
45
+ name = "anstyle-wincon"
46
+ version = "3.0.11"
47
+ source = "registry+https://github.com/rust-lang/crates.io-index"
48
+ checksum = "291e6a250ff86cd4a820112fb8898808a366d8f9f58ce16d1f538353ad55747d"
49
+ dependencies = [
50
+ "anstyle",
51
+ "once_cell_polyfill",
52
+ "windows-sys",
53
+ ]
54
+
55
+ [[package]]
56
+ name = "anyhow"
57
+ version = "1.0.102"
58
+ source = "registry+https://github.com/rust-lang/crates.io-index"
59
+ checksum = "7f202df86484c868dbad7eaa557ef785d5c66295e41b460ef922eca0723b842c"
60
+
61
+ [[package]]
62
+ name = "clap"
63
+ version = "4.6.1"
64
+ source = "registry+https://github.com/rust-lang/crates.io-index"
65
+ checksum = "1ddb117e43bbf7dacf0a4190fef4d345b9bad68dfc649cb349e7d17d28428e51"
66
+ dependencies = [
67
+ "clap_builder",
68
+ "clap_derive",
69
+ ]
70
+
71
+ [[package]]
72
+ name = "clap_builder"
73
+ version = "4.6.0"
74
+ source = "registry+https://github.com/rust-lang/crates.io-index"
75
+ checksum = "714a53001bf66416adb0e2ef5ac857140e7dc3a0c48fb28b2f10762fc4b5069f"
76
+ dependencies = [
77
+ "anstream",
78
+ "anstyle",
79
+ "clap_lex",
80
+ "strsim",
81
+ ]
82
+
83
+ [[package]]
84
+ name = "clap_derive"
85
+ version = "4.6.1"
86
+ source = "registry+https://github.com/rust-lang/crates.io-index"
87
+ checksum = "f2ce8604710f6733aa641a2b3731eaa1e8b3d9973d5e3565da11800813f997a9"
88
+ dependencies = [
89
+ "heck",
90
+ "proc-macro2",
91
+ "quote",
92
+ "syn",
93
+ ]
94
+
95
+ [[package]]
96
+ name = "clap_lex"
97
+ version = "1.1.0"
98
+ source = "registry+https://github.com/rust-lang/crates.io-index"
99
+ checksum = "c8d4a3bb8b1e0c1050499d1815f5ab16d04f0959b233085fb31653fbfc9d98f9"
100
+
101
+ [[package]]
102
+ name = "colorchoice"
103
+ version = "1.0.5"
104
+ source = "registry+https://github.com/rust-lang/crates.io-index"
105
+ checksum = "1d07550c9036bf2ae0c684c4297d503f838287c83c53686d05370d0e139ae570"
106
+
107
+ [[package]]
108
+ name = "heck"
109
+ version = "0.5.0"
110
+ source = "registry+https://github.com/rust-lang/crates.io-index"
111
+ checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
112
+
113
+ [[package]]
114
+ name = "is_terminal_polyfill"
115
+ version = "1.70.2"
116
+ source = "registry+https://github.com/rust-lang/crates.io-index"
117
+ checksum = "a6cb138bb79a146c1bd460005623e142ef0181e3d0219cb493e02f7d08a35695"
118
+
119
+ [[package]]
120
+ name = "itoa"
121
+ version = "1.0.18"
122
+ source = "registry+https://github.com/rust-lang/crates.io-index"
123
+ checksum = "8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682"
124
+
125
+ [[package]]
126
+ name = "memchr"
127
+ version = "2.8.0"
128
+ source = "registry+https://github.com/rust-lang/crates.io-index"
129
+ checksum = "f8ca58f447f06ed17d5fc4043ce1b10dd205e060fb3ce5b979b8ed8e59ff3f79"
130
+
131
+ [[package]]
132
+ name = "once_cell_polyfill"
133
+ version = "1.70.2"
134
+ source = "registry+https://github.com/rust-lang/crates.io-index"
135
+ checksum = "384b8ab6d37215f3c5301a95a4accb5d64aa607f1fcb26a11b5303878451b4fe"
136
+
137
+ [[package]]
138
+ name = "proc-macro2"
139
+ version = "1.0.106"
140
+ source = "registry+https://github.com/rust-lang/crates.io-index"
141
+ checksum = "8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934"
142
+ dependencies = [
143
+ "unicode-ident",
144
+ ]
145
+
146
+ [[package]]
147
+ name = "quote"
148
+ version = "1.0.45"
149
+ source = "registry+https://github.com/rust-lang/crates.io-index"
150
+ checksum = "41f2619966050689382d2b44f664f4bc593e129785a36d6ee376ddf37259b924"
151
+ dependencies = [
152
+ "proc-macro2",
153
+ ]
154
+
155
+ [[package]]
156
+ name = "serde"
157
+ version = "1.0.228"
158
+ source = "registry+https://github.com/rust-lang/crates.io-index"
159
+ checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e"
160
+ dependencies = [
161
+ "serde_core",
162
+ "serde_derive",
163
+ ]
164
+
165
+ [[package]]
166
+ name = "serde_core"
167
+ version = "1.0.228"
168
+ source = "registry+https://github.com/rust-lang/crates.io-index"
169
+ checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad"
170
+ dependencies = [
171
+ "serde_derive",
172
+ ]
173
+
174
+ [[package]]
175
+ name = "serde_derive"
176
+ version = "1.0.228"
177
+ source = "registry+https://github.com/rust-lang/crates.io-index"
178
+ checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79"
179
+ dependencies = [
180
+ "proc-macro2",
181
+ "quote",
182
+ "syn",
183
+ ]
184
+
185
+ [[package]]
186
+ name = "serde_json"
187
+ version = "1.0.150"
188
+ source = "registry+https://github.com/rust-lang/crates.io-index"
189
+ checksum = "e8014e44b4736ed0538adeecded0fce2a272f22dc9578a7eb6b2d9993c74cfb9"
190
+ dependencies = [
191
+ "itoa",
192
+ "memchr",
193
+ "serde",
194
+ "serde_core",
195
+ "zmij",
196
+ ]
197
+
198
+ [[package]]
199
+ name = "srt-win"
200
+ version = "0.0.1"
201
+ dependencies = [
202
+ "anyhow",
203
+ "clap",
204
+ "serde",
205
+ "serde_json",
206
+ "windows",
207
+ ]
208
+
209
+ [[package]]
210
+ name = "strsim"
211
+ version = "0.11.1"
212
+ source = "registry+https://github.com/rust-lang/crates.io-index"
213
+ checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f"
214
+
215
+ [[package]]
216
+ name = "syn"
217
+ version = "2.0.117"
218
+ source = "registry+https://github.com/rust-lang/crates.io-index"
219
+ checksum = "e665b8803e7b1d2a727f4023456bbbbe74da67099c585258af0ad9c5013b9b99"
220
+ dependencies = [
221
+ "proc-macro2",
222
+ "quote",
223
+ "unicode-ident",
224
+ ]
225
+
226
+ [[package]]
227
+ name = "unicode-ident"
228
+ version = "1.0.24"
229
+ source = "registry+https://github.com/rust-lang/crates.io-index"
230
+ checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75"
231
+
232
+ [[package]]
233
+ name = "utf8parse"
234
+ version = "0.2.2"
235
+ source = "registry+https://github.com/rust-lang/crates.io-index"
236
+ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821"
237
+
238
+ [[package]]
239
+ name = "windows"
240
+ version = "0.62.2"
241
+ source = "registry+https://github.com/rust-lang/crates.io-index"
242
+ checksum = "527fadee13e0c05939a6a05d5bd6eec6cd2e3dbd648b9f8e447c6518133d8580"
243
+ dependencies = [
244
+ "windows-collections",
245
+ "windows-core",
246
+ "windows-future",
247
+ "windows-numerics",
248
+ ]
249
+
250
+ [[package]]
251
+ name = "windows-collections"
252
+ version = "0.3.2"
253
+ source = "registry+https://github.com/rust-lang/crates.io-index"
254
+ checksum = "23b2d95af1a8a14a3c7367e1ed4fc9c20e0a26e79551b1454d72583c97cc6610"
255
+ dependencies = [
256
+ "windows-core",
257
+ ]
258
+
259
+ [[package]]
260
+ name = "windows-core"
261
+ version = "0.62.2"
262
+ source = "registry+https://github.com/rust-lang/crates.io-index"
263
+ checksum = "b8e83a14d34d0623b51dce9581199302a221863196a1dde71a7663a4c2be9deb"
264
+ dependencies = [
265
+ "windows-implement",
266
+ "windows-interface",
267
+ "windows-link",
268
+ "windows-result",
269
+ "windows-strings",
270
+ ]
271
+
272
+ [[package]]
273
+ name = "windows-future"
274
+ version = "0.3.2"
275
+ source = "registry+https://github.com/rust-lang/crates.io-index"
276
+ checksum = "e1d6f90251fe18a279739e78025bd6ddc52a7e22f921070ccdc67dde84c605cb"
277
+ dependencies = [
278
+ "windows-core",
279
+ "windows-link",
280
+ "windows-threading",
281
+ ]
282
+
283
+ [[package]]
284
+ name = "windows-implement"
285
+ version = "0.60.2"
286
+ source = "registry+https://github.com/rust-lang/crates.io-index"
287
+ checksum = "053e2e040ab57b9dc951b72c264860db7eb3b0200ba345b4e4c3b14f67855ddf"
288
+ dependencies = [
289
+ "proc-macro2",
290
+ "quote",
291
+ "syn",
292
+ ]
293
+
294
+ [[package]]
295
+ name = "windows-interface"
296
+ version = "0.59.3"
297
+ source = "registry+https://github.com/rust-lang/crates.io-index"
298
+ checksum = "3f316c4a2570ba26bbec722032c4099d8c8bc095efccdc15688708623367e358"
299
+ dependencies = [
300
+ "proc-macro2",
301
+ "quote",
302
+ "syn",
303
+ ]
304
+
305
+ [[package]]
306
+ name = "windows-link"
307
+ version = "0.2.1"
308
+ source = "registry+https://github.com/rust-lang/crates.io-index"
309
+ checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5"
310
+
311
+ [[package]]
312
+ name = "windows-numerics"
313
+ version = "0.3.1"
314
+ source = "registry+https://github.com/rust-lang/crates.io-index"
315
+ checksum = "6e2e40844ac143cdb44aead537bbf727de9b044e107a0f1220392177d15b0f26"
316
+ dependencies = [
317
+ "windows-core",
318
+ "windows-link",
319
+ ]
320
+
321
+ [[package]]
322
+ name = "windows-result"
323
+ version = "0.4.1"
324
+ source = "registry+https://github.com/rust-lang/crates.io-index"
325
+ checksum = "7781fa89eaf60850ac3d2da7af8e5242a5ea78d1a11c49bf2910bb5a73853eb5"
326
+ dependencies = [
327
+ "windows-link",
328
+ ]
329
+
330
+ [[package]]
331
+ name = "windows-strings"
332
+ version = "0.5.1"
333
+ source = "registry+https://github.com/rust-lang/crates.io-index"
334
+ checksum = "7837d08f69c77cf6b07689544538e017c1bfcf57e34b4c0ff58e6c2cd3b37091"
335
+ dependencies = [
336
+ "windows-link",
337
+ ]
338
+
339
+ [[package]]
340
+ name = "windows-sys"
341
+ version = "0.61.2"
342
+ source = "registry+https://github.com/rust-lang/crates.io-index"
343
+ checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc"
344
+ dependencies = [
345
+ "windows-link",
346
+ ]
347
+
348
+ [[package]]
349
+ name = "windows-threading"
350
+ version = "0.2.1"
351
+ source = "registry+https://github.com/rust-lang/crates.io-index"
352
+ checksum = "3949bd5b99cafdf1c7ca86b43ca564028dfe27d66958f2470940f73d86d75b37"
353
+ dependencies = [
354
+ "windows-link",
355
+ ]
356
+
357
+ [[package]]
358
+ name = "zmij"
359
+ version = "1.0.21"
360
+ source = "registry+https://github.com/rust-lang/crates.io-index"
361
+ checksum = "b8848ee67ecc8aedbaf3e4122217aff892639231befc6a1b58d29fff4c2cabaa"
@@ -0,0 +1,46 @@
1
+ [package]
2
+ name = "srt-win"
3
+ version = "0.0.1"
4
+ edition = "2024"
5
+ publish = false
6
+ description = "Windows network sandbox helper for sandbox-runtime"
7
+
8
+ [lib]
9
+ name = "srt_win"
10
+ path = "src/lib.rs"
11
+
12
+ [[bin]]
13
+ name = "srt-win"
14
+ path = "src/main.rs"
15
+
16
+ [dependencies]
17
+ anyhow = "1"
18
+ clap = { version = "4", features = ["derive"] }
19
+ serde = { version = "1", features = ["derive"] }
20
+ serde_json = "1"
21
+
22
+ [target.'cfg(windows)'.dependencies]
23
+ windows = { version = "0.62.2", features = [
24
+ "Win32_Foundation",
25
+ "Win32_System_Threading",
26
+ "Win32_System_Memory",
27
+ "Win32_System_Rpc",
28
+ "Win32_System_SystemServices",
29
+ "Win32_System_JobObjects",
30
+ "Win32_System_StationsAndDesktops",
31
+ "Win32_System_Console",
32
+ "Win32_Graphics_Gdi",
33
+ "Win32_Security",
34
+ "Win32_Security_Authorization",
35
+ "Win32_NetworkManagement_WindowsFilteringPlatform",
36
+ "Win32_NetworkManagement_NetManagement",
37
+ "Win32_UI_Shell",
38
+ "Win32_UI_WindowsAndMessaging",
39
+ "Win32_System_Registry",
40
+ ] }
41
+
42
+ [profile.release]
43
+ opt-level = 2
44
+ lto = "thin"
45
+ codegen-units = 1
46
+ strip = "symbols"
@@ -0,0 +1,49 @@
1
+ <#
2
+ Best-effort teardown of any state smoke.ps1 may have left behind.
3
+ Intended for `if: always()` in CI; safe to run locally too.
4
+
5
+ Targets the same fixed test sublayer as smoke.ps1 (NOT the
6
+ production default), plus the per-run random alt sublayer if
7
+ smoke.ps1 wrote one to $env:SRT_ALT_GUID.
8
+
9
+ Usage:
10
+ pwsh vendor/srt-win/ci/cleanup.ps1 <path-to-srt-win.exe> [group-name]
11
+ #>
12
+ param(
13
+ [Parameter(Mandatory = $true)]
14
+ [string]$Exe,
15
+ [string]$GroupName = 'srt-ci-test',
16
+ # Must match smoke.ps1's default.
17
+ [string]$TestSublayer = 'a91b6f12-4c0e-4e30-b1f7-3d52890ce117',
18
+ # Must match smoke.ps1's single-install section.
19
+ [string]$InstallSublayer = 'b2e8a6c4-1f73-4d09-9e25-c7b0d3a48f61',
20
+ # Must match smoke-exec.ps1's default.
21
+ [string]$ExecSublayer = '5b0e64f4-09f1-4c2e-8c97-4d2c0f4e9b7d',
22
+ # Must match test/sandbox/winsrt.test.ts.
23
+ [string]$TsSublayer = '7c1f0e90-3a2b-4f5d-9e8c-1d2e3f4a5b6c'
24
+ )
25
+
26
+ $ErrorActionPreference = 'SilentlyContinue'
27
+
28
+ if (-not (Test-Path $Exe)) {
29
+ Write-Host "cleanup: $Exe not found; nothing to do"
30
+ exit 0
31
+ }
32
+
33
+ if ($env:SRT_ALT_GUID) {
34
+ & $Exe wfp uninstall --sublayer-guid $env:SRT_ALT_GUID
35
+ }
36
+ & $Exe wfp uninstall --sublayer-guid $TestSublayer
37
+ & $Exe wfp uninstall --sublayer-guid $InstallSublayer
38
+ & $Exe wfp uninstall --sublayer-guid $ExecSublayer
39
+ & $Exe wfp uninstall --sublayer-guid $TsSublayer
40
+ # winsrt.test.ts installWindowsSandbox round-trip row uses this
41
+ # sublayer + a per-process group name `srt-ts-test-<pid>`. The test
42
+ # tears down via uninstallWindowsSandbox(); this is belt-and-braces
43
+ # in case it crashed mid-row. The group name is per-pid so we can't
44
+ # delete it here — harmless leftover state on an ephemeral runner.
45
+ & $Exe wfp uninstall --sublayer-guid 8d2f1e91-4b3c-5a6e-af9d-2e3f4a5b6c7d
46
+ & $Exe wfp uninstall --sublayer-guid 9e3a2fa2-5c4d-6b7f-ba0e-3f4a5b6c7d8e
47
+ & $Exe group delete --name $GroupName
48
+ & $Exe group delete --name "$GroupName-inst"
49
+ exit 0