Most Terraform confusion around variables is not about where values come from.
It is about when Terraform decides what those values mean.
Variables are not evaluated all at once.
Some are resolved during configuration loading.
Some must be known during planning to shape the dependency graph.
Others are allowed to remain placeholders until apply.
This distinction explains why Terraform sometimes accepts an unknown value quietly, and other times refuses to proceed at all.
In this lesson, we look at variables as requirements in the graph, not as values.
We explore how timing determines whether a value can shape structure or only fill meaning.
And we clarify why Terraform is strict about ambiguity in structural positions.
If Terraform has ever felt unpredictable, the issue is usually not syntax.
It is evaluation timing.
This video focuses on that timing, and nothing else.

