Minor thing you need to fix:
…they are shown/hidden ok in edit view, but ot in production/preview.
It’s actually the behaviour in Preview/Publish that is correct.
From an accessibility point of view the buttons have to be left on-screen (just in a disabled state) when you get to the start/end - if they are removed it will cause the screenreader focus to be ‘lost’, so they essentially have to start again from the top of the page.
I think the plan is to allow buttons’ disabled state to be styled via the theme - so when that’s done you could style the buttons so as to make it more obvious the button is disabled
just to mention that the Editor behaviour now matches the Preview behaviour

