{"record":{"id":"46b65acc67937a36","repo":"theforeman/foreman","slug":"invalid-global-id-gid-can-not-decode-type-nam","errorCode":null,"errorMessage":"Invalid Global ID #{gid}. Can not decode: Type name [#{type_name}] and object value [#{object_value}].","messagePattern":"Invalid Global ID #(.+?)\\. Can not decode: Type name \\[#(.+?)\\] and object value \\[#(.+?)\\]\\.","errorType":"exception","errorClass":"Foreman::GlobalId::InvalidGlobalIdException","httpStatus":null,"severity":"error","filePath":"app/services/foreman/global_id.rb","lineNumber":25,"sourceCode":"\n    def self.encode(type_name, object_value, version: DEFAULT_VERSION)\n      object_value_str = object_value.to_s\n      version_str = \"%02d\" % version\n\n      if type_name.include?(ID_SEPARATOR)\n        raise \"encode(#{type_name}, #{object_value_str}) contains reserved characters `#{ID_SEPARATOR}` in the type name\"\n      end\n\n      Base64.strict_encode64([version_str, [type_name, object_value_str].join(ID_SEPARATOR)].join(VERSION_SEPARATOR))\n    end\n\n    def self.decode(node_id)\n      raise InvalidGlobalIdException.new(node_id, 'Not base64 encoded') unless base64_encoded?(node_id)\n      decoded = Base64.decode64(node_id)\n      version, payload = decoded.split(VERSION_SEPARATOR, 2)\n      raise InvalidGlobalIdException.new(node_id, \"Version [#{version}] and payload [#{payload}]\") unless version.present? && payload.present?\n      type_name, object_value = payload.split(ID_SEPARATOR, 2)\n      raise InvalidGlobalIdException.new(node_id, \"Type name [#{type_name}] and object value [#{object_value}]\") unless type_name.present? && object_value.present?\n      [version.to_i, type_name, object_value]\n    end\n\n    def self.for(obj)\n      type_definition = ForemanGraphqlSchema.resolve_type(nil, obj, nil)\n      ForemanGraphqlSchema.id_from_object(obj, type_definition, nil)\n    end\n\n    def self.base64_encoded?(string)\n      !!string.match(BASE64_FORMAT)\n    end\n\n    class InvalidGlobalIdException < Foreman::Exception\n      def initialize(gid, cause)\n        super(\"Invalid Global ID '#{gid}'. Can not decode: #{cause}.\")\n      end\n    end\n  end","sourceCodeStart":7,"sourceCodeEnd":43,"githubUrl":"https://github.com/theforeman/foreman/blob/6b05625475cfe6aac31a88f8c8ee6e62e4efe620/app/services/foreman/global_id.rb#L7-L43","documentation":"Error \"Invalid Global ID #{gid}. Can not decode: Type name [#{type_name}] and object value [#{object_value}].\" thrown in theforeman/foreman.","triggerScenarios":"Thrown at app/services/foreman/global_id.rb:25 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"6b05625475cfe6aac31a88f8c8ee6e62e4efe620","analyzedAt":"2026-08-23T17:46:34.094Z","schemaVersion":2},"datasetVersion":"2026-08-23T21:17:23.414Z"}