Market optimism resurfaces and Sainsbury’s reports strong sales amid supermarket bun fight