The GameObject Blackboard Variables are the variables of the Blackboard attached to the GraphOwner gameobject. All Sub-Graphs have access to this Blackboard and on top of that the GameObject variables can have scene-object references (since Blackboard is a scene object itself).
On the other hand, Graph Blackboard Variables are local to the graph and only accessed in that graph for graph specific “tasks”. They can not have scene-object references because Graph Blackboard is not a scene-object (but rather saved with the graph which is an asset).
If you want to make use of the parent Graph Blackboard Variables, please make use of the Variables Mapping feature shown in the SubGraph Node inspector. This allows you to map variables from the parent graph to the child graph and vice-verse.
The reason that parent Graph Variables are not visible is simply infrastructure reasons. Imagine that you are using the same asset graph as a sub-graph in multiple parent graphs. If parent graph variables were to be visible that would be a problem here because if you are editing the sub-graph through parent graph A, then it would have different variables available to it than if you were editing that same sub-graph through paren graph B. Thus for example when making use of a variable of parent graph A called “myPosition”, and that “myPosition” variable does not exist in parent graph B, there is no way to serialize the sub-graph (remember it is one subgraph used in multiple locations) correctly unless a multitude of nasty hacks would take place.
I really hope that explanation made sense.
Once again, the Variables Mapping feature is the way to let the parent graph affect the sub-graph variables as well as the other way around.