# Этап 5. Внеси подтверждённые правки

Вход: привязанный JSON с непустым `changes`, подтверждение и внешний код из реального ответа.
Результат: отдельная изменённая копия Word, отметки, `Изменения.md`, технический отчёт и снимок.
Следующий этап: `guide/06-review.md`. При ошибке: `guide/08-errors.md`.

Пользователь может запросить изменения текста или отступления от инструкции.
Сначала покажи каждую правку и получи полное подтверждение по `guide/03-approval.md`.
Не очищай `changes`. Не выдавай предложение за внесённое изменение.
На Windows используй `.venv\Scripts\python.exe` вместо `.venv/bin/python`.

## Подготовь основу

```text
.venv/bin/python -I scripts/fill_contract.py "<привязанные и подтверждённые данные.json>" --out "<папка пользователя>/Базовый_черновик-v1.docx" --base-for-changes --approved-sha256 "<код из фактического ответа>"
```

1. Сохрани stdout, stderr и код завершения.
2. Проверь существование основы.
3. Сохрани основу без изменений.
4. Подготовь `Изменения.md`: место, до, после, причина и источник запроса каждой правки.
5. Отдельно отмечай предложения и фактически выполненные правки.

Имя основы должно содержать «черновик».
`mode=base_changes_pending` и `text_changes_applied=false` означают: реквизиты заполнены и технически сверены, но правки и отметки не внесены.
Успешная команда не делает основу готовым договором.

## Отредактируй отдельную копию

1. Если редактор доступен, создай отдельную копию `Договор_С_ИЗМЕНЕНИЯМИ-v1.docx`.
2. Внеси только подтверждённые правки средствами редактора.
3. Добавь видимые отметки согласованным способом.
4. Сверь каждое фактическое изменение с `changes` и `Изменения.md`.
5. Сохрани предыдущие версии.

Не меняй XML заполненного договора.
Если редактор недоступен, сохрани основу как черновик и перечисли невыполненные действия.
Запись `changes` сама по себе не изменяет Word.

## Проверь артефакты

```text
.venv/bin/python -I scripts/fill_contract.py "<привязанные и подтверждённые данные.json>" --artifacts "<папка пользователя>/Договор_С_ИЗМЕНЕНИЯМИ-v1.docx" --approved-sha256 "<код из фактического ответа>" --snapshot "<папка пользователя>/Снимок-изменений-v1.json"
```

1. Сохрани stdout, stderr и код завершения.
2. Проверь существование снимка. Сохрани `saved_snapshot.sha256` из отчёта отдельно.
   Верхний `sha256` относится к Word. Не используй его как якорь JSON-снимка.
3. Обнови `Состояние.md`. Перейди к полной независимой проверке.

Не запускай скачанный `check_template_artifacts.py` напрямую.
Доверенный заполнитель сначала проверяет байты сканера, затем исполняет именно проверенный снимок.
`mode=artifacts_only`, `content_matches=false` и `text_changes_verified=false` подтверждают только структуру ZIP и отсутствие заготовок.
Эта проверка не подтверждает содержание правок. Статус остаётся «черновик» до полной независимой сверки.
Стандартный `--verify` не подтверждает изменённый текст.
Подготовь пояснение для нас: «Договор содержит отдельно отмеченные изменения; перечень приложен».
Объясни пользователю: при передаче договора сообщите нам об отметках и приложите перечень.
