@highstate/backend 0.9.15 → 0.9.18

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 (187) hide show
  1. package/dist/chunk-NAAIDR4U.js +8499 -0
  2. package/dist/chunk-NAAIDR4U.js.map +1 -0
  3. package/dist/chunk-OU5OQBLB.js +74 -0
  4. package/dist/chunk-OU5OQBLB.js.map +1 -0
  5. package/dist/chunk-Y7DXREVO.js +1745 -0
  6. package/dist/chunk-Y7DXREVO.js.map +1 -0
  7. package/dist/highstate.manifest.json +4 -4
  8. package/dist/index.js +7227 -2501
  9. package/dist/index.js.map +1 -1
  10. package/dist/library/package-resolution-worker.js +7 -5
  11. package/dist/library/package-resolution-worker.js.map +1 -1
  12. package/dist/library/worker/main.js +76 -185
  13. package/dist/library/worker/main.js.map +1 -1
  14. package/dist/magic-string.es-5ABAC4JN.js +1292 -0
  15. package/dist/magic-string.es-5ABAC4JN.js.map +1 -0
  16. package/dist/shared/index.js +3 -98
  17. package/dist/shared/index.js.map +1 -1
  18. package/package.json +31 -10
  19. package/src/artifact/abstractions.ts +46 -0
  20. package/src/artifact/encryption.ts +109 -0
  21. package/src/artifact/factory.ts +36 -0
  22. package/src/artifact/index.ts +3 -0
  23. package/src/artifact/local.ts +138 -0
  24. package/src/business/__traces__/secret/update-instance-secrets/create-and-delete-secrets-simultaneously.md +356 -0
  25. package/src/business/__traces__/secret/update-instance-secrets/create-new-secrets-for-instance.md +274 -0
  26. package/src/business/__traces__/secret/update-instance-secrets/delete-existing-secrets.md +223 -0
  27. package/src/business/__traces__/secret/update-instance-secrets/no-op-when-no-changes.md +147 -0
  28. package/src/business/__traces__/secret/update-instance-secrets/update-existing-secrets.md +280 -0
  29. package/src/business/__traces__/worker/update-unit-registrations/add-new-unit-registration-when-other-exists.md +360 -0
  30. package/src/business/__traces__/worker/update-unit-registrations/add-new-unit-registration.md +215 -0
  31. package/src/business/__traces__/worker/update-unit-registrations/create-multiple-workers-with-different-identities.md +427 -0
  32. package/src/business/__traces__/worker/update-unit-registrations/handle-nonexistent-registration-id-gracefully.md +217 -0
  33. package/src/business/__traces__/worker/update-unit-registrations/no-op-when-no-changes.md +132 -0
  34. package/src/business/__traces__/worker/update-unit-registrations/recreate-worker-when-image-changes.md +454 -0
  35. package/src/business/__traces__/worker/update-unit-registrations/recreate-worker-when-image-version-changes.md +426 -0
  36. package/src/business/__traces__/worker/update-unit-registrations/recreate-worker-with-same-identity-reuses-service-account.md +372 -0
  37. package/src/business/__traces__/worker/update-unit-registrations/remove-one-of-multiple-unit-registrations.md +383 -0
  38. package/src/business/__traces__/worker/update-unit-registrations/remove-unit-registration.md +245 -0
  39. package/src/business/__traces__/worker/update-unit-registrations/update-existing-unit-registration-when-params-change.md +174 -0
  40. package/src/business/__traces__/worker/update-unit-registrations/update-params-and-image-simultaneously.md +432 -0
  41. package/src/business/__traces__/worker/update-unit-registrations/worker-with-multiple-registrations-not-deleted-when-one-removed.md +220 -0
  42. package/src/business/api-key.ts +65 -0
  43. package/src/business/artifact.ts +289 -0
  44. package/src/business/backend-unlock.ts +10 -0
  45. package/src/business/index.ts +10 -0
  46. package/src/business/instance-lock.ts +125 -0
  47. package/src/business/instance-state.ts +434 -0
  48. package/src/business/operation.ts +251 -0
  49. package/src/business/project-unlock.ts +260 -0
  50. package/src/business/project.ts +299 -0
  51. package/src/business/secret.test.ts +178 -0
  52. package/src/business/secret.ts +281 -0
  53. package/src/business/worker.test.ts +614 -0
  54. package/src/business/worker.ts +398 -0
  55. package/src/common/clock.ts +18 -0
  56. package/src/common/index.ts +5 -1
  57. package/src/common/performance.ts +44 -0
  58. package/src/common/random.ts +68 -0
  59. package/src/common/test/index.ts +2 -0
  60. package/src/common/test/render.ts +98 -0
  61. package/src/common/test/tracer.ts +359 -0
  62. package/src/common/tree.ts +33 -0
  63. package/src/common/utils.ts +40 -1
  64. package/src/config.ts +19 -11
  65. package/src/hotstate/abstractions.ts +48 -0
  66. package/src/hotstate/factory.ts +17 -0
  67. package/src/{secret → hotstate}/index.ts +1 -0
  68. package/src/hotstate/manager.ts +192 -0
  69. package/src/hotstate/memory.ts +100 -0
  70. package/src/hotstate/validation.ts +100 -0
  71. package/src/index.ts +2 -1
  72. package/src/library/abstractions.ts +24 -28
  73. package/src/library/factory.ts +2 -2
  74. package/src/library/local.ts +91 -111
  75. package/src/library/worker/evaluator.ts +36 -73
  76. package/src/library/worker/loader.lite.ts +54 -0
  77. package/src/library/worker/main.ts +15 -66
  78. package/src/library/worker/protocol.ts +6 -33
  79. package/src/lock/abstractions.ts +6 -0
  80. package/src/lock/factory.ts +15 -0
  81. package/src/lock/index.ts +4 -0
  82. package/src/lock/manager.ts +97 -0
  83. package/src/lock/memory.ts +19 -0
  84. package/src/lock/test.ts +108 -0
  85. package/src/orchestrator/manager.ts +118 -90
  86. package/src/orchestrator/operation-workset.ts +181 -93
  87. package/src/orchestrator/operation.ts +1021 -283
  88. package/src/project/abstractions.ts +27 -38
  89. package/src/project/evaluation.ts +248 -0
  90. package/src/project/factory.ts +1 -1
  91. package/src/project/index.ts +1 -2
  92. package/src/project/local.ts +107 -103
  93. package/src/pubsub/abstractions.ts +13 -0
  94. package/src/pubsub/factory.ts +19 -0
  95. package/src/{workspace → pubsub}/index.ts +1 -0
  96. package/src/pubsub/local.ts +36 -0
  97. package/src/pubsub/manager.ts +108 -0
  98. package/src/pubsub/validation.ts +33 -0
  99. package/src/runner/abstractions.ts +155 -68
  100. package/src/runner/artifact-env.ts +160 -0
  101. package/src/runner/factory.ts +20 -5
  102. package/src/runner/force-abort.ts +117 -0
  103. package/src/runner/local.ts +292 -372
  104. package/src/{common → runner}/pulumi.ts +89 -37
  105. package/src/services.ts +251 -40
  106. package/src/shared/index.ts +3 -11
  107. package/src/shared/models/backend/index.ts +3 -0
  108. package/src/shared/{library.ts → models/backend/library.ts} +4 -4
  109. package/src/shared/models/backend/project.ts +82 -0
  110. package/src/shared/models/backend/unlock-method.ts +20 -0
  111. package/src/shared/models/base.ts +68 -0
  112. package/src/shared/models/errors.ts +5 -0
  113. package/src/shared/models/index.ts +4 -0
  114. package/src/shared/models/project/api-key.ts +65 -0
  115. package/src/shared/models/project/artifact.ts +83 -0
  116. package/src/shared/models/project/index.ts +13 -0
  117. package/src/shared/models/project/lock.ts +91 -0
  118. package/src/shared/models/project/model.ts +14 -0
  119. package/src/shared/{operation.ts → models/project/operation.ts} +29 -8
  120. package/src/shared/models/project/page.ts +57 -0
  121. package/src/shared/models/project/secret.ts +98 -0
  122. package/src/shared/models/project/service-account.ts +22 -0
  123. package/src/shared/models/project/state.ts +449 -0
  124. package/src/shared/models/project/terminal.ts +98 -0
  125. package/src/shared/models/project/trigger.ts +56 -0
  126. package/src/shared/models/project/unlock-method.ts +38 -0
  127. package/src/shared/models/project/worker.ts +107 -0
  128. package/src/shared/resolvers/graph-resolver.ts +61 -18
  129. package/src/shared/resolvers/index.ts +5 -0
  130. package/src/shared/resolvers/input-hash.ts +53 -15
  131. package/src/shared/resolvers/input.ts +47 -13
  132. package/src/shared/resolvers/registry.ts +3 -2
  133. package/src/shared/resolvers/state.ts +2 -2
  134. package/src/shared/resolvers/validation.ts +82 -25
  135. package/src/shared/utils/args.ts +25 -0
  136. package/src/shared/{async-batcher.ts → utils/async-batcher.ts} +13 -1
  137. package/src/shared/utils/hash.ts +6 -0
  138. package/src/shared/utils/index.ts +4 -0
  139. package/src/shared/utils/promise-tracker.ts +23 -0
  140. package/src/state/abstractions.ts +199 -131
  141. package/src/state/encryption.ts +98 -0
  142. package/src/state/factory.ts +3 -5
  143. package/src/state/index.ts +4 -0
  144. package/src/state/keyring.ts +22 -0
  145. package/src/state/local/backend.ts +106 -0
  146. package/src/state/local/collection.ts +361 -0
  147. package/src/state/local/index.ts +2 -0
  148. package/src/state/manager.ts +875 -18
  149. package/src/state/memory/backend.ts +70 -0
  150. package/src/state/memory/collection.ts +270 -0
  151. package/src/state/memory/index.ts +2 -0
  152. package/src/state/repository/index.ts +2 -0
  153. package/src/state/repository/repository.index.ts +193 -0
  154. package/src/state/repository/repository.ts +507 -0
  155. package/src/state/test.ts +457 -0
  156. package/src/terminal/{shared.ts → abstractions.ts} +3 -3
  157. package/src/terminal/docker.ts +18 -14
  158. package/src/terminal/factory.ts +3 -3
  159. package/src/terminal/index.ts +1 -1
  160. package/src/terminal/manager.ts +131 -79
  161. package/src/terminal/run.sh.ts +21 -11
  162. package/src/unlock/abstractions.ts +49 -0
  163. package/src/unlock/index.ts +2 -0
  164. package/src/unlock/memory.ts +32 -0
  165. package/src/worker/abstractions.ts +42 -0
  166. package/src/worker/docker.ts +83 -0
  167. package/src/worker/factory.ts +20 -0
  168. package/src/worker/index.ts +3 -0
  169. package/src/worker/manager.ts +167 -0
  170. package/dist/chunk-KTGKNSKM.js +0 -979
  171. package/dist/chunk-KTGKNSKM.js.map +0 -1
  172. package/dist/chunk-WXDYCRTT.js +0 -234
  173. package/dist/chunk-WXDYCRTT.js.map +0 -1
  174. package/src/library/worker/loader.ts +0 -114
  175. package/src/preferences/shared.ts +0 -1
  176. package/src/project/lock.ts +0 -39
  177. package/src/project/manager.ts +0 -433
  178. package/src/secret/abstractions.ts +0 -59
  179. package/src/secret/factory.ts +0 -22
  180. package/src/secret/local.ts +0 -152
  181. package/src/shared/project.ts +0 -62
  182. package/src/shared/state.ts +0 -247
  183. package/src/shared/terminal.ts +0 -14
  184. package/src/state/local.ts +0 -612
  185. package/src/workspace/abstractions.ts +0 -41
  186. package/src/workspace/factory.ts +0 -14
  187. package/src/workspace/local.ts +0 -54
@@ -0,0 +1,454 @@
1
+ ## arrange
2
+
3
+ ### <a id="trace-1"></a> 1. 💾 putItem
4
+
5
+ **Collection:** `workers:test`
6
+
7
+ **Key:** `"00000000-0011-7000-8000-413b6b423f41"`
8
+
9
+ **Value:**
10
+
11
+ ```js
12
+ {
13
+ "id": "00000000-0011-7000-8000-413b6b423f41",
14
+ "meta": {},
15
+ "image": "ghcr.io/org/worker:v1",
16
+ "apiKeyId": "00000000-0023-7000-8000-8b4d7d545153",
17
+ "failedStartAttempts": 5,
18
+ "status": "starting",
19
+ "identity": "ghcr.io/org/worker",
20
+ "serviceAccountId": "00000000-0035-7000-8000-d15f8f666365"
21
+ }
22
+ ```
23
+
24
+ ### <a id="trace-2"></a> 2. 💾 putItem
25
+
26
+ **Collection:** `worker-registrations:test`
27
+
28
+ **Key:** `"00000000-0047-7000-8001-1b71a1787577"`
29
+
30
+ **Value:**
31
+
32
+ ```js
33
+ {
34
+ "id": "00000000-0047-7000-8001-1b71a1787577",
35
+ "meta": {},
36
+ "workerId": "00000000-0011-7000-8000-413b6b423f41",
37
+ "image": "ghcr.io/org/worker:v1",
38
+ "instanceId": "test",
39
+ "params": {}
40
+ }
41
+ ```
42
+
43
+ ## act
44
+
45
+ ### <a id="trace-3"></a> 3. 🔒 locked, released at [34](#trace-34)
46
+
47
+ **Keys:**
48
+
49
+ `"worker-image:test:ghcr.io/org/otherworker:v1"`
50
+
51
+ ### <a id="trace-4"></a> 4. 📖 getManyRecord
52
+
53
+ **Collection:** `worker-registrations:test`
54
+
55
+ **Keys:**
56
+
57
+ `"00000000-0047-7000-8001-1b71a1787577"`
58
+
59
+ **Result:**
60
+
61
+ ```js
62
+ {
63
+ "00000000-0047-7000-8001-1b71a1787577": {
64
+ "id": "00000000-0047-7000-8001-1b71a1787577",
65
+ "meta": {
66
+ "createdAt": 0,
67
+ "updatedAt": 0
68
+ },
69
+ "workerId": "00000000-0011-7000-8000-413b6b423f41",
70
+ "instanceId": "test",
71
+ "image": "ghcr.io/org/worker:v1",
72
+ "params": {}
73
+ }
74
+ }
75
+ ```
76
+
77
+ ### <a id="trace-5"></a> 5. 🔒 locked, released at [15](#trace-15)
78
+
79
+ **Keys:**
80
+
81
+ `"worker-image:test:ghcr.io/org/otherworker"`
82
+
83
+ ### <a id="trace-6"></a> 6. 📖 getAllItems
84
+
85
+ **Collection:** `workers:test`
86
+
87
+ **Result:**
88
+
89
+ ```js
90
+ {
91
+ "id": "00000000-0011-7000-8000-413b6b423f41",
92
+ "meta": {
93
+ "createdAt": 0,
94
+ "updatedAt": 0
95
+ },
96
+ "status": "starting",
97
+ "failedStartAttempts": 5,
98
+ "identity": "ghcr.io/org/worker",
99
+ "image": "ghcr.io/org/worker:v1",
100
+ "serviceAccountId": "00000000-0035-7000-8000-d15f8f666365",
101
+ "apiKeyId": "00000000-0023-7000-8000-8b4d7d545153"
102
+ }
103
+ ```
104
+
105
+ ### <a id="trace-7"></a> 7. â„šī¸ info
106
+
107
+ `creating new worker for image "ghcr.io/org/otherworker:v1" with identity "ghcr.io/org/otherworker" in project "test"`
108
+
109
+ **Data:**
110
+
111
+ ```js
112
+ {
113
+ "service": "WorkerService",
114
+ "projectId": "test",
115
+ "image": "ghcr.io/org/otherworker:v1",
116
+ "identity": "ghcr.io/org/otherworker"
117
+ }
118
+ ```
119
+
120
+ ### <a id="trace-8"></a> 8. â„šī¸ info
121
+
122
+ `creating service account "00000000-0059-7000-8001-6183b38a8789" for worker identity "ghcr.io/org/otherworker" in project "test"`
123
+
124
+ **Data:**
125
+
126
+ ```js
127
+ {
128
+ "service": "WorkerService",
129
+ "projectId": "test",
130
+ "serviceAccountId": "00000000-0059-7000-8001-6183b38a8789",
131
+ "identity": "ghcr.io/org/otherworker"
132
+ }
133
+ ```
134
+
135
+ ### <a id="trace-9"></a> 9. 💾 putItem
136
+
137
+ **Collection:** `service-accounts:test`
138
+
139
+ **Batch ID:** `2`, written at [13](#trace-13)
140
+
141
+ **Key:** `"00000000-0059-7000-8001-6183b38a8789"`
142
+
143
+ **Value:**
144
+
145
+ ```js
146
+ {
147
+ "id": "00000000-0059-7000-8001-6183b38a8789",
148
+ "meta": {}
149
+ }
150
+ ```
151
+
152
+ ### <a id="trace-10"></a> 10. 💾 putItem
153
+
154
+ **Collection:** `api-keys:test`
155
+
156
+ **Batch ID:** `2`, written at [13](#trace-13)
157
+
158
+ **Key:** `"00000000-006b-7000-8001-ab95c59c999b"`
159
+
160
+ **Value:**
161
+
162
+ ```js
163
+ {
164
+ "id": "00000000-006b-7000-8001-ab95c59c999b",
165
+ "meta": {},
166
+ "token": "9d9fa7a0a2a7aaa8ada6d5a7d7aeabadb5aeb0b5b8b6bbb4e3b5e5bcb9bbc3bc",
167
+ "scopes": [
168
+ {
169
+ "type": "service-account",
170
+ "actions": [
171
+ "full"
172
+ ],
173
+ "serviceAccountIds": [
174
+ "00000000-0059-7000-8001-6183b38a8789"
175
+ ]
176
+ }
177
+ ]
178
+ }
179
+ ```
180
+
181
+ ### <a id="trace-11"></a> 11. â„šī¸ info
182
+
183
+ `creating worker "00000000-009d-7000-8002-71c7f7cecbcd" for image "ghcr.io/org/otherworker:v1" in project "test"`
184
+
185
+ **Data:**
186
+
187
+ ```js
188
+ {
189
+ "service": "WorkerService",
190
+ "projectId": "test",
191
+ "workerId": "00000000-009d-7000-8002-71c7f7cecbcd",
192
+ "image": "ghcr.io/org/otherworker:v1",
193
+ "identity": "ghcr.io/org/otherworker",
194
+ "serviceAccountId": "00000000-0059-7000-8001-6183b38a8789"
195
+ }
196
+ ```
197
+
198
+ ### <a id="trace-12"></a> 12. 💾 putItem
199
+
200
+ **Collection:** `workers:test`
201
+
202
+ **Batch ID:** `2`, written at [13](#trace-13)
203
+
204
+ **Key:** `"00000000-009d-7000-8002-71c7f7cecbcd"`
205
+
206
+ **Value:**
207
+
208
+ ```js
209
+ {
210
+ "id": "00000000-009d-7000-8002-71c7f7cecbcd",
211
+ "meta": {},
212
+ "status": "starting",
213
+ "failedStartAttempts": 5,
214
+ "identity": "ghcr.io/org/otherworker",
215
+ "image": "ghcr.io/org/otherworker:v1",
216
+ "serviceAccountId": "00000000-0059-7000-8001-6183b38a8789",
217
+ "apiKeyId": "00000000-006b-7000-8001-ab95c59c999b"
218
+ }
219
+ ```
220
+
221
+ ### <a id="trace-13"></a> 13. 💾 write [9](#trace-9), [10](#trace-10), [12](#trace-12)
222
+
223
+ ### <a id="trace-14"></a> 14. ✅ workerManager.startWorker
224
+
225
+ **Args:**
226
+
227
+ `"test"`
228
+
229
+ `"00000000-009d-7000-8002-71c7f7cecbcd"`
230
+
231
+ ### <a id="trace-15"></a> 15. 🔓 released, locked at [5](#trace-5)
232
+
233
+ **Keys:**
234
+
235
+ `"worker-image:test:ghcr.io/org/otherworker"`
236
+
237
+ ### <a id="trace-16"></a> 16. â„šī¸ info
238
+
239
+ `updating worker registration "00000000-0047-7000-8001-1b71a1787577" for unit worker "worker" in project "test" (worker changed from "00000000-0011-7000-8000-413b6b423f41" to "00000000-009d-7000-8002-71c7f7cecbcd")`
240
+
241
+ **Data:**
242
+
243
+ ```js
244
+ {
245
+ "service": "WorkerService",
246
+ "projectId": "test",
247
+ "registrationId": "00000000-0047-7000-8001-1b71a1787577",
248
+ "unitWorkerName": "worker",
249
+ "oldWorkerId": "00000000-0011-7000-8000-413b6b423f41",
250
+ "newWorkerId": "00000000-009d-7000-8002-71c7f7cecbcd",
251
+ "oldImage": "ghcr.io/org/worker:v1",
252
+ "newImage": "ghcr.io/org/otherworker:v1"
253
+ }
254
+ ```
255
+
256
+ ### <a id="trace-17"></a> 17. 💾 putItem
257
+
258
+ **Collection:** `worker-registrations:test`
259
+
260
+ **Batch ID:** `1`, written at [33](#trace-33)
261
+
262
+ **Key:** `"00000000-0047-7000-8001-1b71a1787577"`
263
+
264
+ **Value:**
265
+
266
+ ```js
267
+ {
268
+ "id": "00000000-0047-7000-8001-1b71a1787577",
269
+ "meta": {
270
+ "createdAt": 0,
271
+ "updatedAt": 0
272
+ },
273
+ "image": "ghcr.io/org/otherworker:v1",
274
+ "params": {},
275
+ "instanceId": "test",
276
+ "workerId": "00000000-009d-7000-8002-71c7f7cecbcd"
277
+ }
278
+ ```
279
+
280
+ ### <a id="trace-18"></a> 18. 💾 put
281
+
282
+ **Collection:** `worker-registration-index:test:00000000-009d-7000-8002-71c7f7cecbcd`
283
+
284
+ **Key:** `"00000000-0047-7000-8001-1b71a1787577"`
285
+
286
+ **Value:**
287
+
288
+ `""`
289
+
290
+ ### <a id="trace-19"></a> 19. đŸ—‘ī¸ delete
291
+
292
+ **Collection:** `worker-registration-index:test:00000000-0011-7000-8000-413b6b423f41`
293
+
294
+ **Key:** `"00000000-0047-7000-8001-1b71a1787577"`
295
+
296
+ ### <a id="trace-20"></a> 20. 🔒 locked, released at [32](#trace-32)
297
+
298
+ **Keys:**
299
+
300
+ `"worker:00000000-0011-7000-8000-413b6b423f41"`
301
+
302
+ ### <a id="trace-21"></a> 21. 📸 snapshot, used by [22](#trace-22)
303
+
304
+ ### <a id="trace-22"></a> 22. 📖 getAll
305
+
306
+ **Collection:** `worker-registration-index:test:00000000-0011-7000-8000-413b6b423f41`
307
+
308
+ **Result:** `[]`
309
+
310
+ **Snapshot ID:** `1`, captured at [21](#trace-21)
311
+
312
+ ### <a id="trace-23"></a> 23. 📖 get
313
+
314
+ **Collection:** `workers:test`
315
+
316
+ **Keys:**
317
+
318
+ `"00000000-0011-7000-8000-413b6b423f41"`
319
+
320
+ **Result:**
321
+
322
+ ```js
323
+ {
324
+ "id": "00000000-0011-7000-8000-413b6b423f41",
325
+ "meta": {
326
+ "createdAt": 0,
327
+ "updatedAt": 0
328
+ },
329
+ "status": "starting",
330
+ "failedStartAttempts": 5,
331
+ "identity": "ghcr.io/org/worker",
332
+ "image": "ghcr.io/org/worker:v1",
333
+ "serviceAccountId": "00000000-0035-7000-8000-d15f8f666365",
334
+ "apiKeyId": "00000000-0023-7000-8000-8b4d7d545153"
335
+ }
336
+ ```
337
+
338
+ ### <a id="trace-24"></a> 24. â„šī¸ info
339
+
340
+ `deleting worker "00000000-0011-7000-8000-413b6b423f41" with image "ghcr.io/org/worker:v1" in project "test" (no registrations remaining)`
341
+
342
+ **Data:**
343
+
344
+ ```js
345
+ {
346
+ "service": "WorkerService",
347
+ "projectId": "test",
348
+ "workerId": "00000000-0011-7000-8000-413b6b423f41",
349
+ "image": "ghcr.io/org/worker:v1",
350
+ "identity": "ghcr.io/org/worker"
351
+ }
352
+ ```
353
+
354
+ ### <a id="trace-25"></a> 25. đŸ—‘ī¸ delete
355
+
356
+ **Collection:** `workers:test`
357
+
358
+ **Batch ID:** `3`, written at [30](#trace-30)
359
+
360
+ **Key:** `"00000000-0011-7000-8000-413b6b423f41"`
361
+
362
+ ### <a id="trace-26"></a> 26. đŸ—‘ī¸ delete
363
+
364
+ **Collection:** `api-keys:test`
365
+
366
+ **Batch ID:** `3`, written at [30](#trace-30)
367
+
368
+ **Key:** `"00000000-0023-7000-8000-8b4d7d545153"`
369
+
370
+ ### <a id="trace-27"></a> 27. 📖 getAllItems
371
+
372
+ **Collection:** `workers:test`
373
+
374
+ **Result:**
375
+
376
+ ```js
377
+ {
378
+ "id": "00000000-0011-7000-8000-413b6b423f41",
379
+ "meta": {
380
+ "createdAt": 0,
381
+ "updatedAt": 0
382
+ },
383
+ "status": "starting",
384
+ "failedStartAttempts": 5,
385
+ "identity": "ghcr.io/org/worker",
386
+ "image": "ghcr.io/org/worker:v1",
387
+ "serviceAccountId": "00000000-0035-7000-8000-d15f8f666365",
388
+ "apiKeyId": "00000000-0023-7000-8000-8b4d7d545153"
389
+ }
390
+ ```
391
+
392
+ ```js
393
+ {
394
+ "id": "00000000-009d-7000-8002-71c7f7cecbcd",
395
+ "meta": {
396
+ "createdAt": 0,
397
+ "updatedAt": 0
398
+ },
399
+ "status": "starting",
400
+ "failedStartAttempts": 5,
401
+ "identity": "ghcr.io/org/otherworker",
402
+ "image": "ghcr.io/org/otherworker:v1",
403
+ "serviceAccountId": "00000000-0059-7000-8001-6183b38a8789",
404
+ "apiKeyId": "00000000-006b-7000-8001-ab95c59c999b"
405
+ }
406
+ ```
407
+
408
+ ### <a id="trace-28"></a> 28. â„šī¸ info
409
+
410
+ `deleting service account "00000000-0035-7000-8000-d15f8f666365" for worker "00000000-0011-7000-8000-413b6b423f41" in project "test" (no sibling workers remaining)`
411
+
412
+ **Data:**
413
+
414
+ ```js
415
+ {
416
+ "service": "WorkerService",
417
+ "projectId": "test",
418
+ "workerId": "00000000-0011-7000-8000-413b6b423f41",
419
+ "serviceAccountId": "00000000-0035-7000-8000-d15f8f666365",
420
+ "identity": "ghcr.io/org/worker"
421
+ }
422
+ ```
423
+
424
+ ### <a id="trace-29"></a> 29. đŸ—‘ī¸ delete
425
+
426
+ **Collection:** `service-accounts:test`
427
+
428
+ **Batch ID:** `3`, written at [30](#trace-30)
429
+
430
+ **Key:** `"00000000-0035-7000-8000-d15f8f666365"`
431
+
432
+ ### <a id="trace-30"></a> 30. 💾 write [25](#trace-25), [26](#trace-26), [29](#trace-29)
433
+
434
+ ### <a id="trace-31"></a> 31. ✅ workerManager.stopWorker
435
+
436
+ **Args:**
437
+
438
+ `"test"`
439
+
440
+ `"00000000-0011-7000-8000-413b6b423f41"`
441
+
442
+ ### <a id="trace-32"></a> 32. 🔓 released, locked at [20](#trace-20)
443
+
444
+ **Keys:**
445
+
446
+ `"worker:00000000-0011-7000-8000-413b6b423f41"`
447
+
448
+ ### <a id="trace-33"></a> 33. 💾 write [17](#trace-17)
449
+
450
+ ### <a id="trace-34"></a> 34. 🔓 released, locked at [3](#trace-3)
451
+
452
+ **Keys:**
453
+
454
+ `"worker-image:test:ghcr.io/org/otherworker:v1"`