I disagree. If it can be built, it can be known, top to bottom.
Not everyone may want to know all the gory details, and nobody wants to get called on to explain it, but it can be, and should be done as a matter of course.
The issue is that the industry will kick and scream to keep from being held accountable to providing the customer with a way to be able to parse that information, and no one wants to hire people to document, because that isn't seen as positive value creation in today's corporate climate. It won't ever be short of a legal requirement to do so. That legal requirement will be fought tooth and nail on the basis of wanting to continue to protect trade secrets.
Nothing keeps a device from having it's actions fully elucidated except an unwillingness to abolish information asymmetry.
On my four year electronic engineering course, we did semiconductor physics, principles of electromagnetism, IC design, digital logic using semiconductors, abstract digital logic, processors and systems programming with ARM assembly, transmission lines, digital comms systems (stuff like network throughput, dish areas, network capacity, information theory), the Ethernet standard, packet switching algorithms, TCP/IP, network programming with C, high level languages (Python, Java), and on my own for degree projects I did stuff with PostgreSQL, FastCGI, Elixir, HTTP and Javascript. There were optional modules for stuff like nanotech, physical modelling synthesis, control theory, audio programming for iOS, etc.
Combine that four year degree with a computer science degree (so eight years total), and I think you'd have a pretty in-depth overview of the principles of every part of the stack from React down to silicon, boron and phosphorus, albeit not all the implementation details.
Agressive EEs can cover a lot. I started out designing chips. Agressive CS (Compilers, OS, Data Structures, Databases) can cover a lot. Some of the modern stacks dependencies (npm, blegh) leave you with a lot to comb through. Modern compiler's ability to deal with various level caches and memory architectures, and look-aheads, and TLBs, and what not, can boggle the mind a bit.
One can pretty easily understand all of the sub-systems in isolation (well, it takes more than a couple of years!), but not on ALL of the systems, and complex systems, in total are more than any one mind can reason about in, in total. Too much for one brain to contain the dependency graph.
I'm only at 0.5 and I do fairly well... Key is that it's not in crystal clear focus at the semiconductor physics or Node.js levels, it still pretty close everywhere else.
Not only is it possible, but it is important to demand.
Not everyone may want to know all the gory details, and nobody wants to get called on to explain it, but it can be, and should be done as a matter of course.
The issue is that the industry will kick and scream to keep from being held accountable to providing the customer with a way to be able to parse that information, and no one wants to hire people to document, because that isn't seen as positive value creation in today's corporate climate. It won't ever be short of a legal requirement to do so. That legal requirement will be fought tooth and nail on the basis of wanting to continue to protect trade secrets.
Nothing keeps a device from having it's actions fully elucidated except an unwillingness to abolish information asymmetry.