responses Specification
Purpose
Подготовка и согласование ответов ведомств в системе «Обратная связь — регион».
Requirements
Requirement: REQ-ANS-001 — Права на ответ ведомства
{
"id": "REQ-ANS-001",
"level": "REQ",
"status": "agreed",
"owner": "product-owner",
"parents": [
"HLR-POS-004",
"HLR-POS-007"
],
"sources": [
"docs/models.md"
],
"questions": [],
"required_aspects": [
"allowed",
"denied"
],
"verification": "test",
"risk": "high"
}
Система MUST разрешать создание и изменение черновика ответа только исполнителю активного поручения своего ведомства. Исполнитель другого ведомства получает 403; черновик и статус поручения остаются неизменными. Проверка выполняется на сервере независимо от видимости кнопки.
Scenario: SCN-POS-001 — Полный путь жалобы в одно ведомство
- GIVEN Жалоба принята от автора; тестовый маршрут LIGHT-01 v7 действует
- WHEN Подтвердить категорию; назначить маршрут; подготовить и согласовать ответ; опубликовать итог; открыть его автором
- THEN Исполнитель своего ведомства создаёт черновик
Подробности и данные: acceptance/scenarios/scn-pos-001.json.
Scenario: SCN-POS-010 — Исполнитель другого ведомства
- GIVEN Активное поручение принадлежит dept-light; сессия исполнителя dept-other
- WHEN Создать или изменить ответ
- THEN 403; черновик и статус неизменны
Подробности и данные: acceptance/scenarios/scn-pos-010.json.
Requirement: REQ-ANS-002 — Согласование версии ответа
{
"id": "REQ-ANS-002",
"level": "REQ",
"status": "agreed",
"owner": "product-owner",
"parents": [
"HLR-POS-004"
],
"sources": [
"docs/models.md"
],
"questions": [],
"required_aspects": [
"immutable",
"returned"
],
"verification": "test",
"risk": "high"
}
Система MUST фиксировать согласованную версию ответа после действия согласующего того же ведомства. Исполнитель не согласует собственный черновик. Возврат на доработку сохраняет замечание и историю; новая редакция проходит новое согласование. Согласованная версия не редактируется на месте.
Scenario: SCN-POS-001 — Полный путь жалобы в одно ведомство
- GIVEN Жалоба принята от автора; тестовый маршрут LIGHT-01 v7 действует
- WHEN Подтвердить категорию; назначить маршрут; подготовить и согласовать ответ; опубликовать итог; открыть его автором
- THEN Согласованная версия неизменна
Подробности и данные: acceptance/scenarios/scn-pos-001.json.
Scenario: SCN-POS-012 — Возврат на доработку
- GIVEN Согласующий проверяет ответ своего ведомства
- WHEN Вернуть с замечанием; исправить черновик
- THEN Замечание и история сохранены; новая версия снова требует согласования
Подробности и данные: acceptance/scenarios/scn-pos-012.json.
Requirement: REQ-ANS-003 — Полнота итогового ответа
{
"id": "REQ-ANS-003",
"level": "REQ",
"status": "agreed",
"owner": "product-owner",
"parents": [
"HLR-POS-004"
],
"sources": [
"DEC-POS-003",
"contracts/agency-response.schema.json"
],
"questions": [],
"required_aspects": [
"complete",
"incomplete"
],
"verification": "test",
"risk": "high"
}
Система MUST разрешать сборку публикуемого итогового ответа только при наличии согласованного ответа для каждого активного обязательного поручения текущей версии маршрута. При неполном комплекте публикация получает 409 со списком недостающих поручений. Ответы superseded-поручений не закрывают недостающие позиции.
Scenario: SCN-POS-001 — Полный путь жалобы в одно ведомство
- GIVEN Жалоба принята от автора; тестовый маршрут LIGHT-01 v7 действует
- WHEN Подтвердить категорию; назначить маршрут; подготовить и согласовать ответ; опубликовать итог; открыть его автором
- THEN Все обязательные ответы текущего маршрута собраны
Подробности и данные: acceptance/scenarios/scn-pos-001.json.
Scenario: SCN-POS-007 — Два ведомства и неполный комплект
- GIVEN Маршрут содержит dept-light и dept-roads; ответ согласован только dept-light
- WHEN Создать поручения и попытаться опубликовать итог
- THEN Публикация отклонена; указано недостающее поручение
Подробности и данные: acceptance/scenarios/scn-pos-007.json.
Scenario: SCN-POS-008 — Полный комплект двух ведомств и повтор публикации
- GIVEN Оба активных обязательных поручения имеют согласованные ответы
- WHEN Собрать и дважды подтвердить публикацию одной итоговой версии
- THEN Комплект содержит оба актуальных ответа
Подробности и данные: acceptance/scenarios/scn-pos-008.json.