なんか初歩的なところをミスっていたので非常に悲しい。
config/application.rbで、config.assets.precompileの設定をミスっていた。
設定していたはずのコードが別に作られないのはなんでだろう?と思っていたのです。しかも、別のディレクトリのやつは作られるのに!と思っていたのですが、それも勘違いでした。
勘違いしていたコード
config.assets.precompile += %w(foo.js.coffee bar/application.js.coffee)
サブディレクトリのapplication.(js|css)は自動的にprecompileの対象になるようです。であれば、そもそもこのbar/application.js.coffeeの記述は必要なかったし、これを追加されることでコンパイルされると思い込んでいたので、新たにfoo.js.coffeeを追加して、コンパイルされなかったのが謎で仕方がなかったんですが、拡張子がjs.coffeeじゃなくてjsじゃないとダメでした。
正しいコード
config.assets.precompile += %w(foo.js)
これでよかったんや…。ずっと勘違いしていた恥ずかしいわー…。
参考URL: アセットパイプラインにハマる | 小さな星がほらひとつ