feat: все 96 вызовов из билетов заказчика в библиотеке (lct-34)

Перенесены все 32 билета учебного центра, по три вызова в каждом. Это тот
материал, по которому заказчик учит операторов сегодня, — библиотека больше
не состоит из придуманных нами ситуаций.

Состав: медицина 23, пожары 19, полиция 16, ЖКХ 5, прочее 33. Исходы:
карточка 86, передача в другой регион 8, справка 2. С уточнением адреса —
29 вызовов. Уровни L1/L2/L3 — 11/38/47.

Написаны чек-листы, которых не было: medical, police, utility.

Признаки ЕКП подбирались под каждый вызов и проверены загрузчиком: комбинация,
которой нет в классификаторе, роняет загрузку. Несколько раз это и случилось,
и ошибка называла, чего не хватает.

Эталонных ответов в сценариях намеренно нет: в билетах их нет тоже, их знает
преподаватель, а наш эталон выводится кодом из фактов. Факты каждого вызова —
ровно то, что названо в строке билета.

193 теста зелёных, make seed заливает 97 сценариев.
This commit is contained in:
Ivan Gerasimov 2026-09-20 09:32:56 +03:00
commit 9b74e3e524
87 changed files with 4652 additions and 0 deletions

View file

@ -0,0 +1,54 @@
# Билет 30, вызов 3 (docs/spec/TICKETS.md). Ситуация и адрес — из билета,
# факты выведены из ситуации: чего в строке нет, того звонящий не знает.
id: t30-3-gas-smell-house
title: Запах газа в частном доме
ticket: 30
position: 3
type: gkh
level: L2
topics: [utility]
modes: [training, exam, self]
extends: checklists/utility.yaml
signs: [Запах газа в помещении, Дом частный]
persona:
base: worried
arc:
- { stage: registration, mood: worried }
- { stage: interview, mood: worried }
first_line: "В доме газом пахнет, от трубы на вводе, и шум в трубе слышно."
facts:
- id: f_address
value: "Новомосковский административный округ, поселение Вороновское, посёлок ЛМС, микрорайон Солнечный, дом 20"
reveal_on: { question: q_address }
- id: f_what_happened
value: "запах газа от трубы на вводе в дом, слышен шум в трубе, газ магистральный"
reveal_on: { question: q_what_happened }
- id: f_scale
value: "запах по всему дому, окна открыли"
reveal_on: { question: q_scale }
- id: f_threat
value: "пострадавших нет, скорая не требуется"
reveal_on: { question: q_threat }
- id: f_caller
value: "Соколова Вера Ивановна, телефон 916-320-12-83"
reveal_on: { question: q_caller }
checklist:
- { id: q_address, fact: f_address }
- { id: q_what_happened, fact: f_what_happened }
- { id: q_scale, fact: f_scale }
- { id: q_threat, fact: f_threat }
- { id: q_caller, fact: f_caller }
required_fields: [address, incident_type, description]
ground_truth:
address: "НАО, поселение Вороновское, посёлок ЛМС, микрорайон Солнечный, дом 20"
victims: 0
tree:
pregenerated: false