Needs `errors: []` which will 99.99% of the time be empty at the end.