Saber quando um conjunto de termos deve ter hífen nem sempre é fácil com as regras ortográficas que nos regem, pois há algumas arbitrariedades (ex.: no caso que costumo apontar: cor-de-rosa e cor de vinho). Quando há dúvida, é conveniente consultar um dicionário ou um vocabulário completos (a ausência do conjunto com o hífen é uma indicação de que não é uma unidade mórfica; mas, para se ter essa certeza, é preciso que se pense que essa ausência não é uma deficiência da obra).
Quer no completo vocabulário de Rebelo Gonçalves, quer no da Academia Brasileira de Letras (igualmente completo e de 1998), não figuram as entradas com hífen: "meio-sorriso", "meia-hora".
Há, porém, uma regra gramatical de aplicação do hífen que nos pode ajudar quando ficamos indecisos. Usa-se hífen se estamos em presença duma unidade semântica, com um sentido particular que transcende o sentido de cada um dos elementos constitutivos dessa unidade.
Nos casos seguintes: meio-termo (moderação), meio-sangue (só um é puro sangue); meia-irmã (unilateral), meia-língua (pouco inteligível); compreende-se que os hífenes sejam necessários, dado o sentido particular que os conjuntos têm. Outro exemplo típico, que costumo apresentar sempre e está no Prontuário da Texto, é o de cavalo-de-batalha (argumento insistente), diferente de cavalo de batalha (animal para o combate).
Ora meio-sorriso significa que o sorriso foi feito com uma expressão facial que denota pouca convicção no sentimento que o sorriso representa. Não é metade dum sorriso, porque o sorriso não é uma grandeza normalmente mensurável quantitativamente. Esta grafia com hífen é aceitável.
Já quanto a meia hora, podemos ter duas hipóteses: Trata-se de um valor correspondente a metade duma hora (ex.: «isto leva meia hora a fazer»), e então eu escreveria sem hífen neste caso. Trata-se duma designação particular (ex.: «estarei aí quando for meia-hora» [doze e trinta]), e, então, eu escreveria com hífen porque representa simplesmente um momento no tempo e não uma medida da hora. É um critério pessoal semelhante ao que adoptamos quando dizemos: «este trabalho leva meio dia a fazer»; e dizemos: «é meio-dia».
Podia ficar por aqui. No entanto, honestamente, devo confessar que os raciocínios na língua não podem considerar-se sempre assim lineares como acabei de fazer. Na linguagem tem influência a história das palavras e a evolução com o uso, nas escolhas das diversas gerações de falantes. Nesta escolha, pode não haver lógica, mas hábito, procura da simplicidade, empréstimo, conotações, etc. Repare no caso da expressão: «sorriso amarelo» (que significa um sorriso no qual o resto da face e os olhos não acompanham o movimento dos lábios).
Aparentemente, deveria escrever-se com hífen, pois o sorriso não tem cor. Aparece, no entanto, registado sem hífen no léxico (ex.: Houaiss). A palavra amarelo será neste caso uma metáfora: poderá significar o «sorriso de pessoas de tez amarela», que, tradicionalmente, se considera como um gesto de delicadeza, habitual nestes simpáticos povos.
Para terminar, repito: em caso de dúvida na aplicação do hífen a uma estrutura, consulte-se a tradição escrita num bom vocabulário. O novo acordo vai simplificar alguma coisa, mas não ainda o suficiente.