You are building an automated triage workflow for an enterprise support platform that receives several thousand tickets per day from email, chat, and web forms. Each ticket contains a short subject line, a free-text problem description, and noisy metadata such as product names, error codes, URLs, and copied log snippets. You have roughly 200,000 historical tickets labeled into 6 operational categories such as Billing, Access, Bug Report, Feature Request, Incident, and How-To, but the class distribution is uneven and wording changes over time as new product features launch. The business wants a lightweight, interpretable baseline that can be trained and updated quickly before moving to heavier transformer models.
How would you design a text classification pipeline using TF-IDF for this problem, including preprocessing, feature construction, model choice, and evaluation? Explain how you would handle sparse features, class imbalance, noisy text, and the trade-offs of TF-IDF versus more modern embedding-based approaches.