What happens when the game coded with low-level details of the new revision runs on the old hardware?Will it not be easier to implement new features or even make evolve GCN1 based console when you have the advantage of a low level API access ? And Sony and MS have the possibility to upgrade the APU /GPU in 3 years and release a PS4 v2 and XB One v2 with better GPU ?.. They have allready do it by the past... ( without saying with process advance, they can got some real gain on TDP, performance ) .
Exposing low-level details means there's no intermediary to intercept your mistakes. CPU architectures are rife with low-level details that stick around because you can't wantonly crash software on your platform because you suckered people into using feature X in a certain way.
Maintaining a higher level of abstraction means the software doesn't have details on how the hardware achieves an end result, so if it's a new vector ALU, a re-ordered data path, or turtles, it's none of the software's business.
Consoles already have low-level access, and they barely change the core architecture because they need consistency. The 360 shrink that put the GPU and CPU on the same die actually spent silicon on a fake bus unit that pretended to be a slow external bus so that the chip behaved identically to the old ones.