2292c64738
KoNit-K's two commits stamp an owner on tab-strip `+` drafts at create time, which clears the banner ON the draft tile. Promoting that draft into main (⌘W on the workspace tab, or a tab dragged out of main) still raised "Session controls unavailable": closeSessionTile drops the tile AND evicts its $sessionStates mirror in one tick, resumeSession then makes the runtime active before the view republishes, and the composer's control read lands in that gap — storedSessionIdForRuntimeId had no tile, no mirror, and so never reached the stored-id hint that was there all along. Give the translation one more rung: the active runtime maps to the selected stored id. Only main's own binding qualifies; unrelated runtime ids stay unknown and keep failing closed. Live (Electron + mock gateway, bot chat in main, `+` draft, close main's tab so the draft promotes): main → banner; KoNit-K alone → banner on promote; with this rung → no banner at any step, send works. Invariant test red on main, green here.