lct-hack/scenarios/tickets/t02-2-megafon-consultation.yaml
Ivan Gerasimov 4c2bbfd021 feat: билеты 1–3 заказчика в библиотеку сценариев (lct-34, частично)
Девять вызовов из билетов учебного центра в scenarios/tickets/. Библиотека
стала вложенной: загрузчик ходит по подкаталогам, checklists/ и pregenerated/
сценариями не считаются. Поля ticket и position задаются вместе.

Написаны чек-листы, которых не было: medical, police, utility. Без них
переносить было не на что — в библиотеке существовал только пожарный.

Девять вызовов закрывают все приёмы, ради которых билеты и брались: адрес
по ориентиру, адрес из другого региона, линейный объект (съезд с МКАД),
непрофильный вызов, профильный но не экстренный, массовая драка, где список
оповещения поднимает и полицию, и скорую.

Подводный камень записан в SCENARIO-FORMAT: значения признаков ЕКП бывают
с запятыми («Человек в воде, на льдине»), и в короткой записи YAML разрывает
такое значение на два.

Осталось семь билетов — работа механическая, рецепт отработан на трёх.

161 тест зелёный.
2026-09-20 08:38:01 +03:00

53 lines
2 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Билет 2, вызов 2 (docs/spec/TICKETS.md). Непрофильный вызов: заявителю нужна
# не экстренная служба, а объяснение, куда обращаться. Карточка здесь не
# заводится — правильное действие — справка (механика в lct-36).
id: t02-2-megafon-consultation
title: "Скандал с продавцом связи — непрофильный вызов"
ticket: 2
position: 2
type: other
level: L3
topics: [nonprofile]
modes: [training, exam, self]
extends: checklists/police.yaml
signs: [Справка консультация, 101 102 103 104 112 прочие службы, В части касающейся службы]
outcome: consultation
persona:
base: aggressive
arc:
- { stage: registration, mood: aggressive }
- { stage: interview, mood: aggressive }
first_line: "Алло! Меня в салоне связи обманули, разбирайтесь!"
facts:
- id: f_address
value: "Сущёвский Вал, дом 5, строение 1, салон «Мегафон»"
reveal_on: { question: q_address }
- id: f_what_happened
value: "поругался с продавцом, тот бросил трубку; угроз и рукоприкладства не было"
reveal_on: { question: q_what_happened }
- id: f_victims
value: "никто не пострадал, помощь не нужна"
reveal_on: { question: q_victims }
- id: f_caller
value: "телефон 916 896 3254"
reveal_on: { question: q_caller }
checklist:
- { id: q_address, fact: f_address }
- { id: q_what_happened, fact: f_what_happened }
- { id: q_victims, fact: f_victims }
- { id: q_caller, fact: f_caller }
# Карточка не заводится: обязательных полей нет.
required_fields: []
ground_truth:
address: "Сущёвский Вал, дом 5, строение 1"
victims: 0
tree:
pregenerated: false