Mismatch between sent problem description digest and received

If you take Python representation of problem description which has digest computed over all its content (which includes outputs field) and send it over GRPC, the recipient does not get full problem description (we are not sending outputs because there is no point for TA2-TA3 API) so if recipient then computes a digest over what they got, a mismatch happens.

Not sure what to do here. If we recompute digest without outputs before sending it over, then there is no mismatch. But this also means that this digest does not match anymore the problem description provided to TA3. So from metalearning perspective those two problem descriptions become different.

Maybe we should just define problem description's digest to never include outputs. Or maybe we should even remove that from d3m core package problem description? Are outputs even really used?