# Пример проекта книги: один чанк zh→ru через C1 — прод-пара пайплайна (pipeline-c1 несёт # промпты, ключёванные по паре, только для zh-ru: D39 слой 2). Собственный тестовый фрагмент. book_id: sample-zh title: 黎明藏书阁 # «Книгохранилище на рассвете» — собственный тестовый фрагмент source_lang: zh target_lang: ru # `genre:` СНЯТ (владелец 16.08, D39.138 п.2в): ни один промпт его не рендерит и канон брифа его не # сворачивает. Ключ ещё принимается — книги, чей book.yaml написан по прежнему шаблону, обязаны # грузиться, — но значение не читается ничем, поэтому в новых книгах его не пишут. audience: взрослые читатели вебновелл adult: false venuti: 0.6 honorifics: keep transcription: palladius # zh→ru: система Палладия (пиньинь — латинская, не для ru-таргета) footnotes: minimal # DC6 register_blocklist (D39.79 Q4): out-of-register target lexis to FLAG for THIS book — a genre/book # property, NOT a pair fact, so a book of another genre ships its own (or none → DC6 runs inert). Whole-word, # case-insensitive; verdict-affecting → folded into brief_hash. Example for a xianxia book (fairy-tale/chancery # words wrong for the register), left commented because this sample fragment does not need one: # register_blocklist: [терем, терема, тереме, теремом, терему, теремах] pipeline: ../configs/pipeline-c1.yaml models: ../configs/models.yaml source_file: chapter1-zh.txt project_db: sample-zh.db ceilings: book_usd: 1.00 # потолок $ на книгу — ledger обязан работать и в тестах day_usd: 2.00 # --- Демонстрация pair-сеама (D39 слой 2), НЕ активная конфигурация ------------------ # Промпт стадии резолвится КОНВЕНЦИЕЙ prompts/<пара>/<роль>.md (пак-15): в репо есть только # prompts/zh-ru/ (conventions написаны под китайский # исходник). Книга с source_lang: ja даёт LangPair() = "ja-ru", которого в паке нет, и # загрузка ПАДАЕТ ГРОМКО в LoadPipeline (никогда молча не подставляем чужую пару). Чтобы # увидеть сеам, поменяйте выше на блок ниже (ja-фрагмент лежит в chapter1-chunk0.txt): # source_lang: ja # target_lang: ru # transcription: polivanov # source_file: chapter1-chunk0.txt # Запуск такого конфига fail-loud'ится с «no prompt for pair "ja-ru" role "translator" — expected # .../prompts/ja-ru/translator.md» — это # сигнал добавить ja-ru пакет промптов, а НЕ баг. ja-ru пакет здесь НЕ сочиняется: # контент пары = данные под реальную книгу (инвариант общности §0.1).