Date: 2026-04-14 Status: Accepted
블로그는 “유효한 모든 글은 공개”라는 방식에서 명시적인 공개 정책으로 이동했다. 메타데이터에는 이제 visibility와 quality review 필드가 포함된다. repository 함수, 피드 생성, 사이트맵 생성, 글 스캐폴딩도 private 또는 품질 기준을 통과하지 못한 콘텐츠가 실수로 노출되지 않도록 수정됐다.
이 결정은 수집, 라우팅, 검색, 피드, 릴리스 안전성에 영향을 주기 때문에 콘텐츠 아키텍처 결정이다.
공개 상태를 meta.json에 표현하고, repository 계층에서 기본적으로 public
visibility를 강제한다. 품질 정책은 docs/blog-quality-guide.md에 문서화하고
대상 테스트로 보호한다.
- private 글은 저장소에 존재해도 public route, feed, sitemap에 노출되지 않는다.
- 새 글은 메타데이터가 다르게 지정하지 않는 한 public을 기본값으로 가진다.
- 품질 기준은 기억에 의존한 수동 리뷰가 아니라 테스트 가능한 정책이 된다.
post-repository를 우회하면 미공개 콘텐츠가 노출될 위험이 있다.
- draft 콘텐츠를 git branch로 분리: main에서 draft를 제외할 수 있지만 오래 걸리는 작성과 리뷰 흐름이 불편해진다.
_draft같은 파일명 convention: 놓치기 쉽고 검증하기 어렵다.- feed나 sitemap에서 수동 필터링: 각 출력 경로가 같은 규칙을 기억해야 해서 취약하다.
21a4a6a(2026-04-14): 공개 정책, 메타데이터, 테스트 추가.b4ae7c2(2026-04-21): 공개 정책과 품질 기준 정리.c480f2f(2026-04-22): 공개 콘텐츠 제목과 문체 정리.