onboarding.state reported intro=unseen for every install without a setup
profile, so a user who had already used Hermes got the guide as soon as
the guest flag turned on.
On first launch (no setup profile yet), settle_returning_user() latches
onboarding.seen.setup_intro in config.yaml when the install has a session
row in state.db or a user-made profile, and read_state() reports 'seen'
from that latch. A fresh boot creates neither, so it stays 'unseen'.