But i guess even developer don't expect witness data would be used to store arbitrary data.
yeah that's the problematic thing. something like bitcoin shouldn't be the result of unintended and unexpected consequences. so if they would have put in the specification that "NOTE: people can store arbitrary data in the witness now and that is how it is meant to be and how we want it to be" then that's one thing but I don't think people would have understood the reason for that stance. unless they also said "This is an unavoidable consequence of segwit and there's nothing we can do about it. Sorry!". but then people would say it's poorly designed and needs further work...