Back to Blog
GTL Systems 5 min readJun 16, 2026
Part 10 of 10GTL Systems series

GTL Is Not a Loading Spinner Pattern

Loading spinners handle latency. GTL handles data integrity. Conflating the two is the most common misunderstanding about what the Graceful Truth Layer actually does.

When engineers first encounter GTL, the most common misreading is: "Oh, it's like a skeleton loader, but for data quality." This misses the point. A skeleton loader communicates: "the data is on its way, wait a moment." GTL communicates: "here is the data, and here is exactly what the system can honestly assert about its completeness." These are different problems.

Loading States Are About Latency

Loading states (spinners, skeleton loaders, progress bars) exist because network calls take time. They are UI patterns for managing user perception during asynchronous operations. Once the data arrives, the loading state disappears and the data is displayed. The implicit assumption is: when the loading state ends, the data is complete and authoritative.

GTL States Are About Data Completeness

GTL states exist because computations are not always fully completable, even after they finish. A Machine Trust Score can arrive in under 100ms and still be a partial result because one of its five sub-scores depends on a Claude API that timed out. The data is not "on its way." It arrived. GTL is telling you what arrived and what did not, not asking you to wait.

GTL state: "partial" does not mean "computing." It means "computed as much as was possible, here is the result." The computation is done. The partiality is a permanent characteristic of this data point, not a transient loading state.

The Danger of Conflating Them

If a UI treats GTL partial as "still loading," it will eventually hide the partial indicator when the page finishes loading — at which point the partial score is displayed as if it were complete. The user has no idea that the contradiction absence score was excluded. The score looks authoritative. Trust in the score exceeds what the data warrants. This is exactly the data integrity failure GTL is designed to prevent.

Permanent vs Transient

Loading states are transient; they end when the data arrives. GTL states are permanent for the life of that data point. A partial Machine Trust Score from a specific audit remains partial forever; even if the next audit produces a complete score, the historical partial score does not retroactively become complete. GTL states are immutable facts about the computation that produced them.

Tags: GTL Data Integrity UX system design