{
  "domain": "bearmusic",
  "asOfDate": "2026-06-22",
  "windowDays": 8,
  "attWindowDays": 90,
  "sinceDate": "2026-06-14",
  "attendance": {
    "lessonCountInWindow": 556,
    "harmfulAbsentCount": 47,
    "attendStatusDivergeCount": 47,
    "harmfulAbsent": {
      "truncated": false,
      "shown": [
        {
          "id": "1Tifv1cU9w7jXzHoG38T",
          "date": "2026-05-21",
          "memberName": "박진한",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": false,
          "kioskCheckInTime": null,
          "autoAbsent": false,
          "source": "quick-attend-change",
          "teacher": "최하나",
          "updatedAt": "2026-06-11T14:52:45.138Z"
        },
        {
          "id": "8oWCkbEtPyKNowQdLPwH",
          "date": "2026-05-21",
          "memberName": "김태진",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": false,
          "kioskCheckInTime": null,
          "autoAbsent": true,
          "source": null,
          "teacher": "최수영(원장)",
          "updatedAt": "2026-05-26T17:38:09.005Z"
        },
        {
          "id": "2y1kihm44EkZAJftjWYg",
          "date": "2026-05-22",
          "memberName": "하만주",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": false,
          "kioskCheckInTime": null,
          "autoAbsent": false,
          "source": "quick-attend-change",
          "teacher": "최수영(원장)",
          "updatedAt": "2026-06-11T14:52:45.348Z"
        },
        {
          "id": "C5XQAfnxZwtUfQQB18tv",
          "date": "2026-05-22",
          "memberName": "김민석",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": false,
          "kioskCheckInTime": null,
          "autoAbsent": false,
          "source": null,
          "teacher": null,
          "updatedAt": "2026-05-26T17:38:09.058Z"
        },
        {
          "id": "lesson_ibqfenk9ib",
          "date": "2026-06-12",
          "memberName": "김동원",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": false,
          "kioskCheckInTime": null,
          "autoAbsent": true,
          "source": "auto-absent-status-only",
          "teacher": "최하나",
          "updatedAt": "2026-06-14T12:49:16.681Z"
        },
        {
          "id": "lesson_1393rnvkw4e",
          "date": "2026-06-15",
          "memberName": "최이준",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "18:47",
          "autoAbsent": true,
          "source": "quick-attend-change",
          "teacher": "남선미",
          "updatedAt": "2026-06-22T06:59:11.679Z"
        },
        {
          "id": "lesson_19yifzctn7r",
          "date": "2026-06-15",
          "memberName": "최수진",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "18:46",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:59:16.810Z"
        },
        {
          "id": "lesson_1sf4h9dfzc1",
          "date": "2026-06-15",
          "memberName": "김예람",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "18:12",
          "autoAbsent": true,
          "source": "quick-attend-change",
          "teacher": "남선미",
          "updatedAt": "2026-06-22T06:59:05.920Z"
        },
        {
          "id": "lesson_1xwv71sgl59",
          "date": "2026-06-15",
          "memberName": "박주연",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "17:57",
          "autoAbsent": true,
          "source": "auto-absent-status-only",
          "teacher": "최수영",
          "updatedAt": "2026-06-22T06:59:15.130Z"
        },
        {
          "id": "lesson_2cf0bbm3d5v",
          "date": "2026-06-15",
          "memberName": "최소운",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "18:47",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "최수영",
          "updatedAt": "2026-06-22T06:58:54.839Z"
        },
        {
          "id": "lesson_164ufsed0uj",
          "date": "2026-06-16",
          "memberName": "이근진",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "15:12",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:58:51.194Z"
        },
        {
          "id": "lesson_19t41boqwvz",
          "date": "2026-06-16",
          "memberName": "김민성",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "18:56",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:59:00.684Z"
        },
        {
          "id": "lesson_1gs6ze95ntr",
          "date": "2026-06-16",
          "memberName": "정봉기",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "17:45",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "최수영",
          "updatedAt": "2026-06-22T06:59:02.703Z"
        },
        {
          "id": "lesson_9cp3a46ebk",
          "date": "2026-06-16",
          "memberName": "김민우",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "16:58",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:58:52.773Z"
        },
        {
          "id": "lesson_rh7h2gw5lv",
          "date": "2026-06-16",
          "memberName": "이민숙",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "19:51",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:59:04.581Z"
        },
        {
          "id": "lesson_1d2onooewza",
          "date": "2026-06-17",
          "memberName": "김수지",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "16:42",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "남선미",
          "updatedAt": "2026-06-22T06:59:07.823Z"
        },
        {
          "id": "lesson_1pskwei3k8n",
          "date": "2026-06-17",
          "memberName": "이수경",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "18:14",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "남선미",
          "updatedAt": "2026-06-22T06:58:49.670Z"
        },
        {
          "id": "lesson_28h1ip16syw",
          "date": "2026-06-17",
          "memberName": "조동건",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "17:56",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "최수영",
          "updatedAt": "2026-06-22T06:59:11.198Z"
        },
        {
          "id": "lesson_p4bdbo2jbl",
          "date": "2026-06-17",
          "memberName": "전진우",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "18:11",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:59:22.201Z"
        },
        {
          "id": "lesson_p8dlvmhcwf",
          "date": "2026-06-17",
          "memberName": "김가윤",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "13:41",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "남선미",
          "updatedAt": "2026-06-22T06:59:08.554Z"
        },
        {
          "id": "lesson_s05gy4movi",
          "date": "2026-06-17",
          "memberName": "이원금주",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "19:01",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "최수영",
          "updatedAt": "2026-06-22T06:59:21.574Z"
        },
        {
          "id": "lesson_ytf222179z",
          "date": "2026-06-17",
          "memberName": "김평우",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "18:47",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "남선미",
          "updatedAt": "2026-06-22T06:58:52.313Z"
        },
        {
          "id": "lesson_1jjwpmc97xq",
          "date": "2026-06-18",
          "memberName": "김민준",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "12:56",
          "autoAbsent": true,
          "source": "auto-absent-status-only",
          "teacher": "최하나",
          "updatedAt": "2026-06-22T06:59:06.416Z"
        },
        {
          "id": "lesson_1tz6591jyhj",
          "date": "2026-06-18",
          "memberName": "유민재",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "11:57",
          "autoAbsent": true,
          "source": "auto-absent-status-only",
          "teacher": "최하나",
          "updatedAt": "2026-06-22T06:59:20.266Z"
        },
        {
          "id": "lesson_2ao5wcyceyu",
          "date": "2026-06-18",
          "memberName": "김신우",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "18:03",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:59:12.892Z"
        },
        {
          "id": "lesson_2bvjde3mq3j",
          "date": "2026-06-18",
          "memberName": "유지현",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "19:56",
          "autoAbsent": true,
          "source": "quick-attend-change",
          "teacher": "남선미",
          "updatedAt": "2026-06-22T06:59:17.871Z"
        },
        {
          "id": "lesson_4aqclftf2y",
          "date": "2026-06-18",
          "memberName": "장유진",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "15:07",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "남선미",
          "updatedAt": "2026-06-22T06:59:16.310Z"
        },
        {
          "id": "lesson_bjwvj0o5nn",
          "date": "2026-06-18",
          "memberName": "정다정",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "17:00",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:59:03.362Z"
        },
        {
          "id": "lesson_su82umkjuj",
          "date": "2026-06-18",
          "memberName": "이연지",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "15:14",
          "autoAbsent": true,
          "source": "auto-absent-status-only",
          "teacher": "남선미",
          "updatedAt": "2026-06-22T06:58:51.702Z"
        },
        {
          "id": "lesson_y5o1f0fm7a",
          "date": "2026-06-18",
          "memberName": "정유화",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "19:07",
          "autoAbsent": true,
          "source": "quick-attend-change",
          "teacher": "남선미",
          "updatedAt": "2026-06-22T06:58:53.234Z"
        },
        {
          "id": "lesson_1v7hh8xv2dz",
          "date": "2026-06-19",
          "memberName": "김진후",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "16:03",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:59:15.812Z"
        },
        {
          "id": "lesson_1zdgryps4xr",
          "date": "2026-06-19",
          "memberName": "박지숙",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "15:00",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:59:01.452Z"
        },
        {
          "id": "lesson_227bguhodnp",
          "date": "2026-06-19",
          "memberName": "김효서",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "18:54",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:59:13.538Z"
        },
        {
          "id": "lesson_27pvj5ujnx9",
          "date": "2026-06-19",
          "memberName": "김민석",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "12:58",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "최하나",
          "updatedAt": "2026-06-22T06:59:04.075Z"
        },
        {
          "id": "lesson_2bwmzkqi12d",
          "date": "2026-06-19",
          "memberName": "이성민",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "18:29",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "최수영",
          "updatedAt": "2026-06-22T06:58:47.574Z"
        },
        {
          "id": "lesson_6biwqnse73",
          "date": "2026-06-19",
          "memberName": "박선유",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "13:42",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:58:56.716Z"
        },
        {
          "id": "lesson_akpq1ht6gs",
          "date": "2026-06-19",
          "memberName": "차지연",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "13:00",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:58:54.312Z"
        },
        {
          "id": "lesson_pmxefdz92i",
          "date": "2026-06-19",
          "memberName": "김태진",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "18:04",
          "autoAbsent": true,
          "source": "auto-absent-status-only",
          "teacher": "최수영",
          "updatedAt": "2026-06-22T06:58:58.920Z"
        },
        {
          "id": "lesson_1ht3h6ccnc4",
          "date": "2026-06-20",
          "memberName": "이민아",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "14:54",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:58:55.468Z"
        },
        {
          "id": "lesson_1z289pobu2x",
          "date": "2026-06-20",
          "memberName": "장서우",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "13:17",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "최수영",
          "updatedAt": "2026-06-22T06:59:07.069Z"
        },
        {
          "id": "lesson_2eisf4nca4r",
          "date": "2026-06-20",
          "memberName": "정지윤",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "17:46",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:58:56.088Z"
        },
        {
          "id": "lesson_hzn8xkwl4r",
          "date": "2026-06-20",
          "memberName": "이도경",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "13:17",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:59:09.917Z"
        },
        {
          "id": "lesson_toscb12f75",
          "date": "2026-06-20",
          "memberName": "배소연",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "18:44",
          "autoAbsent": true,
          "source": "auto-absent-status-only",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:59:10.529Z"
        },
        {
          "id": "lesson_1v1mhdqrbof",
          "date": "2026-06-22",
          "memberName": "최이준",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "18:42",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "남선미",
          "updatedAt": "2026-06-22T12:28:47.502Z"
        },
        {
          "id": "lesson_28s3zxibx3o",
          "date": "2026-06-22",
          "memberName": "정회진",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "19:00",
          "autoAbsent": true,
          "source": "auto-absent-status-only",
          "teacher": "최수영",
          "updatedAt": "2026-06-22T12:28:48.019Z"
        },
        {
          "id": "lesson_l67q0oh649",
          "date": "2026-06-22",
          "memberName": "최소운",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "18:42",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "최수영",
          "updatedAt": "2026-06-22T12:33:09.080Z"
        },
        {
          "id": "lesson_lyq17tvy2t",
          "date": "2026-06-22",
          "memberName": "최수진",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "18:50",
          "autoAbsent": true,
          "source": "auto-absent-status-only",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T12:28:49.616Z"
        }
      ],
      "total": 47
    },
    "kioskCheckedInButAbsent": {
      "truncated": false,
      "shown": [
        {
          "id": "lesson_1393rnvkw4e",
          "date": "2026-06-15",
          "memberName": "최이준",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "18:47",
          "autoAbsent": true,
          "source": "quick-attend-change",
          "teacher": "남선미",
          "updatedAt": "2026-06-22T06:59:11.679Z"
        },
        {
          "id": "lesson_19yifzctn7r",
          "date": "2026-06-15",
          "memberName": "최수진",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "18:46",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:59:16.810Z"
        },
        {
          "id": "lesson_1sf4h9dfzc1",
          "date": "2026-06-15",
          "memberName": "김예람",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "18:12",
          "autoAbsent": true,
          "source": "quick-attend-change",
          "teacher": "남선미",
          "updatedAt": "2026-06-22T06:59:05.920Z"
        },
        {
          "id": "lesson_1xwv71sgl59",
          "date": "2026-06-15",
          "memberName": "박주연",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "17:57",
          "autoAbsent": true,
          "source": "auto-absent-status-only",
          "teacher": "최수영",
          "updatedAt": "2026-06-22T06:59:15.130Z"
        },
        {
          "id": "lesson_2cf0bbm3d5v",
          "date": "2026-06-15",
          "memberName": "최소운",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "18:47",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "최수영",
          "updatedAt": "2026-06-22T06:58:54.839Z"
        },
        {
          "id": "lesson_164ufsed0uj",
          "date": "2026-06-16",
          "memberName": "이근진",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "15:12",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:58:51.194Z"
        },
        {
          "id": "lesson_19t41boqwvz",
          "date": "2026-06-16",
          "memberName": "김민성",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "18:56",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:59:00.684Z"
        },
        {
          "id": "lesson_1gs6ze95ntr",
          "date": "2026-06-16",
          "memberName": "정봉기",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "17:45",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "최수영",
          "updatedAt": "2026-06-22T06:59:02.703Z"
        },
        {
          "id": "lesson_9cp3a46ebk",
          "date": "2026-06-16",
          "memberName": "김민우",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "16:58",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:58:52.773Z"
        },
        {
          "id": "lesson_rh7h2gw5lv",
          "date": "2026-06-16",
          "memberName": "이민숙",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "19:51",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:59:04.581Z"
        },
        {
          "id": "lesson_1d2onooewza",
          "date": "2026-06-17",
          "memberName": "김수지",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "16:42",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "남선미",
          "updatedAt": "2026-06-22T06:59:07.823Z"
        },
        {
          "id": "lesson_1pskwei3k8n",
          "date": "2026-06-17",
          "memberName": "이수경",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "18:14",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "남선미",
          "updatedAt": "2026-06-22T06:58:49.670Z"
        },
        {
          "id": "lesson_28h1ip16syw",
          "date": "2026-06-17",
          "memberName": "조동건",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "17:56",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "최수영",
          "updatedAt": "2026-06-22T06:59:11.198Z"
        },
        {
          "id": "lesson_p4bdbo2jbl",
          "date": "2026-06-17",
          "memberName": "전진우",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "18:11",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:59:22.201Z"
        },
        {
          "id": "lesson_p8dlvmhcwf",
          "date": "2026-06-17",
          "memberName": "김가윤",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "13:41",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "남선미",
          "updatedAt": "2026-06-22T06:59:08.554Z"
        },
        {
          "id": "lesson_s05gy4movi",
          "date": "2026-06-17",
          "memberName": "이원금주",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "19:01",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "최수영",
          "updatedAt": "2026-06-22T06:59:21.574Z"
        },
        {
          "id": "lesson_ytf222179z",
          "date": "2026-06-17",
          "memberName": "김평우",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "18:47",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "남선미",
          "updatedAt": "2026-06-22T06:58:52.313Z"
        },
        {
          "id": "lesson_1jjwpmc97xq",
          "date": "2026-06-18",
          "memberName": "김민준",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "12:56",
          "autoAbsent": true,
          "source": "auto-absent-status-only",
          "teacher": "최하나",
          "updatedAt": "2026-06-22T06:59:06.416Z"
        },
        {
          "id": "lesson_1tz6591jyhj",
          "date": "2026-06-18",
          "memberName": "유민재",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "11:57",
          "autoAbsent": true,
          "source": "auto-absent-status-only",
          "teacher": "최하나",
          "updatedAt": "2026-06-22T06:59:20.266Z"
        },
        {
          "id": "lesson_2ao5wcyceyu",
          "date": "2026-06-18",
          "memberName": "김신우",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "18:03",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:59:12.892Z"
        },
        {
          "id": "lesson_2bvjde3mq3j",
          "date": "2026-06-18",
          "memberName": "유지현",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "19:56",
          "autoAbsent": true,
          "source": "quick-attend-change",
          "teacher": "남선미",
          "updatedAt": "2026-06-22T06:59:17.871Z"
        },
        {
          "id": "lesson_4aqclftf2y",
          "date": "2026-06-18",
          "memberName": "장유진",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "15:07",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "남선미",
          "updatedAt": "2026-06-22T06:59:16.310Z"
        },
        {
          "id": "lesson_bjwvj0o5nn",
          "date": "2026-06-18",
          "memberName": "정다정",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "17:00",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:59:03.362Z"
        },
        {
          "id": "lesson_su82umkjuj",
          "date": "2026-06-18",
          "memberName": "이연지",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "15:14",
          "autoAbsent": true,
          "source": "auto-absent-status-only",
          "teacher": "남선미",
          "updatedAt": "2026-06-22T06:58:51.702Z"
        },
        {
          "id": "lesson_y5o1f0fm7a",
          "date": "2026-06-18",
          "memberName": "정유화",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "19:07",
          "autoAbsent": true,
          "source": "quick-attend-change",
          "teacher": "남선미",
          "updatedAt": "2026-06-22T06:58:53.234Z"
        },
        {
          "id": "lesson_1v7hh8xv2dz",
          "date": "2026-06-19",
          "memberName": "김진후",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "16:03",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:59:15.812Z"
        },
        {
          "id": "lesson_1zdgryps4xr",
          "date": "2026-06-19",
          "memberName": "박지숙",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "15:00",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:59:01.452Z"
        },
        {
          "id": "lesson_227bguhodnp",
          "date": "2026-06-19",
          "memberName": "김효서",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "18:54",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:59:13.538Z"
        },
        {
          "id": "lesson_27pvj5ujnx9",
          "date": "2026-06-19",
          "memberName": "김민석",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "12:58",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "최하나",
          "updatedAt": "2026-06-22T06:59:04.075Z"
        },
        {
          "id": "lesson_2bwmzkqi12d",
          "date": "2026-06-19",
          "memberName": "이성민",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "18:29",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "최수영",
          "updatedAt": "2026-06-22T06:58:47.574Z"
        },
        {
          "id": "lesson_6biwqnse73",
          "date": "2026-06-19",
          "memberName": "박선유",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "13:42",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:58:56.716Z"
        },
        {
          "id": "lesson_akpq1ht6gs",
          "date": "2026-06-19",
          "memberName": "차지연",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "13:00",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:58:54.312Z"
        },
        {
          "id": "lesson_pmxefdz92i",
          "date": "2026-06-19",
          "memberName": "김태진",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "18:04",
          "autoAbsent": true,
          "source": "auto-absent-status-only",
          "teacher": "최수영",
          "updatedAt": "2026-06-22T06:58:58.920Z"
        },
        {
          "id": "lesson_1ht3h6ccnc4",
          "date": "2026-06-20",
          "memberName": "이민아",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "14:54",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:58:55.468Z"
        },
        {
          "id": "lesson_1z289pobu2x",
          "date": "2026-06-20",
          "memberName": "장서우",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "13:17",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "최수영",
          "updatedAt": "2026-06-22T06:59:07.069Z"
        },
        {
          "id": "lesson_2eisf4nca4r",
          "date": "2026-06-20",
          "memberName": "정지윤",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "17:46",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:58:56.088Z"
        },
        {
          "id": "lesson_hzn8xkwl4r",
          "date": "2026-06-20",
          "memberName": "이도경",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "13:17",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:59:09.917Z"
        },
        {
          "id": "lesson_toscb12f75",
          "date": "2026-06-20",
          "memberName": "배소연",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "18:44",
          "autoAbsent": true,
          "source": "auto-absent-status-only",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T06:59:10.529Z"
        },
        {
          "id": "lesson_1v1mhdqrbof",
          "date": "2026-06-22",
          "memberName": "최이준",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "18:42",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "남선미",
          "updatedAt": "2026-06-22T12:28:47.502Z"
        },
        {
          "id": "lesson_28s3zxibx3o",
          "date": "2026-06-22",
          "memberName": "정회진",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "19:00",
          "autoAbsent": true,
          "source": "auto-absent-status-only",
          "teacher": "최수영",
          "updatedAt": "2026-06-22T12:28:48.019Z"
        },
        {
          "id": "lesson_l67q0oh649",
          "date": "2026-06-22",
          "memberName": "최소운",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "18:42",
          "autoAbsent": true,
          "source": "kiosk-schedule-checkin",
          "teacher": "최수영",
          "updatedAt": "2026-06-22T12:33:09.080Z"
        },
        {
          "id": "lesson_lyq17tvy2t",
          "date": "2026-06-22",
          "memberName": "최수진",
          "attend": "결석",
          "status": "출석",
          "kioskCheckIn": true,
          "kioskCheckInTime": "18:50",
          "autoAbsent": true,
          "source": "auto-absent-status-only",
          "teacher": "김창세",
          "updatedAt": "2026-06-22T12:28:49.616Z"
        }
      ],
      "total": 42
    },
    "autoAbsentResidueCount": 169,
    "burstWindows": [
      {
        "minute": "2026-06-22T06:59",
        "count": 25
      },
      {
        "minute": "2026-06-22T06:58",
        "count": 13
      }
    ],
    "note": "★harmfulAbsent=attend=결석 인데 status=출석 또는 키오스크 실체크인(RED). 앱 전체가 attend||status(attend 우선)로 읽어 출석왕/회차/급여에서 결석집계→누락. attendStatusDivergeCount=attend≠status 모순 총수. autoAbsentResidueCount=옛 신호(autoAbsent 플래그 잔여)·이젠 경보아님(status로 교정됐을 수 있음). burstWindows=updatedAt 같은 분에 5건↑(대량플립 의심). ※근본수정=두 필드 SSoT 통일(앱 코드, 원장 승인 필요)."
  },
  "passes": {
    "total": 1802,
    "statusDistribution": {
      "사용중": 77,
      "소진만료": 1566,
      "만료": 125,
      "기간만료": 22,
      "활성": 1,
      "환불": 3,
      "(빈값)": 6,
      "활성화대기": 2
    },
    "negativeRemain": {
      "truncated": false,
      "shown": [],
      "total": 0
    },
    "emptyStatusActive": {
      "truncated": false,
      "shown": [
        {
          "id": "HzgIzaxdycq0RejCDHeh",
          "memberName": "최수진",
          "productName": "일반수강권",
          "remainCount": 3,
          "endDate": "2026-07-06",
          "dagym": false
        },
        {
          "id": "dagymPass_0cf088b2-5387-4e83-954b-33a0f9b0a90e",
          "memberName": "이성민",
          "productName": "일반수강권",
          "remainCount": 3,
          "endDate": "2026-07-03",
          "dagym": true
        }
      ],
      "total": 2
    },
    "emptyStatusExpiredCount": 4,
    "activeGhosts": {
      "truncated": false,
      "shown": [
        {
          "id": "1dGgqeTbE0swIszhcg46",
          "memberName": "김수지",
          "status": "사용중",
          "remainCount": 2,
          "productName": "2가지 장학!"
        },
        {
          "id": "5zcoyU1IGjEBWW3I3hvn",
          "memberName": "김예람",
          "status": "사용중",
          "remainCount": 1,
          "productName": "3개월 선결제 장학"
        },
        {
          "id": "8J4tVfpVOsPJE4fh1zbl",
          "memberName": "이원금주",
          "status": "사용중",
          "remainCount": 5,
          "productName": "2023) 선결제"
        },
        {
          "id": "AnvRGkAmZI6SdS0UPjOb",
          "memberName": "박지숙",
          "status": "사용중",
          "remainCount": 1,
          "productName": "일반수강권"
        },
        {
          "id": "N1JX9lBmCNa8Z7GzIxJD",
          "memberName": "정봉기",
          "status": "사용중",
          "remainCount": 6,
          "productName": "3개월 선결제 장학"
        },
        {
          "id": "Pbw8vo3siwct0JyyT77o",
          "memberName": "김하준",
          "status": "사용중",
          "remainCount": 6,
          "productName": "3개월 선결제 장학"
        },
        {
          "id": "QSCjifMwnoBEc6Y6hf1z",
          "memberName": "장서우",
          "status": "사용중",
          "remainCount": 5,
          "productName": "3개월 선결제 장학"
        },
        {
          "id": "QdbG9behZsl4QfHuytA8",
          "memberName": "김주원",
          "status": "사용중",
          "remainCount": 2,
          "productName": "제휴)그룹레슨"
        },
        {
          "id": "WgTaMLXoAjC3oM1JppAt",
          "memberName": "김신우",
          "status": "사용중",
          "remainCount": 6,
          "productName": "3개월 선결제 장학"
        },
        {
          "id": "Xseun6byGjKq8X8k4av5",
          "memberName": "박진한",
          "status": "사용중",
          "remainCount": 4,
          "productName": "3개월 선결제 장학"
        },
        {
          "id": "dsVfQqiq5Ap6FkRxAffz",
          "memberName": "류정우",
          "status": "사용중",
          "remainCount": 1,
          "productName": "일반수강권"
        },
        {
          "id": "f8vXdcfjnKwhIcWmWv4U",
          "memberName": "김민성",
          "status": "사용중",
          "remainCount": 3,
          "productName": "3개월 선결제 장학"
        },
        {
          "id": "fhqkrLKx5BkbvvSBtVJE",
          "memberName": "황채연",
          "status": "사용중",
          "remainCount": 1,
          "productName": "일반수강권"
        },
        {
          "id": "gcgwh8THuhsktlbbx9H1",
          "memberName": "장유진",
          "status": "사용중",
          "remainCount": 7,
          "productName": "3개월 선결제 장학"
        },
        {
          "id": "hYwYr4RYLhW7UwGpMLTu",
          "memberName": "김성권",
          "status": "사용중",
          "remainCount": 9,
          "productName": "2023) 선결제"
        },
        {
          "id": "neqYR7KmSlYWGgyLmJa9",
          "memberName": "이화신",
          "status": "사용중",
          "remainCount": 1,
          "productName": "일반수강권"
        },
        {
          "id": "pLwIDDiiQd54tTxWdJaS",
          "memberName": "박수경",
          "status": "사용중",
          "remainCount": 2,
          "productName": "제휴)그룹레슨"
        },
        {
          "id": "rRp34e7BRm6GwfYCEfvR",
          "memberName": "민슬기",
          "status": "사용중",
          "remainCount": 1,
          "productName": "2가지 장학!"
        }
      ],
      "total": 18
    },
    "note": "negativeRemain=잔여 음수(RED). emptyStatusActive=현재 유효기간인데 status 빈값(사용중이어야 함→진짜 점검대상). emptyStatusExpiredCount=이미 만료된 옛 수강권의 빈 status(다짐 임포트 잔재·무해·표시용). activeGhosts=활성인데 출처불명. ※소진만료 대량·만료된 빈상태는 정상. ※보유개수만으로 중복발급 단정 금지."
  },
  "payments": {
    "total": 1605,
    "monthRevenue": 8530000,
    "duplicateBursts": {
      "truncated": false,
      "shown": [],
      "total": 0
    },
    "duplicateSaleNumbers": {
      "truncated": false,
      "shown": [],
      "total": 0
    },
    "naiveBurstGroups": 165,
    "note": "★duplicateBursts=같은회원·금액·같은-초 ≥3 & 과반 payDate없음(김민주형 일괄복제, 매출 부풀림 RED). estInflation=부풀린 추정액. duplicateSaleNumbers=같은 다짐판매번호 2회+(중복임포트, 소진만료면 활성영향0). naiveBurstGroups=단순 같은-초 묶음(대부분 5/28 다짐 월결제 임포트=정상, 참고만). ※개수만으로 중복 단정 금지."
  },
  "scholarship": {
    "anchorCount": 1322,
    "hoegiRegression": {
      "truncated": false,
      "shown": [
        {
          "memberName": "조동건",
          "earlier": "2026-04-22:26회기",
          "later": "2026-04-28:4회기",
          "drop": 22
        },
        {
          "memberName": "김이룸",
          "earlier": "2026-05-05:23회기",
          "later": "2026-05-15:8회기",
          "drop": 15
        },
        {
          "memberName": "김민석",
          "earlier": "2024-11-05:9회기",
          "later": "2026-05-14:2회기",
          "drop": 7
        },
        {
          "memberName": "하연수",
          "earlier": "2025-10-03:4회기",
          "later": "2026-03-27:2회기",
          "drop": 2
        }
      ],
      "total": 4
    },
    "note": "★hoegiRegression=나중 날짜인데 회기가 더 낮음(시간 역행)=수동앵커 충돌/덮어쓰기(최소운형). buildPeriodMap이 가장 이른 앵커로 전구간 재투영→나머지 무시→member-detail 회차 어긋남. 회원별 검토 필요(즉시 RED 아님). drop=회기 하락폭."
  },
  "rooms": {
    "windowFrom": "2026-06-14",
    "upcomingCount": 42,
    "needsReview": {
      "truncated": false,
      "shown": [
        {
          "id": "2gcfxq12YsMkqsOmwhMG",
          "date": "2026-06-22",
          "room": "드럼연습실",
          "time": "18:30~19:00",
          "memberName": "(네이버) 이원*주",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        },
        {
          "id": "Bf8UcywpzJoscI3dCw9B",
          "date": "2026-06-22",
          "room": "드럼연습실",
          "time": "17:00~17:30",
          "memberName": "(네이버) 정*기",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        },
        {
          "id": "DKWXrlk0CqQGx4tO87g4",
          "date": "2026-06-22",
          "room": "드럼연습실",
          "time": "11:00~11:30",
          "memberName": "(네이버) 정*기",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        },
        {
          "id": "H6Ojt2pnb4GhvdHbh4nO",
          "date": "2026-06-22",
          "room": "상담예약",
          "time": "18:00~19:00",
          "memberName": "(네이버) 전*량",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        },
        {
          "id": "JwTNEuYnKafjP65zzF7Y",
          "date": "2026-06-22",
          "room": "기타/베이스 연습실",
          "time": "19:00~20:00",
          "memberName": "(네이버) 김*원",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        },
        {
          "id": "P5utFPGIhHbBoTuVqfcO",
          "date": "2026-06-22",
          "room": "드럼연습실",
          "time": "19:30~20:00",
          "memberName": "(네이버) 정*진",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        },
        {
          "id": "QTDhL3tZUItq7ABCsTG9",
          "date": "2026-06-22",
          "room": "드럼연습실",
          "time": "16:30~17:00",
          "memberName": "(네이버) 정*기",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        },
        {
          "id": "RSmtxfIYYzPX6I0xQeBr",
          "date": "2026-06-22",
          "room": "기타/베이스 연습실",
          "time": "18:00~19:00",
          "memberName": "(네이버) 한*원",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        },
        {
          "id": "U36gt8pBZQBfbwg5LBqb",
          "date": "2026-06-22",
          "room": "드럼연습실",
          "time": "16:00~16:30",
          "memberName": "(네이버) 정*기",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        },
        {
          "id": "Ui2cUg7FMnQiGG4dvxBe",
          "date": "2026-06-22",
          "room": "드럼연습실",
          "time": "21:30~22:00",
          "memberName": "(네이버) 조*건",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        },
        {
          "id": "VJinr4kTKd7B8Ket7tYb",
          "date": "2026-06-22",
          "room": "드럼연습실",
          "time": "21:00~21:30",
          "memberName": "(네이버) 조*건",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        },
        {
          "id": "W5B73eVCPDCm1dNMnOmr",
          "date": "2026-06-22",
          "room": "드럼연습실",
          "time": "10:30~11:00",
          "memberName": "(네이버) 정*기",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        },
        {
          "id": "XFMz2oUuFaXOIOLTjMjt",
          "date": "2026-06-22",
          "room": "드럼연습실",
          "time": "11:30~12:00",
          "memberName": "(네이버) 정*기",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        },
        {
          "id": "XO5WLTzrCEwgtKXGXhGq",
          "date": "2026-06-22",
          "room": "기타/베이스 연습실",
          "time": "20:00~21:00",
          "memberName": "(네이버) 이*은",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        },
        {
          "id": "lXUBlKIX97V3Gepnop2u",
          "date": "2026-06-22",
          "room": "드럼연습실",
          "time": "19:00~19:30",
          "memberName": "(네이버) 정*진",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        },
        {
          "id": "qYT4w1cz011F2lWbCMCa",
          "date": "2026-06-22",
          "room": "드럼연습실",
          "time": "20:30~21:00",
          "memberName": "(네이버) 조*건",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        },
        {
          "id": "wOnmZWDypMSmoryLejNS",
          "date": "2026-06-22",
          "room": "기타/베이스 연습실",
          "time": "21:00~22:00",
          "memberName": "(네이버) 이*은",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        },
        {
          "id": "zveltROALzctEeA1JO92",
          "date": "2026-06-22",
          "room": "드럼연습실",
          "time": "20:00~20:30",
          "memberName": "(네이버) 조*건",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        },
        {
          "id": "DxQsIrirEsMMbLhNszj1",
          "date": "2026-06-23",
          "room": "드럼연습실",
          "time": "01:30~02:00",
          "memberName": "(네이버) 박*연",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        },
        {
          "id": "FatkQmUqxobQnFFzAySq",
          "date": "2026-06-23",
          "room": "드럼연습실",
          "time": "20:00~20:30",
          "memberName": "(네이버) 정*진",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        },
        {
          "id": "J8MRJByxSI8CMKWiEoCa",
          "date": "2026-06-23",
          "room": "드럼연습실",
          "time": "01:00~01:30",
          "memberName": "(네이버) 박*연",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        },
        {
          "id": "hZj8kT4NQYh4vSRPK43L",
          "date": "2026-06-23",
          "room": "드럼연습실",
          "time": "00:30~01:00",
          "memberName": "(네이버) 박*연",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        },
        {
          "id": "pSpiTX7wFYhUtF15yCd1",
          "date": "2026-06-23",
          "room": "드럼연습실",
          "time": "20:30~21:00",
          "memberName": "(네이버) 이원*주",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        },
        {
          "id": "qWCfsk8uY32ua5fxVOf1",
          "date": "2026-06-23",
          "room": "드럼연습실",
          "time": "21:00~21:30",
          "memberName": "(네이버) 이원*주",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        },
        {
          "id": "BVPSNoqqlLku0sgYzVmZ",
          "date": "2026-06-24",
          "room": "드럼연습실",
          "time": "19:00~19:30",
          "memberName": "(네이버) 정*진",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        },
        {
          "id": "DyFWkCVmrMve0fdEX9wp",
          "date": "2026-06-24",
          "room": "드럼연습실",
          "time": "19:30~20:00",
          "memberName": "(네이버) 정*진",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        },
        {
          "id": "RO6O4Trdgs9DoSYQKawu",
          "date": "2026-06-24",
          "room": "드럼연습실",
          "time": "14:00~14:30",
          "memberName": "(네이버) 박*연",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        },
        {
          "id": "lGRUYkViPLQbN1ZVuI6j",
          "date": "2026-06-24",
          "room": "드럼연습실",
          "time": "14:30~15:00",
          "memberName": "(네이버) 박*연",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        },
        {
          "id": "wRYSQhN3aGbjq9DENxyW",
          "date": "2026-06-24",
          "room": "드럼연습실",
          "time": "20:00~20:30",
          "memberName": "(네이버) 정*진",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        },
        {
          "id": "wfRzUm5pOrlgWbOtviZr",
          "date": "2026-06-24",
          "room": "드럼연습실",
          "time": "20:30~21:00",
          "memberName": "(네이버) 정*진",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        },
        {
          "id": "QYjBF8xzRF9TaiuJSjyV",
          "date": "2026-06-25",
          "room": "드럼연습실",
          "time": "19:30~20:00",
          "memberName": "(네이버) 정*진",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        },
        {
          "id": "esdLdroRMMxkQTwdde1i",
          "date": "2026-06-25",
          "room": "드럼연습실",
          "time": "20:30~21:00",
          "memberName": "(네이버) 정*진",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        },
        {
          "id": "gBJWY2kGEf57QqJe6Bhf",
          "date": "2026-06-25",
          "room": "드럼연습실",
          "time": "20:00~20:30",
          "memberName": "(네이버) 정*진",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        },
        {
          "id": "lBeLaMZdD7FYXjwZROma",
          "date": "2026-06-25",
          "room": "드럼연습실",
          "time": "19:00~19:30",
          "memberName": "(네이버) 정*진",
          "source": "naver",
          "matchConfidence": 0,
          "memberLinked": false
        }
      ],
      "total": 34
    },
    "stuckPastUpcoming": {
      "truncated": true,
      "shown": [
        {
          "id": "0UbtCYY0BLke7vk9EOHN",
          "date": "2026-06-15",
          "room": "드럼연습실",
          "memberName": "(네이버) 정*기"
        },
        {
          "id": "13U9Uap1eweUsMtpXHMA",
          "date": "2026-06-15",
          "room": "드럼연습실",
          "memberName": "(네이버) 박*연"
        },
        {
          "id": "5hMbWAWvZgv3LfMcTbm0",
          "date": "2026-06-15",
          "room": "상담예약",
          "memberName": "(네이버) 이*영"
        },
        {
          "id": "9VYsHwuEpigjfMh762HX",
          "date": "2026-06-15",
          "room": "드럼연습실",
          "memberName": "(네이버) 이*민"
        },
        {
          "id": "AuHo7Dh1AVDCXMVU9OeS",
          "date": "2026-06-15",
          "room": "드럼연습실",
          "memberName": "(네이버) 정*진"
        },
        {
          "id": "KR39YYdZSUpr11DAMKRC",
          "date": "2026-06-15",
          "room": "드럼연습실",
          "memberName": "(네이버) 이*민"
        },
        {
          "id": "Lkozwl9C2rcGNrK27kuu",
          "date": "2026-06-15",
          "room": "드럼연습실",
          "memberName": "(네이버) 이*민"
        },
        {
          "id": "TC5thu6wXpAXnqWqyfyP",
          "date": "2026-06-15",
          "room": "드럼연습실",
          "memberName": "(네이버) 이*민"
        },
        {
          "id": "Th91AfFThPNpq8JCOWfF",
          "date": "2026-06-15",
          "room": "기타/베이스 연습실",
          "memberName": "(네이버) 박*유"
        },
        {
          "id": "cJ2Wja4fO9R4rOzCA6TJ",
          "date": "2026-06-15",
          "room": "드럼연습실",
          "memberName": "(네이버) 정*기"
        },
        {
          "id": "e7QHCDMrPwjSAdWU9Gaw",
          "date": "2026-06-15",
          "room": "드럼연습실",
          "memberName": "(네이버) 정*진"
        },
        {
          "id": "io95Pxr89sWppPAGsnCl",
          "date": "2026-06-15",
          "room": "드럼연습실",
          "memberName": "(네이버) 이*민"
        },
        {
          "id": "ooToYd7WYXhKbLtZI0M5",
          "date": "2026-06-15",
          "room": "드럼연습실",
          "memberName": "(네이버) 정*진"
        },
        {
          "id": "ox84Rnr4cFLREuLDCtQZ",
          "date": "2026-06-15",
          "room": "드럼연습실",
          "memberName": "(네이버) 이*민"
        },
        {
          "id": "qOOSvGvVoLeU1W63IKFf",
          "date": "2026-06-15",
          "room": "드럼연습실",
          "memberName": "(네이버) 박*연"
        },
        {
          "id": "wtGZO3DWsCovsnMGaynR",
          "date": "2026-06-15",
          "room": "드럼연습실",
          "memberName": "(네이버) 정*기"
        },
        {
          "id": "FWM35KqBNpWm4wANMVro",
          "date": "2026-06-16",
          "room": "드럼연습실",
          "memberName": "(네이버) 정*기"
        },
        {
          "id": "ImEM9RecjWiogaEbFapX",
          "date": "2026-06-16",
          "room": "드럼연습실",
          "memberName": "(네이버) 정*기"
        },
        {
          "id": "MqFGiq2Djx9mIDhRNuwn",
          "date": "2026-06-16",
          "room": "드럼연습실",
          "memberName": "(네이버) 박*연"
        },
        {
          "id": "fecwNDOVdaafnAkCfQWm",
          "date": "2026-06-16",
          "room": "드럼연습실",
          "memberName": "(네이버) 박*연"
        },
        {
          "id": "iieCHvpwA8Dq02Uxn2Vi",
          "date": "2026-06-16",
          "room": "드럼연습실",
          "memberName": "(네이버) 이원*주"
        },
        {
          "id": "itCDoUrMY8U7f4hkg3e0",
          "date": "2026-06-16",
          "room": "기타/베이스 연습실",
          "memberName": "(네이버) 이*숙"
        },
        {
          "id": "ntb2qrpX9HEwKlCnySVP",
          "date": "2026-06-16",
          "room": "드럼연습실",
          "memberName": "(네이버) 이원*주"
        },
        {
          "id": "1BA0e9nWckYBtTDG3pTJ",
          "date": "2026-06-17",
          "room": "기타/베이스 연습실",
          "memberName": "(네이버) 한*원"
        },
        {
          "id": "DCm3qzsDIpL1pzTjSQ6y",
          "date": "2026-06-17",
          "room": "드럼연습실",
          "memberName": "(네이버) 이*민"
        },
        {
          "id": "DzfwSVX24C7aJD8T9bR8",
          "date": "2026-06-17",
          "room": "드럼연습실",
          "memberName": "(네이버) 이*민"
        },
        {
          "id": "FPyh6IeHwQ7NgnQDjQnQ",
          "date": "2026-06-17",
          "room": "드럼연습실",
          "memberName": "(네이버) 이*민"
        },
        {
          "id": "JMAWqNtY1ORPkoKXymwF",
          "date": "2026-06-17",
          "room": "드럼연습실",
          "memberName": "(네이버) 정*진"
        },
        {
          "id": "RHXwygulapetB4nzWnmS",
          "date": "2026-06-17",
          "room": "기타/베이스 연습실",
          "memberName": "(네이버) 한*원"
        },
        {
          "id": "XFiwjdMXVCjspUgkC8vR",
          "date": "2026-06-17",
          "room": "상담예약",
          "memberName": "(네이버) 차*연"
        },
        {
          "id": "hbZfDz6LKOT4Co3Vj9pE",
          "date": "2026-06-17",
          "room": "드럼연습실",
          "memberName": "(네이버) 이*민"
        },
        {
          "id": "rAkSzw1HguQosqM8ICqJ",
          "date": "2026-06-17",
          "room": "드럼연습실",
          "memberName": "(네이버) 이*민"
        },
        {
          "id": "u7OrHc0800torVzeGd12",
          "date": "2026-06-17",
          "room": "드럼연습실",
          "memberName": "(네이버) 정*진"
        },
        {
          "id": "xnfrYzSQqVAV2XyuhiAr",
          "date": "2026-06-17",
          "room": "드럼연습실",
          "memberName": "(네이버) 이*민"
        },
        {
          "id": "zXbXfdtw33SODqziR5FG",
          "date": "2026-06-17",
          "room": "드럼연습실",
          "memberName": "(네이버) 정*진"
        },
        {
          "id": "14qO8gNTKjrTmsHpnw6f",
          "date": "2026-06-18",
          "room": "기타/베이스 연습실",
          "memberName": "(네이버) 정*정"
        },
        {
          "id": "Hlgn81jsXTWeNLYv9hbp",
          "date": "2026-06-18",
          "room": "드럼연습실",
          "memberName": "(네이버) 조*건"
        },
        {
          "id": "Nnwge8a4wNhBrCVGdveo",
          "date": "2026-06-18",
          "room": "드럼연습실",
          "memberName": "(네이버) 정*진"
        },
        {
          "id": "XmBUpSigi5KZprlHiVL0",
          "date": "2026-06-18",
          "room": "드럼연습실",
          "memberName": "(네이버) 조*건"
        },
        {
          "id": "cjfn1ld5fVlFmPjCRSBr",
          "date": "2026-06-18",
          "room": "기타/베이스 연습실",
          "memberName": "(네이버) 이*은"
        },
        {
          "id": "eWHqC8PVRJqwNakrcj8n",
          "date": "2026-06-18",
          "room": "드럼연습실",
          "memberName": "(네이버) 조*건"
        },
        {
          "id": "jDfCaaGUS7nJtSS41IJw",
          "date": "2026-06-18",
          "room": "드럼연습실",
          "memberName": "(네이버) 조*건"
        },
        {
          "id": "nP8kwouy0nsLIeqDOylW",
          "date": "2026-06-18",
          "room": "드럼연습실",
          "memberName": "(네이버) 정*진"
        },
        {
          "id": "vIkoYsZ8K4pYHN8GodD7",
          "date": "2026-06-18",
          "room": "기타/베이스 연습실",
          "memberName": "(네이버) 이*은"
        },
        {
          "id": "2qEP8MCktZb2Su6pSRYb",
          "date": "2026-06-19",
          "room": "드럼연습실",
          "memberName": "(네이버) 정*기"
        },
        {
          "id": "6fhSizxshkV01Vf5KQ4h",
          "date": "2026-06-19",
          "room": "드럼연습실",
          "memberName": "(네이버) 조*건"
        },
        {
          "id": "8Etv2BsAmFRCHskilwmG",
          "date": "2026-06-19",
          "room": "드럼연습실",
          "memberName": "(네이버) 정*기"
        },
        {
          "id": "8pTtUHcGOQRYOsz9PjBs",
          "date": "2026-06-19",
          "room": "드럼연습실",
          "memberName": "(네이버) 이원*주"
        },
        {
          "id": "AOwZEZAiCMpJsS2V1cVD",
          "date": "2026-06-19",
          "room": "드럼연습실",
          "memberName": "(네이버) 정*기"
        },
        {
          "id": "Cx0sPYFa6T5f5RSfQtOz",
          "date": "2026-06-19",
          "room": "드럼연습실",
          "memberName": "(네이버) 조*건"
        },
        {
          "id": "IQfcUhfqCjdZhiZ0PMq7",
          "date": "2026-06-19",
          "room": "드럼연습실",
          "memberName": "(네이버) 이원*주"
        },
        {
          "id": "OoNiCIag886VbimXPUm5",
          "date": "2026-06-19",
          "room": "드럼연습실",
          "memberName": "(네이버) 이원*주"
        },
        {
          "id": "e2h9P2kKmDCuGrqY0yYt",
          "date": "2026-06-19",
          "room": "드럼연습실",
          "memberName": "(네이버) 정*기"
        },
        {
          "id": "tL3DVm7H33GVv3C8Ab08",
          "date": "2026-06-19",
          "room": "드럼연습실",
          "memberName": "(네이버) 이원*주"
        },
        {
          "id": "zYyvWoJtVssSduXgbpNB",
          "date": "2026-06-19",
          "room": "드럼연습실",
          "memberName": "(네이버) 정*기"
        },
        {
          "id": "Cz1uffALWUWlHf6p8WCS",
          "date": "2026-06-20",
          "room": "기타/베이스 연습실",
          "memberName": "(네이버) 한*원"
        },
        {
          "id": "FiUw2eey2vODE6qs9qug",
          "date": "2026-06-20",
          "room": "드럼연습실",
          "memberName": "(네이버) 정*진"
        },
        {
          "id": "MqU0SfbqsBy0qebcRuCF",
          "date": "2026-06-20",
          "room": "드럼연습실",
          "memberName": "(네이버) 정*진"
        },
        {
          "id": "MunsQTz3KGjtP4KqDYLR",
          "date": "2026-06-20",
          "room": "드럼연습실",
          "memberName": "(네이버) 정*기"
        },
        {
          "id": "ObIZ9zUa1uLGUQtiS4Qo",
          "date": "2026-06-20",
          "room": "드럼연습실",
          "memberName": "(네이버) 정*기"
        }
      ],
      "total": 78
    },
    "note": "needsReview=다가오는 예약인데 회원 미연결/검수필요(matchConfidence 0·네이버 자동연동 등)→입실·마감 푸시가 회원에게 안 감. stuckPastUpcoming=지난 날짜인데 upcoming으로 방치."
  },
  "integrity": {
    "dataRepairLogTotal": 1,
    "recentRepairs": {
      "truncated": false,
      "shown": [],
      "total": 0
    },
    "lastRepairs": [
      {
        "id": "d3Kp3Tc6rR1TfzA6fPru",
        "type": "kiosk_schedule_link_repair",
        "memberName": "김가윤",
        "createdAt": "2026-06-08T15:05:24.096Z"
      }
    ],
    "note": "리페어/정합성보정 실행은 과거 대량 출결 덮어쓰기의 방아쇠였음. recentRepairs(최근3일)에 항목 있으면 출결/수강권 변동 동반점검 필수. dataRepairLogTotal이 평소(베이스라인)보다 급증해도 신호."
  },
  "delta": {
    "comparedTo": "2026-06-21",
    "metrics": {
      "harmfulAbsent": {
        "yesterday": 0,
        "today": 47,
        "change": 47,
        "surged": true
      },
      "negativeRemain": {
        "yesterday": 0,
        "today": 0,
        "change": 0,
        "surged": false
      },
      "emptyStatusActive": {
        "yesterday": 2,
        "today": 2,
        "change": 0,
        "surged": false
      },
      "paymentDupBursts": {
        "yesterday": 0,
        "today": 0,
        "change": 0,
        "surged": false
      },
      "hoegiRegression": {
        "yesterday": 0,
        "today": 4,
        "change": 4,
        "surged": true
      },
      "recentRepairs": {
        "yesterday": 0,
        "today": 0,
        "change": 0,
        "surged": false
      }
    },
    "note": "어제 대비 변화. surged=어제0→오늘N(신규 급증, 주목). change>0=증가."
  }
}