영상 요소가 보이는데 눌러도 재생이 되지 않을 수 있다. 그 위에 실제 재생 버튼이 겹쳐 있기 때문이다. 북극성에서는 영상 바탕을 억지로 클릭하는 대신 선택한 응답의 재생 제어를 찾고, 그 뒤 같은 결과의 다운로드가 준비됐는지 확인하는 흐름을 만들었다.

먼저 어느 영상인지 정한다

Gemini 다운로드 경로는 준비된 video 후보를 현재 대상 이름이나 group 조건으로 좁힌다. 그 범위에서 ordinal을 보고 유일한 결과를 정한다. 별도 지정이 없으면 최신 후보를 고르지만 명시한 대상이 있으면 그 범위가 우선이다. 페이지의 아무 다운로드 버튼을 누르는 입구가 아니다.

chosenGroup을 남겨 다음 재생과 다운로드 후보도 같은 응답에 묶는다. 앞선 영상의 다운로드 버튼이 보이고 새 영상은 아직 준비 중인 상황에서 결과를 섞지 않으려는 연결이다. 새 영상 생성 확인과 기존 선택 영상 다운로드도 다른 작업이므로 요청에 맞는 결과를 먼저 정해야 한다.

다운로드가 이미 있으면 재생을 더하지 않는다

같은 group의 직접 다운로드 제어가 준비돼 있으면 그 경로를 쓴다. 없을 때만 재생 단계를 찾는다. 다운로드하려면 언제나 영상을 다시 재생해야 한다고 고정하지 않았다. 필요한 제어가 현재 있는지 읽으면 불필요한 조작도 줄일 수 있다.

재생이 필요한 경우에는 알려진 재생 이름의 button이 정확히 하나여야 한다. 후보0개나2개면 GEMINI_VIDEO_PLAY_TARGET_REQUIRED다. 클릭이 안 됐다는 이유로 화면 바탕이나 다른 프레임에 강제 클릭을 보내지 않는다. 실제 hit target에 맞는 현재 제어를 고르는 방식이다.

재생 뒤에도 같은 응답의 다운로드를 기다린다

재생 버튼을 누른 뒤 until은 같은 chosenGroup의 video-download가 비활성이 아닌지 읽는다. 다른 응답의 다운로드가 먼저 나타나도 조건이 맞지 않는다. 기다림이 끝난 다음 최신 관찰에서 내려받을 후보가 하나인지 다시 확인한다. 버튼 클릭 성공만으로 파일을 받았다고 말하지 않는다.

직접 제어가 있던 경로도 다시 읽은 자료에서 대상을 찾는다. 처음 얻은 ref를 오래 보관해 후속 조작에 그대로 쓰는 방식보다 현재 상태를 대조하는 경로가 필요했다. 재생·준비·다운로드 시작을 서로 다른 사건으로 보면 실패가 어느 단계인지도 설명하기 쉽다.

다운로드 응답도 실제 파일 자료를 요구한다

download는 호스트의 verified뿐 아니라 중첩 download의 ID·이름·양의 정수 크기·SHA-256 형식을 확인한다. 완료된 파일 영수증 없이 버튼을 눌렀다는 답만 돌아오면 GEMINI_DOWNLOAD_UNVERIFIED다. 다운로드한 파일의 식별과 바이트 근거를 후속 작업이 읽을 수 있어야 했다.

이 검사만으로 영상 전체의 디코딩과 모든 구간 재생이 검증되는 것은 아니다. 양의 크기와 hash는 저장 자료의 근거이고 실제 MP4 형식·재생 가능성은 필요한 경우 추가로 봐야 한다. 생성 결과 관찰, 파일 수신, 실제 활용 검수를 같은 성공으로 합치지 않았다.

시험은 잘못된 재생 후보에서 조작이 없는지도 본다

기존 fixture는 이전 영상과 새 영상, 이전 다운로드와 선택한 새 응답의 재생 버튼을 함께 둔다. 정상 경로는 실제 overlay 재생 제어만 누르고 새 group의 다운로드를 써야 한다. 재생 버튼이0개나2개면 click과 download가 모두 없어야 한다. 다른 결과를 대신 쓰지 않는 조건이다.

이번에는 이 코드와 시험을 읽었으며 실제 영상을 새로 생성·재생·다운로드하지 않았다. 독립 생성 관찰 모듈도 다운로드 실행기는 아니다. ready 영상이 있다는 선언과 실제 파일 영수증을 구분하는 판단을 보여 주는 부분만 제공한다. fixture의 성공을 서비스 전체의 성공으로 확대하지 않는다.

사용할 결과에 맞는 확인을 끝까지 연결한다

사용자는 영상 파일을 받기를 원하지 화면에 영상 모양이 보였다는 설명만 원하는 것은 아니다. 어느 결과를 골랐고 어떤 제어로 열었으며 어떤 파일을 받았는지까지 연결돼야 한다. 중간 버튼 하나가 성공해도 마지막 자료가 없으면 남은 일이 있다.

나는 에이전트가 편하게 다루는 프로그램이란 이런 연결을 짧은 결과로 읽을 수 있는 프로그램이라고 본다. 선택된 응답·현재 재생 제어·같은 다운로드·파일 증표를 나누면 재시도 전에 확인할 위치가 분명해진다. 클릭을 강하게 만드는 대신 결과의 계보를 정확히 만드는 방향이다.