diff --git a/specification.md b/specification.md index ebf0f61..b8a8de6 100644 --- a/specification.md +++ b/specification.md @@ -390,8 +390,9 @@ The instance_uid field is a globally unique identifier of the running instance of the Agent. The Agent SHOULD self-generate this identifier and make the best effort to avoid creating an identifier that may conflict with identifiers created by other Agents. The instance_uid SHOULD remain unchanged for the -lifetime of the Agent process. The recommended format for the instance_uid is -[ULID](https://github.com/ulid/spec). +lifetime of the Agent process. The instance_uid MUST be a +[ULID](https://github.com/ulid/spec) formatted as a 26 character string in canonical +representation. In case the Agent wants to use an identifier generated by the Server, the field SHOULD be set with a temporary value and RequestInstanceUid flag MUST be set. @@ -660,7 +661,9 @@ enum ServerCapabilities { Properties related to identification of the Agent, which can be overriden by the Server if needed. When new_instance_uid is set, Agent MUST update instance_uid -to the value provided and use it for all further communication. +to the value provided and use it for all further communication. The new_instance_uid MUST +be a [ULID](https://github.com/ulid/spec) formatted as a 26 character string in canonical +representation. ```protobuf message AgentIdentification {