Ref D20046 and https://secure.phabricator.com/D20046#254987 - the change causes the manually-set $REQUEST['__path__'] variable to get unset when $REQUEST is rebuilt from the original superglobals. This copies the value into $_GET in the CLI checks to ensure its available to the rebuilds (without duplicating the conditional logic in that method)
Unit Tests Skipped
D21506 is pretty much just a higher-complexity version of this change that attempts to make this pathway a bit more robust to similar "rebuild the $_REQUEST superglobal"-style changes in the future. As far as I could tell, the description of the issue here is correct and this patch was likely the simplest correct change.