--- id: P-REINFORCE-AUTO-37563B category: "10_Wiki/๐Ÿ’ก Topics/AI" confidence_score: 0.90 tags: [auto-reinforced] last_reinforced: 2026-04-20 github_commit: "[P-Reinforce] Continuous Worker - AI์™€ ๊ธฐ๊ณ„์—๊ฒŒ ๊ฒ€์—ด ๋งก๊ธฐ๊ธฐ_ - ์ •์  ๋ถ„์„ ํˆด (ESLint Prettier))" --- # [[AIแ„‹แ…ช แ„€แ…ตแ„€แ…จแ„‹แ…ฆแ„€แ…ฆ แ„€แ…ฅแ†ทแ„‹แ…งแ†ฏ แ„†แ…กแ‡€แ„€แ…ตแ„€แ…ต_ - แ„Œแ…ฅแ†ผแ„Œแ…ฅแ†จ แ„‡แ…ฎแ†ซแ„‰แ…ฅแ†จ แ„แ…ฎแ†ฏ (ESLint Prettier))|AI์™€ ๊ธฐ๊ณ„์—๊ฒŒ ๊ฒ€์—ด ๋งก๊ธฐ๊ธฐ_ - ์ •์  ๋ถ„์„ ํˆด (ESLint Prettier))]] ## ๐Ÿ“Œ ํ•œ ์ค„ ํ†ต์ฐฐ (The Karpathy Summary) > ํ˜„๋Œ€ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ์—์„œ๋Š” ์ฃผ๊ด€์ ์ด๊ณ  ๋ฐ˜๋ณต์ ์ธ ์ฝ”๋“œ ํ‰๊ฐ€ ์ž‘์—…์„ ESLint, Prettier์™€ ๊ฐ™์€ ๊ฒฐ์ •๋ก ์  ๋„๊ตฌ์™€ AI ๊ธฐ๋ฐ˜ ์—์ด์ „ํŠธ(๊ธฐ๊ณ„)์—๊ฒŒ ์œ„์ž„ํ•˜์—ฌ ์ฝ”๋“œ๋ฅผ ์ž๋™์œผ๋กœ '๊ฒ€์—ด'ํ•˜๋Š” ๊ตฌ์กฐ๋ฅผ ๊ฐ–์ถ”๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค [1]. Linter์ธ ESLint๋Š” ์ถ”์ƒ ๊ตฌ๋ฌธ ํŠธ๋ฆฌ(AST)๋ฅผ ๋ถ„์„ํ•ด ๋ฌธ๋ฒ•์  ์˜ค๋ฅ˜์™€ ์ž ์žฌ์  ๋ฒ„๊ทธ๋ฅผ ์‹๋ณ„ํ•˜๋ฉฐ, Formatter์ธ Prettier๋Š” ์ค„ ๋ฐ”๊ฟˆ์ด๋‚˜ ๋“ค์—ฌ์“ฐ๊ธฐ ๋“ฑ ์‹œ๊ฐ์  ์ผ๊ด€์„ฑ์„ ๊ฐ•์ œํ•ฉ๋‹ˆ๋‹ค [2]. ๋‚˜์•„๊ฐ€ ๋‹จ์ˆœํ•œ ํŒจํ„ด ๋งค์นญ์„ ๋„˜์–ด LLM ๊ธฐ๋ฐ˜์˜ AI ์ •์  ๋ถ„์„ ๋„๊ตฌ(SAST)๋ฅผ ๋„์ž…ํ•จ์œผ๋กœ์จ ๋ฌธ๋งฅ์„ ์ดํ•ดํ•˜๊ณ  ๋ณต์žกํ•œ ์ทจ์•ฝ์ ์„ ๋ถ„์„ํ•˜๋Š” '์—์ด์ „ํŠธ์  ๊ฑฐ๋ฒ„๋„Œ์Šค'๋กœ ์ง„ํ™”ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค [3, 4]. ## ๐Ÿ“– ๊ตฌ์กฐํ™”๋œ ์ง€์‹ (Synthesized Content) * **๊ฒฐ์ •๋ก ์  ๊ฑฐ๋ฒ„๋„Œ์Šค์˜ ๊ธฐ๋ฐ˜ (ESLint & Prettier)** * **ESLint (๊ฒฐ์ •๋ก ์  Linter):** ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ์ถ”์ƒ ๊ตฌ๋ฌธ ํŠธ๋ฆฌ(AST)๋กœ ๋ณ€ํ™˜ํ•ด ์ˆœํšŒํ•˜๋ฉด์„œ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ๋ณ€์ˆ˜, ์„€๋„์ž‰ ํ˜„์ƒ ๋“ฑ ๋…ผ๋ฆฌ์  ๋ฒ„๊ทธ์™€ ์˜์‹ฌ์Šค๋Ÿฌ์šด ๊ตฌ์กฐ๋ฅผ ์‹๋ณ„ํ•˜๊ณ  ํŒ€์˜ ๋ชจ๋ฒ” ์‚ฌ๋ก€๋ฅผ ๊ฐ•์ œํ•ฉ๋‹ˆ๋‹ค [2, 5, 6]. * **Prettier (์˜๊ฒฌ์ด ๋ฐ˜์˜๋œ Formatter):** ์ฝ”๋“œ์˜ ๋กœ์ง์—๋Š” ๊ด€์—ฌํ•˜์ง€ ์•Š๊ณ  ๋“ค์—ฌ์“ฐ๊ธฐ, ๋”ฐ์˜ดํ‘œ ์ผ๊ด€์„ฑ, ์ค„ ๋ฐ”๊ฟˆ ๋“ฑ ํ…์ŠคํŠธ์˜ ์‹œ๊ฐ์  ํ˜•ํƒœ๋ฅผ ์ผ๊ด€๋˜๊ฒŒ ์žฌ์ž‘์„ฑํ•˜์—ฌ ์ฝ”๋“œ ๊ฐ€๋…์„ฑ์„ ๋†’์ž…๋‹ˆ๋‹ค [2, 6, 7]. * **๊ทœ์น™ ์ถฉ๋Œ ๋ฐ ํ†ตํ•ฉ:** ESLint์—๋„ ํฌ๋งทํŒ… ์Šคํƒ€์ผ ๊ทœ์น™์ด ํฌํ•จ๋˜์–ด ์žˆ์–ด Prettier์™€ ์ถฉ๋Œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด `eslint-config-prettier`๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ถฉ๋Œํ•˜๋Š” ESLint ๊ทœ์น™์„ ๋น„ํ™œ์„ฑํ™”ํ•˜๊ณ , `eslint-plugin-prettier`๋ฅผ ํ†ตํ•ด Prettier๋ฅผ ESLint์˜ ๊ทœ์น™์ฒ˜๋Ÿผ ๋™์ž‘์‹œํ‚ค๋Š” ๋ฐฉ์‹์ด ๊ถŒ์žฅ๋ฉ๋‹ˆ๋‹ค [8-11]. * **์ž๋™ํ™” ๊ฒ€์—ด์˜ ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜ (Husky & lint-staged)** * ์ด๋Ÿฌํ•œ ๊ฒ€์—ด ๋„๊ตฌ๋“ค์€ `Husky`์™€ `lint-staged`๋ฅผ ํ™œ์šฉํ•ด Git์˜ 'pre-commit' ๋‹จ๊ณ„์—์„œ ๊ฐ•์ œ์ ์œผ๋กœ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค [12-14]. ์ €์žฅ์†Œ ์ „์ฒด๊ฐ€ ์•„๋‹Œ ๋ณ€๊ฒฝ๋œ ํŒŒ์ผ(staged files)์—๋งŒ ๊ฒ€์—ด ์—์ด์ „ํŠธ๋ฅผ ์‹คํ–‰์‹œ์ผœ ๊ฒ€์‚ฌ ์‹œ๊ฐ„์„ ์ˆ˜ ์ดˆ ๋‚ด๋กœ ๋‹จ์ถ•ํ•˜๊ณ , ํ’ˆ์งˆ ๋ฏธ๋‹ฌ ์ฝ”๋“œ๊ฐ€ ์ €์žฅ์†Œ์— ๋ณ‘ํ•ฉ๋˜๋Š” ๊ฒƒ์„ ์„ ์ œ์ ์œผ๋กœ ์ฐจ๋‹จํ•ฉ๋‹ˆ๋‹ค [13-15]. * **AI๋ฅผ ํ™œ์šฉํ•œ ์‹œ๋งจํ‹ฑ ์ง€๋Šฅ๊ณผ ์—์ด์ „ํŠธ์  ๊ฑฐ๋ฒ„๋„Œ์Šค** * ์ „ํ†ต์ ์ธ Linter๋Š” ํŒŒ์ผ ๋‚ด ํŒจํ„ด ๋งค์นญ์— ๊ทธ์ณ ๋ฌธ๋งฅ์„ ํŒŒ์•…ํ•˜์ง€ ๋ชปํ•˜๋Š” ํ•œ๊ณ„(Context-blind)๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค [3, 16]. ์ด๋ฅผ ๊ทน๋ณตํ•˜๊ธฐ ์œ„ํ•ด Snyk Code, SonarQube ๋“ฑ AI ๊ธฐ๋ฐ˜ ์ •์  ๋ถ„์„(SAST) ๋„๊ตฌ๊ฐ€ ๋„์ž…๋˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค [3, 17, 18]. * ์ˆ˜๋ฐฑ๋งŒ ๊ฐœ์˜ ์ปค๋ฐ‹์„ ํ•™์Šตํ•œ AI ๋ชจ๋ธ์€ ์˜ค์—ผ ๋ถ„์„(Taint Analysis) ๋ฐ ๋„๋‹ฌ ๊ฐ€๋Šฅ์„ฑ ๋ถ„์„์„ ์ˆ˜ํ–‰ํ•˜์—ฌ ํŒŒ์ผ ๊ฒฝ๊ณ„๋ฅผ ๋„˜๋‚˜๋“œ๋Š” ๋ณต์žกํ•œ ์ทจ์•ฝ์ ์„ ํŒŒ์•…ํ•˜๊ณ  ์•ˆ์ „ํ•œ ์ฝ”๋“œ ์ˆ˜์ •์„ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค [19, 20]. * **๊ธฐ๊ณ„ ๊ฒ€์—ด์˜ ์‹ฌ๋ฆฌ์‚ฌํšŒ์  ์˜ํ–ฅ ๋ฐ ํ•œ๊ณ„** * ๊ธฐ๊ณ„์— ์ฝ”๋“œ ๊ฒ€์—ด์„ ๋งก๊ธฐ๋ฉด ์‚ฌ์†Œํ•œ ์Šคํƒ€์ผ ๋…ผ์Ÿ์„ ์—†์• ๊ณ  ๊ฐœ๋ฐœ์ž์˜ ์ธ์ง€ ๋ถ€ํ•˜๋ฅผ ์ค„์—ฌ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง ํ•ด๊ฒฐ์— ๋ชฐ์ž…(Flow)ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋•์Šต๋‹ˆ๋‹ค [21, 22]. * ํ•˜์ง€๋งŒ ์ž๋™ํ™”์— ๊ณผ๋„ํ•˜๊ฒŒ ์˜์กดํ•  ๊ฒฝ์šฐ, ๊ฐœ๋ฐœ์ž์˜ ๋น„ํŒ์  ์‚ฌ๊ณ  ๊ทผ์œก์ด ํ‡ดํ™”ํ•˜๊ณ  ์ž๋™ํ™” ๋„๊ตฌ์˜ ๊ฒ€์‚ฌ๋งŒ ํ†ต๊ณผํ•˜๋ฉด ๋œ๋‹ค๊ณ  ์—ฌ๊ธฐ๋Š” '๋…น์ƒ‰ ์ฒดํฌ๋งˆํฌ ์ฆํ›„๊ตฐ(Green Check Mark Syndrome)'์„ ์œ ๋ฐœํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค [23, 24]. ๋˜ํ•œ AI ๋„๊ตฌ ์—ญ์‹œ ์ „์ฒด ์ทจ์•ฝ์ ์˜ ์•ฝ 22%๋ฅผ ๋†“์น˜๋Š” ์‚ฌ๊ฐ์ง€๋Œ€๊ฐ€ ์กด์žฌํ•˜๋ฏ€๋กœ, ์•„ํ‚คํ…์ฒ˜ ์„ค๊ณ„์™€ ๋„๋ฉ”์ธ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง ๋“ฑ ๊ณ ์œ„ํ—˜ ๊ฒ€ํ† ์—๋Š” ์—ฌ์ „ํžˆ ์ธ๊ฐ„์˜ ํŒ๋‹จ(Human-in-the-loop)์ด ํ•„์ˆ˜์ ์ž…๋‹ˆ๋‹ค [24-26]. ## โš ๏ธ ๋ชจ์ˆœ ๋ฐ ์—…๋ฐ์ดํŠธ (Contradictions & RL Update) - **๊ณผ๊ฑฐ ๋ฐ์ดํ„ฐ์™€์˜ ์ถฉ๋Œ:** ์ž๋™ํ™” ์—”์ง„์— ์˜ํ•ด ๋งคํ•‘๋œ ์ง€์‹์œผ๋กœ, ์ถ”ํ›„ ์ •๋ฐ€ ๊ฒ€์ฆ ํ•„์š”. - **์ •์ฑ… ๋ณ€ํ™”:** AI ๋ถ„์•ผ์˜ ์ž๋™ ์ž์‚ฐํ™” ์ˆ˜ํ–‰. ## ๐Ÿ”— ์ง€์‹ ์—ฐ๊ฒฐ (Graph) - **Related Topics:** [[SAST (แ„Œแ…ฅแ†ผแ„Œแ…ฅแ†จ แ„‹แ…ขแ„‘แ…ณแ†ฏแ„…แ…ตแ„แ…ฆแ„‹แ…ตแ„‰แ…งแ†ซ แ„‡แ…ฉแ„‹แ…กแ†ซ แ„แ…ฆแ„‰แ…ณแ„แ…ณ)|SAST (์ •์  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ณด์•ˆ ํ…Œ์ŠคํŠธ)]], [[AST (แ„Žแ…ฎแ„‰แ…กแ†ผ แ„€แ…ฎแ„†แ…ฎแ†ซ แ„แ…ณแ„…แ…ต)|AST (์ถ”์ƒ ๊ตฌ๋ฌธ ํŠธ๋ฆฌ)]], [[Husky & lint-staged|Husky & lint-staged]] - **Projects/Contexts:** [[Git Pre-commit แ„’แ…ฎแ†จแ„‹แ…ณแ†ฏ แ„’แ…ชแ†ฏแ„‹แ…ญแ†ผแ„’แ…กแ†ซ แ„€แ…ขแ„‡แ…กแ†ฏ แ„‹แ…ฏแ„แ…ณแ„‘แ…ณแ†ฏแ„…แ…ฉแ„‹แ…ฎ แ„Œแ…กแ„ƒแ…ฉแ†ผแ„’แ…ช|Git Pre-commit ํ›…์„ ํ™œ์šฉํ•œ ๊ฐœ๋ฐœ ์›Œํฌํ”Œ๋กœ์šฐ ์ž๋™ํ™”]], [[AI แ„แ…ฉแ„ƒแ…ณ แ„…แ…ตแ„‡แ…ฒ แ„†แ…ตแ†พ แ„‡แ…ฉแ„‹แ…กแ†ซ แ„Žแ…ฑแ„‹แ…ฃแ†จแ„Œแ…ฅแ†ท แ„Œแ…ฅแ†ทแ„€แ…ฅแ†ท(DevSecOps)|AI ์ฝ”๋“œ ๋ฆฌ๋ทฐ ๋ฐ ๋ณด์•ˆ ์ทจ์•ฝ์  ์ ๊ฒ€(DevSecOps)]] - **Contradictions/Notes:** ์†Œ์Šค๋Š” ๊ธฐ๊ณ„ ์ฃผ๋„์˜ ๊ฒ€์—ด์ด ๊ฐœ๋ฐœ ์ƒ์‚ฐ์„ฑ๊ณผ ์ฝ”๋“œ ํ’ˆ์งˆ์„ ๋†’์ธ๋‹ค๊ณ  ๊ธ์ •์ ์œผ๋กœ ํ‰๊ฐ€ํ•˜๋ฉด์„œ๋„, ๋™์‹œ์— AI ๋ชจ๋ธ์ด ์‹ค์ œ ์ทจ์•ฝ์ ์˜ ์ผ๋ถ€๋ฅผ ๋†“์น˜๊ณ  ๊ฐœ๋ฐœ์ž์˜ ๋น„ํŒ์  ์‚ฌ๊ณ ๋ฅผ ์•ฝํ™”์‹œ์ผœ ํ‘œ๋ฉด์  ๋ฌธ์ œ ํ•ด๊ฒฐ์— ์ง‘์ฐฉํ•˜๋Š” '๋…น์ƒ‰ ์ฒดํฌ๋งˆํฌ ์ฆํ›„๊ตฐ'์„ ์ดˆ๋ž˜ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ์—ญ์„ค์  ํ•œ๊ณ„๋ฅผ ๋ถ„๋ช…ํžˆ ์ง€์ ํ•ฉ๋‹ˆ๋‹ค [23, 24, 26]. --- *Last updated: 2026-04-18* - Raw Source: 00_Raw/2026-04-20/AI์™€ ๊ธฐ๊ณ„์—๊ฒŒ ๊ฒ€์—ด ๋งก๊ธฐ๊ธฐ_ - ์ •์  ๋ถ„์„ ํˆด (ESLint & Prettier)).md ---