{"record":{"id":"716c24c92dc5431b","repo":"puppetlabs/puppet","slug":"boolean-parameter-must-be-true-or-false","errorCode":null,"errorMessage":"Boolean parameter must be true or false","messagePattern":"Boolean parameter must be true or false","errorType":"exception","errorClass":"Puppet::ParseError","httpStatus":null,"severity":"error","filePath":"lib/puppet/pops/types/type_parser.rb","lineNumber":488,"sourceCode":"\n    when 'callable'\n      # 1..m parameters being types (last three optionally integer or literal default, and a callable)\n      if parameters.size > 1 && parameters[0].is_a?(Array)\n        raise_invalid_parameters_error('callable', '2 when first parameter is an array', parameters.size) unless parameters.size == 2\n      end\n      TypeFactory.callable(*parameters)\n\n    when 'struct'\n      # 1..m parameters being types (last two optionally integer or literal default\n      raise_invalid_parameters_error('Struct', '1', parameters.size) unless parameters.size == 1\n      h = parameters[0]\n      raise_invalid_type_specification_error(ast) unless h.is_a?(Hash)\n      TypeFactory.struct(h)\n\n    when 'boolean'\n      raise_invalid_parameters_error('Boolean', '1', parameters.size) unless parameters.size == 1\n      p = parameters[0]\n      raise Puppet::ParseError, 'Boolean parameter must be true or false' unless p == true || p == false\n\n      TypeFactory.boolean(p)\n\n    when 'integer'\n      if parameters.size == 1\n        case parameters[0]\n        when Integer\n          TypeFactory.range(parameters[0], :default)\n        when :default\n          TypeFactory.integer # unbound\n        end\n      elsif parameters.size != 2\n        raise_invalid_parameters_error('Integer', '1 or 2', parameters.size)\n      else\n        TypeFactory.range(parameters[0] == :default ? nil : parameters[0], parameters[1] == :default ? nil : parameters[1])\n      end\n\n    when 'object'","sourceCodeStart":470,"sourceCodeEnd":506,"githubUrl":"https://github.com/puppetlabs/puppet/blob/e227c27540975c25aa22d533a52424a9d2fc886a/lib/puppet/pops/types/type_parser.rb#L470-L506","documentation":"Error \"Boolean parameter must be true or false\" thrown in puppetlabs/puppet.","triggerScenarios":"Thrown at lib/puppet/pops/types/type_parser.rb:488 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":"e227c27540975c25aa22d533a52424a9d2fc886a","analyzedAt":"2026-08-21T20:49:46.650Z","schemaVersion":2},"datasetVersion":"2026-08-21T23:17:16.201Z"}