The values in the content file looks somehow wrong, where are those attrs coming from? And the content shouldn’t be simple strings, have a look at a starterkit what the structure should look like for blocks (note pages) or layout (see about page). You might want to add pretty: true to the field definitions and save some changes to get nicer output in the content files.
Hi again @texnixe - I added the pretty: true declaration to the blueprint and it seems to have updated everything, but primarily what I realized is that unless the page is modified then saved, it is stuck in the old format posted above.
So I suppose my question is: does all legacy content need to be modified then re-saved to be migrated properly?
Yes, I think you need to update the pages, but it should be possible to do this programmatically. But since the migration script has been removed, you need to do this with 3.6, or use the same code as in 3.6 or wait until the feature comes back.
Hm, I tried using the script I linked, but ran into issues… in the end I just wrote something incredibly simple that just updates each page with a random field which seemed to work fine although it feels a bit janky: