I think you'd want at least some "dumb" logic moved to the periphery, otherwise everything has to be conected directly to the CPU and you would still end up with tons of wiring. Also, some functions done in the periphery are ideal candidates for parallelization, such as the keyboard scanning the key matrix for pressed keys.
Seems like modularization is going to be beneficial pretty much anytime you can define an interface you think is going to be somewhat stable.
I wonder to what extent Rivian has removed intermediate controllers here, where they used them in the first place to get things done on a tighter timeline.
The value proposition of CAN bus is that peripherals can be scattered around connected by two data lines and a power wire. Dumb peripherals need more wiring.
Can is a great idea... But in practice the hardware to connect to the bus is ~10 cents, whereas the cheapest microcontrollers are ~1 cent. That means if you want thousands of connections for every peripheral, the costs of CAN transceivers really start to add up.
Remove any logic and computing from screens, keyboards, mice, SSDs, HDDs, off load everything from network chips and sounds chips. Just move all of it to CPU?