circuit_state_publish() never triggers when a new origin circuit is created
In `origin_circuit_init()`, we change the circuit state before allocating the `build_state` but also before a purpose is set. This means that `circuit_state_publish()` located in `circuit_set_state()` is never called for a new circuit because `CIRCUIT_IS_ORIGIN()` doesn't return true. Which in turn, by chance I believe, made this NULL deref on `build_state` to never happen. This should be fixed regardless.
issue