<!-- FILE: _St/IG_StYellow/ai_read_완료.md | ROLE: IG 실제 확인 완료 기록 -->

## v288 IG 버전 회귀
- manifest `2.3.8.2880 / 2.3.8.288`, Side·MAIN marker `v288`: OK
- IG JavaScript syntax 및 test 37개: OK
- 기능 로직은 v286 기준 유지.


## v287 IG 버전 회귀
- manifest `2.3.8.2870 / 2.3.8.287`, Side `v287`: OK
- IG JavaScript syntax·test 38/38: OK
- 기능 로직은 v286 기준 유지.

## v279c 자동 MP4/JPG 실제 완료
- 2026-08-02 사용자 실제 Chrome CDP:O 연속 실행 확인.
- 계정 목록 순회, Top 목표 완료, MP4/JPG 실제 저장 주소, `WS8771 direct download complete`, 자동종료 확인.
- `test_ext_auto_v262_exact_restore_v279c.js` 정적 OK와 실제 저장 로그를 함께 근거로 완료 처리한다.
- URL 이동 시 `unload` 경고와 다음 Main 준비 대기는 v279cc 검증 항목으로 분리한다.

## v262 자동 다운로드 실제 확인 — v279c 복원 기준
- 2026-08-02 사용자 실제 확인.
- CDP:O, 2계정 순회, 전체 게시물 5개·MP4 5개·JPG 5개.
- `WS8771 direct download`와 실제 MP4/JPG 저장 주소 표시.
- 이후 v279c 자체 실제 Chrome 검증도 완료됐다.

## v279aaa 실제 완료
- Auto8700 실행 상태에서 Main MP4 수동 다운로드: OK.
- Auto8700 실행 상태에서 Main JPG 수동 다운로드: OK.
- Auto8700 미실행 상태에서 Main MP4 수동 다운로드: OK.
- Auto8700 미실행 상태에서 Main JPG 수동 다운로드: OK.
- 실제 WS8771 경로와 Chrome Downloads fallback 저장 경로를 모두 확인했다.
- MAIN hover 비활성 상태에서 unload JS 오류와 응답 없음이 재발하지 않았다.
- 따라서 `MAIN-HOVER-01`은 실제 사용자 검증 `OK`로 완료한다.

## v279aa 실제 확인 완료 범위
- MAIN Injection OFF 상태에서 Side 자동 Top 목표 2/2 완료.
- MP4 2개·JPG 2개 WS8771 direct download complete 확인.
- 자동종료와 실제 JPG 저장 경로 확인.
- 이 결과는 Side/WS 다운로드 계통 완료 근거이며 MAIN Injection 완료 근거는 아니다.

<!-- FILE: _St/IG_StYellow/ai_read_완료.md | ROLE: 테스트 로그로 확인된 완료 항목 -->
# IG_StYellow 완료·검증 기록 — v279a
## v279aa 정적 검증

- manifest `2.3.8.2792` / 표시 `2.3.8.279aa`: OK
- IG JavaScript 문법 6개: OK
- IG `test_*.js` 25/25: OK
- `test_ext_download_restore_v279aa.js`: OK
- 실제 Chrome 수동·Filtered 다운로드와 unload 재발 여부는 완료가 아니라 검증대기다.


## 이전 유지 완료

- v237 자동 background WS 강제 probe 회귀
- `AD-01~AD-07` 체크 ID·한국어 상태·중복 방지 회귀
- 실제 Windows 자동 직접 다운로드 MP4·JPG·JSON·HTML 저장

## v239 코드 검증

- manifest/version_name `2.3.8.239`
- JavaScript syntax OK
- `test_ext_module.js`: OK
- `test_ext_main_ui.js`: OK
- Main 원점·상태 상시영역 숨김 토큰 확인
- CDP 옆 진단 토글·작은 패널·원본 상태 미러링 토큰 확인
- Main 날짜·통계 막대의 Side 설정 연동 확인
- rank map 기반 `No000` 복원 확인
- Prev/Next 현재 항목 시각 강조 확인

## 완료로 표시하지 않는 항목

- 실제 Chrome에서 진단 버튼 위치·토글 동작
- 실제 Main 카드의 No·기간 색상·통계 막대 렌더링
- 실제 Prev/Next 선택 강조 이동


## v255 코드 검증

- manifest/version_name `2.3.8.255`
- `test_ext_auto_target_completion.js`: OK
- `test_ext_auto_v249_regression.js`: OK
- `test_ext_main_ui.js`: OK
- `test_ext_module.js`: OK
- JavaScript syntax: OK
- 실제 Top목표·날짜 경계·All time·자동종료 화면은 검증대기다.

## v256 코드 검증

- manifest/version_name `2.3.8.256`
- Ext 테스트 6개: OK
- 전체 JavaScript syntax: OK
- Python pytest 60 passed / OK
- 250개 증분 전송 100/100/50, 동일 재전송 0, 변경 1건 전송: OK
- 실제 Chrome 대량 스크롤과 WS 운영 로그는 검증대기다.


## v257 코드 검증

- manifest/version_name `2.3.8.257`
- Ext 테스트 7개: OK
- `test_ext_virtual_list.js`: 1,000개 범위에서 DOM window 최대 120개 계산 OK
- `test_ext_stats_incremental.js`: 같은 10분 변화 보류, 새 10분 변경 저장, 새 10분 동일값 생략 OK
- 전체 JavaScript syntax: OK
- 전체 Python pytest 61 passed / OK
- 실제 Chrome 대량 스크롤과 운영 SQLite 장시간 행 증가 검증은 완료가 아니라 검증대기다.


## v257 실제 계정 목록 완료 표시 실패 정정

- 실제 입력 14/44 상태에서 완료 문구가 44/44로 강제 표시된 사례가 확인됐다.
- 기존 v255 정적 테스트의 계정 n/n 유지 항목은 완료로 인정하지 않고 `test_list.md` FAIL·검증대기로 정정한다.
- 실제 n/n 순회 완료와 다음 실행 시작 0/n 초기화를 분리하는 후속 패치가 필요하다.


## v259 코드 검증

- manifest/version_name `2.3.8.259`
- Ext JavaScript 테스트 7개: OK
- 가상 DOM·spacer·행 높이 측정·scrollBy 실행 경로 제거: OK
- 전체 카드 DOM 순서 유지와 화면 밖 이미지 src/srcset 해제 정적 회귀: OK
- 현재 계정/전체 실행 게시물·MP4·JPG 집계 정적 회귀: OK
- 실제 Chrome 128·600~800개 스크롤과 메모리, 다계정 집계는 완료가 아니라 검증대기다.


## v260 코드 검증

- manifest/version_name `2.3.8.260`
- Ext JavaScript 테스트 8개: OK
- 전체 JavaScript syntax 19개: OK
- Python compile 32개: OK
- 전체 Python pytest 61 passed / OK
- 자동 시작 탭 보존, 무한 대기·재개, queue 완료 guard, 전체 실행 집계 유지 정적 회귀: OK
- WS 중복확인·직접 다운로드 도중 연결 단절 시 같은 게시물·파일에서 무한 대기 후 재시도 정적 회귀: OK
- 실제 Chrome 탭 전환·복귀, WS 재연결, 44/44 종료는 완료가 아니라 검증대기다.


## v260 실제 Chrome 검증 — 2026-07-28

- 계정 `13/44`에서 다른 탭·창 사용 시 `⚠ 자동 대기중`: OK
- 계정 위치와 전체 실행 집계 유지: OK
- 원래 자동실행 탭 복귀 후 `자동 재개됨` 및 동일 단계 재개: OK
- 계정 `29/44`에서 사용자 직접 중단 안내·사유 표시: OK
- `T-AUTO-WAIT-RESUME-001`: 완료

## v261 코드 검증

- manifest/version_name `2.3.8.261`
- Ext JavaScript 테스트 9개: OK
- JavaScript syntax 20개: OK
- Python compile 32개: OK
- 전체 Python pytest 61 passed: OK
- 현재 탭 무새로고침 재읽기, 사용자 중단 스냅샷·자동재시작, 계정명 표시, 방식 2/3 배치, 구 영문 안내 삭제 정적 회귀: OK
- 실제 Chrome 검증 전에는 v261 신규 기능을 완료로 표시하지 않는다.


## v262 코드 검증

- manifest/version_name `2.3.8.262`
- `test_ext_side_reread_restart_ui.js`: 중단 처리 중 비활성·정리 후 활성·다른 오류 숨김 함수 실행 OK
- `test_ext_side_account_link_ui.js`: 8780 href 설정/제거·공유 계정 상태·현재 media 대상 판정·이전 페이지 target 거부 함수 실행 OK
- Ext JavaScript 테스트 10개, JavaScript syntax 21개, Python compile 32개, 전체 pytest 61 passed: OK
- 실제 Chrome 클릭·화면 전환 검증 전에는 신규 기능을 완료로 표시하지 않는다.

## v263 코드 검증

- manifest/version_name `2.3.8.263`
- `test_ext_side_reread_restart_ui.js`: 별도 재시작 UI 없음, 자동시작 이어하기·리셋·준비 중 중지 상태 OK
- `test_ext_side_account_link_ui.js`, `test_ext_main_ui.js`: hover 계정 전달·청록 강조 토큰 OK
- `test_ext_module.js`: 추가 순서 유지·일반 저장 비정렬·명시 정렬 OK
- 실제 Chrome 동작은 검증대기다.
- IG Ext JavaScript 10개, JavaScript syntax 17개, Python compile 32개, 전체 pytest 60 passed: OK

## v264 코드 검증

- manifest/version_name `2.3.8.264`
- `test_ext_spa_injection.js`: target shortcode carry, fetch·History·DOM·video 트리거, 한글 함수 역할 주석, 실제 host hover, 같은 카드 `data-code` 재연동 계정 변경 함수 실행 OK
- 기존 렌더링 문자열 기반 hover fallback 제거 회귀: OK
- IG Ext JavaScript 11개, JavaScript syntax 22개, Python compile 32개, 전체 pytest 60 passed: OK
- 실제 Chrome Explore→게시물, Reels 최초·연속 이동, hover 고정 상태 계정 갱신은 완료가 아니라 검증대기다.



## v264 실제 Chrome 검증 — 2026-07-29

- Explore→게시물, Reels 최초·연속 이동, URL·DOM·video·fetch 재판정: OK
- 이전 Side 계정 제거와 현재 shortcode 일치 계정 적용: OK
- `T-IG-SPA-INJECTION-001`: 완료

## v265 코드 검증

- `test_ext_spa_injection.js`: Explore map 왕복·hover 200ms·Side 이동 유지·DOM 진단복사·nav 숨김 회귀 OK
- IG Ext JavaScript 11개, JavaScript syntax 22개, Python compile 32개, 전체 pytest 60 passed: OK
- 실제 Chrome 검증 전 신규 v265 항목은 완료가 아니다.

## v266 코드·정적 회귀 검증

- manifest/version_name `2.3.8.266`
- Main `No000`·Rank badge·순위 종류 행·우측 1/Prev/Current/Next/마지막 DOM·순위 설정 탭 부재: OK
- `#IGBLUE_NoNav_*` query/click 부재, 내부 `IGBLUE/internal_no_nav_state`·Current/Next handler·shortcode 카드 탐색 존재: OK
- 삭제된 시각 helper `teMainAnchorId` 잔여 호출 제거: OK
- IG Ext JavaScript 12개: OK
- 전체 JavaScript syntax 23개: OK
- Python compile 32개: OK
- 전체 pytest 60 passed: OK
- 실제 Chrome 자동실행 Current/Next·중지 후 이어하기는 완료가 아니라 검증대기다.

## v265 DOM 진단복사 실제 결과 — 2026-07-29

- Explore 콘텐츠 카드 20개 중 20개 인젝션: OK
- 추가 스크롤 후 콘텐츠 카드 27개 중 27개 인젝션: OK
- 진단상 `has_injection=false` 1건은 게시물 썸네일이 아니라 Instagram 좌측 `/reels/` 메뉴 링크로 확인
- `DOM 진단복사` 실제 클립보드 출력: OK


## v267 코드·정적 회귀 검증

- Side No/rank 복원과 Main 시각 부재 경계: OK
- 내부 Current/Next·shortcode 탐색 유지: OK
- 생성경로 H/D/B 속성·색상·DOM duplicate 진단 필드: OK
- 테스트: `test_ext_rank_visual_removal.js`, `test_ext_home_injection_source_diagnostic.js`, 전체 `test_ext_*.js` 13개
- 전체 정적 회귀: Ext 13개 OK, JavaScript syntax 24개 OK, Python compile 32개 OK, pytest 60 passed.
- 실제 Chrome Side 표시와 홈 중복 원인은 검증대기다.


## v267 홈 중복 경로 실제 확인

- 홈 동영상에서 `H_IMAGE_LINK + D_VIDEO_LINK` 동일 shortcode 중복 확인: OK
- 이미지 전용 게시물은 중복 없음: OK
- 생성경로 진단 기능 완료, 중복 제거는 v268 검증대기

## v269 사용자 실동작 완료 반영 — 2026-07-29

관련 정적·단위 회귀: Ext JavaScript 15개 OK.

- `T-ANALYZE-SIDEBAR-001`: 8780 계정 목록에서 클릭 시 해당 계정 검색·상세 표시 정상
- `T-IG-MAIN-DIAG-001`: Main DOM 진단복사와 Side 막대 차트·날짜 테두리 정상
- `T-HTML-REPORT-THUMB-001`: 기존 계정 HTML 보고서 존재·열림
- `T-SIDE-MIN-FILTER-001`: 댓글·하트 최소 필터 정상
- `T-ITEM-ONLY-001`: 다운로드 없이 통계 수집 정상
- `T-AUTO-V249-FLOW-001`: 자동 계정 이동·다른 탭 사용 후 복귀 정상
- `T-SIDE-ANALYZE-LINK-001`: Side 계정별 8780 링크 정상
- `T-SIDE-TAB-REREAD-001`: 현재 탭 재읽기 정상
- `T-AUTO-PROGRESS-CONTINUE-001`: 중단 후 이어하기·진행상태 리셋 정상
- `T-SIDE-CURRENT-ACCOUNT-ADD-001`: 현재 계정 추가 수정본 정상
- `T-ACCOUNT-ORDER-SAVE-001`: 계정 순서 저장·명시 정렬 정상
- `T-EXPLORE-HOVER-ACCOUNT-001`: Explore·Reels hover 계정 전달 정상
- `T-EXPLORE-POPUP-RETURN-001`: Explore 팝업 복귀 후 인젝션 유지 정상
- `T-EXPLORE-HOVER-DELAY-001`: 0.2초 hover 통과 오감지 방지 정상
- `T-SIDE-RANK-RESTORE-001`: Side No·순위 복원 정상
- `T-HOME-INJECT-DUPLICATE-001`: 홈 동영상의 이미지+동영상 이중 인젝션 제거 정상
- `T-EXPLORE-SPA-ENTRY-RECOVERY-001`: 홈→Explore 첫 진입 인젝션 정상

부분 확인으로 완료 승격하지 않은 항목:

- `T-INJECT-DOWNLOAD-META-001`: 개별 게시물 MP4와 Side 썸네일 수동 다운로드는 정상. 전체 메타·정확한 ✅·carousel은 미확인
- `T-AUTO-RUN-COUNT-001`: Analyze8780 계정별·전체 집계는 확인됐으나 Side 현재 계정·전체 실행 집계 기준은 별도 확인 필요
- `T-SIDE-STATS-MODE-001`: 설정 UI·기본 연동 표시는 확인됐으나 비연동 실제 실행 미확인

## v269 코드 검증

- manifest/version_name: `2.3.8.269`
- Ext JavaScript `test_ext_*`: 15개 OK
- 전체 JavaScript syntax: 26개 OK
- Python compile: 33개 OK
- 전체 pytest: 61 passed
- `test_ext_private_views_auto_download.js`: 조회수 -1·views_available=0, 활성 참여지표 단순합산, snapshot No001 AD-03 통과, 실패 뒤 다운로드 금지 OK
- 실제 Instagram 비공개 조회수 Top 1 자동 다운로드는 완료가 아니라 검증대기다.



## v270 코드 검증

- manifest/version_name: `2.3.8.270`
- `test_ext_immediate_top_download.js`: OK
- Ext JavaScript 16개: OK
- JavaScript syntax 27개: OK
- 전체 pytest 61개: OK
- No001 즉시 다운로드·완료 후 추가 swipe·날짜 종료 뒤 다음 계정 이동은 실제 Chrome 검증 전이므로 완료 처리하지 않는다.


## v271 코드 검증

- manifest/version_name: `2.3.8.271`
- `test_ext_overlay_mode_bridge.js`: 3개 Side 옵션, content bridge 함수 정의·실행, mode fallback, ER weights·visual settings 전달, MAIN class/CSS 계약 OK
- IG Ext JavaScript `test_ext_*`: 17개 OK
- 전체 JavaScript syntax: 28개 OK
- Python compile: 33개 OK
- 전체 pytest: 61 passed
- 실제 Chrome의 Detail·Down icon only·None 전환과 새로고침·SPA 유지 확인 전에는 `T-INJECT-OVERLAY-MODE-001`을 완료로 표시하지 않는다.


## v272 사용자 실동작 완료 반영

- 조회수 비공개 조건 후보 1개 실제 다운로드 확인
- 다운로드 뒤 다음 계정 URL 이동 확인
- `T-SIDE-PRIVATE-VIEW-RANK-001`, `T-AUTO-IMMEDIATE-TOP-001`: 완료

## v272 코드 검증

- manifest/version_name `2.3.8.272`
- `test_ext_visual_settings_download_status.js`: OK
- IG Ext JavaScript `test_ext_*`: 18개 OK
- 전체 JavaScript syntax: 29개 OK
- Python compile: 33개 OK
- 전체 pytest: 61 passed
- 실제 Chrome Visual settings 독립 적용과 Main 다운로드 상태 강조는 검증대기

## v273 코드 검증

- manifest/version_name `2.3.8.273`
- `test_ext_account_queue_v273.js`: OK
- IG Ext JavaScript `test_ext_*`: 19개 OK
- 전체 JavaScript syntax: 30개 OK
- 전체 pytest: 63 passed
- 실제 Chrome의 indexed start·없어진 계정 tombstone·DB 파일 버튼은 검증대기


## v272 사용자 실동작 추가 완료 — 2026-07-31

- `T-VISUAL-SIDE-MAIN-001`: Use/Side/Main 독립 저장·적용 정상
- `T-MAIN-DOWNLOAD-STATUS-001`: MP4/JPG Main DOM 다운로드 상태 강조 정상

## v273 부분 실동작 확인 — 2026-07-31

- `1/N 이상` 지정 계정 URL 직접 시작: OK
- `0/N` 비 Instagram 시작과 사용자 중지 상태는 회귀가 확인되어 완료가 아니다.


## v274 코드 검증

- manifest/version_name: `2.3.8.274`
- `test_ext_auto_control_eta_v274.js`: OK
- IG Ext JavaScript `test_ext_*`: 20개 OK
- 전체 JavaScript syntax: 31개 OK
- Python compile: 33개 OK
- 전체 pytest: 63 passed
- `검증목록_v274.md`: 01~52 연속·v274 test ID 포함 OK
- 0/N 비 Instagram 실제 안내, 사용자 중지·자동종료 후 버튼 상태, tab_id 탭 전환, 장시간 전체 ETA는 실제 Chrome/Windows 검증 전이므로 완료 처리하지 않는다.


## v276 코드 검증

- `test_ext_runtime_diagnostic_v276.js`: 정적 계약 OK
- IG Ext JavaScript 22개, JavaScript syntax 33개, Python compile 33개, pytest 63 passed
- `검증목록_v276.md` 01~56 연속 확인 OK
- 실제 3/3 응답 없음 원인과 수정 대상은 검증대기


## v277 코드 검증

- manifest/version_name `2.3.8.277`
- `test_ext_side_control_save_v277.js`: OK
- IG Ext JavaScript 23개: OK
- 전체 JavaScript syntax 34개, Python compile 33개: OK
- CDP gate·popup handoff·저장 정책 helper·metadata 상태 정적/단위 계약 OK
- 실제 Chrome 동작은 검증대기


## v278 코드·정적 회귀 검증

- manifest/version_name: `2.3.8.278`
- `test_ext_download_cache_recovery_v278.js`: exact snapshot No·shortcode·owner·선택 자산 URL 복구, Main actual shortcode 충돌 차단, 수동 `MANUAL_SINGLE` 유지 계약 OK
- `test_ext_private_views_auto_download.js`, `test_ext_auto_v249_regression.js`, `test_ext_main_ui.js`: v262 cache 회복 복원 회귀 OK
- IG Ext JavaScript `test_ext_*`: 24개 OK
- 전체 JavaScript syntax: 35개 OK
- Python compile: 33개 OK
- 전체 pytest: 65 passed
- `검증목록_v278.md`: 01~60 연속·`T-AUTO-CACHE-RECOVERY-001` 포함 OK
- 실제 v278 Chrome·Windows의 Video/Image 조합별 다계정 다운로드와 `[복구완료]` 로그는 검증 전이므로 `T-AUTO-CACHE-RECOVERY-001`은 `[코드반영]`으로 유지한다.


## v279 패키지 회귀

- IG manifest/Side 표시 버전 `2.3.8.279 / v279`
- v278 다운로드 cache recovery 테스트 유지
- IG 실제 동작 변경 없음

## v279a 정적 검증

- `node --check`: `background.js`, `content_instagram.js`, `side.js`, `side_ws.js`, `side_xlsx_export.js`, `js/instagram_inject.js` 모두 OK
- IG `test_*.js`: 24/24 OK
- 신규 테스트: `test_ext_download_v262_bridge_v279a.js` OK
- WS 연동 회귀: `_St/WS8771/test_ws8771_module.py` OK
- manifest JSON·허용 키 검사 OK
- 확인 범위: v262 전송 core, v276 pagehide/runtime 진단 제거, v279 비다운로드 marker 유지
- 실제 Chrome 다운로드·페이지 이동은 검증대기이며 완료 처리하지 않는다.

## v279d 코드·정적 회귀 검증 — 2026-08-03
- manifest/version_name: `2.3.8.27910 / 2.3.8.279d`
- 새 탭 생성→ready→활성화→이전 탭 종료 순서 정적 테스트: OK
- 새 탭 실패 시 이전 탭 보존·새 탭 제거 정적 테스트: OK
- 이전 탭 unload 전용 guard와 900ms timeout 정적 테스트: OK
- IG JavaScript test_*: 34개 OK
- 전체 JavaScript syntax: 45개 OK
- Python compile: 33개 OK
- 전체 pytest: 71 passed
- 실제 Chrome 자동 전환은 아직 검증대기이므로 기능 완료로 기록하지 않는다.


## v279d 실제 Chrome 완료 — 2026-08-03
- CDP:O 시작에서 2계정·3계정 자동 실행 완료.
- 3계정×Top3, MP4/JPG 파일 18/18, WS8771 direct, 자동종료 OK.
- 새 탭 준비·활성화·이전 탭 종료·다음 계정 진행 OK.

## v280 코드·정적 검증 — 2026-08-03
- manifest/version_name: `2.3.8.2800 / 2.3.8.280`
- `test_ext_tab_control_v280.js`, 2단계 OWNER 인계 회귀 OK.
- 서비스 워커 재시작 시 이벤트 상태를 `READY/OWNER/RETIRED/CLOSED/FAILED`로 복원하고 같은 run_seq의 높은 generation을 우선하는 회귀 OK.
- IG JavaScript test_*: 35개 OK
- 전체 JavaScript syntax: 46개 OK
- Python compile: 33개 OK
- 전체 pytest: 71 passed
- 실제 CDP:X→O OWNER 인계는 검증대기.
