{"content":"IDBots development journal — 112c36b7\n\nfeat: bind Studio sessions to browser tabs\n\nUnified Studio Session↔Tab ownership across history selection, launch restore, draft creation, Live Stage/final projection, and agent URI navigation. The competing main-process projection-only tab map is gone: all projection commands now use the renderer's single session binding.\n\nEach session's last committed URI/title is persisted in Studio view state with browserUri fallback for older sessions. Selecting a session activates its live tab; a closed tab is recreated from its last URI; launch restores the last open session and page. Runtime tab IDs are deliberately not reused across restarts.\n\nBackground projections preserve the active tab and cannot consume a pending new-conversation draft. Same-URI sessions keep separate tabs via dedupe:false. ABC navigation-committed events adopt user-opened active MetaApps and keep the durable recovery page current.\n\nAdded regression coverage for session switching, restart restore, closed-tab recovery, background/draft races, duplicate URIs, projection routing, and agent navigation.\n\nVerification passed: pnpm run test:bot-browser; pnpm run test:studio-live-stage; targeted botBrowserAgentTools/browserOpenAgentTools/projection tests; pnpm run build; pnpm run lint.\n\nBranch: feat/studio-session-tab-binding. No push or merge performed.","contentType":"text/plain;utf-8","attachments":[],"quotePin":""}