@le-space/ui 0.3.12 → 0.3.13
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/package.json +3 -3
- package/react/index.js +98 -14
- package/shared/index.d.ts +1 -1
- package/shared/index.js +98 -14
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@le-space/ui",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.13",
|
|
4
4
|
"description": "Floating Aleph sponsor relay UI components for Svelte and React.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -36,8 +36,8 @@
|
|
|
36
36
|
"access": "public"
|
|
37
37
|
},
|
|
38
38
|
"dependencies": {
|
|
39
|
-
"@le-space/browser": "0.3.
|
|
40
|
-
"@le-space/core": "0.3.
|
|
39
|
+
"@le-space/browser": "0.3.13",
|
|
40
|
+
"@le-space/core": "0.3.13",
|
|
41
41
|
"viem": "^2.38.5"
|
|
42
42
|
},
|
|
43
43
|
"peerDependencies": {
|
package/react/index.js
CHANGED
|
@@ -39,7 +39,7 @@ var RECENT_INSTANCE_RUNTIME_GRACE_MS = 10 * 60 * 1e3;
|
|
|
39
39
|
var DEPLOYMENT_PENDING_WARNING_MS = 3 * 60 * 1e3;
|
|
40
40
|
|
|
41
41
|
// src/shared/package-version.ts
|
|
42
|
-
var UI_PACKAGE_VERSION = "0.3.
|
|
42
|
+
var UI_PACKAGE_VERSION = "0.3.13";
|
|
43
43
|
|
|
44
44
|
// src/shared/format.ts
|
|
45
45
|
function shortHash(value, head = 8, tail = 6) {
|
|
@@ -2084,8 +2084,8 @@ async function fetchUcGoPeerMetadata(args) {
|
|
|
2084
2084
|
() => controller.abort(),
|
|
2085
2085
|
Number(args.timeoutMs ?? 18e4)
|
|
2086
2086
|
);
|
|
2087
|
+
const requestUrl = args.metadataUrl && args.metadataUrl.trim() ? args.metadataUrl : `http://${args.hostIpv4}:${args.setupPort}/metadata`;
|
|
2087
2088
|
try {
|
|
2088
|
-
const requestUrl = args.metadataUrl && args.metadataUrl.trim() ? args.metadataUrl : `http://${args.hostIpv4}:${args.setupPort}/metadata`;
|
|
2089
2089
|
const response = await args.fetch(
|
|
2090
2090
|
requestUrl,
|
|
2091
2091
|
{
|
|
@@ -2094,15 +2094,20 @@ async function fetchUcGoPeerMetadata(args) {
|
|
|
2094
2094
|
);
|
|
2095
2095
|
const payload = await response.json().catch(() => null);
|
|
2096
2096
|
lastPayload = payload;
|
|
2097
|
-
|
|
2098
|
-
payload
|
|
2099
|
-
Boolean(
|
|
2100
|
-
response.ok && payload && typeof payload === "object" && payload.status === "ready"
|
|
2101
|
-
),
|
|
2102
|
-
attempt + 1,
|
|
2103
|
-
attempts
|
|
2097
|
+
const ready = Boolean(
|
|
2098
|
+
response.ok && payload && typeof payload === "object" && payload.status === "ready"
|
|
2104
2099
|
);
|
|
2105
|
-
|
|
2100
|
+
args.onAttempt?.({
|
|
2101
|
+
payload,
|
|
2102
|
+
ready,
|
|
2103
|
+
attempt: attempt + 1,
|
|
2104
|
+
attempts,
|
|
2105
|
+
requestUrl,
|
|
2106
|
+
ok: response.ok,
|
|
2107
|
+
status: response.status,
|
|
2108
|
+
error: null
|
|
2109
|
+
});
|
|
2110
|
+
if (ready) {
|
|
2106
2111
|
return payload;
|
|
2107
2112
|
}
|
|
2108
2113
|
if (response.status >= 500) {
|
|
@@ -2110,6 +2115,18 @@ async function fetchUcGoPeerMetadata(args) {
|
|
|
2110
2115
|
`Relay metadata request failed: ${response.status} ${typeof payload === "string" ? payload : JSON.stringify(payload ?? {})}`
|
|
2111
2116
|
);
|
|
2112
2117
|
}
|
|
2118
|
+
} catch (error) {
|
|
2119
|
+
args.onAttempt?.({
|
|
2120
|
+
payload: null,
|
|
2121
|
+
ready: false,
|
|
2122
|
+
attempt: attempt + 1,
|
|
2123
|
+
attempts,
|
|
2124
|
+
requestUrl,
|
|
2125
|
+
ok: false,
|
|
2126
|
+
status: null,
|
|
2127
|
+
error: error instanceof Error ? error.message : String(error)
|
|
2128
|
+
});
|
|
2129
|
+
throw error;
|
|
2113
2130
|
} finally {
|
|
2114
2131
|
clearTimeout(timeout);
|
|
2115
2132
|
}
|
|
@@ -2796,7 +2813,15 @@ async function fetchRelayMetadataForRuntime(args) {
|
|
|
2796
2813
|
fetch: args.fetch,
|
|
2797
2814
|
attempts: args.attempts,
|
|
2798
2815
|
delayMs: args.delayMs,
|
|
2799
|
-
timeoutMs: args.timeoutMs
|
|
2816
|
+
timeoutMs: args.timeoutMs,
|
|
2817
|
+
onAttempt: (result) => {
|
|
2818
|
+
args.onAttempt?.({
|
|
2819
|
+
...result,
|
|
2820
|
+
metadataUrl,
|
|
2821
|
+
hostIpv4: args.runtime.hostIpv4 ?? null,
|
|
2822
|
+
setupPort
|
|
2823
|
+
});
|
|
2824
|
+
}
|
|
2800
2825
|
}).catch(() => null);
|
|
2801
2826
|
return extractRelayMetadata(payload);
|
|
2802
2827
|
}
|
|
@@ -3475,7 +3500,7 @@ var SponsorRelayController = class {
|
|
|
3475
3500
|
)
|
|
3476
3501
|
}
|
|
3477
3502
|
};
|
|
3478
|
-
await publishVmBootstrapConfig({
|
|
3503
|
+
const bootstrapConfigPublication = await publishVmBootstrapConfig({
|
|
3479
3504
|
sender: this.state.wallet.address,
|
|
3480
3505
|
record,
|
|
3481
3506
|
signer: personalSign,
|
|
@@ -3484,6 +3509,15 @@ var SponsorRelayController = class {
|
|
|
3484
3509
|
apiHost: this.client.apiHost,
|
|
3485
3510
|
sync: true
|
|
3486
3511
|
});
|
|
3512
|
+
this.trace("deploy:bootstrap-config-published", {
|
|
3513
|
+
itemHash: args.itemHash,
|
|
3514
|
+
deploymentToken: args.deploymentToken,
|
|
3515
|
+
registrationId: record.bootstrap?.registrationId ?? null,
|
|
3516
|
+
proxyUrl: record.runtime.proxyUrl ?? null,
|
|
3517
|
+
mappedPorts: record.runtime.mappedPorts,
|
|
3518
|
+
aggregateItemHash: bootstrapConfigPublication.aggregateItemHash,
|
|
3519
|
+
aggregateStatus: bootstrapConfigPublication.aggregateStatus
|
|
3520
|
+
});
|
|
3487
3521
|
}
|
|
3488
3522
|
this.emitProgress({
|
|
3489
3523
|
stage: "publishing-bootstrap",
|
|
@@ -3499,7 +3533,30 @@ var SponsorRelayController = class {
|
|
|
3499
3533
|
preferSecureMetadata: profile === "uc-go-peer",
|
|
3500
3534
|
attempts: 80,
|
|
3501
3535
|
delayMs: 3e3,
|
|
3502
|
-
timeoutMs: 24e4
|
|
3536
|
+
timeoutMs: 24e4,
|
|
3537
|
+
onAttempt: (result) => {
|
|
3538
|
+
const payload = result.payload && typeof result.payload === "object" ? result.payload : null;
|
|
3539
|
+
const metadata = payload?.metadata && typeof payload.metadata === "object" ? payload.metadata : null;
|
|
3540
|
+
this.trace("deploy:relay-metadata-attempt", {
|
|
3541
|
+
itemHash: args.itemHash,
|
|
3542
|
+
attempt: result.attempt,
|
|
3543
|
+
attempts: result.attempts,
|
|
3544
|
+
requestUrl: result.requestUrl,
|
|
3545
|
+
metadataUrl: result.metadataUrl,
|
|
3546
|
+
hostIpv4: result.hostIpv4,
|
|
3547
|
+
setupPort: result.setupPort,
|
|
3548
|
+
ok: result.ok,
|
|
3549
|
+
status: result.status,
|
|
3550
|
+
ready: result.ready,
|
|
3551
|
+
error: result.error ?? null,
|
|
3552
|
+
payloadStatus: payload && typeof payload.status === "string" ? payload.status : null,
|
|
3553
|
+
peerId: metadata && typeof metadata.peer_id === "string" ? metadata.peer_id : null,
|
|
3554
|
+
probeMultiaddrCount: Array.isArray(metadata?.probe_multiaddrs) ? metadata.probe_multiaddrs.length : 0,
|
|
3555
|
+
browserBootstrapMultiaddrCount: Array.isArray(
|
|
3556
|
+
metadata?.browser_bootstrap_multiaddrs
|
|
3557
|
+
) ? metadata.browser_bootstrap_multiaddrs.length : 0
|
|
3558
|
+
});
|
|
3559
|
+
}
|
|
3503
3560
|
});
|
|
3504
3561
|
if (!relayMetadata) {
|
|
3505
3562
|
throw new Error("Relay metadata did not include a peer ID and public multiaddrs.");
|
|
@@ -4278,6 +4335,10 @@ var SponsorRelayController = class {
|
|
|
4278
4335
|
});
|
|
4279
4336
|
if (attemptItemHash) {
|
|
4280
4337
|
if (attemptDeploymentToken) {
|
|
4338
|
+
this.trace("deploy:bootstrap-config-cleanup-start", {
|
|
4339
|
+
itemHash: attemptItemHash,
|
|
4340
|
+
deploymentToken: attemptDeploymentToken
|
|
4341
|
+
});
|
|
4281
4342
|
await deleteVmBootstrapConfig({
|
|
4282
4343
|
sender: this.state.wallet.address,
|
|
4283
4344
|
deploymentToken: attemptDeploymentToken,
|
|
@@ -4286,8 +4347,26 @@ var SponsorRelayController = class {
|
|
|
4286
4347
|
fetch: asJsonFetch,
|
|
4287
4348
|
apiHost: this.client.apiHost,
|
|
4288
4349
|
sync: true
|
|
4289
|
-
}).
|
|
4350
|
+
}).then((cleanupResult) => {
|
|
4351
|
+
this.trace("deploy:bootstrap-config-cleanup-complete", {
|
|
4352
|
+
itemHash: attemptItemHash,
|
|
4353
|
+
deploymentToken: attemptDeploymentToken,
|
|
4354
|
+
aggregateItemHash: cleanupResult.aggregateItemHash,
|
|
4355
|
+
aggregateStatus: cleanupResult.aggregateStatus
|
|
4356
|
+
});
|
|
4357
|
+
}).catch((cleanupError) => {
|
|
4358
|
+
this.trace("deploy:bootstrap-config-cleanup-error", {
|
|
4359
|
+
itemHash: attemptItemHash,
|
|
4360
|
+
deploymentToken: attemptDeploymentToken,
|
|
4361
|
+
error: cleanupError instanceof Error ? cleanupError.message : String(cleanupError)
|
|
4362
|
+
});
|
|
4363
|
+
});
|
|
4290
4364
|
}
|
|
4365
|
+
this.trace("deploy:forget-failed-attempt-start", {
|
|
4366
|
+
itemHash: attemptItemHash,
|
|
4367
|
+
crnHash: candidateCrn.hash,
|
|
4368
|
+
crnName: candidateCrn.name
|
|
4369
|
+
});
|
|
4291
4370
|
await forgetAlephMessages({
|
|
4292
4371
|
sender: this.state.wallet.address,
|
|
4293
4372
|
hashes: [attemptItemHash],
|
|
@@ -4306,6 +4385,11 @@ var SponsorRelayController = class {
|
|
|
4306
4385
|
error: cleanupError instanceof Error ? cleanupError.message : String(cleanupError)
|
|
4307
4386
|
});
|
|
4308
4387
|
});
|
|
4388
|
+
this.trace("deploy:forget-failed-attempt-complete", {
|
|
4389
|
+
itemHash: attemptItemHash,
|
|
4390
|
+
crnHash: candidateCrn.hash,
|
|
4391
|
+
crnName: candidateCrn.name
|
|
4392
|
+
});
|
|
4309
4393
|
}
|
|
4310
4394
|
if (candidateIndex < orderedCrns.length - 1) {
|
|
4311
4395
|
this.emitProgress({
|
package/shared/index.d.ts
CHANGED
|
@@ -304,7 +304,7 @@ declare const STALE_INSTANCE_ALLOCATION_COOLDOWN_MS: number;
|
|
|
304
304
|
declare const RECENT_INSTANCE_RUNTIME_GRACE_MS: number;
|
|
305
305
|
declare const DEPLOYMENT_PENDING_WARNING_MS: number;
|
|
306
306
|
|
|
307
|
-
declare const UI_PACKAGE_VERSION = "0.3.
|
|
307
|
+
declare const UI_PACKAGE_VERSION = "0.3.13";
|
|
308
308
|
|
|
309
309
|
interface RootfsRequiredPortForward {
|
|
310
310
|
port: number;
|
package/shared/index.js
CHANGED
|
@@ -38,7 +38,7 @@ var RECENT_INSTANCE_RUNTIME_GRACE_MS = 10 * 60 * 1e3;
|
|
|
38
38
|
var DEPLOYMENT_PENDING_WARNING_MS = 3 * 60 * 1e3;
|
|
39
39
|
|
|
40
40
|
// src/shared/package-version.ts
|
|
41
|
-
var UI_PACKAGE_VERSION = "0.3.
|
|
41
|
+
var UI_PACKAGE_VERSION = "0.3.13";
|
|
42
42
|
|
|
43
43
|
// src/shared/format.ts
|
|
44
44
|
function shortHash(value, head = 8, tail = 6) {
|
|
@@ -2083,8 +2083,8 @@ async function fetchUcGoPeerMetadata(args) {
|
|
|
2083
2083
|
() => controller.abort(),
|
|
2084
2084
|
Number(args.timeoutMs ?? 18e4)
|
|
2085
2085
|
);
|
|
2086
|
+
const requestUrl = args.metadataUrl && args.metadataUrl.trim() ? args.metadataUrl : `http://${args.hostIpv4}:${args.setupPort}/metadata`;
|
|
2086
2087
|
try {
|
|
2087
|
-
const requestUrl = args.metadataUrl && args.metadataUrl.trim() ? args.metadataUrl : `http://${args.hostIpv4}:${args.setupPort}/metadata`;
|
|
2088
2088
|
const response = await args.fetch(
|
|
2089
2089
|
requestUrl,
|
|
2090
2090
|
{
|
|
@@ -2093,15 +2093,20 @@ async function fetchUcGoPeerMetadata(args) {
|
|
|
2093
2093
|
);
|
|
2094
2094
|
const payload = await response.json().catch(() => null);
|
|
2095
2095
|
lastPayload = payload;
|
|
2096
|
-
|
|
2097
|
-
payload
|
|
2098
|
-
Boolean(
|
|
2099
|
-
response.ok && payload && typeof payload === "object" && payload.status === "ready"
|
|
2100
|
-
),
|
|
2101
|
-
attempt + 1,
|
|
2102
|
-
attempts
|
|
2096
|
+
const ready = Boolean(
|
|
2097
|
+
response.ok && payload && typeof payload === "object" && payload.status === "ready"
|
|
2103
2098
|
);
|
|
2104
|
-
|
|
2099
|
+
args.onAttempt?.({
|
|
2100
|
+
payload,
|
|
2101
|
+
ready,
|
|
2102
|
+
attempt: attempt + 1,
|
|
2103
|
+
attempts,
|
|
2104
|
+
requestUrl,
|
|
2105
|
+
ok: response.ok,
|
|
2106
|
+
status: response.status,
|
|
2107
|
+
error: null
|
|
2108
|
+
});
|
|
2109
|
+
if (ready) {
|
|
2105
2110
|
return payload;
|
|
2106
2111
|
}
|
|
2107
2112
|
if (response.status >= 500) {
|
|
@@ -2109,6 +2114,18 @@ async function fetchUcGoPeerMetadata(args) {
|
|
|
2109
2114
|
`Relay metadata request failed: ${response.status} ${typeof payload === "string" ? payload : JSON.stringify(payload ?? {})}`
|
|
2110
2115
|
);
|
|
2111
2116
|
}
|
|
2117
|
+
} catch (error) {
|
|
2118
|
+
args.onAttempt?.({
|
|
2119
|
+
payload: null,
|
|
2120
|
+
ready: false,
|
|
2121
|
+
attempt: attempt + 1,
|
|
2122
|
+
attempts,
|
|
2123
|
+
requestUrl,
|
|
2124
|
+
ok: false,
|
|
2125
|
+
status: null,
|
|
2126
|
+
error: error instanceof Error ? error.message : String(error)
|
|
2127
|
+
});
|
|
2128
|
+
throw error;
|
|
2112
2129
|
} finally {
|
|
2113
2130
|
clearTimeout(timeout);
|
|
2114
2131
|
}
|
|
@@ -2795,7 +2812,15 @@ async function fetchRelayMetadataForRuntime(args) {
|
|
|
2795
2812
|
fetch: args.fetch,
|
|
2796
2813
|
attempts: args.attempts,
|
|
2797
2814
|
delayMs: args.delayMs,
|
|
2798
|
-
timeoutMs: args.timeoutMs
|
|
2815
|
+
timeoutMs: args.timeoutMs,
|
|
2816
|
+
onAttempt: (result) => {
|
|
2817
|
+
args.onAttempt?.({
|
|
2818
|
+
...result,
|
|
2819
|
+
metadataUrl,
|
|
2820
|
+
hostIpv4: args.runtime.hostIpv4 ?? null,
|
|
2821
|
+
setupPort
|
|
2822
|
+
});
|
|
2823
|
+
}
|
|
2799
2824
|
}).catch(() => null);
|
|
2800
2825
|
return extractRelayMetadata(payload);
|
|
2801
2826
|
}
|
|
@@ -3474,7 +3499,7 @@ var SponsorRelayController = class {
|
|
|
3474
3499
|
)
|
|
3475
3500
|
}
|
|
3476
3501
|
};
|
|
3477
|
-
await publishVmBootstrapConfig({
|
|
3502
|
+
const bootstrapConfigPublication = await publishVmBootstrapConfig({
|
|
3478
3503
|
sender: this.state.wallet.address,
|
|
3479
3504
|
record,
|
|
3480
3505
|
signer: personalSign,
|
|
@@ -3483,6 +3508,15 @@ var SponsorRelayController = class {
|
|
|
3483
3508
|
apiHost: this.client.apiHost,
|
|
3484
3509
|
sync: true
|
|
3485
3510
|
});
|
|
3511
|
+
this.trace("deploy:bootstrap-config-published", {
|
|
3512
|
+
itemHash: args.itemHash,
|
|
3513
|
+
deploymentToken: args.deploymentToken,
|
|
3514
|
+
registrationId: record.bootstrap?.registrationId ?? null,
|
|
3515
|
+
proxyUrl: record.runtime.proxyUrl ?? null,
|
|
3516
|
+
mappedPorts: record.runtime.mappedPorts,
|
|
3517
|
+
aggregateItemHash: bootstrapConfigPublication.aggregateItemHash,
|
|
3518
|
+
aggregateStatus: bootstrapConfigPublication.aggregateStatus
|
|
3519
|
+
});
|
|
3486
3520
|
}
|
|
3487
3521
|
this.emitProgress({
|
|
3488
3522
|
stage: "publishing-bootstrap",
|
|
@@ -3498,7 +3532,30 @@ var SponsorRelayController = class {
|
|
|
3498
3532
|
preferSecureMetadata: profile === "uc-go-peer",
|
|
3499
3533
|
attempts: 80,
|
|
3500
3534
|
delayMs: 3e3,
|
|
3501
|
-
timeoutMs: 24e4
|
|
3535
|
+
timeoutMs: 24e4,
|
|
3536
|
+
onAttempt: (result) => {
|
|
3537
|
+
const payload = result.payload && typeof result.payload === "object" ? result.payload : null;
|
|
3538
|
+
const metadata = payload?.metadata && typeof payload.metadata === "object" ? payload.metadata : null;
|
|
3539
|
+
this.trace("deploy:relay-metadata-attempt", {
|
|
3540
|
+
itemHash: args.itemHash,
|
|
3541
|
+
attempt: result.attempt,
|
|
3542
|
+
attempts: result.attempts,
|
|
3543
|
+
requestUrl: result.requestUrl,
|
|
3544
|
+
metadataUrl: result.metadataUrl,
|
|
3545
|
+
hostIpv4: result.hostIpv4,
|
|
3546
|
+
setupPort: result.setupPort,
|
|
3547
|
+
ok: result.ok,
|
|
3548
|
+
status: result.status,
|
|
3549
|
+
ready: result.ready,
|
|
3550
|
+
error: result.error ?? null,
|
|
3551
|
+
payloadStatus: payload && typeof payload.status === "string" ? payload.status : null,
|
|
3552
|
+
peerId: metadata && typeof metadata.peer_id === "string" ? metadata.peer_id : null,
|
|
3553
|
+
probeMultiaddrCount: Array.isArray(metadata?.probe_multiaddrs) ? metadata.probe_multiaddrs.length : 0,
|
|
3554
|
+
browserBootstrapMultiaddrCount: Array.isArray(
|
|
3555
|
+
metadata?.browser_bootstrap_multiaddrs
|
|
3556
|
+
) ? metadata.browser_bootstrap_multiaddrs.length : 0
|
|
3557
|
+
});
|
|
3558
|
+
}
|
|
3502
3559
|
});
|
|
3503
3560
|
if (!relayMetadata) {
|
|
3504
3561
|
throw new Error("Relay metadata did not include a peer ID and public multiaddrs.");
|
|
@@ -4277,6 +4334,10 @@ var SponsorRelayController = class {
|
|
|
4277
4334
|
});
|
|
4278
4335
|
if (attemptItemHash) {
|
|
4279
4336
|
if (attemptDeploymentToken) {
|
|
4337
|
+
this.trace("deploy:bootstrap-config-cleanup-start", {
|
|
4338
|
+
itemHash: attemptItemHash,
|
|
4339
|
+
deploymentToken: attemptDeploymentToken
|
|
4340
|
+
});
|
|
4280
4341
|
await deleteVmBootstrapConfig({
|
|
4281
4342
|
sender: this.state.wallet.address,
|
|
4282
4343
|
deploymentToken: attemptDeploymentToken,
|
|
@@ -4285,8 +4346,26 @@ var SponsorRelayController = class {
|
|
|
4285
4346
|
fetch: asJsonFetch,
|
|
4286
4347
|
apiHost: this.client.apiHost,
|
|
4287
4348
|
sync: true
|
|
4288
|
-
}).
|
|
4349
|
+
}).then((cleanupResult) => {
|
|
4350
|
+
this.trace("deploy:bootstrap-config-cleanup-complete", {
|
|
4351
|
+
itemHash: attemptItemHash,
|
|
4352
|
+
deploymentToken: attemptDeploymentToken,
|
|
4353
|
+
aggregateItemHash: cleanupResult.aggregateItemHash,
|
|
4354
|
+
aggregateStatus: cleanupResult.aggregateStatus
|
|
4355
|
+
});
|
|
4356
|
+
}).catch((cleanupError) => {
|
|
4357
|
+
this.trace("deploy:bootstrap-config-cleanup-error", {
|
|
4358
|
+
itemHash: attemptItemHash,
|
|
4359
|
+
deploymentToken: attemptDeploymentToken,
|
|
4360
|
+
error: cleanupError instanceof Error ? cleanupError.message : String(cleanupError)
|
|
4361
|
+
});
|
|
4362
|
+
});
|
|
4289
4363
|
}
|
|
4364
|
+
this.trace("deploy:forget-failed-attempt-start", {
|
|
4365
|
+
itemHash: attemptItemHash,
|
|
4366
|
+
crnHash: candidateCrn.hash,
|
|
4367
|
+
crnName: candidateCrn.name
|
|
4368
|
+
});
|
|
4290
4369
|
await forgetAlephMessages({
|
|
4291
4370
|
sender: this.state.wallet.address,
|
|
4292
4371
|
hashes: [attemptItemHash],
|
|
@@ -4305,6 +4384,11 @@ var SponsorRelayController = class {
|
|
|
4305
4384
|
error: cleanupError instanceof Error ? cleanupError.message : String(cleanupError)
|
|
4306
4385
|
});
|
|
4307
4386
|
});
|
|
4387
|
+
this.trace("deploy:forget-failed-attempt-complete", {
|
|
4388
|
+
itemHash: attemptItemHash,
|
|
4389
|
+
crnHash: candidateCrn.hash,
|
|
4390
|
+
crnName: candidateCrn.name
|
|
4391
|
+
});
|
|
4308
4392
|
}
|
|
4309
4393
|
if (candidateIndex < orderedCrns.length - 1) {
|
|
4310
4394
|
this.emitProgress({
|