[페이지 분류 강화 작업]

This commit is contained in:
LASTA_DEV01\lasta
2026-05-22 20:16:28 +09:00
parent 93980da14d
commit a358f221ff
29 changed files with 5633 additions and 52 deletions

View File

@@ -63,39 +63,39 @@ FILE: ./26_05_22_semantic_page_classification/phase_04_001_evidence_scoring_clas
PHASE 5. Analyze Strategy 및 LLM Policy 분리
FILE: ./26_05_22_semantic_page_classification/phase_05_001_analysis_llm_policy.md
1) PageClassificationResult 기반 `decide_analyze_strategy()` 추가 [TODO]
2) PageClassificationResult 기반 `decide_llm_policy()` 추가 [TODO]
3) `should_analyze_page(result_or_page_type, analyze_page_types=None)` compatibility 구현 [TODO]
4) Category/Search/Board 계열을 무조건 skip하지 않고 strategy 기반으로 처리 [TODO]
5) Login/Checkout/Payment/Captcha/AccessDenied 계열은 SkipProtected/Skip 정책으로 처리 [TODO]
1) PageClassificationResult 기반 `decide_analyze_strategy()` 추가 [완료]
2) PageClassificationResult 기반 `decide_llm_policy()` 추가 [완료]
3) `should_analyze_page(result_or_page_type, analyze_page_types=None)` compatibility 구현 [완료]
4) Category/Search/Board 계열을 무조건 skip하지 않고 strategy 기반으로 처리 [완료]
5) Login/Checkout/Payment/Captcha/AccessDenied 계열은 SkipProtected/Skip 정책으로 처리 [완료]
---
PHASE 6. Crawler, Cleaner, Extractor, Discovery/Relevance 통합
FILE: ./26_05_22_semantic_page_classification/phase_06_001_pipeline_integration.md
1) `site_crawler.py``pipeline.py` metadata에 semantic classification payload 저장 [TODO]
2) `ExtractionPageContext` 또는 metadata를 통해 analyze_strategy/llm_policy 전달 [TODO]
3) `HybridExtractor`가 LLMPolicy를 우선 사용하고 legacy page_type fallback을 유지하도록 수정 [TODO]
4) `page_cleaner.py`, `domain_discovery.py`, `relevance_engine.py`의 legacy page_type 기대 경로와 신규 semantic type을 호환 [TODO]
1) `site_crawler.py``pipeline.py` metadata에 semantic classification payload 저장 [완료]
2) `ExtractionPageContext` 또는 metadata를 통해 analyze_strategy/llm_policy 전달 [완료]
3) `HybridExtractor`가 LLMPolicy를 우선 사용하고 legacy page_type fallback을 유지하도록 수정 [완료]
4) `page_cleaner.py`, `domain_discovery.py`, `relevance_engine.py`의 legacy page_type 기대 경로와 신규 semantic type을 호환 [완료]
---
PHASE 7. Unknown Pattern 저장 기반 추가
FILE: ./26_05_22_semantic_page_classification/phase_07_001_unknown_pattern_storage.md
1) UnknownPage 또는 low confidence 페이지의 evidence payload 정의 [TODO]
2) text/html/link/schema/button/form summary와 fingerprint hook 추가 [TODO]
3) DB schema 변경 없이 metadata_json에 저장 가능한 초기 구조 구현 [TODO]
4) 향후 clustering/embedding 확장을 위한 hook만 추가하고 실제 clustering은 이번 범위에서 제외 [TODO]
1) UnknownPage 또는 low confidence 페이지의 evidence payload 정의 [완료]
2) text/html/link/schema/button/form summary와 fingerprint hook 추가 [완료]
3) DB schema 변경 없이 metadata_json에 저장 가능한 초기 구조 구현 [완료]
4) 향후 clustering/embedding 확장을 위한 hook만 추가하고 실제 clustering은 이번 범위에서 제외 [완료]
---
PHASE 8. 테스트 Fixture 및 회귀 검증
FILE: ./26_05_22_semantic_page_classification/phase_08_001_tests_regression.md
1) 최소 10개 이상의 HTML fixture 추가 [TODO]
2) ProductDetailPage, CategoryListingPage, SearchResultsPage, ArticlePage, QAPage, FAQPage, ForumThreadPage, DocumentationPage, JobPostingPage, LoginPage, CheckoutPage, TermsPage, SitemapPage, UnknownPage 단위 테스트 추가 [TODO]
3) legacy `classify_page()``should_analyze_page()` 호환성 테스트 추가 [TODO]
4) HybridExtractor LLMPolicy 회귀 테스트 추가 [TODO]
5) pytest 또는 현재 프로젝트 테스트 명령 실행 및 결과 기록 [TODO]
1) 최소 10개 이상의 HTML fixture 추가 [완료]
2) ProductDetailPage, CategoryListingPage, SearchResultsPage, ArticlePage, QAPage, FAQPage, ForumThreadPage, DocumentationPage, JobPostingPage, LoginPage, CheckoutPage, TermsPage, SitemapPage, UnknownPage 단위 테스트 추가 [완료]
3) legacy `classify_page()``should_analyze_page()` 호환성 테스트 추가 [완료]
4) HybridExtractor LLMPolicy 회귀 테스트 추가 [완료]
5) pytest 또는 현재 프로젝트 테스트 명령 실행 및 결과 기록 [완료]