--- Api
+++ Api
@@ -241,21 +241,21 @@
'''이 저장소의 참조 구현은 2·3·5·7번을 하지 않습니다.''' `scripts/sync.ahawiki.net.mjs`는 별도 manifest 대신 git 히스토리를 마지막 동기화 기록으로 쓰고, 본문을 내려받아 비교하지 않고 목록의 `contentHash`만 비교합니다 — 원격 본문이 그 파일의 최근 커밋 40개 중 '''예전 버전'''과 같으면 로컬이 앞선 것으로 보고 `--apply`일 때 저장하고, 그렇지 않으면 브라우저에서 편집된 것으로 보고 diverged로 알리기만 합니다. 로컬 파일은 바꾸지 않습니다 — diverged는 사람이 병합해 커밋하고, 로컬에 없는 페이지는 `download:ahawiki.net`으로 받습니다. 문서가 이미 git 으로 관리되므로 같은 사실을 manifest 에 한 번 더 적으면 그 둘이 갈라지기 때문입니다. manifest 방식은 문서가 git 밖에 있는 도구에 유효합니다.
`docs/ahawiki.net/manifest.json`은 sync state가 아니라 `download:ahawiki.net`이 남기는 내려받기 기록입니다.
== 변경 이력 표시와 필터
API Key로 저장한 revision은 `viaApi = true`로 기록되고, 저장에 사용한 key는 `userApiKey`로 기록됩니다.
응답의 `userApiKeyName`은 저장에 쓴 key의 현재 이름입니다. 웹에서 저장한 revision은 `null`입니다. key를 폐기해도 이름은 그대로 나옵니다 — 폐기는 key를 못 쓰게 할 뿐 기록을 지우지 않습니다.
* History 화면에는 minor edit, Via API 이모지 컬럼과 `Show ViaApi` 필터가 있고, Via API 편집에는 key 이름이 함께 표시됩니다.
- * `RecentChanges` 매크로에는 `Include via API edits` 토글과 minor edit, Via API 이모지 컬럼이 있습니다.
+ * `RecentChanges` 매크로에는 `Include via API edits` 토글과 minor edit, Via API 이모지 컬럼이 있습니다. 토글은 처음에 켜져 있습니다([MacroRecentChanges]).
* `/api/change`는 `includeViaApi` 파라미터를 받습니다. 기본값은 `0`입니다.
* Admin Recent Changes 화면에는 viaApi 포함/제외 토글과 minor edit, Via API 이모지 컬럼이 있습니다.
* Admin Dashboard의 Recent Changes 요약 표도 minor edit와 API 편집을 함께 불러와, 같은 이모지 컬럼으로 표시합니다. 2026-09-13 전에는 둘을 빼고 불러와서 두 컬럼이 늘 비어 있었습니다.
== 저장 Flow
자동화 도구는 아래 순서로 저장합니다.
1. `GET /api/v1/page/*name`으로 현재 본문과 `revision`을 읽습니다.
2. 본문을 수정합니다.