@aopslabs/aops 0.3.6 → 0.3.7

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.
@@ -122,6 +122,6 @@
122
122
  },
123
123
  "schemaVersion": 1,
124
124
  "standard": "aops-community-core-v1",
125
- "version": "0.3.6",
126
- "versionId": "community-core-0.3.6"
125
+ "version": "0.3.7",
126
+ "versionId": "community-core-0.3.7"
127
127
  }
@@ -10,8 +10,8 @@
10
10
  "name": "aops",
11
11
  "optional": false,
12
12
  "packageSha256": "8b06775d96e37f8aef535673b8b855c11f29042f3c70ec4f273b6df04dbe824a",
13
- "version": "0.3.6",
14
- "versionId": "community-core-0.3.6"
13
+ "version": "0.3.7",
14
+ "versionId": "community-core-0.3.7"
15
15
  },
16
16
  "gateway": {
17
17
  "byteLength": 621,
@@ -22,7 +22,7 @@
22
22
  "kind": "aops-community-agent-assets-inventory-v1",
23
23
  "schemaVersion": 1,
24
24
  "source": {
25
- "commit": "ba8f77126a1caf366e94b8114aded41b5032c087",
25
+ "commit": "fb272018e8b53bbf30ae468006649ec9c8722343",
26
26
  "repository": "git+https://github.com/eeemzs/aops-platform",
27
27
  "root": "apps/aops-cli/assets/agent-assets"
28
28
  }
@@ -11,8 +11,8 @@
11
11
  "name": "aops",
12
12
  "optional": false,
13
13
  "packageSha256": "8b06775d96e37f8aef535673b8b855c11f29042f3c70ec4f273b6df04dbe824a",
14
- "version": "0.3.6",
15
- "versionId": "community-core-0.3.6"
14
+ "version": "0.3.7",
15
+ "versionId": "community-core-0.3.7"
16
16
  },
17
17
  "files": [
18
18
  {
@@ -128,7 +128,7 @@
128
128
  {
129
129
  "byteLength": 4148,
130
130
  "ref": "agent-assets/core/8b06775d96e37f8aef535673b8b855c11f29042f3c70ec4f273b6df04dbe824a/manifest.json",
131
- "sha256": "b2999dcbfec427a6a99f4773fea7375b5dbd3fe359ef71346777bfd0858efeaf"
131
+ "sha256": "3f39440c45bb196740c72c85e76719a0a7aa2cafad8403f7a5c974cc5444c5c8"
132
132
  },
133
133
  {
134
134
  "byteLength": 621,
@@ -138,7 +138,7 @@
138
138
  {
139
139
  "byteLength": 924,
140
140
  "ref": "agent-assets/inventory.json",
141
- "sha256": "efa8dbc8f1cf45abb4c3dc67c4459be046d08dfe493e69e490f4295a07560482"
141
+ "sha256": "bef692df757af6386919946630232cca768b72644263df848b0c3de7b0db9a2c"
142
142
  },
143
143
  {
144
144
  "byteLength": 281,
@@ -154,7 +154,7 @@
154
154
  },
155
155
  "inventory": {
156
156
  "ref": "agent-assets/inventory.json",
157
- "sha256": "efa8dbc8f1cf45abb4c3dc67c4459be046d08dfe493e69e490f4295a07560482"
157
+ "sha256": "bef692df757af6386919946630232cca768b72644263df848b0c3de7b0db9a2c"
158
158
  },
159
159
  "kind": "aops-community-agent-assets-release-v1",
160
160
  "projection": {
@@ -163,7 +163,7 @@
163
163
  },
164
164
  "root": "agent-assets",
165
165
  "schemaVersion": 1,
166
- "setSha256": "248a0299133536005b3620112a19297df959dc71cfbd871f2d5d172ad39d94a9"
166
+ "setSha256": "b05c68e28d40d65f8445242faca687e24d48f7b219621bd42b28a4c3d693dbdd"
167
167
  },
168
168
  "evidence": {
169
169
  "signature": {
@@ -171,10 +171,10 @@
171
171
  }
172
172
  },
173
173
  "kind": "aops-community-agent-assets-bundle-v1",
174
- "releaseVersion": "0.3.6",
174
+ "releaseVersion": "0.3.7",
175
175
  "schemaVersion": 1,
176
176
  "source": {
177
- "commit": "ba8f77126a1caf366e94b8114aded41b5032c087",
177
+ "commit": "fb272018e8b53bbf30ae468006649ec9c8722343",
178
178
  "repository": "git+https://github.com/eeemzs/aops-platform",
179
179
  "root": "apps/aops-cli/assets/agent-assets"
180
180
  }
@@ -4,13 +4,13 @@
4
4
  "x509CertificateChain": {
5
5
  "certificates": [
6
6
  {
7
- "rawBytes": "MIIHdTCCBvqgAwIBAgIUVlUIYuSP2W/JuMkCWm8MSyW6iT0wCgYIKoZIzj0EAwMwNzEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MR4wHAYDVQQDExVzaWdzdG9yZS1pbnRlcm1lZGlhdGUwHhcNMjYwODA4MDI1MTU5WhcNMjYwODA4MDMwMTU5WjAAMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEiIyFh3ZHCi4350IIIjCGG/tIfm97Px3pG4+4xUWaa9ZE79NwNfK+VmFMredzRD0oXdcY3C8dZnLXGRgfZoIZyKOCBhkwggYVMA4GA1UdDwEB/wQEAwIHgDATBgNVHSUEDDAKBggrBgEFBQcDAzAdBgNVHQ4EFgQU5QCfL78M5ktkOw86UbNePpF5+XIwHwYDVR0jBBgwFoAU39Ppz1YkEZb5qNjpKFWixi4YZD8wdAYDVR0RAQH/BGowaIZmaHR0cHM6Ly9naXRodWIuY29tL2VlZW16cy9hb3BzLXBsYXRmb3JtLy5naXRodWIvd29ya2Zsb3dzL3NpZ24tcHVibGljLWFnZW50LWFzc2V0cy55bWxAcmVmcy9oZWFkcy9tYWluMDkGCisGAQQBg78wAQEEK2h0dHBzOi8vdG9rZW4uYWN0aW9ucy5naXRodWJ1c2VyY29udGVudC5jb20wHwYKKwYBBAGDvzABAgQRd29ya2Zsb3dfZGlzcGF0Y2gwNgYKKwYBBAGDvzABAwQoYmE4Zjc3MTI2YTFjYWYzNjZlOTRiODExNGFkZWQ0MWI1MDMyYzA4NzAxBgorBgEEAYO/MAEEBCNTaWduIGV4YWN0IHB1YmxpYyBBT1BTIGFnZW50IGFzc2V0czAiBgorBgEEAYO/MAEFBBRlZWVtenMvYW9wcy1wbGF0Zm9ybTAdBgorBgEEAYO/MAEGBA9yZWZzL2hlYWRzL21haW4wOwYKKwYBBAGDvzABCAQtDCtodHRwczovL3Rva2VuLmFjdGlvbnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tMHYGCisGAQQBg78wAQkEaAxmaHR0cHM6Ly9naXRodWIuY29tL2VlZW16cy9hb3BzLXBsYXRmb3JtLy5naXRodWIvd29ya2Zsb3dzL3NpZ24tcHVibGljLWFnZW50LWFzc2V0cy55bWxAcmVmcy9oZWFkcy9tYWluMDgGCisGAQQBg78wAQoEKgwoYmE4Zjc3MTI2YTFjYWYzNjZlOTRiODExNGFkZWQ0MWI1MDMyYzA4NzAdBgorBgEEAYO/MAELBA8MDWdpdGh1Yi1ob3N0ZWQwNwYKKwYBBAGDvzABDAQpDCdodHRwczovL2dpdGh1Yi5jb20vZWVlbXpzL2FvcHMtcGxhdGZvcm0wOAYKKwYBBAGDvzABDQQqDChiYThmNzcxMjZhMWNhZjM2NmU5NGI4MTE0YWRlZDQxYjUwMzJjMDg3MB8GCisGAQQBg78wAQ4EEQwPcmVmcy9oZWFkcy9tYWluMBoGCisGAQQBg78wAQ8EDAwKMTMxNjI1NTAyNjApBgorBgEEAYO/MAEQBBsMGWh0dHBzOi8vZ2l0aHViLmNvbS9lZWVtenMwGQYKKwYBBAGDvzABEQQLDAkxMDkzMTA3NzQwdgYKKwYBBAGDvzABEgRoDGZodHRwczovL2dpdGh1Yi5jb20vZWVlbXpzL2FvcHMtcGxhdGZvcm0vLmdpdGh1Yi93b3JrZmxvd3Mvc2lnbi1wdWJsaWMtYWdlbnQtYXNzZXRzLnltbEByZWZzL2hlYWRzL21haW4wOAYKKwYBBAGDvzABEwQqDChiYThmNzcxMjZhMWNhZjM2NmU5NGI4MTE0YWRlZDQxYjUwMzJjMDg3MCEGCisGAQQBg78wARQEEwwRd29ya2Zsb3dfZGlzcGF0Y2gwWwYKKwYBBAGDvzABFQRNDEtodHRwczovL2dpdGh1Yi5jb20vZWVlbXpzL2FvcHMtcGxhdGZvcm0vYWN0aW9ucy9ydW5zLzMxMjM1ODk4OTAyL2F0dGVtcHRzLzEwFwYKKwYBBAGDvzABFgQJDAdwcml2YXRlMFIGCisGAQQBg78wARgERAxCcmVwbzplZWVtenNAMTA5MzEwNzc0L2FvcHMtcGxhdGZvcm1AMTMxNjI1NTAyNjpyZWY6cmVmcy9oZWFkcy9tYWluMIGKBgorBgEEAdZ5AgQCBHwEegB4AHYA3T0wasbHETJjGR4cmWc3AqJKXrjePK3/h4pygC8p7o4AAAGf30jUAgAABAMARzBFAiB4GKNoezG+lNFbwGEVtFwDaulLzJqvP4kK8+TJJD50SQIhAIDX923UsmRsRoY3lM/dkg1IsjWeI0jdmmuTVwb5O1N3MAoGCCqGSM49BAMDA2kAMGYCMQCRQdIu2ap12QlrnAjfP4eLvLnm0leL/yTmQ4h9M4u77dUlAntq/bErOo20djJN6zECMQCFFV3eN/kkZOyqEUhaY5UJIe3tErEIbmzFg6NVgL4ybgKoW6X/vbc9dmtfVlJ/j1k="
7
+ "rawBytes": "MIIHdDCCBvmgAwIBAgIURFSiutHBuBl8KYIie5i/XY1+OAMwCgYIKoZIzj0EAwMwNzEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MR4wHAYDVQQDExVzaWdzdG9yZS1pbnRlcm1lZGlhdGUwHhcNMjYwODA4MDg1NjM2WhcNMjYwODA4MDkwNjM2WjAAMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEOYemT+yTr96lLQ6C8xIylXJWxtLYiu2JSczZ9hO/OvWZm1A69YGuy7jaTJ6vs4wNP8piPodRTr+DS6AIlSFfSaOCBhgwggYUMA4GA1UdDwEB/wQEAwIHgDATBgNVHSUEDDAKBggrBgEFBQcDAzAdBgNVHQ4EFgQUup67s/K2gnvT+F2LbFvrHDQGkyEwHwYDVR0jBBgwFoAU39Ppz1YkEZb5qNjpKFWixi4YZD8wdAYDVR0RAQH/BGowaIZmaHR0cHM6Ly9naXRodWIuY29tL2VlZW16cy9hb3BzLXBsYXRmb3JtLy5naXRodWIvd29ya2Zsb3dzL3NpZ24tcHVibGljLWFnZW50LWFzc2V0cy55bWxAcmVmcy9oZWFkcy9tYWluMDkGCisGAQQBg78wAQEEK2h0dHBzOi8vdG9rZW4uYWN0aW9ucy5naXRodWJ1c2VyY29udGVudC5jb20wHwYKKwYBBAGDvzABAgQRd29ya2Zsb3dfZGlzcGF0Y2gwNgYKKwYBBAGDvzABAwQoZmIyNzIwMThlOGI1M2JiZjMwYWU0NjgwMDY2NDllYzljODcyMjM0MzAxBgorBgEEAYO/MAEEBCNTaWduIGV4YWN0IHB1YmxpYyBBT1BTIGFnZW50IGFzc2V0czAiBgorBgEEAYO/MAEFBBRlZWVtenMvYW9wcy1wbGF0Zm9ybTAdBgorBgEEAYO/MAEGBA9yZWZzL2hlYWRzL21haW4wOwYKKwYBBAGDvzABCAQtDCtodHRwczovL3Rva2VuLmFjdGlvbnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tMHYGCisGAQQBg78wAQkEaAxmaHR0cHM6Ly9naXRodWIuY29tL2VlZW16cy9hb3BzLXBsYXRmb3JtLy5naXRodWIvd29ya2Zsb3dzL3NpZ24tcHVibGljLWFnZW50LWFzc2V0cy55bWxAcmVmcy9oZWFkcy9tYWluMDgGCisGAQQBg78wAQoEKgwoZmIyNzIwMThlOGI1M2JiZjMwYWU0NjgwMDY2NDllYzljODcyMjM0MzAdBgorBgEEAYO/MAELBA8MDWdpdGh1Yi1ob3N0ZWQwNwYKKwYBBAGDvzABDAQpDCdodHRwczovL2dpdGh1Yi5jb20vZWVlbXpzL2FvcHMtcGxhdGZvcm0wOAYKKwYBBAGDvzABDQQqDChmYjI3MjAxOGU4YjUzYmJmMzBhZTQ2ODAwNjY0OWVjOWM4NzIyMzQzMB8GCisGAQQBg78wAQ4EEQwPcmVmcy9oZWFkcy9tYWluMBoGCisGAQQBg78wAQ8EDAwKMTMxNjI1NTAyNjApBgorBgEEAYO/MAEQBBsMGWh0dHBzOi8vZ2l0aHViLmNvbS9lZWVtenMwGQYKKwYBBAGDvzABEQQLDAkxMDkzMTA3NzQwdgYKKwYBBAGDvzABEgRoDGZodHRwczovL2dpdGh1Yi5jb20vZWVlbXpzL2FvcHMtcGxhdGZvcm0vLmdpdGh1Yi93b3JrZmxvd3Mvc2lnbi1wdWJsaWMtYWdlbnQtYXNzZXRzLnltbEByZWZzL2hlYWRzL21haW4wOAYKKwYBBAGDvzABEwQqDChmYjI3MjAxOGU4YjUzYmJmMzBhZTQ2ODAwNjY0OWVjOWM4NzIyMzQzMCEGCisGAQQBg78wARQEEwwRd29ya2Zsb3dfZGlzcGF0Y2gwWwYKKwYBBAGDvzABFQRNDEtodHRwczovL2dpdGh1Yi5jb20vZWVlbXpzL2FvcHMtcGxhdGZvcm0vYWN0aW9ucy9ydW5zLzMxMjQ5NDUwMzk1L2F0dGVtcHRzLzEwFwYKKwYBBAGDvzABFgQJDAdwcml2YXRlMFIGCisGAQQBg78wARgERAxCcmVwbzplZWVtenNAMTA5MzEwNzc0L2FvcHMtcGxhdGZvcm1AMTMxNjI1NTAyNjpyZWY6cmVmcy9oZWFkcy9tYWluMIGJBgorBgEEAdZ5AgQCBHsEeQB3AHUA3T0wasbHETJjGR4cmWc3AqJKXrjePK3/h4pygC8p7o4AAAGf4JajQwAABAMARjBEAiBWEzf5ARwA0Cxw4f14JEeeO31pLbMvLKXjR4haqPQT0wIgDGAFWnEA78EZ59DGx88y2DlNZeHbEcVUkxDG8m0irSMwCgYIKoZIzj0EAwMDaQAwZgIxAKkSiyMw9ZIuJTSaTe7G5mmlzX/Hebloz8GZ77PMw8KlCTO0YZ0geA9Cs4CIcDAeJgIxAOCldKAiQAEaTFytI7MVpk+VqVarWOakemZL85UsySEHN6sp5zBHjojBkCwsBiZNdg=="
8
8
  }
9
9
  ]
10
10
  },
11
11
  "tlogEntries": [
12
12
  {
13
- "logIndex": "2376949528",
13
+ "logIndex": "2381785305",
14
14
  "logId": {
15
15
  "keyId": "wNI9atQGlz+VWfO6LRygH4QUfY/8W4RFwiT5i5WRgB0="
16
16
  },
@@ -18,38 +18,37 @@
18
18
  "kind": "hashedrekord",
19
19
  "version": "0.0.1"
20
20
  },
21
- "integratedTime": "1786157520",
21
+ "integratedTime": "1786179396",
22
22
  "inclusionPromise": {
23
- "signedEntryTimestamp": "MEUCIQC9U29JoIqr1M2nQ4nNSZoClCCSFLqF9wWg4MBLkEg7owIgAyRaNAEkWLtx+E6uXGqilo3Ul5mRHtYv2GmNZSMvV14="
23
+ "signedEntryTimestamp": "MEYCIQDgEFBx7X67sTmgWX37G+gYDauZLRyGvavzjJD+8zHm4wIhAO3zzDJGOqt2ETMzFbIbtqvUY8bGp/QjwCHiPZZMRy8q"
24
24
  },
25
25
  "inclusionProof": {
26
- "logIndex": "2255045266",
27
- "rootHash": "oFam3fmrJP1DjFWhQbotdYAS9XnWOoQ5/cY1bab9fc4=",
28
- "treeSize": "2255045369",
26
+ "logIndex": "2259881043",
27
+ "rootHash": "i5x0i3oA9Cc8+qWbZCWh/UNtJTAJKgdWO/09Cd2/nc0=",
28
+ "treeSize": "2259881049",
29
29
  "hashes": [
30
- "CVnz2hqS/Aa9Pq8DHmBdpwoYresqxdhETCixlDyrAIA=",
31
- "Vrgci9Q39RzxIVDX6X7MlEpQvrjhMaqRhcFBP4o4uQk=",
32
- "3rm97yM2fqPXZ8y30B1loG3qy0yqNS8TejxsEwu9nwk=",
33
- "Y2Pz4WJLAsTpoQW9fSgeLIlgHUr7Oma1i7A/1QFDrtU=",
34
- "duj6hbpwrH28DX/Y2XGe3aA2obF38gNNowe1nR7s7LE=",
35
- "rYHKuDfRlNb6wyyJ2CjjvdgeVG12uIWBG8rKo9LjNA0=",
36
- "CfRl1Gu+dFsNefxwc0h338h1AP4MEuqPwREsEdv6cGs=",
37
- "L/cbM4yl8madrZ/uijOSFBcf+Cr62ZV4lGs8mf90o4w=",
38
- "Yguj98woPPANDo2b+IuG73ESuC7Y7rTEOzzi0AelLNw=",
39
- "A6tUiFepOowLPmwleRh3kcTNNfXr1zIAkaGmGARyOXw=",
40
- "CColJzyJGGn5yFO3/f8nWUNyuXjsgbINN5f+IHi85Pc=",
41
- "roPNp1XIrM3BZNtHs22SJfdmLk90jRhMwU+F9MZYpx8=",
42
- "gbADHvO2ltWqdjLLjisq/qYxz8bDOrHbVjhLgXBUKz4=",
43
- "osTOU+V3fJqcGn54gVJWTE1cjbm/CftsXiPh7/hMot4=",
30
+ "gzDDVqYn69hELEgkj2TQbcFzPPJyt4odLr1VogUfFRg=",
31
+ "UYVpJW+itlFRAtvwmlrcdRgbrFox5WHtQybZdWwZoOA=",
32
+ "UAc78CNvsg4PaFtMUa2ht8q/GLck6MJLAlBdwf4LSks=",
33
+ "Ch0QMrh7ML7Oe68rC7Uzll7+XwxjGibUWHyW1LgUyU4=",
34
+ "Vd4cgCoi0Cij+PwhAe4gfYqSYFeCNVwzeMh4VyGsKII=",
35
+ "FJYDNrunBI7NhWjuoeAyuhyWuL0O8y00ohkj8UQLXv4=",
36
+ "+8cqhVvng/TpdcXU+ytoPnztGE38PWjgBuWS0wnDHmY=",
37
+ "VUvwixnxcBVlVMM/ALGtU+TPw+sbkIEYaoj/E8v5HxI=",
38
+ "AWzOkSqshr+w542KQEG6jeZCwNFq0F2/V2cOEj3HuiA=",
39
+ "v6kiJGCAYpczIp8GUEZvXkCwq9Fd0lpQKHlT7a7djMk=",
40
+ "U+LtgkBdsuQt+HE7tellLcQZWEEuHW5xIjTXtncKK9U=",
41
+ "oscd46S5yLZ5p+CEdgOaoH95jlthc/ksmiOB0SriEV4=",
42
+ "0DFk6SHFuaBLuUmb7NI8UQ10oiIe7goJ03SxgMzmXho=",
44
43
  "ILMoQSbIb83ZRi3LtJ9th99rqP+Za3UA534sa6mEYKg=",
45
44
  "i5Zl8FZrDwxCDv2e2DNO2M8JvpR/c11ElvCZS53/teA=",
46
45
  "xH/DCseLHr9eKoYT8qsORZK7zVdEGYWHuVtsVrD95wY="
47
46
  ],
48
47
  "checkpoint": {
49
- "envelope": "rekor.sigstore.dev - 1193050959916656506\n2255045369\noFam3fmrJP1DjFWhQbotdYAS9XnWOoQ5/cY1bab9fc4=\n\n— rekor.sigstore.dev wNI9ajBFAiA3jwt7bOmZyxq6e/9gLTVeziFRqb/K1bK8aEUjyP6KFQIhAM7UjPK6UJbyPACs0d9Xc1vSmoLEpckVXq+6U4RSnlzO\n"
48
+ "envelope": "rekor.sigstore.dev - 1193050959916656506\n2259881049\ni5x0i3oA9Cc8+qWbZCWh/UNtJTAJKgdWO/09Cd2/nc0=\n\n— rekor.sigstore.dev wNI9ajBGAiEAluGVg6PCPgZK5AQqNU3Xs2hY9Gt1zvgLQvZgvctiod8CIQCSz1y5rMBDjtPgj/xQSh4zMWIOpUMJelBtgBhoaBQzrQ==\n"
50
49
  }
51
50
  },
52
- "canonicalizedBody": "eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiaGFzaGVkcmVrb3JkIiwic3BlYyI6eyJkYXRhIjp7Imhhc2giOnsiYWxnb3JpdGhtIjoic2hhMjU2IiwidmFsdWUiOiI3MTI1ZTQ1ZmNhMWExZDk2MTdmNDg1NmRlOTc2MzU2MDhiNTM5YzdhNDJmMTFmNThhNDI5YjEwZGQ2OGVlOGM1In19LCJzaWduYXR1cmUiOnsiY29udGVudCI6Ik1FUUNJQlZEcDJaOWp3VlBTNVRmTndjbzJZMVdueGRrMVdWQkhEZmVBa3p0YTREOUFpQi83ejBNUUE0L3Q2ZUE3RVBMNTZOZExrNnhyem5IWGQxNjBudXNQWVhxQWc9PSIsInB1YmxpY0tleSI6eyJjb250ZW50IjoiTFMwdExTMUNSVWRKVGlCRFJWSlVTVVpKUTBGVVJTMHRMUzB0Q2sxSlNVaGtWRU5EUW5aeFowRjNTVUpCWjBsVlZteFZTVmwxVTFBeVZ5OUtkVTFyUTFkdE9FMVRlVmMyYVZRd2QwTm5XVWxMYjFwSmVtb3dSVUYzVFhjS1RucEZWazFDVFVkQk1WVkZRMmhOVFdNeWJHNWpNMUoyWTIxVmRWcEhWakpOVWpSM1NFRlpSRlpSVVVSRmVGWjZZVmRrZW1SSE9YbGFVekZ3WW01U2JBcGpiVEZzV2tkc2FHUkhWWGRJYUdOT1RXcFpkMDlFUVRSTlJFa3hUVlJWTlZkb1kwNU5hbGwzVDBSQk5FMUVUWGROVkZVMVYycEJRVTFHYTNkRmQxbElDa3R2V2tsNmFqQkRRVkZaU1V0dldrbDZhakJFUVZGalJGRm5RVVZwU1hsR2FETmFTRU5wTkRNMU1FbEpTV3BEUjBjdmRFbG1iVGszVUhnemNFYzBLelFLZUZWWFlXRTVXa1UzT1U1M1RtWkxLMVp0UmsxeVpXUjZVa1F3YjFoa1kxa3pRemhrV201TVdFZFNaMlphYjBsYWVVdFBRMEpvYTNkbloxbFdUVUUwUndwQk1WVmtSSGRGUWk5M1VVVkJkMGxJWjBSQlZFSm5UbFpJVTFWRlJFUkJTMEpuWjNKQ1owVkdRbEZqUkVGNlFXUkNaMDVXU0ZFMFJVWm5VVlUxVVVObUNrdzNPRTAxYTNSclQzYzRObFZpVG1WUWNFWTFLMWhKZDBoM1dVUldVakJxUWtKbmQwWnZRVlV6T1ZCd2VqRlphMFZhWWpWeFRtcHdTMFpYYVhocE5Ga0tXa1E0ZDJSQldVUldVakJTUVZGSUwwSkhiM2RoU1ZwdFlVaFNNR05JVFRaTWVUbHVZVmhTYjJSWFNYVlpNamwwVERKV2JGcFhNVFpqZVRsb1lqTkNlZ3BNV0VKeldWaFNiV0l6U25STWVUVnVZVmhTYjJSWFNYWmtNamw1WVRKYWMySXpaSHBNTTA1d1dqSTBkR05JVm1saVIyeHFURmRHYmxwWE5UQk1WMFo2Q21NeVZqQmplVFUxWWxkNFFXTnRWbTFqZVRsdldsZEdhMk41T1hSWlYyeDFUVVJyUjBOcGMwZEJVVkZDWnpjNGQwRlJSVVZMTW1nd1pFaENlazlwT0hZS1pFYzVjbHBYTkhWWlYwNHdZVmM1ZFdONU5XNWhXRkp2WkZkS01XTXlWbmxaTWpsMVpFZFdkV1JETldwaU1qQjNTSGRaUzB0M1dVSkNRVWRFZG5wQlFncEJaMUZTWkRJNWVXRXlXbk5pTTJSbVdrZHNlbU5IUmpCWk1tZDNUbWRaUzB0M1dVSkNRVWRFZG5wQlFrRjNVVzlaYlVVMFdtcGpNMDFVU1RKWlZFWnFDbGxYV1hwT2FscHNUMVJTYVU5RVJYaE9SMFpyV2xkUk1FMVhTVEZOUkUxNVdYcEJORTU2UVhoQ1oyOXlRbWRGUlVGWlR5OU5RVVZGUWtOT1ZHRlhaSFVLU1VkV05GbFhUakJKU0VJeFdXMTRjRmw1UWtKVU1VSlVTVWRHYmxwWE5UQkpSMFo2WXpKV01HTjZRV2xDWjI5eVFtZEZSVUZaVHk5TlFVVkdRa0pTYkFwYVYxWjBaVzVOZGxsWE9YZGplVEYzWWtkR01GcHRPWGxpVkVGa1FtZHZja0puUlVWQldVOHZUVUZGUjBKQk9YbGFWMXA2VERKb2JGbFhVbnBNTWpGb0NtRlhOSGRQZDFsTFMzZFpRa0pCUjBSMmVrRkNRMEZSZEVSRGRHOWtTRkozWTNwdmRrd3pVblpoTWxaMVRHMUdhbVJIYkhaaWJrMTFXakpzTUdGSVZta0taRmhPYkdOdFRuWmlibEpzWW01UmRWa3lPWFJOU0ZsSFEybHpSMEZSVVVKbk56aDNRVkZyUldGQmVHMWhTRkl3WTBoTk5reDVPVzVoV0ZKdlpGZEpkUXBaTWpsMFRESldiRnBYTVRaamVUbG9Zak5DZWt4WVFuTlpXRkp0WWpOS2RFeDVOVzVoV0ZKdlpGZEpkbVF5T1hsaE1scHpZak5rZWt3elRuQmFNalIwQ21OSVZtbGlSMnhxVEZkR2JscFhOVEJNVjBaNll6SldNR041TlRWaVYzaEJZMjFXYldONU9XOWFWMFpyWTNrNWRGbFhiSFZOUkdkSFEybHpSMEZSVVVJS1p6YzRkMEZSYjBWTFozZHZXVzFGTkZwcVl6Tk5WRWt5V1ZSR2FsbFhXWHBPYWxwc1QxUlNhVTlFUlhoT1IwWnJXbGRSTUUxWFNURk5SRTE1V1hwQk5BcE9la0ZrUW1kdmNrSm5SVVZCV1U4dlRVRkZURUpCT0UxRVYyUndaRWRvTVZscE1XOWlNMDR3V2xkUmQwNTNXVXRMZDFsQ1FrRkhSSFo2UVVKRVFWRndDa1JEWkc5a1NGSjNZM3B2ZGt3eVpIQmtSMmd4V1drMWFtSXlNSFphVjFac1lsaHdla3d5Um5aalNFMTBZMGQ0YUdSSFduWmpiVEIzVDBGWlMwdDNXVUlLUWtGSFJIWjZRVUpFVVZGeFJFTm9hVmxVYUcxT2VtTjRUV3BhYUUxWFRtaGFhazB5VG0xVk5VNUhTVFJOVkVVd1dWZFNiRnBFVVhoWmFsVjNUWHBLYWdwTlJHY3pUVUk0UjBOcGMwZEJVVkZDWnpjNGQwRlJORVZGVVhkUVkyMVdiV041T1c5YVYwWnJZM2s1ZEZsWGJIVk5RbTlIUTJselIwRlJVVUpuTnpoM0NrRlJPRVZFUVhkTFRWUk5lRTVxU1RGT1ZFRjVUbXBCY0VKbmIzSkNaMFZGUVZsUEwwMUJSVkZDUW5OTlIxZG9NR1JJUW5wUGFUaDJXakpzTUdGSVZta0tURzFPZG1KVE9XeGFWMVowWlc1TmQwZFJXVXRMZDFsQ1FrRkhSSFo2UVVKRlVWRk1SRUZyZUUxRWEzcE5WRUV6VG5wUmQyUm5XVXRMZDFsQ1FrRkhSQXAyZWtGQ1JXZFNiMFJIV205a1NGSjNZM3B2ZGt3eVpIQmtSMmd4V1drMWFtSXlNSFphVjFac1lsaHdla3d5Um5aalNFMTBZMGQ0YUdSSFduWmpiVEIyQ2t4dFpIQmtSMmd4V1drNU0ySXpTbkphYlhoMlpETk5kbU15Ykc1aWFURjNaRmRLYzJGWFRYUlpWMlJzWW01UmRGbFlUbnBhV0ZKNlRHNXNkR0pGUW5rS1dsZGFla3d5YUd4WlYxSjZUREl4YUdGWE5IZFBRVmxMUzNkWlFrSkJSMFIyZWtGQ1JYZFJjVVJEYUdsWlZHaHRUbnBqZUUxcVdtaE5WMDVvV21wTk1ncE9iVlUxVGtkSk5FMVVSVEJaVjFKc1drUlJlRmxxVlhkTmVrcHFUVVJuTTAxRFJVZERhWE5IUVZGUlFtYzNPSGRCVWxGRlJYZDNVbVF5T1hsaE1scHpDbUl6WkdaYVIyeDZZMGRHTUZreVozZFhkMWxMUzNkWlFrSkJSMFIyZWtGQ1JsRlNUa1JGZEc5a1NGSjNZM3B2ZGt3eVpIQmtSMmd4V1drMWFtSXlNSFlLV2xkV2JHSlljSHBNTWtaMlkwaE5kR05IZUdoa1IxcDJZMjB3ZGxsWFRqQmhWemwxWTNrNWVXUlhOWHBNZWsxNFRXcE5NVTlFYXpSUFZFRjVUREpHTUFwa1IxWjBZMGhTZWt4NlJYZEdkMWxMUzNkWlFrSkJSMFIyZWtGQ1JtZFJTa1JCWkhkamJXd3lXVmhTYkUxR1NVZERhWE5IUVZGUlFtYzNPSGRCVW1kRkNsSkJlRU5qYlZaM1lucHdiRnBYVm5SbGJrNUJUVlJCTlUxNlJYZE9lbU13VERKR2RtTklUWFJqUjNob1pFZGFkbU50TVVGTlZFMTRUbXBKTVU1VVFYa0tUbXB3ZVZwWFdUWmpiVlp0WTNrNWIxcFhSbXRqZVRsMFdWZHNkVTFKUjB0Q1oyOXlRbWRGUlVGa1dqVkJaMUZEUWtoM1JXVm5RalJCU0ZsQk0xUXdkd3BoYzJKSVJWUktha2RTTkdOdFYyTXpRWEZLUzFoeWFtVlFTek12YURSd2VXZERPSEEzYnpSQlFVRkhaak13YWxWQlowRkJRa0ZOUVZKNlFrWkJhVUkwQ2tkTFRtOWxla2NyYkU1R1luZEhSVlowUm5kRVlYVnNUSHBLY1haUU5HdExPQ3RVU2twRU5UQlRVVWxvUVVsRVdEa3lNMVZ6YlZKelVtOVpNMnhOTDJRS2EyY3hTWE5xVjJWSk1HcGtiVzExVkZaM1lqVlBNVTR6VFVGdlIwTkRjVWRUVFRRNVFrRk5SRUV5YTBGTlIxbERUVkZEVWxGa1NYVXlZWEF4TWxGc2NncHVRV3BtVURSbFRIWk1ibTB3YkdWTUwzbFViVkUwYURsTk5IVTNOMlJWYkVGdWRIRXZZa1Z5VDI4eU1HUnFTazQyZWtWRFRWRkRSa1pXTTJWT0wydHJDbHBQZVhGRlZXaGhXVFZWU2tsbE0zUkZja1ZKWW0xNlJtYzJUbFpuVERSNVltZExiMWMyV0M5MlltTTVaRzEwWmxac1NpOXFNV3M5Q2kwdExTMHRSVTVFSUVORlVsUkpSa2xEUVZSRkxTMHRMUzBLIn19fX0="
51
+ "canonicalizedBody": "eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiaGFzaGVkcmVrb3JkIiwic3BlYyI6eyJkYXRhIjp7Imhhc2giOnsiYWxnb3JpdGhtIjoic2hhMjU2IiwidmFsdWUiOiJhMTlmODU0YWUwZDJmZjU5ZjkxODRhYmM1MjlhMDBlOGM0ZTdmZGM2MDkwY2Q3YmUxY2IwYWZiZTY4NDAyMWY0In19LCJzaWduYXR1cmUiOnsiY29udGVudCI6Ik1FVUNJUUNvb1RhbW00QnN5dzliU0JlNFRpTlB0elh6dS91amtuTUtscVg4SDh6UUhRSWdYVkozWjF3MWlnTEdFcnlSajViMlNQbmNJNmZveTg4RENiL1hCZjE1Tm13PSIsInB1YmxpY0tleSI6eyJjb250ZW50IjoiTFMwdExTMUNSVWRKVGlCRFJWSlVTVVpKUTBGVVJTMHRMUzB0Q2sxSlNVaGtSRU5EUW5adFowRjNTVUpCWjBsVlVrWlRhWFYwU0VKMVFtdzRTMWxKYVdVMWFTOVlXVEVyVDBGTmQwTm5XVWxMYjFwSmVtb3dSVUYzVFhjS1RucEZWazFDVFVkQk1WVkZRMmhOVFdNeWJHNWpNMUoyWTIxVmRWcEhWakpOVWpSM1NFRlpSRlpSVVVSRmVGWjZZVmRrZW1SSE9YbGFVekZ3WW01U2JBcGpiVEZzV2tkc2FHUkhWWGRJYUdOT1RXcFpkMDlFUVRSTlJHY3hUbXBOTWxkb1kwNU5hbGwzVDBSQk5FMUVhM2RPYWsweVYycEJRVTFHYTNkRmQxbElDa3R2V2tsNmFqQkRRVkZaU1V0dldrbDZhakJFUVZGalJGRm5RVVZQV1dWdFZDdDVWSEk1Tm14TVVUWkRPSGhKZVd4WVNsZDRkRXhaYVhVeVNsTmplbG9LT1doUEwwOTJWMXB0TVVFMk9WbEhkWGszYW1GVVNqWjJjelIzVGxBNGNHbFFiMlJTVkhJclJGTTJRVWxzVTBabVUyRlBRMEpvWjNkbloxbFZUVUUwUndwQk1WVmtSSGRGUWk5M1VVVkJkMGxJWjBSQlZFSm5UbFpJVTFWRlJFUkJTMEpuWjNKQ1owVkdRbEZqUkVGNlFXUkNaMDVXU0ZFMFJVWm5VVlYxY0RZM0NuTXZTekpuYm5aVUswWXlUR0pHZG5KSVJGRkhhM2xGZDBoM1dVUldVakJxUWtKbmQwWnZRVlV6T1ZCd2VqRlphMFZhWWpWeFRtcHdTMFpYYVhocE5Ga0tXa1E0ZDJSQldVUldVakJTUVZGSUwwSkhiM2RoU1ZwdFlVaFNNR05JVFRaTWVUbHVZVmhTYjJSWFNYVlpNamwwVERKV2JGcFhNVFpqZVRsb1lqTkNlZ3BNV0VKeldWaFNiV0l6U25STWVUVnVZVmhTYjJSWFNYWmtNamw1WVRKYWMySXpaSHBNTTA1d1dqSTBkR05JVm1saVIyeHFURmRHYmxwWE5UQk1WMFo2Q21NeVZqQmplVFUxWWxkNFFXTnRWbTFqZVRsdldsZEdhMk41T1hSWlYyeDFUVVJyUjBOcGMwZEJVVkZDWnpjNGQwRlJSVVZMTW1nd1pFaENlazlwT0hZS1pFYzVjbHBYTkhWWlYwNHdZVmM1ZFdONU5XNWhXRkp2WkZkS01XTXlWbmxaTWpsMVpFZFdkV1JETldwaU1qQjNTSGRaUzB0M1dVSkNRVWRFZG5wQlFncEJaMUZTWkRJNWVXRXlXbk5pTTJSbVdrZHNlbU5IUmpCWk1tZDNUbWRaUzB0M1dVSkNRVWRFZG5wQlFrRjNVVzlhYlVsNVRucEpkMDFVYUd4UFIwa3hDazB5U21sYWFrMTNXVmRWTUU1cVozZE5SRmt5VGtSc2JGbDZiR3BQUkdONVRXcE5NRTE2UVhoQ1oyOXlRbWRGUlVGWlR5OU5RVVZGUWtOT1ZHRlhaSFVLU1VkV05GbFhUakJKU0VJeFdXMTRjRmw1UWtKVU1VSlVTVWRHYmxwWE5UQkpSMFo2WXpKV01HTjZRV2xDWjI5eVFtZEZSVUZaVHk5TlFVVkdRa0pTYkFwYVYxWjBaVzVOZGxsWE9YZGplVEYzWWtkR01GcHRPWGxpVkVGa1FtZHZja0puUlVWQldVOHZUVUZGUjBKQk9YbGFWMXA2VERKb2JGbFhVbnBNTWpGb0NtRlhOSGRQZDFsTFMzZFpRa0pCUjBSMmVrRkNRMEZSZEVSRGRHOWtTRkozWTNwdmRrd3pVblpoTWxaMVRHMUdhbVJIYkhaaWJrMTFXakpzTUdGSVZta0taRmhPYkdOdFRuWmlibEpzWW01UmRWa3lPWFJOU0ZsSFEybHpSMEZSVVVKbk56aDNRVkZyUldGQmVHMWhTRkl3WTBoTk5reDVPVzVoV0ZKdlpGZEpkUXBaTWpsMFRESldiRnBYTVRaamVUbG9Zak5DZWt4WVFuTlpXRkp0WWpOS2RFeDVOVzVoV0ZKdlpGZEpkbVF5T1hsaE1scHpZak5rZWt3elRuQmFNalIwQ21OSVZtbGlSMnhxVEZkR2JscFhOVEJNVjBaNll6SldNR041TlRWaVYzaEJZMjFXYldONU9XOWFWMFpyWTNrNWRGbFhiSFZOUkdkSFEybHpSMEZSVVVJS1p6YzRkMEZSYjBWTFozZHZXbTFKZVU1NlNYZE5WR2hzVDBkSk1VMHlTbWxhYWsxM1dWZFZNRTVxWjNkTlJGa3lUa1JzYkZsNmJHcFBSR041VFdwTk1BcE5la0ZrUW1kdmNrSm5SVVZCV1U4dlRVRkZURUpCT0UxRVYyUndaRWRvTVZscE1XOWlNMDR3V2xkUmQwNTNXVXRMZDFsQ1FrRkhSSFo2UVVKRVFWRndDa1JEWkc5a1NGSjNZM3B2ZGt3eVpIQmtSMmd4V1drMWFtSXlNSFphVjFac1lsaHdla3d5Um5aalNFMTBZMGQ0YUdSSFduWmpiVEIzVDBGWlMwdDNXVUlLUWtGSFJIWjZRVUpFVVZGeFJFTm9iVmxxU1ROTmFrRjRUMGRWTkZscVZYcFpiVXB0VFhwQ2FGcFVVVEpQUkVGM1RtcFpNRTlYVm1wUFYwMDBUbnBKZVFwTmVsRjZUVUk0UjBOcGMwZEJVVkZDWnpjNGQwRlJORVZGVVhkUVkyMVdiV041T1c5YVYwWnJZM2s1ZEZsWGJIVk5RbTlIUTJselIwRlJVVUpuTnpoM0NrRlJPRVZFUVhkTFRWUk5lRTVxU1RGT1ZFRjVUbXBCY0VKbmIzSkNaMFZGUVZsUEwwMUJSVkZDUW5OTlIxZG9NR1JJUW5wUGFUaDJXakpzTUdGSVZta0tURzFPZG1KVE9XeGFWMVowWlc1TmQwZFJXVXRMZDFsQ1FrRkhSSFo2UVVKRlVWRk1SRUZyZUUxRWEzcE5WRUV6VG5wUmQyUm5XVXRMZDFsQ1FrRkhSQXAyZWtGQ1JXZFNiMFJIV205a1NGSjNZM3B2ZGt3eVpIQmtSMmd4V1drMWFtSXlNSFphVjFac1lsaHdla3d5Um5aalNFMTBZMGQ0YUdSSFduWmpiVEIyQ2t4dFpIQmtSMmd4V1drNU0ySXpTbkphYlhoMlpETk5kbU15Ykc1aWFURjNaRmRLYzJGWFRYUlpWMlJzWW01UmRGbFlUbnBhV0ZKNlRHNXNkR0pGUW5rS1dsZGFla3d5YUd4WlYxSjZUREl4YUdGWE5IZFBRVmxMUzNkWlFrSkJSMFIyZWtGQ1JYZFJjVVJEYUcxWmFra3pUV3BCZUU5SFZUUlphbFY2V1cxS2JRcE5la0pvV2xSUk1rOUVRWGRPYWxrd1QxZFdhazlYVFRST2VrbDVUWHBSZWsxRFJVZERhWE5IUVZGUlFtYzNPSGRCVWxGRlJYZDNVbVF5T1hsaE1scHpDbUl6WkdaYVIyeDZZMGRHTUZreVozZFhkMWxMUzNkWlFrSkJSMFIyZWtGQ1JsRlNUa1JGZEc5a1NGSjNZM3B2ZGt3eVpIQmtSMmd4V1drMWFtSXlNSFlLV2xkV2JHSlljSHBNTWtaMlkwaE5kR05IZUdoa1IxcDJZMjB3ZGxsWFRqQmhWemwxWTNrNWVXUlhOWHBNZWsxNFRXcFJOVTVFVlhkTmVtc3hUREpHTUFwa1IxWjBZMGhTZWt4NlJYZEdkMWxMUzNkWlFrSkJSMFIyZWtGQ1JtZFJTa1JCWkhkamJXd3lXVmhTYkUxR1NVZERhWE5IUVZGUlFtYzNPSGRCVW1kRkNsSkJlRU5qYlZaM1lucHdiRnBYVm5SbGJrNUJUVlJCTlUxNlJYZE9lbU13VERKR2RtTklUWFJqUjNob1pFZGFkbU50TVVGTlZFMTRUbXBKTVU1VVFYa0tUbXB3ZVZwWFdUWmpiVlp0WTNrNWIxcFhSbXRqZVRsMFdWZHNkVTFKUjBwQ1oyOXlRbWRGUlVGa1dqVkJaMUZEUWtoelJXVlJRak5CU0ZWQk0xUXdkd3BoYzJKSVJWUktha2RTTkdOdFYyTXpRWEZLUzFoeWFtVlFTek12YURSd2VXZERPSEEzYnpSQlFVRkhaalJLWVdwUmQwRkJRa0ZOUVZKcVFrVkJhVUpYQ2tWNlpqVkJVbmRCTUVONGR6Um1NVFJLUldWbFR6TXhjRXhpVFhaTVMxaHFValJvWVhGUVVWUXdkMGxuUkVkQlJsZHVSVUUzT0VWYU5UbEVSM2c0T0hrS01rUnNUbHBsU0dKRlkxWlZhM2hFUnpodE1HbHlVMDEzUTJkWlNVdHZXa2w2YWpCRlFYZE5SR0ZSUVhkYVowbDRRVXRyVTJsNVRYYzVXa2wxU2xSVFlRcFVaVGRITlcxdGJIcFlMMGhsWW14dmVqaEhXamMzVUUxM09FdHNRMVJQTUZsYU1HZGxRVGxEY3pSRFNXTkVRV1ZLWjBsNFFVOURiR1JMUVdsUlFVVmhDbFJHZVhSSk4wMVdjR3NyVm5GV1lYSlhUMkZyWlcxYVREZzFWWE41VTBWSVRqWnpjRFY2UWtocWIycENhME4zYzBKcFdrNWtaejA5Q2kwdExTMHRSVTVFSUVORlVsUkpSa2xEUVZSRkxTMHRMUzBLIn19fX0="
53
52
  }
54
53
  ],
55
54
  "timestampVerificationData": {}
@@ -57,8 +56,8 @@
57
56
  "messageSignature": {
58
57
  "messageDigest": {
59
58
  "algorithm": "SHA2_256",
60
- "digest": "cSXkX8oaHZYX9IVt6XY1YItTnHpC8R9YpCmxDdaO6MU="
59
+ "digest": "oZ+FSuDS/1n5GEq8UpoA6MTn/cYJDNe+HLCvvmhAIfQ="
61
60
  },
62
- "signature": "MEQCIBVDp2Z9jwVPS5TfNwco2Y1Wnxdk1WVBHDfeAkzta4D9AiB/7z0MQA4/t6eA7EPL56NdLk6xrznHXd160nusPYXqAg=="
61
+ "signature": "MEUCIQCooTamm4Bsyw9bSBe4TiNPtzXzu/ujknMKlqX8H8zQHQIgXVJ3Z1w1igLGEryRj5b2SPncI6foy88DCb/XBf15Nmw="
63
62
  }
64
63
  }
@@ -1,11 +1,21 @@
1
1
  import { spawn } from 'node:child_process';
2
- import { existsSync } from 'node:fs';
2
+ import { accessSync, constants, existsSync } from 'node:fs';
3
3
  import path from 'node:path';
4
4
  import { fileURLToPath } from 'node:url';
5
5
  const SUPPORTED_TUI_TARGETS = new Set([
6
6
  'darwin-arm64',
7
7
  'win32-x64',
8
8
  ]);
9
+ const TUI_REINSTALL_MESSAGE = 'The bundled AOPS TUI is not executable. Reinstall @aopslabs/aops or use aops --help.';
10
+ function isExecutableFile(filePath) {
11
+ try {
12
+ accessSync(filePath, constants.X_OK);
13
+ return true;
14
+ }
15
+ catch {
16
+ return false;
17
+ }
18
+ }
9
19
  function packageRootFromModule() {
10
20
  return fileURLToPath(new URL('../../', import.meta.url));
11
21
  }
@@ -41,10 +51,17 @@ export async function launchBundledTui(options = {}) {
41
51
  if (!fileExists(invocation.command)) {
42
52
  throw new Error('The bundled AOPS TUI is missing. Reinstall @aopslabs/aops or use aops --help.');
43
53
  }
54
+ const platform = options.platform ?? process.platform;
55
+ const fileExecutable = options.fileExecutable ?? isExecutableFile;
56
+ if (platform !== 'win32' && !fileExecutable(invocation.command)) {
57
+ throw new Error(TUI_REINSTALL_MESSAGE);
58
+ }
44
59
  const spawnProcess = options.spawnProcess ?? spawn;
45
60
  const child = spawnProcess(invocation.command, [...invocation.args], invocation.options);
46
61
  return await new Promise((resolve, reject) => {
47
- child.once('error', reject);
62
+ child.once('error', (error) => {
63
+ reject(error.code === 'EACCES' ? new Error(TUI_REINSTALL_MESSAGE) : error);
64
+ });
48
65
  child.once('exit', (code, signal) => {
49
66
  if (signal) {
50
67
  reject(new Error(`The AOPS TUI stopped after receiving ${signal}.`));
File without changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aopslabs/aops",
3
- "version": "0.3.6",
3
+ "version": "0.3.7",
4
4
  "type": "module",
5
5
  "description": "AOPS CLI and terminal setup application.",
6
6
  "aopsDockerServerVersion": "0.2.8",
@@ -39,7 +39,7 @@
39
39
  "test:commercial-license": "node --test test/commercial-license.test.mjs",
40
40
  "test:commercial-runbook": "node --test test/commercial-runbook.test.mjs",
41
41
  "test:commercial-performance": "node --test test/commercial-performance.test.mjs",
42
- "test:package-identity": "node --test test/package-identity.test.mjs",
42
+ "test:package-identity": "node --test test/package-identity.test.mjs test/npm-tar-entry-mode.test.mjs",
43
43
  "test:tui-launcher": "node --test test/tui-launcher.test.mjs",
44
44
  "test:skill-discovery": "node --test test/skill-discovery.test.mjs",
45
45
  "test:target-auth": "node --test test/target-auth.test.mjs test/device-login.test.mjs",