make evaluation of spec+cache independent of build pass context