๋ฐฐ๊ฒฝ
ํ์ฌ PR์ ๋ถ๋ ์๊ฐ/๊ณต๊ฐ ๋ณต์ก๋ ๋ถ์ ๊ธฐ๋ฅ(handlers/complexity-analysis.js)์์ ์ ์ ๊ฐ ๋จ๊ธด ๋ณต์ก๋ ์ฃผ์์ OpenAI(gpt-4.1-nano)๊ฐ ์ ๋๋ก ํ๋ณํ์ง ๋ชปํ๋ ์ผ์ด์ค๊ฐ ๊ด์ฐฐ๋๊ณ ์์ต๋๋ค.
ํ์
- ํ ํ์ผ์ ์ฌ๋ฌ ํ์ด๊ฐ ์๊ณ ๊ฐ ํ์ด๋ง๋ค ์ฃผ์์ด ๋ฌ๋ ค ์๋ ๊ฒฝ์ฐ, ์ผ๋ถ ํ์ด์
userTime / userSpace๋ฅผ ์ ๋๋ก ๊ฐ์ ธ์ค์ง ๋ชปํ๊ฑฐ๋ ๋ค๋ฅธ ํ์ด์ ์ฃผ์๊ณผ ์์ฌ์ ๋งค์นญ๋ฉ๋๋ค.
- ์ฌ์ฉ์๊ฐ ๋ณต์ก๋ ์ฃผ์์ ์ ํ ๋จ๊ธฐ์ง ์์๋๋ฐ๋
hasUserAnnotation=true๋ก ํ์ ๋์ด, ์๋ ์ ์ ๋ถ์์ด ์๋ ๊ฒ์ฒ๋ผ ๋๊ธ์ด ๋ ๋๋ง๋ฉ๋๋ค.
๋ ์ผ์ด์ค ๋ชจ๋ ๊ฒฐ๊ณผ ๋๊ธ์ ์ ์ ๋ถ์ / ์ค์ ๋ถ์ / ๊ฒฐ๊ณผ ํ๊ฐ ์คํด๋ฅผ ์ ๋ฐํ๊ณ , ๋งค์นญ ๊ฒฐ๊ณผ(โ
/โ)๊ฐ ์ ๋ขฐํ ์ ์๊ฒ ๋ฉ๋๋ค.
ํ์ธ์ด ํ์ํ ๊ฒ
- ํ์ฌ ์ฌ์ฉ ์ค์ธ SYSTEM_PROMPT๊ฐ ์ ๋ ์ผ์ด์ค๋ฅผ ์ถฉ๋ถํ ์ง์ํ๊ณ ์๋์ง
- ์ค์ OpenAI์ ์ ๋ฌ๋๋ ์์ฒญ payload(ํนํ ์ฌ๋ฌ ํ์ด๊ฐ ๋ด๊ธด user prompt์ ํํ)
- OpenAI๊ฐ ๋๋ ค์ฃผ๋ ์๋ต JSON ์๋ฌธ โ ์ ๊ทํ ์ด์ ์ raw ๊ฐ ํ์ธ
์ ์
- ๋ฌธ์ ๊ฐ ์ฌํ๋๋ PR์์ ์์ฒญ ๋ณธ๋ฌธ๊ณผ ์๋ต ๋ณธ๋ฌธ์ ๋ก๊น
ํ์ฌ ์ด๋ค ๋จ๊ณ์์ ๋๋ฝ/์คํ์ด ์๊ธฐ๋์ง ํน์
- ํ์ ์ SYSTEM_PROMPT์ ๋ค์์ ๋ณด๊ฐ:
- ํ์ด๋ณ๋ก ์ฃผ์์ ๊ทผ์ ์ฑ(๋ฐ๋ก ์/์์ชฝ) ๊ธฐ์ค์ผ๋ก ๊ท์์ํค๋ ๊ท์น ๊ฐํ
- ์ฃผ์์ด ์์ ๋
hasUserAnnotation=false๋ฅผ ๋ฐ๋์ ๋ฐํํ๋๋ก ๋ฐ๋ก ์์ ์ถ๊ฐ
๊ด๋ จ ํ์ผ
๋ฐฐ๊ฒฝ
ํ์ฌ PR์ ๋ถ๋ ์๊ฐ/๊ณต๊ฐ ๋ณต์ก๋ ๋ถ์ ๊ธฐ๋ฅ(handlers/complexity-analysis.js)์์ ์ ์ ๊ฐ ๋จ๊ธด ๋ณต์ก๋ ์ฃผ์์ OpenAI(gpt-4.1-nano)๊ฐ ์ ๋๋ก ํ๋ณํ์ง ๋ชปํ๋ ์ผ์ด์ค๊ฐ ๊ด์ฐฐ๋๊ณ ์์ต๋๋ค.
ํ์
userTime/userSpace๋ฅผ ์ ๋๋ก ๊ฐ์ ธ์ค์ง ๋ชปํ๊ฑฐ๋ ๋ค๋ฅธ ํ์ด์ ์ฃผ์๊ณผ ์์ฌ์ ๋งค์นญ๋ฉ๋๋ค.hasUserAnnotation=true๋ก ํ์ ๋์ด, ์๋ ์ ์ ๋ถ์์ด ์๋ ๊ฒ์ฒ๋ผ ๋๊ธ์ด ๋ ๋๋ง๋ฉ๋๋ค.๋ ์ผ์ด์ค ๋ชจ๋ ๊ฒฐ๊ณผ ๋๊ธ์
์ ์ ๋ถ์ / ์ค์ ๋ถ์ / ๊ฒฐ๊ณผํ๊ฐ ์คํด๋ฅผ ์ ๋ฐํ๊ณ , ๋งค์นญ ๊ฒฐ๊ณผ(โ /โ)๊ฐ ์ ๋ขฐํ ์ ์๊ฒ ๋ฉ๋๋ค.ํ์ธ์ด ํ์ํ ๊ฒ
์ ์
hasUserAnnotation=false๋ฅผ ๋ฐ๋์ ๋ฐํํ๋๋ก ๋ฐ๋ก ์์ ์ถ๊ฐ๊ด๋ จ ํ์ผ