Sierra has changed IPv6 link-local addressing. Why/how?
There hasn't been any documentation made available for this feature (so no information on how the addresses are generated), which is indeed new in Sierra, nor can it be disabled. Apple announced this feature at WWDC 2016.

Essentially Apple is generating IPv6 addresses that are unrelated to the MAC address in order to prevent tracking of users based on MAC addresses assigned to Apple. The link-local address is generated once and does not change (since there's less privacy concern in local-only communication), whereas the non-temporary address will change when connecting to a new network.