__pycache__/
*.pyc
.pytest_cache/
.venv/
*.egg-info/

.teammode-settings.json

# 로컬 전용 머신 상태(팀원마다 다르고 churn — 절대 추적 금지):
#  - .teammode-active: teammode on 시 팀 루트에 쓰는 활성 마커(cmd_on/off 가 생성·삭제).
#    ⚠️ 마커명은 .teammode-active 다(구 .tgates-active 아님). 불일치 시 git add . 로
#    on/off 상태가 팀 레포에 새어 들어간다(2026-06-20 도그푸딩 적발).
#  - auto_pull throttle state(last-pull)·프롬프트 카운터는 팀 루트 **밖**(XDG_STATE_HOME·
#    TMPDIR)에 둬 애초에 추적 안 됨 — memory/(팀 공유)에 머신 상태가 안 들어가는 게 핵심.
#  - 격리 모드 settings(.s.json 류)는 테스트가 tmp 에 쓰므로 레포 밖이나, 방어로 무시.
.teammode-active
.tgates-active
*.s.json

# 방어: 자격증명/토큰/비밀이 팀 루트에 추적되는 사고 방지 (L2-B0, .gitignore는 죽은 방어 — A.3 토큰키 린트가 강제력)
# P2-2: `*credentials*.json` → `*credentials*` 로 확장 — credentials 이름 데이터파일을
# 확장자무관 git 백스톱(secret 쪽은 이미 *secret* 로 확장자무관). 단 추적돼야 하는 소스는
# 아래 `!` 예외로 재포함(infra/credentials.py·tests/test_credentials_l2e.py 는 코드/테스트).
*credentials*
!infra/credentials.py
!tests/test_credentials_l2e.py
*.token
*secret*
team.config.local.json
.context/
.codex-ref/

# 작업 스크래치/계획 메모(팀 공유 대상 아님 — 밤 작업 설계도 등)
docs/archive/

# 에이전트 작업 산물(worktree·리뷰 출력) — 제품 레포에 넣지 않음
.claude/

# obsidian 볼트 설정 — 각 팀원 install 이 memory/.obsidian/(core-plugins 등)을 생성하고
# obsidian 앱이 workspace.json(개인 레이아웃·열린 파일)을 갱신한다. 팀원·세션마다 churn 이고
# 각자 생성하므로 추적 금지(2026-06-23 도그푸딩 적발 — 안 막으면 git add memory/ 로 새어듦).
.obsidian/
