Headless startup now actually waits for plugin/MCP mounts before the first command and first turn
Two points in headless session startup, firstCommandMountJoin and turnMountJoin, previously did nothing. They now, when a 'projects mount' is still pending, actually wait for it to finish via joinProjectsMountBeforeFirstCommand, bounded by timeout settings (PROJECTS_MOUNT_FIRST_COMMAND_WAIT_MS and a related floor value). turnMountJoin additionally waits for any pending 'grants' before letting the first turn proceed.
This should prevent headless sessions from running commands or turns before required plugin/MCP project mounts and permission grants are actually ready, avoiding race conditions where a headless session acts before its environment is fully set up.