Здесь нет ответа, но в отличие от многих здесь присутствующих, я не думаю, что документирования смешного поведения достаточно, чтобы оправдать его.
Потому что зачем вам в первую очередь использовать механизм высева? Хорошо, я скажу вам: чтобы вы всегда могли воспроизвести случайную последовательность из одного семени, а не сохранять, возможно, миллионы случайных чисел. Обратите внимание, что я сказал «всегда», а не «до обновления до следующей версии .NET». Будучи несовместимыми между версиями, текущие генераторы случайных чисел .NET не обеспечивают эту функциональность. Microsoft должна была лучше выполнить это (или вообще не реализовывать) вместо того, чтобы просто документировать дефектное поведение.
И, кстати, хотя алгоритм действительно является деталью реализации, как же можно вызвать результат вызова метода как деталь реализации? Должен ли я действительно проверять документацию по каждому методу в .NET Framework, чтобы убедиться, что в следующей версии я не рискну получить другой результат от объединения двух строк или вычисления квадратного корня?
Так что, на мой взгляд, у нас просто плохо реализованный генератор случайных чисел. И, конечно, всей проблемы можно было бы легко избежать, если дать новой функциональности (в зависимости от новой реализации) другое имя.