Derive the ordered column list spanning all result rows.
model and split are placed first (when present); the remaining
columns follow in first-seen order across the rows, so metric columns keep
the order they were produced in.
- Parameters:
rows (list of dict) – The result rows.
- Returns:
Ordered column names covering every key that appears in any row.
- Return type:
list of str