I have a few guesses at what's going on with the down time and some other things based on my experience as a Software Engineer.
Online Requirement
I'll start with this since it could relate to the extended maintenance. I believe none of our profile progress data (cars in the garage, credits on hand, license and mission progress, etc.) is ever stored on the console but is on their servers and the game fetches only what's needed next during the loading screens. It's just loaded into RAM as needed when needed. This would perhaps explain why
- it tries to connect to their servers first thing (to load into RAM your profile data)
- offline mode doesn't work in any fashion in relation to your account/progress, like it doesn't even tell you how many credits you have right now (assuming you started the game after maintenance started)
- starting the game right now takes forever at the initial loading screen to see the main menu
Why do this instead of storing the game data locally and syncing it with the cloud? Several reasons but the biggest being that it gives the developers control of the data since they're hosting the data and not your PS4/5. This can be really important as a developer for longevity of maintenance, the ability to change how/what data is stored and prevent conflicting save data
Extended Downtime
So having been on the receiving end of sever maintenance gone wrong and pulling all-nighters to help my team fix it, there's a lot of things that could cause this. Most likely it's a software/hardware change that can't be reversed, worked as expected when it was tested on the testing servers but went very wrong when they tried to apply the changes to the real servers. Example could be
- changing the structure of the server data had some issues so they're fixing what went wrong and trying it again
- they made changes to their server hardware on some hosting platform (Amazon's AWS, Google's GCP, etc.) and it went wrong
- something as simple as all cars are showing up as costing 0 credits and wanting to fix that before turning off server maintenance mode
Fixing some of these can be hard, if the issue is related to a specific field of study (automation of server architecting or automation of code deployment, etc.) then there may be only a few engineers who have an idea how to fix it and they're working around the clock, possibly having gone without much sleep which can in turn make it harder to solve the problem.
I could cover a lot of other topics like how you can fix a bug that introduces more bugs but I typed a lot already haha. Though I can get into it if anyone's interested.
Reposted this because my last one is hidden for some reason