"""
CodeIssueTracker
Generated by Eden via recursive self-improvement
2025-11-02 07:37:10.428920
"""

class CodeIssueTracker:
    def __init__(self):
        self.issues = []

    def add_issue(self, description: str, severity: int, module: str):
        """
        Add a new issue to the tracker.
        
        :param description: Description of the issue.
        :param severity: Severity level (1 for low, 2 for medium, 3 for high).
        :param module: Module or file where the issue was found.
        """
        self.issues.append({
            'description': description,
            'severity': severity,
            'module': module
        })

    def prioritize_issues(self):
        """
        Prioritize issues based on their severity level and return a list of issues in order of priority.
        
        :return: List of issues sorted by severity.
        """
        self.issues.sort(key=lambda x: x['severity'], reverse=True)
        return self.issues

    def assign_issue_to_developer(self, issue_id: int, developer_email: str):
        """
        Assign an issue to a specific developer based on their email address.
        
        :param issue_id: ID of the issue to be assigned.
        :param developer_email: Email address of the developer who will resolve the issue.
        """
        for issue in self.issues:
            if issue['description'] == issue_id:
                issue['assigned_to'] = developer_email
                break

    def get_untouched_issues(self):
        """
        Get a list of issues that have not been assigned to any developer yet.
        
        :return: List of unassigned issues.
        """
        return [issue for issue in self.issues if 'assigned_to' not in issue.keys()]

# Example usage
tracker = CodeIssueTracker()
tracker.add_issue("Unused variable", 2, "sage_module.py")
tracker.add_issue("Potential security vulnerability", 3, "network_functions.py")
tracker.add_issue("Inconsistent code style", 1, "utils.py")

print(tracker.prioritize_issues())
tracker.assign_issue_to_developer(2, "developer1@example.com")
print(tracker.get_untouched_issues())