There seems to be a bug in Scrivener 3 on how many times you can use auto-numbering placeholders to cross-reference. It seems you can only reference twice before Scrivener treats the reference as plain text. Addition of more references results in a refusal to compile (the compiler seems to be stuck in a loop).
Here is the results using the example given in Scrivener.
Input
Figure <$n:figure>, Figure <$n:figure>, Please see figure <$n#figure>
Output
Figure 1, Figure 2, Please see figure 2
Input
Figure <$n:figure>, Figure <$n:figure>, Please see figure <$n#figure>, figure <$n#figure>, figure <$n#figure>
Output
Figure 1, Figure 2, Please see figure 2, figure 2, figure <$n#figure>
As can be seen, the compiled text has not replaced the third cross-reference placeholder, it seems to see it as plain text.
Input
Figure <$n:figure>, Figure <$n:figure>, Please see figure <$n#figure>, figure <$n#figure>, figure <$n#figure>, figure <$n#figure>
Output
Will not compile when trying to reference the figure four times.
Is this a bug or am I missing something?