The purpose of the go_router for Flutter is to use declarative routes to reduce complexity, regardless of the platform you're targeting (mobile, web, desktop), handling deep linking from Android, iOS and the web while still allowing an easy-to-use developer experience.
When using Navigator 1.0, Flutter allow the option to hide or unhide CupertinoTabBar across screens when CupertinoTabScaffold is used whether in CupertinoApp or in MaterialApp as stated in the Flutter Documentation
/// To push a route above this [CupertinoTabView] instead of inside it (such
/// as when showing a dialog on top of all tabs), use
/// `Navigator.of(rootNavigator: true)`.
///
/// See also:
///
/// * [CupertinoTabScaffold], a typical host that supports switching between tabs.
/// * [CupertinoPageRoute], a typical modal page route pushed onto the
/// [CupertinoTabView]'s [Navigator].
Expected Behaviour
When GoRouter is used, there should be an option to hide or hide CupertinoTabBar
When using Navigator 1.0, Flutter allow the option to hide or unhide CupertinoTabBar across screens when CupertinoTabScaffold is used whether in CupertinoApp or in MaterialApp as stated in the Flutter Documentation
Expected Behaviour When GoRouter is used, there should be an option to hide or hide CupertinoTabBar