@@ -52,9 +52,9 @@ type Mode interface {
5252// --- GSOC Ephemeral Mode (mode 1) ---
5353
5454const (
55- // Message types (Broker → Subscriber)
56- MsgTypeHandshake byte = 0x01
57- MsgTypeData byte = 0x02
55+ // Mode-specific message types (Broker → Subscriber); 0x01 is reserved for service-level ping.
56+ MsgTypeHandshake byte = 0x02
57+ MsgTypeData byte = 0x03
5858)
5959
6060// GSOCEphemeralMode implements Mode for GSOC ephemeral messaging.
@@ -121,7 +121,7 @@ func (m *GSOCEphemeralMode) validatePublisher(headers p2p.Headers) error {
121121// First delivery to each subscriber includes a handshake with SOC identity; subsequent are data-only.
122122func (m * GSOCEphemeralMode ) formatBroadcast (sub * brokerSubscriber , rawMsg []byte ) []byte {
123123 if ! sub .handshakeHappened {
124- // Handshake: [1B type=0x01 ][32B SOC ID][20B owner][65B sig][8B span][NB payload]
124+ // Handshake: [1B type=0x02 ][32B SOC ID][20B owner][65B sig][8B span][NB payload]
125125 msg := make ([]byte , 1 + IDSize + OwnerSize + len (rawMsg ))
126126 msg [0 ] = MsgTypeHandshake
127127 copy (msg [1 :1 + IDSize ], m .gsocID )
@@ -131,7 +131,7 @@ func (m *GSOCEphemeralMode) formatBroadcast(sub *brokerSubscriber, rawMsg []byte
131131 return msg
132132 }
133133
134- // Data: [1B type=0x02 ][65B sig][8B span][NB payload]
134+ // Data: [1B type=0x03 ][65B sig][8B span][NB payload]
135135 msg := make ([]byte , 1 + len (rawMsg ))
136136 msg [0 ] = MsgTypeData
137137 copy (msg [1 :], rawMsg )
0 commit comments