... in EVENT_TERMS)
        has_date = bool(DATE_FALLBACK.search(content))
        if has_event or has_date:
            s = content.replace("\n", " ")
            s = s if len(s) <= 280 else s[:277] + "..."
            markers.append(f"[{msg['role']} {msg['ts']}] {s}")
        if len(markers) >= max_events:
            break
    return markers

def extract_user_quotes(messages: list[dict], max_quotes: ...