Do you use cocoyl betaine or cocamidopropyl betaine? Fairly often, coco betaine is in fact cocamidopropyl betaine and not real cocoyl betaine. CAPB is an amide and hence may, under certain conditions, react with DHA and erythrulose. Also, both may contain impurities (reaction intermediates such as dimethyl glycine or dimethylaminopropylamine) which have a free amino group to result in some colouration of the product. You might want to contact your supplier regarding more precise information regarding composition/contamination of your coco betaine. Or just try a small batch without coco betaine (doesn’t need to be physically stable or anything) and one with only DHA, erythrulose and coco betaine to see whether or not this ingredient causes an issue. If it doesn’t, you might have too much light in your product??