`ui.publicPages` should bypass `ui.isAccessAllowed` and `ui.pageMiddleware`
I think the previous behaviour was unintentionally misleading; and although https://github.com/keystonejs/keystone/pull/8115 resolved the behaviour as near to what existed before, I don't think this what developers are expecting.
Public pages shouldn't be redirected conditionally in respect to the session, they are public pages.
If they can be conditionally re-directed as a result of ui.isAccessAllowed or some other behaviour, then they aren't public pages, but conditional pages, and can be handled using ui.pageMiddleware.
This pull request resolves that ambiguity as a separate followup to https://github.com/keystonejs/keystone/pull/8115.
This pull request additionally restores a small optimization that we had which prevented hasInitFirstItemConditions calling the database for every request if a session already exists (and thereby, initialization already completed).
This is an unrelated I noticed when re-generating the types for the admin meta query, I don't think it was intentionally nullable. Types elsewhere assumed it was non-nullable so I've made it non-nullable.