```python
def oxford_join(names: list) -> str:
    """Join a list of names into one phrase with Oxford comma formatting."""
    if not names:
        return ""
    if len(names) == 1:
        return names[0]
    if len(names) == 2:
        return f"{names[0]} and {names[1]}"
    return ", ".join(names[:-1]) + f" and {names[-1]}"
```