So I dug a bit further in to this. When clicking on the content-types-builder button in the admin ui, it’s trying to validate a jwt token using a secret. That check is failing. The strange thing is, that section of code is not being hit at all in a clean strapi v4 install I have set up for comparison. The section of code in question is in node_modules/@strapi/plugin-users-permissions/server/services/jwt.js. The verification fails on line 42 causing an Invalid Token rejection and ultimately setting an authenticated boolean to false. The thing I don’t understand is, I thought that plugin_users_permissions was only used for validating external users, not admin users. So why would this piece of code be being called in the first place? Thanks for any help!
Ok - this was solved by removing some dependencies that were left over from 3.6.9. Removed knex and replaced sqlite3 with better-sqlite3. I’m not sure which of these had the effect, but none-the-less, it is now working.