[
  {
    "note_id": "n_001",
    "patient_id": "pt_A",
    "exercise_id": "ex_knee_1",
    "note_text": "무릎 굽히기 30번 다 했고 어제보다 덜 아팠어요.",
    "pain_score": 3,
    "adherence_pct": 100,
    "side_effect_raw": null,
    "ts": "2026-05-01T20:00:00"
  },
  {
    "note_id": "n_002",
    "patient_id": "pt_A",
    "exercise_id": "ex_knee_1",
    "note_text": "오늘은 무릎이 어제보다 더 붓고 계단 내려올 때 저릿했어요. 운동은 반만 했어요.",
    "pain_score": 8,
    "adherence_pct": 50,
    "side_effect_raw": "저림, 부종",
    "ts": "2026-05-05T20:00:00"
  },
  {
    "note_id": "n_003",
    "patient_id": "pt_A",
    "exercise_id": "ex_knee_1",
    "note_text": "열이 나는 것 같고 무릎 주변이 빨갛게 부었어요.",
    "pain_score": 7,
    "adherence_pct": 0,
    "side_effect_raw": "발열, 발적, 부종",
    "ts": "2026-05-06T20:00:00"
  },
  {
    "note_id": "n_004",
    "patient_id": "pt_B",
    "exercise_id": "ex_shoulder_2",
    "note_text": "어깨 스트레칭 다 했어요. 특별히 아픈 데는 없어요.",
    "pain_score": 2,
    "adherence_pct": 100,
    "side_effect_raw": null,
    "ts": "2026-05-01T21:00:00"
  },
  {
    "note_id": "n_005",
    "patient_id": "pt_B",
    "exercise_id": "ex_shoulder_2",
    "note_text": "그냥 그랬어요.",
    "pain_score": null,
    "adherence_pct": null,
    "side_effect_raw": null,
    "ts": "2026-05-02T21:00:00"
  },
  {
    "note_id": "n_006",
    "patient_id": "pt_B",
    "exercise_id": "ex_shoulder_2",
    "note_text": "오늘도 스트레칭 다 하고 컨디션 괜찮았어요.",
    "pain_score": 2,
    "adherence_pct": 100,
    "side_effect_raw": null,
    "ts": "2026-05-03T21:00:00"
  },
  {
    "note_id": "n_007",
    "patient_id": "pt_C",
    "exercise_id": null,
    "note_text": "무슨 운동을 하라고 했는지 기억이 안 나서 그냥 걸었어요.",
    "pain_score": 4,
    "adherence_pct": null,
    "side_effect_raw": null,
    "ts": "2026-05-04T19:00:00"
  },
  {
    "note_id": "n_008",
    "patient_id": "pt_C",
    "exercise_id": "ex_back_9",
    "note_text": "허리 운동 했는데 하다가 다리가 찌릿하고 감각이 좀 이상했어요.",
    "pain_score": 6,
    "adherence_pct": 80,
    "side_effect_raw": "다리 저림",
    "ts": "2026-05-05T19:00:00"
  },
  {
    "note_id": "n_009",
    "patient_id": "pt_D",
    "exercise_id": "ex_knee_1",
    "note_text": "통증이 10점 만점에 10점이에요. 도저히 못 움직이겠어요.",
    "pain_score": 10,
    "adherence_pct": 0,
    "side_effect_raw": null,
    "ts": "2026-05-04T22:00:00"
  },
  {
    "note_id": "n_010",
    "patient_id": "pt_A",
    "exercise_id": "ex_knee_1",
    "note_text": "무릎 굽히기 다 했고 통증은 비슷해요.",
    "pain_score": 4,
    "adherence_pct": 100,
    "side_effect_raw": null,
    "ts": "2026-05-02T20:00:00"
  },
  {
    "note_id": "n_011",
    "patient_id": "pt_A",
    "exercise_id": "ex_knee_1",
    "note_text": "오늘도 다 했어요. 통증 4점 정도.",
    "pain_score": 4,
    "adherence_pct": 100,
    "side_effect_raw": null,
    "ts": "2026-05-03T20:00:00"
  }
]