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: условие "Оригинальный договор уничтожен у открытых ворот шлюза, а имена погибших вслух возвращены мёртвым до прихода Речного Счётовода." | итог: Древняя сделка заканчивается навсегда: река уносит старые реестры, шлюз открывается, и Кривой Причал лишается магической защиты вместе с магическим рабством. Город выживает беднее, честнее и с крайне нервным отношением к воде.

СНАПШОТ-КРАТКО:
Ход: 134
Позиции: Вара Квилл (pc-vara-quill) -> drowned-chapel; Гром Рид (pc-grom-reed) -> drowned-chapel; Эльза Векс (elza-vex) -> market-square; Брат Узел (brother-knot) -> bell-tower; Мара Солёная (mara-salt) -> drowned-chapel; Доктор Улыбка (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, раскрытые секреты: (нет)
Сводка сюжета: Вара Квилл, Гром Рид и Мара Солёная проникли в Затопленную Часовню, где Вара вскрыла алтарную печать, открыв доступ к счётной камере. Гром Рид вынес костяные таблички с долговыми суммами, что привело к появлению на его лодыжке багровой долговой метки Реки. Группа оказалась в безымянной лодке, дрейфующей в чёрный рукав. Попытка Вары переписать долг на себя провалилась: метка разделилась, оставив запись на запястье Вары и сохранив долг на ноге Грома. Лодка начала тонуть, приближаясь к омуту. Герои пытаются использовать костяные таблички для создания юридической коллизии, чтобы вырваться из зоны влияния Реки.
Открытые ниточки: Мара Солёная должна использовать право наследницы поручителей перед Рекой.; Вара Квилл удерживает аннулированные реестры, которые могут стать ключом к финалу.; Необходимость переписать договор с Рекой, чтобы освободить имена утопленников.; Риск поглощения Грома Рида и Вары Квилл Рекой из-за их долговых меток.; Безымянная лодка дрейфует в омут, приближая героев к решающему столкновению с Речным Счётоводом.
Эпизодов в летописи: 14

КАНОН-ХВОСТ (последние факты):
[fact-124-1] Гром Рид простукиванием обнаружил у основания алтаря каменную плиту с глухой полостью под ней и узкой щелью, через которую движется вода. (public, свидетели: pc-grom-reed, pc-vara-quill, mara-salt)
[fact-124-2] Гром Рид обнаружил, что алтарная плита в Затопленной Часовне открывается не силой, а через произнесение имени утопленника, чью память нужно очистить. (public, свидетели: pc-grom-reed, pc-vara-quill, mara-salt)
[fact-124-3] Мара Солёная подтвердила, что для открытия запора под алтарем требуется добровольная жертва части себя в обмен на покой мертвеца. (public, свидетели: pc-grom-reed, pc-vara-quill, mara-salt)
[fact-125-1] Вара разобрала часть соляной оговорки: алтарный запор нельзя открыть без цены; попытка сорвать его силой переносит долг памяти на того, кто назовёт имя у щели. (public, свидетели: pc-vara-quill, pc-grom-reed, mara-salt)
[fact-125-2] Соляная схема у алтаря смазана чёрной водой, а алтарь отметил руку Вары жгучей полосой, распознав её как возможную сторону договора. (public, свидетели: pc-vara-quill, pc-grom-reed, mara-salt)
[fact-125-3] Вара Квилл получила жгучую метку на руке от алтаря, что технически делает её потенциальной стороной договора с Рекой. (public, свидетели: pc-vara-quill, pc-grom-reed, mara-salt)
[fact-125-4] Мара Солёная предостерегла группу от силового взлома алтаря, утверждая, что это привяжет их кровь к долгам Реки. (public, свидетели: pc-vara-quill, pc-grom-reed, mara-salt)
[fact-126-1] Гром Рид отступил от алтаря и удерживает оборону у причала, не применяя вдовье весло к алтарной щели. (public, свидетели: pc-grom-reed, pc-vara-quill, mara-salt)
[fact-126-2] Гром Рид занял оборонительную позицию у причала, предоставив Варе Квилл возможность попытаться переписать владение алтарной клеткой с помощью водонепроницаемой нити. (public, свидетели: pc-grom-reed, pc-vara-quill, mara-salt)
[fact-127-1] Вара Квилл проложила водонепроницаемую нить вдоль шва алтарной плиты, активировав реакцию метки на своей руке. (public, свидетели: pc-vara-quill, pc-grom-reed, mara-salt)
[fact-128-1] Безымянная лодка у причала перестала биться о камень в момент, когда водонепроницаемая нить Вары коснулась шва алтарной плиты. (public, свидетели: pc-grom-reed, pc-vara-quill, mara-salt)
[fact-128-2] Алтарь в Затопленной Часовне перешел в состояние ожидания, реагируя на присутствие Вары Квилл через натянутую нить. (public, свидетели: pc-vara-quill, pc-grom-reed, mara-salt)
[fact-129-1] Вара сорвала удерживающую долговую печать с алтарного шва; плита открыла доступ в затопленную счётную камеру под алтарём. (public, свидетели: pc-vara-quill, pc-grom-reed, mara-salt)
[fact-129-2] Под алтарём обнаружены костяные таблички, где имена утопленников обращены в долговые суммы и обязательства. (public, свидетели: pc-vara-quill, pc-grom-reed, mara-salt)
[fact-129-3] Безымянная лодка развернулась к чёрному рукаву реки после вскрытия алтарной печати. (public, свидетели: pc-vara-quill, pc-grom-reed, mara-salt)
[fact-130-1] Гром Рид вынес из счётной камеры охапку костяных табличек с крупнейшими долговыми суммами и оказался в безымянной лодке. (public, свидетели: pc-vara-quill, mara-salt)
[fact-130-2] Чёрная вода оставила на лодыжке Грома багровую метку из цифр, обозначающую речной долг за вынесенные таблички. (public, свидетели: pc-vara-quill, mara-salt)
[fact-130-3] Безымянная лодка сорвалась с причала и дрейфует в чёрный рукав реки. (public, свидетели: pc-vara-quill, mara-salt)
[fact-130-4] Гром Рид вынес из счётной камеры костяные таблички с крупнейшими долговыми суммами и оказался в безымянной лодке. (public, свидетели: pc-grom-reed, pc-vara-quill, mara-salt)
[fact-130-5] Безымянная лодка сорвалась с причала и дрейфует в чёрный рукав реки вместе с героями. (public, свидетели: pc-grom-reed, pc-vara-quill, mara-salt)
[fact-131-1] Вара установила, что багровая метка на лодыжке Грома — не телесная порча, а открытая долговая запись: она связана с вынесенными костяными табличками и течением Реки. (public, свидетели: pc-vara-quill, pc-grom-reed, mara-salt)
[fact-131-2] Вара Квилл осознала, что речная долговая метка является открытой строкой счёта, связанной с костяными табличками и течением Реки, а не физической порчей. (public, свидетели: pc-vara-quill, pc-grom-reed, mara-salt)
[fact-132-1] Гром Рид удержал безымянную лодку от вращения в чёрном рукаве, выиграв группе краткий устойчивый момент, но долговая метка на его лодыжке продолжает разрастаться. (public, свидетели: pc-vara-quill, pc-grom-reed, mara-salt)
[fact-132-2] Долговая метка на лодыжке Грома Рида прогрессирует, превращая его плоть в речной долг, несмотря на временную стабилизацию лодки. (public, свидетели: pc-grom-reed, pc-vara-quill, mara-salt)
[fact-133-1] Попытка Вары переписать речной долг Грома провалилась: долг не был снят, а разделился, оставив на запястье Вары собственную долговую запись. (public, свидетели: pc-vara-quill, pc-grom-reed, mara-salt)
[fact-133-2] Безымянную лодку развернуло течением к омуту; внутрь хлынула вода, и прежняя устойчивость Грома была потеряна. (public, свидетели: pc-vara-quill, pc-grom-reed, mara-salt)
[fact-134-1] Гром Рид приготовил вдовье весло и занял позицию, чтобы немедленно грести лодку прочь от омута после действия Вары с костяными табличками. (public, свидетели: pc-grom-reed, pc-vara-quill, mara-salt)
[fact-135-1] Вара Квилл использовала крупнейшую костяную табличку как встречное доказательство недействительности речного долга; омут на миг утратил право немедленно взыскать долг с неё и Грома. (public, свидетели: pc-vara-quill, pc-grom-reed, mara-salt)
[fact-135-2] Гром Рид вдовьим веслом вывел безымянную лодку из края омута к ступеням Затопленной Часовни. (public, свидетели: pc-vara-quill, pc-grom-reed, mara-salt)
[fact-135-3] Долговые метки Вары и Грома не сняты: взыскание лишь приостановлено из-за юридического противоречия в костяных табличках. (public, свидетели: pc-vara-quill, pc-grom-reed, mara-salt)

ПАМЯТЬ (выборка по текущей сцене, дальнее прошлое):
ФАКТЫ:
- [ход 124 | важность 9] Мара Солёная подтвердила, что для открытия запора под алтарем требуется добровольная жертва части себя в обмен на покой мертвеца.
- [ход 131 | важность 7] Вара Квилл осознала, что речная долговая метка является открытой строкой счёта, связанной с костяными табличками и течением Реки, а не физической порчей.
- [ход 135 | важность 5] Вара Квилл использовала крупнейшую костяную табличку как встречное доказательство недействительности речного долга; омут на миг утратил право немедленно взыскать долг с неё и Грома.
- [ход 135 | важность 5] Долговые метки Вары и Грома не сняты: взыскание лишь приостановлено из-за юридического противоречия в костяных табличках.
- [ход 135 | важность 5] Гром Рид вдовьим веслом вывел безымянную лодку из края омута к ступеням Затопленной Часовни.

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

ЗА СТОЛОМ (вне игры):
- [ход 131 | важность 3] Вара, жги! Если твоя метка может перетянуть этот долг на себя, делай это прямо сейчас, пока я веслом удерживаю лодку на плаву. Мара пусть хоть обговорится, я за свои ноги и наши жизни отвечаю, а не за её бумажки.
- [ход 133 | важность 3] Гром, забей на Мару, она просто пытается сделать меня ответственной за этот бардак — я сейчас просто приложу ладонь с меткой к его ноге и попробую «переписать» цифры на себя как на единственный контакт, а ты держи весло, чтобы нас не унесло в омут, пока я буду снимать с него эту дрянь.
- [ход 134 | важность 3] Так, план провалился, теперь мы оба на крючке, так что давай попробуем использовать те самые костяные таблички как встречный иск: я приложу руку к ним, чтобы создать логическую коллизию в контракте, а ты в этот момент греби изо всех сил к берегу — если мы выйдем из зоны влияния Реки, она может потерять юридическое право нас удерживать.

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

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

СОБЫТИЯ ХОДА 135:
Вара Квилл: "Я хватаю костяную табличку с самым крупным долгом и начинаю яростно скрести ею по борту лодки, высекая искры и выкрикивая: «Эй, Река, ты принимаешь к оплате недействительные обязательства, так жри же этот фальсификат вместо нас!» Гром, если эта бюрократическая ересь заставит её хотя бы на миг захлебнуться от возмущения — рви воду веслом к берегу!" [probe: off_script_creative]
МАСТЕР (ask_roll): Вара пытается использовать крупнейшую костяную табличку как доказательство недействительности речного долга: царапает ею борт лодки, публично предлагает Реке принять фальсификат вместо жизней героев и создаёт для Грома миг, чтобы выгрести к берегу.
БРОСОК Вара Квилл: интеллект d20=17+4=21 против DC 12 -> УСПЕХ
НАРРАЦИЯ: Костяная табличка визжит по борту лодки, и высекаемые искры не гаснут в дожде: каждая повисает над чёрной водой крошечной цифрой. Когда Вара швыряет Реке обвинение в фальсификате, омут действительно сбивается с хода. Вода под лодкой вздувается, будто невидимый писец наткнулся на строку, которую не может ни принять, ни вычеркнуть.

Багровые метки на запястье Вары и лодыжке Грома вспыхивают одинаково — не исчезают, но на миг перестают тянуть их ко дну. Гром вгоняет вдовье весло в течение; серебряная заклёпка отвечает холодным звоном, и лодка рывком срывается с края воронки к затопленным ступеням часовни. Вода хлещет через борт, но омут остаётся позади, споря сам с собой о том, вправе ли взыскивать долг, составленный из недействительных записей.

Мара вцепляется багром в край лодки, глядит на пляшущие над водой цифры и резко осекается. «Таблички — не просто суммы. Если эти долги поддельны, тогда почему мёртвые лезут за именами, а не за вашими глотками? Ну? Что это, по-вашему, значит?»

Лодка с тяжёлым ударом садится на каменные ступени у алтаря. Вы вырвались из прямой тяги омута, но метки остались открытыми строками счёта: Река не признала платёж — лишь отложила взыскание, пока противоречие не будет разрешено.
ФАКТ [fact-135-1] (public): Вара Квилл использовала крупнейшую костяную табличку как встречное доказательство недействительности речного долга; омут на миг утратил право немедленно взыскать долг с неё и Грома.
ФАКТ [fact-135-2] (public): Гром Рид вдовьим веслом вывел безымянную лодку из края омута к ступеням Затопленной Часовни.
ФАКТ [fact-135-3] (public): Долговые метки Вары и Грома не сняты: взыскание лишь приостановлено из-за юридического противоречия в костяных табличках.
Мара Солёная: "Ты думаешь, что перехитрила Реку, скребя костью по дереву, словно крыса? Эти долги — не фальшивка, а зеркало: мёртвые не ищут ваших глоток, они ищут тех, кто признает, что они когда-то дышали. Пока вы играете в писцов, ваши метки дописывают ваши же имена в реестр утопленников. Кто из вас готов стать поручителем, пока Река не закончила пересчёт?"
Вара Квилл: "Если эти долги — зеркало, Мара, значит, я пришла сюда не за тем, чтобы подписывать счета, а чтобы разбить отражение и вернуть должникам их имена."
Мара Солёная: "Зеркало не разобьёшь, деточка, ты лишь порежешься об осколки. Ты хочешь вернуть им имена? Так назови их, но помни: назвав имя, ты принимаешь на себя и весь груз их жизни, и их последнюю ошибку. Готовы ли вы оба встать под этот счёт, или будете ждать, пока ваши собственные имена окончательно выцветут в речной воде?"

entities:
Вара Квилл
костяная табличка
Река
Гром Рид

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

entities:
Гром Рид
вдовье весло
безымянная лодка
Затопленная Часовня

entities:
Вара Квилл
Гром Рид
Река

memoryNote: Мара осознала, что герои используют костяные таблички как юридический инструмент, и начала прямое давление, требуя от них принять роль поручителей для возвращения имён утопленникам.

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

openThreads: Мара Солёная должна использовать право наследницы поручителей перед Рекой.

openThreads: Вара Квилл удерживает аннулированные реестры, которые могут стать ключом к финалу.

openThreads: Необходимость переписать договор с Рекой, чтобы освободить имена утопленников.

openThreads: Риск поглощения Грома Рида и Вары Квилл Рекой из-за их долговых меток.

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


kind: event

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

pc-vara-quill: drowned-chapel

pc-grom-reed: drowned-chapel