O Upstart considerará a tarefa interrompida se o processo principal (o que é executado se o script ou as sub-rotinas exec forem especificados) for encerrado. O Upstart executará o processo de pós-inicialização.
Então, o que está acontecendo é que o primeiro script está em execução e saindo, o Upstart está considerando a tarefa interrompida e, em seguida, o segundo script está em execução e saindo. Se você executar o comando de parada em um trabalho já interrompido, ele imprimirá a mensagem que você viu.
Para lidar com isso, use uma sub-rotina de pré-início:
pre-start exec foo --bar
post-start exec baz --foo
se você fizer isso, o Upstart verá o trabalho como iniciado assim que a sub-rotina de pré-início terminar, e não como interrompido.