Cancel command, add match state and observer protection