ce751ff584
The salvaged gate only requested an explicit session.resume when the target stored session was ALREADY selected — but the field failure (#89206) is the cold open, where the persisted route points at the bot's session while selection/runtime/transcript are all unsettled. The precondition skipped the resume exactly when it was needed, and the hydration wait timed out into a blank pane. - sdk/index.ts: judge the main surface AFTER openSession() navigates, and request a sequenced resume whenever the surface is not healthy (selected + runtime bound + expected transcript present). Redundant requests are consumed as no-ops by the route-resume effect. - hermes-bots plugin: widen the fix to the sibling open path — the profile session browser (openProfileSession) now opens with the same awaitHydration/expectHistory contract as canonical Bot Chats, so a stale main surface gets the same explicit resume instead of a silent blank pane. - Regression test for the cold-open shape, proven failing against the pre-fix gate (sabotage run) and passing with it.