Normalizer
Cheap deterministic text cleanup applied before any routing (§5.2). Keeps the original text for display; this is only for matching. It collapses whitespace and removes a repeated leading command verb ("open open developer options" → "open developer options") without stripping the primary verb that Tier-0 routing keys off, and without changing meaning.