{
  "slug": "daily_group_report",
  "name": "Вечерний отчёт в группу",
  "description": "В 19:33 Пн-Сб собирает данные дня, спрашивает РП на одобрение, после подтверждения публикует в группу. Пока draft — заказчику отдельный сценарий появится в итерации 4.",
  "trigger_kind": "cron",
  "trigger_config": {
    "cron": "33 19 * * 1-6",
    "tz": "Europe/Moscow"
  },
  "graph": {
    "nodes": [
      {
        "id": "t1",
        "type": "trigger.cron",
        "name": "19:33 Пн-Сб",
        "config": {
          "cron": "33 19 * * 1-6",
          "tz": "Europe/Moscow"
        },
        "x": 40,
        "y": 160
      },
      {
        "id": "d1",
        "type": "data.query",
        "name": "События дня",
        "config": {
          "query": "events_count_for_day",
          "args": "{\"d\": \"today\"}",
          "out_var": "ev_today"
        },
        "x": 240,
        "y": 160
      },
      {
        "id": "d2",
        "type": "data.query",
        "name": "На смене",
        "config": {
          "query": "timesheet_present_today",
          "args": "{}",
          "out_var": "on_shift"
        },
        "x": 440,
        "y": 160
      },
      {
        "id": "d3",
        "type": "data.query",
        "name": "Блокеры",
        "config": {
          "query": "open_blockers_count",
          "args": "{}",
          "out_var": "blockers"
        },
        "x": 640,
        "y": 160
      },
      {
        "id": "ask",
        "type": "human.ask_admin",
        "name": "Одобрение РП",
        "config": {
          "template": "📊 Вечерний отчёт готов:\n• Событий: {ev_today}\n• На смене: {on_shift}\n• Открытых блокеров: {blockers}\n\nПубликовать в группу? (ответь «да» / «нет» / «правь»).",
          "out_var": "approve",
          "timeout_min": 30
        },
        "x": 470,
        "y": 160
      },
      {
        "id": "c1",
        "type": "condition.if",
        "name": "Одобрено?",
        "config": {
          "expr": "'да' in (approve or '').lower()"
        },
        "x": 700,
        "y": 160
      },
      {
        "id": "pub",
        "type": "action.send_message",
        "name": "В группу",
        "config": {
          "chat_id": "-1003504466670",
          "template": "📊 Итог дня:\n• Событий: {ev_today}\n• На смене: {on_shift}\n• Открытых блокеров: {blockers}",
          "parse_mode": ""
        },
        "x": 940,
        "y": 80
      },
      {
        "id": "end_ok",
        "type": "flow.end",
        "name": "Done",
        "config": {
          "status": "success"
        },
        "x": 1160,
        "y": 80
      },
      {
        "id": "end_skip",
        "type": "flow.end",
        "name": "Не публикуем",
        "config": {
          "status": "success",
          "message": "РП не одобрил"
        },
        "x": 940,
        "y": 240
      }
    ],
    "edges": [
      {
        "from": "t1",
        "to": "d1"
      },
      {
        "from": "d1",
        "to": "d2"
      },
      {
        "from": "d2",
        "to": "d3"
      },
      {
        "from": "d3",
        "to": "ask"
      },
      {
        "from": "ask",
        "to": "c1"
      },
      {
        "from": "c1",
        "to": "pub",
        "condition": "true"
      },
      {
        "from": "c1",
        "to": "end_skip",
        "condition": "false"
      },
      {
        "from": "pub",
        "to": "end_ok"
      }
    ]
  },
  "version": 1,
  "exported_at": "2026-05-01T13:14:34.976612"
}