Cheguei aqui tentando resolver uma situação parecida então me parece que esse tipo de problema ainda aparece.
No meu caso, evitar qualquer transformação do otimizador funcionou.
Apliquei uma dica NO_QUERY_TRANSFORMATION ao "intoed" instrução SELECT e o erro desapareceu.
No caso desta questão, devo reescrevê-la como:
INSERT INTO MasterRecords
(BatchRecordRecordID, SourceID, BatchID)
SELECT /*+NO_QUERY_TRANSFORMATION*/ RecordID, SourceID, BatchID
FROM (
SELECT RecordID, BatchID, 101 AS SourceID
FROM BatchRecords
WHERE BatchID = 150
GROUP BY RecordID, BatchID
) BR