Example of a Two-party GMW Protocol
GMW protocol says that A and B can locally compute $c_i = a_i \oplus b_i$ and the result should be same for both.


I highlighted the part that is incorrect. They started with secret shares of $a=0$ and secret shares of $b=1$. Now they have secret shares of the XOR $c= a \oplus b =1$. 

Only if the secret value $c$ is zero will their shares be the same (and of course, they have no way of knowing whether this is the case). In your example $c=1$ so their shares will be opposite.

Basically, you can see that $c_1$ and $c_2$ are valid secret shares of $a \oplus b$ since:
$$
  c_1 \oplus c_2 = (a_1 \oplus b_1) \oplus (a_2 \oplus b_2) = (a_1 \oplus a_2) \oplus (b_1 \oplus b_2) = a \oplus b
$$