@okxweb3/a2a-node 0.2.8 → 0.2.9-beta-cb068eb2d0-260824220115
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/dist/cli.js +115 -26
- package/dist/index.js +114 -23
- package/package.json +1 -1
package/dist/cli.js
CHANGED
|
@@ -19931,6 +19931,7 @@ var init_events = __esm({
|
|
|
19931
19931
|
AGENT_CLIENT_REMOVED: "Agent client removed",
|
|
19932
19932
|
AGENT_STREAM_RECOVERED: "Agent stream recovered",
|
|
19933
19933
|
AGENT_STREAM_RECOVERY_REPLAY_COMPLETED: "Agent stream recovery replay completed",
|
|
19934
|
+
AGENT_STREAM_RECOVERY_REPLAY_TERMINATED: "Agent stream recovery replay terminated",
|
|
19934
19935
|
ADDRESS_SYNC_COMPLETED: "Address sync completed",
|
|
19935
19936
|
AGENT_REFRESH_SESSION_EXPIRED: "Agent refresh aborted: onchainos session expired, local clients taken offline",
|
|
19936
19937
|
OFFLINE_REPLAY_MESSAGE_REPLAYED: "Offline replay message replayed",
|
|
@@ -20846,6 +20847,7 @@ var init_sentry_logger = __esm({
|
|
|
20846
20847
|
LogEvent.AGENT_STREAM_ERROR,
|
|
20847
20848
|
LogEvent.AGENT_STREAM_RECOVERED,
|
|
20848
20849
|
LogEvent.AGENT_STREAM_RECOVERY_REPLAY_COMPLETED,
|
|
20850
|
+
LogEvent.AGENT_STREAM_RECOVERY_REPLAY_TERMINATED,
|
|
20849
20851
|
LogEvent.ADDRESS_SYNC_COMPLETED,
|
|
20850
20852
|
LogEvent.AGENTS_REFRESHED,
|
|
20851
20853
|
LogEvent.AGENTS_WAKEUP_NOTIFIED,
|
|
@@ -26932,7 +26934,7 @@ function buildConnectParams(config, instanceId, protocolVersion) {
|
|
|
26932
26934
|
client: {
|
|
26933
26935
|
id: "gateway-client",
|
|
26934
26936
|
displayName: "okx-a2a-node",
|
|
26935
|
-
version: "0.2.
|
|
26937
|
+
version: "0.2.9-beta-cb068eb2d0-260824220115",
|
|
26936
26938
|
platform: "node",
|
|
26937
26939
|
mode: "backend",
|
|
26938
26940
|
instanceId
|
|
@@ -26943,7 +26945,7 @@ function buildConnectParams(config, instanceId, protocolVersion) {
|
|
|
26943
26945
|
commands: [],
|
|
26944
26946
|
permissions: {},
|
|
26945
26947
|
locale: Intl.DateTimeFormat().resolvedOptions().locale || "en-US",
|
|
26946
|
-
userAgent: `okx-a2a-node/${"0.2.
|
|
26948
|
+
userAgent: `okx-a2a-node/${"0.2.9-beta-cb068eb2d0-260824220115"}`,
|
|
26947
26949
|
auth: {
|
|
26948
26950
|
...config.token ? { token: config.token } : {},
|
|
26949
26951
|
...config.password ? { password: config.password } : {}
|
|
@@ -28910,7 +28912,7 @@ var init_sentry_config = __esm({
|
|
|
28910
28912
|
environment = process.env.SENTRY_ENV === "dev" ? "dev" : "prod";
|
|
28911
28913
|
SENTRY_CONFIG = {
|
|
28912
28914
|
projectName: "okx/openclaw-okx-a2a-extension",
|
|
28913
|
-
release: "0.2.
|
|
28915
|
+
release: "0.2.9-beta-cb068eb2d0-260824220115",
|
|
28914
28916
|
environment,
|
|
28915
28917
|
runtimeContainer: normalizeRuntimeContainer(process.env.OKX_A2A_RUNTIME_CONTAINER)
|
|
28916
28918
|
};
|
|
@@ -40080,7 +40082,7 @@ async function exportDiagnosticLogs(options) {
|
|
|
40080
40082
|
node: process.version,
|
|
40081
40083
|
platform: process.platform,
|
|
40082
40084
|
arch: process.arch,
|
|
40083
|
-
packageVersion: true ? "0.2.
|
|
40085
|
+
packageVersion: true ? "0.2.9-beta-cb068eb2d0-260824220115" : "unknown",
|
|
40084
40086
|
sensitiveContentIncluded: options.includeSensitiveContent,
|
|
40085
40087
|
listenerAndLlmContentIncluded: true,
|
|
40086
40088
|
credentialsAlwaysRedacted: true,
|
|
@@ -57126,6 +57128,12 @@ function replayScanBackoffMs(consecutiveFailures) {
|
|
|
57126
57128
|
REPLAY_SCAN_MAX_BACKOFF_MS
|
|
57127
57129
|
);
|
|
57128
57130
|
}
|
|
57131
|
+
function replayScanBackoffWithJitterMs(consecutiveFailures, randomValue = Math.random()) {
|
|
57132
|
+
const baseMs = replayScanBackoffMs(consecutiveFailures);
|
|
57133
|
+
const boundedRandom = Math.min(1, Math.max(0, randomValue));
|
|
57134
|
+
const jitteredMs = Math.round(baseMs * (0.9 + boundedRandom * 0.2));
|
|
57135
|
+
return Math.min(REPLAY_SCAN_MAX_BACKOFF_MS, jitteredMs);
|
|
57136
|
+
}
|
|
57129
57137
|
function isOfflineReplayForTrigger(trigger) {
|
|
57130
57138
|
return trigger === "startup";
|
|
57131
57139
|
}
|
|
@@ -57312,6 +57320,7 @@ var init_xmtp_sdk = __esm({
|
|
|
57312
57320
|
replayScanFailuresByAddress = /* @__PURE__ */ new Map();
|
|
57313
57321
|
replayScanRetryByAddress = /* @__PURE__ */ new Map();
|
|
57314
57322
|
replayScanNowMs = () => Date.now();
|
|
57323
|
+
replayScanRandom = () => Math.random();
|
|
57315
57324
|
replayScanSetTimeout = (callback, delayMs) => setTimeout(callback, delayMs);
|
|
57316
57325
|
replayScanClearTimeout = (timer) => clearTimeout(timer);
|
|
57317
57326
|
inboundReplayGates = /* @__PURE__ */ new Map();
|
|
@@ -57798,7 +57807,7 @@ var init_xmtp_sdk = __esm({
|
|
|
57798
57807
|
this.clients.delete(address);
|
|
57799
57808
|
this.inboundReplayGates.delete(address.toLowerCase());
|
|
57800
57809
|
this.replayScanFailuresByAddress.delete(address.toLowerCase());
|
|
57801
|
-
this.clearReplayScanRetry(address);
|
|
57810
|
+
this.clearReplayScanRetry(address, "client_removed");
|
|
57802
57811
|
logger.info(LogEvent.AGENT_CLIENT_REMOVED, {
|
|
57803
57812
|
...agentExtras({
|
|
57804
57813
|
walletAddress: address,
|
|
@@ -58014,7 +58023,7 @@ var init_xmtp_sdk = __esm({
|
|
|
58014
58023
|
this.clients.delete(address);
|
|
58015
58024
|
this.inboundReplayGates.delete(addressKey);
|
|
58016
58025
|
this.replayScanFailuresByAddress.delete(addressKey);
|
|
58017
|
-
this.clearReplayScanRetry(address);
|
|
58026
|
+
this.clearReplayScanRetry(address, "client_recycled");
|
|
58018
58027
|
logWithTimestamp(
|
|
58019
58028
|
`[xmtp-sdk] recycle: stopped client: ${address} (agentId=${agentInfo.agentId})`
|
|
58020
58029
|
);
|
|
@@ -58564,7 +58573,23 @@ var init_xmtp_sdk = __esm({
|
|
|
58564
58573
|
this.clientGenerationByClient.set(client, generation);
|
|
58565
58574
|
return generation;
|
|
58566
58575
|
}
|
|
58567
|
-
|
|
58576
|
+
logStreamRecoveryReplayTerminal(address, clientGeneration, recoveryIdentities, terminalReason) {
|
|
58577
|
+
for (const recoverySequence of recoveryIdentities) {
|
|
58578
|
+
logger.info(LogEvent.AGENT_STREAM_RECOVERY_REPLAY_TERMINATED, {
|
|
58579
|
+
...agentExtras({
|
|
58580
|
+
walletAddress: address,
|
|
58581
|
+
onchainosAgentId: this.getAgentByAddress(address)?.agentId,
|
|
58582
|
+
role: this.getAgentByAddress(address)?.role
|
|
58583
|
+
}),
|
|
58584
|
+
clientGeneration: String(clientGeneration),
|
|
58585
|
+
recoverySequence,
|
|
58586
|
+
outcome: "terminal",
|
|
58587
|
+
replayOutcome: "terminated",
|
|
58588
|
+
terminalReason
|
|
58589
|
+
});
|
|
58590
|
+
}
|
|
58591
|
+
}
|
|
58592
|
+
clearReplayScanRetry(address, terminalReason) {
|
|
58568
58593
|
const addressKey = address.toLowerCase();
|
|
58569
58594
|
const scheduled = this.replayScanRetryByAddress.get(addressKey);
|
|
58570
58595
|
if (!scheduled) {
|
|
@@ -58572,15 +58597,31 @@ var init_xmtp_sdk = __esm({
|
|
|
58572
58597
|
}
|
|
58573
58598
|
this.replayScanRetryByAddress.delete(addressKey);
|
|
58574
58599
|
this.replayScanClearTimeout(scheduled.timer);
|
|
58600
|
+
if (terminalReason) {
|
|
58601
|
+
this.logStreamRecoveryReplayTerminal(
|
|
58602
|
+
address,
|
|
58603
|
+
scheduled.clientGeneration,
|
|
58604
|
+
scheduled.recoveryIdentities,
|
|
58605
|
+
terminalReason
|
|
58606
|
+
);
|
|
58607
|
+
}
|
|
58575
58608
|
}
|
|
58576
|
-
scheduleReplayScanRetry(address, expectedClient, clientGeneration, retryTrigger, delayMs) {
|
|
58609
|
+
scheduleReplayScanRetry(address, expectedClient, clientGeneration, retryTrigger, delayMs, recoveryIdentities = []) {
|
|
58577
58610
|
const addressKey = address.toLowerCase();
|
|
58578
58611
|
const scheduled = this.replayScanRetryByAddress.get(addressKey);
|
|
58579
58612
|
if (scheduled?.clientGeneration === clientGeneration) {
|
|
58613
|
+
if (retryTrigger === "stream_recovery") {
|
|
58614
|
+
scheduled.retryTrigger = retryTrigger;
|
|
58615
|
+
for (const recoveryIdentity of recoveryIdentities) {
|
|
58616
|
+
if (!scheduled.recoveryIdentities.includes(recoveryIdentity)) {
|
|
58617
|
+
scheduled.recoveryIdentities.push(recoveryIdentity);
|
|
58618
|
+
}
|
|
58619
|
+
}
|
|
58620
|
+
}
|
|
58580
58621
|
return;
|
|
58581
58622
|
}
|
|
58582
58623
|
if (scheduled) {
|
|
58583
|
-
this.clearReplayScanRetry(address);
|
|
58624
|
+
this.clearReplayScanRetry(address, "client_replaced");
|
|
58584
58625
|
}
|
|
58585
58626
|
const timer = this.replayScanSetTimeout(() => {
|
|
58586
58627
|
const current = this.replayScanRetryByAddress.get(addressKey);
|
|
@@ -58589,12 +58630,18 @@ var init_xmtp_sdk = __esm({
|
|
|
58589
58630
|
}
|
|
58590
58631
|
this.replayScanRetryByAddress.delete(addressKey);
|
|
58591
58632
|
if (this.clients.get(address) !== expectedClient || this.stoppedAddresses.has(addressKey)) {
|
|
58633
|
+
this.logStreamRecoveryReplayTerminal(
|
|
58634
|
+
address,
|
|
58635
|
+
current.clientGeneration,
|
|
58636
|
+
current.recoveryIdentities,
|
|
58637
|
+
this.stoppedAddresses.has(addressKey) ? "client_stopped" : "client_replaced"
|
|
58638
|
+
);
|
|
58592
58639
|
return;
|
|
58593
58640
|
}
|
|
58594
58641
|
void this.replayOfflineMessagesForAddressSingleFlight(
|
|
58595
58642
|
address,
|
|
58596
|
-
retryTrigger,
|
|
58597
|
-
|
|
58643
|
+
current.retryTrigger,
|
|
58644
|
+
current.recoveryIdentities.at(-1),
|
|
58598
58645
|
expectedClient
|
|
58599
58646
|
).catch((err2) => {
|
|
58600
58647
|
logWithTimestamp(
|
|
@@ -58615,6 +58662,8 @@ var init_xmtp_sdk = __esm({
|
|
|
58615
58662
|
timer.unref?.();
|
|
58616
58663
|
this.replayScanRetryByAddress.set(addressKey, {
|
|
58617
58664
|
clientGeneration,
|
|
58665
|
+
retryTrigger,
|
|
58666
|
+
recoveryIdentities: retryTrigger === "stream_recovery" ? [...new Set(recoveryIdentities)] : [],
|
|
58618
58667
|
timer
|
|
58619
58668
|
});
|
|
58620
58669
|
}
|
|
@@ -58901,7 +58950,7 @@ var init_xmtp_sdk = __esm({
|
|
|
58901
58950
|
String(recovery.recoverySequence),
|
|
58902
58951
|
agent
|
|
58903
58952
|
);
|
|
58904
|
-
if (summary.outcome === "completed" && !recoveryDisposed && this.clients.get(address) === agent) {
|
|
58953
|
+
if (summary.outcome === "completed" && summary.consecutiveFailures === void 0 && !recoveryDisposed && this.clients.get(address) === agent) {
|
|
58905
58954
|
logger.info(LogEvent.AGENT_STREAM_RECOVERY_REPLAY_COMPLETED, {
|
|
58906
58955
|
...agentExtras(identity),
|
|
58907
58956
|
clientGeneration: String(clientGeneration),
|
|
@@ -58998,10 +59047,16 @@ var init_xmtp_sdk = __esm({
|
|
|
58998
59047
|
let priorFailure = this.replayScanFailuresByAddress.get(addressKey);
|
|
58999
59048
|
if (priorFailure && priorFailure.clientGeneration !== clientGeneration) {
|
|
59000
59049
|
this.replayScanFailuresByAddress.delete(addressKey);
|
|
59001
|
-
this.clearReplayScanRetry(address);
|
|
59050
|
+
this.clearReplayScanRetry(address, "client_replaced");
|
|
59002
59051
|
priorFailure = void 0;
|
|
59003
59052
|
}
|
|
59004
59053
|
if (priorFailure && attemptNowMs < priorFailure.nextAttemptAtMs) {
|
|
59054
|
+
if (trigger === "stream_recovery") {
|
|
59055
|
+
priorFailure.retryTrigger = trigger;
|
|
59056
|
+
if (recoveryIdentity && !priorFailure.recoveryIdentities.includes(recoveryIdentity)) {
|
|
59057
|
+
priorFailure.recoveryIdentities.push(recoveryIdentity);
|
|
59058
|
+
}
|
|
59059
|
+
}
|
|
59005
59060
|
priorFailure.suppressedAttempts++;
|
|
59006
59061
|
summary.outcome = "suppressed_backoff";
|
|
59007
59062
|
summary.failureStage = priorFailure.lastFailureStage;
|
|
@@ -59018,7 +59073,8 @@ var init_xmtp_sdk = __esm({
|
|
|
59018
59073
|
agent,
|
|
59019
59074
|
clientGeneration,
|
|
59020
59075
|
priorFailure.retryTrigger,
|
|
59021
|
-
summary.backoffMs
|
|
59076
|
+
summary.backoffMs,
|
|
59077
|
+
priorFailure.recoveryIdentities
|
|
59022
59078
|
);
|
|
59023
59079
|
summary.durationMs = Date.now() - addressReplayStartedAt;
|
|
59024
59080
|
return summary;
|
|
@@ -59031,15 +59087,23 @@ var init_xmtp_sdk = __esm({
|
|
|
59031
59087
|
const recordScanFailure = (stage, err2) => {
|
|
59032
59088
|
const previous = this.replayScanFailuresByAddress.get(addressKey);
|
|
59033
59089
|
const consecutiveFailures = (previous?.consecutiveFailures ?? 0) + 1;
|
|
59034
|
-
const backoffMs =
|
|
59090
|
+
const backoffMs = replayScanBackoffWithJitterMs(
|
|
59091
|
+
consecutiveFailures,
|
|
59092
|
+
this.replayScanRandom()
|
|
59093
|
+
);
|
|
59035
59094
|
const suppressedAttempts = previous?.suppressedAttempts ?? 0;
|
|
59036
59095
|
const failureNowMs = this.replayScanNowMs();
|
|
59037
|
-
const
|
|
59096
|
+
const recoveryIdentities = [...previous?.recoveryIdentities ?? []];
|
|
59097
|
+
if (trigger === "stream_recovery" && recoveryIdentity && !recoveryIdentities.includes(recoveryIdentity)) {
|
|
59098
|
+
recoveryIdentities.push(recoveryIdentity);
|
|
59099
|
+
}
|
|
59100
|
+
const retryTrigger = trigger === "stream_recovery" ? trigger : previous?.retryTrigger ?? trigger;
|
|
59038
59101
|
this.replayScanFailuresByAddress.set(addressKey, {
|
|
59039
59102
|
clientGeneration,
|
|
59040
59103
|
consecutiveFailures,
|
|
59041
59104
|
nextAttemptAtMs: failureNowMs + backoffMs,
|
|
59042
59105
|
retryTrigger,
|
|
59106
|
+
recoveryIdentities,
|
|
59043
59107
|
suppressedAttempts: 0,
|
|
59044
59108
|
lastFailureStage: stage
|
|
59045
59109
|
});
|
|
@@ -59048,7 +59112,8 @@ var init_xmtp_sdk = __esm({
|
|
|
59048
59112
|
agent,
|
|
59049
59113
|
clientGeneration,
|
|
59050
59114
|
retryTrigger,
|
|
59051
|
-
backoffMs
|
|
59115
|
+
backoffMs,
|
|
59116
|
+
recoveryIdentities
|
|
59052
59117
|
);
|
|
59053
59118
|
summary.outcome = stage === "syncAll" ? "sync_failed" : "list_failed";
|
|
59054
59119
|
summary.failureStage = stage;
|
|
@@ -59245,6 +59310,30 @@ var init_xmtp_sdk = __esm({
|
|
|
59245
59310
|
recoveredAfterFailures: String(recoveredFailure?.consecutiveFailures ?? 0),
|
|
59246
59311
|
suppressedAttempts: String(recoveredFailure?.suppressedAttempts ?? 0)
|
|
59247
59312
|
});
|
|
59313
|
+
if (recoveredFailure) {
|
|
59314
|
+
for (const recoverySequence of recoveredFailure.recoveryIdentities) {
|
|
59315
|
+
logger.info(LogEvent.AGENT_STREAM_RECOVERY_REPLAY_COMPLETED, {
|
|
59316
|
+
...agentExtras({
|
|
59317
|
+
walletAddress: address,
|
|
59318
|
+
inboxId: agent.client?.inboxId,
|
|
59319
|
+
onchainosAgentId: this.getAgentByAddress(address)?.agentId,
|
|
59320
|
+
role: this.getAgentByAddress(address)?.role
|
|
59321
|
+
}),
|
|
59322
|
+
clientGeneration: String(clientGeneration),
|
|
59323
|
+
recoverySequence,
|
|
59324
|
+
replayed: String(summary.replayed),
|
|
59325
|
+
skipped: String(summary.skipped),
|
|
59326
|
+
conversationCount: String(summary.conversations),
|
|
59327
|
+
replayDurationMs: String(Date.now() - addressReplayStartedAt),
|
|
59328
|
+
outcome: "success",
|
|
59329
|
+
replayOutcome: "completed",
|
|
59330
|
+
recoveredAfterFailures: String(
|
|
59331
|
+
recoveredFailure.consecutiveFailures
|
|
59332
|
+
),
|
|
59333
|
+
suppressedAttempts: String(recoveredFailure.suppressedAttempts)
|
|
59334
|
+
});
|
|
59335
|
+
}
|
|
59336
|
+
}
|
|
59248
59337
|
summary.outcome = "completed";
|
|
59249
59338
|
summary.consecutiveFailures = recoveredFailure?.consecutiveFailures;
|
|
59250
59339
|
summary.suppressedAttempts = recoveredFailure?.suppressedAttempts;
|
|
@@ -68079,12 +68168,12 @@ async function runListenerWithLock(options, paths) {
|
|
|
68079
68168
|
});
|
|
68080
68169
|
}
|
|
68081
68170
|
});
|
|
68082
|
-
service.setPluginVersion("0.2.
|
|
68171
|
+
service.setPluginVersion("0.2.9-beta-cb068eb2d0-260824220115");
|
|
68083
68172
|
await service.init();
|
|
68084
68173
|
const pluginVersionStatus = service.pluginVersionStatus;
|
|
68085
68174
|
if (pluginVersionStatus.unavailable) {
|
|
68086
68175
|
throw new Error(
|
|
68087
|
-
`@okxweb3/a2a-node v${"0.2.
|
|
68176
|
+
`@okxweb3/a2a-node v${"0.2.9-beta-cb068eb2d0-260824220115"} is below the required minimum v${pluginVersionStatus.minVersion}`
|
|
68088
68177
|
);
|
|
68089
68178
|
}
|
|
68090
68179
|
const systemConfig = service.getSystemConfig();
|
|
@@ -68112,7 +68201,7 @@ async function runListenerWithLock(options, paths) {
|
|
|
68112
68201
|
onchainosAgentId: "*",
|
|
68113
68202
|
reason: "system-config missing sentryDsn",
|
|
68114
68203
|
pluginId: "@okxweb3/a2a-node",
|
|
68115
|
-
pluginVersion: "0.2.
|
|
68204
|
+
pluginVersion: "0.2.9-beta-cb068eb2d0-260824220115"
|
|
68116
68205
|
});
|
|
68117
68206
|
}
|
|
68118
68207
|
logWithTimestamp(
|
|
@@ -116519,7 +116608,7 @@ async function getCurrentNodeCliVersion() {
|
|
|
116519
116608
|
return await getGlobalNpmPackageVersion(UPDATE_PACKAGES.node) ?? getBundledNodeCliVersion();
|
|
116520
116609
|
}
|
|
116521
116610
|
function getBundledNodeCliVersion() {
|
|
116522
|
-
return true ? "0.2.
|
|
116611
|
+
return true ? "0.2.9-beta-cb068eb2d0-260824220115" : null;
|
|
116523
116612
|
}
|
|
116524
116613
|
function readConfiguredAiProvider() {
|
|
116525
116614
|
const explicit = process.env.OKX_A2A_AI_PROVIDER || process.env.OKX_AGENT_TASK_AI_CLI;
|
|
@@ -116729,7 +116818,7 @@ async function updateHermes(release, options) {
|
|
|
116729
116818
|
}
|
|
116730
116819
|
}
|
|
116731
116820
|
async function installGatewayPluginForDoctor(target) {
|
|
116732
|
-
const release = isPrereleaseVersion("0.2.
|
|
116821
|
+
const release = isPrereleaseVersion("0.2.9-beta-cb068eb2d0-260824220115") ? "beta" : "latest";
|
|
116733
116822
|
const insideTargetGateway = detectGatewayInvocation() === target;
|
|
116734
116823
|
const options = {
|
|
116735
116824
|
restart: !insideTargetGateway,
|
|
@@ -117782,7 +117871,7 @@ async function runDoctor(options = {}) {
|
|
|
117782
117871
|
platform: options.platform ?? process.platform,
|
|
117783
117872
|
env: options.env ?? process.env,
|
|
117784
117873
|
target: options.target ?? resolveDoctorTarget(options.env ?? process.env),
|
|
117785
|
-
cliVersion: options.cliVersion ?? (true ? "0.2.
|
|
117874
|
+
cliVersion: options.cliVersion ?? (true ? "0.2.9-beta-cb068eb2d0-260824220115" : "0.0.0"),
|
|
117786
117875
|
fixMode: options.fix === true,
|
|
117787
117876
|
nonInteractive: options.nonInteractive === true,
|
|
117788
117877
|
packageChanged: false,
|
|
@@ -118810,7 +118899,7 @@ init_sentry_config();
|
|
|
118810
118899
|
init_runtime_metadata();
|
|
118811
118900
|
var CURRENT_GATEWAY_SESSION_KEYS_ENV4 = "OKX_A2A_CURRENT_GATEWAY_SESSION_KEYS";
|
|
118812
118901
|
function printUsage3() {
|
|
118813
|
-
console.log(`okx-a2a ${"0.2.
|
|
118902
|
+
console.log(`okx-a2a ${"0.2.9-beta-cb068eb2d0-260824220115"}
|
|
118814
118903
|
|
|
118815
118904
|
Usage:
|
|
118816
118905
|
okx-a2a <command> [options]
|
|
@@ -118850,7 +118939,7 @@ Run \`okx-a2a <command> -h\` for command-specific help.
|
|
|
118850
118939
|
`);
|
|
118851
118940
|
}
|
|
118852
118941
|
function printVersion() {
|
|
118853
|
-
console.log("0.2.
|
|
118942
|
+
console.log("0.2.9-beta-cb068eb2d0-260824220115");
|
|
118854
118943
|
}
|
|
118855
118944
|
function printDaemonUsage() {
|
|
118856
118945
|
console.log(`Usage: okx-a2a daemon <start|restart|stop|status|autostart> [options]
|
|
@@ -120331,7 +120420,7 @@ async function main() {
|
|
|
120331
120420
|
if (command === "xmtp-test") {
|
|
120332
120421
|
const { handleXmtpTestCommand: handleXmtpTestCommand2 } = await Promise.resolve().then(() => (init_xmtp_test_cli(), xmtp_test_cli_exports));
|
|
120333
120422
|
await handleXmtpTestCommand2(process.argv.slice(3), {
|
|
120334
|
-
packageVersion: "0.2.
|
|
120423
|
+
packageVersion: "0.2.9-beta-cb068eb2d0-260824220115",
|
|
120335
120424
|
agentSdkVersion: "2.3.0",
|
|
120336
120425
|
nodeSdkVersion: "6.1.0",
|
|
120337
120426
|
nodeBindingsVersion: "1.11.0"
|
package/dist/index.js
CHANGED
|
@@ -19246,6 +19246,7 @@ var init_events = __esm({
|
|
|
19246
19246
|
AGENT_CLIENT_REMOVED: "Agent client removed",
|
|
19247
19247
|
AGENT_STREAM_RECOVERED: "Agent stream recovered",
|
|
19248
19248
|
AGENT_STREAM_RECOVERY_REPLAY_COMPLETED: "Agent stream recovery replay completed",
|
|
19249
|
+
AGENT_STREAM_RECOVERY_REPLAY_TERMINATED: "Agent stream recovery replay terminated",
|
|
19249
19250
|
ADDRESS_SYNC_COMPLETED: "Address sync completed",
|
|
19250
19251
|
AGENT_REFRESH_SESSION_EXPIRED: "Agent refresh aborted: onchainos session expired, local clients taken offline",
|
|
19251
19252
|
OFFLINE_REPLAY_MESSAGE_REPLAYED: "Offline replay message replayed",
|
|
@@ -20167,6 +20168,7 @@ var init_sentry_logger = __esm({
|
|
|
20167
20168
|
LogEvent.AGENT_STREAM_ERROR,
|
|
20168
20169
|
LogEvent.AGENT_STREAM_RECOVERED,
|
|
20169
20170
|
LogEvent.AGENT_STREAM_RECOVERY_REPLAY_COMPLETED,
|
|
20171
|
+
LogEvent.AGENT_STREAM_RECOVERY_REPLAY_TERMINATED,
|
|
20170
20172
|
LogEvent.ADDRESS_SYNC_COMPLETED,
|
|
20171
20173
|
LogEvent.AGENTS_REFRESHED,
|
|
20172
20174
|
LogEvent.AGENTS_WAKEUP_NOTIFIED,
|
|
@@ -32435,7 +32437,7 @@ var init_sentry_config = __esm({
|
|
|
32435
32437
|
environment = process.env.SENTRY_ENV === "dev" ? "dev" : "prod";
|
|
32436
32438
|
SENTRY_CONFIG = {
|
|
32437
32439
|
projectName: "okx/openclaw-okx-a2a-extension",
|
|
32438
|
-
release: "0.2.
|
|
32440
|
+
release: "0.2.9-beta-cb068eb2d0-260824220115",
|
|
32439
32441
|
environment,
|
|
32440
32442
|
runtimeContainer: normalizeRuntimeContainer(process.env.OKX_A2A_RUNTIME_CONTAINER)
|
|
32441
32443
|
};
|
|
@@ -33376,7 +33378,7 @@ async function getCurrentNodeCliVersion() {
|
|
|
33376
33378
|
return await getGlobalNpmPackageVersion(UPDATE_PACKAGES.node) ?? getBundledNodeCliVersion();
|
|
33377
33379
|
}
|
|
33378
33380
|
function getBundledNodeCliVersion() {
|
|
33379
|
-
return true ? "0.2.
|
|
33381
|
+
return true ? "0.2.9-beta-cb068eb2d0-260824220115" : null;
|
|
33380
33382
|
}
|
|
33381
33383
|
function readConfiguredAiProvider() {
|
|
33382
33384
|
const explicit = process.env.OKX_A2A_AI_PROVIDER || process.env.OKX_AGENT_TASK_AI_CLI;
|
|
@@ -33586,7 +33588,7 @@ async function updateHermes(release, options) {
|
|
|
33586
33588
|
}
|
|
33587
33589
|
}
|
|
33588
33590
|
async function installGatewayPluginForDoctor(target) {
|
|
33589
|
-
const release = isPrereleaseVersion("0.2.
|
|
33591
|
+
const release = isPrereleaseVersion("0.2.9-beta-cb068eb2d0-260824220115") ? "beta" : "latest";
|
|
33590
33592
|
const insideTargetGateway = detectGatewayInvocation() === target;
|
|
33591
33593
|
const options = {
|
|
33592
33594
|
restart: !insideTargetGateway,
|
|
@@ -44489,6 +44491,7 @@ __export(index_exports, {
|
|
|
44489
44491
|
releaseActiveDaemon: () => releaseActiveDaemon,
|
|
44490
44492
|
removeUserAttentionWatcher: () => removeUserAttentionWatcher,
|
|
44491
44493
|
replayScanBackoffMs: () => replayScanBackoffMs,
|
|
44494
|
+
replayScanBackoffWithJitterMs: () => replayScanBackoffWithJitterMs,
|
|
44492
44495
|
reportDoctorRunToSentry: () => reportDoctorRunToSentry,
|
|
44493
44496
|
reportUserNotificationFailure: () => reportUserNotificationFailure,
|
|
44494
44497
|
resetMessageEligibleOfflineReplayCapabilityForTests: () => resetMessageEligibleOfflineReplayCapabilityForTests,
|
|
@@ -56907,6 +56910,12 @@ function replayScanBackoffMs(consecutiveFailures) {
|
|
|
56907
56910
|
REPLAY_SCAN_MAX_BACKOFF_MS
|
|
56908
56911
|
);
|
|
56909
56912
|
}
|
|
56913
|
+
function replayScanBackoffWithJitterMs(consecutiveFailures, randomValue = Math.random()) {
|
|
56914
|
+
const baseMs = replayScanBackoffMs(consecutiveFailures);
|
|
56915
|
+
const boundedRandom = Math.min(1, Math.max(0, randomValue));
|
|
56916
|
+
const jitteredMs = Math.round(baseMs * (0.9 + boundedRandom * 0.2));
|
|
56917
|
+
return Math.min(REPLAY_SCAN_MAX_BACKOFF_MS, jitteredMs);
|
|
56918
|
+
}
|
|
56910
56919
|
function isOfflineReplayForTrigger(trigger) {
|
|
56911
56920
|
return trigger === "startup";
|
|
56912
56921
|
}
|
|
@@ -56945,6 +56954,7 @@ var XmtpService = class _XmtpService {
|
|
|
56945
56954
|
replayScanFailuresByAddress = /* @__PURE__ */ new Map();
|
|
56946
56955
|
replayScanRetryByAddress = /* @__PURE__ */ new Map();
|
|
56947
56956
|
replayScanNowMs = () => Date.now();
|
|
56957
|
+
replayScanRandom = () => Math.random();
|
|
56948
56958
|
replayScanSetTimeout = (callback, delayMs) => setTimeout(callback, delayMs);
|
|
56949
56959
|
replayScanClearTimeout = (timer) => clearTimeout(timer);
|
|
56950
56960
|
inboundReplayGates = /* @__PURE__ */ new Map();
|
|
@@ -57431,7 +57441,7 @@ var XmtpService = class _XmtpService {
|
|
|
57431
57441
|
this.clients.delete(address);
|
|
57432
57442
|
this.inboundReplayGates.delete(address.toLowerCase());
|
|
57433
57443
|
this.replayScanFailuresByAddress.delete(address.toLowerCase());
|
|
57434
|
-
this.clearReplayScanRetry(address);
|
|
57444
|
+
this.clearReplayScanRetry(address, "client_removed");
|
|
57435
57445
|
logger.info(LogEvent.AGENT_CLIENT_REMOVED, {
|
|
57436
57446
|
...agentExtras({
|
|
57437
57447
|
walletAddress: address,
|
|
@@ -57647,7 +57657,7 @@ var XmtpService = class _XmtpService {
|
|
|
57647
57657
|
this.clients.delete(address);
|
|
57648
57658
|
this.inboundReplayGates.delete(addressKey);
|
|
57649
57659
|
this.replayScanFailuresByAddress.delete(addressKey);
|
|
57650
|
-
this.clearReplayScanRetry(address);
|
|
57660
|
+
this.clearReplayScanRetry(address, "client_recycled");
|
|
57651
57661
|
logWithTimestamp(
|
|
57652
57662
|
`[xmtp-sdk] recycle: stopped client: ${address} (agentId=${agentInfo.agentId})`
|
|
57653
57663
|
);
|
|
@@ -58197,7 +58207,23 @@ var XmtpService = class _XmtpService {
|
|
|
58197
58207
|
this.clientGenerationByClient.set(client, generation);
|
|
58198
58208
|
return generation;
|
|
58199
58209
|
}
|
|
58200
|
-
|
|
58210
|
+
logStreamRecoveryReplayTerminal(address, clientGeneration, recoveryIdentities, terminalReason) {
|
|
58211
|
+
for (const recoverySequence of recoveryIdentities) {
|
|
58212
|
+
logger.info(LogEvent.AGENT_STREAM_RECOVERY_REPLAY_TERMINATED, {
|
|
58213
|
+
...agentExtras({
|
|
58214
|
+
walletAddress: address,
|
|
58215
|
+
onchainosAgentId: this.getAgentByAddress(address)?.agentId,
|
|
58216
|
+
role: this.getAgentByAddress(address)?.role
|
|
58217
|
+
}),
|
|
58218
|
+
clientGeneration: String(clientGeneration),
|
|
58219
|
+
recoverySequence,
|
|
58220
|
+
outcome: "terminal",
|
|
58221
|
+
replayOutcome: "terminated",
|
|
58222
|
+
terminalReason
|
|
58223
|
+
});
|
|
58224
|
+
}
|
|
58225
|
+
}
|
|
58226
|
+
clearReplayScanRetry(address, terminalReason) {
|
|
58201
58227
|
const addressKey = address.toLowerCase();
|
|
58202
58228
|
const scheduled = this.replayScanRetryByAddress.get(addressKey);
|
|
58203
58229
|
if (!scheduled) {
|
|
@@ -58205,15 +58231,31 @@ var XmtpService = class _XmtpService {
|
|
|
58205
58231
|
}
|
|
58206
58232
|
this.replayScanRetryByAddress.delete(addressKey);
|
|
58207
58233
|
this.replayScanClearTimeout(scheduled.timer);
|
|
58234
|
+
if (terminalReason) {
|
|
58235
|
+
this.logStreamRecoveryReplayTerminal(
|
|
58236
|
+
address,
|
|
58237
|
+
scheduled.clientGeneration,
|
|
58238
|
+
scheduled.recoveryIdentities,
|
|
58239
|
+
terminalReason
|
|
58240
|
+
);
|
|
58241
|
+
}
|
|
58208
58242
|
}
|
|
58209
|
-
scheduleReplayScanRetry(address, expectedClient, clientGeneration, retryTrigger, delayMs) {
|
|
58243
|
+
scheduleReplayScanRetry(address, expectedClient, clientGeneration, retryTrigger, delayMs, recoveryIdentities = []) {
|
|
58210
58244
|
const addressKey = address.toLowerCase();
|
|
58211
58245
|
const scheduled = this.replayScanRetryByAddress.get(addressKey);
|
|
58212
58246
|
if (scheduled?.clientGeneration === clientGeneration) {
|
|
58247
|
+
if (retryTrigger === "stream_recovery") {
|
|
58248
|
+
scheduled.retryTrigger = retryTrigger;
|
|
58249
|
+
for (const recoveryIdentity of recoveryIdentities) {
|
|
58250
|
+
if (!scheduled.recoveryIdentities.includes(recoveryIdentity)) {
|
|
58251
|
+
scheduled.recoveryIdentities.push(recoveryIdentity);
|
|
58252
|
+
}
|
|
58253
|
+
}
|
|
58254
|
+
}
|
|
58213
58255
|
return;
|
|
58214
58256
|
}
|
|
58215
58257
|
if (scheduled) {
|
|
58216
|
-
this.clearReplayScanRetry(address);
|
|
58258
|
+
this.clearReplayScanRetry(address, "client_replaced");
|
|
58217
58259
|
}
|
|
58218
58260
|
const timer = this.replayScanSetTimeout(() => {
|
|
58219
58261
|
const current = this.replayScanRetryByAddress.get(addressKey);
|
|
@@ -58222,12 +58264,18 @@ var XmtpService = class _XmtpService {
|
|
|
58222
58264
|
}
|
|
58223
58265
|
this.replayScanRetryByAddress.delete(addressKey);
|
|
58224
58266
|
if (this.clients.get(address) !== expectedClient || this.stoppedAddresses.has(addressKey)) {
|
|
58267
|
+
this.logStreamRecoveryReplayTerminal(
|
|
58268
|
+
address,
|
|
58269
|
+
current.clientGeneration,
|
|
58270
|
+
current.recoveryIdentities,
|
|
58271
|
+
this.stoppedAddresses.has(addressKey) ? "client_stopped" : "client_replaced"
|
|
58272
|
+
);
|
|
58225
58273
|
return;
|
|
58226
58274
|
}
|
|
58227
58275
|
void this.replayOfflineMessagesForAddressSingleFlight(
|
|
58228
58276
|
address,
|
|
58229
|
-
retryTrigger,
|
|
58230
|
-
|
|
58277
|
+
current.retryTrigger,
|
|
58278
|
+
current.recoveryIdentities.at(-1),
|
|
58231
58279
|
expectedClient
|
|
58232
58280
|
).catch((err) => {
|
|
58233
58281
|
logWithTimestamp(
|
|
@@ -58248,6 +58296,8 @@ var XmtpService = class _XmtpService {
|
|
|
58248
58296
|
timer.unref?.();
|
|
58249
58297
|
this.replayScanRetryByAddress.set(addressKey, {
|
|
58250
58298
|
clientGeneration,
|
|
58299
|
+
retryTrigger,
|
|
58300
|
+
recoveryIdentities: retryTrigger === "stream_recovery" ? [...new Set(recoveryIdentities)] : [],
|
|
58251
58301
|
timer
|
|
58252
58302
|
});
|
|
58253
58303
|
}
|
|
@@ -58534,7 +58584,7 @@ var XmtpService = class _XmtpService {
|
|
|
58534
58584
|
String(recovery.recoverySequence),
|
|
58535
58585
|
agent
|
|
58536
58586
|
);
|
|
58537
|
-
if (summary.outcome === "completed" && !recoveryDisposed && this.clients.get(address) === agent) {
|
|
58587
|
+
if (summary.outcome === "completed" && summary.consecutiveFailures === void 0 && !recoveryDisposed && this.clients.get(address) === agent) {
|
|
58538
58588
|
logger.info(LogEvent.AGENT_STREAM_RECOVERY_REPLAY_COMPLETED, {
|
|
58539
58589
|
...agentExtras(identity),
|
|
58540
58590
|
clientGeneration: String(clientGeneration),
|
|
@@ -58631,10 +58681,16 @@ var XmtpService = class _XmtpService {
|
|
|
58631
58681
|
let priorFailure = this.replayScanFailuresByAddress.get(addressKey);
|
|
58632
58682
|
if (priorFailure && priorFailure.clientGeneration !== clientGeneration) {
|
|
58633
58683
|
this.replayScanFailuresByAddress.delete(addressKey);
|
|
58634
|
-
this.clearReplayScanRetry(address);
|
|
58684
|
+
this.clearReplayScanRetry(address, "client_replaced");
|
|
58635
58685
|
priorFailure = void 0;
|
|
58636
58686
|
}
|
|
58637
58687
|
if (priorFailure && attemptNowMs < priorFailure.nextAttemptAtMs) {
|
|
58688
|
+
if (trigger === "stream_recovery") {
|
|
58689
|
+
priorFailure.retryTrigger = trigger;
|
|
58690
|
+
if (recoveryIdentity && !priorFailure.recoveryIdentities.includes(recoveryIdentity)) {
|
|
58691
|
+
priorFailure.recoveryIdentities.push(recoveryIdentity);
|
|
58692
|
+
}
|
|
58693
|
+
}
|
|
58638
58694
|
priorFailure.suppressedAttempts++;
|
|
58639
58695
|
summary.outcome = "suppressed_backoff";
|
|
58640
58696
|
summary.failureStage = priorFailure.lastFailureStage;
|
|
@@ -58651,7 +58707,8 @@ var XmtpService = class _XmtpService {
|
|
|
58651
58707
|
agent,
|
|
58652
58708
|
clientGeneration,
|
|
58653
58709
|
priorFailure.retryTrigger,
|
|
58654
|
-
summary.backoffMs
|
|
58710
|
+
summary.backoffMs,
|
|
58711
|
+
priorFailure.recoveryIdentities
|
|
58655
58712
|
);
|
|
58656
58713
|
summary.durationMs = Date.now() - addressReplayStartedAt;
|
|
58657
58714
|
return summary;
|
|
@@ -58664,15 +58721,23 @@ var XmtpService = class _XmtpService {
|
|
|
58664
58721
|
const recordScanFailure = (stage, err) => {
|
|
58665
58722
|
const previous = this.replayScanFailuresByAddress.get(addressKey);
|
|
58666
58723
|
const consecutiveFailures = (previous?.consecutiveFailures ?? 0) + 1;
|
|
58667
|
-
const backoffMs =
|
|
58724
|
+
const backoffMs = replayScanBackoffWithJitterMs(
|
|
58725
|
+
consecutiveFailures,
|
|
58726
|
+
this.replayScanRandom()
|
|
58727
|
+
);
|
|
58668
58728
|
const suppressedAttempts = previous?.suppressedAttempts ?? 0;
|
|
58669
58729
|
const failureNowMs = this.replayScanNowMs();
|
|
58670
|
-
const
|
|
58730
|
+
const recoveryIdentities = [...previous?.recoveryIdentities ?? []];
|
|
58731
|
+
if (trigger === "stream_recovery" && recoveryIdentity && !recoveryIdentities.includes(recoveryIdentity)) {
|
|
58732
|
+
recoveryIdentities.push(recoveryIdentity);
|
|
58733
|
+
}
|
|
58734
|
+
const retryTrigger = trigger === "stream_recovery" ? trigger : previous?.retryTrigger ?? trigger;
|
|
58671
58735
|
this.replayScanFailuresByAddress.set(addressKey, {
|
|
58672
58736
|
clientGeneration,
|
|
58673
58737
|
consecutiveFailures,
|
|
58674
58738
|
nextAttemptAtMs: failureNowMs + backoffMs,
|
|
58675
58739
|
retryTrigger,
|
|
58740
|
+
recoveryIdentities,
|
|
58676
58741
|
suppressedAttempts: 0,
|
|
58677
58742
|
lastFailureStage: stage
|
|
58678
58743
|
});
|
|
@@ -58681,7 +58746,8 @@ var XmtpService = class _XmtpService {
|
|
|
58681
58746
|
agent,
|
|
58682
58747
|
clientGeneration,
|
|
58683
58748
|
retryTrigger,
|
|
58684
|
-
backoffMs
|
|
58749
|
+
backoffMs,
|
|
58750
|
+
recoveryIdentities
|
|
58685
58751
|
);
|
|
58686
58752
|
summary.outcome = stage === "syncAll" ? "sync_failed" : "list_failed";
|
|
58687
58753
|
summary.failureStage = stage;
|
|
@@ -58878,6 +58944,30 @@ var XmtpService = class _XmtpService {
|
|
|
58878
58944
|
recoveredAfterFailures: String(recoveredFailure?.consecutiveFailures ?? 0),
|
|
58879
58945
|
suppressedAttempts: String(recoveredFailure?.suppressedAttempts ?? 0)
|
|
58880
58946
|
});
|
|
58947
|
+
if (recoveredFailure) {
|
|
58948
|
+
for (const recoverySequence of recoveredFailure.recoveryIdentities) {
|
|
58949
|
+
logger.info(LogEvent.AGENT_STREAM_RECOVERY_REPLAY_COMPLETED, {
|
|
58950
|
+
...agentExtras({
|
|
58951
|
+
walletAddress: address,
|
|
58952
|
+
inboxId: agent.client?.inboxId,
|
|
58953
|
+
onchainosAgentId: this.getAgentByAddress(address)?.agentId,
|
|
58954
|
+
role: this.getAgentByAddress(address)?.role
|
|
58955
|
+
}),
|
|
58956
|
+
clientGeneration: String(clientGeneration),
|
|
58957
|
+
recoverySequence,
|
|
58958
|
+
replayed: String(summary.replayed),
|
|
58959
|
+
skipped: String(summary.skipped),
|
|
58960
|
+
conversationCount: String(summary.conversations),
|
|
58961
|
+
replayDurationMs: String(Date.now() - addressReplayStartedAt),
|
|
58962
|
+
outcome: "success",
|
|
58963
|
+
replayOutcome: "completed",
|
|
58964
|
+
recoveredAfterFailures: String(
|
|
58965
|
+
recoveredFailure.consecutiveFailures
|
|
58966
|
+
),
|
|
58967
|
+
suppressedAttempts: String(recoveredFailure.suppressedAttempts)
|
|
58968
|
+
});
|
|
58969
|
+
}
|
|
58970
|
+
}
|
|
58881
58971
|
summary.outcome = "completed";
|
|
58882
58972
|
summary.consecutiveFailures = recoveredFailure?.consecutiveFailures;
|
|
58883
58973
|
summary.suppressedAttempts = recoveredFailure?.suppressedAttempts;
|
|
@@ -60933,7 +61023,7 @@ function buildConnectParams(config, instanceId, protocolVersion) {
|
|
|
60933
61023
|
client: {
|
|
60934
61024
|
id: "gateway-client",
|
|
60935
61025
|
displayName: "okx-a2a-node",
|
|
60936
|
-
version: "0.2.
|
|
61026
|
+
version: "0.2.9-beta-cb068eb2d0-260824220115",
|
|
60937
61027
|
platform: "node",
|
|
60938
61028
|
mode: "backend",
|
|
60939
61029
|
instanceId
|
|
@@ -60944,7 +61034,7 @@ function buildConnectParams(config, instanceId, protocolVersion) {
|
|
|
60944
61034
|
commands: [],
|
|
60945
61035
|
permissions: {},
|
|
60946
61036
|
locale: Intl.DateTimeFormat().resolvedOptions().locale || "en-US",
|
|
60947
|
-
userAgent: `okx-a2a-node/${"0.2.
|
|
61037
|
+
userAgent: `okx-a2a-node/${"0.2.9-beta-cb068eb2d0-260824220115"}`,
|
|
60948
61038
|
auth: {
|
|
60949
61039
|
...config.token ? { token: config.token } : {},
|
|
60950
61040
|
...config.password ? { password: config.password } : {}
|
|
@@ -67172,12 +67262,12 @@ async function runListenerWithLock(options, paths) {
|
|
|
67172
67262
|
});
|
|
67173
67263
|
}
|
|
67174
67264
|
});
|
|
67175
|
-
service.setPluginVersion("0.2.
|
|
67265
|
+
service.setPluginVersion("0.2.9-beta-cb068eb2d0-260824220115");
|
|
67176
67266
|
await service.init();
|
|
67177
67267
|
const pluginVersionStatus = service.pluginVersionStatus;
|
|
67178
67268
|
if (pluginVersionStatus.unavailable) {
|
|
67179
67269
|
throw new Error(
|
|
67180
|
-
`@okxweb3/a2a-node v${"0.2.
|
|
67270
|
+
`@okxweb3/a2a-node v${"0.2.9-beta-cb068eb2d0-260824220115"} is below the required minimum v${pluginVersionStatus.minVersion}`
|
|
67181
67271
|
);
|
|
67182
67272
|
}
|
|
67183
67273
|
const systemConfig = service.getSystemConfig();
|
|
@@ -67205,7 +67295,7 @@ async function runListenerWithLock(options, paths) {
|
|
|
67205
67295
|
onchainosAgentId: "*",
|
|
67206
67296
|
reason: "system-config missing sentryDsn",
|
|
67207
67297
|
pluginId: "@okxweb3/a2a-node",
|
|
67208
|
-
pluginVersion: "0.2.
|
|
67298
|
+
pluginVersion: "0.2.9-beta-cb068eb2d0-260824220115"
|
|
67209
67299
|
});
|
|
67210
67300
|
}
|
|
67211
67301
|
logWithTimestamp(
|
|
@@ -69906,7 +69996,7 @@ async function exportDiagnosticLogs(options) {
|
|
|
69906
69996
|
node: process.version,
|
|
69907
69997
|
platform: process.platform,
|
|
69908
69998
|
arch: process.arch,
|
|
69909
|
-
packageVersion: true ? "0.2.
|
|
69999
|
+
packageVersion: true ? "0.2.9-beta-cb068eb2d0-260824220115" : "unknown",
|
|
69910
70000
|
sensitiveContentIncluded: options.includeSensitiveContent,
|
|
69911
70001
|
listenerAndLlmContentIncluded: true,
|
|
69912
70002
|
credentialsAlwaysRedacted: true,
|
|
@@ -71788,7 +71878,7 @@ async function runDoctor(options = {}) {
|
|
|
71788
71878
|
platform: options.platform ?? process.platform,
|
|
71789
71879
|
env: options.env ?? process.env,
|
|
71790
71880
|
target: options.target ?? resolveDoctorTarget(options.env ?? process.env),
|
|
71791
|
-
cliVersion: options.cliVersion ?? (true ? "0.2.
|
|
71881
|
+
cliVersion: options.cliVersion ?? (true ? "0.2.9-beta-cb068eb2d0-260824220115" : "0.0.0"),
|
|
71792
71882
|
fixMode: options.fix === true,
|
|
71793
71883
|
nonInteractive: options.nonInteractive === true,
|
|
71794
71884
|
packageChanged: false,
|
|
@@ -72216,6 +72306,7 @@ init_autostart_windows();
|
|
|
72216
72306
|
releaseActiveDaemon,
|
|
72217
72307
|
removeUserAttentionWatcher,
|
|
72218
72308
|
replayScanBackoffMs,
|
|
72309
|
+
replayScanBackoffWithJitterMs,
|
|
72219
72310
|
reportDoctorRunToSentry,
|
|
72220
72311
|
reportUserNotificationFailure,
|
|
72221
72312
|
resetMessageEligibleOfflineReplayCapabilityForTests,
|
package/package.json
CHANGED