Эти правила действуют для любого AI-агента (Claude, Codex, Cursor, иной), который редактирует контент в этом репозитории. Нарушать нельзя — правила выведены из реальных багов на проде.
/llm/Прод-сайт документации живёт под https://docs.aspose.com/llm/.... Ссылка без префикса /llm/ отрезолвится в docs.aspose.com/<path> и упадёт в 404.
В теле любой *.md-страницы все внутренние абсолютные ссылки на документацию пишутся в форме /llm/net/..., без исключений:
[Chat sessions](/llm/net/developer-reference/chat-sessions/) ✅ правильно
[Chat sessions](/net/developer-reference/chat-sessions/) ❌ битая ссылка на проде
Это касается markdown-ссылок [text](path), ссылок в HTML-блоках, картинок (), shortcode-параметров — везде, где встречается абсолютный путь внутрь документации.
Если редактируешь файл и видишь старый префикс /net/... — почини попутно.
Прецедент: коммит 89e06b2 “Fix broken links” массово переписал 171 файл (1140 строк) с /net/... на /llm/net/... именно потому, что ссылки были битые на проде.
url: пишется БЕЗ префикса /llm/Hugo сам добавляет baseURL из config.toml. Поэтому во фронтматтере _index.md путь начинается с /net/...:
---
url: /net/developer-reference/session-persistence/ ✅ правильно
url: /llm/net/developer-reference/session-persistence/ ❌ задвоит префикс
---
Тот же принцип для aliases:.
Короткое правило, чтоб запомнить:
| Где | Префикс |
|---|---|
Тело markdown-страницы — [text](...), , HTML |
/llm/net/... |
Фронтматтер: url:, aliases: |
/net/... |
Все коммиты и PR в этом репозитории принадлежат только Alexander Golshtein (alexander.golshtein@aspose.com). Никаких трейлеров Co-Authored-By: Claude ..., никаких футеров Generated with Claude Code в описаниях PR. Сообщение коммита — только subject и body, описание PR — только ## Summary и ## Test plan.
Никаких git commit, git push, gh pr create без явного “да” от Alex на конкретное действие. Это касается даже мелких правок ссылок.