色々なブログで、flashは次のリクエストまで有効みたいに取れる書き方がされている。
自分もそれを鵜呑みにしていたので、flashの値が使われなくても勝手にクリアされると思ってた。
実際はcallされないとflashの中身は削除されない。
actionpack/lib/action_dispatch/middleware/flash.rb
適当にscaffoldして、show.html.erbの<p id="notice"><%= notice %></p>
をindex.html.erbに移せば動作を確認出来るかと思う。
rails歴3年以上だけど、勘違いしてた事が恥ずかしい。