@@ -2,6 +2,7 @@ package server
22
33import (
44 "encoding/json"
5+ "errors"
56 "fmt"
67 "log/slog"
78
@@ -85,13 +86,18 @@ func wrapEvent(ev any) *pubsub.Payload {
8586 Payload: fileToProto(e.Payload),
8687 })
8788 case pubsub.Event[notify.Notification]:
89+ payload := proto.AgentEvent{
90+ SessionID: e.Payload.SessionID,
91+ SessionTitle: e.Payload.SessionTitle,
92+ Type: proto.AgentEventType(e.Payload.Type),
93+ }
94+ if e.Payload.Type == notify.TypeAgentError {
95+ payload.Type = proto.AgentEventTypeError
96+ payload.Error = errors.New(e.Payload.Message)
97+ }
8898 return envelope(pubsub.PayloadTypeAgentEvent, pubsub.Event[proto.AgentEvent]{
89− Type: e.Type,
90− Payload: proto.AgentEvent{
91− SessionID: e.Payload.SessionID,
92− SessionTitle: e.Payload.SessionTitle,
93− Type: proto.AgentEventType(e.Payload.Type),
94− },
99+ Type: e.Type,
100+ Payload: payload,
95101 })
96102 case pubsub.Event[notify.RunComplete]:
97103 return envelope(pubsub.PayloadTypeRunComplete, pubsub.Event[proto.RunComplete]{