{"record":{"id":"b6765cb167e02172","repo":"ankane/searchkick","slug":"expected-searchkick-script","errorCode":null,"errorMessage":"expected Searchkick::Script","messagePattern":"expected Searchkick::Script","errorType":"exception","errorClass":"TypeError","httpStatus":null,"severity":"error","filePath":"lib/searchkick/query.rb","lineNumber":1124,"sourceCode":"    def where_filters(where)\n      filters = []\n      (where || {}).each do |field, value|\n        field = :_id if field.to_s == \"id\"\n\n        # update smart aggs when adding new symbol\n        if field == :or\n          value.each do |or_clause|\n            filters << {bool: {should: or_clause.map { |or_statement| {bool: {filter: where_filters(or_statement)}} }}}\n          end\n        elsif field == :_or\n          filters << {bool: {should: value.map { |or_statement| {bool: {filter: where_filters(or_statement)}} }}}\n        elsif field == :_not\n          filters << {bool: {must_not: where_filters(value)}}\n        elsif field == :_and\n          filters << {bool: {must: value.map { |or_statement| {bool: {filter: where_filters(or_statement)}} }}}\n        elsif field == :_script\n          unless value.is_a?(Script)\n            raise TypeError, \"expected Searchkick::Script\"\n          end\n\n          filters << {script: {script: {source: value.source, lang: value.lang, params: value.params}}}\n        else\n          # expand ranges\n          if value.is_a?(Range)\n            value = expand_range(value)\n          end\n\n          value = {in: value} if value.is_a?(Array)\n\n          if value.is_a?(Hash)\n            value.each do |op, op_value|\n              case op\n              when :within, :bottom_right, :bottom_left\n                # do nothing\n              when :near\n                filters << {","sourceCodeStart":1106,"sourceCodeEnd":1142,"githubUrl":"https://github.com/ankane/searchkick/blob/93e901a75b11a25101668a616e006b158251b16e/lib/searchkick/query.rb#L1106-L1142","documentation":"Error \"expected Searchkick::Script\" thrown in ankane/searchkick.","triggerScenarios":"Thrown at lib/searchkick/query.rb:1124 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":"93e901a75b11a25101668a616e006b158251b16e","analyzedAt":"2026-08-21T19:06:23.767Z","schemaVersion":2},"datasetVersion":"2026-08-21T23:17:16.201Z"}