Custom z3c.form and statusmessages

In Plone 6 I have a custom z3cform like this

class OnboardingForm(AutoExtensibleForm, form.EditForm):

    label = "Erstregistrierung"
    description = "Registrieren Sie sich erstmalig."

    schema = IOnboardingSchema
    form_name = "onboarding"
    ignoreContext = True

    template = ViewPageTemplateFile("onboarding.pt")

and a pagetemplate like so

<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:metal="http://xml.zope.org/namespaces/metal"
      xmlns:tal="http://xml.zope.org/namespaces/tal"
      xmlns:i18n="http://xml.zope.org/namespaces/i18n"
      metal:use-macro="context/main_template/macros/master"
      i18n:domain="plone">

<body>
  <metal:main fill-slot="main">
  <metal:main-macro define-macro="main">
    <div id="content-core">
      <metal:block use-macro="context/@@ploneform-macros/titlelessform" />
      <p>Bitte beachten Sie unsere <a href="#" title="Datenschutzerklärung">Informationen zum Datenschutz</a>.</p>
    </div>
    </metal:main-macro>
</metal:main>
</body>
</html>

Question: Why doesn't it show status messages? I would expect them to be outside main macro, but that is probably wrong..

Since I dont know the answer: Is there any reason you need to fill main at all ? (or do you want to 'hide something/the title", if so you can use fill-slot:content?)

Could you skip that part and just do

<html xmlns="http://www.w3.org/1999/xhtml"
  xmlns:metal="http://xml.zope.org/namespaces/metal"
  xmlns:tal="http://xml.zope.org/namespaces/tal"
  xmlns:i18n="http://xml.zope.org/namespaces/i18n"
  metal:use-macro="context/main_template/macros/master"
  i18n:domain="plone">

<body>
<div:content-core fill-slot="content-core"

or fill-slot="content"