[comprehension question] google account linking confusion (manual setup)

I have (sucessfully it seems) linked google to home assistant, I can now turn on individual lights with “ok google” commands. So far so good.

But I have a ton of question marks in my head now.

I followed the official howto, it explained how to create a project and create ID and authentication key and tokens and whatnot to authenticate Google at HA (or the other way around)?

Then in the last step it instructs me to open my google home app and authenticate with ordinary user name and password. i did not expect this after all this lengthy API account key creation orgy.

I wonder what is the exact relationship between these components (and which one is talking to which one and in which direction and which authentication do they use)

  • “Ok-Google”-Assistant somewhere in their server farm
  • google actions website (and what is a “project”, what is an “action”, what is a “test”, why not “deploy”?)
  • google home app
  • HA Google integration

I can blindly follow the “do this and then do that” instructions without problems, but I have no Idea what I am actually doing and what complicated (and fragile?) machine I am setting up with so many components.

  • Is there a document explaining what is actually going on under the hood?
  • is google using username/password I entered in the google app during setup?
  • is the key in the json file used to authenticate HA against google or the other way around?
  • what is the significance of “email” and “name” in the scopes field, and what is the purpose of this “scope” at all?
  • what is a “test” in the google actions console, why not deploy, it feels like I am using some dirty hack that was never intended to be used that way to me, or is this only because it is google and therefore it HAS to be overly convoluted with bizarre architecture? Is it really intended that end users run their “projects” and “actions” as “tests”? Why is it called “action” anyways if this one “action” includes the entire multitude of things I can do with all my HA entities? What is the real purpose of this actions console and who is the intended audience?

so many questions…