๋์๋ณด๋
์ํ KPI ยท ๊ฒ์ดํธ ยท ์ต๊ทผ ์์
๋ก๊ทธ๋ฅผ ํ ํ๋ฉด์์ ํ์ธํฉ๋๋ค.
(์ฌ๊ธฐ์ ์ต๊ทผ ์์
์ด ํ์๋ฉ๋๋ค)
* ์ํด๋ฆญ(ํตํฉ)์ /api/tasks/flow(kind=merged)๋ฅผ ์คํํฉ๋๋ค.
์์ง
์์ง/์์ฝ/๋ณด๊ณ ์ ๊ฐ์ ๋น๋๊ธฐ ์์
์ SSE ๋ก๊ทธ๋ก ๋ชจ๋ํฐ๋งํฉ๋๋ค.
(์ฌ๊ธฐ์ ์ค์๊ฐ ๋ก๊ทธ๊ฐ ํ์๋ฉ๋๋ค)
SSE๋ EventSource๋ก ์ฐ๊ฒฐ๋ฉ๋๋ค. ํ ํฐ์ querystring(token=...)๋ก ์ ๋ฌ๋ฉ๋๋ค.
์์ฝ
ํค์๋/์ ์ ๋ณธ ์์ฝยท๋ฒ์ญ(enrich) ์คํ๊ณผ ๊ฒฐ๊ณผ ํ์ผ ๊ฒฝ๋ก๋ฅผ ๊ด๋ฆฌํฉ๋๋ค.
(๊ฒฐ๊ณผ๊ฐ ์ฌ๊ธฐ์ ํ์๋ฉ๋๋ค)
์น์ธ
ํ๋ณด/์ ์ ๋ณธ์ ์น์ธ/ํด์ ํ๊ณ , ํธ์ง์ ๋ฉ๋ชจ๋ฅผ ์ ์ฅํ ๋ค ๋ฐํ๋ณธ๊ณผ ๋๊ธฐํํฉ๋๋ค.
* โ์์ N ์๋ ์น์ธโ ๊ฐ์ ๋น ๋ฅธ ์์
์ ํค๋์ ๋น ๋ฅธ ๋๊ตฌ์์ ์คํํฉ๋๋ค.
๋ฐํ
Ready ๋ชฉ๋ก์ ํ์ธํ๊ณ ๊ฐ๋ณ ๋ฐํ(/api/items/{id}/publish) ๋๋ ์ํด๋ฆญ ํ๋ก์ฐ๋ฅผ ์คํํฉ๋๋ค.
* ์ํด๋ฆญ ํ๋ก์ฐ๋ โ์์งโ ๋ฉ๋ด์์ ์ค์๊ฐ ๋ก๊ทธ(SSE)๋ฅผ ํจ๊ป ๋ณด๋ ๊ฒ์ ๊ถ์ฅํฉ๋๋ค.
๋ณด๊ณ ์
์ผ์ผ ๋ณด๊ณ ์ ์์ฑ(/api/report)๊ณผ ๋ด๋ณด๋ด๊ธฐ(/api/export/md, /api/export/csv)๋ฅผ ๊ด๋ฆฌํฉ๋๋ค.
(๊ฒฐ๊ณผ๊ฐ ์ฌ๊ธฐ์ ํ์๋ฉ๋๋ค)
ํ์ค ํ๋ ์ด์
4์ถ
SSOT ํ๋(score_regular / score_applic / score_evid / score_trust / score_total / decision / reason_short)๋ฅผ ๊ทธ๋๋ก ์ฌ์ฉํฉ๋๋ค.
status
decision
์ ํ: -
-
score_total (๊ฐ์ค์น ๋ฐ์)
decision
๋ ์ด๋ ์ฐจํธ
๐กํ์ธ ํ์: Chart.js ๋ก๋ฉ ์คํจ๋ก ๋ ์ด๋ ์ฐจํธ๋ฅผ ํ์ํ ์ ์์ต๋๋ค.
๊ณต์ ํผ๋ ์๋ํ ์บ๋ฆฐ๋
์์ฝ(ํผ๋) ์ผ์ ์ ๋ฌ๋ ฅ์ผ๋ก ํ์ํ๊ณ , daily-report(๋งค์ผ 09:00 Asia/Seoul) ์คํ ์ฌ๋ถ๋ฅผ ์ ๊ฒ/์๋ ์คํํฉ๋๋ค.
-
daily-report: 09:00 (Asia/Seoul)
๋ค์ ์คํ(์์): -
์ค๋ ์ฐ์ถ๋ฌผ: -
(daily-report ์ํ/๊ฒฐ๊ณผ๊ฐ ์ฌ๊ธฐ์ ํ์๋ฉ๋๋ค)
์ค์
API Base / ํ ํฐ / ํ
๋ง ๋ฑ ์ ์ญ ์ค์ ์ ๊ด๋ฆฌํฉ๋๋ค.
์ํ: -
(debug)