280 lines
14 KiB
Plaintext
280 lines
14 KiB
Plaintext
$ uv run tools/flow.py test cases/lab03-after.json -v
|
||
✔ before: POST http://localhost:8800/ops-reset · HTTP 200 · 0.0s · {"seeded_at": "2026-11-04T08:30:00", "note": "79일차 운영 아침 상태 (연습 데이터, seed 79)", "counts": {"alerts": 6, "dlq": 3, "quali
|
||
→ request POST http://localhost:8800/ops-reset
|
||
{}
|
||
← response HTTP 200
|
||
{
|
||
"seeded_at": "2026-11-04T08:30:00",
|
||
"note": "79일차 운영 아침 상태 (연습 데이터, seed 79)",
|
||
"counts": {
|
||
"alerts": 6,
|
||
"dlq": 3,
|
||
"quality_log": 4,
|
||
"quarantine": 1,
|
||
"usage": 192
|
||
}
|
||
}
|
||
POST http://localhost:5678/webhook/my-ops-brief · 5 case(s) × 1
|
||
✔ 아침 그대로 · 1.4s
|
||
→ request POST /webhook/my-ops-brief
|
||
{}
|
||
← response HTTP 200
|
||
{
|
||
"overall": "red",
|
||
"red": [
|
||
"runs",
|
||
"dlq",
|
||
"release"
|
||
],
|
||
"yellow": [
|
||
"alerts",
|
||
"quality",
|
||
"cost"
|
||
],
|
||
"actions": [
|
||
{
|
||
"area": "runs",
|
||
"status": "red",
|
||
"action": "오류 묶음 1위 확인 · 고치기 (77일차)"
|
||
},
|
||
{
|
||
"area": "dlq",
|
||
"status": "red",
|
||
"action": "parked 건 원인 확인 뒤 런북대로 재처리 (76일차)"
|
||
},
|
||
{
|
||
"area": "release",
|
||
"status": "red",
|
||
"action": "카나리 끄기 · 되돌리기 검토 (74일차)"
|
||
}
|
||
],
|
||
"markdown": "# 운영 브리핑 (2026-10-26 ~ 2026-10-30 실행 기록 + 지금 상태)\n\n전체: 🔴 red\n\n| 영역 | 상태 | 숫자 |\n| --- | --- | --- |\n| 실행 | 🔴 | 오류율 5.88% · p95 2598ms · 답 못 함 4.76% |\n| 알림 | 🟡 | 6건 (높음 3) |\n| DLQ | 🔴 | 3건 (parked 2) |\n| 데이터 품질 | 🟡 | 평균 0.6583 · 마지막 1 · 격리 1 |\n| 비용 | 🟡 | $0.073604 / $0.08 (92.01%) |\n| 릴리스 | 🔴 | 1.1.0 · 카나리 1.2.0 20% (다시 묻기 62.5%) |\n\n## 먼저 볼 것\n\n1. 🔴 실행: 오류 묶음 1위 확인 · 고치기 (77일차)\n2. 🔴 DLQ: parked 건 원인 확인 뒤 런북대로 재처리 (76일차)\n3. 🔴 릴리스: 카나리 끄기 · 되돌리기 검토 (74일차)\n\n## 요약\n\n전체 시스템 상태는 빨간색으로, 오류율은 5.88%이며, DLQ 크기는 3으로 심각한 문제를 나타냅니다. 가장 긴급한 문제는 \"Search FAQ\" 노드에서 발생하는 1000ms 타임아웃 오류로, 총 16건이 보고되었습니다. 우선 이 타임아웃 문제를 해결하는 데 집중하여 시스템 안정성을 확보해야 합니다.",
|
||
"summary": "전체 시스템 상태는 빨간색으로, 오류율은 5.88%이며, DLQ 크기는 3으로 심각한 문제를 나타냅니다. 가장 긴급한 문제는 \"Search FAQ\" 노드에서 발생하는 1000ms 타임아웃 오류로, 총 16건이 보고되었습니다. 우선 이 타임아웃 문제를 해결하는 데 집중하여 시스템 안정성을 확보해야 합니다.",
|
||
"numbers_ok": true,
|
||
"unknown_numbers": []
|
||
}
|
||
✔ before: POST http://localhost:8800/dlq/update · HTTP 200 · 0.0s · {"removed": true, "size": 2}
|
||
→ request POST http://localhost:8800/dlq/update
|
||
{
|
||
"dlq_id": 1,
|
||
"remove": true
|
||
}
|
||
← response HTTP 200
|
||
{
|
||
"removed": true,
|
||
"size": 2
|
||
}
|
||
✔ before: POST http://localhost:8800/dlq/update · HTTP 200 · 0.0s · {"removed": true, "size": 1}
|
||
→ request POST http://localhost:8800/dlq/update
|
||
{
|
||
"dlq_id": 2,
|
||
"remove": true
|
||
}
|
||
← response HTTP 200
|
||
{
|
||
"removed": true,
|
||
"size": 1
|
||
}
|
||
✔ parked 둘을 처리하면 → DLQ는 노랑, 먼저 볼 것에 알림 · 1.0s
|
||
→ request POST /webhook/my-ops-brief
|
||
{}
|
||
← response HTTP 200
|
||
{
|
||
"overall": "red",
|
||
"red": [
|
||
"runs",
|
||
"release"
|
||
],
|
||
"yellow": [
|
||
"alerts",
|
||
"dlq",
|
||
"quality",
|
||
"cost"
|
||
],
|
||
"actions": [
|
||
{
|
||
"area": "runs",
|
||
"status": "red",
|
||
"action": "오류 묶음 1위 확인 · 고치기 (77일차)"
|
||
},
|
||
{
|
||
"area": "release",
|
||
"status": "red",
|
||
"action": "카나리 끄기 · 되돌리기 검토 (74일차)"
|
||
},
|
||
{
|
||
"area": "alerts",
|
||
"status": "yellow",
|
||
"action": "높은 알림부터 확인하고 닫기 (76일차)"
|
||
}
|
||
],
|
||
"markdown": "# 운영 브리핑 (2026-10-26 ~ 2026-10-30 실행 기록 + 지금 상태)\n\n전체: 🔴 red\n\n| 영역 | 상태 | 숫자 |\n| --- | --- | --- |\n| 실행 | 🔴 | 오류율 5.88% · p95 2598ms · 답 못 함 4.76% |\n| 알림 | 🟡 | 6건 (높음 3) |\n| DLQ | 🟡 | 1건 (parked 0) |\n| 데이터 품질 | 🟡 | 평균 0.6583 · 마지막 1 · 격리 1 |\n| 비용 | 🟡 | $0.073604 / $0.08 (92.01%) |\n| 릴리스 | 🔴 | 1.1.0 · 카나리 1.2.0 20% (다시 묻기 62.5%) |\n\n## 먼저 볼 것\n\n1. 🔴 실행: 오류 묶음 1위 확인 · 고치기 (77일차)\n2. 🔴 릴리스: 카나리 끄기 · 되돌리기 검토 (74일차)\n3. 🟡 알림: 높은 알림부터 확인하고 닫기 (76일차)\n\n## 요약\n\n전체 시스템 상태는 빨간색으로, 오류율은 5.88%로 나타났습니다. 가장 긴급한 문제는 'Search FAQ' 노드에서 발생한 16건의 타임아웃 오류입니다. 우선 이 타임아웃 문제를 해결하는 데 집중해야 합니다.",
|
||
"summary": "전체 시스템 상태는 빨간색으로, 오류율은 5.88%로 나타났습니다. 가장 긴급한 문제는 'Search FAQ' 노드에서 발생한 16건의 타임아웃 오류입니다. 우선 이 타임아웃 문제를 해결하는 데 집중해야 합니다.",
|
||
"numbers_ok": true,
|
||
"unknown_numbers": []
|
||
}
|
||
✔ before: POST http://localhost:8800/releases/helpdesk · HTTP 200 · 0.0s · {"name": "helpdesk", "active": "1.1.0", "canary": null, "require_gate": false, "releases": {"1.0.0": {"prompt_version":
|
||
→ request POST http://localhost:8800/releases/helpdesk
|
||
{
|
||
"canary": null
|
||
}
|
||
← response HTTP 200
|
||
{
|
||
"name": "helpdesk",
|
||
"active": "1.1.0",
|
||
"canary": null,
|
||
"require_gate": false,
|
||
"releases": {
|
||
"1.0.0": {
|
||
"prompt_version": "p1",
|
||
"model": "gpt-4.1-mini",
|
||
"note": "첫 릴리스"
|
||
},
|
||
"1.1.0": {
|
||
"prompt_version": "p2",
|
||
"model": "gpt-4.1-mini",
|
||
"note": "FAQ 답 끝에 출처 번호"
|
||
},
|
||
"1.2.0": {
|
||
"prompt_version": "p3",
|
||
"model": "gpt-4.1-mini",
|
||
"note": "답을 한 문장으로 짧게"
|
||
},
|
||
"2.0.0": {
|
||
"prompt_version": "p2",
|
||
"model": "gpt-5.4-nano",
|
||
"note": "더 작은 모델 (비용)"
|
||
},
|
||
"2.1.0": {
|
||
"prompt_version": "p9",
|
||
"model": "gpt-4.1-mini",
|
||
"note": "출처 번호 · 존댓말 다듬기 (지시문 이름 확인 필요)"
|
||
}
|
||
}
|
||
}
|
||
✔ 카나리를 끄면 → 릴리스는 초록 · 1.1s
|
||
→ request POST /webhook/my-ops-brief
|
||
{}
|
||
← response HTTP 200
|
||
{
|
||
"overall": "red",
|
||
"red": [
|
||
"runs"
|
||
],
|
||
"yellow": [
|
||
"alerts",
|
||
"dlq",
|
||
"quality",
|
||
"cost"
|
||
],
|
||
"actions": [
|
||
{
|
||
"area": "runs",
|
||
"status": "red",
|
||
"action": "오류 묶음 1위 확인 · 고치기 (77일차)"
|
||
},
|
||
{
|
||
"area": "alerts",
|
||
"status": "yellow",
|
||
"action": "높은 알림부터 확인하고 닫기 (76일차)"
|
||
},
|
||
{
|
||
"area": "dlq",
|
||
"status": "yellow",
|
||
"action": "parked 건 원인 확인 뒤 런북대로 재처리 (76일차)"
|
||
}
|
||
],
|
||
"markdown": "# 운영 브리핑 (2026-10-26 ~ 2026-10-30 실행 기록 + 지금 상태)\n\n전체: 🔴 red\n\n| 영역 | 상태 | 숫자 |\n| --- | --- | --- |\n| 실행 | 🔴 | 오류율 5.88% · p95 2598ms · 답 못 함 4.76% |\n| 알림 | 🟡 | 6건 (높음 3) |\n| DLQ | 🟡 | 1건 (parked 0) |\n| 데이터 품질 | 🟡 | 평균 0.6583 · 마지막 1 · 격리 1 |\n| 비용 | 🟡 | $0.073604 / $0.08 (92.01%) |\n| 릴리스 | 🟢 | 1.1.0 |\n\n## 먼저 볼 것\n\n1. 🔴 실행: 오류 묶음 1위 확인 · 고치기 (77일차)\n2. 🟡 알림: 높은 알림부터 확인하고 닫기 (76일차)\n3. 🟡 DLQ: parked 건 원인 확인 뒤 런북대로 재처리 (76일차)\n\n## 요약\n\n전체 시스템 상태는 빨간색으로, 오류율은 5.88%로 나타났습니다. 가장 긴급한 문제는 'Search FAQ' 노드에서 발생한 16건의 타임아웃 오류입니다. 우선 이 타임아웃 문제를 해결하는 데 집중해야 합니다.",
|
||
"summary": "전체 시스템 상태는 빨간색으로, 오류율은 5.88%로 나타났습니다. 가장 긴급한 문제는 'Search FAQ' 노드에서 발생한 16건의 타임아웃 오류입니다. 우선 이 타임아웃 문제를 해결하는 데 집중해야 합니다.",
|
||
"numbers_ok": true,
|
||
"unknown_numbers": []
|
||
}
|
||
✔ before: POST http://localhost:8800/budget · HTTP 200 · 0.0s · {"daily_usd": 0.2, "user_limit_per_min": 20, "max_question_chars": 500, "used_usd": 0.073604, "remaining_usd": 0.126396,
|
||
→ request POST http://localhost:8800/budget
|
||
{
|
||
"daily_usd": 0.2
|
||
}
|
||
← response HTTP 200
|
||
{
|
||
"daily_usd": 0.2,
|
||
"user_limit_per_min": 20,
|
||
"max_question_chars": 500,
|
||
"used_usd": 0.073604,
|
||
"remaining_usd": 0.126396,
|
||
"over": false
|
||
}
|
||
✔ 예산을 올리면 → 비용도 초록 · 1.1s
|
||
→ request POST /webhook/my-ops-brief
|
||
{}
|
||
← response HTTP 200
|
||
{
|
||
"overall": "red",
|
||
"red": [
|
||
"runs"
|
||
],
|
||
"yellow": [
|
||
"alerts",
|
||
"dlq",
|
||
"quality"
|
||
],
|
||
"actions": [
|
||
{
|
||
"area": "runs",
|
||
"status": "red",
|
||
"action": "오류 묶음 1위 확인 · 고치기 (77일차)"
|
||
},
|
||
{
|
||
"area": "alerts",
|
||
"status": "yellow",
|
||
"action": "높은 알림부터 확인하고 닫기 (76일차)"
|
||
},
|
||
{
|
||
"area": "dlq",
|
||
"status": "yellow",
|
||
"action": "parked 건 원인 확인 뒤 런북대로 재처리 (76일차)"
|
||
}
|
||
],
|
||
"markdown": "# 운영 브리핑 (2026-10-26 ~ 2026-10-30 실행 기록 + 지금 상태)\n\n전체: 🔴 red\n\n| 영역 | 상태 | 숫자 |\n| --- | --- | --- |\n| 실행 | 🔴 | 오류율 5.88% · p95 2598ms · 답 못 함 4.76% |\n| 알림 | 🟡 | 6건 (높음 3) |\n| DLQ | 🟡 | 1건 (parked 0) |\n| 데이터 품질 | 🟡 | 평균 0.6583 · 마지막 1 · 격리 1 |\n| 비용 | 🟢 | $0.073604 / $0.2 (36.8%) |\n| 릴리스 | 🟢 | 1.1.0 |\n\n## 먼저 볼 것\n\n1. 🔴 실행: 오류 묶음 1위 확인 · 고치기 (77일차)\n2. 🟡 알림: 높은 알림부터 확인하고 닫기 (76일차)\n3. 🟡 DLQ: parked 건 원인 확인 뒤 런북대로 재처리 (76일차)\n\n## 요약\n\n전체 시스템 상태는 빨간색으로, 오류율은 5.88%이며 응답하지 않은 비율은 4.76%입니다. 가장 긴급한 문제는 \"Search FAQ\" 노드에서 1000ms 타임아웃 초과가 16건 발생한 것입니다. 우선 이 타임아웃 문제를 해결하는 데 집중해야 합니다.",
|
||
"summary": "전체 시스템 상태는 빨간색으로, 오류율은 5.88%이며 응답하지 않은 비율은 4.76%입니다. 가장 긴급한 문제는 \"Search FAQ\" 노드에서 1000ms 타임아웃 초과가 16건 발생한 것입니다. 우선 이 타임아웃 문제를 해결하는 데 집중해야 합니다.",
|
||
"numbers_ok": true,
|
||
"unknown_numbers": []
|
||
}
|
||
✔ 남은 빨강은 실행 하나 (사람이 고칠 일) · 1.2s
|
||
→ request POST /webhook/my-ops-brief
|
||
{}
|
||
← response HTTP 200
|
||
{
|
||
"overall": "red",
|
||
"red": [
|
||
"runs"
|
||
],
|
||
"yellow": [
|
||
"alerts",
|
||
"dlq",
|
||
"quality"
|
||
],
|
||
"actions": [
|
||
{
|
||
"area": "runs",
|
||
"status": "red",
|
||
"action": "오류 묶음 1위 확인 · 고치기 (77일차)"
|
||
},
|
||
{
|
||
"area": "alerts",
|
||
"status": "yellow",
|
||
"action": "높은 알림부터 확인하고 닫기 (76일차)"
|
||
},
|
||
{
|
||
"area": "dlq",
|
||
"status": "yellow",
|
||
"action": "parked 건 원인 확인 뒤 런북대로 재처리 (76일차)"
|
||
}
|
||
],
|
||
"markdown": "# 운영 브리핑 (2026-10-26 ~ 2026-10-30 실행 기록 + 지금 상태)\n\n전체: 🔴 red\n\n| 영역 | 상태 | 숫자 |\n| --- | --- | --- |\n| 실행 | 🔴 | 오류율 5.88% · p95 2598ms · 답 못 함 4.76% |\n| 알림 | 🟡 | 6건 (높음 3) |\n| DLQ | 🟡 | 1건 (parked 0) |\n| 데이터 품질 | 🟡 | 평균 0.6583 · 마지막 1 · 격리 1 |\n| 비용 | 🟢 | $0.073604 / $0.2 (36.8%) |\n| 릴리스 | 🟢 | 1.1.0 |\n\n## 먼저 볼 것\n\n1. 🔴 실행: 오류 묶음 1위 확인 · 고치기 (77일차)\n2. 🟡 알림: 높은 알림부터 확인하고 닫기 (76일차)\n3. 🟡 DLQ: parked 건 원인 확인 뒤 런북대로 재처리 (76일차)\n\n## 요약\n\n전체 시스템 상태는 빨간색으로, 오류율은 5.88%로 나타났습니다. 가장 긴급한 문제는 'Search FAQ' 노드에서 발생한 16건의 타임아웃 오류입니다. 우선 이 타임아웃 문제를 해결하는 데 집중해야 합니다.",
|
||
"summary": "전체 시스템 상태는 빨간색으로, 오류율은 5.88%로 나타났습니다. 가장 긴급한 문제는 'Search FAQ' 노드에서 발생한 16건의 타임아웃 오류입니다. 우선 이 타임아웃 문제를 해결하는 데 집중해야 합니다.",
|
||
"numbers_ok": true,
|
||
"unknown_numbers": []
|
||
}
|
||
Passed 5/5
|
||
report: runs/lab03-after-20261101-185505.json
|