# 📋 공공저작물 사이트맵 수집 — 작업 현황판 (SINGLE SOURCE OF TRUTH)

> **이 파일이 "완료/미완료"의 유일한 기준입니다.** 너(Claude)와 내(사용자)가 같이 보고 갱신합니다.

> # ⛔⛔ 최우선 절대규칙 — `☑️ 검수완료` 기관은 손대지 마라 ⛔⛔
> **`☑️ 검수완료`로 표시된 기관(엑셀·폴더·행)은 재수집은 물론 어떤 수정·재계산·일괄작업·병합·스타일변경도 절대 하지 않는다.** 일괄 스크립트를 돌릴 때도 `☑️ 검수완료` 대상은 **반드시 제외**한다. 사용자가 그 기관을 콕 집어 명시적으로 지시한 경우에만 건드린다.
> - 현재 `☑️ 검수완료`: **계룡시 · 공주시 · 금산군 · 논산시 · 보령시 · 당진시 · 부여군 · 서천군 · 예산군 · 태안군 · 아산시 · 홍성군** (충남) · **고창군 · 김제시 · 남원시 · 군산시 · 무주군 · 부안군 · 순창군 · 완주군 · 임실군 · 익산시 · 장수군 · 전주시 · 정읍시** (전북) · **괴산군 · 단양군** (충북). 이 엑셀들은 열어서 읽기만 하고 **쓰지 않는다.** (보령시는 631 정답 백업 원복 예정 — 현재 파일 594)
> - 작업 시작 전 항상 이 표를 확인하고, 대상 목록에서 `☑️` 행을 먼저 빼라.

## ✅ 공유 규칙 (재수집 방지)

1. **Claude는 어떤 기관이든 수집을 시작하기 전에 이 파일을 먼저 읽는다.** `✅ 수집완료` 또는 `☑️ 검수완료`로 표시된 기관은 **다시 수집하지 않는다.** 특히 **`☑️ 검수완료`는 어떤 형태의 수정도 금지**(위 ⛔ 절대규칙 참조).
2. **Claude는 수집 직후 해당 기관 행을 갱신**한다(상태·행수·날짜).
3. **사용자는 검수가 끝난 기관을 `☑️ 검수완료`로 바꾸거나 비고에 한 줄 적는다.** → Claude는 그 기관을 절대 재수집하지 않음.
4. **폴더명에 `(완료)`를 붙이지 말 것.** 배치 스크립트가 폴더명을 절대경로(`…\1.계룡시\계룡시.xlsx`)로 참조하므로 접미사를 붙이면 재실행이 깨진다. **상태 표시는 이 파일에서만** 한다.
   - (`1.계룡시` 폴더는 `(완료)` 접미사를 원복 완료 — 2026-05-29.)

## 상태 표기

| 기호 | 의미 |
|---|---|
| ⬜ | 미착수 |
| 🔄 | 수집 중 |
| ✅ | 수집완료 (Claude가 Phase 1~4 끝냄, 사용자 검수 전) |
| ☑️ | **검수완료 (사용자 확인 끝 — 재수집 금지)** |
| ⚠️ | 보류·이슈 (접근불가/통계 의심 등, 아래 비고 참조) |

---

## 광역 요약

| 광역 | 시·군 수 | 수집완료 | 검수완료 | 상태 |
|---|---|---|---|---|
| 충청남도 | 15 | 15 | 12 (계룡·공주·금산·논산·보령·당진·부여·서천·예산·태안·아산·홍성) | ✅ 수집완료 / 검수 진행 중 |
| 충청북도 | 11 | 11 | 2 (괴산·단양) | ✅ 수집완료 / 검수 진행 중 |
| 전북특별자치도 | 14 | 14 | 12 (고창군·군산시·김제시·남원시·무주군·부안군·순창군·완주군·임실군·익산시·장수군·전주시) | ✅ 수집완료 / 검수 진행 중 |
| 제주특별자치도 | 2 | 2 | 0 | ✅ 수집완료 |
| 전라남도 | — | (1주차 완료) | — | ☑️ 1주차 아카이브 |
| 인천광역시 | — | (1주차 완료) | — | ☑️ 1주차 아카이브 |
| (중앙부처: 고용노동부·과기부·교육부·보건복지부·성평등가족부·외교부) | — | (1·2주차 완료) | — | ☑️ 아카이브 |
| 그 외 광역(서울·경기·강원·경남·경북·대전·대구·부산·울산·광주·세종 등) | — | 0 | 0 | ⬜ 미착수 |

> **2026-06-01 N(저작물 유형) 일괄 재검토** — 수집완료 36곳(검수완료 5곳+당진 제외)에 매뉴얼 3-1a/3-3/3-4b 규칙 적용(`_스크립트/_redo_N_all.py`). 약 1,211행 변경: 장식·로고·파트너로고·아이콘·SNS공유버튼·KOGL마크·"한눈에/흐름도/절차도" 인포그래픽·파일아이콘 → **어문 강등** / **오디오·영상 추가** / 거짓 M=0 게시판은 내용기반 판정. 기관별 백업 `*_backup_N재검토전.xlsx`. (당진은 별도 `_redo_N.py`로 이미 완료, 검수완료 5곳·M열은 미변경)

---

## 📤 제출 이력 (이호영→장영익 본부장)

| 제출일 | 기관 (행수) | 프리랜서 | 비고 |
|---|---|---|---|
| 2026-05-27~28 | 인천광역시·전라남도·고용노동부·과기부·교육부·보건복지부·성평등가족부·외교부 | — | 1·2주차 아카이브 |
| 2026-05-31 | 계룡시(429)·공주시(400)·금산군(342)·논산시(576)·보령시(631) | 프1 | `공공저작물_프리랜서_작업내역_20260529_31.zip` |
| 2026-06-03 | (충남) 당진시(345)·부여군(570)·서천군(483)·예산군(544)·태안군(216) / (전북) 고창군(352)·군산시(430)·김제시(394)·남원시(654)·무주군(347) | 프1·프2 | `_제출패키지_2026-06-03` |
| 2026-06-05 | (충남) 서산시(740)·천안시(580) / (전북) 부안군(316)·순창군(413)·익산시(588) | 프1·프2 | `_제출패키지_2026-06-06` (임실군 제외) |
| 2026-06-07 | (충남) 아산시(377)·홍성군(525) / (전북) 임실군(305)·장수군(423)·전주시(609) | 프1·프2 | `_제출패키지_2026-06-07` |
| 2026-06-11 | (충남) 청양군(409) / (충북) 괴산군(581)·단양군(425) / (전북) 완주군(902)·정읍시(558) | 프1·프2 | `_제출패키지_2026-06-11` |

> **미제출 검수완료(남은 제출분)**: 없음(전 검수완료분 제출). 다음 검수대상: 진안군(전북)·충북 9곳·제주 2곳.

---

## 충청남도 (15) — 상세: `광역_사이트맵/충청남도/_작업목록.md`

> ⛔ **`☑️ 검수완료`(계룡·공주·금산·논산·보령·당진·부여·서천·예산·태안·청양) 행은 수정·재계산·일괄작업 절대 금지 — 읽기만.**

| # | 기관 | 상태 | 행수 | 비고 |
|---|---|---|---|---|
| 1 | [계룡시](광역_사이트맵/충청남도/1.계룡시/) | ☑️ 검수완료 | 429 | [검수 2026-05-31] 사용자 검수 완료 (부착14) |
| 2 | [공주시](광역_사이트맵/충청남도/2.공주시/) | ☑️ 검수완료 | 400 | [검수 2026-05-31] 부착6 · 탭확장 · #nav수량 · 페이지탭 재귀합치기(F→G·G→H, 청소년12·청년일자리3 등) |
| 3 | [금산군](광역_사이트맵/충청남도/3.금산군/) | ☑️ 검수완료 | 342 | [검수 2026-05-31] 부착65 · **메뉴 랜딩행 M=서브트리 leaf합**(phase1이 메뉴당 X01만 담아 X02+숨김 → 자식별 라이브탭수or1 합산: 여성가족10·어르신9·장애인8·사회복지17·읍면행복센터10×4 등 34메뉴) · 군민복지 type1탭 cross-product 13→4행(−9, 공공누리4유형 보존) |
| 4 | [논산시](광역_사이트맵/충청남도/4.논산시/) | ☑️ 검수완료 | 576 | [검수 2026-05-31] 탭확장 +22 · 페이지탭 재귀합치기 −32(식품위생/위생영업 등) · 읍면동 정보탭 강경식 확장 +28(14개 읍면동×문화관광·국가유산·음식숙박, 게시판 수량 페이지순회 집계, 전부 미부착) · N재판정 r329~599(장식이미지 `move.png`/`no-img`/공통UI 제외, 지도·PDF임베드=이미지, 빈게시판=없음) 47건 정정(직원안내 등 어문→어문 11·PDF뷰어 없음→이미지·빈게시판 어문→없음 10) · **사용자 검수 중 −21행(597→576, B순번 1~576 연속·양식검수 이슈0)** · ⚠외부URL 1건(B139 katc.mil.kr 육군훈련소)이 L=페이지 — 검수완료라 미수정(검수해제 후 사이트로) |
| 5 | [당진시](광역_사이트맵/충청남도/5.당진시/) | ☑️ 검수완료 | 345 | [검수 2026-06-01] gb.go.kr 템플릿잔재 −1(외부URL정리, 340→339) · 종합 재처리(`_redo_all.py`): ①전부페이지 랜딩 M=Σ(deth-4st 하위탭 인페이지탭 or 1, `#grap` 반영) ②**게시판 섞인 메뉴 10곳 하위탭 개별행 전개**(매뉴얼 1-5c). 게시판 탐지 내용기반(.board_total, `selectBoardList`/BBSMSTR 포함, `/viewer/`제외). 전개: 건축3·시민고충처리위5(게시판3)·고시공고2(2530)·정보목록공개2·기업지원6(게시판3)·당진사랑5(6868)·경관계획4·옥외광고물4·청소도우미7(외부1포함)·중대재해3. 건축민원서식=47(건축/건설 카테고리, 전체보기225는 r6중복) · ③**게시판 M=0 전수 재집계**: 원본이 게시판 건수 대부분 미집계(133중 112가 0) → `.board_total`(`/cop/bbs/`·`/BBSMSTR/` 포함, 방문자수 노이즈 제외)로 89건 0→실수(자유게시판6984·보도자료14299 등), N 34건 재판정(텍스트보드 false이미지 제거·빈게시판→없음). r156채용정보 M13·r237 CCTV열람청구 게시판→페이지M1·r134 부서안내→페이지M1·r226 평생학습(learning 서브도메인)→사이트(외부링크). 잔여 M=0 19곳=진짜 빈게시판(N=없음). 340행 · **N 재작성 r22~끝(2026-06-01, `_redo_N.py`)**: 사용자 r3-21 규칙 반영 — 별도정보 이미지(사진·평면도·지도·악보·소식지·상징물·이벤트)=이미지 / 한눈에式 설명인포그래픽·로고·파트너로고(신문고·open.go.kr)·아이콘·헤드라인텍스트·바로보기버튼·팝업배너=어문(이미지 제외). 19행 변경(대부분 어문,이미지→어문) · **오디오 감지 추가**(r120 브랜드송 wav 5개→어문,이미지,오디오). r3-21 무변경. ⚠r132 통계연보 표지(popupZone)는 어문 처리(표지를 이미지로 볼지 검토여지) · **192행+ 탭 재점검(2026-06-01)**: 사용자 1~191 검수 후 192+ deth4 전수재검증 → **r199 주정차단속**(deth4 전부페이지 4탭=CCTV현황/사전문자/주민신고/의견진술, 원본 `.board_total` 오판 게시판/90)→**페이지 M=4** 1건만 정정. 그 외 192+ deth4(도로명주소M7 등 접기·청소도우미 전개)·페이지N 정상. **당진 본문셀렉터=`#content`(단수)** 확정(기존 #contents 없음). · **r191 공동주택사랑방 전개(2026-06-01)**: deth-4st 게시판섞임 5탭(공지사항게360·소통마당게0·아파트FAQ게0·관련법규게0·관련사이트페1) → 개별행(매뉴얼 1-5c②), +4행. 1~190 무수정, 191+ 순번 연속재부여, F191:195병합·D/E자동확장. 데이터행 347. 백업 `_backup_191전개전.xlsx` · **B순번 연속 재부여**(검수 전 gap 44·49·54·58 기존+239 전개분 정리) · **탭 연속행 7개 B빈칸도 번호부여(338→345, 모든 콘텐츠행 1~345)** · C빈칸 7행 당진시 채움 · 양식검수 통과(행수확인) |
| 6 | [보령시](광역_사이트맵/충청남도/6.보령시/) | ☑️ 검수완료 | 631 | [검수 2026-05-31] **전면 재수집(`_recollect.py`, 복사본 베이스)**: 원본이 본문셀렉터 `#txt`(전역검색 포함)로 페이지 다수를 게시판 오판(게510)·인페이지탭 전수 누락. 수정 ①본문=**`#contents`** ②**`ul.depth_tab` 인페이지탭 119그룹 전개**(매뉴얼 1-5b/1-5c, 논산식, leaf+1=G/F): 정보공개제도안내5탭·주민참여예산제3탭(란?페이지+알림방게시판25+제안방)·부서50곳(부서장/비전/업무/직원안내) 등 ③게시판판정 내용기반(총건수/페이징/BBSMSTR·selectBoardList, `deptOn` 디렉토리=페이지M1=논산컨벤션) ④순번3 사전정보공표 16 leaf 블록(brm1/dept 530/530) 삽입. **결과 874행(페639·게195·사40)**, 공공누리 부착155(1유형93·4유형62), 게시판M=0 7곳=진짜 빈보드(N=없음). 검증: 순번1~547연속·K하이퍼링크 불일치0·병합중복0·헤더병합보존. 알려진보드 검증(위반업소464·업무추진비4268·연구용역314) · **탭그룹 접기(매뉴얼 1-5c①, F는 보존)**: 85행+ 전부페이지 G탭그룹 92개→F랜딩 1행 M=합(부서4탭·자매결연 등, 874→**631**). ⛔ **E접기(F→E 합치기)는 사용자 거부** — F(소분류) 메뉴는 전부 행 보존해야 함([[feedback_F_level_menus_preserve]]). 정답 파일=`_backup_E접기전.xlsx`(631행), 사용자가 직접 원복 예정 |
| 7 | [부여군](광역_사이트맵/충청남도/7.부여군/) | ☑️ 검수완료 | 570 | [검수 2026-06-01] gb.go.kr 템플릿잔재 −5(외부URL정리, 351→346) · **탭 재검토(2026-05-31)**: 이전 "탭 없음(0)" 오판 — `div.basic_tab>ul`(UL 무클래스) 본문탭 탐지 누락. 전사이트 재스캔 33그룹 +129행. 외부탭 6개 L=사이트. 사전정보공개 `fiexd_tab1` scate=1~9 분야탭 +8행(M=항목수). **N·O 전수 재판정(`_buyeo_rejudge_NO.py`, 사용자 1~37행 검수를 정답으로 검증)**: ①장식이미지(file_icon·see_btn·btn_page·웹접근성배지) 제외 → `어문,이미지→어문` 다수 정정 ②공공누리 마크는 `gnuri_layer`(본문 밖)·게시판 **첫글** `img_opentypeNN`로 탐지 → **부착 21행**(1·2·3·4유형; 고시공고4·물가3·기업상담실2·본청읍면1 등) ③빈게시판(_prog/_board 글0)만 없음, `.html`·서브사이트의 L=게시판 M=0 오기는 본문판정(어문). 16·24 어문 정정(사용자승인). ⚠ B순번 1곳 gap(순18→23, 사용자가 순19~22 삭제). ⚠ L/M 오기 의심 7행(전화번호안내·간이요금안내=페이지, 굿뜨래페이·보건소·평생학습관=서브사이트, 현재 게시판 M=0) · **읍/면 소개 하위메뉴 채움(2026-06-01, `_dong_extract.py`/`_build_dong.py`)**: 부여읍(dong01) 구조를 규암면~초촌면(dong02~16) 15곳에 적용 — 각 면 `ul.lm_2th>li>ul.lm_3th` 중첩LNB 라이브추출(행정복지센터안내·우리면소개·민원안내·우리면소식·주민자치센터, 면별 라벨변이 고시/공고·외산면지 등), 페이지M1·통합게시판 공유(주민신문고766·민원서식827)·면별공지(news_06). **+167행(406→573)**, B=None 연속행(부여읍과 동일), F병합·하이퍼링크 정상. ⚠ 순번 비연속(기존 gap)·C빈칸은 검수 시 자동정리 · **공공누리 재검수(2026-06-01, `_redo_kogl.py`)**: 미부착 페이지375+게시판95 재확인 — 페이지는 전부 마크없음(.gnuri_layer 부재 확정), **게시판 상세글 추적 5→10개 확장**으로 마크 누락분 발견 → **부착 +7행**(총무인사/식품위생/산업경제/문화관광/농업농촌=1유형·업무추진비=3유형·정책연구용역=4유형, P=게시물·Q=Y, 63→70). 백업 `_backup_kogl재검수전.xlsx` · **검수(2026-06-01)**: 사용자가 B순번 연속재부여(1~570·연속행 포함)·사이트명(C) 부여군 채움 완료 → 구조검수 PASS(카테고리구멍0·G carry-forward 정상), Y/Z/AA(프리랜서1) 570행 · 양식검수 통과(573→570) |
| 8 | [서산시](광역_사이트맵/충청남도/8.서산시/) | ☑️ 검수완료 | 740 | 📤[제출 2026-06-05] · [검수 2026-06-04] **검수(2026-06-04)**: 정렬통일(D/E/F/G 가운데·가운데·줄바꿈ON·949셀, K 왼쪽·가운데740)·**F병합 47개 추가**(탭전개때 부모병합 누락분, 미병합 부모 잔여 E/F/G=0)·B순번 1~740 재부여(새 카테고리행 68 빈칸 포함)·행높이 33행→15·Y/Z/AA(프리랜서1) 740행. 백업 `*_backup_검수정렬병합전`·`*_backup_YZAA전`. **266~310 소통참여 구간=사용자 직접 채움**(D266:D310 병합, 소통참여 기입). 사용자 지시로 검수완료. · **본문탭 전면 전개(2026-06-02)**: 기존 "탭 없음(0)"은 오판 — 서산 본문이 `div.tab_menu>ul.tab_button` 탭 기반인데 통째 누락. 사용자 1~19행(B17) 검토 후 20행(청탁금지법 4탭)부터 발견 → 전사이트 재스캔 **77개 탭그룹 / +271행(306→577)**. 쿼리기반 URL(`contents.do?key=`·`selectBbsNttList.do?bbsNo=`)이라 `_tab_expand_seosan.py --noqg`(쿼리가드 끄고 tab_menu/tab_button 그룹만) 신설. on-탭=원행재사용(G에 탭명)·신규탭=신규행. 혼합탭(페이지+게시판) 그대로 개별행. 신규 256행 Phase2~4(`_phase234_신규.py`, L빈칸만 처리해 기존·사용자검토분 보존, body=#contents): 페이지200·게시판53(공지6065·보도7777 등 글수집계)·사이트2. B순번 1~575 연속·병합겹침0·헤더병합보존. 백업 `*_backup_tab전.xlsx` · ⚠️ **O(공공누리) 1유형 315 = 푸터 의심**(기존 185 동일 이슈, 신규도 같은 방식이라 일관 — 서산 O는 별도 전체 재판정 필요) · ⚠️ 신규 게시판 N 이미지는 김제식 재판정 후보 · ⚠️ r486 자동차민원안내 `/sub.do?key=1497` 404(레거시, key=1497 정상탭 별도존재) |
| 9 | [서천군](광역_사이트맵/충청남도/9.서천군/) | ☑️ 검수완료 | 483 | [검수 2026-06-03] 본문 콘텐츠탭 전개(2단탭 basic_tab×slave_tab + 일반 본문탭 누락그룹, 275→483) · **검수(2026-06-03)**: B순번 1~483 연속재부여(gap7 정리)·**카테고리 라벨 보정**(E166:174 '민원신고센터'·F412:413 '기상정보', 라이브 LNB확인 / 민원신청=로그인전용 의도적 제외)·Y/Z/AA(프리랜서1) · 양식검수 통과(483행) |
| 10 | [아산시](광역_사이트맵/충청남도/10.아산시/) | ☑️ 검수완료 | 377 | [검수 2026-06-07] 탭 없음(0) · gb.go.kr 템플릿잔재 −3(외부URL정리) · **검수(2026-06-07)**: 구조검수 PASS(377행). B순번 1~377 연속재부여(연속행 r92 B빈칸 포함)·C빈칸1(r92) 채움·미병합부모0·헤더병합·K열 정상·Y/Z/AA(프리랜서1·2026-06-07). 백업 `*_backup_검수전.xlsx` · ⚠️게시판 M·N/L 내용은 사용자판단(구조/양식만) |
| 11 | [예산군](광역_사이트맵/충청남도/11.예산군/) | ☑️ 검수완료 | 544 | [검수 2026-06-03] 탭확장 +233(구)·**B그룹 추가전개 +77** · **게시판M 재집계 63개**(자유게시판13730 등)·**N이미지 4행**(예당호무대·효자비·개화분포지도·특구위치도) · **구조검수 PASS**: B순번 1~544 연속재부여·C빈칸8 예산군·**깨진 F병합2 복구**(예산지명1100주년·예산사랑장학회)·Y/Z/AA(프1) · ⚠️미해결(사용자판단): B≥102 일부 게시판 과분류(서브사이트/페이지)·sub-102 실게시판 M0 4개 |
| 12 | [천안시](광역_사이트맵/충청남도/12.천안시/) | ☑️ 검수완료 | 580 | 📤[제출 2026-06-05] · [검수 2026-06-05] **검수(2026-06-05)**: 정렬통일(D/E/F/G 가운데·줄바꿈ON, K 왼쪽)·C 17채움(충청남도 천안시)·B순번 1~580 재부여·Y/Z/AA(프리랜서1·06-05). 병합 깨끗(미병합 부모그룹0)·행높이15·K하이퍼링크불일치9(전부 trailing slash/빈링크, 무해). **라벨누락 86건=사용자 직접 채움**(대분류 D39:70=천안소식 / 중분류 E260:291=아동·E402:416=경제/기업·E560:566=위생)→**재검수 PASS**(대분류6 연속·미병합부모0). 백업 `*_backup_검수전.xlsx`. 도구 `_fix_cheonan.py`. · 탭확장 +297(구,1유형2) · **B그룹 추가전개(2026-06-03) +133(488→621)**: 구도구 누락 콘텐츠탭(예산낭비신고·지방공기업·자매결연·복지사업 등 125신규). 3중가드·인페이지탭 M처리·중복델타0·B순번연속. 백업 `*_backup_탭전개전.xlsx` · 외부URL 14 · ⚠️r216 영상 라벨 인코딩깨짐(1행) |
| 13 | [청양군](광역_사이트맵/충청남도/13.청양군/) | ☑️ 검수완료 | 409 | [검수 2026-06-09] **검수(2026-06-09)**: 구조검수 PASS(409행). C(사이트명) 빈칸3 채움(행409·46·47='충청남도 청양군')·**전 콘텐츠행 B순번 1..N 연속 재부번**(미부번 leaf 30 흡수: 청양사랑상품권·특산물 등 각 고유URL)·**예산·재정 「주민참여예산제」 구조 사용자 직접정리**(F병합 F45:F47+세부3·랜딩중복행 제거 410→409)·Y/Z/AA(프리랜서1·2026-06-09) 409행. 병합겹침0·K링크정상. 백업 `*_backup_재부번전.xlsx`·`*_backup_C빈칸2전.xlsx` · **본문 콘텐츠탭 전면 전개(2026-06-03)**: "탭없음0" 오판 정정 — basic_tab 37그룹/+136행(255→391). 신규엔진 `_tab_expand_cms.py`(서천식 풀리빌드 펼치기). 신규 board탭 정확집계(빈것=총게시물0)·gb.go.kr 유령행 자동제거·**인페이지앵커탭 M=탭수 처리(중복URL 정정)**. 검증 B순번연속·헤더병합·병합겹침0·K링크누락0·중복델타+1. ⚠️원본 게시판 다수 M=0(원본 미집계, 별도 재집계)·sub06_XX.do 페이지 L=게시판 과분류 보존(별도 재분류). 백업 `*_backup_탭전개전.xlsx` |
| 14 | [태안군](광역_사이트맵/충청남도/14.태안군/) | ☑️ 검수완료 | 216 | [검수 2026-06-03] 구조검수 PASS·B순번 연속재부여(갭5 정리, 221→216)·Y/Z/AA(프1). 본문 콘텐츠탭 전개(126→221, 검수중 −5). ⚠️원본 게시판51개 M=0(별도 재집계) · 양식검수 통과(216행) |
| 15 | [홍성군](광역_사이트맵/충청남도/15.홍성군/) | ☑️ 검수완료 | 525 | [검수 2026-06-06] 탭확장 +215(구,4유형1) · B그룹 추가전개(2026-06-03) +125 · **검수(2026-06-07)**: 구조검수 PASS(525행). B순번 1~525 연속재부여(gap 40·298~307 + 연속행 B빈칸26 정리)·C빈칸10 채움·미병합부모0·헤더병합·K열 정상·Y/Z/AA(프리랜서1·2026-06-06). 백업 `*_backup_검수전.xlsx`·`*_backup_Z날짜변경전.xlsx` · ⚠️게시판 M·N/L 내용은 사용자판단(구조/양식만) |

## 충청북도 (11) — 상세: `광역_사이트맵/충청북도/_작업목록.md`

> ⛔ **`☑️ 검수완료` 행은 수정·재계산·일괄작업 절대 금지 — 읽기만.**

| # | 기관 | 상태 | 행수 | 비고 |
|---|---|---|---|---|
| 1 | [괴산군](광역_사이트맵/충청북도/1.괴산군/) | ☑️ 검수완료 | 581 | [검수 2026-06-08] **검수완료**: 구조검수 PASS(B순번1~581재부여·C빈칸1채움·미병합부모4 G병합보정·Y/Z/AA 프1·06-08). 전면재구축267 → 부서별 사전정보 22부서탭+21 → L/O 재분석(설문·교육수강 페이지→게시판·정보통신 사이트→페이지·도시브랜드 등 4유형정정·읍면공지 M채움) → **분야별정보 서브사이트9개 전수수집+303**(복지/교육/교통/세금/산업/농업/보건/안전/부동산 sitemap h3→map2m→map3m 312leaf) → 정보통신 본문전개 = **581행**. N이미지 사용자 직접 재판정. 백업 `*_backup_검수전.xlsx` |
| 2 | [단양군](광역_사이트맵/충청북도/2.단양군/) | ☑️ 검수완료 | 425 | [검수 2026-06-09] **검수완료**: 구조검수 PASS(B순번연속·미병합부모0·DEF병합경계·K열·병합겹침0)·Y/Z/AA(프1·06-09). 전면재구축354(ld1 재귀트리+kind힌트, N몽타주 이미지28)에서 사용자 검수보완 →425행. 백업 `*_backup_검수전.xlsx` |
| 3 | [보은군](광역_사이트맵/충청북도/3.보은군/) | ✅ 수집완료 | 410 | apex `boeun.go.kr` 사용(www 차단)·2026-05-30 접근복구 · 부착0 · 탭 없음(0) |
| 4 | [영동군](광역_사이트맵/충청북도/4.영동군/) | ✅ 수집완료 | 505 | **전면 재구축(2026-06-07)**: 레거시SSL·dl/dt/dd 트리(대/중/소/세부) → 505행(페421·게67·사17). 게시판=내용판별(총게시물+등록일)·게시판M Playwright렌더·실빈5. **_blank→사이트 규칙 적용**(새창열림 18). N몽타주 이미지89(민원실/여권/지도/악보/캐릭터·읍면 면사무소/마을/시설/행사 사진 대거). 백업 `*_backup_재구축전.xlsx` |
| 5 | [옥천군](광역_사이트맵/충청북도/5.옥천군/) | ✅ 수집완료 | 552 | **전면 재구축(2026-06-06)**: 메가메뉴 depth1~4+본문탭(self-ref가드)=552행(페407·게92·사53). 게시판M Playwright렌더추출·실빈게시판5. N몽타주 이미지57(소식지14·평면도·지도·시설건물·악보·캐릭터·항공·답례품). O본문영역 부착1(과검출242→1). 백업 `*_backup_재구축전.xlsx` |
| 6 | [음성군](광역_사이트맵/충청북도/6.음성군/) | ✅ 수집완료 | 939 | **전면 재구축(2026-06-06)**: 메가메뉴 depth1~4+본문탭(self-ref가드)=939행(페743·게142·사54). 전역탭위젯 폭발(4220) self-ref가드로 해결. 게시판M Playwright렌더추출·실빈게시판6. N몽타주 이미지114(읍면 지도/주민센터/장사진·체육문화시설·자매도시사진·평면도·캐릭터/나무·계획사진). O본문영역 부착2. 백업 `*_backup_재구축전.xlsx` |
| 7 | [제천시](광역_사이트맵/충청북도/7.제천시/) | ✅ 수집완료 | 594 | **전면 재구축(2026-06-06)**: 메가메뉴 depth1~4+본문탭=594행(페450·게127·사17). 게시판M Playwright렌더추출·실빈게시판10. N몽타주 이미지29(시설평면도·청사/박물관·지도·항공·버스·캐릭터·약초시장). O본문영역 부착8. 백업 `*_backup_재구축전.xlsx` |
| 8 | [증평군](광역_사이트맵/충청북도/8.증평군/) | ✅ 수집완료 | 219 | **전면 재구축(2026-06-06)**: depth1_ul/depth2_ul/depth3_ul 트리 → 219행(페156·게49·사14). 게시판M Playwright렌더추출·실빈2. N몽타주 이미지21(유적/명소·캐릭터·악보·역사사진·평면도·답례품·시설사진). O본문부착4. 백업 `*_backup_재구축전.xlsx` |
| 9 | [진천군](광역_사이트맵/충청북도/9.진천군/) | ✅ 수집완료 | 384 | **전면 재구축(2026-06-07)**: div.sitemap 재귀트리+본문탭96 → 384행(페267·게72·사45). **게시판=Playwright 렌더판별**(JS렌더라 정적불가, 원본 게19→72)·M렌더추출·실빈1. **_blank→사이트(45)**. N몽타주 이미지37(읍면 지도/면장사진·항공·악보·유물·시설·쌀제품). ⚠️O는 본문 전역 푸터마크 과검출(327)→미부착 초기화, 검수時 실마크 확인필요(원본 부착5). 백업 `*_backup_재구축전.xlsx` |
| 10 | [청주시](광역_사이트맵/충청북도/10.청주시/) | ✅ 수집완료 | 620 | **전면 재구축(2026-06-06)**: 메가메뉴 depth1~4+본문탭=620행(페449·게106·사65). 게시판M Playwright렌더추출·실빈게시판9. N몽타주 이미지40(분수·지도·청사/시장/거리·평면도·악보·역사사진·답례품). O본문영역 부착1. ⚠️재구축이 원본대비 78URL손실(ktour 관광서브도메인 등)→**병합필요**(미반영). 백업 `*_backup_재구축전.xlsx` |
| 11 | [충주시](광역_사이트맵/충청북도/11.충주시/) | ✅ 수집완료 | 732 | 탭확장 +33(구)·**B그룹 +356(376→732)** 메뉴구조 유지(원본 풍부) · **N 몽타주 전면 재판정(2026-06-06)**: 본문 콘텐츠이미지 렌더크롤→몽타주 시각분류, 이미지103(불상·역사인물 초상·명예봉사단 인물사진·산업단지항공·체험마을/특산물·악보·지도/평면도)·어문561·없음27·영상8. O 본문영역 부착16. 메뉴는 기존 그대로, N/O만 보강. 백업 `*_backup_N몽타주전.xlsx` |

## 전북특별자치도 (14) — 패턴: `[[jeonbuk-jeju-sitemap-patterns]]`

> ⛔ **`☑️ 검수완료` 행은 수정·재계산·일괄작업 절대 금지 — 읽기만.**

| # | 기관 | 상태 | 행수 | 비고 |
|---|---|---|---|---|
| 1 | [고창군](광역_사이트맵/전북특별자치도/1.고창군/) | ☑️ 검수완료 | 352 | [검수 2026-06-03] **전면 재수집(2026-05-31): basic_tab menuCd 탭 +120행**(`_tab_expand.py --menucd`) → **전부-페이지 F그룹 재귀합치기 −45**(`_collapse_recursive.py`: 민원편람21·번역서식10·노인복지6·환경기초시설5·성인지2 등 M=합, 게시판140 유지) · Phase2~4 재수집(L페이지203·게시판140) · **O 전체 미부착**(KOGL배지 전역푸터→본문한정 미부착, 사용자 r3-6 수정과 일치) · E랜딩셸 −21 · **리다이렉트 중복셸 −13**(menuCd 다른데 자식으로 리다이렉트=같은페이지: 군정알림→공지사항·고창소식→보도자료·참여마당→고창군에바란다 등, 전행 fetch로 최종URL 충돌 탐지, 셸삭제·타겟유지, 342→329, 백업 `*_backup_중복셸삭제전.xlsx`) · **검수(2026-06-01)**: B순번 연속재부여(gap·빈칸13 정리)·사이트명(C) 빈칸13 고창군 채움·카테고리구멍 0(G carry-forward 정상)·Y/Z/AA(프리랜서2) · 양식검수 통과(329→352) |
| 2 | [군산시](광역_사이트맵/전북특별자치도/2.군산시/) | ☑️ 검수완료 | 430 | [검수 2026-06-02] **LNB 재수집·G하위메뉴 확장**(parse_gunsan dep4제거가 G레벨 통째삭제 → LNB(.lnb/#snb) 권위트리로 173행 추가, 288→462) · m72 본문탭 전개 등 후처리 후 **430행 확정**(고아 URL 잔재블록 16:01 제거됨) · **검수(2026-06-02): 구조검수 PASS** — 데이터430행·B순번 1~430 연속·헤더병합·D/E/F병합경계·K열·병합겹침 모두 이상0 · 이전 재수집(2026-05-31): parse_gunsan 카르테시안 버그수정·E랜딩셸 −6·F빈칸 E랜딩 −47(O=4유형 푸터배지) |
| 3 | [김제시](광역_사이트맵/전북특별자치도/3.김제시/) | ☑️ 검수완료 | 394 | [검수 2026-06-03] E랜딩셸 −2 · 리다이렉트중복 −11(1-5d) · **게시판↔페이지 재분류(2026-06-02)**: 원본이 메뉴 대부분을 게시판으로 과분류 → 본문 리스트클래스(bbs_list/news_list/photo_list/video_list/magazine_list/board_list) 판별로 게시판 77만 유지(글합 119,148 보존)·나머지 페이지화 · **basic_tab 인페이지탭 부모병합 30그룹/−133행**(청사안내6·예산서13·복지시책 등, M=페이지탭수, N=저작물유형 합집합, 게시판탭은 별도행 유지) · 외부 새창링크(kosis·familynet·laiis 등) 페이지 유지 · 도구 `_김제_재분류.py`, 백업 `*_backup_재분류전.xlsx` · **누락 하위메뉴 확장(2026-06-02)**: 공식 사이트맵(전체메뉴 DOM_…107002000000) 기준, basic_tab 병합 등으로 빠진 말단 하위메뉴(각자 menuCd) **136개 복원**(청사안내 B1F~5F·CI/BI·예산서 연도별 등) → 부모 아래 올바른 컬럼(D=4+tree_depth)·위치 삽입 + survivor 부모 30개 자기페이지 Phase2~4 재수집(M=탭수→1 등) · **306→442행** · 도구 `_김제_확장.py`, 백업 `*_backup_확장전.xlsx` · **후처리 정리(2026-06-02)**: ①F병합 블록 첫행 G빈칸=부모 랜딩셸 35행 삭제(청사안내·예산서·장애인복지 등, 자식이 F라벨 병합승계) ②메뉴 leaf 끝 '새창열림'=외부 새창링크 53건 → L=사이트·M/N/O/P/Q 비움·텍스트서 '새창열림' 제거(위택스·국민신문고·국가통계포털 등) · **442→407행** · 도구 `_김제_정리.py`, 백업 `*_backup_정리전.xlsx` · **인페이지탭 M기입(2026-06-02)**: 페이지 본문 `div[class*=basic_tab]` 중 링크가 전부 `#anchor`인 그룹(예 basic_tab2>ul.col4 #tab1~N)=인페이지 스크롤탭 → 행 분리 안 하고 M=탭수(공주/금산 전례). 17행~끝 18행 적용(심볼마크4·도시브랜드3·예산서 연도별·환경용어 ㄱ~ㅎ14 등), L=페이지 유지·menuCd 형제nav(basic_tab depth4) 제외 · 도구 `_김제_인페이지탭수.py`, 백업 `*_backup_인페이지탭전.xlsx` · **E셸 삭제(2026-06-02)**: E병합 블록 첫행 F빈칸=중분류 랜딩셸(정보공개란?·열린행정·김제통계·경제/일자리·복지정보 등 `…000000`) 27행 삭제, F자식이 E라벨 병합승계. 단독 E(F자식 없는 중분류, 새만금 children 등)는 보존 · (직전 407→406은 파일 열림 중 수동삭제 1행 추정) · **→379행** · 도구 `_김제_E셸삭제.py`, 백업 `*_backup_E셸전.xlsx` · **게시판 N 재판정(2026-06-02, 162행~)**: 사용자 1~161 패턴 학습 → "상세에 보이는 실제 이미지만" 기준(본문 진짜사진≥250px or 한변≥400·≥12KB, 또는 목록 갤러리썸네일; 첨부 보고서/통계 PDF·아이콘·404죽은링크 제외). 어문강등7(183적극행정·210특례참여·233입주기업·315경로당·351학자금·217일자리채용·218채용구직) + 이미지승격3(189읍면동소식·205시민참여공지·257환경신문고) + 191공연행사 이미지유지. **162+ 게시판 어문,이미지 17→13**. 도구 `_N검증.py`(갤러리+본문이미지 검출)·`_imgcheck.py`(사진 크기검증), 백업 `*_backup_N재판정전.xlsx` · **검수(2026-06-02)**: E병합경계 보정(예산서 그룹 E66:E103→E65:E103, 첫행 r65 '재정정보공개' 누락 정정)·B순번 1~394 연속재부여(gap7+빈칸22 정리, 탭 연속행 포함)·사이트명(C) 빈칸22 김제시 채움·Y/Z/AA(프리랜서2) · 양식검수 통과(379→394) |
| 4 | [남원시](광역_사이트맵/전북특별자치도/4.남원시/) | ☑️ 검수완료 | 654 | [검수 2026-06-02] 탭 없음(0) · E랜딩셸 −1 · **리다이렉트중복 −70**(매뉴얼 1-5d) · **재수집(2026-06-02)**: 분야별정보 gnb트리 10→494행·사전공표 공표목록 BRM 3단계 1→89행(M합 715검증)·부모랜딩 F·G −92, 원본반영(170→748) · **검수(2026-06-02)**: B순번 연속재부여(gap 355 정리)·사이트명(C) 빈칸16 남원시 채움·**찾아오시는길 그룹 E '시청안내' 병합경계 보정**(635→652 확장+F 648-652 통합, 청사안내 형제블록과 동일형태)·Y/Z/AA(프리랜서2) · 양식검수 통과(654행) |
| 5 | [무주군](광역_사이트맵/전북특별자치도/5.무주군/) | ☑️ 검수완료 | 347 | [검수 2026-06-03] 중분류 F전개+본문탭(deviceN)45그룹·게시물KOGL(상세10/bbsView)·부착36 · 양식검수 통과(행수확인) |
| 6 | [부안군](광역_사이트맵/전북특별자치도/6.부안군/) | ☑️ 검수완료 | 316 | 📤[제출 2026-06-05] · [검수 2026-06-04] **검수(2026-06-04)**: 정렬통일(D/E/F/G 가운데·가운데·줄바꿈ON, K 왼쪽·가운데)·B순번 1~316 재부여(dedup 삭제갭24 정리)·Y/Z/AA(프리랜서2) 316행. **구조검수 PASS**(미병합 부모그룹0·헤더병합·행높이15·K하이퍼링크불일치0). 백업 `*_backup_검수전.xlsx`. 도구 `_fix_buan.py`. · **본문 콘텐츠탭 전개(2026-06-03)**: "탭없음0" 오판 정정 — basic_tab/basic_tab2 39그룹/+175행(165→340). 민원편람·사전공표 부서별필터·복지·재난행동요령 등. `_tab_expand_cms.py` 3중가드·인페이지탭 M처리·중복델타0·B순번연속. 백업 `*_backup_탭전개전.xlsx` · (인라인메가메뉴) |
| 7 | [순창군](광역_사이트맵/전북특별자치도/7.순창군/) | ☑️ 검수완료 | 413 | 📤[제출 2026-06-05] · [검수 2026-06-05] LNB 4차하위 전개로 226→378(`_순창_LNB하위.py`) · **검수(2026-06-05)**: ①E병합 경계보정(농촌개발·축산·산림 E258:E269→E258:E272, 축산·산림 소분류 하위 임업/산불/등산 3행 중분류 떠있던 것 정정, **사용자 직접**) ②**B순번 빈칸 35건 자동채움**(연속재번호 1~413, 지방재정공시 등 연도시리즈·각 행 고유URL leaf) ③**순창사랑상품권 이용가맹점 G221:224 병합해제+필터라벨 4행 전개**(지류상품권·모바일상품권·BC카드·NH카드, 각 codeUids 페이지확인) · Y/Z/AA(프리랜서2·2026-06-05) · 양식검수 통과(378→413) · 백업 `*_backup_검수정정전.xlsx` |
| 8 | [완주군](광역_사이트맵/전북특별자치도/8.완주군/) | ☑️ 검수완료 | 902 | [검수 2026-06-08] JS렌더(9is/contentUid)→Playwright. 게시판 재분류·M실집계(공지사항 읍면 1781 등)·실국과/사업소 dep2 35+부서별 dep3 179 전개·공표 12분야 BRM37·페이지탭 29부모125자식. **검수**: D3:105 대분류 열린민원 채움(홀해소)·E병합경계 2곳보정(학자금대출374·공동주택511)·B순번1~902 재부여·C빈칸44·Y/Z/AA(프2·2026-06-08). 구조검수 PASS(902행·병합겹침0·K링크0) |
| 9 | [익산시](광역_사이트맵/전북특별자치도/9.익산시/) | ☑️ 검수완료 | 588 | 📤[제출 2026-06-05] · [검수 2026-06-05] 구조검수 PASS(588행). **유령행227 삭제**(r591~817=B순번만 있던 trailing빈행)·B순번 1~588 연속재부여·C빈칸148 채움(전북특별자치도 익산시)·Y/Z/AA(프리랜서2). · **.snb 자식탭 전개 +65**(재정운용상황공개5 등 26부모)·**연도별게시판 M채움**(2023~1995)·**보도자료류30 MNOPQ수집**(M실집계·O=4유형=익산 전역 공공누리4유형 푸터컨벤션, 기존515행 일관) · 양식검수 통과(308→588) · ⚠️게시판 일부 M0·N이미지/일부 L은 내용검수(사용자) |
| 10 | [임실군](광역_사이트맵/전북특별자치도/10.임실군/) | ☑️ 검수완료 | 305 | [검수 2026-06-06] 구조검수 PASS(305행)·B순번 1~305 연속재부여(신규전개 B빈칸129 포함)·C빈칸23 채움·Y/Z/AA(프리랜서2·06-06). **menuCd LNB 하위메뉴 재구성 +94행**(전입혜택→전입장려금·안전보험·예산서48연도별 등 18그룹, F자식G전개·라벨없는행보정·스타일복사)·**L빈칸23 채움**(분야별 게시판)·**공공누리 전수재스캔**(임실마크=open0N.jpg 기존미포착→보강판별기, 게시판상세top10: r301 임실군지4유형 외 0건)·본문탭전개(161→179) · 양식검수 통과(179→305) · ⚠️게시판 다수 M0(총게시물 미표시)·새행 B검수번호=사용자판단 |
| 11 | [장수군](광역_사이트맵/전북특별자치도/11.장수군/) | ☑️ 검수완료 | 423 | [검수 2026-06-06] 구조검수 PASS(423행). **전면 재수집**(41→356, 원본 대분류누락·중분류 D오기(민원안내)·본문탭0 → menuCd `DOM_000000[대3중3소3세부3]` 계층해독·GNB트리 대10/중59/소232·본문탭 ul.taps 51그룹 G전개·6대분류 D정정) 후 N재판정·읍면게시판 등 거쳐 **423행** · **검수(2026-06-06)**: B순번 1~423 연속재부여(gap90-92+빈칸71 정리)·C빈칸71 채움(전북특별자치도 장수군)·Y/Z/AA(프리랜서2). 미병합부모0·헤더병합·D/E/F병합경계·K열·병합겹침 정상. 백업 `*_backup_검수전.xlsx`. 도구 `_검수보정.py` · ⚠️게시판 일부 M0·N이미지/L 내용은 사용자판단(구조/양식만 검수) |
| 12 | [전주시](광역_사이트맵/전북특별자치도/12.전주시/) | ☑️ 검수완료 | 609 | [검수 2026-06-07] **전면 재수집(221→515)**: GNB 메가메뉴(ul.gnb 590링크)로 4차메뉴 누락 복구·기존 leaf 149행 보존·신규 366행 phase2-4. 6대분류 · 본문탭 ul.snb 하위 +74(533→607) · N 이미지 재판정(413~끝, 어문↔이미지 시각분류) → 609행 · 깨진 마크업 html5lib·E랜딩셸 −27·리다이렉트중복 −12 · **검수(2026-06-06)**: 구조검수 PASS(헤더병합 S1:W1 복구·B순번1~609연속·D/E/F병합경계·미병합부모0·K열정상)·Y/Z/AA(프리랜서2·2026-06-07). 백업 `*_backup_헤더병합복구전.xlsx`·`*_backup_Z날짜변경전.xlsx` |
| 13 | [정읍시](광역_사이트맵/전북특별자치도/13.정읍시/) | ☑️ 검수완료 | 558 | [검수 2026-06-09] **구조검수 PASS(이상 0)** — 헤더병합 B1:R1/S1:W1/Y1:AA1·시트명 13_정읍시·B순번 1~558 연속·D/E/F 병합경계·K열·병합겹침·카테고리홀 전부 정상. 1차 기입: C(사이트명) 빈칸 4행(r91~94 동학농민혁명 자식행) 채움·**Y/Z/AA 전 콘텐츠행 558**(프리랜서2·2026-06-09·Y). **사용자 직접 정정**: B순번 연속 재부번(기존 부모1~280+자식B빈칸 → 1~558)·대분류(D) 채움(r470~560 D='정읍은': 정읍소개/시청안내/시정자료/시정살림/정읍통계/전북소개)·E병합경계 보정(시민광장 E22:28·차량교통 E285:296 자식행 포함). **클로드 마무리**: F병합경계 F306:308→F306:311 확장(청소년성문화센터 프로그램 자식 r309~311, menuCd …103005009* 동일소속 확정). 백업 `*_backup_검수전.xlsx`·`*_backup_F병합보정전.xlsx`. ◀누적: 본문탭 전개·N 몽타주 재판정+_blank·LNB 하위메뉴 전개·L 재분류·공공누리 O/P/Q 재수집·사전정보공표 3단카테고리 전개(280→558) |
| 14 | [진안군](광역_사이트맵/전북특별자치도/14.진안군/) | ✅ 수집완료 | 459 | 본문탭(item3)전개·상세전개 등 누적 459행 · **N 몽타주 전수 재판정(2026-06-07)**: planweb menuCd. 신규탭행 N미판정분 포함 121변경(이미지40·이미지영상5, 관광명소/음식/인물/제품/농공단지배치도/읍면 자연·도로·택시사진·소식지표지)·_blank(GNB 0건). ⚠️사이트행 일부 N잔존(검수정리)·O는 기존유지. 백업 `*_backup_탭전개전.xlsx` |

> **2026-05-31 전북 일괄 정리** (`_collapse_landing.py`): ① 순수 메뉴 셸 E-랜딩(페이지·M≤1·미부착) 98행 제거 — 게시판/공공누리 부착 랜딩 325행은 보존. ② 군산 parse_gunsan `ul.dep4` 카르테시안 버그(208행) 재수집으로 수정. ③ 템플릿 잔재(gb.go.kr·open.go.kr URL 누락행) 86행 제거. 백업: `*_backup_랜딩제거전.xlsx`·`*_backup_재수집전.xlsx`·`*_backup_잔재제거전.xlsx`.

## 제주특별자치도 (2)

> ⛔ **`☑️ 검수완료` 행은 수정·재계산·일괄작업 절대 금지 — 읽기만.**

| # | 기관 | 상태 | 행수 | 비고 |
|---|---|---|---|---|
| 1 | [서귀포시](광역_사이트맵/제주특별자치도/1.서귀포시/) | ✅ 수집완료 | 387 | jeju.go.kr 외부링크 多 · 탭확장 +24 · 외부URL 사이트표시 4(visitjeju·jejudatahub) |
| 2 | [제주시](광역_사이트맵/제주특별자치도/2.제주시/) | ✅ 수집완료 | 363 | 시정소식→/news/ 개편 재구축 · N 21행~ 재분류 · 랜딩셸34삭제 · 본문탭(depth_tabmenu) 28그룹 G전개 +92(271→363) |

---

## ⬜ 예정 광역 (미착수 — 착수 시 여기에 시·군 행 추가)

- [ ] 서울특별시  [ ] 부산광역시  [ ] 대구광역시  [ ] 인천(중앙구 외)  [ ] 광주광역시
- [ ] 대전광역시  [ ] 울산광역시  [ ] 세종특별자치시  [ ] 경기도  [ ] 강원특별자치도
- [ ] 경상남도  [ ] 경상북도  (전라남도·인천 일부는 1주차 완료)

> 새 광역 착수 시: 마스터 엑셀 `1단계_홈페이지` 시트에서 해당 시·도 기관 추출 → `작업파일/광역_사이트맵/{광역}/{N}.{기관}/` 생성 → 수집 → 이 표에 행 추가.

---

## 🗂 본문탭(매뉴얼 1-5b) 일괄 확장 — 2026-05-29

- 검수완료(계룡시) 제외, 수집완료 39개 기관 전체에 본문탭 확장 + 신규행 Phase2~4 일괄 수행. 도구 `_스크립트/_tab_batch.py`(dry→신규행>0일 때만 --write→_tab_phase234), 각 엑셀 `*_backup_tab전.xlsx` 백업 보존.
- **확장 11개 기관 / 총 +1,240행**: 금산+9·논산+22·예산+233·천안+297·홍성+215(충남), 영동+143·음성+36·증평+175·청주+106·충주+33(충북), 서귀포+24(제주). 신규행 O 대부분 미부착(천안 1유형2·홍성 4유형1·금산 4유형2).
- **전북 14곳 + 제주시 + 충남/충북 나머지 = 탭 없음(0)으로 확정.** 클래스 무관 탐지(`_tab_classfind.py`)로 검증: 전북·제주시 페이지의 반복 UL은 전부 전역 패밀리/유틸리티 nav(시청·읍면동·로그인·푸터)일 뿐 공주식 본문 서브탭이 아님 → 1-5b 조건이 올바르게 0건 처리.
- 검증: 11개 확장파일 모두 행수 증가·헤더병합(B1:R1·S1:W1·Y1:AA1) 보존·K하이퍼링크 누락 0.

---

## 🧹 부모-자식 URL 중복 일괄 정리(매뉴얼 1-5 전 깊이 일반화) — 2026-05-30

- **문제**: 기존 phase1 dedup은 F→G 한 깊이만 처리. 중분류(E)·대분류(D)가 클릭 랜딩이고 그 URL이 첫 하위행과 같은 경우(D→E·E→F 중복)는 안 지워져 행이 부풀려져 있었음(서산시 41건 등).
- **도구** `_스크립트/_dedup_all.py`(dry/run): 부모행 leaf 컬럼 lc, 직후 자식이 D~lc 동일·lc+1 채움·K(URL) **정확히 동일**이면 부모 삭제(카테고리 텍스트는 자식 병합으로 승계). 평탄화→D/E/F 재병합→순번/행높이/하이퍼링크 재설정은 tab_expand와 동일.
- **26개 기관 / 총 −791행 제거**(각 `*_backup_dedup전.xlsx` 백업): 서천−53·충주−58·단양−56·음성−54·예산−52·영동−51·제천−48·보은−46·서산−41·옥천−41·청주−40·청양−35·진천−35·괴산−28·증평−27·천안−26·아산−26·보령−24·부여−24·정읍−24·완주−1·제주시−1 등.
- 계룡시(검수완료)·공주·금산·논산·전북 대부분 등은 0건(해당 구조 없음)이라 무변경.
- 검증: 재-dry 잔여 중복 **0행**, 변경파일 헤더병합·B순번 연속·K하이퍼링크 누락 0 확인.

---

## 📑 페이지 전용 G그룹 1행 합치기(규칙 B) 전 사이트 적용 — 2026-05-30

- 공주시에 적용했던 규칙 B를 **나머지 40개 기관**에 일괄 적용(공주=완료·계룡=검수완료 제외). 도구 `_스크립트/_collapse_all.py`(dry/run), 각 `*_backup_collapse전.xlsx` 백업.
- **F 하나에 G가 여러 개이고 G가 전부 L=페이지**면 → 1행으로 합치고 G/H/I/J 비움, K=첫 G URL, 수량(M)=G들 M 합.
- **공공누리 보존**: 합쳐지는 그룹에 부착이 있으면 O유형을 콤마(공백없음·오름차순)로 합집합, Q=하나라도 Y면 Y, P=게시판 우선. (예: 제천 공공저작물 O=`1유형,2유형,3유형`). 부착 합쳐진 그룹 112개.
- 결과: **615개 그룹 합침 / −2,212행**. 깊은 다중뎁스(분야별서비스이행기준식 type1 재귀)는 미적용 — 사용자 직접 검수.
- 검증: 재-dry 0행, 변경파일 헤더병합·B순번·K하이퍼링크 정상.
