# Video Downloader — 개선 백로그 > **출처**: 2026-07-26 다차원 코드 감사(9개 차원, 원시 63개 → 상위 15 선정). 모두 실제 소스 기반(file:line 검증). > **사용법**: 완료한 항목은 `- [ ]` → `- [x]` 로 체크. ## 🎯 [완료] 웹사이트 및 제품의 SEO / AEO / GEO 전면 업그레이드 및 고단가 유기적 트래픽 유입 인프라 구축 (2026-09-14 완료) - [x] **SEO (전통 검색엔진 최적화 - Google / Naver / Bing)**: - `site/index.html` 내 풍부한 Schema.org JSON-LD 구조화 데이터 탑재: `SoftwareApplication` (버전, 다운로드 링크, 무료 가격 모델, 평점 4.9/5, 세부 기능 명세) 및 `FAQPage` (로그인 세션, IDM 대체, 무료 정책 Q&A). - 글로벌 고단가(CPM $10~$25) 해외 트래픽 유입을 위한 이중 Hreflang 메타 태그 (`ko`, `en`, `x-default`) 및 타깃 키워드 메타 태그 적용. - HLS m3u8 고검색량 키워드 전용 랜딩 페이지 `site/how-to-download-m3u8.html` 신설 및 `HowTo` + `FAQPage` 복합 Schema.org 배포. - [x] **AEO (인공지능 답변엔진 최적화 - ChatGPT Search / Perplexity / Copilot / Naver Cue:)**: - 사용자 질문에 직결되는 두괄식 즉답(Inverted Pyramid) Q&A 구조 배치. - 경쟁 상용 툴 대비 특장점 상세 비교 랜딩 페이지 `site/vs-idm-alternative.html` 신설: PACA vs IDM vs 4K Video Downloader vs 크롬 확장 프로그램 8대 핵심 항목(가격, 내장 브라우저, 세션 쿠키, m3u8 자동 감지, AES-128, 4K/8K, 모바일 스트리밍, 악성코드 안전성) 비교 매트릭스 표 구축. - [x] **GEO (생성형 AI 모델 인덱싱 및 인용 최적화 - Answer.AI / Anthropic 표준)**: - Answer.AI 표준 `/llms.txt` 요약 명세서 구축. - LLM 모델이 직접 크롤링하여 학습/인용할 수 있는 4,000자+ 상세 기술 명세서 `site/llms-full.txt` 신설 (아키텍처, 벤치마크 수치, 세부 가이드, FAQ, 보안 정책). - `site/robots.txt`에 주요 AI 크롤러 봇(`GPTBot`, `PerplexityBot`, `ClaudeBot`, `Google-Extended`, `Bingbot`, `Yeti`) 전면 허용 및 `llms.txt` 경로 공개. - [x] **사이트맵 및 탐색 내비게이션 확장 (`site/sitemap.xml`)**: - 메인, 다운로드, 가이드뿐 아니라 m3u8 가이드, IDM 비교, `llms.txt`, `llms-full.txt` 등 전체 리소스 색인 등록 및 최신 `lastmod` 부여. - [x] **TDD 게이트 무결성 및 전수 검증 (`SiteSeoAeoGeoGateTests.cs` Gate 211~213)**: - Gate 211 (Schema.org 구조화 데이터 및 HowTo/FAQPage 무결성), Gate 212 (AI 크롤러 봇 허용 및 llms.txt/llms-full.txt 규격), Gate 213 (AEO 비교 테이블, sitemap.xml, Hreflang) 전수 통과. - 솔루션 전체 테스트 **2,749 / 2,749 GREEN 전수 통과 (100% 통과, 0 실패, 0 스킵)**. ## 🎯 [완료] 가짜 모의 광고 전면 척결 및 실시간 구글 공식 광고 네트워크(GPT/AdSense) 인프라 & ads.txt/도메인 오리진 격리 수익화 정상화 (2026-09-14 완료) - [x] **가짜 모의 광고(쿠팡, 삼성 등 목업 카드) 전면 영구 박멸**: - `DesktopAdModels.cs`, `DesktopAdBannerControl.xaml.cs` 등 모든 프로덕션 코드 및 모델에서 하드코딩된 모의 광고(쿠팡, 갤럭시 S24, 삼성전자, 가짜 할인 카드 등)를 100% 제거. - 가짜 목업 UI 대신 실제 구글 광고 네트워크(Google Publisher Tag `gpt.js` 및 Google AdSense `adsbygoogle.js`) 연동. - [x] **공식 구글 퍼블리셔 인증 파일 배포 (`site/ads.txt`, `site/app-ads.txt`)**: - 사용자 고유 퍼블리셔 ID 기반 정합 레코드 배포: `google.com, pub-1039714767792854, DIRECT, f08c47fec0942fa0`. - 가상 호스트 디렉터리(`ad_html/ads.txt`, `ad_html/app-ads.txt`) 및 공식 웹 사이트 배포 디렉터리(`site/`)에 배치하여 크롤러 인증 및 수익화(단가 획득) 보장. - [x] **uBlock Origin 확장 프로그램 간섭 차단을 위한 독립 광고 WebView2 환경 구축**: - 사용자 프로필에 설치된 uBlock Origin 등 광고 차단 확장이 브라우징 탭에는 정상 동작하되, 데스크톱 광고 슬롯은 차단하지 않도록 독립 전용 프로필(`%AppData%\Paca\ad_profile`) 및 `--disable-extensions` 플래그로 분리 격리. - [x] **가상 HTTPS 오리진 매핑 (`https://ads.paca.cloud`)**: - `SetVirtualHostNameToFolderMapping`을 통해 로컬 `file:///` 프로토콜의 Referer 부재 및 AdSense 거부 문제를 해결하고, 실제 웹 보안 HTTPS 오리진(`https://ads.paca.cloud/`)으로 광고 서빙. - ``, ``, 정규화 canonical 태그 탑재. - [x] **TDD 게이트 무결성 및 실시간 렌더링 검증**: - Gate 209 (퍼블리셔 식별자 및 ads.txt/app-ads.txt 검증), Gate 210 (가짜 모의 광고 박멸 및 AdSense/GPT 스니펫 무결성 검증) 통과. - 전체 테스트 **2,746 / 2,746 GREEN 전수 통과 (100% 통과, 0 실패, 0 스킵)**. - 실제 구글 광고 네트워크 응답(`AD_RENDERED`) 수신 및 AdChoices 아이콘이 포함된 듀얼 실시간 광고 렌더링 확인. ## 🎯 [완료] 데스크톱 인앱 스크린샷 디버깅 시스템 및 듀얼 광고 배너 CSS Grid 렌더링 정상화 (2026-09-13 완료) - [x] **앱 자체 윈도우 정밀 캡처 디버깅 파이프라인 (`AppDebugScreenshotService.cs`)**: - 외부 전체 화면/모니터 캡처가 아닌 PACA 앱 윈도우(`HWND` 및 `RenderTargetBitmap`)만을 단독으로 정확하게 캡처하여 `%AppData%\Paca\debug_screenshot.png`에 저장. - `%AppData%\Paca\screenshot_trigger.req` 파일 감지 기반 온디맨드 디버깅 캡처 지원. - [x] **하단 배너 (728x90) 및 다운로드 패널 배너 (300x250) CSS Grid 렌더링 정상화 (`DesktopAdBannerControl.xaml.cs`)**: - 하단 배너: Flexbox 축소로 인한 중앙 텍스트 증발 문제를 완전한 CSS Grid(`56px 1fr auto`)로 교체하여 쿠팡 로고, 배지, 본문 제목, 설명, CTA 버튼 완벽 복원. - 다운로드 패널 배너: 뷰포트 크기 미지정으로 카드가 화면 밖으로 밀려나 검은 직사각형(762B)으로만 찍히던 문제를 `` 및 3행 그리드로 해결하여 삼성전자 로고, 배지, 제목, 설명, CTA 버튼 100% 온전 렌더링. - 가상 호스트 HTTP 캐싱을 방지하고 즉각적 DOM 구성을 위해 `CoreWebView2.NavigateToString(pageHtml)` 적용. - [x] **TDD 게이트 무결성 및 전수 검증 (`DesktopAdSlotAndNtpSponsoredGateTests.cs` Gate 205~208)**: - Gate 208: 캡처된 실제 비트맵 픽셀 감사(하단 배너 텍스트 픽셀 검출 및 다운로드 배너 단색 빈 사각형 방지) 통과. - 솔루션 전체 테스트 **2,744 / 2,744 GREEN 전수 통과 (100% 통과, 0 실패, 0 스킵)**. - WMI 분리 런처 기반 데스크톱 실창 렌더링 검증 완료 (`MainWindowHandle = 2887134 != 0`). ## 🎯 [완료] 영상 썸네일 자동 추출/로컬 캐시(Referer 403 방어 & FFmpeg 프레임 추출) 및 스마트 제목 추론/난수 해시 정제 & 이름 바꾸기 시스템 (2026-09-13 완료) - [x] **스마트 제목 추론 및 난수 해시 감지 엔진 (`FileNameUtil.cs`)**: - 사용자 요구사항 완벽 반영: 웹 스니퍼 감지 시 난수 해시(`1a099dac52a596d88` 등)로 알아보기 어렵던 파일명을 게시물/웹 페이지 제목 기반으로 자동 정제하고 중복 영상에는 순번(`#1`, `#2`) 부여. - `IsObfuscatedHash`: 12자 이상 16진수 및 UUID, 타임스탬프 결합 해시 자동 판별. - `CleanWebTitle`: 사이트 접미사(` - 루리웹`, ` · GitHub` 등) 보일러플레이트 정제. - `DeriveSmartTitle`: 원본 파일명 해시 여부에 따라 최적의 스마트 제목 도출. - [x] **썸네일 로컬 캐싱 및 Referer 403 핫링크 차단 방어 & FFmpeg 추출 (`ThumbnailCacheService.cs`)**: - 사용자 요구사항 완벽 반영: 루리웹, 네이버 등 외부 핫링크 차단(403) CDN 이미지나 썸네일 없는 영상에 대해 자동 캐싱 및 프레임 캡처 제공. - 원본 페이지 `Referer` 헤더를 포함한 비동기 이미지 다운로더 및 SHA-256 로컬 영속 캐싱. - 인라인 `` Base64 Data URI 즉시 로컬 캐시 변환. - `%AppData%\Paca\tools\ffmpeg.exe`를 활용한 1초 지점 비디오 프레임 캡처 엔진 연동 (원격 스트림 및 다운로드 완료 로컬 파일 모두 지원). - [x] **DOM 스니퍼 스크립트 고도화 (`TabViewService.cs`)**: - `