This is because they don't retain your (encrypted) messages on their servers right? Is this for storage reasons, or more just security philosophy of not being able to access past chats when you login from elsewhere?
This is not entirely correct. Messages are stored on their servers temporarily (last I saw, for up to 30 days), so that even if your device is offline for a while, you still get all your messages.
In theory, you could have messages waiting in your queue for device A, when you add device B, but device B will still not get the messages, even though the encrypted message is still on their servers.
This is because messages are encrypted per device, rather than per user. So if you have a friend who uses a phone and computer, and you also use a phone and computer, the client sending the message encrypts it three times, and sends each encrypted copy to the server. Each client then pulls its copy, and decrypts it. If a device does not exist when the message is encrypted and sent, it is never encrypted for that device, so that new device cannot pull the message down and decrypt it.
Okay, but can't it be an optional feature? I'd like it if a new device could download message history from an old device by having both online at the same time.
Optional how so? It's a rotating key. Unless you have all of those keys to export into your computer, then you'll be stuck with the current synced key.
I don't see why the current key can't encrypt old messages and send those. I admit I might be missing something obvious though. Maybe something like not wanting to accidentally leak old messages? As in it's less attack surface or something?
It means that if you have chats on one device and install Signal on another one, the chats don't transfer to it. After you link new device, new chats do sync perfectly fine.