The estimate is in Points — a measureless thingy to gauge the team’s effort to define, build, test, and potentially deploy a thing of value.
The estimate does not mean, ‘it will take us this much time to build this thing.’
The estimate is a starting point, a best guess, from which the Story — even the Iteration and even the whole backlog for this matter — can be empirically managed.
The Scrum team selects the amount of backlog items (Stories) that it believes it can handle (the load vis-a-vis their capacity) in an Iteration based on these estimates. Load — which is the sum of all Story points in an iteration — and the team’s Capacity for that iteration are expressed in Points as well. Point values are from the numbers in the Fibonacci sequence. In SAFe, the following are the modified Fibonacci sequence numbers: 1, 2, 3, 5, 8, 13, 20, 40, 100, infinity. Great for relative estimation of scales/magnitudes of effort amongst various things of value to work on.
Note: when Points are summed or rolled up, the resulting value will most likely not a Fibonacci number anymore… and that is expected and correctly so.
As the initiative progresses, more information is known about the backlog items, or more unknowns are discovered, more knowledge/expertise on the development tools, and the capability of the team… the estimates of the stories that are in the backlog can then be revised; however, changes are not allowed to the estimates of all the Stories — those that are currently being worked on — during the Iteration.
When to re-estimate? Anytime while the item is in the backlog. In SAFe, PI planning, backlog refinement (which is a continuous thing to do) and iteration planning are the SAFe events where a Story’s estimate may be refined/changed.