code: func ContextIdentity(ctx context.Context) (*uuid.UUID, error) {
  	tm := tokencontext.ReadTokenManagerFromContext(ctx)
  	if tm == nil {
  		log.Error(ctx, map[string]interface{}{
  			"token": tm,
  		}, "missing token manager")
  
  		return nil, errs.New("Missing token manager")
  	}
  	// As mentioned in token.go, we can now safely convert tm to a token.Manager
  	manager := tm.(token.Manager)
  	uuid, err := manager.Locate(ctx)
  	if err != nil {
  		// TODO : need a way to define user as Guest
  		log.Error(ctx, map[string]interface{}{
  			"uuid":          uuid,
  			"token_manager": manager,
  			"err":           err,
  		}, "identity belongs to a Guest User")
  
  		return nil, errs.WithStack(err)
  	}
  	return &uuid, nil
  }
docs: // ContextIdentity returns the identity's ID found in given context
  // Uses tokenManager.Locate to fetch the identity of currently logged in user