---
name: docs-query
description: >-
  Use to ask the docs/ wiki a question, run a new task's preflight lookup, or guard right before a decision or approach ("did we already decide / already fail at this?").
---

# docs-query

Query 연산 — `docs/` 위키에서 선행 지식을 읽고 질문에 답한다.

이 스킬은 세 시점에 호출된다:
- **task-start preflight**: task-start 4단계에서 이슈 원문을 질문으로 삼아 실행
- **ad-hoc mid-task**: 작업 중 임의 질문을 위키에 던질 때
- **결정·접근 직전 가드**: 새 결정을 내리거나 새 접근을 시도하기 직전 "이미 정했나/망했나" 확인

AGENTS.md의 docs/ 위키 규칙을 따른다. 절차:

1. **항상 `docs/index.md`에서 시작한다.** 전체 위키 구조를 파악하고, 질문과
   관련 있어 보이는 페이지를 목록화한다.

2. **관련 페이지를 읽는다**: 질문 또는 새 task 이슈 원문을 기준으로 —
   - `docs/decisions/index.md`·`docs/lessons/index.md` 앵커 표를 스캔한다.
   - 관련 synthesis(평면 토픽) 페이지를 읽는다.
   - `docs/index.md`만으로 부족하면 `rg`로 `docs/`를 검색할 수 있다.

3. **가드** (결정·접근 직전 또는 새 task 이슈에 해당 결정·접근이 있을 때):
   - 새 결정의 주제를 `docs/decisions/index.md`의 **주제** 앵커와 매칭한다.
   - 새 접근을 `docs/lessons/index.md`의 **접근** 앵커와 매칭한다.
   - **히트 시**: "이미 정했나/망했나(+이유/제약)"를 표면화한다.
     그 결정을 따르거나, 새 근거로 명시적으로 재오픈한다. 재오픈은
     task-submit의 docs-ingest에서 supersede로 반영한다.
     조용히 진행하지 않는다.
   - **미스 시**: 앵커에 없음을 확인하고 다음 단계로 넘어간다.
   - **엣지 표면화**: 앵커 매칭으로 찾은 페이지에 `관계: contradicts`나
     `supersedes`(또는 `상태: 대체됨`)가 있으면 그 관계도 표면화한다 —
     "이 주제에 **모순/대체 표시 있음**: <대상>". 새 task가 이미 뒤집힌 결론
     위에 쌓지 않도록 한다.
   - 매칭된 페이지가 `관계: extends`를 갖고 있으면 "이 결정은 **기존 결정을 확장함**:
     <대상>"으로 표면화한다.
   - 반대로 매칭된 페이지를 가리키는 `관계: extends [[<매칭 페이지명>]]`도
     `rg` 등으로 `docs/decisions/`와 `docs/runbooks/`에서 찾아 "이 결정을
     **확장한 항목 있음**: <출처>"로 표면화한다. 원 결론은 유지하되 후속 경계나
     보완 규칙을 놓치지 않게 하기 위해서다.

4. **task-start preflight로 쓰일 때**: 발견을 `task/index.md`의 선행조회 섹션에
   기록한다. 형식:
   - 확인한 문서
   - 관련 내용과 이번 task에 주는 제약/힌트
   - 가드 히트가 있으면 해당 결정·교훈도 기록
   - 관련 문서가 없으면 "관련 선행 문서 없음"이라고 명시한다.

5. **재사용 가치가 있는 발견**은 `task/docs/`나 `task/log.md`에 후보로 남긴다.
   실제 `docs/` 반영은 docs-ingest에서 판단한다. 채팅에만 두지 않는다.
