๐Ÿ“– star365 Docs
โ† ๋ณด๊ณ ์„œ ๋ชฉ๋ก

stage8.club i18n ์ž”์žฌ ์ •๋ฐ€ ์ˆ˜์ • โ€” Sprint Retrospective

Date: 2026-05-02 Feature: stage8-landing-i18n-residue-fix-20260502 ์ž„์‹œ CEO: Claude (Opus 4.7) Done Criteria: 8/8 PASS (100%)

๋ฐฐ๊ฒฝ

์ง์ „ sprint (stage8-landing-global-i18n-20260502)์—์„œ 8 locale ร— 2 ํŽ˜์ด์ง€ = 16 HTML ๋ฐฐํฌ ์™„๋ฃŒ ์ฃผ์žฅ ํ›„ ์‚ฌ์šฉ์ž ์ •๋ฐ€ ์ ๊ฒ€ ์š”์ฒญ. "๊ฑฐ์ง“ ์™„์„ฑ ์ฃผ์žฅ ๊ธˆ์ง€" ๋ฃฐ ์ ์šฉ โ†’ 5๊ฑด์˜ ์‹ค์ œ ์ด์Šˆ ๋ฐœ๊ฒฌ.

๋ฐœ๊ฒฌ๋œ 5๊ฑด

# ์œ ํ˜• ์˜ํ–ฅ ๊ฒ€์ฆ ๋ฐฉ๋ฒ•
1 storyModal ๋ณธ๋ฌธ ๋ฏธ๋ฒˆ์—ญ (5 locale) ๐Ÿ”ด Critical grep 9 KO phrase per locale
2 canonical URL ๋ฏธ๊ฐฑ์‹  (14 ํŒŒ์ผ) ๐Ÿ”ด SEO ์น˜๋ช… regex ์ž๊ธฐ URL ์ผ์น˜
3 ZH FAQ summary + footnote partial mixed ๐ŸŸก ZH only grep "Stage ๋ณ„/้˜ถๆฎต๋ณ„"
4 lang-switcher JS ํ•œ๊ตญ์–ด ์ฃผ์„ (16 ํŒŒ์ผ) ๐ŸŸก minor grep "// ํ˜„์žฌ" "// ๊ฐ"
5 ๋ผ์ด๋ธŒ ํšŒ๊ท€ ๋ฏธ์‹ค์ธก ๐ŸŸก ๊ฒ€์ฆ ๋ถ€์žฌ curl HTTP 200 + 4์„œ๋ฒ„ ํŠธ๋ ˆ์ด๋”ฉ active

์ฒ˜๋ฆฌ

๋ณ‘๋ ฌ 4 ํŠธ๋ž™:

๊ฑฐ์ง“์™„์„ฑ ํšŒํ”ผ ์ ˆ์ฐจ

  1. ์ •๋ฐ€ ์ ๊ฒ€ ๋‹จ๊ณ„์—์„œ "์ž”์žฌ vs ์˜๋„๋œ ๋ณด์กด" ๋ถ„๋ฆฌ โ€” <!-- ์ฃผ์„ --> / lang-sw "ํ•œ๊ตญ์–ด ๋ผ๋ฒจ" ์ œ์™ธ ํ›„ ์ธก์ •
  2. xAI ๋ฒˆ์—ญ ๊ฒฐ๊ณผ ์ž์ฒด๊ฐ€ ํ•œ๊ตญ์–ด ๋ˆ„๋ฝ ๋ฐœ์ƒ โ†’ grep ๊ธฐ๋ฐ˜ ์‚ฌํ›„ ๊ฒ€์ฆ์œผ๋กœ ์žฌtry ํŠธ๋ฆฌ๊ฑฐ
  3. story.html 6 chunks/locale "์ž”์žฌ" ํ‘œ๋ฉด์  ๋ฐœ๊ฒฌ โ†’ ์‹ค์ œ๋Š” ๋ชจ๋‘ <!-- ยง4 ํ•ต์‹ฌ --> ๋“ฑ ์ฃผ์„ (false positive ์‹๋ณ„)

๊ฒฐ๊ณผ

๊ฒ€์ฆ ๋ถˆ๊ฐ€ (์ •์ง ์‹œ์ธ)

๋ฉ”ํŠธ๋ฆญ