After a POST, Turbo behaves best when you redirect with 303 See Other (Rails symbol :see_other). This avoids the browser trying to re-submit the POST when the user refreshes, and it plays nicely with Turbo Drive’s navigation semantics. I use it especially for authentication flows and for “create then redirect to show” actions. When combined with flash.now for turbo stream responses, you can have both: immediate updates for frame submissions and correct redirects for full-page HTML. The mental model is: when you want to land the user on a new URL, do a redirect; when you want to update parts of the current page, respond with turbo streams. 303 is the “safe default” redirect status after mutating requests.