echoclaw-relay-agent 0.28.0 → 0.28.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -5164,7 +5164,9 @@ var HeartbeatScheduler = class {
5164
5164
  cancelled: false,
5165
5165
  delayTimer: null,
5166
5166
  intervalTimer: null,
5167
- maxTimer: null
5167
+ maxTimer: null,
5168
+ firstEmitted: false,
5169
+ prevSignal: null
5168
5170
  };
5169
5171
  this._runs.set(key, entry);
5170
5172
  entry.delayTimer = setTimeout(() => {
@@ -5221,7 +5223,15 @@ var HeartbeatScheduler = class {
5221
5223
  /** Emit a single heartbeat for an entry. */
5222
5224
  _emitOne(entry) {
5223
5225
  const heartbeat = this._engine.buildHeartbeat(entry.runId, entry.scope);
5224
- if (heartbeat) this._emit(heartbeat);
5226
+ if (!heartbeat) return;
5227
+ if (!entry.firstEmitted) {
5228
+ console.log(` [heartbeat] ${entry.scope} start: ${heartbeat.activity.kind} (${entry.runId.slice(0, 8)})`);
5229
+ entry.firstEmitted = true;
5230
+ } else if (heartbeat.signal !== entry.prevSignal && (heartbeat.signal === "stalled" || heartbeat.signal === "recovered")) {
5231
+ console.log(` [heartbeat] ${entry.scope} ${heartbeat.signal}: silent=${heartbeat.silentDurationSec}s (${entry.runId.slice(0, 8)})`);
5232
+ }
5233
+ entry.prevSignal = heartbeat.signal;
5234
+ this._emit(heartbeat);
5225
5235
  }
5226
5236
  };
5227
5237
 
@@ -5802,6 +5812,7 @@ var ChatHandler = class _ChatHandler {
5802
5812
  if (!this._taskAckSentRuns.has(ackKey)) {
5803
5813
  const earlyAck = parseTaskAckMarker(messageText);
5804
5814
  if (earlyAck) {
5815
+ console.log(` [chat] CLAW_TASK_ACK: appId=${earlyAck.appId} op=${earlyAck.op} status=${earlyAck.status}`);
5805
5816
  this._taskAckSentRuns.add(ackKey);
5806
5817
  this._sendVia(sendBack, {
5807
5818
  type: "task_ack",
@@ -5856,6 +5867,7 @@ var ChatHandler = class _ChatHandler {
5856
5867
  if (!replyText) replyText = finalText;
5857
5868
  const ready = parseAppReadyMarker(finalText);
5858
5869
  if (ready) {
5870
+ console.log(` [chat] CLAW_APP_READY: appId=${ready.appId} op=${ready.op}`);
5859
5871
  this._handleAppReady(ready, runId, sendBack).catch(() => {
5860
5872
  });
5861
5873
  }
@@ -6025,6 +6037,7 @@ var ChatHandler = class _ChatHandler {
6025
6037
  const name = typeof data?.name === "string" ? data.name : "";
6026
6038
  if (phase === "start") {
6027
6039
  const detail = this._extractToolDetail(name, data.args);
6040
+ console.log(` [chat] tool_start: ${name}${detail ? " \u2014 " + detail.slice(0, 60) : ""}`);
6028
6041
  this._statusEngine.pushSignal({
6029
6042
  activity: "tool_start",
6030
6043
  runId,
@@ -6041,6 +6054,7 @@ var ChatHandler = class _ChatHandler {
6041
6054
  }).catch(() => {
6042
6055
  });
6043
6056
  } else if (phase === "result") {
6057
+ console.log(` [chat] tool_result: ${name}${data.isError ? " (ERROR)" : ""}`);
6044
6058
  this._statusEngine.pushSignal({
6045
6059
  activity: "tool_result",
6046
6060
  runId,
package/dist/cli.js CHANGED
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  AgentCore,
4
4
  RelayAgent
5
- } from "./chunk-KQ25ZB2L.js";
5
+ } from "./chunk-UTNUMWK4.js";
6
6
  import "./chunk-STI2237I.js";
7
7
 
8
8
  // src/service/platform.ts
package/dist/index.js CHANGED
@@ -18,7 +18,7 @@ import {
18
18
  TokenDiscovery,
19
19
  buildAppRequestPrompt,
20
20
  restartOpenClaw
21
- } from "./chunk-KQ25ZB2L.js";
21
+ } from "./chunk-UTNUMWK4.js";
22
22
  import {
23
23
  SessionStore
24
24
  } from "./chunk-STI2237I.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "echoclaw-relay-agent",
3
- "version": "0.28.0",
3
+ "version": "0.28.1",
4
4
  "description": "EchoClaw Relay Connection — E2E encrypted relay transport, pairing, and session management",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",