The character ranges of every distinct time criterion in a question, merged so that two patterns
matching the same phrase count once. Two criteria at different positions yield two spans — which
is what makes a compound question ("past 7 days ... within 72 hours of admission") detectable
without asking a model.
Matches on the lowercased question, mirroring parseDateIntent. Each pattern is cloned with the
global flag per call rather than exported with it, so a shared lastIndex can never leak between
callers.
The character ranges of every distinct time criterion in a question, merged so that two patterns matching the same phrase count once. Two criteria at different positions yield two spans — which is what makes a compound question ("past 7 days ... within 72 hours of admission") detectable without asking a model.
Matches on the lowercased question, mirroring
parseDateIntent. Each pattern is cloned with the global flag per call rather than exported with it, so a sharedlastIndexcan never leak between callers.