@adhdev/daemon-standalone 0.9.82-rc.389 → 0.9.82-rc.390

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 CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adhdev/daemon-standalone",
3
- "version": "0.9.82-rc.389",
3
+ "version": "0.9.82-rc.390",
4
4
  "description": "ADHDev standalone daemon — embedded HTTP/WS server for local dashboard",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
@@ -2770,26 +2770,37 @@ async function drainCoordinatorPendingEvents(ctx, opts) {
2770
2770
  const requestedNodeIds = opts?.nodeIds?.length ? new Set(opts.nodeIds) : null;
2771
2771
  const matchesCurrentMesh = (event) => readString(event?.meshId) === ctx.mesh.id;
2772
2772
  if (ctx.transport instanceof IpcTransport) {
2773
+ const transport = ctx.transport;
2773
2774
  const surfacedEvents = [];
2774
2775
  const coordinatorDaemonId = readString(ctx.localDaemonId);
2775
2776
  const pendingEventArgs = {
2776
2777
  meshId: ctx.mesh.id,
2777
2778
  ...coordinatorDaemonId ? { coordinatorDaemonId } : {}
2778
2779
  };
2779
- try {
2780
- const localEvents = normalizePendingMeshCoordinatorEvents(await ctx.transport.command("get_pending_mesh_events", pendingEventArgs)).filter(matchesCurrentMesh);
2780
+ const drainLocalToSurface = async () => {
2781
+ const raw = await transport.command("get_pending_mesh_events", pendingEventArgs);
2782
+ const hasLiveCliCoordinator = unwrapCommandPayload(raw)?.hasLiveCliCoordinator === true || raw?.hasLiveCliCoordinator === true;
2783
+ const localEvents = normalizePendingMeshCoordinatorEvents(raw).filter(matchesCurrentMesh);
2781
2784
  for (const event of localEvents) {
2782
2785
  const payload = buildMeshForwardPayloadFromPendingEvent(event);
2783
2786
  if (!payload.event || !payload.meshId) continue;
2787
+ if (!hasLiveCliCoordinator) {
2788
+ rememberMeshSessionProviderMetadataFromEvent({ ...event, metadataEvent: payload });
2789
+ surfacedEvents.push(event);
2790
+ continue;
2791
+ }
2784
2792
  let injected = false;
2785
2793
  try {
2786
- await ctx.transport.command("mesh_forward_event", payload);
2794
+ await transport.command("mesh_forward_event", payload);
2787
2795
  injected = true;
2788
2796
  } catch {
2789
2797
  }
2790
2798
  rememberMeshSessionProviderMetadataFromEvent({ ...event, metadataEvent: payload });
2791
2799
  if (!injected) surfacedEvents.push(event);
2792
2800
  }
2801
+ };
2802
+ try {
2803
+ await drainLocalToSurface();
2793
2804
  } catch {
2794
2805
  }
2795
2806
  for (const node of ctx.mesh.nodes) {
@@ -2797,32 +2808,20 @@ async function drainCoordinatorPendingEvents(ctx, opts) {
2797
2808
  if (requestedNodeIds && !requestedNodeIds.has(node.id)) continue;
2798
2809
  try {
2799
2810
  const remoteEvents = normalizePendingMeshCoordinatorEvents(
2800
- await ctx.transport.meshCommand(node.daemonId, "get_pending_mesh_events", pendingEventArgs)
2811
+ await transport.meshCommand(node.daemonId, "get_pending_mesh_events", pendingEventArgs)
2801
2812
  ).filter(matchesCurrentMesh);
2802
2813
  if (remoteEvents.length === 0) continue;
2803
2814
  for (const event of remoteEvents) {
2804
2815
  const payload = buildMeshForwardPayloadFromPendingEvent(event);
2805
2816
  if (!payload.event || !payload.meshId) continue;
2806
- await ctx.transport.command("mesh_forward_event", payload);
2817
+ await transport.command("mesh_forward_event", payload);
2807
2818
  rememberMeshSessionProviderMetadataFromEvent({ ...event, metadataEvent: payload });
2808
2819
  }
2809
2820
  } catch {
2810
2821
  }
2811
2822
  }
2812
2823
  try {
2813
- const localEvents = normalizePendingMeshCoordinatorEvents(await ctx.transport.command("get_pending_mesh_events", pendingEventArgs)).filter(matchesCurrentMesh);
2814
- for (const event of localEvents) {
2815
- const payload = buildMeshForwardPayloadFromPendingEvent(event);
2816
- if (!payload.event || !payload.meshId) continue;
2817
- let injected = false;
2818
- try {
2819
- await ctx.transport.command("mesh_forward_event", payload);
2820
- injected = true;
2821
- } catch {
2822
- }
2823
- rememberMeshSessionProviderMetadataFromEvent({ ...event, metadataEvent: payload });
2824
- if (!injected) surfacedEvents.push(event);
2825
- }
2824
+ await drainLocalToSurface();
2826
2825
  } catch {
2827
2826
  }
2828
2827
  return surfacedEvents;