nodes: 0, module; 1, function_definition; 2, function_name:get_agent_tags; 3, parameters; 4, block; 5, identifier:since; 6, identifier:to; 7, expression_statement; 8, expression_statement; 9, comment:# default value for `to` is the latest tag; 10, if_statement; 11, expression_statement; 12, comment:# filter out versions according to the interval [since, to]; 13, expression_statement; 14, comment:# reverse so we have descendant order; 15, return_statement; 16, comment:"""
      Return a list of tags from integrations-core representing an Agent release,
      sorted by more recent first.
      """; 17, assignment; 18, identifier:to; 19, block; 20, else_clause; 21, assignment; 22, assignment; 23, list_comprehension; 24, identifier:agent_tags; 25, call; 26, expression_statement; 27, block; 28, identifier:since; 29, call; 30, identifier:agent_tags; 31, list_comprehension; 32, call; 33, for_in_clause; 34, identifier:sorted; 35, generator_expression; 36, assignment; 37, expression_statement; 38, identifier:parse_version_info; 39, argument_list; 40, identifier:t; 41, for_in_clause; 42, if_clause; 43, identifier:str; 44, argument_list; 45, identifier:t; 46, call; 47, call; 48, for_in_clause; 49, identifier:to; 50, call; 51, assignment; 52, identifier:since; 53, identifier:t; 54, identifier:agent_tags; 55, comparison_operator:since <= t <= to; 56, identifier:t; 57, identifier:reversed; 58, argument_list; 59, identifier:parse_version_info; 60, argument_list; 61, identifier:t; 62, call; 63, identifier:parse_version_info; 64, argument_list; 65, identifier:to; 66, subscript; 67, identifier:since; 68, identifier:t; 69, identifier:to; 70, identifier:agent_tags; 71, identifier:t; 72, identifier:git_tag_list; 73, argument_list; 74, identifier:to; 75, identifier:agent_tags; 76, unary_operator; 77, string; 78, integer:1; 79, string_content:^\d+\.\d+\.\d+$
code: def get_agent_tags(since, to):
      """
      Return a list of tags from integrations-core representing an Agent release,
      sorted by more recent first.
      """
      agent_tags = sorted(parse_version_info(t) for t in git_tag_list(r'^\d+\.\d+\.\d+$'))
  
      # default value for `to` is the latest tag
      if to:
          to = parse_version_info(to)
      else:
          to = agent_tags[-1]
  
      since = parse_version_info(since)
  
      # filter out versions according to the interval [since, to]
      agent_tags = [t for t in agent_tags if since <= t <= to]
  
      # reverse so we have descendant order
      return [str(t) for t in reversed(agent_tags)]