a2aproject / a2aproject/a2a-java

[Bug]: pushnotification is not support order-preserving of update event

Đang mở
#775 1 bình luận 0 reaction 1 người được giao Được @perhaps468 nhận Xem trên GitHub
Ngôn ngữ chính
Java
Star
490
Fork
172
Merge trung bình
1 ngày 6 giờ
Pull request đã merge (30 ngày)
55

Mô tả

### What happened?

when status update or artifact update is sent through push notification, the request agent may not receivee those event in the order it produce. here is the code:

at MainEventBusProcessor.java line 337-357,the notification is sent asynchronous, regardless of whether the sending succeeds or fails. it may cause the wrong order of the event queue.
private void sendPushNotification(String taskId, StreamingEventKind event) {
Runnable pushTask = () -> {
try {
if (event != null) {
LOGGER.debug("Sending push notification for task {}", taskId);
pushSender.sendNotification(event);
} else {
LOGGER.debug("Skipping push notification - event is null for task {}", taskId);
}
} catch (Exception e) {
LOGGER.error("Error sending push notification for task {}", taskId, e);
// Don't rethrow - push notifications are best-effort
}
};

// Use custom executor if set (for tests), otherwise use default ForkJoinPool (async)
if (pushNotificationExecutor != null) {
pushNotificationExecutor.execute(pushTask);
} else {
CompletableFuture.runAsync(pushTask);
}
}

### Relevant log output

```shell

```

### Code of Conduct

- [x] I agree to follow this project's Code of Conduct

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.