@@ -28,11 +28,28 @@ export function generateStoryUrl(baseUrl, storyId) {
2828export async function navigateToStory ( tab , storyId , baseUrl , options = { } ) {
2929 let { timeout = 30000 } = options ;
3030 let entry = tab . _poolEntry ;
31+ let verbose = process . env . VIZZLY_LOG_LEVEL === 'debug' ;
32+
33+ // Debug: log navigation mode
34+ let navMode = ! entry ?. storybookInitialized
35+ ? 'full-page-init'
36+ : entry . currentStoryId === storyId
37+ ? 'skip-same-story'
38+ : 'client-side' ;
39+
40+ if ( verbose ) {
41+ console . error ( ` [nav] ${ storyId } : ${ navMode } (poolEntry: ${ ! ! entry } )` ) ;
42+ }
3143
3244 // First time this tab visits Storybook: full page load
3345 if ( ! entry ?. storybookInitialized ) {
46+ let start = Date . now ( ) ;
3447 await fullPageNavigation ( tab , storyId , baseUrl , timeout ) ;
3548
49+ if ( verbose ) {
50+ console . error ( ` [nav] ${ storyId } : full-page took ${ Date . now ( ) - start } ms` ) ;
51+ }
52+
3653 if ( entry ) {
3754 entry . storybookInitialized = true ;
3855 entry . currentStoryId = storyId ;
@@ -42,20 +59,32 @@ export async function navigateToStory(tab, storyId, baseUrl, options = {}) {
4259
4360 // Same story (maybe different viewport) - no navigation needed
4461 if ( entry . currentStoryId === storyId ) {
62+ if ( verbose ) {
63+ console . error ( ` [nav] ${ storyId } : skip (same story)` ) ;
64+ }
4565 return ;
4666 }
4767
4868 // Subsequent visit: use client-side navigation
4969 try {
70+ let start = Date . now ( ) ;
5071 await clientSideNavigation ( tab , storyId , timeout ) ;
72+
73+ if ( verbose ) {
74+ console . error ( ` [nav] ${ storyId } : client-side took ${ Date . now ( ) - start } ms` ) ;
75+ }
5176 entry . currentStoryId = storyId ;
5277 } catch ( error ) {
53- // Log and fallback to full navigation if client-side fails
54- console . debug ?. (
55- `Client-side navigation failed for ${ storyId } , falling back to full page load:` ,
56- error . message
78+ // Log fallback - always show since this is unexpected behavior
79+ console . error (
80+ ` [nav] ${ storyId } : client-side failed, falling back to full-page: ${ error . message } `
5781 ) ;
82+ let start = Date . now ( ) ;
5883 await fullPageNavigation ( tab , storyId , baseUrl , timeout ) ;
84+
85+ if ( verbose ) {
86+ console . error ( ` [nav] ${ storyId } : fallback full-page took ${ Date . now ( ) - start } ms` ) ;
87+ }
5988 entry . currentStoryId = storyId ;
6089 }
6190}
0 commit comments