Sua substituição sed one-liner parece funcionar como você pretende:
$ cat t.txt
Hello world
types=""
Mario
types="Game"
$ sed '1,/types=""/s/types=""/types="program"/' t.txt
Hello world
types="program"
Mario
types="Game"
Pode valer a pena editar sua pergunta para mostrar o que você recebe quando você executa o comando sed (sem a opção -i para que os resultados sejam impressos no terminal).
BTW, seu intervalo de 1,/types=""/ é redundante. Você pode simplificá-lo como:
sed '/types=""/s/types=""/types="program"/' t.txt