If our input $x \in \{0, 1\}^{n}$ is given as a black box, we usually query an oracle as follows.
$$O_{x}|i, b \rangle = (-1)^{b x_{i}} |i, b \rangle$$
$i = \{1, 2, \cdots, n \}$ is the index of the input we are querying. $x_{i}$ is the value at that index. $b = \{0, 1\}$ is an arbitrary Boolean value.
Why do we need the $|b \rangle$ register? Why can't we have a query of the form
$$O_{x}|i \rangle = (-1)^{x_{i}} |i \rangle$$
This transformation is certainly unitary. Andrew Childs notes in his lecture that we can't distinguish between $x$ and $\bar{x}$ (bitwise complement of $x$) if we exclude the $|b \rangle$ register. I don't see why this should be the case.