{
  "id": "P32-C04",
  "mode": "workflow",
  "theme": "workflow",
  "brand": "РАЗБОР / P32-C04",
  "title": "Предпочтение мастера не меняется молча",
  "lead": "Замена специалиста требует отдельного согласия.",
  "section": "Исходный материал → результат",
  "offer": "Замена специалиста требует отдельного согласия.",
  "inputTitle": "Редактируемый исходный материал",
  "outputTitle": "Подготовленный результат",
  "source": "Диалог\nЖелаемый специалист: Мария\nПредложен специалист: Светлана\nСогласие на замену: нет\nУслуга: стрижка\nДата: 2026-11-08",
  "extract": [
    {
      "id": "wanted",
      "label": "Желаемый специалист",
      "pattern": "^Желаемый специалист:[ \\t]*(.+)$",
      "type": "text",
      "required": true
    },
    {
      "id": "offered",
      "label": "Предложен специалист",
      "pattern": "^Предложен специалист:[ \\t]*(.+)$",
      "type": "text",
      "required": true
    },
    {
      "id": "consent",
      "label": "Согласие на замену",
      "pattern": "^Согласие на замену:[ \\t]*(.+)$",
      "type": "text",
      "required": true
    },
    {
      "id": "service",
      "label": "Услуга",
      "pattern": "^Услуга:[ \\t]*(.+)$",
      "type": "text",
      "required": true
    },
    {
      "id": "date",
      "label": "Дата",
      "pattern": "^Дата:[ \\t]*(.+)$",
      "type": "text",
      "required": true
    }
  ],
  "processor": "extract",
  "rules": [],
  "examples": [
    {
      "label": "Исходный пример",
      "text": "Диалог\nЖелаемый специалист: Мария\nПредложен специалист: Светлана\nСогласие на замену: нет\nУслуга: стрижка\nДата: 2026-11-08"
    },
    {
      "label": "Неполные сведения",
      "text": "Требуется уточнение. Исходные параметры пока не переданы."
    }
  ],
  "comparisons": [
    {
      "kind": "consent",
      "left": "wanted",
      "right": "offered",
      "consentField": "consent",
      "message": "На замену специалиста нет явного согласия."
    }
  ]
}
