-is there a way to get this nodes always as fingerprint (for example, there
are many nodes with name "idideditheconfig" and how do I know which one is
it when the node is listed in plain text?)
Yes; have your controller say "USEFEATURE VERBOSE_NAMES" early on.
(VERBOSE_NAMES is documented in section 3.19 of control-spec.txt; the
LongName format is uses is explained in section 2.4.)
HTH,
No; it's the one that's considered "best" for the particular stream.
The general rule is that first, a circuit must be appropriate for the
stream (the exit policy must be compatible, the capacity must be
adequate, the nodes must be stable enough, etc). Second, the circuit
must not be too dirty (a circuit becomes 'dirty' the first time it's
used; once it's been dirty for CircuitMaxDirtiness seconds, it
shouldn't be used for attaching new streams). Third, a less dirty
circuit is treated as better than a more dirty circuit.
{This is based on re-reading circuit_get_best in circuituse.c.}