I have explored more to find why checksum is removed from ipv6 but I couldn't get exact answer, How the mutable fields in IPv6 protected?
Higher layer (>=4) protocols like TCP and UDP still have their own checksums. So many lower layer protocols (<=2) already have their own checksums that having another checksum in IP (layer 3) was seen as unnecessary overhead.
It was an engineering decision.