<commit_before>class FunnelStatsCollector
  NO_STATUS_STATUSES = ['n/a', 'Pinged, no response']
  NOT_INTERESTED_STATUSES = ['Not interested', 'Not interested, on hold', 'Rejected, no go', 'Rejected, on hold']
  INTERESTED_STATUSES = ['Discussing an opportunity', 'Interested, ping later', 'Interested, on hold']
  INTERVIEW_STATUSES = ['Initial interview', 'Technical interview', 'Test assignment']
  PASSED_INTERVIEW_STATUSES = ['Waiting for decision']
  HIRED_STATUSES = ['Hired', 'Contractor', 'Past employee', 'Past contractor']

  def initialize(scope:, start_date:, finish_date:)
    @scope = scope
    @start_date = start_date
    @finish_date = finish_date
  end

  def perform
    result = []

    Vacancy.where(status: 'open').each do |vacancy|
      people_created = @scope.tagged_with([vacancy.tag].flatten)
          .where('people.created_at >= ? AND people.created_at <= ?',
            Time.strptime(@start_date, '%d-%m-%Y').strftime('%Y-%m-%d') + ' 00:00:00',
            Time.strptime(@finish_date, '%d-%m-%Y').strftime('%Y-%m-%d') + ' 00:00:00')
      people = @scope.tagged_with([vacancy.tag].flatten)
          .where('people.updated_at >= ? AND people.updated_at <= ?',
            Time.strptime(@start_date, '%d-%m-%Y').strftime('%Y-%m-%d') + ' 00:00:00',
            Time.strptime(@finish_date, '%d-%m-%Y').strftime('%Y-%m-%d') + ' 00:00:00')

      item = {
        vacancy_title: "#{vacancy.project}, #{vacancy.role}",<commit_msg>fix date selection for Today for funnel report<commit_after>class FunnelStatsCollector
  NO_STATUS_STATUSES = ['n/a', 'Pinged, no response']
  NOT_INTERESTED_STATUSES = ['Not interested', 'Not interested, on hold', 'Rejected, no go', 'Rejected, on hold']
  INTERESTED_STATUSES = ['Discussing an opportunity', 'Interested, ping later', 'Interested, on hold']
  INTERVIEW_STATUSES = ['Initial interview', 'Technical interview', 'Test assignment']
  PASSED_INTERVIEW_STATUSES = ['Waiting for decision']
  HIRED_STATUSES = ['Hired', 'Contractor', 'Past employee', 'Past contractor']

  def initialize(scope:, start_date:, finish_date:)
    @scope = scope
    @start_date = start_date
    @finish_date = finish_date
  end

  def perform
    result = []

    Vacancy.where(status: 'open').each do |vacancy|
      people_created = @scope.tagged_with([vacancy.tag].flatten)
          .where('people.created_at >= ? AND people.created_at <= ?',
            Time.strptime(@start_date, '%d-%m-%Y').strftime('%Y-%m-%d') + ' 00:00:00',
            (Time.strptime(@finish_date, '%d-%m-%Y') + 1.day).strftime('%Y-%m-%d') + ' 00:00:00')
      people = @scope.tagged_with([vacancy.tag].flatten)
          .where('people.updated_at >= ? AND people.updated_at <= ?',
            Time.strptime(@start_date, '%d-%m-%Y').strftime('%Y-%m-%d') + ' 00:00:00',
            (Time.strptime(@finish_date, '%d-%m-%Y') + 1.day).strftime('%Y-%m-%d') + ' 00:00:00')

      item = {
        vacancy_title: "#{vacancy.project}, #{vacancy.role}",
{'fraction_non_alphanumeric': 0.18402426693629928, 'fraction_numerical': 0.016852039096730706, 'mean_word_length': 3.849673202614379, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 7, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5201366', 'n_tokens_mistral': 1107, 'n_tokens_neox': 1005, 'n_words': 192}