Reads meeting transcripts, CRM notes, and CRM emails to classify friction types, objections, competitive mentions, boosts, and unblocking events. Runs daily in parallel with other spotters. Writes to di_raw_signals and di_signal_classifications. Triggered automatically on cadence, or manually via 'run friction reader', 'scan friction for [deal]', 'what's stalling [deal]'.