요청할 때마다 탭을 새로 만들면 계정과 대화, 미전송 원고가 여러 곳에 흩어진다. 나는 적합한 기존 탭을 먼저 찾게 했다. 하지만 기존 탭이면 아무 원고나 가져다 써도 된다는 뜻은 아니어서 재사용의 범위와 새로고침 조건을 따로 정했다.

같은 주소의 채택과 다시 탐색을 나눈다

같은 URL을 가진 기존 탭을 채택할 때 불필요하게 reload하면 페이지 안의 입력 상태가 사라질 수 있다. tab-reuse는 선택한 페이지와 navigate 여부를 함께 돌려준다. 원래 주소가 같으면 그 자리를 이어 쓰는 경로가 된다.

다른 검색어처럼 실제 이동이 필요한 경우에는 기존 탭에서 새 주소로 탐색할 수 있다. “재사용”이 아무 이동도 하지 않는다는 뜻은 아니다. 자료 보존을 위한 비탐색과 새 결과를 얻기 위한 탐색을 구별해야 했다. 표시용으로 정리한 주소만 비교해 검색어 차이를 잃지 않는 것도 중요했다.

계정과 리소스의 차이는 주소 비교에 남긴다

sameTaskRoute는 같은 검색 서비스의 질의 변경을 재사용할 수 있게 하면서 계정과 리소스를 나누는 매개변수는 보존한다. 카페 club 식별과 블로그 소유 경로, Gemini의 서로 다른 대화 경로를 같은 것으로 묶지 않는다.

추적용으로 분류한 일부 값과 실제 업무 정체성을 가르는 값은 의미가 다르다. 모두 지워 같은 주소처럼 만드는 것은 간단하지만 다른 자료를 덮을 수 있다. 이 분류도 모든 서비스의 미래 매개변수를 완벽히 안다는 뜻은 아니다. 새 사이트를 연결할 때는 어떤 값이 계정·문서·대화를 구별하는지 다시 확인해야 한다.

프로그램에 연결된 탭과 일반 후보를 구별한다

저장 프로그램은 automationKey와 alias로 연결한 탭을 찾고 프로젝트·프로필 범위 안에서 사용한다. 명시한 다중 탭 alias는 main과 구별된다. 새 표면이 필요한 요청의 예외도 보존한다. 모든 탭을 하나로 합치는 최적화가 아니다.

일반 후보에서는 기본·현재 탭과 정확한 주소, 유일한 최근 사용 같은 기준을 본다. 후보가 여러 개인데 선택 근거가 없으면 재사용하지 않는 경우도 있다. 실제 구현은 단순한 URL 첫 일치와 다르다. 어떤 규칙이 이번 선택을 만들었는지 확인해야 기존 문서의 소유를 잘못 넘기지 않는다. 실제 채택 경로는 드라이버 연결과 작업 소유도 갱신한다. 목록에서 ID를 고르는 것과 실행 제어를 연결하는 것은 다른 단계다.

채택했다고 원고 확인까지 끝난 것은 아니다

원고용 alias의 기존 편집기를 새로고침 없이 채택하는 경로가 있다. 하지만 채택 자체가 그 원고를 덮어써도 된다는 판정은 아니다. 이후 workflow의 전체 원고와 입력 조건 검사가 필요하다. 재사용 선택과 편집기 쓰기 정책은 별도다.

프로그램에 연결된 탭이라도 요청 주소가 다르면 navigate 판단이 생길 수 있다. 그러므로 탭 재사용 함수 하나로 모든 초안 보존을 보장한다고 쓰지 않는다. 저장되지 않은 내용과 기존 미디어, 다른 작업의 원고를 지키는 조건이 실행 절차에도 있어야 한다. 편의 선택과 실제 보존 근거를 함께 관리한다.

부정 요청도 새 탭 지시로 읽지 않는다

“새 탭 열지 마세요”에는 새 탭이라는 단어가 있지만 생성 요청은 아니다. requestsNewTab 시험은 한국어·영어의 부정 표현과 명시한 생성 요청을 나눠 본다. 같은 문장 뒤에 별도 이미지 작업은 새 탭에서 하라는 경우도 구별한다.

재사용 시험은 계정·프로젝트 분리와 모호한 후보, 기존 편집기 비탐색, 다른 검색어 탐색을 확인한다. 이 글은 현재 함수와 해당 시험, 과거 실사용 기록을 읽었다. 새 탭을 실제 계정에서 반복 생성한 검수는 아니며 모든 자연어의 긍정·부정을 완벽히 판정한다고 소개하지 않는다.

적게 여는 것보다 이어 쓰는 이유가 중요하다

탭이 적다는 숫자만으로 작업 환경이 좋아지지는 않는다. 같은 업무와 계정, 대화를 이어 쓰고 다른 원고를 보존할 때 재사용의 가치가 생긴다. 새 창을 안 만든다는 약속 때문에 필요한 독립 작업까지 합쳐서는 안 된다.

나는 기존 탭을 먼저 찾되 그 선택의 경계와 탐색 여부를 명시했다. 사용자는 창이 늘지 않아 편하고 제작자는 왜 그 탭을 골랐는지 설명할 수 있어야 한다. 이 연결이 있어야 에이전트의 편의가 사용자가 작성 중인 자료를 잃는 원인이 되지 않는다.