Skip to content

docs: 크로스 저장소 문서 컨벤션 통일 적용 - #13

Merged
digitie merged 1 commit into
mainfrom
docs/unify-conventions
Aug 29, 2026
Merged

digitie merged 1 commit into
mainfrom
docs/unify-conventions

Conversation

@digitie

@digitie digitie commented Aug 29, 2026

Copy link
Copy Markdown
Owner

요약

14개 형제 저장소에 걸친 문서 컨벤션 통일 작업(kor-travel-geo를 컨벤션
기준으로 삼음)의 일환으로, 이 저장소에 문서 전용(docs-only) 패스를
적용했습니다. src/, tests/, Streamlit 등 디버그 UI 관련 파일은
전혀 건드리지 않았습니다.

주요 변경 사항

  • README.md
    • H1 바로 아래에 Python/라이선스/ruff 배지 추가 (pyproject.toml의
      requires-python, license, ruff 설정을 근거로 함).
    • "먼저 읽을 문서" 표를 추가해 이 저장소의 모든 루트 문서를 링크했습니다.
      기존 README에서 전혀 링크되지 않았던 CONTRIBUTING.md, CHANGELOG.md,
      신설 docs/decisions.md도 여기서 링크됩니다.
    • 대표 사용 예제를 동기 호출에서 KrexClient.aio() 기반 async def main() 예제로 승격했습니다. 동기 예제는 보조 예제로 남겼습니다.
    • API_COVERAGE.md 표 내용을 통째로 복제하던 "## 구현 상태" 섹션을
      한 줄 포인터로 축소했습니다.
    • 라이선스 안내 문단을 보강했습니다: 이 라이선스는 이 저장소 코드에만
      적용되고, 감싸는 정부 데이터/API 이용은 제공기관 약관을 따르며 법적
      효력을 보장하지 않는다는 내용을 명시했습니다.
  • AGENTS.md
    • ## Think Before Coding / ## Simplicity First / ## Surgical Changes / ## Goal-Driven Execution / ## Practical Bias 5개
      원칙 헤더를 추가하고, 각각 이 프로젝트에 실제로 해당하는 구체적인
      bullet을 채웠습니다.
    • "절대 하지 말 것(DO NOT)" 목록을 10개에서 6개로 trim했습니다 (겹치는
      항목은 병합, 임시/캐시 파일 커밋 금지는 Surgical Changes bullet로,
      sibling 포팅 규칙은 Simplicity First bullet로 이동).
    • 에이전트별 고정 worktree/CodeGraph 인프라 관련 bullet과 7단계 지시
      우선순위 목록을 제거하고, 우선순위는 "사용자 요청 > AGENTS.md >
      README/기존 테스트" 한 줄로 Goal-Driven Execution에 접었습니다.
    • 문서 언어 정책, 식별자 표, Module ownership, Test/Documentation
      기준, 검증 명령은 그대로 유지했습니다 (이미 컨벤션에 맞음).
  • docs/decisions.md (신규): 코드와 커밋 히스토리에서 실제 근거를 찾은
    결정 3건만 기록했습니다.
    • D-001: strict_no_data로 NO_DATA 처리 방식(예외 vs 빈 페이지)을
      선택하게 한 설계.
    • D-002: KrexClient를 동기 우선으로 두고 AsyncKrexClient는
      asyncio.to_thread 파사드로 감싸는 설계.
    • D-003: traffic.incident()를 존재하지 않던 /openapi/trafficapi/ incident에서 실시간 문자정보 /openapi/burstInfo/realTimeSms로
      repoint한 결정.
  • WSL_KRADDR_GEO_DEBUG_UI.md → WSL_KOR_TRAVEL_GEO_DEBUG_UI.md:
    python-kraddr-geo/pykraddr가 kor-travel-geo로 리네임되고 구현도
    PostgreSQL+PostGIS로 바뀐 것을 반영해 파일명을 바꾸고, 옛 경로/명령이
    더 이상 유효하지 않다는 안내 문단을 추가했습니다. 원문은 참고용으로
    아래에 보존했습니다.

그대로 둔 것

  • CLAUDE.md는 이 저장소에 존재하지 않았고, AGENTS.md를 포크할
    필요도 없어 신규 생성하지 않았습니다.
  • LICENSE(GPL-3.0-or-later 전문)와 CHANGELOG.md([Unreleased]
    섹션 포함)는 이미 컨벤션에 맞아 손대지 않았습니다.
  • SKILL.md, CONTRIBUTING.md, API_COVERAGE.md, endpoints.md,
    codes.md, error-codes.md는 이번 문서 전용 패스의 범위 밖이라
    건드리지 않았습니다.

검증

  • python -m pytest -q -m "not live" → 84 passed, 5 deselected
  • python -m ruff check . → All checks passed
  • python -m mypy src/krex → Success, no issues found in 10 source files

문서 전용 변경이라 위 결과는 이번 패스로 인한 영향이 없음을 확인하는
용도입니다. 머지는 하지 않고 리뷰 요청 상태로 둡니다.

Part of the 14-repo doc-convention unification effort (kor-travel-geo
is the canonical convention source). Docs-only, no src/ or tests/
changes:

- README.md: add Python/license/ruff badges, add a "먼저 읽을 문서" table
  linking every root doc (including previously-unlinked CONTRIBUTING.md
  and CHANGELOG.md), promote the async KrexClient.aio() example to the
  primary usage snippet (sync kept as a secondary example), collapse
  the "구현 상태" table that duplicated API_COVERAGE.md into a one-line
  pointer, and strengthen the closing legal notice (license covers this
  repo's code only, wrapped provider data follows provider terms, no
  legal-effect guarantee).
- AGENTS.md: add the five required principle headers (Think Before
  Coding / Simplicity First / Surgical Changes / Goal-Driven Execution
  / Practical Bias) with project-specific bullets, trim the DO-NOT list
  from 10 items to 6, drop the agent-worktree/CodeGraph infra bullet
  and the 7-step instruction-priority list (folded into one
  Goal-Driven-Execution bullet), keep the Korean-docs policy and
  identifier table as-is.
- docs/decisions.md: new ADR-style log recording the three genuinely
  contestable structural decisions with real grounding in code/git
  history/CHANGELOG: strict_no_data NO_DATA handling, the sync-primary
  + AsyncKrexClient(asyncio.to_thread) facade design, and the
  traffic.incident() repoint from the dead trafficapi/incident path to
  burstInfo/realTimeSms.
- Renamed WSL_KRADDR_GEO_DEBUG_UI.md to WSL_KOR_TRAVEL_GEO_DEBUG_UI.md
  and prefaced it with a notice that python-kraddr-geo/pykraddr was
  renamed to kor-travel-geo (PostgreSQL+PostGIS now, not
  SpatiaLite/SQLite), since this repo doesn't depend on that project
  and the note is kept only for historical reference.

Verified locally: pytest -m "not live" (84 passed, 5 deselected),
ruff check ., mypy src/krex all clean.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XF9V2q4mAmhmXn6t5G9Hfe
@digitie
digitie merged commit 9c766fa into main Aug 29, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant