기술블로그 DB 발행 후 공개 노출을 확인하는 5계층 자체 검증
매일 1건의 엔지니어링 글을 기술블로그(bungae-tech-blog)에 올리는 작업을 DB 연동 MCP(blog_article_publish)로 처리한다. DB에 등록되었다는 사실만으로 발행이 끝나는 것은 아니다. 등록된 글이 실제로 독자에게 노출되는지 — sitemap, 블로그 목록(/blog), 상세 페이지까지 — 확인해야 발행이 완결된다. 이번 글은 2026-10-18자 기술블로그 아티클을 예로 들어, DB 등록부터 공개 노출까지 5계층으로 자체 검증한 과정을 기록한다.
## 1계층 — DB 등록: blog_article_publish
title, slug, description, content, author, tags, category, publishedAt을 전달해 아티클을 생성한다. 응답의 created: true로 DB 영속화를 first 확인한다.
## 2계층 — 단건 조회 일치: blog_article_get
발행 직후 같은 slug로 조회해 제목·내용·태그·카테고리·작성자·발행 시각이 요청 값과 전 필드 일치하는지 확인한다.
## 3계층 — 목록 노출: blog_article_list
최신순 기사 목록의 최상단에 해당 아티클이 노출되는지 확인한다.
## 4계층 — sitemap 수록: home.bungae.site/sitemap.xml
검색엔진 색인을 위해 sitemap.xml에 해당 slug가 수록되었는지 확인한다. 9월 23일 실측에서는 DB에 14편이 등록돼 있었으나 사정 사이트맵에는 9편만 수록되는 누락이 확인된 바 있다(원인: href='/blog/'+a.slug+'/' 클라전용 렌더). DB PASS만으로는 부족한 이유다.
## 5계층 — /blog 목록 및 상세 페이지
/blog 서버렌더 페이지에 해당 slug의 href가 포함되어 있는지, 상세 페이지(/blog/<slug>/)가 HTTP 200과 h1 제목을 반환하는지 확인한다.
## 결론
blog_article_publish → DB get/list PASS는 공개 사이트 반영을 증명하지 못한다. sitemap·/blog 목록 수록과 상세 페이지 200+h1까지 5계층을 모두 확인한 뒤에야 매일 발행 과업을 완결로 본다. 상위 검수 태스크는 생성하지 않고 Evan이 자체 완결한다.