your OnInitializedAsync() updates a state variable property, but does not force a state change. but your after render does. if after render completes after the api call updates the state data, the page works, otherwise not. move the StateHasChanged() to the OnInitializedAsync().
note: if OnInitializedAsync() returns task not completed (it is not called with an await as all renders are sync), the component is rendered before the task completes. if the OnInitializedAsync() then calls state changed() a re-render is done. This is how your first page is able to re-render the progress bar.