It seems that the these keys are hard coded in vim so that it is impossible to restore their original function through mapping. Ctrl-O is heavily used in a lot of insert mode mapping and Ctrl-U is often used to delete an line. I hope these keys can be mapable in completion mode.
Yes, it is feature. Because, Vim/neovim has not completion mode mappings. Too bad.
pumvisible() is really ugly hack and it is cannot solve the problem.
Vim disables Ctrl-U in user defined completion mode and Ctrl-O in omni completion mode. See https://github.com/Valloric/YouCompleteMe/issues/24 for some detail.
It seems that the these keys are hard coded in vim so that it is impossible to restore their original function through mapping. Ctrl-O is heavily used in a lot of insert mode mapping and Ctrl-U is often used to delete an line. I hope these keys can be mapable in completion mode.