Don't understand why this solution fails:
function replaceFirst(values: number[]): number[] { if (values.length) { values.push(values.shift(0)) } return values; }