right shift return different results in very similar cases?

I am aware that JS has >> apparently for signed-numbers shifts and >>> for unsigned.

I tested two simple examples in the node console:

a = 0b10000000000000000000000000000100
> a >> 31
-1
> a >>> 31
1

I’ve read mdn, w3schools, etc. But I expect both cases to be 1.

What is the mistake?