File tree Expand file tree Collapse file tree 1 file changed +11
-2
lines changed
Expand file tree Collapse file tree 1 file changed +11
-2
lines changed Original file line number Diff line number Diff line change @@ -190,6 +190,11 @@ func (c *ClientCommon) PrepareStart(
190190 c .ClientSyncedState .SetConnectionSettingsStatus (settings .LastConnectionSettingsStatus )
191191 }
192192
193+ // Validate capabilities after initializing the client state.
194+ if err := c .validateCapabilities (c .ClientSyncedState .Capabilities ()); err != nil {
195+ return err
196+ }
197+
193198 return nil
194199}
195200
@@ -547,8 +552,12 @@ func (c *ClientCommon) SetCapabilities(capabilities *protobufs.AgentCapabilities
547552 }
548553 // According to OpAMP spec this capability MUST be set, since all Agents MUST report status.
549554 * capabilities |= protobufs .AgentCapabilities_AgentCapabilities_ReportsStatus
550- if validateErr := c .validateCapabilities (* capabilities ); validateErr != nil {
551- return validateErr
555+
556+ // Only validate capabilities if we have already started.
557+ if c .isStarted {
558+ if validateErr := c .validateCapabilities (* capabilities ); validateErr != nil {
559+ return validateErr
560+ }
552561 }
553562 // store the capabilities to send
554563 if err := c .ClientSyncedState .SetCapabilities (capabilities ); err != nil {
You can’t perform that action at this time.
0 commit comments