fix(using-wiki): v2.1.0 — оп-лог автоматический (таблица logs, ратификация 2026-08-24), log-страница и ручной каталог убраны; каталог = entity_search (#983)
This commit is contained in:
BIN
dist/using-wiki.skill
vendored
BIN
dist/using-wiki.skill
vendored
Binary file not shown.
@@ -1,7 +1,7 @@
|
|||||||
---
|
---
|
||||||
name: using-wiki
|
name: using-wiki
|
||||||
author: ours
|
author: ours
|
||||||
version: 2.0.0
|
version: 2.1.0
|
||||||
description: >
|
description: >
|
||||||
Policy skill for working with the project wiki in Mappa (Karpathy LLM Wiki
|
Policy skill for working with the project wiki in Mappa (Karpathy LLM Wiki
|
||||||
pattern, channel = mappa-сущности, решения 14/15 спеки mappa). Use when the
|
pattern, channel = mappa-сущности, решения 14/15 спеки mappa). Use when the
|
||||||
@@ -36,7 +36,9 @@ Body = frontmatter + markdown как есть (content-модель сохран
|
|||||||
|
|
||||||
Файловый `.wiki/` в репозиториях — легаси: источник истины — сервис.
|
Файловый `.wiki/` в репозиториях — легаси: источник истины — сервис.
|
||||||
Если вики проекта пуста (нет сущностей) — **ничего настраивать не надо**
|
Если вики проекта пуста (нет сущностей) — **ничего настраивать не надо**
|
||||||
(setup-wiki умер): первый ingest сам создаёт `CLAUDE`, `index`, `log` (см. Ingest).
|
(setup-wiki умер): первый ingest сам создаёт `CLAUDE` (+ опционально `index`);
|
||||||
|
оп-лог вести не нужно — сервис пишет его в таблицу `logs` автоматически
|
||||||
|
(решение 12, ратификация 2026-08-24).
|
||||||
|
|
||||||
## MCP-поверхность
|
## MCP-поверхность
|
||||||
|
|
||||||
@@ -76,7 +78,8 @@ Body = frontmatter + markdown как есть (content-модель сохран
|
|||||||
3. Только потом действуй.
|
3. Только потом действуй.
|
||||||
|
|
||||||
Если `CLAUDE` нет — вики либо новая, либо неухоженная: не импровизируй
|
Если `CLAUDE` нет — вики либо новая, либо неухоженная: не импровизируй
|
||||||
структуру, создай `CLAUDE`/`index`/`log` при первом ingest (см. ниже).
|
структуру, создай `CLAUDE` при первом ingest (см. ниже). Каталог — через
|
||||||
|
`entity_search` (решение 1); `index`-страница опциональна (для ориентации).
|
||||||
|
|
||||||
## Три операции
|
## Три операции
|
||||||
|
|
||||||
@@ -91,9 +94,14 @@ Body = frontmatter + markdown как есть (content-модель сохран
|
|||||||
помечай явно** блоком `> **Противоречие:** источник A говорит X, источник B — Y`.
|
помечай явно** блоком `> **Противоречие:** источник A говорит X, источник B — Y`.
|
||||||
Не затирай молча.
|
Не затирай молча.
|
||||||
- нет → создай (`wiki_create`).
|
- нет → создай (`wiki_create`).
|
||||||
5. Обнови `index` (каталог: одна строка на страницу).
|
5. Обнови `index` (каталог: одна строка на страницу) — опционально; каталог
|
||||||
6. Допиши одну строку в `log` (формат ниже).
|
по умолчанию — `entity_search` (решение 1).
|
||||||
7. Отчитайся пользователю: что создано, что обновлено, какие противоречия.
|
6. Отчитайся пользователю: что создано, что обновлено, какие противоречия.
|
||||||
|
|
||||||
|
**Оп-лог — автоматический.** Каждая write-операция уже пишется сервисом в
|
||||||
|
таблицу `logs` (component=тип сущности, message=slug+operation; смотреть —
|
||||||
|
`mcp__mappa__admin_logs`). Ручную `log`-страницу НЕ веди — это дубль,
|
||||||
|
аудит-след живёт в сервисе (решение 12, ратификация 2026-08-24).
|
||||||
|
|
||||||
**Один ingest может затронуть 10–15 страниц. Это нормально — для того LLM и нужны.**
|
**Один ingest может затронуть 10–15 страниц. Это нормально — для того LLM и нужны.**
|
||||||
|
|
||||||
@@ -109,7 +117,8 @@ Body = frontmatter + markdown как есть (content-модель сохран
|
|||||||
3. **Компаундируй вики.** Если ответ — реальный синтез (сравнение, анализ,
|
3. **Компаундируй вики.** Если ответ — реальный синтез (сравнение, анализ,
|
||||||
новая связь) — спроси пользователя: «Сохранить как страницу wiki?» Хорошие
|
новая связь) — спроси пользователя: «Сохранить как страницу wiki?» Хорошие
|
||||||
вопросы становятся страницами в `concepts/`.
|
вопросы становятся страницами в `concepts/`.
|
||||||
4. Допиши строку в `log`.
|
|
||||||
|
Оп-лог в query — автоматический (logs-таблица); строку вручную не дописывай.
|
||||||
|
|
||||||
### Lint — «проверь вики»
|
### Lint — «проверь вики»
|
||||||
|
|
||||||
@@ -123,7 +132,7 @@ Body = frontmatter + markdown как есть (content-модель сохран
|
|||||||
- **Пустые/TODO-секции.**
|
- **Пустые/TODO-секции.**
|
||||||
|
|
||||||
Отчёт — панч-лист. Ничего не удаляй автоматически.
|
Отчёт — панч-лист. Ничего не удаляй автоматически.
|
||||||
Допиши строку в `log` с итогом.
|
Оп-лог в lint — автоматический (logs-таблица); строку вручную не дописывай.
|
||||||
|
|
||||||
## Форматы страниц (ОБЯЗАТЕЛЬНО)
|
## Форматы страниц (ОБЯЗАТЕЛЬНО)
|
||||||
|
|
||||||
@@ -150,30 +159,28 @@ updated: 2026-08-24
|
|||||||
- `entities/<name>`, `concepts/<name>`, `packages/<name>`, `sources/<slug>`,
|
- `entities/<name>`, `concepts/<name>`, `packages/<name>`, `sources/<slug>`,
|
||||||
`contradictions/<slug>`, `open-questions/<slug>`.
|
`contradictions/<slug>`, `open-questions/<slug>`.
|
||||||
|
|
||||||
### `log` — append-only, grep-parseable
|
### Оп-лог — таблица `logs`, не страница
|
||||||
|
|
||||||
Каждая запись **обязана** начинаться с:
|
File-based `log.md` мёртв (решение 12/15, ратификация 2026-08-24). Сервис пишет
|
||||||
|
оп-лог сам при каждой write-операции: `mcp__mappa__admin_logs` (фильтры
|
||||||
|
level/since/component/entity, retention 14d). Ручную `log`-страницу не заводи,
|
||||||
|
не дописывай, не парси.
|
||||||
|
|
||||||
```
|
### `index` — каталог через поиск
|
||||||
## [YYYY-MM-DD] <operation> | <short description>
|
|
||||||
```
|
|
||||||
|
|
||||||
Операции: `ingest`, `query`, `lint`, `refactor`, `decision`, `init`.
|
Каталог = `entity_search(q, type='wiki', project)` (решение 1). `index`-страница
|
||||||
Парсится: `entity_search(q="## [", type="wiki", project=…)` по сущности `log`.
|
— опциональная опора для ориентации: одна строка на страницу
|
||||||
|
`- [Title](concepts/foo.md) — hook.`, секции по типам. Обновляй только если
|
||||||
### `index`
|
страница уже существует; не плоди каталог-дубли.
|
||||||
|
|
||||||
Каталог, не нарратив. Одна строка на страницу: `- [Title](concepts/foo.md) — hook.`
|
|
||||||
Секции по типам. Обновляется на каждом ingest.
|
|
||||||
|
|
||||||
## Quick reference
|
## Quick reference
|
||||||
|
|
||||||
| Ситуация | Что трогаем |
|
| Ситуация | Что трогаем |
|
||||||
|---|---|
|
|---|---|
|
||||||
| Ingest одного документа | `sources/<slug>` (новая) + 3–15 entities/concepts/packages + `index` + `log` |
|
| Ingest одного документа | `sources/<slug>` (новая) + 3–15 entities/concepts/packages (+ опционально `index`) |
|
||||||
| Query | (чтение) + возможно новая страница + `log` |
|
| Query | (чтение) + возможно новая страница |
|
||||||
| Lint | (чтение) + `log` |
|
| Lint | (чтение) |
|
||||||
| Новая вики проекта | первый ingest создаёт `CLAUDE`/`index`/`log` + контент |
|
| Новая вики проекта | первый ingest создаёт `CLAUDE` (+ опционально `index`); оп-лог — автоматический |
|
||||||
|
|
||||||
## Частые ошибки
|
## Частые ошибки
|
||||||
|
|
||||||
@@ -181,10 +188,11 @@ updated: 2026-08-24
|
|||||||
- **Дамп сырья в `sources/`.** Резюме — это резюме. Ссылайся на raw, не копируй.
|
- **Дамп сырья в `sources/`.** Резюме — это резюме. Ссылайся на raw, не копируй.
|
||||||
- **Молчаливые перезаписи.** Новый источник противоречит странице — пометь
|
- **Молчаливые перезаписи.** Новый источник противоречит странице — пометь
|
||||||
блоком `> **Противоречие:**`; не затирай.
|
блоком `> **Противоречие:**`; не затирай.
|
||||||
- **Нарративный `log`.** «Сегодня я добавил…» — неверно. Формат:
|
- **Нарративный оп-лог.** Не веди его руками: сервис пишет logs сам (admin.logs).
|
||||||
`## [YYYY-MM-DD] ingest | <что>`.
|
«Сегодня я добавил…» — даже вручную писать не надо.
|
||||||
- **Не-ASCII слаги.** Ломают grep и кросс-платформенность. Транслитерируй.
|
- **Не-ASCII слаги.** Ломают grep и кросс-платформенность. Транслитерируй.
|
||||||
- **Забытый `index`.** Страницы без записи в каталоге невидимы для будущих query.
|
- **Забытый `index`.** Страницы без записи в каталоге невидимы для будущих query
|
||||||
|
(если index-страница ведётся; дефолтный каталог — entity_search).
|
||||||
- **Пропущенные противоречия в lint.** Ценность вики — в вскрытых напряжениях,
|
- **Пропущенные противоречия в lint.** Ценность вики — в вскрытых напряжениях,
|
||||||
а не в ложном консенсусе.
|
а не в ложном консенсусе.
|
||||||
- **Запись без лиза.** Wiki-мутации без `claim_token` → 422 busy; не пытайся
|
- **Запись без лиза.** Wiki-мутации без `claim_token` → 422 busy; не пытайся
|
||||||
|
|||||||
Reference in New Issue
Block a user