Yeah, I see that.
Again a good catch to fix in 2.0. Thanks.
To write such redirection :
TODO :
In your concerned controller (collection), catch the publish() function.
(also called for 'unpublish' - same function, but different tasks)
1. Call the parent and get the result
2. Copy a redirector (save() for example... in 'item' controller) to understand how to implement it.
3. Switch publish/unpublish cases if you want different behaviors
Explained few times here.
In the same time I will fix it, but not for now, because tasks are in rewriting as well as filters. Anyway. the issue is on the list.