77일차 실행 기록 분석: 실습 15개 · 강의(개요 30장 · 단계 문서 · 4단계 정리 · 05 바이브), 정답본 LAB-A · answers · VIBE-A · tlog 포함

This commit is contained in:
mcchae committed 2026-11-01 23:43:55 +09:00
1 parent 036eae1c6a
commit dcd4cdd66b
148 files changed
+40344

No files matched your search

+4
View File
@@ -0,0 +1,4 @@
.venv/
__pycache__/
*.pyc
.pytest_cache/
+32
View File
@@ -0,0 +1,32 @@
# tlog IMP-PLAN
## 엔진 1단계 · 읽기 · 정의대로 세기 · JSON · 종료 코드 (R1 · R2 · R5 · R12 · R13)
- [x] load.py: `read(file, url, from, to, tag, source)`, 날짜 포함(`from ≤ started_at[:10] ≤ to`), JSON 목록 · `{"logs"}` · JSON Lines(반쯤 쓰인 줄은 건너뜀), 데이터 API는 `POST /logs/query`, `--file`이 `--url`보다 먼저
- [x] metrics.py: `pct`(nearest rank, `ceil(p × n)`번째) · `js_round`(half up, Math.round와 같게) · `rate`(4자리, 0건 0) · `summary`(total · errors · error_rate · p50 · p95 · by_route · by_day · by_release)
- [x] cli: `tlog summary [--json]`, 종료 코드 0 · 1(못 읽음) · 2(쓰는 법)
- [x] tests: 두 주 사본 → 666 · 21 · 0.0315 · 1205 · 2537, 둘째 주 357 · 0.0588 · 2598, 빈 기간 0, 가짜 데이터 API
- 확인: `uv run pytest -q`, `uv run tlog summary --file tests/data/run-logs.json --from 2026-10-19 --to 2026-10-30`
## 엔진 2단계 · 문제 · 이상 · SLO (R3 · R4 · R7)
- [x] `problems`: failures(노드 · 메시지, 많은 순) · unanswered_topics · repeat_topics(비율 높은 순, 같으면 수)
- [x] `anomalies`: 시간마다, 5건 이상 · 그 기간 오류율 × 3 이상 · 오류 1건 이상, 시간순
- [x] `slo`: 기본 0.01 · 3000 · 0.02, `--error-rate` · `--p95` · `--unanswered`, 크면 위반, 위반이면 종료 코드 4
- [x] tests: 16 · 5 · 와이파이 34 · 09시 · 15시 · 프린터 0.0988, 둘째 주 위반 둘 · 첫 주 기준 0.06이면 지킴
- 확인: `uv run tlog problems --file … --from 2026-10-19 --to 2026-10-30`, `uv run tlog slo --url http://localhost:8800 --from 2026-10-26 --to 2026-10-30; echo $?`
## TUI 1단계 · 묶음 고르기 (R11)
- [x] app.py `LogApp`: 위 요약 한 줄, 왼쪽 묶음(실패 · `[t]` 시간대 · 느린 실행 20), 고르면 오른쪽에 그 실행들, `[r]` 다시 읽기
- [x] 엔진(`load` · `metrics`)을 불러 쓰기만
- [x] tests: `run_test`로 요약 줄 · 16줄 · `down` → 5줄 · `t` → `2026-10-26T09` · 다시 `t` → 20줄
- 확인: `uv run tlog ui --file tests/data/run-logs.json --from 2026-10-19 --to 2026-10-30`
## 설치 (R14)
- [x] `[project.scripts] tlog = "tlog.cli:main"`
- [x] `uv tool install --editable .`, `/tmp`에서 `tlog --help`
## 엔진 3단계 · 단계 · 비용 · 비교 · tretry · 주간 보고 (R6 · R8 · R9 · R10)
- [x] `steps`(값 > 0인 실행만) · `cost_usd`(5자리) · `cost_per_run`(6자리) · `llm_calls`
- [x] `tlog compare --prev-from --prev-to [--json]`
- [x] `load.from_tretry`: 시도 줄을 `final`까지 묶어 실행 하나로 (성공 · 대체 · 실패, 시간 = 마지막 시도의 시작 + 걸린 시간)
- [x] `tlog weekly --prev-from --prev-to`: 숫자 표 · 문제 · 할 일 규칙 (LLM 없음)
- [x] tests: FAQ p95 39 (646) · 답 2509 (596) · 0.07836 · 0.000118 · 596, compare +48, tretry 3줄 → 실행 2, 주간 보고 글
+38
View File
@@ -0,0 +1,38 @@
# tlog · 강사가 수업 준비 때 직접 만든 본 (2026-10-31)
> **정답 자료** · 학생 저장소에는 수업 뒤 [VIBE-A-TLOG.md](../VIBE-A-TLOG.md)와 함께 올립니다.
> 이 본은 강사가 CLI 에이전트에 단계 요청문을 보내 만든 것이 아니라, Claude Code가 VIBE-Q의 요구 R1~R14와 [Doc/IMP-PLAN.md](Doc/IMP-PLAN.md)를 보고 직접 썼습니다. 학생이 만든 것과 파일 구성이 달라도 됩니다. 요구의 **확인 방법**이 같으면 됩니다.
## 설치 · 실행
```bash
cd ~/aio-01d4-stu/Last3Mon/77/tlog
uv sync && uv run pytest -q # 테스트 23개 (n8n · 데이터 API 없이, 가짜 서버)
uv tool install --editable . # 어느 폴더에서나 tlog (R14)
cd /tmp && tlog --help
```
| 하고 싶은 것 | 명령 |
| --- | --- |
| 지표 (n8n `my-log-report`와 같은 숫자) | `tlog summary --url http://localhost:8800 --from 2026-10-26 --to 2026-10-30` (`--json`) |
| 파일에서 | `tlog summary --file ../data-api/data/run-logs.json --from 2026-10-19 --to 2026-10-30` |
| 실패 묶음 · 답 못 한 주제 · 이상 시간대 · 다시 묻는 주제 | `tlog problems …` |
| SLO 판정 (위반이면 종료 코드 4) | `tlog slo … [--error-rate 0.01 --p95 3000 --unanswered 0.02]` |
| 지난 기간과 나란히 | `tlog compare … --prev-from 2026-10-19 --prev-to 2026-10-23` |
| 주간 보고 마크다운 | `tlog weekly … --prev-from … --prev-to …` |
| 76일차 tretry 기록 | `tlog summary --file ~/.tretry/log.jsonl` |
| 화면(TUI) | `tlog ui …` (`[t]` 실패 · 시간대 · 느린 실행, `[r]` 다시 읽기, `[q]` 끝) |
- 종료 코드: 0 됨 · 1 로그를 못 읽음 · 2 쓰는 법이 틀림 · 4 SLO 위반.
- 데이터 API 주소는 `--url` 또는 `$TLOG_URL`. `--file`을 주면 파일이 먼저입니다.
- 지표 정의는 [AGENTS.md](../AGENTS.md) 3절과 같습니다 (날짜 포함, 소수 4자리 half up, p95 = `ceil(p × n)`번째, `null` 갈래는 `오류`, 0건이면 0).
## 파일
| 파일 | 하는 일 | 요구 |
| --- | --- | --- |
| `src/tlog/load.py` | 파일 · 데이터 API 읽기, 거르기(날짜 포함), tretry 기록을 실행 모양으로 | R1 · R9 |
| `src/tlog/metrics.py` | 정의대로 세기 (요약 · 단계 · 비용 · 문제 · 이상 · SLO · 비교 · 주간 보고) — **정의는 여기 한 곳** | R2 · R3 · R4 · R6 · R7 · R8 · R10 |
| `src/tlog/cli.py` | 명령 · `--json` · 종료 코드 | R5 · R12 |
| `src/tlog/app.py` | Textual 화면 | R11 |
| `tests/` | 두 주 기록 사본(`tests/data/run-logs.json`) · 가짜 데이터 API · 화면 `run_test` | R13 |
+23
View File
@@ -0,0 +1,23 @@
[project]
name = "tlog"
version = "0.1.0"
description = "Read workflow run logs (a file or the data API), count them with the course metric definitions, find problems, judge an SLO, and show it all in a TUI"
requires-python = ">=3.11"
dependencies = ["textual>=0.80"]
[project.scripts]
tlog = "tlog.cli:main"
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.hatch.build.targets.wheel]
packages = ["src/tlog"]
[dependency-groups]
dev = ["pytest>=8", "pytest-asyncio>=0.23"]
[tool.pytest.ini_options]
asyncio_mode = "auto"
asyncio_default_fixture_loop_scope = "function"
+1
View File
@@ -0,0 +1 @@
"""tlog: run log analysis with the day 77 metric definitions."""
+103
View File
@@ -0,0 +1,103 @@
"""Textual screen (R11): the summary on top, groups on the left (failures · hours · slow runs, [t] to switch),
the runs of the chosen group on the right. The screen only calls the engine (load · metrics)."""
from __future__ import annotations
from collections import defaultdict
from textual.app import App, ComposeResult
from textual.containers import Horizontal
from textual.widgets import DataTable, Footer, Header, Static
from . import load, metrics
VIEWS = ("failures", "hours", "slow")
class LogApp(App):
TITLE = "tlog"
BINDINGS = [("t", "next_view", "Failures / hours / slow"), ("r", "reload", "Reload"), ("q", "quit", "Quit")]
CSS = "#groups { width: 50%; } #runs { width: 50%; } #top { height: auto; margin: 0 1; }"
def __init__(self, args):
super().__init__()
self.args = args
self.rows: list[dict] = []
self.view = "failures"
self.groups: dict[str, list[dict]] = {}
self.chosen: str | None = None
def compose(self) -> ComposeResult:
yield Header()
yield Static("", id="top", markup=False)
with Horizontal():
yield DataTable(id="groups", cursor_type="row")
yield DataTable(id="runs", cursor_type="row")
yield Footer()
def on_mount(self):
a = self.args
self.sub_title = f"{a.url or a.file} · {a.date_from or '…'} ~ {a.date_to or '…'}"
self.action_reload()
def action_reload(self):
a = self.args
self.rows = load.read(a.file, a.url, a.date_from, a.date_to, a.tag, a.source)
r = metrics.report(self.rows)
self.query_one("#top", Static).update(
f"{r['total']} runs · errors {r['errors']} ({metrics.percent(r['error_rate'])}) · p50 {r['p50_ms']}ms · "
f"p95 {r['p95_ms']}ms · unanswered {metrics.percent(r['unanswered_rate'])} · SLO "
+ ("ok" if r["slo"]["ok"] else "breach " + ", ".join(r["slo"]["breaches"])))
self.show_groups()
def action_next_view(self):
self.view = VIEWS[(VIEWS.index(self.view) + 1) % len(VIEWS)]
self.chosen = None
self.show_groups()
def make_groups(self) -> list[tuple[str, list, list[dict]]]:
"""(key, cells for the left table, the runs of that group)."""
if self.view == "failures":
g: dict[tuple, list] = defaultdict(list)
for row in self.rows:
if row.get("status") == "error":
g[(row.get("error_node"), row.get("error_message"))].append(row)
items = sorted(g.items(), key=lambda kv: -len(kv[1]))
return [(f"{n}|{m}", [len(runs), n, str(m)[:40]], runs) for (n, m), runs in items]
if self.view == "hours":
g2: dict[str, list] = defaultdict(list)
for row in self.rows:
g2[str(row.get("started_at", ""))[:13]].append(row)
out = []
for hour in sorted(g2):
runs = g2[hour]
e = sum(1 for x in runs if x.get("status") == "error")
out.append((hour, [hour, len(runs), e, metrics.percent(metrics.rate(e, len(runs)))], runs))
return sorted(out, key=lambda item: (-item[1][2], item[0]))
slow = sorted(self.rows, key=lambda x: -(x.get("duration_ms") or 0))[:20]
return [(str(x.get("execution_id")), [x.get("duration_ms"), x.get("topic"), x.get("route") or "오류"], [x]) for x in slow]
def show_groups(self):
table = self.query_one("#groups", DataTable)
table.clear(columns=True)
table.add_columns(*{"failures": ("count", "node", "message"), "hours": ("hour", "runs", "errors", "rate"),
"slow": ("ms", "topic", "route")}[self.view])
self.groups = {}
for key, cells, runs in self.make_groups():
self.groups[key] = runs
table.add_row(*cells, key=key)
if self.chosen not in self.groups:
self.chosen = next(iter(self.groups), None)
self.show_runs()
def on_data_table_row_highlighted(self, event: DataTable.RowHighlighted):
if event.data_table.id == "groups" and event.row_key is not None:
self.chosen = str(event.row_key.value)
self.show_runs()
def show_runs(self):
table = self.query_one("#runs", DataTable)
table.clear(columns=True)
table.add_columns("started_at", "status", "route", "ms", "topic", "question")
for row in self.groups.get(self.chosen or "", []):
table.add_row(row.get("started_at"), row.get("status"), row.get("route") or "오류", row.get("duration_ms"),
row.get("topic"), str(row.get("question"))[:24])
+150
View File
@@ -0,0 +1,150 @@
"""tlog commands (R12): summary · problems · slo · compare · weekly · ui. Exit codes: 0 ok · 1 cannot read · 2 usage · 4 SLO breach."""
from __future__ import annotations
import argparse
import json
import os
import sys
from . import load, metrics
EXIT_OK, EXIT_READ, EXIT_USAGE, EXIT_BREACH = 0, 1, 2, 4
class Parser(argparse.ArgumentParser):
def error(self, message): # usage mistakes are exit code 2, with the message on stderr
self.print_usage(sys.stderr)
print(f"tlog: {message}", file=sys.stderr)
sys.exit(EXIT_USAGE)
def source_args(p: argparse.ArgumentParser) -> None:
p.add_argument("--file", help="run logs: a JSON list, {\"logs\": [...]} or JSON Lines (also tretry's ~/.tretry/log.jsonl)")
p.add_argument("--url", default=os.environ.get("TLOG_URL"), help="data API base, e.g. http://localhost:8800 ($TLOG_URL)")
p.add_argument("--from", dest="date_from", default="", help="first day, inclusive (2026-10-26)")
p.add_argument("--to", dest="date_to", default="", help="last day, inclusive")
p.add_argument("--tag", default="")
p.add_argument("--source", default="all", choices=["all", "seed", "live"])
p.add_argument("--json", action="store_true", help="print JSON with the names of AGENTS.md 3 (same as my-log-report)")
def rows_for(args, date_from=None, date_to=None) -> list[dict]:
if not args.file and not args.url:
raise SystemExit(usage("give --file or --url (or set $TLOG_URL)"))
return load.read(args.file, args.url, args.date_from if date_from is None else date_from,
args.date_to if date_to is None else date_to, args.tag, args.source)
def usage(message: str) -> int:
print(f"tlog: {message}", file=sys.stderr)
return EXIT_USAGE
def limits_of(args) -> dict:
out = {}
for key, value in (("error_rate", args.error_rate), ("p95_ms", args.p95), ("unanswered_rate", args.unanswered)):
if value is not None:
out[key] = value
return out
def print_summary(r: dict) -> None:
print(f"{r['total']} runs · errors {r['errors']} ({metrics.percent(r['error_rate'])}) · p50 {r['p50_ms']}ms · p95 {r['p95_ms']}ms")
print("route: " + " · ".join(f"{k} {v}" for k, v in sorted(r["by_route"].items(), key=lambda kv: -kv[1])))
for day, d in r["by_day"].items():
print(f" {day} {d['total']:>4} runs errors {d['errors']:>3} {metrics.percent(d['error_rate'])}")
s = r["steps"]
print(f"steps p95: faq {s['faq_ms']['p95']}ms ({s['faq_ms']['runs']}) · answer {s['answer_ms']['p95']}ms ({s['answer_ms']['runs']})"
f" · cost ${r['cost_usd']} (${r['cost_per_run']}/run) · LLM calls {r['llm_calls']}")
def print_problems(r: dict) -> None:
print("failures:")
for f in r["failures"] or [{"count": 0, "node": "-", "message": "-"}]:
print(f" {f['count']:>4} {f['node']} {f['message']}")
print("unanswered topics:")
for u in r["unanswered_topics"]:
print(f" {u['count']:>4} {u['topic']}")
print("anomalies (>= 5 runs, >= 3 × error rate, >= 1 error):")
for a in r["anomalies"]:
print(f" {a['hour']} {a['errors']}/{a['total']} {metrics.percent(a['error_rate'])}")
print("asked again after an answer:")
for t in r["repeat_topics"]:
print(f" {metrics.percent(t['repeat_rate']):>7} {t['repeats']}/{t['answers']} {t['topic']}")
def main(argv: list[str] | None = None) -> int:
parser = Parser(prog="tlog", description="Run log analysis with the day 77 metric definitions.")
commands = parser.add_subparsers(dest="command", required=True)
p = commands.add_parser("summary", help="runs · error rate · p50 · p95 · routes · days · steps · cost (R2 · R6)")
source_args(p)
p = commands.add_parser("problems", help="failure groups · unanswered topics · anomalies · repeat topics (R3 · R4)")
source_args(p)
p = commands.add_parser("slo", help="judge the SLO; exit code 4 when a metric is above its limit (R7)")
source_args(p)
p.add_argument("--error-rate", type=float)
p.add_argument("--p95", type=float, help="ms")
p.add_argument("--unanswered", type=float)
p = commands.add_parser("compare", help="this period next to the previous one (R8)")
source_args(p)
p.add_argument("--prev-from", required=True)
p.add_argument("--prev-to", required=True)
p = commands.add_parser("weekly", help="the weekly report as Markdown, no LLM (R10)")
source_args(p)
p.add_argument("--prev-from", required=True)
p.add_argument("--prev-to", required=True)
p = commands.add_parser("ui", help="the TUI (R11)")
source_args(p)
args = parser.parse_args(argv)
try:
if args.command == "ui":
if not args.file and not args.url:
return usage("give --file or --url (or set $TLOG_URL)")
from .app import LogApp
LogApp(args).run()
return EXIT_OK
rows = rows_for(args)
limits = limits_of(args) if args.command == "slo" else None
r = metrics.report(rows, limits)
if args.command in ("compare", "weekly"):
prev = metrics.report(rows_for(args, args.prev_from, args.prev_to))
if args.command == "compare":
table = metrics.compare(r, prev)
if args.json:
print(json.dumps(table, ensure_ascii=False, indent=2))
else:
for row in table:
print(f"{row['metric']:<16} {row['prev']:>10} → {row['now']:>10} ({row['change']:+g})")
return EXIT_OK
text = metrics.weekly_markdown(r, prev, args.date_from, args.date_to)
print(json.dumps({"markdown": text}, ensure_ascii=False, indent=2) if args.json else text, end="" if not args.json else "\n")
return EXIT_OK
except load.LoadError as error:
print(f"tlog: cannot read the logs: {error}", file=sys.stderr)
return EXIT_READ
except SystemExit as stop:
return int(stop.code or 0)
if args.command == "slo":
out = {"ok": r["slo"]["ok"], "breaches": r["slo"]["breaches"], "limits": r["slo"]["limits"],
"values": {k: r[k] for k in ("error_rate", "p95_ms", "unanswered_rate")}, "total": r["total"]}
if args.json:
print(json.dumps(out, ensure_ascii=False, indent=2))
else:
for key in ("error_rate", "p95_ms", "unanswered_rate"):
mark = "✘" if key in out["breaches"] else "✔"
print(f"{mark} {key:<16} {r[key]:>8} (limit {out['limits'][key]})")
print("SLO ok" if out["ok"] else "SLO breach: " + ", ".join(out["breaches"]))
return EXIT_OK if out["ok"] else EXIT_BREACH
if args.json:
print(json.dumps(r, ensure_ascii=False, indent=2))
elif args.command == "summary":
print_summary(r)
else:
print_problems(r)
return EXIT_OK
if __name__ == "__main__":
sys.exit(main())
+103
View File
@@ -0,0 +1,103 @@
"""Read run logs (R1) from a file or the data API, and other log shapes into the same run shape (R9)."""
from __future__ import annotations
import json
import urllib.error
import urllib.request
from pathlib import Path
class LoadError(Exception):
"""The logs could not be read (exit code 1)."""
def keep(row: dict, date_from: str = "", date_to: str = "", tag: str = "", source: str = "all") -> bool:
"""Dates are inclusive: from <= started_at[:10] <= to. Empty means no limit (AGENTS.md 3)."""
day = str(row.get("started_at", ""))[:10]
if date_from and day < date_from:
return False
if date_to and day > date_to:
return False
if tag and row.get("tag") != tag:
return False
if source != "all" and row.get("source", "seed") != source:
return False
return True
def from_tretry(rows: list[dict]) -> list[dict]:
"""R9: day 76 tretry attempt rows -> one run row per tretry call, in the run shape of AGENTS.md 2."""
import datetime
runs, current = [], []
for row in rows:
current.append(row)
if row.get("final"):
runs.append(current)
current = []
out = []
for group in runs:
last = group[-1]
ok = last.get("result") == "ok"
failed = next((r for r in reversed(group) if not r.get("ok")), None)
out.append({
"execution_id": len(out) + 1, "workflow": "tretry",
"started_at": datetime.datetime.fromtimestamp(group[0]["at"]).isoformat(timespec="seconds"),
"user": "", "topic": last.get("target", ""), "question": last.get("target", ""), "release": "", "channel": "",
"status": "success" if ok else "error",
"error_node": None if ok else last.get("kind"), "error_message": None if ok else (failed or last).get("error"),
"route": ("대체" if any(r.get("fallback") for r in group) else "성공") if ok else None,
"duration_ms": round((last["started"] + last["seconds"]) * 1000), "steps": {}, "llm_calls": 0, "cost_usd": 0,
"repeat": False, "tag": "tretry", "source": "live",
})
return out
def shape(data) -> list[dict]:
"""A JSON list, {"logs": [...]} (the data API), or tretry attempt rows."""
rows = data.get("logs", []) if isinstance(data, dict) else data
if not isinstance(rows, list):
raise LoadError("expected a JSON list of runs or {\"logs\": [...]}")
if rows and "attempt" in rows[0] and "kind" in rows[0]:
return from_tretry(rows)
return rows
def read_file(path: Path) -> list[dict]:
if not path.exists():
raise LoadError(f"no such file: {path}")
text = path.read_text(encoding="utf-8")
try:
return shape(json.loads(text))
except json.JSONDecodeError:
rows = []
for line in text.splitlines():
if line.strip():
try:
rows.append(json.loads(line))
except json.JSONDecodeError:
continue # a half-written line
if not rows:
raise LoadError(f"not JSON or JSON Lines: {path}")
return shape(rows)
def read_url(base: str, date_from: str = "", date_to: str = "", tag: str = "", source: str = "all", timeout: float = 20) -> list[dict]:
"""The data API filters (POST /logs/query), so the definition of a period lives in one place."""
body = json.dumps({"from": date_from, "to": date_to, "tag": tag, "source": source}).encode()
request = urllib.request.Request(base.rstrip("/") + "/logs/query", data=body, headers={"Content-Type": "application/json"})
try:
with urllib.request.urlopen(request, timeout=timeout) as answer:
return shape(json.loads(answer.read()))
except (urllib.error.URLError, OSError, json.JSONDecodeError) as error:
raise LoadError(f"data API {base}: {error}") from error
def read(file: str | None = None, url: str | None = None, date_from: str = "", date_to: str = "", tag: str = "",
source: str = "all") -> list[dict]:
"""--file wins over --url ($TLOG_URL may be set for every call)."""
if file:
return [r for r in read_file(Path(file)) if keep(r, date_from, date_to, tag, source)]
if url:
return read_url(url, date_from, date_to, tag, source)
return []
+161
View File
@@ -0,0 +1,161 @@
"""The metrics of AGENTS.md 3 (R2 · R3 · R4 · R6 · R7), the comparison (R8) and the weekly report (R10).
Same names and the same numbers as the n8n workflow my-log-report."""
from __future__ import annotations
import math
from collections import defaultdict
DEFAULT_SLO = {"error_rate": 0.01, "p95_ms": 3000, "unanswered_rate": 0.02}
def pct(values: list[float], p: float) -> float:
"""Nearest rank: sorted ascending, the ceil(p × n)-th value (1-based). 0 when empty."""
if not values:
return 0
ordered = sorted(values)
return ordered[max(0, math.ceil(p * len(ordered)) - 1)]
def js_round(value: float, digits: int) -> float:
"""Like JavaScript Math.round(value × 10^d) / 10^d (half up), so the numbers match the n8n Code node exactly."""
scale = 10 ** digits
out = math.floor(value * scale + 0.5) / scale
return int(out) if out == int(out) else out
def rate(part: float, whole: float) -> float:
"""Rounded to 4 decimals, 0 when the whole is 0."""
return js_round(part / whole, 4) if whole else 0
def summary(rows: list[dict]) -> dict:
"""R2: total · errors · error_rate · p50_ms · p95_ms · by_route (null -> 오류) · by_day · by_release."""
errors = sum(1 for r in rows if r.get("status") == "error")
by_route: dict[str, int] = {}
for r in rows:
key = r.get("route") or "오류"
by_route[key] = by_route.get(key, 0) + 1
durations = [r.get("duration_ms", 0) for r in rows]
days: dict[str, list] = defaultdict(list)
for r in rows:
days[str(r.get("started_at", ""))[:10]].append(r)
by_day = {}
for day in sorted(days):
e = sum(1 for r in days[day] if r.get("status") == "error")
by_day[day] = {"total": len(days[day]), "errors": e, "error_rate": rate(e, len(days[day]))}
by_release: dict[str, dict] = {}
for r in rows:
if r.get("route") == "자동 답변":
b = by_release.setdefault(str(r.get("release")), {"answers": 0, "repeats": 0})
b["answers"] += 1
b["repeats"] += bool(r.get("repeat"))
for b in by_release.values():
b["repeat_rate"] = rate(b["repeats"], b["answers"])
return {"total": len(rows), "errors": errors, "error_rate": rate(errors, len(rows)), "p50_ms": pct(durations, 0.5),
"p95_ms": pct(durations, 0.95), "by_route": by_route, "by_day": by_day, "by_release": by_release}
def steps_and_cost(rows: list[dict]) -> dict:
"""R6: per step only the runs that went through it (value > 0); cost sum (5 decimals), per run (6), LLM calls."""
steps = {}
for key in ("faq_ms", "answer_ms"):
values = [v for v in ((r.get("steps") or {}).get(key, 0) for r in rows) if v and v > 0]
steps[key] = {"runs": len(values), "p50": pct(values, 0.5), "p95": pct(values, 0.95)}
cost = js_round(sum(r.get("cost_usd") or 0 for r in rows), 5)
return {"steps": steps, "cost_usd": cost, "cost_per_run": js_round(cost / len(rows), 6) if rows else 0,
"llm_calls": sum(r.get("llm_calls") or 0 for r in rows)}
def problems(rows: list[dict]) -> dict:
"""R3: failures by (node, message), unanswered topics, topics answered but asked again."""
fails: dict[tuple, int] = defaultdict(int)
for r in rows:
if r.get("status") == "error":
fails[(r.get("error_node"), r.get("error_message"))] += 1
failures = sorted(({"node": n, "message": m, "count": c} for (n, m), c in fails.items()), key=lambda f: -f["count"])
unanswered: dict[str, int] = defaultdict(int)
for r in rows:
if r.get("route") == "담당자 연결":
unanswered[r.get("topic")] += 1
topics = sorted(({"topic": t, "count": c} for t, c in unanswered.items()), key=lambda u: -u["count"])
rep: dict[str, dict] = {}
for r in rows:
if r.get("route") == "자동 답변":
t = rep.setdefault(r.get("topic"), {"topic": r.get("topic"), "answers": 0, "repeats": 0})
t["answers"] += 1
t["repeats"] += bool(r.get("repeat"))
repeat_topics = sorted(({**t, "repeat_rate": rate(t["repeats"], t["answers"])} for t in rep.values() if t["repeats"] > 0),
key=lambda t: (-t["repeat_rate"], -t["repeats"]))
return {"failures": failures, "unanswered_topics": topics, "repeat_topics": repeat_topics}
def anomalies(rows: list[dict], error_rate: float) -> list[dict]:
"""R4: hours (started_at[:13]) with at least 5 runs, an error rate >= 3 × the period's, and at least 1 error."""
hours: dict[str, list] = defaultdict(list)
for r in rows:
hours[str(r.get("started_at", ""))[:13]].append(r)
out = []
for hour in sorted(hours):
group = hours[hour]
e = sum(1 for r in group if r.get("status") == "error")
item = {"hour": hour, "total": len(group), "errors": e, "error_rate": rate(e, len(group))}
if item["total"] >= 5 and item["error_rate"] >= 3 * error_rate and e > 0:
out.append(item)
return out
def slo(report_: dict, limits: dict | None = None) -> dict:
"""R7: a metric above its limit is a breach (equal is kept)."""
limits = {**DEFAULT_SLO, **(limits or {})}
breaches = [k for k in ("error_rate", "p95_ms", "unanswered_rate") if report_[k] > limits[k]]
return {"ok": not breaches, "breaches": breaches, "limits": limits}
def report(rows: list[dict], limits: dict | None = None) -> dict:
"""Everything my-log-report returns, with the same names (R5)."""
out = summary(rows)
out.update(steps_and_cost(rows))
out.update(problems(rows))
out["anomalies"] = anomalies(rows, out["error_rate"])
out["unanswered_rate"] = rate(sum(1 for r in rows if r.get("route") == "담당자 연결"), len(rows))
out["slo"] = slo(out, limits)
return out
def compare(now: dict, prev: dict) -> list[dict]:
"""R8: the main metrics side by side with the change."""
rows = []
for key in ("total", "errors", "error_rate", "p50_ms", "p95_ms", "unanswered_rate", "cost_usd"):
a, b = prev.get(key, 0), now.get(key, 0)
rows.append({"metric": key, "prev": a, "now": b, "change": round(b - a, 6)})
return rows
def percent(value: float) -> str:
return f"{round(value * 10000) / 100:g}%"
def weekly_markdown(now: dict, prev: dict, date_from: str, date_to: str) -> str:
"""R10: the weekly report of Lab 03 task 1 without the LLM: numbers and problems by Code, next actions by rules."""
def slo_text(r: dict) -> str:
return "지킴" if r["slo"]["ok"] else "못 지킴 " + ", ".join(r["slo"]["breaches"])
lines = [f"# IT 헬프데스크 주간 운영 보고 ({date_from} ~ {date_to})", "", "## 숫자", "", "| 지표 | 지난주 | 이번 주 |", "| --- | --- | --- |",
f"| 요청 | {prev['total']} | {now['total']} |", f"| 오류율 | {percent(prev['error_rate'])} | {percent(now['error_rate'])} |",
f"| p95 | {prev['p95_ms']}ms | {now['p95_ms']}ms |",
f"| 답 못 함 | {percent(prev['unanswered_rate'])} | {percent(now['unanswered_rate'])} |",
f"| SLO | {slo_text(prev)} | {slo_text(now)} |", "", "## 문제", ""]
for f in now["failures"][:3]:
lines.append(f"- 실패 {f['count']}건 · {f['node']} · {f['message']}")
for u in now["unanswered_topics"][:3]:
lines.append(f"- 답하지 못한 질문 {u['count']}건 · {u['topic']}")
for a in now["anomalies"]:
lines.append(f"- 이상 시간대 {a['hour'][:10]} {a['hour'][11:13]}시 · {a['errors']}/{a['total']} 실패")
lines += ["", "## 다음 할 일", ""]
if now["unanswered_topics"]:
lines.append(f"- FAQ에 '{now['unanswered_topics'][0]['topic']}' 항목 추가")
if any(f["node"] == "Search FAQ" for f in now["failures"]):
lines.append("- FAQ 검색 timeout · 재시도 설정 점검 (72일차)")
if any("429" in str(f["message"]) for f in now["failures"]):
lines.append("- LLM 사용량 한도 · 대체 경로 점검 (75 · 72일차)")
return "\n".join(lines) + "\n"
+49
View File
@@ -0,0 +1,49 @@
import json
import threading
from http.server import BaseHTTPRequestHandler, ThreadingHTTPServer
from pathlib import Path
import pytest
from tlog import load
DATA = Path(__file__).parent / "data" / "run-logs.json"
@pytest.fixture(scope="session")
def two_weeks():
"""A copy of the course's two weeks of run logs (Last3Mon/77/data-api/data/run-logs.json, 666 runs)."""
return json.loads(DATA.read_text(encoding="utf-8"))
@pytest.fixture
def api(two_weeks):
"""A local stand-in for the data API: POST /logs/query filters like the real one (dates inclusive)."""
live = [{"started_at": "2026-11-02T10:00:00", "status": "success", "route": "자동 답변", "duration_ms": 900,
"topic": "VPN", "tag": "after", "source": "live", "steps": {"faq_ms": 20, "answer_ms": 880}}]
class Handler(BaseHTTPRequestHandler):
def do_POST(self):
body = json.loads(self.rfile.read(int(self.headers.get("Content-Length", 0))) or b"{}")
rows = [r for r in two_weeks + live if load.keep(r, body.get("from", ""), body.get("to", ""), body.get("tag", ""),
body.get("source") or "all")]
data = json.dumps({"count": len(rows), "logs": rows}, ensure_ascii=False).encode()
self.send_response(200)
self.send_header("Content-Type", "application/json")
self.end_headers()
self.wfile.write(data)
def log_message(self, *args):
pass
server = ThreadingHTTPServer(("127.0.0.1", 0), Handler)
threading.Thread(target=server.serve_forever, daemon=True).start()
yield f"http://127.0.0.1:{server.server_address[1]}"
server.shutdown()
def run(day, status="success", route="자동 답변", ms=1000, topic="VPN", **extra):
return {"started_at": day, "status": status, "route": route if status == "success" else None, "duration_ms": ms,
"topic": topic, "release": "1.0.0", "repeat": False, "steps": {"faq_ms": 20, "answer_ms": ms - 20},
"cost_usd": 0.0001, "llm_calls": 1, "error_node": None if status == "success" else "Search FAQ",
"error_message": None if status == "success" else "timeout", **extra}
+668
View File
@@ -0,0 +1,668 @@
[
{"execution_id": 5001, "workflow": "helpdesk", "started_at": "2026-10-19T09:01:19", "user": "박서연", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1436, "steps": {"faq_ms": 39, "answer_ms": 1370}, "cost_usd": 0.00012},
{"execution_id": 5002, "workflow": "helpdesk", "started_at": "2026-10-19T09:05:24", "user": "강민수", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1494, "steps": {"faq_ms": 39, "answer_ms": 1398}, "cost_usd": 0.00012},
{"execution_id": 5003, "workflow": "helpdesk", "started_at": "2026-10-19T09:05:59", "user": "강민수", "topic": "와이파이", "question": "회의실 와이파이가 안 잡혀요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 58, "steps": {"faq_ms": 30, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5004, "workflow": "helpdesk", "started_at": "2026-10-19T09:06:28", "user": "오세훈", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 964, "steps": {"faq_ms": 16, "answer_ms": 926}, "cost_usd": 0.00012},
{"execution_id": 5005, "workflow": "helpdesk", "started_at": "2026-10-19T09:14:28", "user": "오세훈", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1445, "steps": {"faq_ms": 31, "answer_ms": 1363}, "cost_usd": 0.00012},
{"execution_id": 5006, "workflow": "helpdesk", "started_at": "2026-10-19T09:15:29", "user": "윤하늘", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 1029, "steps": {"faq_ms": 31, "answer_ms": 947}, "cost_usd": 0.00012},
{"execution_id": 5007, "workflow": "helpdesk", "started_at": "2026-10-19T09:22:27", "user": "오세훈", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2066, "steps": {"faq_ms": 30, "answer_ms": 2001}, "cost_usd": 0.00021},
{"execution_id": 5008, "workflow": "helpdesk", "started_at": "2026-10-19T09:31:29", "user": "윤하늘", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1010, "steps": {"faq_ms": 30, "answer_ms": 952}, "cost_usd": 0.00012},
{"execution_id": 5009, "workflow": "helpdesk", "started_at": "2026-10-19T09:39:15", "user": "한지훈", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 965, "steps": {"faq_ms": 19, "answer_ms": 912}, "cost_usd": 0.00012},
{"execution_id": 5010, "workflow": "helpdesk", "started_at": "2026-10-19T09:39:22", "user": "오세훈", "topic": "설치", "question": "라이선스 신청은 어디서 해요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1255, "steps": {"faq_ms": 23, "answer_ms": 1206}, "cost_usd": 0.00012},
{"execution_id": 5011, "workflow": "helpdesk", "started_at": "2026-10-19T09:41:40", "user": "오세훈", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1177, "steps": {"faq_ms": 24, "answer_ms": 1132}, "cost_usd": 0.00012},
{"execution_id": 5012, "workflow": "helpdesk", "started_at": "2026-10-19T09:44:12", "user": "박서연", "topic": "메일", "question": "메일함 용량이 꽉 찼대요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2041, "steps": {"faq_ms": 19, "answer_ms": 1996}, "cost_usd": 0.00021},
{"execution_id": 5013, "workflow": "helpdesk", "started_at": "2026-10-19T09:47:36", "user": "임도윤", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1019, "steps": {"faq_ms": 20, "answer_ms": 955}, "cost_usd": 0.00012},
{"execution_id": 5014, "workflow": "helpdesk", "started_at": "2026-10-19T09:48:17", "user": "윤하늘", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1192, "steps": {"faq_ms": 35, "answer_ms": 1119}, "cost_usd": 0.00012},
{"execution_id": 5015, "workflow": "helpdesk", "started_at": "2026-10-19T09:50:29", "user": "박서연", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1361, "steps": {"faq_ms": 21, "answer_ms": 1297}, "cost_usd": 0.00012},
{"execution_id": 5016, "workflow": "helpdesk", "started_at": "2026-10-19T09:50:43", "user": "임도윤", "topic": "설치", "question": "라이선스 신청은 어디서 해요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1383, "steps": {"faq_ms": 39, "answer_ms": 1299}, "cost_usd": 0.00012},
{"execution_id": 5017, "workflow": "helpdesk", "started_at": "2026-10-19T09:53:21", "user": "오세훈", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1425, "steps": {"faq_ms": 38, "answer_ms": 1348}, "cost_usd": 0.00012},
{"execution_id": 5018, "workflow": "helpdesk", "started_at": "2026-10-19T09:54:31", "user": "김민지", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1424, "steps": {"faq_ms": 26, "answer_ms": 1375}, "cost_usd": 0.00012},
{"execution_id": 5019, "workflow": "helpdesk", "started_at": "2026-10-19T09:54:42", "user": "서지아", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1490, "steps": {"faq_ms": 38, "answer_ms": 1392}, "cost_usd": 0.00012},
{"execution_id": 5020, "workflow": "helpdesk", "started_at": "2026-10-19T09:56:28", "user": "최유진", "topic": "설치", "question": "라이선스 신청은 어디서 해요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1484, "steps": {"faq_ms": 35, "answer_ms": 1396}, "cost_usd": 0.00012},
{"execution_id": 5021, "workflow": "helpdesk", "started_at": "2026-10-19T09:58:00", "user": "서지아", "topic": "설치", "question": "라이선스 신청은 어디서 해요? 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2229, "steps": {"faq_ms": 37, "answer_ms": 2133}, "cost_usd": 0.00021},
{"execution_id": 5022, "workflow": "helpdesk", "started_at": "2026-10-19T10:02:50", "user": "이준호", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1226, "steps": {"faq_ms": 19, "answer_ms": 1153}, "cost_usd": 0.00012},
{"execution_id": 5023, "workflow": "helpdesk", "started_at": "2026-10-19T10:04:03", "user": "박서연", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요? 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 2297, "steps": {"faq_ms": 16, "answer_ms": 2221}, "cost_usd": 0.00021},
{"execution_id": 5024, "workflow": "helpdesk", "started_at": "2026-10-19T10:19:26", "user": "서지아", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1222, "steps": {"faq_ms": 20, "answer_ms": 1177}, "cost_usd": 0.00012},
{"execution_id": 5025, "workflow": "helpdesk", "started_at": "2026-10-19T10:34:18", "user": "강민수", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1041, "steps": {"faq_ms": 17, "answer_ms": 991}, "cost_usd": 0.00012},
{"execution_id": 5026, "workflow": "helpdesk", "started_at": "2026-10-19T10:39:52", "user": "배수아", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1066, "steps": {"faq_ms": 22, "answer_ms": 997}, "cost_usd": 0.00012},
{"execution_id": 5027, "workflow": "helpdesk", "started_at": "2026-10-19T10:44:26", "user": "오세훈", "topic": "와이파이", "question": "와이파이가 자주 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 64, "steps": {"faq_ms": 32, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5028, "workflow": "helpdesk", "started_at": "2026-10-19T10:44:41", "user": "박서연", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1307, "steps": {"faq_ms": 35, "answer_ms": 1231}, "cost_usd": 0.00012},
{"execution_id": 5029, "workflow": "helpdesk", "started_at": "2026-10-19T10:45:28", "user": "임도윤", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1144, "steps": {"faq_ms": 31, "answer_ms": 1080}, "cost_usd": 0.00012},
{"execution_id": 5030, "workflow": "helpdesk", "started_at": "2026-10-19T10:47:45", "user": "한지훈", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1392, "steps": {"faq_ms": 19, "answer_ms": 1325}, "cost_usd": 0.00012},
{"execution_id": 5031, "workflow": "helpdesk", "started_at": "2026-10-19T10:49:17", "user": "윤하늘", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1187, "steps": {"faq_ms": 18, "answer_ms": 1145}, "cost_usd": 0.00012},
{"execution_id": 5032, "workflow": "helpdesk", "started_at": "2026-10-19T10:51:56", "user": "최유진", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1200, "steps": {"faq_ms": 33, "answer_ms": 1114}, "cost_usd": 0.00012},
{"execution_id": 5033, "workflow": "helpdesk", "started_at": "2026-10-19T11:03:12", "user": "배수아", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1046, "steps": {"faq_ms": 40, "answer_ms": 952}, "cost_usd": 0.00012},
{"execution_id": 5034, "workflow": "helpdesk", "started_at": "2026-10-19T11:09:52", "user": "윤하늘", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1172, "steps": {"faq_ms": 27, "answer_ms": 1098}, "cost_usd": 0.00012},
{"execution_id": 5035, "workflow": "helpdesk", "started_at": "2026-10-19T11:11:20", "user": "김민지", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1460, "steps": {"faq_ms": 24, "answer_ms": 1384}, "cost_usd": 0.00012},
{"execution_id": 5036, "workflow": "helpdesk", "started_at": "2026-10-19T11:22:11", "user": "임도윤", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1139, "steps": {"faq_ms": 27, "answer_ms": 1069}, "cost_usd": 0.00012},
{"execution_id": 5037, "workflow": "helpdesk", "started_at": "2026-10-19T11:32:53", "user": "서지아", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1011, "steps": {"faq_ms": 19, "answer_ms": 963}, "cost_usd": 0.00012},
{"execution_id": 5038, "workflow": "helpdesk", "started_at": "2026-10-19T11:39:38", "user": "윤하늘", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1404, "steps": {"faq_ms": 17, "answer_ms": 1351}, "cost_usd": 0.00012},
{"execution_id": 5039, "workflow": "helpdesk", "started_at": "2026-10-19T11:55:34", "user": "최유진", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 975, "steps": {"faq_ms": 37, "answer_ms": 912}, "cost_usd": 0.00012},
{"execution_id": 5040, "workflow": "helpdesk", "started_at": "2026-10-19T11:57:59", "user": "오세훈", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 1285, "steps": {"faq_ms": 35, "answer_ms": 1200}, "cost_usd": 0.00012},
{"execution_id": 5041, "workflow": "helpdesk", "started_at": "2026-10-19T12:01:02", "user": "오세훈", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2691, "steps": {"faq_ms": 16, "answer_ms": 2638}, "cost_usd": 0.00021},
{"execution_id": 5042, "workflow": "helpdesk", "started_at": "2026-10-19T12:32:12", "user": "박서연", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1071, "steps": {"faq_ms": 31, "answer_ms": 1018}, "cost_usd": 0.00012},
{"execution_id": 5043, "workflow": "helpdesk", "started_at": "2026-10-19T12:59:00", "user": "서지아", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1380, "steps": {"faq_ms": 32, "answer_ms": 1306}, "cost_usd": 0.00012},
{"execution_id": 5044, "workflow": "helpdesk", "started_at": "2026-10-19T13:16:29", "user": "이준호", "topic": "와이파이", "question": "와이파이가 자주 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 49, "steps": {"faq_ms": 17, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5045, "workflow": "helpdesk", "started_at": "2026-10-19T13:20:05", "user": "윤하늘", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1241, "steps": {"faq_ms": 18, "answer_ms": 1179}, "cost_usd": 0.00012},
{"execution_id": 5046, "workflow": "helpdesk", "started_at": "2026-10-19T13:31:30", "user": "서지아", "topic": "설치", "question": "라이선스 신청은 어디서 해요? 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2542, "steps": {"faq_ms": 20, "answer_ms": 2470}, "cost_usd": 0.00021},
{"execution_id": 5047, "workflow": "helpdesk", "started_at": "2026-10-19T13:33:24", "user": "배수아", "topic": "와이파이", "question": "사내 Wi-Fi 비밀번호가 뭐예요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 70, "steps": {"faq_ms": 30, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5048, "workflow": "helpdesk", "started_at": "2026-10-19T13:37:03", "user": "이준호", "topic": "VPN", "question": "VPN이 자꾸 끊겨요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2109, "steps": {"faq_ms": 32, "answer_ms": 2052}, "cost_usd": 0.00021},
{"execution_id": 5049, "workflow": "helpdesk", "started_at": "2026-10-19T13:51:37", "user": "배수아", "topic": "와이파이", "question": "와이파이가 자주 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 86, "steps": {"faq_ms": 28, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5050, "workflow": "helpdesk", "started_at": "2026-10-19T13:54:13", "user": "한지훈", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1049, "steps": {"faq_ms": 39, "answer_ms": 959}, "cost_usd": 0.00012},
{"execution_id": 5051, "workflow": "helpdesk", "started_at": "2026-10-19T14:00:54", "user": "윤하늘", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1446, "steps": {"faq_ms": 30, "answer_ms": 1385}, "cost_usd": 0.00012},
{"execution_id": 5052, "workflow": "helpdesk", "started_at": "2026-10-19T14:03:35", "user": "이준호", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1454, "steps": {"faq_ms": 26, "answer_ms": 1392}, "cost_usd": 0.00012},
{"execution_id": 5053, "workflow": "helpdesk", "started_at": "2026-10-19T14:04:41", "user": "강민수", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1463, "steps": {"faq_ms": 28, "answer_ms": 1381}, "cost_usd": 0.00012},
{"execution_id": 5054, "workflow": "helpdesk", "started_at": "2026-10-19T14:05:53", "user": "윤하늘", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1193, "steps": {"faq_ms": 26, "answer_ms": 1136}, "cost_usd": 0.00012},
{"execution_id": 5055, "workflow": "helpdesk", "started_at": "2026-10-19T14:25:07", "user": "최유진", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1467, "steps": {"faq_ms": 18, "answer_ms": 1396}, "cost_usd": 0.00012},
{"execution_id": 5056, "workflow": "helpdesk", "started_at": "2026-10-19T14:33:52", "user": "최유진", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1174, "steps": {"faq_ms": 22, "answer_ms": 1111}, "cost_usd": 0.00012},
{"execution_id": 5057, "workflow": "helpdesk", "started_at": "2026-10-19T14:44:25", "user": "이준호", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1305, "steps": {"faq_ms": 20, "answer_ms": 1263}, "cost_usd": 0.00012},
{"execution_id": 5058, "workflow": "helpdesk", "started_at": "2026-10-19T15:01:03", "user": "이준호", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1359, "steps": {"faq_ms": 21, "answer_ms": 1311}, "cost_usd": 0.00012},
{"execution_id": 5059, "workflow": "helpdesk", "started_at": "2026-10-19T15:20:46", "user": "박서연", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1280, "steps": {"faq_ms": 21, "answer_ms": 1224}, "cost_usd": 0.00012},
{"execution_id": 5060, "workflow": "helpdesk", "started_at": "2026-10-19T15:24:37", "user": "임도윤", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2415, "steps": {"faq_ms": 36, "answer_ms": 2322}, "cost_usd": 0.00021},
{"execution_id": 5061, "workflow": "helpdesk", "started_at": "2026-10-19T16:05:17", "user": "김민지", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요? 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2426, "steps": {"faq_ms": 23, "answer_ms": 2350}, "cost_usd": 0.00021},
{"execution_id": 5062, "workflow": "helpdesk", "started_at": "2026-10-19T16:12:46", "user": "윤하늘", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1356, "steps": {"faq_ms": 34, "answer_ms": 1275}, "cost_usd": 0.00012},
{"execution_id": 5063, "workflow": "helpdesk", "started_at": "2026-10-19T16:24:12", "user": "배수아", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 1061, "steps": {"faq_ms": 21, "answer_ms": 1007}, "cost_usd": 0.00012},
{"execution_id": 5064, "workflow": "helpdesk", "started_at": "2026-10-19T16:29:13", "user": "오세훈", "topic": "프린터", "question": "프린터 출력이 안 돼요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2829, "steps": {"faq_ms": 19, "answer_ms": 2768}, "cost_usd": 0.00021},
{"execution_id": 5065, "workflow": "helpdesk", "started_at": "2026-10-19T16:36:15", "user": "강민수", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1179, "steps": {"faq_ms": 24, "answer_ms": 1131}, "cost_usd": 0.00012},
{"execution_id": 5066, "workflow": "helpdesk", "started_at": "2026-10-19T16:36:24", "user": "박서연", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1391, "steps": {"faq_ms": 40, "answer_ms": 1306}, "cost_usd": 0.00012},
{"execution_id": 5067, "workflow": "helpdesk", "started_at": "2026-10-19T16:38:28", "user": "강민수", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 1399, "steps": {"faq_ms": 29, "answer_ms": 1321}, "cost_usd": 0.00012},
{"execution_id": 5068, "workflow": "helpdesk", "started_at": "2026-10-19T16:41:41", "user": "김민지", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 983, "steps": {"faq_ms": 36, "answer_ms": 920}, "cost_usd": 0.00012},
{"execution_id": 5069, "workflow": "helpdesk", "started_at": "2026-10-19T16:44:49", "user": "이준호", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1019, "steps": {"faq_ms": 24, "answer_ms": 948}, "cost_usd": 0.00012},
{"execution_id": 5070, "workflow": "helpdesk", "started_at": "2026-10-19T17:12:08", "user": "오세훈", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2537, "steps": {"faq_ms": 15, "answer_ms": 2484}, "cost_usd": 0.00021},
{"execution_id": 5071, "workflow": "helpdesk", "started_at": "2026-10-19T17:33:10", "user": "김민지", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1420, "steps": {"faq_ms": 21, "answer_ms": 1378}, "cost_usd": 0.00012},
{"execution_id": 5072, "workflow": "helpdesk", "started_at": "2026-10-19T17:40:29", "user": "윤하늘", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1391, "steps": {"faq_ms": 25, "answer_ms": 1343}, "cost_usd": 0.00012},
{"execution_id": 5073, "workflow": "helpdesk", "started_at": "2026-10-19T17:42:44", "user": "서지아", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1320, "steps": {"faq_ms": 22, "answer_ms": 1243}, "cost_usd": 0.00012},
{"execution_id": 5074, "workflow": "helpdesk", "started_at": "2026-10-20T09:05:18", "user": "서지아", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1346, "steps": {"faq_ms": 17, "answer_ms": 1297}, "cost_usd": 0.00012},
{"execution_id": 5075, "workflow": "helpdesk", "started_at": "2026-10-20T09:07:09", "user": "김민지", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1059, "steps": {"faq_ms": 40, "answer_ms": 991}, "cost_usd": 0.00012},
{"execution_id": 5076, "workflow": "helpdesk", "started_at": "2026-10-20T09:11:00", "user": "정우성", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1044, "steps": {"faq_ms": 16, "answer_ms": 981}, "cost_usd": 0.00012},
{"execution_id": 5077, "workflow": "helpdesk", "started_at": "2026-10-20T09:12:27", "user": "오세훈", "topic": "VPN", "question": "VPN이 자꾸 끊겨요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2367, "steps": {"faq_ms": 33, "answer_ms": 2282}, "cost_usd": 0.00021},
{"execution_id": 5078, "workflow": "helpdesk", "started_at": "2026-10-20T09:18:33", "user": "오세훈", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1075, "steps": {"faq_ms": 37, "answer_ms": 1008}, "cost_usd": 0.00012},
{"execution_id": 5079, "workflow": "helpdesk", "started_at": "2026-10-20T09:23:10", "user": "오세훈", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 971, "steps": {"faq_ms": 31, "answer_ms": 908}, "cost_usd": 0.00012},
{"execution_id": 5080, "workflow": "helpdesk", "started_at": "2026-10-20T09:45:03", "user": "한지훈", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2947, "steps": {"faq_ms": 16, "answer_ms": 2878}, "cost_usd": 0.00021},
{"execution_id": 5081, "workflow": "helpdesk", "started_at": "2026-10-20T11:00:01", "user": "윤하늘", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2516, "steps": {"faq_ms": 24, "answer_ms": 2469}, "cost_usd": 0.00021},
{"execution_id": 5082, "workflow": "helpdesk", "started_at": "2026-10-20T11:05:05", "user": "서지아", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1129, "steps": {"faq_ms": 18, "answer_ms": 1086}, "cost_usd": 0.00012},
{"execution_id": 5083, "workflow": "helpdesk", "started_at": "2026-10-20T11:16:13", "user": "이준호", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1190, "steps": {"faq_ms": 18, "answer_ms": 1145}, "cost_usd": 0.00012},
{"execution_id": 5084, "workflow": "helpdesk", "started_at": "2026-10-20T11:36:20", "user": "오세훈", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1045, "steps": {"faq_ms": 37, "answer_ms": 959}, "cost_usd": 0.00012},
{"execution_id": 5085, "workflow": "helpdesk", "started_at": "2026-10-20T11:45:27", "user": "임도윤", "topic": "와이파이", "question": "회의실 와이파이가 안 잡혀요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 42, "steps": {"faq_ms": 16, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5086, "workflow": "helpdesk", "started_at": "2026-10-20T12:06:54", "user": "정우성", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1198, "steps": {"faq_ms": 32, "answer_ms": 1131}, "cost_usd": 0.00012},
{"execution_id": 5087, "workflow": "helpdesk", "started_at": "2026-10-20T12:21:58", "user": "윤하늘", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 1452, "steps": {"faq_ms": 31, "answer_ms": 1366}, "cost_usd": 0.00012},
{"execution_id": 5088, "workflow": "helpdesk", "started_at": "2026-10-20T12:24:14", "user": "최유진", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1301, "steps": {"faq_ms": 31, "answer_ms": 1245}, "cost_usd": 0.00012},
{"execution_id": 5089, "workflow": "helpdesk", "started_at": "2026-10-20T12:28:56", "user": "정우성", "topic": "와이파이", "question": "회의실 와이파이가 안 잡혀요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 57, "steps": {"faq_ms": 34, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5090, "workflow": "helpdesk", "started_at": "2026-10-20T12:33:44", "user": "오세훈", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1029, "steps": {"faq_ms": 20, "answer_ms": 952}, "cost_usd": 0.00012},
{"execution_id": 5091, "workflow": "helpdesk", "started_at": "2026-10-20T12:34:16", "user": "한지훈", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1190, "steps": {"faq_ms": 26, "answer_ms": 1123}, "cost_usd": 0.00012},
{"execution_id": 5092, "workflow": "helpdesk", "started_at": "2026-10-20T12:38:55", "user": "정우성", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 2442, "steps": {"faq_ms": 39, "answer_ms": 2348}, "cost_usd": 0.00021},
{"execution_id": 5093, "workflow": "helpdesk", "started_at": "2026-10-20T12:40:04", "user": "이준호", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1175, "steps": {"faq_ms": 20, "answer_ms": 1095}, "cost_usd": 0.00012},
{"execution_id": 5094, "workflow": "helpdesk", "started_at": "2026-10-20T12:49:44", "user": "박서연", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1439, "steps": {"faq_ms": 17, "answer_ms": 1367}, "cost_usd": 0.00012},
{"execution_id": 5095, "workflow": "helpdesk", "started_at": "2026-10-20T12:51:11", "user": "임도윤", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1216, "steps": {"faq_ms": 27, "answer_ms": 1163}, "cost_usd": 0.00012},
{"execution_id": 5096, "workflow": "helpdesk", "started_at": "2026-10-20T12:55:39", "user": "윤하늘", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1058, "steps": {"faq_ms": 29, "answer_ms": 988}, "cost_usd": 0.00012},
{"execution_id": 5097, "workflow": "helpdesk", "started_at": "2026-10-20T12:58:26", "user": "정우성", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1227, "steps": {"faq_ms": 27, "answer_ms": 1152}, "cost_usd": 0.00012},
{"execution_id": 5098, "workflow": "helpdesk", "started_at": "2026-10-20T13:11:22", "user": "강민수", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1119, "steps": {"faq_ms": 34, "answer_ms": 1057}, "cost_usd": 0.00012},
{"execution_id": 5099, "workflow": "helpdesk", "started_at": "2026-10-20T13:25:11", "user": "정우성", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1071, "steps": {"faq_ms": 29, "answer_ms": 989}, "cost_usd": 0.00012},
{"execution_id": 5100, "workflow": "helpdesk", "started_at": "2026-10-20T13:37:51", "user": "서지아", "topic": "VPN", "question": "VPN이 자꾸 끊겨요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2675, "steps": {"faq_ms": 35, "answer_ms": 2582}, "cost_usd": 0.00021},
{"execution_id": 5101, "workflow": "helpdesk", "started_at": "2026-10-20T13:41:06", "user": "오세훈", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1034, "steps": {"faq_ms": 15, "answer_ms": 991}, "cost_usd": 0.00012},
{"execution_id": 5102, "workflow": "helpdesk", "started_at": "2026-10-20T13:42:27", "user": "정우성", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1454, "steps": {"faq_ms": 29, "answer_ms": 1381}, "cost_usd": 0.00012},
{"execution_id": 5103, "workflow": "helpdesk", "started_at": "2026-10-20T13:50:11", "user": "서지아", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1063, "steps": {"faq_ms": 40, "answer_ms": 975}, "cost_usd": 0.00012},
{"execution_id": 5104, "workflow": "helpdesk", "started_at": "2026-10-20T14:15:19", "user": "이준호", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요? 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2933, "steps": {"faq_ms": 35, "answer_ms": 2860}, "cost_usd": 0.00021},
{"execution_id": 5105, "workflow": "helpdesk", "started_at": "2026-10-20T14:17:09", "user": "강민수", "topic": "설치", "question": "라이선스 신청은 어디서 해요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1176, "steps": {"faq_ms": 35, "answer_ms": 1118}, "cost_usd": 0.00012},
{"execution_id": 5106, "workflow": "helpdesk", "started_at": "2026-10-20T14:21:14", "user": "오세훈", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1346, "steps": {"faq_ms": 40, "answer_ms": 1284}, "cost_usd": 0.00012},
{"execution_id": 5107, "workflow": "helpdesk", "started_at": "2026-10-20T14:41:11", "user": "최유진", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1065, "steps": {"faq_ms": 29, "answer_ms": 982}, "cost_usd": 0.00012},
{"execution_id": 5108, "workflow": "helpdesk", "started_at": "2026-10-20T15:00:49", "user": "이준호", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1332, "steps": {"faq_ms": 23, "answer_ms": 1269}, "cost_usd": 0.00012},
{"execution_id": 5109, "workflow": "helpdesk", "started_at": "2026-10-20T15:12:19", "user": "오세훈", "topic": "와이파이", "question": "와이파이가 자주 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 65, "steps": {"faq_ms": 25, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5110, "workflow": "helpdesk", "started_at": "2026-10-20T15:13:58", "user": "오세훈", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요? 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2310, "steps": {"faq_ms": 28, "answer_ms": 2244}, "cost_usd": 0.00021},
{"execution_id": 5111, "workflow": "helpdesk", "started_at": "2026-10-20T15:15:20", "user": "임도윤", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1453, "steps": {"faq_ms": 25, "answer_ms": 1393}, "cost_usd": 0.00012},
{"execution_id": 5112, "workflow": "helpdesk", "started_at": "2026-10-20T15:38:59", "user": "박서연", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1365, "steps": {"faq_ms": 36, "answer_ms": 1278}, "cost_usd": 0.00012},
{"execution_id": 5113, "workflow": "helpdesk", "started_at": "2026-10-20T15:48:32", "user": "임도윤", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1025, "steps": {"faq_ms": 27, "answer_ms": 949}, "cost_usd": 0.00012},
{"execution_id": 5114, "workflow": "helpdesk", "started_at": "2026-10-20T15:50:38", "user": "한지훈", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1284, "steps": {"faq_ms": 22, "answer_ms": 1233}, "cost_usd": 0.00012},
{"execution_id": 5115, "workflow": "helpdesk", "started_at": "2026-10-20T15:54:53", "user": "박서연", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1484, "steps": {"faq_ms": 36, "answer_ms": 1394}, "cost_usd": 0.00012},
{"execution_id": 5116, "workflow": "helpdesk", "started_at": "2026-10-20T15:55:27", "user": "배수아", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1291, "steps": {"faq_ms": 24, "answer_ms": 1208}, "cost_usd": 0.00012},
{"execution_id": 5117, "workflow": "helpdesk", "started_at": "2026-10-20T16:35:26", "user": "서지아", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 1437, "steps": {"faq_ms": 16, "answer_ms": 1365}, "cost_usd": 0.00012},
{"execution_id": 5118, "workflow": "helpdesk", "started_at": "2026-10-20T16:40:36", "user": "한지훈", "topic": "프린터", "question": "프린터 출력이 안 돼요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2498, "steps": {"faq_ms": 20, "answer_ms": 2440}, "cost_usd": 0.00021},
{"execution_id": 5119, "workflow": "helpdesk", "started_at": "2026-10-20T16:49:26", "user": "오세훈", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 973, "steps": {"faq_ms": 34, "answer_ms": 913}, "cost_usd": 0.00012},
{"execution_id": 5120, "workflow": "helpdesk", "started_at": "2026-10-20T16:53:51", "user": "한지훈", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1252, "steps": {"faq_ms": 15, "answer_ms": 1209}, "cost_usd": 0.00012},
{"execution_id": 5121, "workflow": "helpdesk", "started_at": "2026-10-20T16:55:57", "user": "김민지", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1307, "steps": {"faq_ms": 40, "answer_ms": 1235}, "cost_usd": 0.00012},
{"execution_id": 5122, "workflow": "helpdesk", "started_at": "2026-10-20T16:58:53", "user": "정우성", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1134, "steps": {"faq_ms": 29, "answer_ms": 1049}, "cost_usd": 0.00012},
{"execution_id": 5123, "workflow": "helpdesk", "started_at": "2026-10-20T17:15:15", "user": "박서연", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1091, "steps": {"faq_ms": 15, "answer_ms": 1033}, "cost_usd": 0.00012},
{"execution_id": 5124, "workflow": "helpdesk", "started_at": "2026-10-20T17:22:32", "user": "김민지", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 971, "steps": {"faq_ms": 28, "answer_ms": 922}, "cost_usd": 0.00012},
{"execution_id": 5125, "workflow": "helpdesk", "started_at": "2026-10-20T17:33:03", "user": "배수아", "topic": "와이파이", "question": "와이파이가 자주 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 59, "steps": {"faq_ms": 38, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5126, "workflow": "helpdesk", "started_at": "2026-10-20T17:37:01", "user": "이준호", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1182, "steps": {"faq_ms": 19, "answer_ms": 1141}, "cost_usd": 0.00012},
{"execution_id": 5127, "workflow": "helpdesk", "started_at": "2026-10-20T17:38:42", "user": "한지훈", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요? 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2318, "steps": {"faq_ms": 16, "answer_ms": 2258}, "cost_usd": 0.00021},
{"execution_id": 5128, "workflow": "helpdesk", "started_at": "2026-10-20T17:45:23", "user": "서지아", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1382, "steps": {"faq_ms": 17, "answer_ms": 1341}, "cost_usd": 0.00012},
{"execution_id": 5129, "workflow": "helpdesk", "started_at": "2026-10-20T17:46:18", "user": "정우성", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1021, "steps": {"faq_ms": 34, "answer_ms": 966}, "cost_usd": 0.00012},
{"execution_id": 5130, "workflow": "helpdesk", "started_at": "2026-10-20T17:50:20", "user": "한지훈", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1466, "steps": {"faq_ms": 31, "answer_ms": 1387}, "cost_usd": 0.00012},
{"execution_id": 5131, "workflow": "helpdesk", "started_at": "2026-10-21T09:00:36", "user": "정우성", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1072, "steps": {"faq_ms": 28, "answer_ms": 985}, "cost_usd": 0.00012},
{"execution_id": 5132, "workflow": "helpdesk", "started_at": "2026-10-21T09:05:01", "user": "서지아", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1216, "steps": {"faq_ms": 34, "answer_ms": 1123}, "cost_usd": 0.00012},
{"execution_id": 5133, "workflow": "helpdesk", "started_at": "2026-10-21T09:21:57", "user": "서지아", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요? 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2649, "steps": {"faq_ms": 31, "answer_ms": 2595}, "cost_usd": 0.00021},
{"execution_id": 5134, "workflow": "helpdesk", "started_at": "2026-10-21T09:27:45", "user": "배수아", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1352, "steps": {"faq_ms": 26, "answer_ms": 1288}, "cost_usd": 0.00012},
{"execution_id": 5135, "workflow": "helpdesk", "started_at": "2026-10-21T09:36:27", "user": "이준호", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1023, "steps": {"faq_ms": 18, "answer_ms": 963}, "cost_usd": 0.00012},
{"execution_id": 5136, "workflow": "helpdesk", "started_at": "2026-10-21T09:41:52", "user": "정우성", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1267, "steps": {"faq_ms": 27, "answer_ms": 1186}, "cost_usd": 0.00012},
{"execution_id": 5137, "workflow": "helpdesk", "started_at": "2026-10-21T09:45:14", "user": "오세훈", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1309, "steps": {"faq_ms": 38, "answer_ms": 1221}, "cost_usd": 0.00012},
{"execution_id": 5138, "workflow": "helpdesk", "started_at": "2026-10-21T09:47:37", "user": "이준호", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1377, "steps": {"faq_ms": 17, "answer_ms": 1323}, "cost_usd": 0.00012},
{"execution_id": 5139, "workflow": "helpdesk", "started_at": "2026-10-21T09:53:17", "user": "김민지", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2594, "steps": {"faq_ms": 36, "answer_ms": 2532}, "cost_usd": 0.00021},
{"execution_id": 5140, "workflow": "helpdesk", "started_at": "2026-10-21T10:09:21", "user": "윤하늘", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1219, "steps": {"faq_ms": 36, "answer_ms": 1134}, "cost_usd": 0.00012},
{"execution_id": 5141, "workflow": "helpdesk", "started_at": "2026-10-21T10:48:23", "user": "강민수", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요? 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2874, "steps": {"faq_ms": 19, "answer_ms": 2834}, "cost_usd": 0.00021},
{"execution_id": 5142, "workflow": "helpdesk", "started_at": "2026-10-21T11:09:13", "user": "배수아", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1286, "steps": {"faq_ms": 31, "answer_ms": 1205}, "cost_usd": 0.00012},
{"execution_id": 5143, "workflow": "helpdesk", "started_at": "2026-10-21T11:17:24", "user": "최유진", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1156, "steps": {"faq_ms": 21, "answer_ms": 1111}, "cost_usd": 0.00012},
{"execution_id": 5144, "workflow": "helpdesk", "started_at": "2026-10-21T11:24:52", "user": "오세훈", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1119, "steps": {"faq_ms": 18, "answer_ms": 1060}, "cost_usd": 0.00012},
{"execution_id": 5145, "workflow": "helpdesk", "started_at": "2026-10-21T11:27:44", "user": "배수아", "topic": "설치", "question": "라이선스 신청은 어디서 해요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1141, "steps": {"faq_ms": 30, "answer_ms": 1065}, "cost_usd": 0.00012},
{"execution_id": 5146, "workflow": "helpdesk", "started_at": "2026-10-21T11:31:35", "user": "오세훈", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1471, "steps": {"faq_ms": 36, "answer_ms": 1400}, "cost_usd": 0.00012},
{"execution_id": 5147, "workflow": "helpdesk", "started_at": "2026-10-21T11:34:31", "user": "이준호", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1429, "steps": {"faq_ms": 23, "answer_ms": 1376}, "cost_usd": 0.00012},
{"execution_id": 5148, "workflow": "helpdesk", "started_at": "2026-10-21T12:01:57", "user": "최유진", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1053, "steps": {"faq_ms": 23, "answer_ms": 1004}, "cost_usd": 0.00012},
{"execution_id": 5149, "workflow": "helpdesk", "started_at": "2026-10-21T12:18:52", "user": "오세훈", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1081, "steps": {"faq_ms": 27, "answer_ms": 1034}, "cost_usd": 0.00012},
{"execution_id": 5150, "workflow": "helpdesk", "started_at": "2026-10-21T12:22:51", "user": "윤하늘", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1009, "steps": {"faq_ms": 20, "answer_ms": 943}, "cost_usd": 0.00012},
{"execution_id": 5151, "workflow": "helpdesk", "started_at": "2026-10-21T12:39:07", "user": "정우성", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1066, "steps": {"faq_ms": 33, "answer_ms": 991}, "cost_usd": 0.00012},
{"execution_id": 5152, "workflow": "helpdesk", "started_at": "2026-10-21T12:40:09", "user": "오세훈", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1384, "steps": {"faq_ms": 19, "answer_ms": 1321}, "cost_usd": 0.00012},
{"execution_id": 5153, "workflow": "helpdesk", "started_at": "2026-10-21T12:40:23", "user": "오세훈", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1203, "steps": {"faq_ms": 23, "answer_ms": 1123}, "cost_usd": 0.00012},
{"execution_id": 5154, "workflow": "helpdesk", "started_at": "2026-10-21T12:43:33", "user": "정우성", "topic": "와이파이", "question": "회의실 와이파이가 안 잡혀요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 52, "steps": {"faq_ms": 18, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5155, "workflow": "helpdesk", "started_at": "2026-10-21T12:56:06", "user": "오세훈", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1336, "steps": {"faq_ms": 31, "answer_ms": 1283}, "cost_usd": 0.00012},
{"execution_id": 5156, "workflow": "helpdesk", "started_at": "2026-10-21T13:08:28", "user": "박서연", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1421, "steps": {"faq_ms": 24, "answer_ms": 1348}, "cost_usd": 0.00012},
{"execution_id": 5157, "workflow": "helpdesk", "started_at": "2026-10-21T13:08:58", "user": "임도윤", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1361, "steps": {"faq_ms": 23, "answer_ms": 1308}, "cost_usd": 0.00012},
{"execution_id": 5158, "workflow": "helpdesk", "started_at": "2026-10-21T13:34:53", "user": "김민지", "topic": "설치", "question": "라이선스 신청은 어디서 해요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1465, "steps": {"faq_ms": 20, "answer_ms": 1400}, "cost_usd": 0.00012},
{"execution_id": 5159, "workflow": "helpdesk", "started_at": "2026-10-21T13:56:38", "user": "박서연", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2471, "steps": {"faq_ms": 18, "answer_ms": 2421}, "cost_usd": 0.00021},
{"execution_id": 5160, "workflow": "helpdesk", "started_at": "2026-10-21T14:09:18", "user": "최유진", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1253, "steps": {"faq_ms": 25, "answer_ms": 1202}, "cost_usd": 0.00012},
{"execution_id": 5161, "workflow": "helpdesk", "started_at": "2026-10-21T14:14:04", "user": "정우성", "topic": "와이파이", "question": "와이파이가 자주 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 57, "steps": {"faq_ms": 24, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5162, "workflow": "helpdesk", "started_at": "2026-10-21T14:18:17", "user": "박서연", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요? 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2476, "steps": {"faq_ms": 37, "answer_ms": 2407}, "cost_usd": 0.00021},
{"execution_id": 5163, "workflow": "helpdesk", "started_at": "2026-10-21T14:19:31", "user": "오세훈", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1222, "steps": {"faq_ms": 31, "answer_ms": 1138}, "cost_usd": 0.00012},
{"execution_id": 5164, "workflow": "helpdesk", "started_at": "2026-10-21T14:28:43", "user": "김민지", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1376, "steps": {"faq_ms": 30, "answer_ms": 1288}, "cost_usd": 0.00012},
{"execution_id": 5165, "workflow": "helpdesk", "started_at": "2026-10-21T14:36:34", "user": "김민지", "topic": "설치", "question": "라이선스 신청은 어디서 해요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1174, "steps": {"faq_ms": 33, "answer_ms": 1098}, "cost_usd": 0.00012},
{"execution_id": 5166, "workflow": "helpdesk", "started_at": "2026-10-21T14:45:44", "user": "박서연", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 967, "steps": {"faq_ms": 22, "answer_ms": 918}, "cost_usd": 0.00012},
{"execution_id": 5167, "workflow": "helpdesk", "started_at": "2026-10-21T15:00:15", "user": "김민지", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요? 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2547, "steps": {"faq_ms": 16, "answer_ms": 2480}, "cost_usd": 0.00021},
{"execution_id": 5168, "workflow": "helpdesk", "started_at": "2026-10-21T15:24:31", "user": "윤하늘", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1209, "steps": {"faq_ms": 18, "answer_ms": 1139}, "cost_usd": 0.00012},
{"execution_id": 5169, "workflow": "helpdesk", "started_at": "2026-10-21T15:27:11", "user": "박서연", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 1379, "steps": {"faq_ms": 38, "answer_ms": 1296}, "cost_usd": 0.00012},
{"execution_id": 5170, "workflow": "helpdesk", "started_at": "2026-10-21T15:34:50", "user": "이준호", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1040, "steps": {"faq_ms": 35, "answer_ms": 983}, "cost_usd": 0.00012},
{"execution_id": 5171, "workflow": "helpdesk", "started_at": "2026-10-21T15:44:21", "user": "오세훈", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1120, "steps": {"faq_ms": 21, "answer_ms": 1039}, "cost_usd": 0.00012},
{"execution_id": 5172, "workflow": "helpdesk", "started_at": "2026-10-21T15:48:59", "user": "최유진", "topic": "와이파이", "question": "사내 Wi-Fi 비밀번호가 뭐예요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 39, "steps": {"faq_ms": 18, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5173, "workflow": "helpdesk", "started_at": "2026-10-21T15:54:52", "user": "배수아", "topic": "설치", "question": "라이선스 신청은 어디서 해요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1103, "steps": {"faq_ms": 29, "answer_ms": 1051}, "cost_usd": 0.00012},
{"execution_id": 5174, "workflow": "helpdesk", "started_at": "2026-10-21T16:21:14", "user": "이준호", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1442, "steps": {"faq_ms": 32, "answer_ms": 1361}, "cost_usd": 0.00012},
{"execution_id": 5175, "workflow": "helpdesk", "started_at": "2026-10-21T16:32:35", "user": "한지훈", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1002, "steps": {"faq_ms": 33, "answer_ms": 926}, "cost_usd": 0.00012},
{"execution_id": 5176, "workflow": "helpdesk", "started_at": "2026-10-21T16:33:02", "user": "강민수", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1111, "steps": {"faq_ms": 28, "answer_ms": 1038}, "cost_usd": 0.00012},
{"execution_id": 5177, "workflow": "helpdesk", "started_at": "2026-10-21T16:41:28", "user": "임도윤", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1379, "steps": {"faq_ms": 38, "answer_ms": 1312}, "cost_usd": 0.00012},
{"execution_id": 5178, "workflow": "helpdesk", "started_at": "2026-10-21T16:47:46", "user": "이준호", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1256, "steps": {"faq_ms": 27, "answer_ms": 1179}, "cost_usd": 0.00012},
{"execution_id": 5179, "workflow": "helpdesk", "started_at": "2026-10-21T16:50:19", "user": "김민지", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1273, "steps": {"faq_ms": 23, "answer_ms": 1204}, "cost_usd": 0.00012},
{"execution_id": 5180, "workflow": "helpdesk", "started_at": "2026-10-21T17:06:50", "user": "임도윤", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1381, "steps": {"faq_ms": 33, "answer_ms": 1316}, "cost_usd": 0.00012},
{"execution_id": 5181, "workflow": "helpdesk", "started_at": "2026-10-21T17:12:13", "user": "한지훈", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1142, "steps": {"faq_ms": 40, "answer_ms": 1065}, "cost_usd": 0.00012},
{"execution_id": 5182, "workflow": "helpdesk", "started_at": "2026-10-21T17:14:56", "user": "한지훈", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1328, "steps": {"faq_ms": 28, "answer_ms": 1277}, "cost_usd": 0.00012},
{"execution_id": 5183, "workflow": "helpdesk", "started_at": "2026-10-21T17:15:38", "user": "한지훈", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1386, "steps": {"faq_ms": 21, "answer_ms": 1330}, "cost_usd": 0.00012},
{"execution_id": 5184, "workflow": "helpdesk", "started_at": "2026-10-21T17:17:23", "user": "윤하늘", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1378, "steps": {"faq_ms": 37, "answer_ms": 1289}, "cost_usd": 0.00012},
{"execution_id": 5185, "workflow": "helpdesk", "started_at": "2026-10-21T17:27:56", "user": "배수아", "topic": "설치", "question": "라이선스 신청은 어디서 해요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1032, "steps": {"faq_ms": 16, "answer_ms": 963}, "cost_usd": 0.00012},
{"execution_id": 5186, "workflow": "helpdesk", "started_at": "2026-10-21T17:44:54", "user": "서지아", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1036, "steps": {"faq_ms": 23, "answer_ms": 975}, "cost_usd": 0.00012},
{"execution_id": 5187, "workflow": "helpdesk", "started_at": "2026-10-21T17:45:11", "user": "한지훈", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1112, "steps": {"faq_ms": 26, "answer_ms": 1049}, "cost_usd": 0.00012},
{"execution_id": 5188, "workflow": "helpdesk", "started_at": "2026-10-21T17:46:37", "user": "오세훈", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1061, "steps": {"faq_ms": 21, "answer_ms": 984}, "cost_usd": 0.00012},
{"execution_id": 5189, "workflow": "helpdesk", "started_at": "2026-10-21T17:46:53", "user": "이준호", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1359, "steps": {"faq_ms": 30, "answer_ms": 1281}, "cost_usd": 0.00012},
{"execution_id": 5190, "workflow": "helpdesk", "started_at": "2026-10-21T17:57:20", "user": "임도윤", "topic": "와이파이", "question": "와이파이가 자주 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 78, "steps": {"faq_ms": 26, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5191, "workflow": "helpdesk", "started_at": "2026-10-22T09:09:32", "user": "김민지", "topic": "와이파이", "question": "사내 Wi-Fi 비밀번호가 뭐예요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 84, "steps": {"faq_ms": 33, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5192, "workflow": "helpdesk", "started_at": "2026-10-22T09:12:25", "user": "오세훈", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1239, "steps": {"faq_ms": 26, "answer_ms": 1170}, "cost_usd": 0.00012},
{"execution_id": 5193, "workflow": "helpdesk", "started_at": "2026-10-22T09:43:33", "user": "최유진", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1331, "steps": {"faq_ms": 35, "answer_ms": 1243}, "cost_usd": 0.00012},
{"execution_id": 5194, "workflow": "helpdesk", "started_at": "2026-10-22T09:55:01", "user": "한지훈", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1259, "steps": {"faq_ms": 33, "answer_ms": 1204}, "cost_usd": 0.00012},
{"execution_id": 5195, "workflow": "helpdesk", "started_at": "2026-10-22T10:06:23", "user": "박서연", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1172, "steps": {"faq_ms": 17, "answer_ms": 1134}, "cost_usd": 0.00012},
{"execution_id": 5196, "workflow": "helpdesk", "started_at": "2026-10-22T10:10:47", "user": "윤하늘", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1182, "steps": {"faq_ms": 16, "answer_ms": 1138}, "cost_usd": 0.00012},
{"execution_id": 5197, "workflow": "helpdesk", "started_at": "2026-10-22T10:16:46", "user": "박서연", "topic": "VPN", "question": "VPN이 자꾸 끊겨요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2859, "steps": {"faq_ms": 37, "answer_ms": 2767}, "cost_usd": 0.00021},
{"execution_id": 5198, "workflow": "helpdesk", "started_at": "2026-10-22T10:26:16", "user": "한지훈", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1209, "steps": {"faq_ms": 23, "answer_ms": 1139}, "cost_usd": 0.00012},
{"execution_id": 5199, "workflow": "helpdesk", "started_at": "2026-10-22T10:38:33", "user": "배수아", "topic": "와이파이", "question": "회의실 와이파이가 안 잡혀요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 70, "steps": {"faq_ms": 23, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5200, "workflow": "helpdesk", "started_at": "2026-10-22T10:45:18", "user": "정우성", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1101, "steps": {"faq_ms": 33, "answer_ms": 1046}, "cost_usd": 0.00012},
{"execution_id": 5201, "workflow": "helpdesk", "started_at": "2026-10-22T10:50:08", "user": "박서연", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1122, "steps": {"faq_ms": 38, "answer_ms": 1030}, "cost_usd": 0.00012},
{"execution_id": 5202, "workflow": "helpdesk", "started_at": "2026-10-22T11:12:40", "user": "한지훈", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1082, "steps": {"faq_ms": 40, "answer_ms": 983}, "cost_usd": 0.00012},
{"execution_id": 5203, "workflow": "helpdesk", "started_at": "2026-10-22T11:29:02", "user": "강민수", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1113, "steps": {"faq_ms": 39, "answer_ms": 1046}, "cost_usd": 0.00012},
{"execution_id": 5204, "workflow": "helpdesk", "started_at": "2026-10-22T11:31:15", "user": "이준호", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1329, "steps": {"faq_ms": 33, "answer_ms": 1247}, "cost_usd": 0.00012},
{"execution_id": 5205, "workflow": "helpdesk", "started_at": "2026-10-22T11:45:19", "user": "정우성", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1193, "steps": {"faq_ms": 36, "answer_ms": 1109}, "cost_usd": 0.00012},
{"execution_id": 5206, "workflow": "helpdesk", "started_at": "2026-10-22T11:49:41", "user": "윤하늘", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1434, "steps": {"faq_ms": 33, "answer_ms": 1341}, "cost_usd": 0.00012},
{"execution_id": 5207, "workflow": "helpdesk", "started_at": "2026-10-22T12:04:52", "user": "이준호", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1262, "steps": {"faq_ms": 25, "answer_ms": 1191}, "cost_usd": 0.00012},
{"execution_id": 5208, "workflow": "helpdesk", "started_at": "2026-10-22T12:08:04", "user": "배수아", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1125, "steps": {"faq_ms": 24, "answer_ms": 1064}, "cost_usd": 0.00012},
{"execution_id": 5209, "workflow": "helpdesk", "started_at": "2026-10-22T12:21:54", "user": "임도윤", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1320, "steps": {"faq_ms": 18, "answer_ms": 1248}, "cost_usd": 0.00012},
{"execution_id": 5210, "workflow": "helpdesk", "started_at": "2026-10-22T12:36:29", "user": "한지훈", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1253, "steps": {"faq_ms": 33, "answer_ms": 1183}, "cost_usd": 0.00012},
{"execution_id": 5211, "workflow": "helpdesk", "started_at": "2026-10-22T12:41:28", "user": "서지아", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1415, "steps": {"faq_ms": 30, "answer_ms": 1363}, "cost_usd": 0.00012},
{"execution_id": 5212, "workflow": "helpdesk", "started_at": "2026-10-22T12:47:19", "user": "오세훈", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1134, "steps": {"faq_ms": 19, "answer_ms": 1066}, "cost_usd": 0.00012},
{"execution_id": 5213, "workflow": "helpdesk", "started_at": "2026-10-22T12:58:07", "user": "최유진", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1146, "steps": {"faq_ms": 18, "answer_ms": 1082}, "cost_usd": 0.00012},
{"execution_id": 5214, "workflow": "helpdesk", "started_at": "2026-10-22T13:04:42", "user": "한지훈", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1201, "steps": {"faq_ms": 23, "answer_ms": 1141}, "cost_usd": 0.00012},
{"execution_id": 5215, "workflow": "helpdesk", "started_at": "2026-10-22T13:13:01", "user": "오세훈", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 988, "steps": {"faq_ms": 21, "answer_ms": 920}, "cost_usd": 0.00012},
{"execution_id": 5216, "workflow": "helpdesk", "started_at": "2026-10-22T13:15:44", "user": "이준호", "topic": "설치", "question": "라이선스 신청은 어디서 해요? 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2720, "steps": {"faq_ms": 35, "answer_ms": 2657}, "cost_usd": 0.00021},
{"execution_id": 5217, "workflow": "helpdesk", "started_at": "2026-10-22T13:22:45", "user": "오세훈", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1186, "steps": {"faq_ms": 39, "answer_ms": 1116}, "cost_usd": 0.00012},
{"execution_id": 5218, "workflow": "helpdesk", "started_at": "2026-10-22T13:25:46", "user": "오세훈", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 1190, "steps": {"faq_ms": 37, "answer_ms": 1106}, "cost_usd": 0.00012},
{"execution_id": 5219, "workflow": "helpdesk", "started_at": "2026-10-22T13:26:43", "user": "배수아", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1033, "steps": {"faq_ms": 37, "answer_ms": 960}, "cost_usd": 0.00012},
{"execution_id": 5220, "workflow": "helpdesk", "started_at": "2026-10-22T13:37:08", "user": "최유진", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 1424, "steps": {"faq_ms": 18, "answer_ms": 1386}, "cost_usd": 0.00012},
{"execution_id": 5221, "workflow": "helpdesk", "started_at": "2026-10-22T13:46:07", "user": "서지아", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1105, "steps": {"faq_ms": 20, "answer_ms": 1026}, "cost_usd": 0.00012},
{"execution_id": 5222, "workflow": "helpdesk", "started_at": "2026-10-22T13:47:08", "user": "한지훈", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1353, "steps": {"faq_ms": 25, "answer_ms": 1287}, "cost_usd": 0.00012},
{"execution_id": 5223, "workflow": "helpdesk", "started_at": "2026-10-22T13:52:49", "user": "최유진", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요? 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2497, "steps": {"faq_ms": 35, "answer_ms": 2440}, "cost_usd": 0.00021},
{"execution_id": 5224, "workflow": "helpdesk", "started_at": "2026-10-22T13:55:58", "user": "김민지", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 1119, "steps": {"faq_ms": 27, "answer_ms": 1048}, "cost_usd": 0.00012},
{"execution_id": 5225, "workflow": "helpdesk", "started_at": "2026-10-22T13:56:36", "user": "배수아", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1035, "steps": {"faq_ms": 28, "answer_ms": 978}, "cost_usd": 0.00012},
{"execution_id": 5226, "workflow": "helpdesk", "started_at": "2026-10-22T14:07:51", "user": "이준호", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 998, "steps": {"faq_ms": 33, "answer_ms": 921}, "cost_usd": 0.00012},
{"execution_id": 5227, "workflow": "helpdesk", "started_at": "2026-10-22T14:15:32", "user": "오세훈", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 1030, "steps": {"faq_ms": 36, "answer_ms": 935}, "cost_usd": 0.00012},
{"execution_id": 5228, "workflow": "helpdesk", "started_at": "2026-10-22T14:25:55", "user": "임도윤", "topic": "설치", "question": "라이선스 신청은 어디서 해요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1384, "steps": {"faq_ms": 34, "answer_ms": 1327}, "cost_usd": 0.00012},
{"execution_id": 5229, "workflow": "helpdesk", "started_at": "2026-10-22T14:51:54", "user": "서지아", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1260, "steps": {"faq_ms": 17, "answer_ms": 1215}, "cost_usd": 0.00012},
{"execution_id": 5230, "workflow": "helpdesk", "started_at": "2026-10-22T14:54:14", "user": "최유진", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1316, "steps": {"faq_ms": 26, "answer_ms": 1266}, "cost_usd": 0.00012},
{"execution_id": 5231, "workflow": "helpdesk", "started_at": "2026-10-22T15:03:52", "user": "임도윤", "topic": "프린터", "question": "프린터 출력이 안 돼요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2467, "steps": {"faq_ms": 29, "answer_ms": 2413}, "cost_usd": 0.00021},
{"execution_id": 5232, "workflow": "helpdesk", "started_at": "2026-10-22T15:10:43", "user": "서지아", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2354, "steps": {"faq_ms": 31, "answer_ms": 2280}, "cost_usd": 0.00021},
{"execution_id": 5233, "workflow": "helpdesk", "started_at": "2026-10-22T15:22:35", "user": "서지아", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1256, "steps": {"faq_ms": 28, "answer_ms": 1185}, "cost_usd": 0.00012},
{"execution_id": 5234, "workflow": "helpdesk", "started_at": "2026-10-22T15:50:43", "user": "윤하늘", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1367, "steps": {"faq_ms": 17, "answer_ms": 1329}, "cost_usd": 0.00012},
{"execution_id": 5235, "workflow": "helpdesk", "started_at": "2026-10-22T15:53:03", "user": "한지훈", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 941, "steps": {"faq_ms": 17, "answer_ms": 903}, "cost_usd": 0.00012},
{"execution_id": 5236, "workflow": "helpdesk", "started_at": "2026-10-22T16:02:28", "user": "정우성", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 991, "steps": {"faq_ms": 38, "answer_ms": 914}, "cost_usd": 0.00012},
{"execution_id": 5237, "workflow": "helpdesk", "started_at": "2026-10-22T16:19:25", "user": "정우성", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 965, "steps": {"faq_ms": 20, "answer_ms": 914}, "cost_usd": 0.00012},
{"execution_id": 5238, "workflow": "helpdesk", "started_at": "2026-10-22T16:52:28", "user": "정우성", "topic": "설치", "question": "라이선스 신청은 어디서 해요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1214, "steps": {"faq_ms": 35, "answer_ms": 1125}, "cost_usd": 0.00012},
{"execution_id": 5239, "workflow": "helpdesk", "started_at": "2026-10-22T17:03:58", "user": "배수아", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1263, "steps": {"faq_ms": 15, "answer_ms": 1215}, "cost_usd": 0.00012},
{"execution_id": 5240, "workflow": "helpdesk", "started_at": "2026-10-22T17:20:32", "user": "강민수", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1256, "steps": {"faq_ms": 30, "answer_ms": 1201}, "cost_usd": 0.00012},
{"execution_id": 5241, "workflow": "helpdesk", "started_at": "2026-10-22T17:21:11", "user": "김민지", "topic": "VPN", "question": "VPN이 자꾸 끊겨요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2480, "steps": {"faq_ms": 38, "answer_ms": 2386}, "cost_usd": 0.00021},
{"execution_id": 5242, "workflow": "helpdesk", "started_at": "2026-10-22T17:31:39", "user": "배수아", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1196, "steps": {"faq_ms": 36, "answer_ms": 1131}, "cost_usd": 0.00012},
{"execution_id": 5243, "workflow": "helpdesk", "started_at": "2026-10-22T17:33:39", "user": "박서연", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 954, "steps": {"faq_ms": 18, "answer_ms": 907}, "cost_usd": 0.00012},
{"execution_id": 5244, "workflow": "helpdesk", "started_at": "2026-10-22T17:40:12", "user": "윤하늘", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1280, "steps": {"faq_ms": 16, "answer_ms": 1220}, "cost_usd": 0.00012},
{"execution_id": 5245, "workflow": "helpdesk", "started_at": "2026-10-22T17:46:29", "user": "박서연", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 1381, "steps": {"faq_ms": 32, "answer_ms": 1301}, "cost_usd": 0.00012},
{"execution_id": 5246, "workflow": "helpdesk", "started_at": "2026-10-23T09:03:08", "user": "이준호", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1266, "steps": {"faq_ms": 29, "answer_ms": 1181}, "cost_usd": 0.00012},
{"execution_id": 5247, "workflow": "helpdesk", "started_at": "2026-10-23T09:03:49", "user": "강민수", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1329, "steps": {"faq_ms": 18, "answer_ms": 1257}, "cost_usd": 0.00012},
{"execution_id": 5248, "workflow": "helpdesk", "started_at": "2026-10-23T09:04:11", "user": "임도윤", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1297, "steps": {"faq_ms": 25, "answer_ms": 1229}, "cost_usd": 0.00012},
{"execution_id": 5249, "workflow": "helpdesk", "started_at": "2026-10-23T09:06:41", "user": "김민지", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1231, "steps": {"faq_ms": 22, "answer_ms": 1179}, "cost_usd": 0.00012},
{"execution_id": 5250, "workflow": "helpdesk", "started_at": "2026-10-23T09:09:24", "user": "강민수", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2970, "steps": {"faq_ms": 36, "answer_ms": 2882}, "cost_usd": 0.00021},
{"execution_id": 5251, "workflow": "helpdesk", "started_at": "2026-10-23T09:13:05", "user": "정우성", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1207, "steps": {"faq_ms": 16, "answer_ms": 1131}, "cost_usd": 0.00012},
{"execution_id": 5252, "workflow": "helpdesk", "started_at": "2026-10-23T09:20:45", "user": "강민수", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1267, "steps": {"faq_ms": 19, "answer_ms": 1228}, "cost_usd": 0.00012},
{"execution_id": 5253, "workflow": "helpdesk", "started_at": "2026-10-23T09:51:04", "user": "배수아", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1418, "steps": {"faq_ms": 27, "answer_ms": 1371}, "cost_usd": 0.00012},
{"execution_id": 5254, "workflow": "helpdesk", "started_at": "2026-10-23T10:03:57", "user": "임도윤", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1441, "steps": {"faq_ms": 19, "answer_ms": 1364}, "cost_usd": 0.00012},
{"execution_id": 5255, "workflow": "helpdesk", "started_at": "2026-10-23T10:34:14", "user": "윤하늘", "topic": "설치", "question": "라이선스 신청은 어디서 해요? 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2507, "steps": {"faq_ms": 29, "answer_ms": 2424}, "cost_usd": 0.00021},
{"execution_id": 5256, "workflow": "helpdesk", "started_at": "2026-10-23T10:35:00", "user": "오세훈", "topic": "와이파이", "question": "와이파이가 자주 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 45, "steps": {"faq_ms": 16, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5257, "workflow": "helpdesk", "started_at": "2026-10-23T10:37:36", "user": "오세훈", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1169, "steps": {"faq_ms": 19, "answer_ms": 1101}, "cost_usd": 0.00012},
{"execution_id": 5258, "workflow": "helpdesk", "started_at": "2026-10-23T10:42:06", "user": "정우성", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1138, "steps": {"faq_ms": 29, "answer_ms": 1059}, "cost_usd": 0.00012},
{"execution_id": 5259, "workflow": "helpdesk", "started_at": "2026-10-23T11:08:29", "user": "최유진", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1447, "steps": {"faq_ms": 18, "answer_ms": 1383}, "cost_usd": 0.00012},
{"execution_id": 5260, "workflow": "helpdesk", "started_at": "2026-10-23T11:08:48", "user": "오세훈", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 965, "steps": {"faq_ms": 16, "answer_ms": 910}, "cost_usd": 0.00012},
{"execution_id": 5261, "workflow": "helpdesk", "started_at": "2026-10-23T11:26:37", "user": "윤하늘", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요? 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2480, "steps": {"faq_ms": 27, "answer_ms": 2398}, "cost_usd": 0.00021},
{"execution_id": 5262, "workflow": "helpdesk", "started_at": "2026-10-23T11:31:47", "user": "오세훈", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1364, "steps": {"faq_ms": 35, "answer_ms": 1297}, "cost_usd": 0.00012},
{"execution_id": 5263, "workflow": "helpdesk", "started_at": "2026-10-23T12:01:36", "user": "서지아", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1382, "steps": {"faq_ms": 18, "answer_ms": 1308}, "cost_usd": 0.00012},
{"execution_id": 5264, "workflow": "helpdesk", "started_at": "2026-10-23T12:07:37", "user": "박서연", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1317, "steps": {"faq_ms": 33, "answer_ms": 1252}, "cost_usd": 0.00012},
{"execution_id": 5265, "workflow": "helpdesk", "started_at": "2026-10-23T12:18:58", "user": "서지아", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1049, "steps": {"faq_ms": 20, "answer_ms": 1001}, "cost_usd": 0.00012},
{"execution_id": 5266, "workflow": "helpdesk", "started_at": "2026-10-23T12:19:33", "user": "한지훈", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1322, "steps": {"faq_ms": 28, "answer_ms": 1255}, "cost_usd": 0.00012},
{"execution_id": 5267, "workflow": "helpdesk", "started_at": "2026-10-23T12:29:30", "user": "강민수", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1202, "steps": {"faq_ms": 29, "answer_ms": 1138}, "cost_usd": 0.00012},
{"execution_id": 5268, "workflow": "helpdesk", "started_at": "2026-10-23T12:38:15", "user": "정우성", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1023, "steps": {"faq_ms": 35, "answer_ms": 952}, "cost_usd": 0.00012},
{"execution_id": 5269, "workflow": "helpdesk", "started_at": "2026-10-23T12:56:58", "user": "최유진", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1224, "steps": {"faq_ms": 20, "answer_ms": 1173}, "cost_usd": 0.00012},
{"execution_id": 5270, "workflow": "helpdesk", "started_at": "2026-10-23T13:03:47", "user": "박서연", "topic": "설치", "question": "라이선스 신청은 어디서 해요? 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2326, "steps": {"faq_ms": 27, "answer_ms": 2272}, "cost_usd": 0.00021},
{"execution_id": 5271, "workflow": "helpdesk", "started_at": "2026-10-23T13:09:50", "user": "한지훈", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1284, "steps": {"faq_ms": 33, "answer_ms": 1224}, "cost_usd": 0.00012},
{"execution_id": 5272, "workflow": "helpdesk", "started_at": "2026-10-23T13:46:52", "user": "한지훈", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1405, "steps": {"faq_ms": 22, "answer_ms": 1343}, "cost_usd": 0.00012},
{"execution_id": 5273, "workflow": "helpdesk", "started_at": "2026-10-23T14:02:06", "user": "배수아", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1322, "steps": {"faq_ms": 25, "answer_ms": 1262}, "cost_usd": 0.00012},
{"execution_id": 5274, "workflow": "helpdesk", "started_at": "2026-10-23T14:12:59", "user": "박서연", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2530, "steps": {"faq_ms": 29, "answer_ms": 2451}, "cost_usd": 0.00021},
{"execution_id": 5275, "workflow": "helpdesk", "started_at": "2026-10-23T14:19:20", "user": "강민수", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1162, "steps": {"faq_ms": 34, "answer_ms": 1100}, "cost_usd": 0.00012},
{"execution_id": 5276, "workflow": "helpdesk", "started_at": "2026-10-23T14:28:51", "user": "박서연", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1265, "steps": {"faq_ms": 20, "answer_ms": 1189}, "cost_usd": 0.00012},
{"execution_id": 5277, "workflow": "helpdesk", "started_at": "2026-10-23T14:30:05", "user": "윤하늘", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1455, "steps": {"faq_ms": 20, "answer_ms": 1386}, "cost_usd": 0.00012},
{"execution_id": 5278, "workflow": "helpdesk", "started_at": "2026-10-23T14:31:58", "user": "정우성", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1040, "steps": {"faq_ms": 21, "answer_ms": 983}, "cost_usd": 0.00012},
{"execution_id": 5279, "workflow": "helpdesk", "started_at": "2026-10-23T14:42:28", "user": "임도윤", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1076, "steps": {"faq_ms": 23, "answer_ms": 1031}, "cost_usd": 0.00012},
{"execution_id": 5280, "workflow": "helpdesk", "started_at": "2026-10-23T14:44:50", "user": "서지아", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1320, "steps": {"faq_ms": 34, "answer_ms": 1250}, "cost_usd": 0.00012},
{"execution_id": 5281, "workflow": "helpdesk", "started_at": "2026-10-23T14:45:05", "user": "임도윤", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1327, "steps": {"faq_ms": 20, "answer_ms": 1268}, "cost_usd": 0.00012},
{"execution_id": 5282, "workflow": "helpdesk", "started_at": "2026-10-23T14:46:56", "user": "김민지", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 967, "steps": {"faq_ms": 15, "answer_ms": 925}, "cost_usd": 0.00012},
{"execution_id": 5283, "workflow": "helpdesk", "started_at": "2026-10-23T14:47:56", "user": "임도윤", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1344, "steps": {"faq_ms": 19, "answer_ms": 1280}, "cost_usd": 0.00012},
{"execution_id": 5284, "workflow": "helpdesk", "started_at": "2026-10-23T14:54:58", "user": "윤하늘", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1253, "steps": {"faq_ms": 33, "answer_ms": 1199}, "cost_usd": 0.00012},
{"execution_id": 5285, "workflow": "helpdesk", "started_at": "2026-10-23T14:58:37", "user": "오세훈", "topic": "설치", "question": "라이선스 신청은 어디서 해요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1476, "steps": {"faq_ms": 17, "answer_ms": 1400}, "cost_usd": 0.00012},
{"execution_id": 5286, "workflow": "helpdesk", "started_at": "2026-10-23T15:02:03", "user": "이준호", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1474, "steps": {"faq_ms": 39, "answer_ms": 1384}, "cost_usd": 0.00012},
{"execution_id": 5287, "workflow": "helpdesk", "started_at": "2026-10-23T15:09:29", "user": "강민수", "topic": "와이파이", "question": "와이파이가 자주 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 65, "steps": {"faq_ms": 27, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5288, "workflow": "helpdesk", "started_at": "2026-10-23T15:23:50", "user": "배수아", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1338, "steps": {"faq_ms": 24, "answer_ms": 1291}, "cost_usd": 0.00012},
{"execution_id": 5289, "workflow": "helpdesk", "started_at": "2026-10-23T15:28:11", "user": "한지훈", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1217, "steps": {"faq_ms": 29, "answer_ms": 1144}, "cost_usd": 0.00012},
{"execution_id": 5290, "workflow": "helpdesk", "started_at": "2026-10-23T15:29:08", "user": "한지훈", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 999, "steps": {"faq_ms": 31, "answer_ms": 923}, "cost_usd": 0.00012},
{"execution_id": 5291, "workflow": "helpdesk", "started_at": "2026-10-23T15:30:00", "user": "이준호", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 1466, "steps": {"faq_ms": 25, "answer_ms": 1400}, "cost_usd": 0.00012},
{"execution_id": 5292, "workflow": "helpdesk", "started_at": "2026-10-23T15:39:17", "user": "배수아", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1001, "steps": {"faq_ms": 15, "answer_ms": 958}, "cost_usd": 0.00012},
{"execution_id": 5293, "workflow": "helpdesk", "started_at": "2026-10-23T15:56:51", "user": "한지훈", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1127, "steps": {"faq_ms": 15, "answer_ms": 1057}, "cost_usd": 0.00012},
{"execution_id": 5294, "workflow": "helpdesk", "started_at": "2026-10-23T15:57:24", "user": "강민수", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1185, "steps": {"faq_ms": 16, "answer_ms": 1134}, "cost_usd": 0.00012},
{"execution_id": 5295, "workflow": "helpdesk", "started_at": "2026-10-23T16:04:45", "user": "정우성", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1102, "steps": {"faq_ms": 29, "answer_ms": 1027}, "cost_usd": 0.00012},
{"execution_id": 5296, "workflow": "helpdesk", "started_at": "2026-10-23T16:14:42", "user": "박서연", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1355, "steps": {"faq_ms": 37, "answer_ms": 1297}, "cost_usd": 0.00012},
{"execution_id": 5297, "workflow": "helpdesk", "started_at": "2026-10-23T16:16:18", "user": "윤하늘", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1159, "steps": {"faq_ms": 26, "answer_ms": 1080}, "cost_usd": 0.00012},
{"execution_id": 5298, "workflow": "helpdesk", "started_at": "2026-10-23T16:24:14", "user": "최유진", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1227, "steps": {"faq_ms": 32, "answer_ms": 1150}, "cost_usd": 0.00012},
{"execution_id": 5299, "workflow": "helpdesk", "started_at": "2026-10-23T16:29:56", "user": "이준호", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1321, "steps": {"faq_ms": 31, "answer_ms": 1259}, "cost_usd": 0.00012},
{"execution_id": 5300, "workflow": "helpdesk", "started_at": "2026-10-23T16:42:02", "user": "이준호", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1242, "steps": {"faq_ms": 28, "answer_ms": 1186}, "cost_usd": 0.00012},
{"execution_id": 5301, "workflow": "helpdesk", "started_at": "2026-10-23T16:42:02", "user": "서지아", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1101, "steps": {"faq_ms": 30, "answer_ms": 1038}, "cost_usd": 0.00012},
{"execution_id": 5302, "workflow": "helpdesk", "started_at": "2026-10-23T17:06:42", "user": "배수아", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1205, "steps": {"faq_ms": 20, "answer_ms": 1128}, "cost_usd": 0.00012},
{"execution_id": 5303, "workflow": "helpdesk", "started_at": "2026-10-23T17:32:14", "user": "강민수", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1185, "steps": {"faq_ms": 37, "answer_ms": 1097}, "cost_usd": 0.00012},
{"execution_id": 5304, "workflow": "helpdesk", "started_at": "2026-10-23T17:34:22", "user": "김민지", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 1380, "steps": {"faq_ms": 17, "answer_ms": 1306}, "cost_usd": 0.00012},
{"execution_id": 5305, "workflow": "helpdesk", "started_at": "2026-10-23T17:34:54", "user": "윤하늘", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 959, "steps": {"faq_ms": 28, "answer_ms": 901}, "cost_usd": 0.00012},
{"execution_id": 5306, "workflow": "helpdesk", "started_at": "2026-10-23T17:38:27", "user": "오세훈", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 967, "steps": {"faq_ms": 37, "answer_ms": 908}, "cost_usd": 0.00012},
{"execution_id": 5307, "workflow": "helpdesk", "started_at": "2026-10-23T17:39:06", "user": "최유진", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2412, "steps": {"faq_ms": 34, "answer_ms": 2354}, "cost_usd": 0.00021},
{"execution_id": 5308, "workflow": "helpdesk", "started_at": "2026-10-23T17:50:58", "user": "한지훈", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요? 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2525, "steps": {"faq_ms": 24, "answer_ms": 2471}, "cost_usd": 0.00021},
{"execution_id": 5309, "workflow": "helpdesk", "started_at": "2026-10-23T17:51:55", "user": "윤하늘", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 985, "steps": {"faq_ms": 25, "answer_ms": 921}, "cost_usd": 0.00012},
{"execution_id": 5310, "workflow": "helpdesk", "started_at": "2026-10-26T09:03:54", "user": "서지아", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.0.0", "channel": "stable", "status": "error", "error_node": "Search FAQ", "error_message": "timeout of 1000ms exceeded", "llm_calls": 0, "repeat": false, "route": null, "duration_ms": 1055, "steps": {"faq_ms": 1000, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5311, "workflow": "helpdesk", "started_at": "2026-10-26T09:10:38", "user": "김민지", "topic": "설치", "question": "라이선스 신청은 어디서 해요?", "release": "1.0.0", "channel": "stable", "status": "error", "error_node": "Search FAQ", "error_message": "timeout of 1000ms exceeded", "llm_calls": 0, "repeat": false, "route": null, "duration_ms": 1052, "steps": {"faq_ms": 1000, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5312, "workflow": "helpdesk", "started_at": "2026-10-26T09:14:53", "user": "배수아", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "error", "error_node": "Search FAQ", "error_message": "timeout of 1000ms exceeded", "llm_calls": 0, "repeat": false, "route": null, "duration_ms": 1049, "steps": {"faq_ms": 1000, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5313, "workflow": "helpdesk", "started_at": "2026-10-26T09:16:45", "user": "이준호", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.0.0", "channel": "stable", "status": "error", "error_node": "Search FAQ", "error_message": "timeout of 1000ms exceeded", "llm_calls": 0, "repeat": false, "route": null, "duration_ms": 1025, "steps": {"faq_ms": 1000, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5314, "workflow": "helpdesk", "started_at": "2026-10-26T09:24:13", "user": "강민수", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.0.0", "channel": "stable", "status": "error", "error_node": "Search FAQ", "error_message": "timeout of 1000ms exceeded", "llm_calls": 0, "repeat": false, "route": null, "duration_ms": 1032, "steps": {"faq_ms": 1000, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5315, "workflow": "helpdesk", "started_at": "2026-10-26T09:25:23", "user": "강민수", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "error", "error_node": "Search FAQ", "error_message": "timeout of 1000ms exceeded", "llm_calls": 0, "repeat": false, "route": null, "duration_ms": 1048, "steps": {"faq_ms": 1000, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5316, "workflow": "helpdesk", "started_at": "2026-10-26T09:31:47", "user": "임도윤", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요?", "release": "1.0.0", "channel": "stable", "status": "error", "error_node": "Search FAQ", "error_message": "timeout of 1000ms exceeded", "llm_calls": 0, "repeat": false, "route": null, "duration_ms": 1036, "steps": {"faq_ms": 1000, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5317, "workflow": "helpdesk", "started_at": "2026-10-26T09:36:47", "user": "오세훈", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "error", "error_node": "Search FAQ", "error_message": "timeout of 1000ms exceeded", "llm_calls": 0, "repeat": false, "route": null, "duration_ms": 1050, "steps": {"faq_ms": 1000, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5318, "workflow": "helpdesk", "started_at": "2026-10-26T09:38:44", "user": "윤하늘", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "error", "error_node": "Search FAQ", "error_message": "timeout of 1000ms exceeded", "llm_calls": 0, "repeat": false, "route": null, "duration_ms": 1028, "steps": {"faq_ms": 1000, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5319, "workflow": "helpdesk", "started_at": "2026-10-26T09:39:12", "user": "윤하늘", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "error", "error_node": "Search FAQ", "error_message": "timeout of 1000ms exceeded", "llm_calls": 0, "repeat": false, "route": null, "duration_ms": 1024, "steps": {"faq_ms": 1000, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5320, "workflow": "helpdesk", "started_at": "2026-10-26T09:43:08", "user": "윤하늘", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.0.0", "channel": "stable", "status": "error", "error_node": "Search FAQ", "error_message": "timeout of 1000ms exceeded", "llm_calls": 0, "repeat": false, "route": null, "duration_ms": 1040, "steps": {"faq_ms": 1000, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5321, "workflow": "helpdesk", "started_at": "2026-10-26T09:45:30", "user": "서지아", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "error", "error_node": "Search FAQ", "error_message": "timeout of 1000ms exceeded", "llm_calls": 0, "repeat": false, "route": null, "duration_ms": 1025, "steps": {"faq_ms": 1000, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5322, "workflow": "helpdesk", "started_at": "2026-10-26T09:54:51", "user": "이준호", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.0.0", "channel": "stable", "status": "error", "error_node": "Search FAQ", "error_message": "timeout of 1000ms exceeded", "llm_calls": 0, "repeat": false, "route": null, "duration_ms": 1051, "steps": {"faq_ms": 1000, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5323, "workflow": "helpdesk", "started_at": "2026-10-26T09:55:54", "user": "배수아", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.0.0", "channel": "stable", "status": "error", "error_node": "Search FAQ", "error_message": "timeout of 1000ms exceeded", "llm_calls": 0, "repeat": false, "route": null, "duration_ms": 1038, "steps": {"faq_ms": 1000, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5324, "workflow": "helpdesk", "started_at": "2026-10-26T09:57:18", "user": "서지아", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "error", "error_node": "Search FAQ", "error_message": "timeout of 1000ms exceeded", "llm_calls": 0, "repeat": false, "route": null, "duration_ms": 1028, "steps": {"faq_ms": 1000, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5325, "workflow": "helpdesk", "started_at": "2026-10-26T09:58:36", "user": "최유진", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.0.0", "channel": "stable", "status": "error", "error_node": "Search FAQ", "error_message": "timeout of 1000ms exceeded", "llm_calls": 0, "repeat": false, "route": null, "duration_ms": 1054, "steps": {"faq_ms": 1000, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5326, "workflow": "helpdesk", "started_at": "2026-10-26T10:16:34", "user": "한지훈", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1378, "steps": {"faq_ms": 17, "answer_ms": 1325}, "cost_usd": 0.00012},
{"execution_id": 5327, "workflow": "helpdesk", "started_at": "2026-10-26T10:32:24", "user": "강민수", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1374, "steps": {"faq_ms": 19, "answer_ms": 1298}, "cost_usd": 0.00012},
{"execution_id": 5328, "workflow": "helpdesk", "started_at": "2026-10-26T10:33:57", "user": "이준호", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1371, "steps": {"faq_ms": 34, "answer_ms": 1299}, "cost_usd": 0.00012},
{"execution_id": 5329, "workflow": "helpdesk", "started_at": "2026-10-26T10:43:32", "user": "윤하늘", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1043, "steps": {"faq_ms": 18, "answer_ms": 970}, "cost_usd": 0.00012},
{"execution_id": 5330, "workflow": "helpdesk", "started_at": "2026-10-26T11:05:27", "user": "배수아", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1070, "steps": {"faq_ms": 31, "answer_ms": 997}, "cost_usd": 0.00012},
{"execution_id": 5331, "workflow": "helpdesk", "started_at": "2026-10-26T11:09:20", "user": "임도윤", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1137, "steps": {"faq_ms": 38, "answer_ms": 1055}, "cost_usd": 0.00012},
{"execution_id": 5332, "workflow": "helpdesk", "started_at": "2026-10-26T11:20:04", "user": "정우성", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1092, "steps": {"faq_ms": 28, "answer_ms": 1044}, "cost_usd": 0.00012},
{"execution_id": 5333, "workflow": "helpdesk", "started_at": "2026-10-26T11:21:18", "user": "오세훈", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1432, "steps": {"faq_ms": 28, "answer_ms": 1379}, "cost_usd": 0.00012},
{"execution_id": 5334, "workflow": "helpdesk", "started_at": "2026-10-26T11:23:07", "user": "윤하늘", "topic": "VPN", "question": "VPN이 자꾸 끊겨요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2770, "steps": {"faq_ms": 33, "answer_ms": 2717}, "cost_usd": 0.00021},
{"execution_id": 5335, "workflow": "helpdesk", "started_at": "2026-10-26T11:31:10", "user": "배수아", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 966, "steps": {"faq_ms": 34, "answer_ms": 909}, "cost_usd": 0.00012},
{"execution_id": 5336, "workflow": "helpdesk", "started_at": "2026-10-26T11:47:57", "user": "강민수", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1333, "steps": {"faq_ms": 32, "answer_ms": 1251}, "cost_usd": 0.00012},
{"execution_id": 5337, "workflow": "helpdesk", "started_at": "2026-10-26T12:03:07", "user": "이준호", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 961, "steps": {"faq_ms": 22, "answer_ms": 915}, "cost_usd": 0.00012},
{"execution_id": 5338, "workflow": "helpdesk", "started_at": "2026-10-26T12:12:52", "user": "서지아", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 971, "steps": {"faq_ms": 33, "answer_ms": 916}, "cost_usd": 0.00012},
{"execution_id": 5339, "workflow": "helpdesk", "started_at": "2026-10-26T12:16:08", "user": "한지훈", "topic": "프린터", "question": "프린터 출력이 안 돼요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2562, "steps": {"faq_ms": 21, "answer_ms": 2482}, "cost_usd": 0.00021},
{"execution_id": 5340, "workflow": "helpdesk", "started_at": "2026-10-26T12:18:40", "user": "배수아", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1027, "steps": {"faq_ms": 38, "answer_ms": 961}, "cost_usd": 0.00012},
{"execution_id": 5341, "workflow": "helpdesk", "started_at": "2026-10-26T12:33:56", "user": "강민수", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 980, "steps": {"faq_ms": 21, "answer_ms": 926}, "cost_usd": 0.00012},
{"execution_id": 5342, "workflow": "helpdesk", "started_at": "2026-10-26T12:35:59", "user": "배수아", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1436, "steps": {"faq_ms": 24, "answer_ms": 1385}, "cost_usd": 0.00012},
{"execution_id": 5343, "workflow": "helpdesk", "started_at": "2026-10-26T12:42:54", "user": "한지훈", "topic": "설치", "question": "라이선스 신청은 어디서 해요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1056, "steps": {"faq_ms": 33, "answer_ms": 972}, "cost_usd": 0.00012},
{"execution_id": 5344, "workflow": "helpdesk", "started_at": "2026-10-26T12:45:29", "user": "배수아", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1358, "steps": {"faq_ms": 31, "answer_ms": 1279}, "cost_usd": 0.00012},
{"execution_id": 5345, "workflow": "helpdesk", "started_at": "2026-10-26T12:49:51", "user": "윤하늘", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2468, "steps": {"faq_ms": 31, "answer_ms": 2383}, "cost_usd": 0.00021},
{"execution_id": 5346, "workflow": "helpdesk", "started_at": "2026-10-26T12:58:20", "user": "오세훈", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1129, "steps": {"faq_ms": 32, "answer_ms": 1062}, "cost_usd": 0.00012},
{"execution_id": 5347, "workflow": "helpdesk", "started_at": "2026-10-26T13:11:11", "user": "오세훈", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1279, "steps": {"faq_ms": 39, "answer_ms": 1184}, "cost_usd": 0.00012},
{"execution_id": 5348, "workflow": "helpdesk", "started_at": "2026-10-26T13:13:43", "user": "배수아", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1045, "steps": {"faq_ms": 18, "answer_ms": 1001}, "cost_usd": 0.00012},
{"execution_id": 5349, "workflow": "helpdesk", "started_at": "2026-10-26T13:18:13", "user": "오세훈", "topic": "VPN", "question": "VPN이 자꾸 끊겨요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 2809, "steps": {"faq_ms": 25, "answer_ms": 2759}, "cost_usd": 0.00021},
{"execution_id": 5350, "workflow": "helpdesk", "started_at": "2026-10-26T13:39:56", "user": "정우성", "topic": "와이파이", "question": "회의실 와이파이가 안 잡혀요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 68, "steps": {"faq_ms": 35, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5351, "workflow": "helpdesk", "started_at": "2026-10-26T13:54:37", "user": "이준호", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1415, "steps": {"faq_ms": 17, "answer_ms": 1367}, "cost_usd": 0.00012},
{"execution_id": 5352, "workflow": "helpdesk", "started_at": "2026-10-26T14:02:45", "user": "한지훈", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1105, "steps": {"faq_ms": 19, "answer_ms": 1065}, "cost_usd": 0.00012},
{"execution_id": 5353, "workflow": "helpdesk", "started_at": "2026-10-26T14:07:14", "user": "최유진", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1176, "steps": {"faq_ms": 16, "answer_ms": 1107}, "cost_usd": 0.00012},
{"execution_id": 5354, "workflow": "helpdesk", "started_at": "2026-10-26T14:13:00", "user": "최유진", "topic": "설치", "question": "라이선스 신청은 어디서 해요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1341, "steps": {"faq_ms": 38, "answer_ms": 1264}, "cost_usd": 0.00012},
{"execution_id": 5355, "workflow": "helpdesk", "started_at": "2026-10-26T14:14:29", "user": "최유진", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1116, "steps": {"faq_ms": 25, "answer_ms": 1050}, "cost_usd": 0.00012},
{"execution_id": 5356, "workflow": "helpdesk", "started_at": "2026-10-26T14:16:35", "user": "배수아", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1134, "steps": {"faq_ms": 36, "answer_ms": 1061}, "cost_usd": 0.00012},
{"execution_id": 5357, "workflow": "helpdesk", "started_at": "2026-10-26T14:20:39", "user": "임도윤", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요? 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2164, "steps": {"faq_ms": 29, "answer_ms": 2083}, "cost_usd": 0.00021},
{"execution_id": 5358, "workflow": "helpdesk", "started_at": "2026-10-26T14:44:34", "user": "정우성", "topic": "와이파이", "question": "사내 Wi-Fi 비밀번호가 뭐예요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 77, "steps": {"faq_ms": 21, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5359, "workflow": "helpdesk", "started_at": "2026-10-26T14:49:06", "user": "배수아", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 997, "steps": {"faq_ms": 23, "answer_ms": 930}, "cost_usd": 0.00012},
{"execution_id": 5360, "workflow": "helpdesk", "started_at": "2026-10-26T14:51:56", "user": "이준호", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1297, "steps": {"faq_ms": 28, "answer_ms": 1225}, "cost_usd": 0.00012},
{"execution_id": 5361, "workflow": "helpdesk", "started_at": "2026-10-26T15:00:37", "user": "이준호", "topic": "설치", "question": "라이선스 신청은 어디서 해요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1371, "steps": {"faq_ms": 28, "answer_ms": 1292}, "cost_usd": 0.00012},
{"execution_id": 5362, "workflow": "helpdesk", "started_at": "2026-10-26T15:07:35", "user": "정우성", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1314, "steps": {"faq_ms": 15, "answer_ms": 1270}, "cost_usd": 0.00012},
{"execution_id": 5363, "workflow": "helpdesk", "started_at": "2026-10-26T15:15:19", "user": "김민지", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1027, "steps": {"faq_ms": 16, "answer_ms": 957}, "cost_usd": 0.00012},
{"execution_id": 5364, "workflow": "helpdesk", "started_at": "2026-10-26T15:19:00", "user": "김민지", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1376, "steps": {"faq_ms": 28, "answer_ms": 1321}, "cost_usd": 0.00012},
{"execution_id": 5365, "workflow": "helpdesk", "started_at": "2026-10-26T15:32:07", "user": "서지아", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1445, "steps": {"faq_ms": 32, "answer_ms": 1357}, "cost_usd": 0.00012},
{"execution_id": 5366, "workflow": "helpdesk", "started_at": "2026-10-26T15:35:50", "user": "강민수", "topic": "와이파이", "question": "회의실 와이파이가 안 잡혀요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 42, "steps": {"faq_ms": 17, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5367, "workflow": "helpdesk", "started_at": "2026-10-26T15:37:33", "user": "김민지", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1033, "steps": {"faq_ms": 18, "answer_ms": 976}, "cost_usd": 0.00012},
{"execution_id": 5368, "workflow": "helpdesk", "started_at": "2026-10-26T15:37:48", "user": "윤하늘", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1256, "steps": {"faq_ms": 34, "answer_ms": 1171}, "cost_usd": 0.00012},
{"execution_id": 5369, "workflow": "helpdesk", "started_at": "2026-10-26T15:46:42", "user": "배수아", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1255, "steps": {"faq_ms": 21, "answer_ms": 1201}, "cost_usd": 0.00012},
{"execution_id": 5370, "workflow": "helpdesk", "started_at": "2026-10-26T15:54:55", "user": "배수아", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1448, "steps": {"faq_ms": 23, "answer_ms": 1381}, "cost_usd": 0.00012},
{"execution_id": 5371, "workflow": "helpdesk", "started_at": "2026-10-26T15:58:26", "user": "김민지", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1260, "steps": {"faq_ms": 30, "answer_ms": 1174}, "cost_usd": 0.00012},
{"execution_id": 5372, "workflow": "helpdesk", "started_at": "2026-10-26T16:13:15", "user": "김민지", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1082, "steps": {"faq_ms": 22, "answer_ms": 1019}, "cost_usd": 0.00012},
{"execution_id": 5373, "workflow": "helpdesk", "started_at": "2026-10-26T16:28:24", "user": "김민지", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1437, "steps": {"faq_ms": 15, "answer_ms": 1364}, "cost_usd": 0.00012},
{"execution_id": 5374, "workflow": "helpdesk", "started_at": "2026-10-26T16:30:28", "user": "오세훈", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1161, "steps": {"faq_ms": 33, "answer_ms": 1082}, "cost_usd": 0.00012},
{"execution_id": 5375, "workflow": "helpdesk", "started_at": "2026-10-26T16:50:03", "user": "이준호", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1015, "steps": {"faq_ms": 28, "answer_ms": 933}, "cost_usd": 0.00012},
{"execution_id": 5376, "workflow": "helpdesk", "started_at": "2026-10-26T16:58:05", "user": "박서연", "topic": "와이파이", "question": "회의실 와이파이가 안 잡혀요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 67, "steps": {"faq_ms": 34, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5377, "workflow": "helpdesk", "started_at": "2026-10-26T17:25:02", "user": "강민수", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1164, "steps": {"faq_ms": 23, "answer_ms": 1116}, "cost_usd": 0.00012},
{"execution_id": 5378, "workflow": "helpdesk", "started_at": "2026-10-26T17:43:43", "user": "김민지", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1213, "steps": {"faq_ms": 23, "answer_ms": 1169}, "cost_usd": 0.00012},
{"execution_id": 5379, "workflow": "helpdesk", "started_at": "2026-10-26T17:59:19", "user": "임도윤", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1047, "steps": {"faq_ms": 35, "answer_ms": 980}, "cost_usd": 0.00012},
{"execution_id": 5380, "workflow": "helpdesk", "started_at": "2026-10-27T09:05:17", "user": "배수아", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1213, "steps": {"faq_ms": 37, "answer_ms": 1154}, "cost_usd": 0.00012},
{"execution_id": 5381, "workflow": "helpdesk", "started_at": "2026-10-27T09:06:19", "user": "오세훈", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1360, "steps": {"faq_ms": 32, "answer_ms": 1269}, "cost_usd": 0.00012},
{"execution_id": 5382, "workflow": "helpdesk", "started_at": "2026-10-27T09:08:26", "user": "최유진", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1257, "steps": {"faq_ms": 20, "answer_ms": 1183}, "cost_usd": 0.00012},
{"execution_id": 5383, "workflow": "helpdesk", "started_at": "2026-10-27T09:36:33", "user": "서지아", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1057, "steps": {"faq_ms": 31, "answer_ms": 972}, "cost_usd": 0.00012},
{"execution_id": 5384, "workflow": "helpdesk", "started_at": "2026-10-27T09:47:52", "user": "서지아", "topic": "VPN", "question": "VPN이 자꾸 끊겨요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2795, "steps": {"faq_ms": 34, "answer_ms": 2711}, "cost_usd": 0.00021},
{"execution_id": 5385, "workflow": "helpdesk", "started_at": "2026-10-27T10:11:37", "user": "임도윤", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1130, "steps": {"faq_ms": 17, "answer_ms": 1061}, "cost_usd": 0.00012},
{"execution_id": 5386, "workflow": "helpdesk", "started_at": "2026-10-27T10:17:59", "user": "김민지", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1131, "steps": {"faq_ms": 20, "answer_ms": 1053}, "cost_usd": 0.00012},
{"execution_id": 5387, "workflow": "helpdesk", "started_at": "2026-10-27T10:19:59", "user": "정우성", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1019, "steps": {"faq_ms": 20, "answer_ms": 956}, "cost_usd": 0.00012},
{"execution_id": 5388, "workflow": "helpdesk", "started_at": "2026-10-27T10:30:26", "user": "오세훈", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1257, "steps": {"faq_ms": 40, "answer_ms": 1179}, "cost_usd": 0.00012},
{"execution_id": 5389, "workflow": "helpdesk", "started_at": "2026-10-27T10:45:47", "user": "이준호", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1051, "steps": {"faq_ms": 39, "answer_ms": 992}, "cost_usd": 0.00012},
{"execution_id": 5390, "workflow": "helpdesk", "started_at": "2026-10-27T10:57:46", "user": "배수아", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1146, "steps": {"faq_ms": 33, "answer_ms": 1075}, "cost_usd": 0.00012},
{"execution_id": 5391, "workflow": "helpdesk", "started_at": "2026-10-27T11:05:11", "user": "박서연", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1201, "steps": {"faq_ms": 37, "answer_ms": 1138}, "cost_usd": 0.00012},
{"execution_id": 5392, "workflow": "helpdesk", "started_at": "2026-10-27T11:10:30", "user": "윤하늘", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1097, "steps": {"faq_ms": 23, "answer_ms": 1026}, "cost_usd": 0.00012},
{"execution_id": 5393, "workflow": "helpdesk", "started_at": "2026-10-27T11:11:42", "user": "강민수", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요? 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2431, "steps": {"faq_ms": 19, "answer_ms": 2369}, "cost_usd": 0.00021},
{"execution_id": 5394, "workflow": "helpdesk", "started_at": "2026-10-27T11:24:06", "user": "박서연", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1173, "steps": {"faq_ms": 34, "answer_ms": 1079}, "cost_usd": 0.00012},
{"execution_id": 5395, "workflow": "helpdesk", "started_at": "2026-10-27T11:32:42", "user": "배수아", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1411, "steps": {"faq_ms": 21, "answer_ms": 1332}, "cost_usd": 0.00012},
{"execution_id": 5396, "workflow": "helpdesk", "started_at": "2026-10-27T12:08:48", "user": "한지훈", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1487, "steps": {"faq_ms": 35, "answer_ms": 1400}, "cost_usd": 0.00012},
{"execution_id": 5397, "workflow": "helpdesk", "started_at": "2026-10-27T12:10:52", "user": "오세훈", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1254, "steps": {"faq_ms": 26, "answer_ms": 1204}, "cost_usd": 0.00012},
{"execution_id": 5398, "workflow": "helpdesk", "started_at": "2026-10-27T12:12:38", "user": "최유진", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1443, "steps": {"faq_ms": 18, "answer_ms": 1394}, "cost_usd": 0.00012},
{"execution_id": 5399, "workflow": "helpdesk", "started_at": "2026-10-27T12:18:22", "user": "오세훈", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1449, "steps": {"faq_ms": 27, "answer_ms": 1369}, "cost_usd": 0.00012},
{"execution_id": 5400, "workflow": "helpdesk", "started_at": "2026-10-27T12:22:57", "user": "정우성", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1057, "steps": {"faq_ms": 35, "answer_ms": 974}, "cost_usd": 0.00012},
{"execution_id": 5401, "workflow": "helpdesk", "started_at": "2026-10-27T12:25:55", "user": "이준호", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1240, "steps": {"faq_ms": 35, "answer_ms": 1172}, "cost_usd": 0.00012},
{"execution_id": 5402, "workflow": "helpdesk", "started_at": "2026-10-27T12:29:32", "user": "배수아", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1111, "steps": {"faq_ms": 36, "answer_ms": 1033}, "cost_usd": 0.00012},
{"execution_id": 5403, "workflow": "helpdesk", "started_at": "2026-10-27T12:36:02", "user": "김민지", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1001, "steps": {"faq_ms": 37, "answer_ms": 909}, "cost_usd": 0.00012},
{"execution_id": 5404, "workflow": "helpdesk", "started_at": "2026-10-27T12:43:07", "user": "박서연", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1162, "steps": {"faq_ms": 31, "answer_ms": 1090}, "cost_usd": 0.00012},
{"execution_id": 5405, "workflow": "helpdesk", "started_at": "2026-10-27T13:02:28", "user": "한지훈", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1021, "steps": {"faq_ms": 31, "answer_ms": 936}, "cost_usd": 0.00012},
{"execution_id": 5406, "workflow": "helpdesk", "started_at": "2026-10-27T13:30:18", "user": "오세훈", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1020, "steps": {"faq_ms": 15, "answer_ms": 971}, "cost_usd": 0.00012},
{"execution_id": 5407, "workflow": "helpdesk", "started_at": "2026-10-27T13:30:51", "user": "한지훈", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1108, "steps": {"faq_ms": 21, "answer_ms": 1036}, "cost_usd": 0.00012},
{"execution_id": 5408, "workflow": "helpdesk", "started_at": "2026-10-27T13:34:31", "user": "임도윤", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1317, "steps": {"faq_ms": 39, "answer_ms": 1220}, "cost_usd": 0.00012},
{"execution_id": 5409, "workflow": "helpdesk", "started_at": "2026-10-27T13:51:47", "user": "김민지", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1242, "steps": {"faq_ms": 17, "answer_ms": 1197}, "cost_usd": 0.00012},
{"execution_id": 5410, "workflow": "helpdesk", "started_at": "2026-10-27T13:58:55", "user": "이준호", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1250, "steps": {"faq_ms": 22, "answer_ms": 1195}, "cost_usd": 0.00012},
{"execution_id": 5411, "workflow": "helpdesk", "started_at": "2026-10-27T14:03:27", "user": "배수아", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1442, "steps": {"faq_ms": 27, "answer_ms": 1360}, "cost_usd": 0.00012},
{"execution_id": 5412, "workflow": "helpdesk", "started_at": "2026-10-27T14:11:03", "user": "서지아", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1359, "steps": {"faq_ms": 22, "answer_ms": 1310}, "cost_usd": 0.00012},
{"execution_id": 5413, "workflow": "helpdesk", "started_at": "2026-10-27T14:17:02", "user": "최유진", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1421, "steps": {"faq_ms": 20, "answer_ms": 1373}, "cost_usd": 0.00012},
{"execution_id": 5414, "workflow": "helpdesk", "started_at": "2026-10-27T14:17:56", "user": "서지아", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1228, "steps": {"faq_ms": 35, "answer_ms": 1140}, "cost_usd": 0.00012},
{"execution_id": 5415, "workflow": "helpdesk", "started_at": "2026-10-27T14:46:37", "user": "배수아", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 1386, "steps": {"faq_ms": 29, "answer_ms": 1328}, "cost_usd": 0.00012},
{"execution_id": 5416, "workflow": "helpdesk", "started_at": "2026-10-27T14:47:15", "user": "김민지", "topic": "와이파이", "question": "와이파이가 자주 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 67, "steps": {"faq_ms": 19, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5417, "workflow": "helpdesk", "started_at": "2026-10-27T15:07:07", "user": "임도윤", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1130, "steps": {"faq_ms": 23, "answer_ms": 1082}, "cost_usd": 0.00012},
{"execution_id": 5418, "workflow": "helpdesk", "started_at": "2026-10-27T15:07:38", "user": "정우성", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1458, "steps": {"faq_ms": 22, "answer_ms": 1391}, "cost_usd": 0.00012},
{"execution_id": 5419, "workflow": "helpdesk", "started_at": "2026-10-27T15:21:10", "user": "임도윤", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1245, "steps": {"faq_ms": 29, "answer_ms": 1173}, "cost_usd": 0.00012},
{"execution_id": 5420, "workflow": "helpdesk", "started_at": "2026-10-27T15:26:25", "user": "이준호", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1278, "steps": {"faq_ms": 27, "answer_ms": 1219}, "cost_usd": 0.00012},
{"execution_id": 5421, "workflow": "helpdesk", "started_at": "2026-10-27T15:39:48", "user": "임도윤", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 965, "steps": {"faq_ms": 16, "answer_ms": 901}, "cost_usd": 0.00012},
{"execution_id": 5422, "workflow": "helpdesk", "started_at": "2026-10-27T15:41:13", "user": "박서연", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1423, "steps": {"faq_ms": 35, "answer_ms": 1339}, "cost_usd": 0.00012},
{"execution_id": 5423, "workflow": "helpdesk", "started_at": "2026-10-27T15:48:40", "user": "이준호", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1092, "steps": {"faq_ms": 38, "answer_ms": 994}, "cost_usd": 0.00012},
{"execution_id": 5424, "workflow": "helpdesk", "started_at": "2026-10-27T15:53:03", "user": "박서연", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 1194, "steps": {"faq_ms": 18, "answer_ms": 1135}, "cost_usd": 0.00012},
{"execution_id": 5425, "workflow": "helpdesk", "started_at": "2026-10-27T16:01:21", "user": "최유진", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2715, "steps": {"faq_ms": 28, "answer_ms": 2665}, "cost_usd": 0.00021},
{"execution_id": 5426, "workflow": "helpdesk", "started_at": "2026-10-27T16:18:54", "user": "한지훈", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2762, "steps": {"faq_ms": 21, "answer_ms": 2701}, "cost_usd": 0.00021},
{"execution_id": 5427, "workflow": "helpdesk", "started_at": "2026-10-27T16:22:30", "user": "오세훈", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1133, "steps": {"faq_ms": 26, "answer_ms": 1055}, "cost_usd": 0.00012},
{"execution_id": 5428, "workflow": "helpdesk", "started_at": "2026-10-27T16:23:05", "user": "윤하늘", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1312, "steps": {"faq_ms": 16, "answer_ms": 1248}, "cost_usd": 0.00012},
{"execution_id": 5429, "workflow": "helpdesk", "started_at": "2026-10-27T16:24:21", "user": "최유진", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1036, "steps": {"faq_ms": 40, "answer_ms": 962}, "cost_usd": 0.00012},
{"execution_id": 5430, "workflow": "helpdesk", "started_at": "2026-10-27T16:26:22", "user": "임도윤", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1134, "steps": {"faq_ms": 27, "answer_ms": 1055}, "cost_usd": 0.00012},
{"execution_id": 5431, "workflow": "helpdesk", "started_at": "2026-10-27T16:28:18", "user": "임도윤", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1449, "steps": {"faq_ms": 18, "answer_ms": 1371}, "cost_usd": 0.00012},
{"execution_id": 5432, "workflow": "helpdesk", "started_at": "2026-10-27T16:42:09", "user": "한지훈", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1244, "steps": {"faq_ms": 20, "answer_ms": 1165}, "cost_usd": 0.00012},
{"execution_id": 5433, "workflow": "helpdesk", "started_at": "2026-10-27T16:42:47", "user": "강민수", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1182, "steps": {"faq_ms": 36, "answer_ms": 1114}, "cost_usd": 0.00012},
{"execution_id": 5434, "workflow": "helpdesk", "started_at": "2026-10-27T16:42:57", "user": "정우성", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1033, "steps": {"faq_ms": 34, "answer_ms": 961}, "cost_usd": 0.00012},
{"execution_id": 5435, "workflow": "helpdesk", "started_at": "2026-10-27T16:46:56", "user": "김민지", "topic": "설치", "question": "라이선스 신청은 어디서 해요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1298, "steps": {"faq_ms": 25, "answer_ms": 1250}, "cost_usd": 0.00012},
{"execution_id": 5436, "workflow": "helpdesk", "started_at": "2026-10-27T17:20:33", "user": "배수아", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2677, "steps": {"faq_ms": 29, "answer_ms": 2619}, "cost_usd": 0.00021},
{"execution_id": 5437, "workflow": "helpdesk", "started_at": "2026-10-27T17:21:09", "user": "최유진", "topic": "와이파이", "question": "사내 Wi-Fi 비밀번호가 뭐예요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 55, "steps": {"faq_ms": 24, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5438, "workflow": "helpdesk", "started_at": "2026-10-27T17:38:18", "user": "배수아", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1054, "steps": {"faq_ms": 15, "answer_ms": 1011}, "cost_usd": 0.00012},
{"execution_id": 5439, "workflow": "helpdesk", "started_at": "2026-10-27T17:41:12", "user": "이준호", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1382, "steps": {"faq_ms": 28, "answer_ms": 1300}, "cost_usd": 0.00012},
{"execution_id": 5440, "workflow": "helpdesk", "started_at": "2026-10-27T17:52:56", "user": "강민수", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1007, "steps": {"faq_ms": 29, "answer_ms": 943}, "cost_usd": 0.00012},
{"execution_id": 5441, "workflow": "helpdesk", "started_at": "2026-10-27T17:59:35", "user": "김민지", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.0.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1270, "steps": {"faq_ms": 40, "answer_ms": 1173}, "cost_usd": 0.00012},
{"execution_id": 5442, "workflow": "helpdesk", "started_at": "2026-10-28T09:05:18", "user": "윤하늘", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1067, "steps": {"faq_ms": 15, "answer_ms": 1015}, "cost_usd": 0.00012},
{"execution_id": 5443, "workflow": "helpdesk", "started_at": "2026-10-28T09:09:34", "user": "최유진", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1329, "steps": {"faq_ms": 30, "answer_ms": 1241}, "cost_usd": 0.00012},
{"execution_id": 5444, "workflow": "helpdesk", "started_at": "2026-10-28T09:12:19", "user": "이준호", "topic": "와이파이", "question": "사내 Wi-Fi 비밀번호가 뭐예요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 61, "steps": {"faq_ms": 29, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5445, "workflow": "helpdesk", "started_at": "2026-10-28T09:18:23", "user": "박서연", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1426, "steps": {"faq_ms": 33, "answer_ms": 1337}, "cost_usd": 0.00012},
{"execution_id": 5446, "workflow": "helpdesk", "started_at": "2026-10-28T09:26:34", "user": "윤하늘", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1305, "steps": {"faq_ms": 23, "answer_ms": 1257}, "cost_usd": 0.00012},
{"execution_id": 5447, "workflow": "helpdesk", "started_at": "2026-10-28T09:32:48", "user": "김민지", "topic": "메일", "question": "메일함 용량이 꽉 찼대요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2459, "steps": {"faq_ms": 32, "answer_ms": 2383}, "cost_usd": 0.00021},
{"execution_id": 5448, "workflow": "helpdesk", "started_at": "2026-10-28T09:38:14", "user": "정우성", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2790, "steps": {"faq_ms": 21, "answer_ms": 2742}, "cost_usd": 0.00021},
{"execution_id": 5449, "workflow": "helpdesk", "started_at": "2026-10-28T09:45:16", "user": "윤하늘", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요? 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2637, "steps": {"faq_ms": 36, "answer_ms": 2555}, "cost_usd": 0.00021},
{"execution_id": 5450, "workflow": "helpdesk", "started_at": "2026-10-28T09:57:51", "user": "윤하늘", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1035, "steps": {"faq_ms": 21, "answer_ms": 979}, "cost_usd": 0.00012},
{"execution_id": 5451, "workflow": "helpdesk", "started_at": "2026-10-28T10:24:20", "user": "김민지", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1236, "steps": {"faq_ms": 33, "answer_ms": 1171}, "cost_usd": 0.00012},
{"execution_id": 5452, "workflow": "helpdesk", "started_at": "2026-10-28T10:29:37", "user": "서지아", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1451, "steps": {"faq_ms": 24, "answer_ms": 1378}, "cost_usd": 0.00012},
{"execution_id": 5453, "workflow": "helpdesk", "started_at": "2026-10-28T10:34:02", "user": "배수아", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1327, "steps": {"faq_ms": 24, "answer_ms": 1263}, "cost_usd": 0.00012},
{"execution_id": 5454, "workflow": "helpdesk", "started_at": "2026-10-28T10:34:50", "user": "박서연", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 1277, "steps": {"faq_ms": 22, "answer_ms": 1222}, "cost_usd": 0.00012},
{"execution_id": 5455, "workflow": "helpdesk", "started_at": "2026-10-28T10:47:02", "user": "서지아", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2600, "steps": {"faq_ms": 33, "answer_ms": 2509}, "cost_usd": 0.00021},
{"execution_id": 5456, "workflow": "helpdesk", "started_at": "2026-10-28T10:54:18", "user": "임도윤", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1085, "steps": {"faq_ms": 30, "answer_ms": 1023}, "cost_usd": 0.00012},
{"execution_id": 5457, "workflow": "helpdesk", "started_at": "2026-10-28T10:59:18", "user": "정우성", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1183, "steps": {"faq_ms": 30, "answer_ms": 1108}, "cost_usd": 0.00012},
{"execution_id": 5458, "workflow": "helpdesk", "started_at": "2026-10-28T11:07:24", "user": "정우성", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1358, "steps": {"faq_ms": 31, "answer_ms": 1305}, "cost_usd": 0.00012},
{"execution_id": 5459, "workflow": "helpdesk", "started_at": "2026-10-28T11:16:44", "user": "이준호", "topic": "VPN", "question": "VPN이 자꾸 끊겨요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2601, "steps": {"faq_ms": 33, "answer_ms": 2514}, "cost_usd": 0.00021},
{"execution_id": 5460, "workflow": "helpdesk", "started_at": "2026-10-28T11:24:59", "user": "정우성", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1277, "steps": {"faq_ms": 36, "answer_ms": 1216}, "cost_usd": 0.00012},
{"execution_id": 5461, "workflow": "helpdesk", "started_at": "2026-10-28T11:27:22", "user": "최유진", "topic": "와이파이", "question": "와이파이가 자주 끊겨요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 67, "steps": {"faq_ms": 20, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5462, "workflow": "helpdesk", "started_at": "2026-10-28T11:30:20", "user": "서지아", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1283, "steps": {"faq_ms": 25, "answer_ms": 1202}, "cost_usd": 0.00012},
{"execution_id": 5463, "workflow": "helpdesk", "started_at": "2026-10-28T11:39:11", "user": "강민수", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1177, "steps": {"faq_ms": 21, "answer_ms": 1109}, "cost_usd": 0.00012},
{"execution_id": 5464, "workflow": "helpdesk", "started_at": "2026-10-28T11:46:47", "user": "김민지", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1110, "steps": {"faq_ms": 34, "answer_ms": 1022}, "cost_usd": 0.00012},
{"execution_id": 5465, "workflow": "helpdesk", "started_at": "2026-10-28T11:52:06", "user": "한지훈", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1148, "steps": {"faq_ms": 24, "answer_ms": 1101}, "cost_usd": 0.00012},
{"execution_id": 5466, "workflow": "helpdesk", "started_at": "2026-10-28T12:04:17", "user": "박서연", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1065, "steps": {"faq_ms": 21, "answer_ms": 1018}, "cost_usd": 0.00012},
{"execution_id": 5467, "workflow": "helpdesk", "started_at": "2026-10-28T12:18:35", "user": "오세훈", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 962, "steps": {"faq_ms": 28, "answer_ms": 900}, "cost_usd": 0.00012},
{"execution_id": 5468, "workflow": "helpdesk", "started_at": "2026-10-28T12:28:32", "user": "임도윤", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1171, "steps": {"faq_ms": 26, "answer_ms": 1123}, "cost_usd": 0.00012},
{"execution_id": 5469, "workflow": "helpdesk", "started_at": "2026-10-28T12:40:52", "user": "임도윤", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1189, "steps": {"faq_ms": 30, "answer_ms": 1104}, "cost_usd": 0.00012},
{"execution_id": 5470, "workflow": "helpdesk", "started_at": "2026-10-28T12:43:33", "user": "정우성", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1143, "steps": {"faq_ms": 20, "answer_ms": 1080}, "cost_usd": 0.00012},
{"execution_id": 5471, "workflow": "helpdesk", "started_at": "2026-10-28T12:52:44", "user": "서지아", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1404, "steps": {"faq_ms": 17, "answer_ms": 1342}, "cost_usd": 0.00012},
{"execution_id": 5472, "workflow": "helpdesk", "started_at": "2026-10-28T12:55:32", "user": "윤하늘", "topic": "와이파이", "question": "회의실 와이파이가 안 잡혀요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 54, "steps": {"faq_ms": 24, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5473, "workflow": "helpdesk", "started_at": "2026-10-28T13:54:05", "user": "정우성", "topic": "메일", "question": "메일함 용량이 꽉 찼대요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.2.0", "channel": "canary", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 2515, "steps": {"faq_ms": 30, "answer_ms": 2432}, "cost_usd": 0.00021},
{"execution_id": 5474, "workflow": "helpdesk", "started_at": "2026-10-28T13:58:47", "user": "윤하늘", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.2.0", "channel": "canary", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 1431, "steps": {"faq_ms": 33, "answer_ms": 1341}, "cost_usd": 0.00012},
{"execution_id": 5475, "workflow": "helpdesk", "started_at": "2026-10-28T14:09:21", "user": "이준호", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1293, "steps": {"faq_ms": 29, "answer_ms": 1204}, "cost_usd": 0.00012},
{"execution_id": 5476, "workflow": "helpdesk", "started_at": "2026-10-28T14:15:07", "user": "배수아", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1227, "steps": {"faq_ms": 36, "answer_ms": 1154}, "cost_usd": 0.00012},
{"execution_id": 5477, "workflow": "helpdesk", "started_at": "2026-10-28T14:16:43", "user": "이준호", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1060, "steps": {"faq_ms": 35, "answer_ms": 993}, "cost_usd": 0.00012},
{"execution_id": 5478, "workflow": "helpdesk", "started_at": "2026-10-28T14:29:54", "user": "배수아", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1484, "steps": {"faq_ms": 39, "answer_ms": 1400}, "cost_usd": 0.00012},
{"execution_id": 5479, "workflow": "helpdesk", "started_at": "2026-10-28T14:40:54", "user": "김민지", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1421, "steps": {"faq_ms": 23, "answer_ms": 1340}, "cost_usd": 0.00012},
{"execution_id": 5480, "workflow": "helpdesk", "started_at": "2026-10-28T14:46:11", "user": "임도윤", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1066, "steps": {"faq_ms": 39, "answer_ms": 988}, "cost_usd": 0.00012},
{"execution_id": 5481, "workflow": "helpdesk", "started_at": "2026-10-28T14:55:16", "user": "윤하늘", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.2.0", "channel": "canary", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 1094, "steps": {"faq_ms": 26, "answer_ms": 1039}, "cost_usd": 0.00012},
{"execution_id": 5482, "workflow": "helpdesk", "started_at": "2026-10-28T15:17:02", "user": "최유진", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.2.0", "channel": "canary", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 1302, "steps": {"faq_ms": 35, "answer_ms": 1247}, "cost_usd": 0.00012},
{"execution_id": 5483, "workflow": "helpdesk", "started_at": "2026-10-28T15:22:08", "user": "박서연", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요? 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 2422, "steps": {"faq_ms": 23, "answer_ms": 2379}, "cost_usd": 0.00021},
{"execution_id": 5484, "workflow": "helpdesk", "started_at": "2026-10-28T15:42:34", "user": "윤하늘", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.2.0", "channel": "canary", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1116, "steps": {"faq_ms": 34, "answer_ms": 1031}, "cost_usd": 0.00012},
{"execution_id": 5485, "workflow": "helpdesk", "started_at": "2026-10-28T15:46:10", "user": "최유진", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.2.0", "channel": "canary", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 1032, "steps": {"faq_ms": 15, "answer_ms": 969}, "cost_usd": 0.00012},
{"execution_id": 5486, "workflow": "helpdesk", "started_at": "2026-10-28T16:08:50", "user": "이준호", "topic": "설치", "question": "라이선스 신청은 어디서 해요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1272, "steps": {"faq_ms": 23, "answer_ms": 1220}, "cost_usd": 0.00012},
{"execution_id": 5487, "workflow": "helpdesk", "started_at": "2026-10-28T16:10:12", "user": "서지아", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1463, "steps": {"faq_ms": 38, "answer_ms": 1395}, "cost_usd": 0.00012},
{"execution_id": 5488, "workflow": "helpdesk", "started_at": "2026-10-28T16:11:45", "user": "오세훈", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1425, "steps": {"faq_ms": 30, "answer_ms": 1343}, "cost_usd": 0.00012},
{"execution_id": 5489, "workflow": "helpdesk", "started_at": "2026-10-28T16:12:56", "user": "이준호", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1282, "steps": {"faq_ms": 19, "answer_ms": 1204}, "cost_usd": 0.00012},
{"execution_id": 5490, "workflow": "helpdesk", "started_at": "2026-10-28T16:18:20", "user": "한지훈", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1165, "steps": {"faq_ms": 35, "answer_ms": 1080}, "cost_usd": 0.00012},
{"execution_id": 5491, "workflow": "helpdesk", "started_at": "2026-10-28T16:30:38", "user": "임도윤", "topic": "설치", "question": "라이선스 신청은 어디서 해요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 970, "steps": {"faq_ms": 36, "answer_ms": 900}, "cost_usd": 0.00012},
{"execution_id": 5492, "workflow": "helpdesk", "started_at": "2026-10-28T16:33:28", "user": "한지훈", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1319, "steps": {"faq_ms": 20, "answer_ms": 1261}, "cost_usd": 0.00012},
{"execution_id": 5493, "workflow": "helpdesk", "started_at": "2026-10-28T16:34:08", "user": "배수아", "topic": "VPN", "question": "VPN이 자꾸 끊겨요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2240, "steps": {"faq_ms": 33, "answer_ms": 2156}, "cost_usd": 0.00021},
{"execution_id": 5494, "workflow": "helpdesk", "started_at": "2026-10-28T16:36:38", "user": "최유진", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.2.0", "channel": "canary", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1165, "steps": {"faq_ms": 27, "answer_ms": 1104}, "cost_usd": 0.00012},
{"execution_id": 5495, "workflow": "helpdesk", "started_at": "2026-10-28T16:56:31", "user": "한지훈", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1251, "steps": {"faq_ms": 28, "answer_ms": 1182}, "cost_usd": 0.00012},
{"execution_id": 5496, "workflow": "helpdesk", "started_at": "2026-10-28T17:03:12", "user": "오세훈", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 1046, "steps": {"faq_ms": 40, "answer_ms": 957}, "cost_usd": 0.00012},
{"execution_id": 5497, "workflow": "helpdesk", "started_at": "2026-10-28T17:04:33", "user": "최유진", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.2.0", "channel": "canary", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1071, "steps": {"faq_ms": 19, "answer_ms": 1024}, "cost_usd": 0.00012},
{"execution_id": 5498, "workflow": "helpdesk", "started_at": "2026-10-28T17:07:24", "user": "김민지", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1428, "steps": {"faq_ms": 32, "answer_ms": 1358}, "cost_usd": 0.00012},
{"execution_id": 5499, "workflow": "helpdesk", "started_at": "2026-10-28T17:10:33", "user": "서지아", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1429, "steps": {"faq_ms": 33, "answer_ms": 1368}, "cost_usd": 0.00012},
{"execution_id": 5500, "workflow": "helpdesk", "started_at": "2026-10-28T17:14:01", "user": "한지훈", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1170, "steps": {"faq_ms": 28, "answer_ms": 1087}, "cost_usd": 0.00012},
{"execution_id": 5501, "workflow": "helpdesk", "started_at": "2026-10-28T17:19:46", "user": "서지아", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1353, "steps": {"faq_ms": 18, "answer_ms": 1306}, "cost_usd": 0.00012},
{"execution_id": 5502, "workflow": "helpdesk", "started_at": "2026-10-28T17:22:17", "user": "이준호", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1107, "steps": {"faq_ms": 25, "answer_ms": 1055}, "cost_usd": 0.00012},
{"execution_id": 5503, "workflow": "helpdesk", "started_at": "2026-10-28T17:25:43", "user": "한지훈", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2791, "steps": {"faq_ms": 37, "answer_ms": 2694}, "cost_usd": 0.00021},
{"execution_id": 5504, "workflow": "helpdesk", "started_at": "2026-10-28T17:28:57", "user": "이준호", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1092, "steps": {"faq_ms": 20, "answer_ms": 1037}, "cost_usd": 0.00012},
{"execution_id": 5505, "workflow": "helpdesk", "started_at": "2026-10-28T17:41:11", "user": "오세훈", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1163, "steps": {"faq_ms": 24, "answer_ms": 1101}, "cost_usd": 0.00012},
{"execution_id": 5506, "workflow": "helpdesk", "started_at": "2026-10-29T09:00:22", "user": "윤하늘", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1178, "steps": {"faq_ms": 20, "answer_ms": 1131}, "cost_usd": 0.00012},
{"execution_id": 5507, "workflow": "helpdesk", "started_at": "2026-10-29T09:12:41", "user": "이준호", "topic": "와이파이", "question": "회의실 와이파이가 안 잡혀요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 58, "steps": {"faq_ms": 28, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5508, "workflow": "helpdesk", "started_at": "2026-10-29T09:15:12", "user": "서지아", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2425, "steps": {"faq_ms": 32, "answer_ms": 2373}, "cost_usd": 0.00021},
{"execution_id": 5509, "workflow": "helpdesk", "started_at": "2026-10-29T09:16:40", "user": "최유진", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1089, "steps": {"faq_ms": 20, "answer_ms": 1023}, "cost_usd": 0.00012},
{"execution_id": 5510, "workflow": "helpdesk", "started_at": "2026-10-29T09:32:19", "user": "최유진", "topic": "VPN", "question": "VPN이 자꾸 끊겨요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2533, "steps": {"faq_ms": 35, "answer_ms": 2453}, "cost_usd": 0.00021},
{"execution_id": 5511, "workflow": "helpdesk", "started_at": "2026-10-29T09:34:06", "user": "배수아", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1119, "steps": {"faq_ms": 40, "answer_ms": 1046}, "cost_usd": 0.00012},
{"execution_id": 5512, "workflow": "helpdesk", "started_at": "2026-10-29T09:37:33", "user": "서지아", "topic": "설치", "question": "라이선스 신청은 어디서 해요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1240, "steps": {"faq_ms": 21, "answer_ms": 1196}, "cost_usd": 0.00012},
{"execution_id": 5513, "workflow": "helpdesk", "started_at": "2026-10-29T09:45:29", "user": "배수아", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1236, "steps": {"faq_ms": 21, "answer_ms": 1173}, "cost_usd": 0.00012},
{"execution_id": 5514, "workflow": "helpdesk", "started_at": "2026-10-29T09:46:48", "user": "이준호", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요? 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2465, "steps": {"faq_ms": 21, "answer_ms": 2397}, "cost_usd": 0.00021},
{"execution_id": 5515, "workflow": "helpdesk", "started_at": "2026-10-29T09:47:05", "user": "강민수", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 990, "steps": {"faq_ms": 25, "answer_ms": 931}, "cost_usd": 0.00012},
{"execution_id": 5516, "workflow": "helpdesk", "started_at": "2026-10-29T09:50:00", "user": "정우성", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 971, "steps": {"faq_ms": 17, "answer_ms": 904}, "cost_usd": 0.00012},
{"execution_id": 5517, "workflow": "helpdesk", "started_at": "2026-10-29T10:02:39", "user": "서지아", "topic": "와이파이", "question": "와이파이가 자주 끊겨요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 58, "steps": {"faq_ms": 16, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5518, "workflow": "helpdesk", "started_at": "2026-10-29T10:11:09", "user": "한지훈", "topic": "설치", "question": "라이선스 신청은 어디서 해요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1311, "steps": {"faq_ms": 37, "answer_ms": 1225}, "cost_usd": 0.00012},
{"execution_id": 5519, "workflow": "helpdesk", "started_at": "2026-10-29T10:18:40", "user": "박서연", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1096, "steps": {"faq_ms": 34, "answer_ms": 1015}, "cost_usd": 0.00012},
{"execution_id": 5520, "workflow": "helpdesk", "started_at": "2026-10-29T10:37:00", "user": "서지아", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1171, "steps": {"faq_ms": 25, "answer_ms": 1107}, "cost_usd": 0.00012},
{"execution_id": 5521, "workflow": "helpdesk", "started_at": "2026-10-29T10:38:22", "user": "강민수", "topic": "프린터", "question": "프린터 출력이 안 돼요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2382, "steps": {"faq_ms": 31, "answer_ms": 2312}, "cost_usd": 0.00021},
{"execution_id": 5522, "workflow": "helpdesk", "started_at": "2026-10-29T10:54:10", "user": "임도윤", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 1463, "steps": {"faq_ms": 31, "answer_ms": 1388}, "cost_usd": 0.00012},
{"execution_id": 5627, "workflow": "helpdesk", "started_at": "2026-10-29T11:00:00", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1150, "steps": {"faq_ms": 20, "answer_ms": 1100}, "cost_usd": 0.00012},
{"execution_id": 5628, "workflow": "helpdesk", "started_at": "2026-10-29T11:00:30", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1150, "steps": {"faq_ms": 20, "answer_ms": 1100}, "cost_usd": 0.00012},
{"execution_id": 5629, "workflow": "helpdesk", "started_at": "2026-10-29T11:01:00", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1150, "steps": {"faq_ms": 20, "answer_ms": 1100}, "cost_usd": 0.00012},
{"execution_id": 5630, "workflow": "helpdesk", "started_at": "2026-10-29T11:01:30", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1150, "steps": {"faq_ms": 20, "answer_ms": 1100}, "cost_usd": 0.00012},
{"execution_id": 5631, "workflow": "helpdesk", "started_at": "2026-10-29T11:02:00", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1150, "steps": {"faq_ms": 20, "answer_ms": 1100}, "cost_usd": 0.00012},
{"execution_id": 5632, "workflow": "helpdesk", "started_at": "2026-10-29T11:02:30", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1150, "steps": {"faq_ms": 20, "answer_ms": 1100}, "cost_usd": 0.00012},
{"execution_id": 5633, "workflow": "helpdesk", "started_at": "2026-10-29T11:03:00", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1150, "steps": {"faq_ms": 20, "answer_ms": 1100}, "cost_usd": 0.00012},
{"execution_id": 5634, "workflow": "helpdesk", "started_at": "2026-10-29T11:03:30", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1150, "steps": {"faq_ms": 20, "answer_ms": 1100}, "cost_usd": 0.00012},
{"execution_id": 5635, "workflow": "helpdesk", "started_at": "2026-10-29T11:04:00", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1150, "steps": {"faq_ms": 20, "answer_ms": 1100}, "cost_usd": 0.00012},
{"execution_id": 5636, "workflow": "helpdesk", "started_at": "2026-10-29T11:04:30", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1150, "steps": {"faq_ms": 20, "answer_ms": 1100}, "cost_usd": 0.00012},
{"execution_id": 5637, "workflow": "helpdesk", "started_at": "2026-10-29T11:05:00", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1150, "steps": {"faq_ms": 20, "answer_ms": 1100}, "cost_usd": 0.00012},
{"execution_id": 5638, "workflow": "helpdesk", "started_at": "2026-10-29T11:05:30", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1150, "steps": {"faq_ms": 20, "answer_ms": 1100}, "cost_usd": 0.00012},
{"execution_id": 5639, "workflow": "helpdesk", "started_at": "2026-10-29T11:06:00", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1150, "steps": {"faq_ms": 20, "answer_ms": 1100}, "cost_usd": 0.00012},
{"execution_id": 5640, "workflow": "helpdesk", "started_at": "2026-10-29T11:06:30", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1150, "steps": {"faq_ms": 20, "answer_ms": 1100}, "cost_usd": 0.00012},
{"execution_id": 5641, "workflow": "helpdesk", "started_at": "2026-10-29T11:07:00", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1150, "steps": {"faq_ms": 20, "answer_ms": 1100}, "cost_usd": 0.00012},
{"execution_id": 5642, "workflow": "helpdesk", "started_at": "2026-10-29T11:07:30", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1150, "steps": {"faq_ms": 20, "answer_ms": 1100}, "cost_usd": 0.00012},
{"execution_id": 5643, "workflow": "helpdesk", "started_at": "2026-10-29T11:08:00", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1150, "steps": {"faq_ms": 20, "answer_ms": 1100}, "cost_usd": 0.00012},
{"execution_id": 5644, "workflow": "helpdesk", "started_at": "2026-10-29T11:08:30", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1150, "steps": {"faq_ms": 20, "answer_ms": 1100}, "cost_usd": 0.00012},
{"execution_id": 5645, "workflow": "helpdesk", "started_at": "2026-10-29T11:09:00", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1150, "steps": {"faq_ms": 20, "answer_ms": 1100}, "cost_usd": 0.00012},
{"execution_id": 5646, "workflow": "helpdesk", "started_at": "2026-10-29T11:09:30", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1150, "steps": {"faq_ms": 20, "answer_ms": 1100}, "cost_usd": 0.00012},
{"execution_id": 5647, "workflow": "helpdesk", "started_at": "2026-10-29T11:10:00", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "잠시 후", "duration_ms": 30, "steps": {"faq_ms": 0, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5648, "workflow": "helpdesk", "started_at": "2026-10-29T11:10:30", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "잠시 후", "duration_ms": 30, "steps": {"faq_ms": 0, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5649, "workflow": "helpdesk", "started_at": "2026-10-29T11:11:00", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "잠시 후", "duration_ms": 30, "steps": {"faq_ms": 0, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5650, "workflow": "helpdesk", "started_at": "2026-10-29T11:11:30", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "잠시 후", "duration_ms": 30, "steps": {"faq_ms": 0, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5651, "workflow": "helpdesk", "started_at": "2026-10-29T11:12:00", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "잠시 후", "duration_ms": 30, "steps": {"faq_ms": 0, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5652, "workflow": "helpdesk", "started_at": "2026-10-29T11:12:30", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "잠시 후", "duration_ms": 30, "steps": {"faq_ms": 0, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5653, "workflow": "helpdesk", "started_at": "2026-10-29T11:13:00", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "잠시 후", "duration_ms": 30, "steps": {"faq_ms": 0, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5654, "workflow": "helpdesk", "started_at": "2026-10-29T11:13:30", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "잠시 후", "duration_ms": 30, "steps": {"faq_ms": 0, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5655, "workflow": "helpdesk", "started_at": "2026-10-29T11:14:00", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "잠시 후", "duration_ms": 30, "steps": {"faq_ms": 0, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5656, "workflow": "helpdesk", "started_at": "2026-10-29T11:14:30", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "잠시 후", "duration_ms": 30, "steps": {"faq_ms": 0, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5657, "workflow": "helpdesk", "started_at": "2026-10-29T11:15:00", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "잠시 후", "duration_ms": 30, "steps": {"faq_ms": 0, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5658, "workflow": "helpdesk", "started_at": "2026-10-29T11:15:30", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "잠시 후", "duration_ms": 30, "steps": {"faq_ms": 0, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5659, "workflow": "helpdesk", "started_at": "2026-10-29T11:16:00", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "잠시 후", "duration_ms": 30, "steps": {"faq_ms": 0, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5660, "workflow": "helpdesk", "started_at": "2026-10-29T11:16:30", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "잠시 후", "duration_ms": 30, "steps": {"faq_ms": 0, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5661, "workflow": "helpdesk", "started_at": "2026-10-29T11:17:00", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "잠시 후", "duration_ms": 30, "steps": {"faq_ms": 0, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5662, "workflow": "helpdesk", "started_at": "2026-10-29T11:17:30", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "잠시 후", "duration_ms": 30, "steps": {"faq_ms": 0, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5663, "workflow": "helpdesk", "started_at": "2026-10-29T11:18:00", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "잠시 후", "duration_ms": 30, "steps": {"faq_ms": 0, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5664, "workflow": "helpdesk", "started_at": "2026-10-29T11:18:30", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "잠시 후", "duration_ms": 30, "steps": {"faq_ms": 0, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5523, "workflow": "helpdesk", "started_at": "2026-10-29T11:19:00", "user": "윤하늘", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1033, "steps": {"faq_ms": 30, "answer_ms": 976}, "cost_usd": 0.00012},
{"execution_id": 5665, "workflow": "helpdesk", "started_at": "2026-10-29T11:19:00", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "잠시 후", "duration_ms": 30, "steps": {"faq_ms": 0, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5666, "workflow": "helpdesk", "started_at": "2026-10-29T11:19:30", "user": "test-bot", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "잠시 후", "duration_ms": 30, "steps": {"faq_ms": 0, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5524, "workflow": "helpdesk", "started_at": "2026-10-29T11:19:51", "user": "박서연", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1234, "steps": {"faq_ms": 34, "answer_ms": 1162}, "cost_usd": 0.00012},
{"execution_id": 5525, "workflow": "helpdesk", "started_at": "2026-10-29T11:37:10", "user": "정우성", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1393, "steps": {"faq_ms": 29, "answer_ms": 1343}, "cost_usd": 0.00012},
{"execution_id": 5526, "workflow": "helpdesk", "started_at": "2026-10-29T11:46:28", "user": "박서연", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1053, "steps": {"faq_ms": 24, "answer_ms": 986}, "cost_usd": 0.00012},
{"execution_id": 5527, "workflow": "helpdesk", "started_at": "2026-10-29T11:47:09", "user": "박서연", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1001, "steps": {"faq_ms": 19, "answer_ms": 953}, "cost_usd": 0.00012},
{"execution_id": 5528, "workflow": "helpdesk", "started_at": "2026-10-29T12:09:31", "user": "강민수", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1452, "steps": {"faq_ms": 19, "answer_ms": 1384}, "cost_usd": 0.00012},
{"execution_id": 5529, "workflow": "helpdesk", "started_at": "2026-10-29T12:10:50", "user": "서지아", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2682, "steps": {"faq_ms": 32, "answer_ms": 2597}, "cost_usd": 0.00021},
{"execution_id": 5530, "workflow": "helpdesk", "started_at": "2026-10-29T12:11:49", "user": "배수아", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 1196, "steps": {"faq_ms": 37, "answer_ms": 1119}, "cost_usd": 0.00012},
{"execution_id": 5531, "workflow": "helpdesk", "started_at": "2026-10-29T12:14:46", "user": "김민지", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1107, "steps": {"faq_ms": 27, "answer_ms": 1047}, "cost_usd": 0.00012},
{"execution_id": 5532, "workflow": "helpdesk", "started_at": "2026-10-29T12:34:02", "user": "임도윤", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1229, "steps": {"faq_ms": 23, "answer_ms": 1167}, "cost_usd": 0.00012},
{"execution_id": 5533, "workflow": "helpdesk", "started_at": "2026-10-29T12:34:12", "user": "강민수", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1182, "steps": {"faq_ms": 24, "answer_ms": 1105}, "cost_usd": 0.00012},
{"execution_id": 5534, "workflow": "helpdesk", "started_at": "2026-10-29T12:40:43", "user": "이준호", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1109, "steps": {"faq_ms": 32, "answer_ms": 1055}, "cost_usd": 0.00012},
{"execution_id": 5535, "workflow": "helpdesk", "started_at": "2026-10-29T12:41:16", "user": "정우성", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1401, "steps": {"faq_ms": 22, "answer_ms": 1345}, "cost_usd": 0.00012},
{"execution_id": 5536, "workflow": "helpdesk", "started_at": "2026-10-29T13:01:48", "user": "윤하늘", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요? 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2803, "steps": {"faq_ms": 37, "answer_ms": 2721}, "cost_usd": 0.00021},
{"execution_id": 5537, "workflow": "helpdesk", "started_at": "2026-10-29T13:05:30", "user": "이준호", "topic": "와이파이", "question": "회의실 와이파이가 안 잡혀요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 55, "steps": {"faq_ms": 32, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5538, "workflow": "helpdesk", "started_at": "2026-10-29T13:08:34", "user": "배수아", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1339, "steps": {"faq_ms": 26, "answer_ms": 1259}, "cost_usd": 0.00012},
{"execution_id": 5539, "workflow": "helpdesk", "started_at": "2026-10-29T13:47:06", "user": "박서연", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2777, "steps": {"faq_ms": 37, "answer_ms": 2715}, "cost_usd": 0.00021},
{"execution_id": 5540, "workflow": "helpdesk", "started_at": "2026-10-29T13:52:46", "user": "임도윤", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1127, "steps": {"faq_ms": 26, "answer_ms": 1044}, "cost_usd": 0.00012},
{"execution_id": 5541, "workflow": "helpdesk", "started_at": "2026-10-29T13:55:03", "user": "배수아", "topic": "와이파이", "question": "와이파이가 자주 끊겨요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 78, "steps": {"faq_ms": 19, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5542, "workflow": "helpdesk", "started_at": "2026-10-29T14:02:58", "user": "임도윤", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 1207, "steps": {"faq_ms": 18, "answer_ms": 1147}, "cost_usd": 0.00012},
{"execution_id": 5543, "workflow": "helpdesk", "started_at": "2026-10-29T14:04:16", "user": "배수아", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1084, "steps": {"faq_ms": 27, "answer_ms": 1008}, "cost_usd": 0.00012},
{"execution_id": 5544, "workflow": "helpdesk", "started_at": "2026-10-29T14:08:14", "user": "강민수", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1277, "steps": {"faq_ms": 18, "answer_ms": 1235}, "cost_usd": 0.00012},
{"execution_id": 5545, "workflow": "helpdesk", "started_at": "2026-10-29T14:10:22", "user": "이준호", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2620, "steps": {"faq_ms": 34, "answer_ms": 2539}, "cost_usd": 0.00021},
{"execution_id": 5546, "workflow": "helpdesk", "started_at": "2026-10-29T14:15:08", "user": "최유진", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1358, "steps": {"faq_ms": 37, "answer_ms": 1290}, "cost_usd": 0.00012},
{"execution_id": 5547, "workflow": "helpdesk", "started_at": "2026-10-29T14:39:23", "user": "한지훈", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1455, "steps": {"faq_ms": 31, "answer_ms": 1400}, "cost_usd": 0.00012},
{"execution_id": 5548, "workflow": "helpdesk", "started_at": "2026-10-29T15:10:18", "user": "김민지", "topic": "설치", "question": "라이선스 신청은 어디서 해요?", "release": "1.1.0", "channel": "stable", "status": "error", "error_node": "Answer", "error_message": "429 Rate limit reached for requests", "llm_calls": 1, "repeat": false, "route": null, "duration_ms": 355, "steps": {"faq_ms": 38, "answer_ms": 277}, "cost_usd": 0.00012},
{"execution_id": 5549, "workflow": "helpdesk", "started_at": "2026-10-29T15:23:26", "user": "정우성", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.1.0", "channel": "stable", "status": "error", "error_node": "Answer", "error_message": "429 Rate limit reached for requests", "llm_calls": 1, "repeat": false, "route": null, "duration_ms": 435, "steps": {"faq_ms": 31, "answer_ms": 347}, "cost_usd": 0.00021},
{"execution_id": 5550, "workflow": "helpdesk", "started_at": "2026-10-29T15:26:37", "user": "최유진", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.1.0", "channel": "stable", "status": "error", "error_node": "Answer", "error_message": "429 Rate limit reached for requests", "llm_calls": 1, "repeat": false, "route": null, "duration_ms": 315, "steps": {"faq_ms": 33, "answer_ms": 253}, "cost_usd": 0.00012},
{"execution_id": 5551, "workflow": "helpdesk", "started_at": "2026-10-29T15:42:02", "user": "윤하늘", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.1.0", "channel": "stable", "status": "error", "error_node": "Answer", "error_message": "429 Rate limit reached for requests", "llm_calls": 1, "repeat": false, "route": null, "duration_ms": 341, "steps": {"faq_ms": 30, "answer_ms": 256}, "cost_usd": 0.00012},
{"execution_id": 5552, "workflow": "helpdesk", "started_at": "2026-10-29T15:48:53", "user": "박서연", "topic": "설치", "question": "라이선스 신청은 어디서 해요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1177, "steps": {"faq_ms": 17, "answer_ms": 1103}, "cost_usd": 0.00012},
{"execution_id": 5553, "workflow": "helpdesk", "started_at": "2026-10-29T15:50:37", "user": "서지아", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.1.0", "channel": "stable", "status": "error", "error_node": "Answer", "error_message": "429 Rate limit reached for requests", "llm_calls": 1, "repeat": false, "route": null, "duration_ms": 303, "steps": {"faq_ms": 27, "answer_ms": 253}, "cost_usd": 0.00012},
{"execution_id": 5554, "workflow": "helpdesk", "started_at": "2026-10-29T15:56:53", "user": "임도윤", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1428, "steps": {"faq_ms": 37, "answer_ms": 1353}, "cost_usd": 0.00012},
{"execution_id": 5555, "workflow": "helpdesk", "started_at": "2026-10-29T16:07:05", "user": "정우성", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 989, "steps": {"faq_ms": 17, "answer_ms": 925}, "cost_usd": 0.00012},
{"execution_id": 5556, "workflow": "helpdesk", "started_at": "2026-10-29T16:22:05", "user": "최유진", "topic": "메일", "question": "메일함 용량이 꽉 찼대요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2050, "steps": {"faq_ms": 34, "answer_ms": 1992}, "cost_usd": 0.00021},
{"execution_id": 5557, "workflow": "helpdesk", "started_at": "2026-10-29T16:42:20", "user": "서지아", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 1078, "steps": {"faq_ms": 36, "answer_ms": 986}, "cost_usd": 0.00012},
{"execution_id": 5558, "workflow": "helpdesk", "started_at": "2026-10-29T16:51:03", "user": "정우성", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 993, "steps": {"faq_ms": 34, "answer_ms": 919}, "cost_usd": 0.00012},
{"execution_id": 5559, "workflow": "helpdesk", "started_at": "2026-10-29T16:51:38", "user": "박서연", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1349, "steps": {"faq_ms": 20, "answer_ms": 1283}, "cost_usd": 0.00012},
{"execution_id": 5560, "workflow": "helpdesk", "started_at": "2026-10-29T16:51:52", "user": "오세훈", "topic": "와이파이", "question": "회의실 와이파이가 안 잡혀요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 66, "steps": {"faq_ms": 40, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5561, "workflow": "helpdesk", "started_at": "2026-10-29T17:54:51", "user": "박서연", "topic": "와이파이", "question": "와이파이가 자주 끊겨요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 98, "steps": {"faq_ms": 39, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5562, "workflow": "helpdesk", "started_at": "2026-10-29T17:58:33", "user": "박서연", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1267, "steps": {"faq_ms": 32, "answer_ms": 1182}, "cost_usd": 0.00012},
{"execution_id": 5563, "workflow": "helpdesk", "started_at": "2026-10-30T09:00:08", "user": "강민수", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1191, "steps": {"faq_ms": 21, "answer_ms": 1144}, "cost_usd": 0.00012},
{"execution_id": 5564, "workflow": "helpdesk", "started_at": "2026-10-30T09:08:53", "user": "임도윤", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1204, "steps": {"faq_ms": 33, "answer_ms": 1131}, "cost_usd": 0.00012},
{"execution_id": 5565, "workflow": "helpdesk", "started_at": "2026-10-30T09:09:00", "user": "김민지", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 979, "steps": {"faq_ms": 26, "answer_ms": 901}, "cost_usd": 0.00012},
{"execution_id": 5566, "workflow": "helpdesk", "started_at": "2026-10-30T09:15:26", "user": "윤하늘", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 987, "steps": {"faq_ms": 29, "answer_ms": 916}, "cost_usd": 0.00012},
{"execution_id": 5567, "workflow": "helpdesk", "started_at": "2026-10-30T09:44:21", "user": "서지아", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1332, "steps": {"faq_ms": 36, "answer_ms": 1260}, "cost_usd": 0.00012},
{"execution_id": 5568, "workflow": "helpdesk", "started_at": "2026-10-30T09:49:41", "user": "오세훈", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 1222, "steps": {"faq_ms": 39, "answer_ms": 1132}, "cost_usd": 0.00012},
{"execution_id": 5569, "workflow": "helpdesk", "started_at": "2026-10-30T09:50:58", "user": "최유진", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1384, "steps": {"faq_ms": 24, "answer_ms": 1333}, "cost_usd": 0.00012},
{"execution_id": 5570, "workflow": "helpdesk", "started_at": "2026-10-30T10:01:40", "user": "오세훈", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1429, "steps": {"faq_ms": 26, "answer_ms": 1365}, "cost_usd": 0.00012},
{"execution_id": 5571, "workflow": "helpdesk", "started_at": "2026-10-30T10:03:49", "user": "오세훈", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1389, "steps": {"faq_ms": 30, "answer_ms": 1313}, "cost_usd": 0.00012},
{"execution_id": 5572, "workflow": "helpdesk", "started_at": "2026-10-30T10:10:51", "user": "정우성", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1331, "steps": {"faq_ms": 16, "answer_ms": 1261}, "cost_usd": 0.00012},
{"execution_id": 5573, "workflow": "helpdesk", "started_at": "2026-10-30T10:10:54", "user": "최유진", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요? 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2598, "steps": {"faq_ms": 16, "answer_ms": 2532}, "cost_usd": 0.00021},
{"execution_id": 5574, "workflow": "helpdesk", "started_at": "2026-10-30T10:13:50", "user": "한지훈", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요? 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2679, "steps": {"faq_ms": 30, "answer_ms": 2604}, "cost_usd": 0.00021},
{"execution_id": 5575, "workflow": "helpdesk", "started_at": "2026-10-30T10:23:17", "user": "박서연", "topic": "VPN", "question": "VPN이 자꾸 끊겨요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 2458, "steps": {"faq_ms": 20, "answer_ms": 2415}, "cost_usd": 0.00021},
{"execution_id": 5576, "workflow": "helpdesk", "started_at": "2026-10-30T10:26:25", "user": "한지훈", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1391, "steps": {"faq_ms": 30, "answer_ms": 1318}, "cost_usd": 0.00012},
{"execution_id": 5577, "workflow": "helpdesk", "started_at": "2026-10-30T10:45:24", "user": "윤하늘", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1228, "steps": {"faq_ms": 17, "answer_ms": 1186}, "cost_usd": 0.00012},
{"execution_id": 5578, "workflow": "helpdesk", "started_at": "2026-10-30T10:52:05", "user": "정우성", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1378, "steps": {"faq_ms": 37, "answer_ms": 1305}, "cost_usd": 0.00012},
{"execution_id": 5579, "workflow": "helpdesk", "started_at": "2026-10-30T10:53:40", "user": "이준호", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 1293, "steps": {"faq_ms": 36, "answer_ms": 1215}, "cost_usd": 0.00012},
{"execution_id": 5580, "workflow": "helpdesk", "started_at": "2026-10-30T10:59:17", "user": "오세훈", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1121, "steps": {"faq_ms": 39, "answer_ms": 1044}, "cost_usd": 0.00012},
{"execution_id": 5581, "workflow": "helpdesk", "started_at": "2026-10-30T11:00:38", "user": "윤하늘", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1431, "steps": {"faq_ms": 31, "answer_ms": 1343}, "cost_usd": 0.00012},
{"execution_id": 5582, "workflow": "helpdesk", "started_at": "2026-10-30T11:06:37", "user": "이준호", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1130, "steps": {"faq_ms": 29, "answer_ms": 1069}, "cost_usd": 0.00012},
{"execution_id": 5583, "workflow": "helpdesk", "started_at": "2026-10-30T11:15:33", "user": "정우성", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요? 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2311, "steps": {"faq_ms": 18, "answer_ms": 2233}, "cost_usd": 0.00021},
{"execution_id": 5584, "workflow": "helpdesk", "started_at": "2026-10-30T11:17:32", "user": "임도윤", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1413, "steps": {"faq_ms": 21, "answer_ms": 1352}, "cost_usd": 0.00012},
{"execution_id": 5585, "workflow": "helpdesk", "started_at": "2026-10-30T11:19:14", "user": "이준호", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1282, "steps": {"faq_ms": 36, "answer_ms": 1198}, "cost_usd": 0.00012},
{"execution_id": 5586, "workflow": "helpdesk", "started_at": "2026-10-30T11:31:10", "user": "박서연", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2189, "steps": {"faq_ms": 36, "answer_ms": 2106}, "cost_usd": 0.00021},
{"execution_id": 5587, "workflow": "helpdesk", "started_at": "2026-10-30T11:32:13", "user": "정우성", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1437, "steps": {"faq_ms": 16, "answer_ms": 1376}, "cost_usd": 0.00012},
{"execution_id": 5588, "workflow": "helpdesk", "started_at": "2026-10-30T11:42:56", "user": "오세훈", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1298, "steps": {"faq_ms": 35, "answer_ms": 1207}, "cost_usd": 0.00012},
{"execution_id": 5589, "workflow": "helpdesk", "started_at": "2026-10-30T11:50:40", "user": "박서연", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2667, "steps": {"faq_ms": 31, "answer_ms": 2585}, "cost_usd": 0.00021},
{"execution_id": 5590, "workflow": "helpdesk", "started_at": "2026-10-30T11:58:02", "user": "최유진", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1008, "steps": {"faq_ms": 37, "answer_ms": 930}, "cost_usd": 0.00012},
{"execution_id": 5591, "workflow": "helpdesk", "started_at": "2026-10-30T11:59:39", "user": "김민지", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1111, "steps": {"faq_ms": 30, "answer_ms": 1030}, "cost_usd": 0.00012},
{"execution_id": 5592, "workflow": "helpdesk", "started_at": "2026-10-30T12:25:42", "user": "한지훈", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1372, "steps": {"faq_ms": 25, "answer_ms": 1320}, "cost_usd": 0.00012},
{"execution_id": 5593, "workflow": "helpdesk", "started_at": "2026-10-30T12:26:17", "user": "서지아", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 1056, "steps": {"faq_ms": 34, "answer_ms": 966}, "cost_usd": 0.00012},
{"execution_id": 5594, "workflow": "helpdesk", "started_at": "2026-10-30T13:06:37", "user": "오세훈", "topic": "비밀번호", "question": "비밀번호를 잊어버렸어요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1222, "steps": {"faq_ms": 27, "answer_ms": 1153}, "cost_usd": 0.00012},
{"execution_id": 5595, "workflow": "helpdesk", "started_at": "2026-10-30T13:16:09", "user": "윤하늘", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1028, "steps": {"faq_ms": 33, "answer_ms": 966}, "cost_usd": 0.00012},
{"execution_id": 5596, "workflow": "helpdesk", "started_at": "2026-10-30T13:30:18", "user": "김민지", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1013, "steps": {"faq_ms": 25, "answer_ms": 950}, "cost_usd": 0.00012},
{"execution_id": 5597, "workflow": "helpdesk", "started_at": "2026-10-30T13:31:16", "user": "이준호", "topic": "접수 현황", "question": "T-1002 처리 상태 알려 주세요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2576, "steps": {"faq_ms": 23, "answer_ms": 2531}, "cost_usd": 0.00021},
{"execution_id": 5598, "workflow": "helpdesk", "started_at": "2026-10-30T13:39:46", "user": "이준호", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1462, "steps": {"faq_ms": 35, "answer_ms": 1373}, "cost_usd": 0.00012},
{"execution_id": 5599, "workflow": "helpdesk", "started_at": "2026-10-30T14:37:02", "user": "정우성", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1022, "steps": {"faq_ms": 18, "answer_ms": 962}, "cost_usd": 0.00012},
{"execution_id": 5600, "workflow": "helpdesk", "started_at": "2026-10-30T14:37:22", "user": "이준호", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1385, "steps": {"faq_ms": 40, "answer_ms": 1319}, "cost_usd": 0.00012},
{"execution_id": 5601, "workflow": "helpdesk", "started_at": "2026-10-30T14:47:38", "user": "이준호", "topic": "설치", "question": "라이선스 신청은 어디서 해요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 1184, "steps": {"faq_ms": 37, "answer_ms": 1124}, "cost_usd": 0.00012},
{"execution_id": 5602, "workflow": "helpdesk", "started_at": "2026-10-30T14:48:57", "user": "이준호", "topic": "메일", "question": "메일함 용량이 꽉 찼대요 어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.어제부터 계속 그래서 업무를 못 하고 있고, 다른 사람들도 같은 문제를 겪는 것 같아 자세히 적습니다.", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 2285, "steps": {"faq_ms": 23, "answer_ms": 2227}, "cost_usd": 0.00021},
{"execution_id": 5603, "workflow": "helpdesk", "started_at": "2026-10-30T15:04:50", "user": "강민수", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1048, "steps": {"faq_ms": 25, "answer_ms": 989}, "cost_usd": 0.00012},
{"execution_id": 5604, "workflow": "helpdesk", "started_at": "2026-10-30T15:24:56", "user": "윤하늘", "topic": "설치", "question": "라이선스 신청은 어디서 해요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1363, "steps": {"faq_ms": 17, "answer_ms": 1313}, "cost_usd": 0.00012},
{"execution_id": 5605, "workflow": "helpdesk", "started_at": "2026-10-30T15:32:08", "user": "서지아", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1093, "steps": {"faq_ms": 18, "answer_ms": 1028}, "cost_usd": 0.00012},
{"execution_id": 5606, "workflow": "helpdesk", "started_at": "2026-10-30T15:37:02", "user": "박서연", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1377, "steps": {"faq_ms": 21, "answer_ms": 1296}, "cost_usd": 0.00012},
{"execution_id": 5607, "workflow": "helpdesk", "started_at": "2026-10-30T15:40:15", "user": "한지훈", "topic": "와이파이", "question": "회의실 와이파이가 안 잡혀요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 78, "steps": {"faq_ms": 36, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5608, "workflow": "helpdesk", "started_at": "2026-10-30T15:48:57", "user": "정우성", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1237, "steps": {"faq_ms": 25, "answer_ms": 1183}, "cost_usd": 0.00012},
{"execution_id": 5609, "workflow": "helpdesk", "started_at": "2026-10-30T15:50:00", "user": "임도윤", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 953, "steps": {"faq_ms": 17, "answer_ms": 913}, "cost_usd": 0.00012},
{"execution_id": 5610, "workflow": "helpdesk", "started_at": "2026-10-30T15:59:39", "user": "윤하늘", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1347, "steps": {"faq_ms": 34, "answer_ms": 1286}, "cost_usd": 0.00012},
{"execution_id": 5611, "workflow": "helpdesk", "started_at": "2026-10-30T16:05:39", "user": "강민수", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1312, "steps": {"faq_ms": 31, "answer_ms": 1246}, "cost_usd": 0.00012},
{"execution_id": 5612, "workflow": "helpdesk", "started_at": "2026-10-30T16:15:36", "user": "한지훈", "topic": "설치", "question": "새 프로그램 설치는 어떻게 신청하나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1458, "steps": {"faq_ms": 34, "answer_ms": 1397}, "cost_usd": 0.00012},
{"execution_id": 5613, "workflow": "helpdesk", "started_at": "2026-10-30T16:44:46", "user": "박서연", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1237, "steps": {"faq_ms": 26, "answer_ms": 1174}, "cost_usd": 0.00012},
{"execution_id": 5614, "workflow": "helpdesk", "started_at": "2026-10-30T16:47:29", "user": "임도윤", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 974, "steps": {"faq_ms": 17, "answer_ms": 921}, "cost_usd": 0.00012},
{"execution_id": 5615, "workflow": "helpdesk", "started_at": "2026-10-30T16:51:37", "user": "이준호", "topic": "VPN", "question": "VPN이 자꾸 끊겨요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1122, "steps": {"faq_ms": 38, "answer_ms": 1061}, "cost_usd": 0.00012},
{"execution_id": 5616, "workflow": "helpdesk", "started_at": "2026-10-30T16:57:12", "user": "정우성", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1456, "steps": {"faq_ms": 34, "answer_ms": 1372}, "cost_usd": 0.00012},
{"execution_id": 5617, "workflow": "helpdesk", "started_at": "2026-10-30T16:58:06", "user": "오세훈", "topic": "프린터", "question": "프린터 출력이 안 돼요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1196, "steps": {"faq_ms": 16, "answer_ms": 1134}, "cost_usd": 0.00012},
{"execution_id": 5618, "workflow": "helpdesk", "started_at": "2026-10-30T17:00:07", "user": "이준호", "topic": "접수 현황", "question": "제 접수 건 어떻게 됐나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1129, "steps": {"faq_ms": 16, "answer_ms": 1085}, "cost_usd": 0.00012},
{"execution_id": 5619, "workflow": "helpdesk", "started_at": "2026-10-30T17:01:06", "user": "김민지", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1421, "steps": {"faq_ms": 40, "answer_ms": 1323}, "cost_usd": 0.00012},
{"execution_id": 5620, "workflow": "helpdesk", "started_at": "2026-10-30T17:01:18", "user": "윤하늘", "topic": "비밀번호", "question": "비밀번호 재설정은 어떻게 하나요?", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1296, "steps": {"faq_ms": 23, "answer_ms": 1253}, "cost_usd": 0.00012},
{"execution_id": 5621, "workflow": "helpdesk", "started_at": "2026-10-30T17:05:34", "user": "김민지", "topic": "VPN", "question": "재택 중 VPN 접속이 안 돼요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1289, "steps": {"faq_ms": 30, "answer_ms": 1230}, "cost_usd": 0.00012},
{"execution_id": 5622, "workflow": "helpdesk", "started_at": "2026-10-30T17:05:38", "user": "최유진", "topic": "프린터", "question": "인쇄 대기열이 안 비워져요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": true, "route": "자동 답변", "duration_ms": 1311, "steps": {"faq_ms": 30, "answer_ms": 1239}, "cost_usd": 0.00012},
{"execution_id": 5623, "workflow": "helpdesk", "started_at": "2026-10-30T17:11:46", "user": "이준호", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1175, "steps": {"faq_ms": 38, "answer_ms": 1104}, "cost_usd": 0.00012},
{"execution_id": 5624, "workflow": "helpdesk", "started_at": "2026-10-30T17:20:51", "user": "오세훈", "topic": "와이파이", "question": "회의실 와이파이가 안 잡혀요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 0, "repeat": false, "route": "담당자 연결", "duration_ms": 79, "steps": {"faq_ms": 27, "answer_ms": 0}, "cost_usd": 0.0},
{"execution_id": 5625, "workflow": "helpdesk", "started_at": "2026-10-30T17:24:39", "user": "김민지", "topic": "메일", "question": "첨부 파일이 너무 커서 안 보내져요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1205, "steps": {"faq_ms": 26, "answer_ms": 1127}, "cost_usd": 0.00012},
{"execution_id": 5626, "workflow": "helpdesk", "started_at": "2026-10-30T17:59:20", "user": "박서연", "topic": "메일", "question": "메일함 용량이 꽉 찼대요", "release": "1.1.0", "channel": "stable", "status": "success", "error_node": null, "error_message": null, "llm_calls": 1, "repeat": false, "route": "자동 답변", "duration_ms": 1076, "steps": {"faq_ms": 16, "answer_ms": 1004}, "cost_usd": 0.00012}
]
+30
View File
@@ -0,0 +1,30 @@
"""R11: summary on top, failure groups on the left ([t] switches to hours, slow runs), runs of the chosen group on the right."""
import argparse
from textual.widgets import DataTable, Static
from tlog.app import LogApp
def args(**kw):
base = dict(file="tests/data/run-logs.json", url=None, date_from="2026-10-19", date_to="2026-10-30", tag="", source="all")
return argparse.Namespace(**{**base, **kw})
async def test_screen():
app = LogApp(args())
async with app.run_test() as pilot:
await pilot.pause()
assert str(app.query_one("#top", Static).render()).startswith("666 runs · errors 21")
groups = app.query_one("#groups", DataTable)
assert groups.row_count == 2 and groups.get_row_at(0)[0] == 16 # FAQ timeout first
assert app.query_one("#runs", DataTable).row_count == 16
await pilot.press("down")
await pilot.pause()
assert app.query_one("#runs", DataTable).row_count == 5
await pilot.press("t") # hours, most errors first
await pilot.pause()
assert groups.get_row_at(0)[0] == "2026-10-26T09"
await pilot.press("t") # slow runs
await pilot.pause()
assert groups.row_count == 20
+59
View File
@@ -0,0 +1,59 @@
"""R5 · R7 · R8 · R10 · R12: JSON names, exit codes 0 · 1 · 2 · 4."""
import json
from tlog import cli
DATA = "tests/data/run-logs.json"
def test_summary_json_has_the_report_names(capsys):
assert cli.main(["summary", "--file", DATA, "--from", "2026-10-26", "--to", "2026-10-30", "--json"]) == 0
out = json.loads(capsys.readouterr().out)
assert {"total", "errors", "error_rate", "p50_ms", "p95_ms", "by_route", "failures", "anomalies", "slo"} <= set(out)
assert (out["total"], out["error_rate"]) == (357, 0.0588)
def test_plain_summary(capsys):
assert cli.main(["summary", "--file", DATA, "--from", "2026-10-19", "--to", "2026-10-30"]) == 0
assert capsys.readouterr().out.startswith("666 runs · errors 21 (3.15%) · p50 1205ms · p95 2537ms")
def test_exit_codes(capsys):
assert cli.main(["summary"]) == 2 # no source
assert cli.main(["summary", "--file", "/no/such.json"]) == 1 # cannot read
assert cli.main(["slo", "--file", DATA, "--from", "2026-10-26", "--to", "2026-10-30"]) == 4
assert cli.main(["slo", "--file", DATA, "--from", "2026-10-19", "--to", "2026-10-23", "--unanswered", "0.06"]) == 0
assert "SLO ok" in capsys.readouterr().out
def test_slo_json(capsys):
cli.main(["slo", "--file", DATA, "--from", "2026-10-26", "--to", "2026-10-30", "--json"])
out = json.loads(capsys.readouterr().out)
assert out["breaches"] == ["error_rate", "unanswered_rate"] and out["values"]["p95_ms"] == 2598
def test_usage_mistake_is_2():
try:
cli.main(["nope"])
except SystemExit as stop:
assert stop.code == 2
def test_compare_and_weekly(capsys):
args = ["--file", DATA, "--from", "2026-10-26", "--to", "2026-10-30", "--prev-from", "2026-10-19", "--prev-to", "2026-10-23"]
assert cli.main(["compare", *args, "--json"]) == 0
rows = {r["metric"]: r for r in json.loads(capsys.readouterr().out)}
assert rows["total"]["prev"] == 309 and rows["total"]["now"] == 357 and rows["total"]["change"] == 48
assert cli.main(["weekly", *args]) == 0
assert "| 요청 | 309 | 357 |" in capsys.readouterr().out
def test_data_api(api, capsys):
assert cli.main(["summary", "--url", api, "--from", "2026-10-26", "--to", "2026-10-26", "--json"]) == 0
assert json.loads(capsys.readouterr().out)["errors"] == 16
def test_file_wins_over_tlog_url(monkeypatch, capsys):
monkeypatch.setenv("TLOG_URL", "http://127.0.0.1:9") # nothing listens there
assert cli.main(["summary", "--file", DATA, "--from", "2026-10-26", "--to", "2026-10-26", "--json"]) == 0
assert json.loads(capsys.readouterr().out)["total"] == 70
+51
View File
@@ -0,0 +1,51 @@
"""R1 · R9: files, the data API, inclusive dates, and day 76 tretry logs in the same run shape."""
import json
import pytest
from tlog import load
from conftest import run
def test_dates_are_inclusive_and_filters(tmp_path):
rows = [run("2026-10-26T09:00:00"), run("2026-10-30T17:00:00"), run("2026-10-31T10:00:00", tag="after", source="live")]
path = tmp_path / "logs.json"
path.write_text(json.dumps(rows))
assert len(load.read(str(path), date_from="2026-10-26", date_to="2026-10-30")) == 2
assert len(load.read(str(path), date_from="2026-10-30", date_to="2026-10-30")) == 1
assert len(load.read(str(path), source="live")) == 1 and len(load.read(str(path), source="seed")) == 2
assert len(load.read(str(path), tag="after")) == 1
def test_json_lines_with_a_half_line(tmp_path):
path = tmp_path / "logs.jsonl"
path.write_text(json.dumps(run("2026-10-26T09:00:00")) + "\n" + '{"started_at": "2026-10-2')
assert len(load.read(str(path))) == 1
def test_missing_file():
with pytest.raises(load.LoadError):
load.read("/no/such/file.json")
def test_data_api(api):
rows = load.read(url=api, date_from="2026-10-26", date_to="2026-10-26")
assert len(rows) == 70
assert len(load.read(url=api, tag="after", source="live")) == 1
def test_tretry_log_becomes_runs(tmp_path):
rows = [
{"at": 100.0, "kind": "http", "target": "POST http://x/tickets", "attempt": 1, "started": 0, "seconds": 3, "ok": False,
"error": "timeout", "final": False, "result": "failed"},
{"at": 103.5, "kind": "http", "target": "POST http://x/tickets", "attempt": 2, "started": 3.5, "seconds": 3, "ok": False,
"error": "timeout", "final": True, "result": "failed"},
{"at": 110.0, "kind": "command", "target": "curl ok", "attempt": 1, "started": 0, "seconds": 0.1, "ok": True,
"error": "", "final": True, "result": "ok"},
]
path = tmp_path / "log.jsonl"
path.write_text("\n".join(json.dumps(r) for r in rows))
out = load.read(str(path))
assert [r["status"] for r in out] == ["error", "success"]
assert out[0]["duration_ms"] == 6500 and out[0]["error_message"] == "timeout" and out[1]["route"] == "성공"
+70
View File
@@ -0,0 +1,70 @@
"""R2 · R3 · R4 · R6 · R7: the definitions of AGENTS.md 3, and the same numbers as my-log-report on the two weeks."""
from tlog import load, metrics
def period(rows, a, b):
return [r for r in rows if load.keep(r, a, b)]
def test_percentile_is_nearest_rank():
values = list(range(1, 11)) # 1..10
assert metrics.pct(values, 0.95) == 10 and metrics.pct(values, 0.5) == 5
assert metrics.pct([], 0.95) == 0
def test_rate_rounds_like_javascript_and_zero_is_zero():
assert metrics.rate(21, 666) == 0.0315 and metrics.rate(0, 0) == 0
assert metrics.js_round(0.00005, 4) == 0.0001 # half up, like Math.round
def test_two_weeks_same_numbers_as_my_log_report(two_weeks):
r = metrics.report(period(two_weeks, "2026-10-19", "2026-10-30"))
assert (r["total"], r["errors"], r["error_rate"], r["p50_ms"], r["p95_ms"]) == (666, 21, 0.0315, 1205, 2537)
assert r["by_route"] == {"자동 답변": 591, "담당자 연결": 34, "잠시 후": 20, "오류": 21}
assert r["by_day"]["2026-10-26"] == {"total": 70, "errors": 16, "error_rate": 0.2286} and "2026-10-24" not in r["by_day"]
assert r["by_release"]["1.2.0"] == {"answers": 8, "repeats": 5, "repeat_rate": 0.625}
def test_weeks_and_one_day(two_weeks):
w2 = metrics.report(period(two_weeks, "2026-10-26", "2026-10-30"))
assert (w2["total"], w2["errors"], w2["error_rate"], w2["p95_ms"]) == (357, 21, 0.0588, 2598)
monday = metrics.report(period(two_weeks, "2026-10-26", "2026-10-26"))
assert (monday["total"], monday["errors"]) == (70, 16)
assert monday["steps"]["faq_ms"]["p95"] == 1000
def test_problems_and_anomalies(two_weeks):
r = metrics.report(period(two_weeks, "2026-10-19", "2026-10-30"))
assert r["failures"][0] == {"node": "Search FAQ", "message": "timeout of 1000ms exceeded", "count": 16}
assert r["failures"][1]["node"] == "Answer" and r["failures"][1]["count"] == 5
assert r["unanswered_topics"] == [{"topic": "와이파이", "count": 34}]
assert [a["hour"] for a in r["anomalies"]] == ["2026-10-26T09", "2026-10-29T15"]
assert r["repeat_topics"][0] == {"topic": "프린터", "answers": 81, "repeats": 8, "repeat_rate": 0.0988}
assert metrics.report(period(two_weeks, "2026-10-19", "2026-10-23"))["anomalies"] == []
def test_steps_and_cost(two_weeks):
r = metrics.report(period(two_weeks, "2026-10-19", "2026-10-30"))
assert r["steps"]["faq_ms"] == {"runs": 646, "p50": 27, "p95": 39}
assert r["steps"]["answer_ms"] == {"runs": 596, "p50": 1179, "p95": 2509}
assert (r["cost_usd"], r["cost_per_run"], r["llm_calls"]) == (0.07836, 0.000118, 596)
def test_slo(two_weeks):
w2 = metrics.report(period(two_weeks, "2026-10-26", "2026-10-30"))
assert w2["unanswered_rate"] == 0.0476 and w2["slo"]["breaches"] == ["error_rate", "unanswered_rate"]
w1 = metrics.report(period(two_weeks, "2026-10-19", "2026-10-23"), {"unanswered_rate": 0.06})
assert w1["slo"]["ok"] is True
def test_empty_period_is_zero_not_null():
r = metrics.report([])
assert (r["total"], r["error_rate"], r["p95_ms"], r["cost_per_run"], r["anomalies"]) == (0, 0, 0, 0, [])
def test_weekly_markdown(two_weeks):
now = metrics.report(period(two_weeks, "2026-10-26", "2026-10-30"))
prev = metrics.report(period(two_weeks, "2026-10-19", "2026-10-23"))
text = metrics.weekly_markdown(now, prev, "2026-10-26", "2026-10-30")
assert "| 요청 | 309 | 357 |" in text and "| 오류율 | 0% | 5.88% |" in text
assert "2026-10-26 09시 · 16/16" in text and "FAQ에 '와이파이' 항목 추가" in text
+195
View File
@@ -0,0 +1,195 @@
version = 1
revision = 3
requires-python = ">=3.11"
[[package]]
name = "colorama"
version = "0.4.6"
source = { registry = "https://pypi.org/simple" }
sdist = { url = "https://files.pythonhosted.org/packages/d8/53/6f443c9a4a8358a93a6792e2acffb9d9d5cb0a5cfd8802644b7b1c9a02e4/colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44", size = 27697, upload-time = "2022-10-25T02:36:22.414Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6", size = 25335, upload-time = "2022-10-25T02:36:20.889Z" },
]
[[package]]
name = "iniconfig"
version = "2.3.1"
source = { registry = "https://pypi.org/simple" }
sdist = { url = "https://files.pythonhosted.org/packages/01/e1/2069291243c926a2ff1cd706c7f3eeb9b62144bf60f77c9fb9ff2fb26bd3/iniconfig-2.3.1.tar.gz", hash = "sha256:67f4b9c50da0dedf52af349e7749a80a9057a5031199791b906c3bb3ae878960", size = 21209, upload-time = "2026-10-06T22:48:38.076Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/56/43/4ca9e49d27a1fcf6bece6f6aec0ea46bb9112489b93d4b688fb415457bdb/iniconfig-2.3.1-py3-none-any.whl", hash = "sha256:9121e2c1fdb355232495be3194c8dfe87ccc2d5dee45947b78e68f499790d7a7", size = 7552, upload-time = "2026-10-06T22:48:36.959Z" },
]
[[package]]
name = "linkify-it-py"
version = "2.2.0"
source = { registry = "https://pypi.org/simple" }
sdist = { url = "https://files.pythonhosted.org/packages/45/98/7a1a5f31fd5c7ba93e963b168e244b8e3dd705b3d2a718e3c3307583bf57/linkify_it_py-2.2.0.tar.gz", hash = "sha256:907acd2d17ac1fbb9ddb62c8957ccbd6158cac602231a15c3b0cd1e215f03cee", size = 32939, upload-time = "2026-08-29T07:07:08.305Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/13/d4/1152d1c7ab42d8b908be64fd200ddc870dc9d4925e951198702084aa1a7d/linkify_it_py-2.2.0-py3-none-any.whl", hash = "sha256:3adc40eb5af300b2605fcfdb968c24e1d780a90f1f2221af7c15e5111e94d443", size = 21971, upload-time = "2026-08-29T07:07:07.164Z" },
]
[[package]]
name = "markdown-it-py"
version = "4.2.0"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "mdurl" },
]
sdist = { url = "https://files.pythonhosted.org/packages/06/ff/7841249c247aa650a76b9ee4bbaeae59370dc8bfd2f6c01f3630c35eb134/markdown_it_py-4.2.0.tar.gz", hash = "sha256:04a21681d6fbb623de53f6f364d352309d4094dd4194040a10fd51833e418d49", size = 82454, upload-time = "2026-05-07T12:08:28.36Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/b3/81/4da04ced5a082363ecfa159c010d200ecbd959ae410c10c0264a38cac0f5/markdown_it_py-4.2.0-py3-none-any.whl", hash = "sha256:9f7ebbcd14fe59494226453aed97c1070d83f8d24b6fc3a3bcf9a38092641c4a", size = 91687, upload-time = "2026-05-07T12:08:27.182Z" },
]
[package.optional-dependencies]
linkify = [
{ name = "linkify-it-py" },
]
[[package]]
name = "mdit-py-plugins"
version = "0.6.1"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "markdown-it-py" },
]
sdist = { url = "https://files.pythonhosted.org/packages/59/fc/f8d0863f8862f25602c0404d75568e89fb6b4109804645e5cdfb1be5cf56/mdit_py_plugins-0.6.1.tar.gz", hash = "sha256:a2bca0f039f39dbd35fb74ae1b5f998608c437463371f0ff7f49a19a17a114d0", size = 56114, upload-time = "2026-05-13T09:03:38.91Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/a5/69/6da5581c6a7fede7dc261bf4e67d6adca4196f176b43288b55b3db395b6e/mdit_py_plugins-0.6.1-py3-none-any.whl", hash = "sha256:214c82fb2ac524472ab6a5bcab1de80f73b50443e187f401bfd77efbc7c6481d", size = 66663, upload-time = "2026-05-13T09:03:37.76Z" },
]
[[package]]
name = "mdurl"
version = "0.1.2"
source = { registry = "https://pypi.org/simple" }
sdist = { url = "https://files.pythonhosted.org/packages/d6/54/cfe61301667036ec958cb99bd3efefba235e65cdeb9c84d24a8293ba1d90/mdurl-0.1.2.tar.gz", hash = "sha256:bb413d29f5eea38f31dd4754dd7377d4465116fb207585f97bf925588687c1ba", size = 8729, upload-time = "2022-08-14T12:40:10.846Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl", hash = "sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8", size = 9979, upload-time = "2022-08-14T12:40:09.779Z" },
]
[[package]]
name = "packaging"
version = "26.3"
source = { registry = "https://pypi.org/simple" }
sdist = { url = "https://files.pythonhosted.org/packages/7d/fa/3944b40b07da9ce895c0e6303a5ab7d53da063554f534556b134a54d6093/packaging-26.3.tar.gz", hash = "sha256:94edc256424af38762eb31306eed28beb9f0efc50a8837492c9d6fd6004aed79", size = 313412, upload-time = "2026-08-04T18:15:28.737Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/63/34/ba1c580383c9eada3711951fef0795c80b829a078d72188184bcab9dd527/packaging-26.3-py3-none-any.whl", hash = "sha256:d7193f7c8e4e93f444fde0262bf90af30e16fa0ad0ad44cb553c87339b23cd1c", size = 129956, upload-time = "2026-08-04T18:15:27.159Z" },
]
[[package]]
name = "platformdirs"
version = "4.14.0"
source = { registry = "https://pypi.org/simple" }
sdist = { url = "https://files.pythonhosted.org/packages/40/28/1c058a9143d2304b3078f8dadcbb9dc27f7d3581b5d05157c84869c4cc0d/platformdirs-4.14.0.tar.gz", hash = "sha256:83f009c1e8c5fc36869b5171755b291887bd2cade7965233cdfabd23d754720b", size = 70387, upload-time = "2026-10-28T18:27:30.973Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/69/2b/887969ef4bb53e0cb271dc7c3f4a73d50c5d58bb88aeaae311e3340cd57e/platformdirs-4.14.0-py3-none-any.whl", hash = "sha256:1dadfc59a8a5d7565b3d9270ae8fa71c065595352c4277b41c11ee6c222c4b91", size = 35259, upload-time = "2026-10-28T18:27:29.659Z" },
]
[[package]]
name = "pluggy"
version = "1.7.0"
source = { registry = "https://pypi.org/simple" }
sdist = { url = "https://files.pythonhosted.org/packages/bf/db/7fc19e6f2dc92a966727031389fc2e08b558f0f25eb7403c1119ad4713cd/pluggy-1.7.0.tar.gz", hash = "sha256:d1eaa46ebb595891b860ab086b4d09c8588af65ebd4361b8e8f4bb8920b90ba8", size = 123304, upload-time = "2026-10-15T09:50:58.343Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/40/9e/2b38731e0fc536806f16490e1a12d7f0dc2a1235aa8cc07bcc75416a7daa/pluggy-1.7.0-py3-none-any.whl", hash = "sha256:7dd7b0d8832ba3cb632c306926ded123429211b83641b35dc5c41ad2d34f9bec", size = 27082, upload-time = "2026-10-15T09:50:56.808Z" },
]
[[package]]
name = "pygments"
version = "2.21.0"
source = { registry = "https://pypi.org/simple" }
sdist = { url = "https://files.pythonhosted.org/packages/49/2e/ced460408999b33da6b31b0021b0f37d329e202d4169aeb164493778f25b/pygments-2.21.0.tar.gz", hash = "sha256:610ca751c9bc2492b38eb9a38a7fbc93edbbb2d7182edaf34e66ae493dee5c8c", size = 5005329, upload-time = "2026-08-17T08:02:48.824Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/71/46/17f022dd3e953bf20a04a028a21ec746d942f8d2af30fa0f124fa0e6a684/pygments-2.21.0-py3-none-any.whl", hash = "sha256:2363c69b61c4a97c838da3b130dcd6468f4848992b21a82f2a63ec34377137d9", size = 1250147, upload-time = "2026-08-17T08:02:44.912Z" },
]
[[package]]
name = "pytest"
version = "9.2.0"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "colorama", marker = "sys_platform == 'win32'" },
{ name = "iniconfig" },
{ name = "packaging" },
{ name = "pluggy" },
{ name = "pygments" },
]
sdist = { url = "https://files.pythonhosted.org/packages/79/42/bb4641652e58dedeac2ec51abc1f8cae4fee4ec63899a0999016229a0f2a/pytest-9.2.0.tar.gz", hash = "sha256:97c4f3b1f3c7414aa36465e09b8220f1d03627993bd51b1282e193753c80557b", size = 1797555, upload-time = "2026-10-27T21:30:20.728Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/51/39/1f5d8c8877a0fa327db959c19341d4be61660de1ab6b7391f9eb805bcd67/pytest-9.2.0-py3-none-any.whl", hash = "sha256:07acdcf88ec174f907dc01af70bf52d49b014bbab03faeeade31c96b18c2e588", size = 411776, upload-time = "2026-10-27T21:30:19.131Z" },
]
[[package]]
name = "pytest-asyncio"
version = "1.4.1"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "pytest" },
{ name = "typing-extensions", marker = "python_full_version < '3.13'" },
]
sdist = { url = "https://files.pythonhosted.org/packages/f8/9a/887535e477847f5159377ab35303923644840b13c0ca03c0a467f84d4680/pytest_asyncio-1.4.1.tar.gz", hash = "sha256:e8266eb094e5ee9ffdb2068c9836f33e209ea77a970eb846933d416b5602669b", size = 145237, upload-time = "2026-10-25T21:05:37.135Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/46/d7/cd9e2708afdbf059658adaf08bdb0792ca52489871051d6ce7d498b51277/pytest_asyncio-1.4.1-py3-none-any.whl", hash = "sha256:507afa78ec77c6661164ef1a2368bc7820383fd1a14b2a7f813de8b5a92949cc", size = 17061, upload-time = "2026-10-25T21:05:35.473Z" },
]
[[package]]
name = "rich"
version = "15.0.0"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "markdown-it-py" },
{ name = "pygments" },
]
sdist = { url = "https://files.pythonhosted.org/packages/c0/8f/0722ca900cc807c13a6a0c696dacf35430f72e0ec571c4275d2371fca3e9/rich-15.0.0.tar.gz", hash = "sha256:edd07a4824c6b40189fb7ac9bc4c52536e9780fbbfbddf6f1e2502c31b068c36", size = 230680, upload-time = "2026-04-12T08:24:00.75Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/82/3b/64d4899d73f91ba49a8c18a8ff3f0ea8f1c1d75481760df8c68ef5235bf5/rich-15.0.0-py3-none-any.whl", hash = "sha256:33bd4ef74232fb73fe9279a257718407f169c09b78a87ad3d296f548e27de0bb", size = 310654, upload-time = "2026-04-12T08:24:02.83Z" },
]
[[package]]
name = "textual"
version = "8.2.8"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "markdown-it-py", extra = ["linkify"] },
{ name = "mdit-py-plugins" },
{ name = "platformdirs" },
{ name = "pygments" },
{ name = "rich" },
{ name = "typing-extensions" },
]
sdist = { url = "https://files.pythonhosted.org/packages/00/21/39a76b01bd5eea82a04baaca7580e105d8c59450df03998345bb2cfb307b/textual-8.2.8.tar.gz", hash = "sha256:3f106a9fbc73e39dd266c9712432087de78a6d644084c7c241d6a25c3169115b", size = 1860502, upload-time = "2026-06-30T06:51:24.495Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/fb/be/35261223d9416a0751cdff1c7b4a6f881387218a12d439fe22fefebc8c04/textual-8.2.8-py3-none-any.whl", hash = "sha256:267375fd402dc8d981457212efa71f0e3365fd17bba144ba9bb3ed7563cb374a", size = 731418, upload-time = "2026-06-30T06:51:26.364Z" },
]
[[package]]
name = "tlog"
version = "0.1.0"
source = { editable = "." }
dependencies = [
{ name = "textual" },
]
[package.dev-dependencies]
dev = [
{ name = "pytest" },
{ name = "pytest-asyncio" },
]
[package.metadata]
requires-dist = [{ name = "textual", specifier = ">=0.80" }]
[package.metadata.requires-dev]
dev = [
{ name = "pytest", specifier = ">=8" },
{ name = "pytest-asyncio", specifier = ">=0.23" },
]
[[package]]
name = "typing-extensions"
version = "4.16.0"
source = { registry = "https://pypi.org/simple" }
sdist = { url = "https://files.pythonhosted.org/packages/f6/cc/6253133b5bb138fc3306cebfbda2c520f545d36b5be2c7255cc528bb45d6/typing_extensions-4.16.0.tar.gz", hash = "sha256:dc983d19a509c94dba722ee6abd33940f7c05a89e243c47e907eb4db6f1a43e5", size = 113555, upload-time = "2026-07-02T08:40:05.92Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/49/d3/b8441a820a491ddfc024b0b0cf0393375b75ea13866d9c66727e54c2fc80/typing_extensions-4.16.0-py3-none-any.whl", hash = "sha256:481caa481374e813c1b176ada14e97f1f67a4539ce9cfeb3f350d78d6370c2e8", size = 45571, upload-time = "2026-07-02T08:40:04.659Z" },
]