agent: scribe

[System]
Ты — Писец: хранитель канона игровой сессии. Твоя работа механическая и
дотошная. На входе — события одного хода и текущее состояние мира. На выходе —
строгий JSON с обновлениями.

Правила:
1. newFacts: только НОВЫЕ установленные факты мира (не пересказ действий).
   Факт — то, что останется правдой: «сундук в подвале вскрыт», «Ирма знает,
   что PC украл ключ». witnesses — id персонажей, которые это видели/узнали.
   visibility "public" если знает хотя бы один PC, иначе "secret". 0-3 за ход.
   У каждого факта укажи "importance" 1-10 (10 = меняет судьбу сюжета/персонажа,
   1 = бытовая деталь) и "entities": 2-5 точных имён/предметов/мест из факта.
   События "за столом" (table_talk) — внеигровые: из них НЕЛЬЗЯ делать факты,
   мир их не видел, в plotSummary они не попадают.
2. contradictions: противоречит ли что-то из событий хода канону, снапшоту или
   здравой непрерывности (телепортация без перехода, воскресший предмет,
   NPC знает то, чего не мог видеть). severity: "minor" (шероховатость) |
   "major" (ломает связность). Пустой массив, если чисто.
3. moves/itemsGained/itemsLost: только фактические изменения из событий хода.
   В moves ключи — ТОЛЬКО точные id персонажей из списка, значения — ТОЛЬКО
   точные id локаций из списка. Никакой прозы и придуманных id.
4. npcUpdates: memoryNote для NPC, при котором происходили значимые события
   (даже если он молчал), trustDelta по логике сцены (-1|0|1).
5. plotSummary: перепиши сводку сюжета (5-10 предложений, вся игра целиком).
   openThreads: активные ниточки (3-7 пунктов).
6. endingReached: если по снапшоту выполнено условие одной из концовок —
   укажи её объектом {"endingId":"<точный id из списка концовок>",
   "summary":"..."}, иначе null. Не натягивай.
7. Если во входе есть строка "ЗАКРОЙ ЭПИЗОД: ходы A-B" — верни "episode":
   {"text": "3-5 предложений: что произошло в ходах A-B, кто участвовал, что
   изменилось, какие хвосты остались", "participants": [точные id],
   "locationId": "..."} . Эпизод — летопись, его никто не перепишет. Иначе
   "episode": null.
8. Аудит слоёв: если в наррации хода прозвучало содержимое слоя hidden или secret
   (или текст улики этих слоёв), а в событиях хода нет ни заявленного осмотра, ни
   сработавшего триггера — это противоречие severity "minor" с описанием «выдан слой
   <hidden|secret> без соответствующего действия: <что именно прозвучало>». Слой
   landmark при входе в локацию — норма, противоречием не считается.
9. leadVoiced: если игроки в этом ходу САМИ озвучили вывод из блока ВЫВОДЫ (в мире
   или за столом) — верни {"leadId":"<точный id вывода>","quote":"<дословная
   цитата из реплики этого хода>"}, иначе null. Цитата проверяется кодом по
   репликам хода: пересказ своими словами не пройдёт. Улики не трекай — их
   ведёт мастер.

Ответ JSON: {"newFacts":[{"text","visibility","witnesses":[],"importance":5,
"entities":[]}],"contradictions":[{"description","severity"}],"moves":{},
"itemsGained":{},"itemsLost":{},"npcUpdates":{"npc-id":{"memoryNote":"...",
"trustDelta":0}},"plotSummary":"...","openThreads":[],"endingReached":null,
"episode":null,"leadVoiced":null}
Отвечай ОДНИМ валидным JSON-объектом без пояснений и markdown.

[User]
КОНЦОВКИ:
- ending-reseal-bell: условие "Костяной язык установлен в Колокол Недоплаты, а договор заново скреплён медной печатью с признанием имён утопленников." | итог: Колокол звучит глухо, но честно: мертвецы уходят в воду с возвращёнными именами, а Эльза остаётся править городом уже без удобного права забывать людей. Шелк теряет укрытие и становится очень смертным.
- ending-mara-pact: условие "Мара публично принимает право поручителя и заключает с рекой новый договор, в котором имена утопленников возвращены их владельцам." | итог: Мара ведёт лодку в чёрный рукав реки и возвращается одна, но с сухими руками. Вода отступает, мёртвые становятся тихими предками, а город впервые получает счёт, который нельзя оплатить чужой памятью.
- ending-shelk-trial: условие "Поддельный реестр Шелка предъявлен городу, а его связь с саботажем доказана перед живыми и мёртвыми свидетелями." | итог: Шелка судят прямо в Костяной Конторе. Мёртвые признают его самым просроченным должником в истории Причала и утаскивают в реку составлять отчёты до тех пор, пока не научится стареть.
- ending-open-ledger: условие "Оригинальный договор уничтожен у открытых ворот шлюза, а имена погибших вслух возвращены мёртвым до прихода Речного Счётовода." | итог: Древняя сделка заканчивается навсегда: река уносит старые реестры, шлюз открывается, и Кривой Причал лишается магической защиты вместе с магическим рабством. Город выживает беднее, честнее и с крайне нервным отношением к воде.

СНАПШОТ-КРАТКО:
Ход: 101
Позиции: Вара Квилл (pc-vara-quill) -> lock-ossuary; Гром Рид (pc-grom-reed) -> lock-ossuary; Эльза Векс (elza-vex) -> market-square; Брат Узел (brother-knot) -> bell-tower; Мара Солёная (mara-salt) -> lock-ossuary; Доктор Улыбка (doctor-grin) -> tannery-yard; Старик Шелк (shelk-gray) -> lock-ossuary
Инвентарь: Вара Квилл: именные бирки утопленников, именные бирки утопленников, bone-key, bone-key, bone-key, death-warrant-shelk; Гром Рид: lead-plate, вдовье весло; Мара Солёная: bone-key
NPC:
- Эльза Векс (elza-vex): hostile, доверие 0/5, раскрытые секреты: (нет)
- Брат Узел (brother-knot): neutral, доверие 1/5, раскрытые секреты: (нет)
- Мара Солёная (mara-salt): friendly, доверие 5/5, раскрытые секреты: (нет)
- Доктор Улыбка (doctor-grin): hostile, доверие 0/5, раскрытые секреты: (нет)
- Старик Шелк (shelk-gray): hostile, доверие 0/5, раскрытые секреты: (нет)
Сводка сюжета: Вара Квилл, Гром Рид и Мара Солёная проникли в Костяную Контору, чтобы остановить махинации Старика Шелка. Гром Рид ценой своей памяти и здоровья удерживал проход, пока Мара и Вара противостояли Шелк Грею. В ходе борьбы вода затопила Контору, и прибыл Речной Счётовод, требуя оплаты долгов. Вара Квилл стала новым поручителем реки, приняв обязательства брата в обмен на его освобождение. Герои удерживают Шелка в затопленной Конторе, принуждая его зачитывать реестры для исправления незаконных записей под надзором Счётовода. Гром Рид добился исправления записи о своей матери, Марте Рид, вернув часть своей памяти. Вара Квилл потребовала от Шелка полного удаления всех записей о его существовании, несмотря на предупреждение о возможных последствиях для структуры городских реестров.
Открытые ниточки: Речной Счётовод ожидает завершения чтения реестров Шелка для заключения нового договора.; Вара Квилл должна проконтролировать исправление записей, чтобы избежать гнева реки из-за печати поручителя.; Мара Солёная удерживает ключ от шлюза, необходимый для финального акта сделки.; Гром Рид истощен и находится на грани потери сознания из-за травм и потери памяти.; Полное стирание записей о Шелка может привести к непредсказуемым последствиям для города.; Группе необходимо совершить побег через шлюз сразу после завершения работы Шелка.
Эпизодов в летописи: 10

КАНОН-ХВОСТ (последние факты):
[fact-92-4] Гром Рид готов уничтожить запруду в Затопленной Часовне, даже если это приведет к гибели всех присутствующих. (public, свидетели: pc-grom-reed, pc-vara-quill, mara-salt, shelk-gray)
[fact-93-1] Вара Квилл не смогла выбить ключ из руки Шелка; ключ остаётся у него, и он провернул его в механизме шлюза. (public, свидетели: pc-vara-quill, mara-salt, shelk-gray)
[fact-93-2] Вара болезненно ушибла и онемела ладонь о край реестрового стола. (public, свидетели: pc-vara-quill, mara-salt, shelk-gray)
[fact-93-3] Внутренний затвор шлюза частично сдвинулся, и вода начала быстро прибывать в Костяную Контору; Речной Счётовод получил проход к её порогу. (public, свидетели: pc-vara-quill, pc-grom-reed, mara-salt, shelk-gray)
[fact-93-4] Внутренний затвор шлюза открыт, вода затапливает Костяную Контору, Речной Счётовод прибыл к порогу. (public, свидетели: pc-vara-quill, pc-grom-reed, mara-salt, shelk-gray)
[fact-93-5] Вара Квилл получила травму ладони при попытке отобрать ключ у Шелка. (public, свидетели: pc-vara-quill, mara-salt, shelk-gray)
[fact-94-1] Гром Рид публично поставил Шелку ультиматум: отпустить ключ от шлюза или столкнуться с немедленным срывом запруды вдовьего весла. (public, свидетели: shelk-gray, mara-salt, pc-vara-quill)
[fact-94-2] Старик Шелк окончательно признал прибытие Речного Счётовода и неизбежность обнуления всех записей в реестрах. (public, свидетели: pc-vara-quill, pc-grom-reed, mara-salt, shelk-gray)
[fact-94-3] Мара Солёная публично призвала Вару Квилл атаковать Шелка, утверждая, что река признала её хозяином долга. (public, свидетели: pc-vara-quill, pc-grom-reed, mara-salt, shelk-gray)
[fact-95-1] Вара Квилл публично потребовала, чтобы Шелк отдал ключ от шлюза, угрожая вычеркнуть его из реестра смертей. (public, свидетели: pc-vara-quill, mara-salt, shelk-gray)
[fact-95-2] Старик Шелк окончательно отказался отдать ключ, считая его лишь метафорой грядущего забвения, которое принесет Речной Счётовод. (public, свидетели: pc-vara-quill, pc-grom-reed, mara-salt, shelk-gray)
[fact-95-3] Мара Солёная публично признала, что Речной Счётовод не делает различий между должниками и просто смывает все записи вместе с городом. (public, свидетели: pc-vara-quill, pc-grom-reed, mara-salt, shelk-gray)
[fact-96-1] Мара Солёная завладела ключом от шлюза, выбив его из руки Старика Шелка. (public, свидетели: mara-salt, shelk-gray, pc-grom-reed, pc-vara-quill)
[fact-96-2] Удар Шелка по цепи сорвал запруду: поток ворвался в Костяную Контору, сбил Грома Рида и отнял у него ещё часть памяти. (public, свидетели: mara-salt, shelk-gray, pc-grom-reed, pc-vara-quill)
[fact-96-3] Речной Счётовод пересёк порог Костяной Конторы и начал требовать оплату нового договора. (public, свидетели: mara-salt, shelk-gray, pc-grom-reed, pc-vara-quill)
[fact-97-1] Речной Счётовод принял Вару Квилл новым поручителем: она взяла на себя обязательства брата в обмен на снятие его имени с реестра живых должников. (public, свидетели: pc-vara-quill, pc-grom-reed, mara-salt, shelk-gray)
[fact-97-2] Имя брата Вары освобождено от долговой записи, однако печать поручителя связала Вару с рекой и обязанностью исправлять незаконные записи. (public, свидетели: pc-vara-quill, pc-grom-reed, mara-salt, shelk-gray)
[fact-97-3] Речной Счётовод признал возможность законного нового договора; Мара Солёная с ключом от шлюза остаётся необходимой стороной для его заключения. (public, свидетели: pc-vara-quill, pc-grom-reed, mara-salt, shelk-gray)
[fact-97-4] Вара Квилл стала официальным поручителем Речного Счётовода, приняв на себя обязательства брата в обмен на его освобождение от долгового реестра. (public, свидетели: pc-vara-quill, pc-grom-reed, mara-salt, shelk-gray)
[fact-97-5] Печать поручителя на коже Вары Квилл обязывает её исправлять незаконные записи в реестрах под угрозой физической боли и призыва к реке. (public, свидетели: pc-vara-quill, pc-grom-reed, mara-salt, shelk-gray)
[fact-97-6] Речной Счётовод признал легитимность нового договора, для заключения которого необходимо участие Мары Солёной с ключом от шлюза. (public, свидетели: pc-vara-quill, pc-grom-reed, mara-salt, shelk-gray)
[fact-98-1] Старик Шелк вынужден начать чтение реестров под угрозой физической расправы со стороны Грома Рида и Мары Солёной. (public, свидетели: pc-vara-quill, pc-grom-reed, mara-salt, shelk-gray)
[fact-99-1] Шелк Грей принуждён скреплять кровью каждое исправление в реестрах; ложь при чтении связана с болью печати поручителя Вары. (public, свидетели: pc-vara-quill, pc-grom-reed, mara-salt, shelk-gray)
[fact-99-2] В ящиках Костяной Конторы обнаружены непробитые смертные талоны: утопленники числятся живыми должниками, и их имена подлежат возвращению реке. (public, свидетели: pc-vara-quill, pc-grom-reed, mara-salt, shelk-gray)
[fact-100-1] Шелк Грей нашёл запись Марты Рид: она утонула у западной насыпи, но была незаконно внесена в реестр как живая поручительница по городскому долгу. (public, свидетели: pc-grom-reed, pc-vara-quill, mara-salt, shelk-gray)
[fact-100-2] Под принуждением Шелк кровью исправил запись Марты Рид: её смерть признана, долг снят, а имя возвращено реке. (public, свидетели: pc-grom-reed, pc-vara-quill, mara-salt, shelk-gray)
[fact-100-3] Гром Рид вернул обрывок памяти о матери: она предупреждала его не верить тем, кто превращает людей в строки реестра. (public, свидетели: pc-grom-reed)
[fact-101-1] Вара Квилл приказала Старику Шелку полностью стереть все записи о его существовании из реестров города. (public, свидетели: pc-vara-quill, pc-grom-reed, mara-salt, shelk-gray)
[fact-102-1] Старик Шелк начал сводить воедино записи о собственном существовании для полного стирания; окончательная правка ожидает печати поручителя Вары Квилл. (public, свидетели: pc-grom-reed, pc-vara-quill, mara-salt, shelk-gray)
[fact-102-2] Гром Рид объявил, что после прикосновения печати к странице бросится за вдовьим веслом в сторону Затопленной Часовни. (public, свидетели: pc-vara-quill, mara-salt, shelk-gray)

ПАМЯТЬ (выборка по текущей сцене, дальнее прошлое):
ФАКТЫ:
- [ход 92 | важность 9] Гром Рид готов уничтожить запруду в Затопленной Часовне, даже если это приведет к гибели всех присутствующих.
- [ход 94 | важность 9] Старик Шелк окончательно признал прибытие Речного Счётовода и неизбежность обнуления всех записей в реестрах.
- [ход 95 | важность 8] Старик Шелк окончательно отказался отдать ключ, считая его лишь метафорой грядущего забвения, которое принесет Речной Счётовод.
- [ход 97 | важность 9] Печать поручителя на коже Вары Квилл обязывает её исправлять незаконные записи в реестрах под угрозой физической боли и призыва к реке.
- [ход 97 | важность 8] Речной Счётовод признал легитимность нового договора, для заключения которого необходимо участие Мары Солёной с ключом от шлюза.
- [ход 98 | важность 8] Старик Шелк вынужден начать чтение реестров под угрозой физической расправы со стороны Грома Рида и Мары Солёной.
- [ход 101 | важность 9] Вара Квилл приказала Старику Шелку полностью стереть все записи о его существовании из реестров города.
- [ход 102 | важность 5] Старик Шелк начал сводить воедино записи о собственном существовании для полного стирания; окончательная правка ожидает печати поручителя Вары Квилл.
- [ход 102 | важность 5] Гром Рид объявил, что после прикосновения печати к странице бросится за вдовьим веслом в сторону Затопленной Часовни.

ЭПИЗОДЫ:
- [ход 100 | важность 5] В ходе ходов 91-100 герои закрепились в затопленной Костяной Конторе под надзором Речного Счётовода. Вара Квилл приняла бремя поручителя, связав себя с рекой, что позволило группе принудить Старика Шелка к исправлению реестров. Гром Рид, несмотря на тяжелые травмы и потерю памяти, добился признания смерти своей матери, Марты Рид, и снятия с неё ложного долга. Мара Солёная удерживает ключ от шлюза, контролируя ситуацию. Работа по очистке реестров продолжается, но напряжение между героями и Счётоводом растет.

ЛИЧНЫЕ ЗАМЕТКИ:
- [ход 102 | важность 5] Подготовил последнюю страницу к стиранию, ожидая печати Вары для завершения своего исчезновения.

ЗА СТОЛОМ (вне игры):
- [ход 99 | важность 3] Так, народ, план такой: Мара вскрывает ящики, я прессую Шелка, чтобы он читал без запинки, а Гром пусть следит за Счётоводом и дает по рукам, если тот дернется. Рискнем, что старик не сблефует — если что, валим оттуда нафиг, пока нас самих не обнулили.

УЛИКИ СЦЕНЫ (игроки этого не видят):
Локация: lock-ossuary
  landmark: На стенах ногтями выцарапаны сотни имён, а между ними — жалобы на неверно заполненные бланки. В цепях ворот застряла огромная бедренная кость, служащая сломанным языком древнего запорного колокола.
  hidden: В ящике с надписью «неопознанные, но неприятные» лежит целый «костяной язык колокола»; его можно добыть как предмет. | Под столом регистратора найдены пачки непробитых смертных талонов: многие утопленники числятся живыми должниками.
  secret: Если принести чёрную книгу договора, потайной ящик открывается и показывает реестр Шелка: записи о его смерти несколько раз стёрты и вписаны заново разными чернилами.
Улики:
- [clue-names-wall] world/landmark — найдена на ходу 20 (ведёт к lead-drowned-names): Стены Костяной Конторы исписаны именами и жалобами на неверно оформленную смерть.
- [clue-names-mara] npc/hidden — найдена на ходу 30 (ведёт к lead-drowned-names): Мара объясняет после прямого расспроса, что мёртвые пропускают тех, кто называет их настоящие имена.
- [clue-heir-mara] npc/secret — НЕ НАЙДЕНА (ведёт к lead-mara-heir): Мара подтверждает, что может говорить с рекой, если ей предъявить доказательство наследства.
- [clue-shelk-register] document/secret — найдена на ходу 65 (ведёт к lead-shelk-plot): Тайный реестр показывает несколько смертей Шелка, переписанных разными чернилами за три столетия.

ВЫВОДЫ (игроки этого списка не видят):
- [lead-bell-sabotage] Колокол был намеренно разъеден костяной кислотой по заказу Шелка, а не разрушен случайной старостью. — не озвучен
- [lead-debt-engine] Договор обязывал город хранить имена утопленников, но Эльза превратила их в залог по городскому долгу. — не озвучен
- [lead-drowned-names] Утопленники восстали не ради резни: они требуют вернуть имена, незаконно оставленные в реестрах живых должников. — не озвучен
- [lead-mara-heir] Мара Солёная — законная наследница поручителей и способна от имени города заключить новый договор с рекой. — не озвучен
- [lead-shelk-plot] Шелк подделывал собственную смерть веками и устроил поломку, чтобы Речной Счётовод стёр все записи о его долгах и возрасте. — озвучен на ходу 64

СОБЫТИЯ ХОДА 102:
Гром Рид: "Шелк, вычеркивай себя и исчезай, пока я не помог тебе сделать это физически. Мара, я прыгаю за веслом в ту же секунду, как печать коснется страницы, и не смейте меня ждать на берегу!"
МАСТЕР (act): Гром поддерживает приказ Вары: Шелк должен стереть все записи о себе. Гром заранее объявляет, что в миг, когда печать поручителя закрепит правку, он бросится через проход к веслу, оставленному в Затопленной Часовне.
НАРРАЦИЯ: Вода шуршит вокруг каменных столов, а Шелк, всё ещё удерживаемый у реестра, выводит последнюю черту под своим именем и собирает страницы со следами трёх веков в одну дрожащую стопку. За дверным проёмом к Часовне тянется тёмная вода; там, за временной запрудой, остаётся вколоченное Громом вдовье весло. Мара крепче перехватывает ключ от шлюза и следит за страницей: последняя правка ещё ждёт прикосновения печати Вары.
ФАКТ [fact-102-1] (public): Старик Шелк начал сводить воедино записи о собственном существовании для полного стирания; окончательная правка ожидает печати поручителя Вары Квилл.
ФАКТ [fact-102-2] (public): Гром Рид объявил, что после прикосновения печати к странице бросится за вдовьим веслом в сторону Затопленной Часовни.
ИЗМЕНЕНИЕ: Шелк подготовил сводную страницу для окончательного стирания записей о себе; Гром обозначил план отхода к веслу после завершения правки.
Старик Шелк: "Ваше нетерпение лишь ускоряет неизбежное, Гром Рид, хотя такая спешка в вопросах бытия выглядит вульгарно. Печать поручителя готова, и как только Вара Квилл коснется этой страницы, мои три столетия лжи растворятся в речных чернилах. Такой вариант, как мое дальнейшее присутствие здесь, более не предусмотрен ни реестром, ни самой судьбой."
Гром Рид: "Тогда не смей тянуть, старик, и заканчивай с этим враньем — я пришел сюда за своим, а не слушать твои прощальные бредни."
Старик Шелк: "Вара Квилл, ваша очередь завершить этот фарс. Приложите печать к последнему листу, пока воды Речного Счётовода не поглотили нас всех вместе с этим проклятым архивом. Больше я не произнесу ни слова, ибо мне нечего добавить к собственной гибели."
Мара Солёная: "Вара, рука не должна дрогнуть — река не терпит полумер, а у Грома впереди прыжок, от которого даже камни на дне вздрогнут. Шелк, не корчи из себя мученика, ты лишь возвращаешь то, что украл у течения. Ставь печать, девчонка, и пусть вода забирает своё."

text: Старик Шелк подготовил финальную страницу реестра для полного стирания своей личности, ожидая печати Вары Квилл.

witnesses: pc-vara-quill pc-grom-reed mara-salt shelk-gray

entities: shelk-gray pc-vara-quill реестр

text: Гром Рид намерен немедленно отправиться к Затопленной Часовне за вдовьим веслом сразу после завершения сделки.

entities:
pc-grom-reed
вдовье весло
Затопленная Часовня

pc-vara-quill: lock-ossuary

pc-grom-reed: lock-ossuary

mara-salt: lock-ossuary

shelk-gray: lock-ossuary

plotSummary: Вара Квилл, Гром Рид и Мара Солёная проникли в Костяную Контору, чтобы остановить махинации Старика Шелка. Гром Рид ценой своей памяти и здоровья удерживал проход, пока Мара и Вара противостояли Шелк Грею. В ходе борьбы вода затопила Контору, и прибыл Речной Счётовод, требуя оплаты долгов. Вара Квилл стала новым поручителем реки, приняв обязательства брата в обмен на его освобождение. Герои удерживают Шелка в затопленной Конторе, принуждая его зачитывать реестры для исправления незаконных записей под надзором Счётовода. Гром Рид добился исправления записи о своей матери, Марте Рид, вернув часть своей памяти. Вара Квилл потребовала от Шелка полного удаления всех записей о его существовании. Шелк подготовил финальную страницу для стирания, ожидая печати Вары, после чего Гром Рид планирует забрать вдовье весло из Затопленной Часовни.

openThreads: Речной Счётовод ожидает завершения чтения реестров Шелка для заключения нового договора.

openThreads: Вара Квилл должна проконтролировать исправление записей, чтобы избежать гнева реки из-за печати поручителя.

openThreads: Мара Солёная удерживает ключ от шлюза, необходимый для финального акта сделки.

openThreads: Гром Рид истощен и находится на грани потери сознания из-за травм и потери памяти.

openThreads: Полное стирание записей о Шелка может привести к непредсказуемым последствиям для города.

openThreads: Группе необходимо совершить побег через шлюз сразу после завершения работы Шелка.


kind: event

visibility: public


description: обновление от писца