Question 3: temperature 0 is usually implemented as "skip sampling, take the highest-scoring token", so within one machine and one build it will normally repeat itself.
But it is worth separating deterministic from reproducible. Two things routinely break the second one even at temperature 0:
- Ties and near-ties. When the top two scores are equal to within floating point, which one wins can depend on summation order.
- Batching and hardware. Floating point addition is not associative, so the same maths executed in a different order — different batch size, different kernel, different GPU — can produce a slightly different score, and a slightly different score can flip a near-tie.
In practice you get identical output most of the time and an occasional divergence that looks like a ghost. If you need genuine reproducibility, pin the seed and the batch shape and the build, and do not treat temperature 0 as a substitute for any of that.