2026.06.07 (์ผ)
2026.06.08 (์›”) ์ˆ˜์ •

โœจ GPT-5.5์˜ ์š”์•ฝ ใ€€

hyuk.blog ์ „์ฒด๋ฅผ ์˜์–ด ๋ฒ„์ „์œผ๋กœ ํ™•์žฅํ•˜๋ฉด์„œ /en/ ๊ตฌ์กฐ, ๋ฒˆ์—ญ ํ’ˆ์งˆ, ์–ธ์–ด ์ „ํ™˜ UI, ์กฐํšŒ์ˆ˜ ๊ณต์œ ๊นŒ์ง€ ํ•œ ๋ฒˆ์— ์ ๊ฒ€ํ•˜๊ฒŒ ๋œ ๊ธฐ๋ก.

์ด๋ฒˆ ์ž‘์—…์€ ์ฒ˜์Œ์—๋Š” ๋‹จ์ˆœํ•ด ๋ณด์˜€๋‹ค.

๋ธ”๋กœ๊ทธ์— ์˜์–ด ๋ฒ„์ „์„ ๋ถ™์ด๋ฉด ๋œ๋‹ค.

ํ•˜์ง€๋งŒ ์‹ค์ œ๋กœ๋Š” ๊ทธ๋ ‡์ง€ ์•Š์•˜๋‹ค. ๊ธ€์„ ๋ฒˆ์—ญํ•˜๋Š” ์ž‘์—…์ด ์•„๋‹ˆ๋ผ, ๋ธ”๋กœ๊ทธ ์ „์ฒด๋ฅผ ํ•œ/์˜ ์ด์ค‘ ๊ตฌ์กฐ๋กœ ๋ฐ”๊พธ๋Š” ์ž‘์—…์ด์—ˆ๋‹ค. URL ๊ตฌ์กฐ, SEO, ๊ฒ€์ƒ‰, ์นดํ…Œ๊ณ ๋ฆฌ, ์‚ฌ์ด๋“œ๋ฐ”, ๋Œ“๊ธ€ UI, ์กฐํšŒ์ˆ˜, ๋ฐฐํฌ ๋ฐฉ์‹, ์•ž์œผ๋กœ ๊ธ€์„ ์“ธ ๋•Œ์˜ ์šด์˜ ๊ทœ์น™๊นŒ์ง€ ์ „๋ถ€ ๊ฐ™์ด ์›€์ง์˜€๋‹ค.

์ฒ˜์Œ ์งˆ๋ฌธ์€ ์ด๊ฑฐ์˜€๋‹ค.

en.hyuk.blog๊ฐ€ ๋‚˜์„๊นŒ?
/en/์ด ๋‚˜์„๊นŒ?

๊ฒฐ๋ก ์€ /en/์ด์—ˆ๋‹ค.

์˜์–ดํŒ์„ ์™„์ „ํžˆ ๋‹ค๋ฅธ ์ œํ’ˆ์ฒ˜๋Ÿผ ์šด์˜ํ•  ์ƒ๊ฐ์ด๋ฉด subdomain๋„ ๊ฐ€๋Šฅํ•˜๋‹ค. ํ•˜์ง€๋งŒ ์ง€๊ธˆ ๋ธ”๋กœ๊ทธ๋Š” ํ•œ๊ตญ์–ด ์›๋ฌธ์„ ์ค‘์‹ฌ์œผ๋กœ ์˜์–ด ๋ฒˆ์—ญ์„ ๋ถ™์ด๋Š” ๊ตฌ์กฐ๋‹ค. ๊ฐ™์€ ๋„๋ฉ”์ธ ์•ˆ์—์„œ ์–ธ์–ด๋ณ„ URL์„ ๋ถ„๋ฆฌํ•˜๊ณ , hreflang์œผ๋กœ ์„œ๋กœ๋ฅผ ์—ฐ๊ฒฐํ•˜๋Š” ์ชฝ์ด ๋” ๋‹จ์ˆœํ•˜๊ณ  ์šด์˜ํ•˜๊ธฐ ์ข‹์•˜๋‹ค.

๊ทธ๋ž˜์„œ ๋ชฉํ‘œ๋Š” ์ด๋ ‡๊ฒŒ ์žกํ˜”๋‹ค.

hyuk.blog/...      ํ•œ๊ตญ์–ด ์›๋ฌธ
hyuk.blog/en/...   ์˜์–ด ๋ฒ„์ „

์ด ๊ฒฐ์ • ํ•˜๋‚˜ ๋•Œ๋ฌธ์— ๋’ค์˜ ์ž‘์—… ๋ฐฉํ–ฅ์ด ์ „๋ถ€ ์ •๋ฆฌ๋๋‹ค.

์˜์–ดํŒ์€ ํŽ˜์ด์ง€ ๋ช‡ ๊ฐœ๊ฐ€ ์•„๋‹ˆ๋ผ ๋ธ”๋กœ๊ทธ ์ „์ฒด์˜€๋‹ค

์ฒ˜์Œ์—๋Š” ์˜์–ด ํ™ˆ, ์˜์–ด ์†Œ๊ฐœ, ์˜์–ด ์นดํ…Œ๊ณ ๋ฆฌ ์ •๋„๋ฅผ ๋งŒ๋“ค๋ฉด ๋  ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์˜€๋‹ค.

ํ•˜์ง€๋งŒ ๋ธ”๋กœ๊ทธ๋Š” ๊ทธ๋ ‡๊ฒŒ ์–‡์ง€ ์•Š์•˜๋‹ค.

/en/์„ ๋ถ™์ด๋ฉด ๋‹ค์Œ ๊ฒƒ๋“ค์ด ์ „๋ถ€ ์–ธ์–ด๋ฅผ ์•Œ์•„์•ผ ํ•œ๋‹ค.

ํ™ˆ
์นดํ…Œ๊ณ ๋ฆฌ ํŽ˜์ด์ง€
์‚ฌ์ด๋“œ๋ฐ” ์นดํ…Œ๊ณ ๋ฆฌ
์ตœ์‹  ๊ธ€ ๋ชฉ๋ก
๊ธ€ ๋ชฉ๋ก ๋ฉ”ํƒ€
๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ
๊ด€๋ จ ๊ธ€
๋Œ“๊ธ€ UI
SEO title/description
canonical/hreflang
sitemap
feed
์กฐํšŒ์ˆ˜

๊ทธ๋ž˜์„œ ์˜์–ด ๊ธ€์€ _posts/en ๊ฐ™์€ ํ•˜์œ„ ํด๋”๋กœ ๋„ฃ์ง€ ์•Š์•˜๋‹ค.

Jekyll์—์„œ _posts ์•„๋ž˜์— ๋„ฃ์œผ๋ฉด ๊ฒฐ๊ตญ site.posts์— ์„ž์ธ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ํ•œ๊ตญ์–ด ํ™ˆ pagination๊ณผ feed๊ฐ€ ์˜์–ด ๊ธ€๊นŒ์ง€ ๊ฐ™์ด ๋จน์„ ์ˆ˜ ์žˆ๋‹ค. ์ด๊ฑด ์‹œ์ž‘๋ถ€ํ„ฐ ๊ตฌ์กฐ๊ฐ€ ๊ผฌ์ด๋Š” ๋ฐฉ์‹์ด๋‹ค.

๋Œ€์‹  ์˜์–ด ๊ธ€์€ ๋ณ„๋„ collection์œผ๋กœ ๋ถ„๋ฆฌํ–ˆ๋‹ค.

collections:
  en_posts:
    output: true
    permalink: /:categories/:title/

ํŒŒ์ผ์€ _en_posts/์— ๋‘๊ณ , front matter์˜ category์— en์„ ํฌํ•จํ•ด URL์„ ๋งŒ๋“ ๋‹ค.

_posts/...      -> /daily-review/2026-06-07/
_en_posts/...   -> /en/daily-review/2026-06-07/

์ด๊ฒŒ ์ฒซ ๋ฒˆ์งธ ๊ตํ›ˆ์ด์—ˆ๋‹ค.

๋‹ค๊ตญ์–ด ๋ธ”๋กœ๊ทธ๋Š” ๋ฒˆ์—ญ ํŒŒ์ผ์„ ์ถ”๊ฐ€ํ•˜๋Š” ์ผ์ด ์•„๋‹ˆ๋ผ, collection ๊ฒฝ๊ณ„๋ฅผ ์ •ํ•˜๋Š” ์ผ์ด๋‹ค.

๊ฒฝ๊ณ„๋ฅผ ์ž˜๋ชป ์žก์œผ๋ฉด ๋‚˜์ค‘์— pagination, search, feed, category, related posts๊ฐ€ ์กฐ์šฉํžˆ ์˜ค์—ผ๋œ๋‹ค.

๋ฒˆ์—ญ ํ’ˆ์งˆ์€ ์ƒ์„ฑ๋ณด๋‹ค ๊ฒ€์ˆ˜๊ฐ€ ๋จผ์ €์˜€๋‹ค

๊ฐ€์žฅ ํฌ๊ฒŒ ์‚๋—ํ•œ ์ง€์ ์€ ๋ฒˆ์—ญ์ด์—ˆ๋‹ค.

์ฒ˜์Œ์—๋Š” bulk ๋ฒˆ์—ญ์„ ๋ฐ€์–ด๋ถ™์ด๋ฉด ๋  ์ค„ ์•Œ์•˜๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ์ƒ˜ํ”Œ์„ ๋ณด๋‹ˆ ๋ฐ”๋กœ ์‹ ๋ขฐ๊ฐ€ ๊นจ์กŒ๋‹ค. ์–ด๋–ค ํŒŒ์ผ์—๋Š” ๋ฒˆ์—ญ๋ฌธ ์•ˆ์— ํ”„๋กฌํ”„ํŠธ ์ง€์‹œ๋ฌธ์ด ๊ทธ๋Œ€๋กœ ๋“ค์–ด๊ฐ€ ์žˆ์—ˆ๋‹ค.

Return only the translated content. Do not add notes or fences.

์ด๊ฑด ๋‹จ์ˆœ ์˜คํƒ€๊ฐ€ ์•„๋‹ˆ๋‹ค.

๋ฒˆ์—ญ ์‹œ์Šคํ…œ์ด ์ถœ๋ ฅ๋ฌผ์„ ์ œ๋Œ€๋กœ ํ†ต์ œํ•˜์ง€ ๋ชปํ–ˆ๋‹ค๋Š” ์ฆ๊ฑฐ๋‹ค. ์ด๋Ÿฐ ์ƒํƒœ์—์„œ 300๊ฐœ ๋„˜๋Š” ๊ธ€์„ patch review๋กœ ๋•Œ์šฐ๋Š” ๊ฑด ์œ„ํ—˜ํ–ˆ๋‹ค. ์ผ๋ถ€๋งŒ ์–ด์ƒ‰ํ•œ ๊ฒŒ ์•„๋‹ˆ๋ผ, ์ „์ฒด ์ƒ์„ฑ ๊ฒฝ๋กœ๋ฅผ ๋ฏฟ์„ ์ˆ˜ ์—†๋‹ค๋Š” ๋œป์ด์—ˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

๊ทธ๋ž˜์„œ ํŒ๋‹จ์„ ๋ฐ”๊ฟจ๋‹ค.

์“ฐ๋ ˆ๊ธฐ ๋ฒˆ์—ญ ๊ฒ€์ˆ˜๋ณด๋‹ค ์žฌ์ƒ์„ฑ์ด ๋‚ซ๋‹ค.

์ƒ˜ํ”Œ 10๊ฐœ๋ฅผ ๋ณด์ž๊ณ  ํ–ˆ๊ณ , ๊ฒฐ๋ก ์€ ๊ธฐ์กด ๋ฒˆ์—ญ์„ ์‚ด๋ฆฌ๋Š” ์ชฝ์ด ์•„๋‹ˆ๋ผ ์ „์ฒด ์žฌ์ƒ์„ฑ ์ชฝ์ด์—ˆ๋‹ค. ์ดํ›„์—๋Š” ์ตœ์‹  GPT ๋ชจ๋ธ์„ ์“ฐ๋Š” worker ๊ธฐ์ค€์„ ๋ฃฐ์— ๋„ฃ๊ณ , ์˜์–ด ๊ธ€ ์ƒ์„ฑ/์ˆ˜์ • ์‹œ ํ•œ๊ตญ์–ด ์›๋ฌธ๊ณผ ๊ฐ™์ด ์›€์ง์ด๋„๋ก repo ๊ทœ์น™๋„ ์ถ”๊ฐ€ํ–ˆ๋‹ค.

์ด ๋ถ€๋ถ„์€ ๊ธฐ์ˆ ๋ณด๋‹ค ์šด์˜ ์›์น™์— ๊ฐ€๊นŒ์› ๋‹ค.

๋Œ€๋Ÿ‰ ์ƒ์„ฑ์€ ๋น ๋ฅด๋‹ค. ํ•˜์ง€๋งŒ ๋น ๋ฅธ ์ƒ์„ฑ์€ ๋น ๋ฅธ ์˜ค์—ผ์ด๊ธฐ๋„ ํ•˜๋‹ค. ํŠนํžˆ ๊ณต๊ฐœ ๊ธ€ ๋ฒˆ์—ญ์€ ํ•œ๋‘ ๊ฐœ๊ฐ€ ํ‹€๋ฆฌ๋ฉด ๋์ด ์•„๋‹ˆ๋‹ค. ๋…์ž๋Š” โ€œ์ด ๋ธ”๋กœ๊ทธ ์˜์–ดํŒ์€ ๋ชป ๋ฏฟ๊ฒ ๋‹คโ€๊ณ  ํŒ๋‹จํ•œ๋‹ค.

๊ทธ๋ž˜์„œ ์ด๋ฒˆ ์ž‘์—…์˜ ๋‘ ๋ฒˆ์งธ ๊ตํ›ˆ์€ ์ด๊ฑฐ๋‹ค.

๋Œ€๋Ÿ‰ ๋ฒˆ์—ญ์€ ์™„๋ฃŒ์œจ๋ณด๋‹ค ์‹ ๋ขฐ ๊ฒฝ๋กœ๊ฐ€ ๋จผ์ €๋‹ค.

๋ช‡ ํผ์„ผํŠธ ๋ฒˆ์—ญ๋๋Š”์ง€๋ณด๋‹ค, ์–ด๋–ค ๋ชจ๋ธ๋กœ, ์–ด๋–ค ๊ธฐ์ค€์œผ๋กœ, ์–ด๋–ค ๊ฒ€์ˆ˜ ํ๋ฆ„์„ ํ†ต๊ณผํ–ˆ๋Š”์ง€๊ฐ€ ๋” ์ค‘์š”ํ•˜๋‹ค.

์–ธ์–ด ์ „ํ™˜์€ ๋ฉ”๋‰ด์— ์žˆ์œผ๋ฉด ์ถฉ๋ถ„ํ•˜์ง€ ์•Š์•˜๋‹ค

์˜์–ดํŒ์„ ๋ฐฐํฌํ•œ ๋’ค ๋ฐ”๋กœ ๋ฌธ์ œ๊ฐ€ ๋ณด์˜€๋‹ค.

์ง์ ‘ URL์€ ์—ด๋ ธ๋‹ค.

https://hyuk.blog/
https://hyuk.blog/en/

๊ทธ๋Ÿฐ๋ฐ ์‚ฌ์šฉ์ž๊ฐ€ ํ•œ/์˜ ์ „ํ™˜์„ ๋ชป ์ฐพ์•˜๋‹ค.

์ฒ˜์Œ ๊ตฌํ˜„์—์„œ๋Š” English / ํ•œ๊ตญ์–ด ๋งํฌ๋ฅผ masthead์˜ ์ผ๋ฐ˜ ๋ฉ”๋‰ด ํ•ญ๋ชฉ ์•ˆ์— ๋„ฃ์—ˆ๋‹ค. HTML์—๋Š” ์žˆ์—ˆ๋‹ค. ๋ผ์ด๋ธŒ ํŽ˜์ด์ง€์—๋„ ๋งํฌ๋Š” ์žˆ์—ˆ๋‹ค. ํ•˜์ง€๋งŒ ์‚ฌ์šฉ์ž ์ž…์žฅ์—์„œ๋Š” ์•ˆ ๋ณด์ด๋Š” ๊ฒƒ์ด๋‚˜ ๋งˆ์ฐฌ๊ฐ€์ง€์˜€๋‹ค.

Minimal Mistakes์˜ greedy navigation์€ ํ™”๋ฉด ํญ์— ๋”ฐ๋ผ ๋ฉ”๋‰ด๋ฅผ ์ˆจ๊ธฐ๊ฑฐ๋‚˜ ์ด๋™์‹œํ‚จ๋‹ค. ๋ชจ๋ฐ”์ผ์—์„œ๋Š” ํ–„๋ฒ„๊ฑฐ ๋ฉ”๋‰ด ์•ˆ์ชฝ์œผ๋กœ ๋“ค์–ด๊ฐ„๋‹ค. โ€œ์žˆ๋‹คโ€์™€ โ€œ๋ณด์ธ๋‹คโ€๋Š” ๋‹ค๋ฅด๋‹ค.

๊ทธ๋ž˜์„œ ์–ธ์–ด ์ „ํ™˜ ๋งํฌ๋ฅผ ๋ฉ”๋‰ด ํ•ญ๋ชฉ์—์„œ ๋นผ์„œ ๋ณ„๋„ ๋ฒ„ํŠผ์œผ๋กœ ๋งŒ๋“ค์—ˆ๋‹ค.

<a class="masthead__language-switch" href="/en/" hreflang="en">English</a>

๊ทธ๋ฆฌ๊ณ  desktop/mobile ์–‘์ชฝ์—์„œ ํ•ญ์ƒ ๋ณด์ด๋„๋ก ์Šคํƒ€์ผ์„ ๋ถ™์˜€๋‹ค.

์ด๊ฑด ์ž‘์€ UI ์ˆ˜์ •์ด์ง€๋งŒ ๊ตํ›ˆ์ด ์ปธ๋‹ค.

๋‹ค๊ตญ์–ด ์‚ฌ์ดํŠธ์˜ ์–ธ์–ด ์ „ํ™˜์€ navigation item์ด ์•„๋‹ˆ๋ผ global control์ด๋‹ค.

๊ฒ€์ƒ‰ ๋ฒ„ํŠผ์ด๋‚˜ ๋‹คํฌ๋ชจ๋“œ ํ† ๊ธ€์ฒ˜๋Ÿผ, ์–ด๋А ํ™”๋ฉด์—์„œ๋„ ์ฐพ์„ ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค. ํŠนํžˆ ๋ธ”๋กœ๊ทธ์ฒ˜๋Ÿผ ๊ธ€์„ ์ฝ๋‹ค๊ฐ€ ์–ธ์–ด๋ฅผ ๋ฐ”๊พธ๋Š” ํ๋ฆ„์ด ์ž์—ฐ์Šค๋Ÿฌ์šด ์‚ฌ์ดํŠธ์—์„œ๋Š” ๋” ๊ทธ๋ ‡๋‹ค.

์กฐํšŒ์ˆ˜๋Š” ์–ธ์–ด๋ณ„๋กœ ์ชผ๊ฐœ๋ฉด ์•ˆ ๋๋‹ค

๋‹ค์Œ ๋ฌธ์ œ๋Š” ์กฐํšŒ์ˆ˜์˜€๋‹ค.

์ด ๋ธ”๋กœ๊ทธ์—๋Š” /devlog/github-pages-blog/github-pages-blog-visitor-counter/์—์„œ ๋ถ™์ธ ๋ฐฉ๋ฌธ์ž ์นด์šดํ„ฐ๊ฐ€ ์žˆ๋‹ค.

์ฒ˜์Œ ๊ตฌ์กฐ์—์„œ๋Š” ๊ธ€๋ณ„ ์กฐํšŒ์ˆ˜ key๊ฐ€ document.url์ด์—ˆ๋‹ค.

data-page-view-path=""

๊ทธ๋Ÿฌ๋ฉด ํ•œ๊ธ€ ๊ธ€๊ณผ ์˜์–ด ๊ธ€์€ ์„œ๋กœ ๋‹ค๋ฅธ ๊ธ€์ฒ˜๋Ÿผ ์„ธ์–ด์ง„๋‹ค.

/daily-review/2026-06-07/
/en/daily-review/2026-06-07/

์ด๊ฑด ๋‚ด๊ฐ€ ์›ํ•œ ๊ฒŒ ์•„๋‹ˆ์—ˆ๋‹ค.

์˜์–ด ๊ธ€์€ ๋‹ค๋ฅธ ๊ธ€์ด ์•„๋‹ˆ๋ผ ๊ฐ™์€ ๊ธ€์˜ ๋ฒˆ์—ญ์ด๋‹ค. ์กฐํšŒ์ˆ˜๋„ ๊ฐ™์€ ๊ธ€์˜ ์กฐํšŒ์ˆ˜๋กœ ๊ณต์œ ๋˜์–ด์•ผ ํ•œ๋‹ค. ๊ทธ๋ž˜์„œ ์˜์–ด ๊ธ€์˜ data-page-view-path๋Š” /en/...๊ฐ€ ์•„๋‹ˆ๋ผ ํ•œ๊ตญ์–ด canonical path๋กœ ๋ Œ๋”๋งํ•˜๊ฒŒ ํ–ˆ๋‹ค.

/en/daily-review/2026-06-07/ -> /daily-review/2026-06-07/

ํด๋ผ์ด์–ธํŠธ JS์—์„œ๋„ /en/...๋ฅผ /...๋กœ normalizeํ–ˆ๋‹ค.

Cloudflare Worker๋„ ๊ฐ™์€ ์ •๊ทœํ™”๋ฅผ ํ•˜๊ฒŒ ํ–ˆ๋‹ค. ํ˜น์‹œ ํด๋ผ์ด์–ธํŠธ์—์„œ /en/...๊ฐ€ ๋“ค์–ด์™€๋„ ์„œ๋ฒ„์—์„œ ๋‹ค์‹œ ์ ‘๋Š”๋‹ค.

normalizedPath = normalizedPath.replace(/^\/en(?=\/|$)/, "") || "/";

๊ทธ๋ฆฌ๊ณ  ์—ฌ๊ธฐ์„œ ํ•œ ๋ฒˆ ๋” ์ƒ๊ฐํ•ด์•ผ ํ–ˆ๋‹ค.

์–ธ์–ด ์ „ํ™˜์„ ํ•˜๋ฉด today๊ฐ€ 2๊ฐœ์”ฉ ์˜ฌ๋ผ๊ฐ€๋ฉด ์•ˆ ๋œ๋‹ค.

/daily-review/x/ -> /en/daily-review/x/
/ -> /en/

๊ฐ™์€ ๋ธŒ๋ผ์šฐ์ €์—์„œ ๊ฐ™์€ canonical page๋ฅผ ์–ธ์–ด๋งŒ ๋ฐ”๊ฟ” ๋ณด๋Š” ๊ฒƒ์€ ์ƒˆ page view๋กœ ์„ธ๋ฉด ์•ˆ ๋œ๋‹ค. ๊ทธ๋ž˜์„œ dedupe key๋„ normalized path ๊ธฐ์ค€์œผ๋กœ ๋งž์ท„๋‹ค. ํ•œ๊ธ€ ๊ธ€๊ณผ ์˜์–ด ๊ธ€์ด ๊ฐ™์€ path๋กœ dedupe๋˜๋ฉด, 10๋ถ„ ์•ˆ์— ์–ธ์–ด๋งŒ ๋ฐ”๊ฟ”๋„ today/month/total์ด ๋‘ ๋ฒˆ ์˜ฌ๋ผ๊ฐ€์ง€ ์•Š๋Š”๋‹ค.

๋ฐ˜๋Œ€๋กœ ๋‹ค๋ฅธ ๊ธ€๋กœ ์ด๋™ํ•˜๋ฉด ๋‹ค๋ฅธ canonical page๋‹ˆ๊นŒ ํ•œ ๋ฒˆ ๋” ์˜ฌ๋ผ๊ฐ€๋Š” ๊ฒŒ ๋งž๋‹ค. ์ด ์นด์šดํ„ฐ๋Š” unique visitor๊ฐ€ ์•„๋‹ˆ๋ผ page view counter๋‹ค.

์ด๊ฒŒ ๋„ค ๋ฒˆ์งธ ๊ตํ›ˆ์ด์—ˆ๋‹ค.

๋‹ค๊ตญ์–ด์˜ canonical ๊ฐœ๋…์€ SEO๋งŒ์˜ ๋ฌธ์ œ๊ฐ€ ์•„๋‹ˆ๋‹ค. ํ†ต๊ณ„, dedupe, UI ํ‘œ์‹œ๊นŒ์ง€ ๊ฐ™์€ ๊ธฐ์ค€์„ ์จ์•ผ ํ•œ๋‹ค.

Cloudflare Worker ๋ฐฐํฌ๋„ repo์— ๊ณ ์ •ํ•ด์•ผ ํ–ˆ๋‹ค

์กฐํšŒ์ˆ˜ Worker๋ฅผ ์ˆ˜์ •ํ•˜๋ฉด์„œ ๋˜ ํ•˜๋‚˜ ๊ฑธ๋ ธ๋‹ค.

์ฒ˜์Œ์—๋Š” CLI๋กœ ๋ฐ”๋กœ ๋ฐฐํฌํ•˜๋ฉด ๋  ๊ฒƒ ๊ฐ™์•˜๋‹ค.

npx wrangler deploy cloudflare/ga-stats-worker.js --name hyuk-blog-ga-stats --keep-vars

ํ•˜์ง€๋งŒ dry-run์—์„œ ์ด๋Ÿฐ ์‹ ํ˜ธ๊ฐ€ ๋‚˜์™”๋‹ค.

No bindings found.

๊ทธ๋Œ€๋กœ ๋ฐฐํฌํ•˜๋ฉด D1 DB ๋ฐ”์ธ๋”ฉ์ด ๋น ์งˆ ์ˆ˜ ์žˆ์—ˆ๋‹ค.

์ด๊ฑด ์œ„ํ—˜ํ–ˆ๋‹ค. Worker ์ฝ”๋“œ๋Š” ๋ฐฐํฌ๋๋Š”๋ฐ env.DB๊ฐ€ ์—†์œผ๋ฉด ๋ฐฉ๋ฌธ์ž ์นด์šดํ„ฐ๊ฐ€ ๋ฐ”๋กœ ๊นจ์ง„๋‹ค.

๊ทธ๋ž˜์„œ wrangler.toml์„ repo์— ์ถ”๊ฐ€ํ–ˆ๋‹ค.

name = "hyuk-blog-ga-stats"
main = "cloudflare/ga-stats-worker.js"
compatibility_date = "2026-06-07"

[[d1_databases]]
binding = "DB"
database_name = "hyuk-blog-view-counter"
database_id = "..."

๊ทธ ๋‹ค์Œ dry-run์—์„œ ๋ฐ”์ธ๋”ฉ์„ ํ™•์ธํ–ˆ๋‹ค.

env.DB (hyuk-blog-view-counter)      D1 Database

๊ทธ์ œ์•ผ ์‹ค์ œ ๋ฐฐํฌํ–ˆ๋‹ค.

npx wrangler deploy --keep-vars

์—ฌ๊ธฐ์„œ๋„ ๊ตํ›ˆ์€ ๋‹จ์ˆœํ–ˆ๋‹ค.

dashboard์— ์žˆ๋Š” ์šด์˜ ์„ค์ •์„ ๊ธฐ์–ต์œผ๋กœ ๋ฐฐํฌํ•˜๋ฉด ์•ˆ ๋œ๋‹ค.

Worker ์ด๋ฆ„, entrypoint, compatibility date, D1 binding์ฒ˜๋Ÿผ ๋ฐฐํฌ์— ํ•„์š”ํ•œ ๊ฒƒ์€ repo ์„ค์ •์œผ๋กœ ๋‚จ๊ฒจ์•ผ ํ•œ๋‹ค. secret ๊ฐ’์€ ์ปค๋ฐ‹ํ•˜๋ฉด ์•ˆ ๋˜์ง€๋งŒ, ์–ด๋–ค binding์ด ํ•„์š”ํ•œ์ง€๋Š” ์ปค๋ฐ‹ํ•ด์•ผ ํ•œ๋‹ค.

์ด๋ฒˆ ์ž‘์—…์—์„œ ๋ฐ”๋€ ๊ฒƒ

์ปค๋ฐ‹ ํ๋ฆ„์œผ๋กœ ๋ณด๋ฉด ํ•ต์‹ฌ์€ ๋„ค ๋‹จ๊ณ„์˜€๋‹ค.

9dbd40b  feat: add english blog version
e936464  update: require english post sync
117b3f3  fix: show language switch in masthead
cc58021  fix: share english view counts

์ฒซ ์ปค๋ฐ‹์—์„œ /en/ ์˜์–ด ๋ธ”๋กœ๊ทธ ๊ตฌ์กฐ์™€ _en_posts ๋ฒˆ์—ญ corpus๋ฅผ ๋ถ™์˜€๋‹ค. ์ด๋•Œ ์˜์–ด navigation, sidebar, search, SEO, hreflang, sitemap, category pages, related posts ๊ฐ™์€ ์–ธ์–ด ์ธ์‹ ๊ตฌ์กฐ๊ฐ€ ๊ฐ™์ด ๋“ค์–ด๊ฐ”๋‹ค.

๋‘ ๋ฒˆ์งธ ์ปค๋ฐ‹์—์„œ๋Š” ์•ž์œผ๋กœ ๊ธ€์„ ๋งŒ๋“ค๊ฑฐ๋‚˜ ์ˆ˜์ •ํ•  ๋•Œ ์˜์–ด ๋ฒˆ์—ญ๋„ ํ•จ๊ป˜ ๋งž์ถ”๋Š” repo ๊ทœ์น™์„ ์ถ”๊ฐ€ํ–ˆ๋‹ค.

์„ธ ๋ฒˆ์งธ ์ปค๋ฐ‹์—์„œ๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ์‹ค์ œ๋กœ ์ฐพ์ง€ ๋ชปํ•œ ์–ธ์–ด ์ „ํ™˜ ๋งํฌ๋ฅผ masthead์˜ ํ•ญ์ƒ ๋ณด์ด๋Š” ๋ฒ„ํŠผ์œผ๋กœ ๋บ๋‹ค.

๋„ค ๋ฒˆ์งธ ์ปค๋ฐ‹์—์„œ๋Š” ์กฐํšŒ์ˆ˜ ๊ณต์œ ์™€ Worker ๋ฐฐํฌ ๊ตฌ์กฐ๋ฅผ ๋ฐ”๋กœ์žก์•˜๋‹ค. ํ•œ๊ธ€/์˜์–ด ๊ฐ™์€ ๊ธ€์ด ๊ฐ™์€ ์กฐํšŒ์ˆ˜ key๋ฅผ ์“ฐ๊ณ , /en/ ์ ‘์†๋„ canonical path ๊ธฐ์ค€์œผ๋กœ dedupe๋˜๊ฒŒ ํ–ˆ๋‹ค.

๊ฒฐ๊ณผ

์ด์ œ ๋ธ”๋กœ๊ทธ๋Š” ์ด๋Ÿฐ ๊ตฌ์กฐ๊ฐ€ ๋๋‹ค.

hyuk.blog/...      ํ•œ๊ตญ์–ด ์›๋ฌธ
hyuk.blog/en/...   ์˜์–ด ๋ฒˆ์—ญ

์˜์–ดํŒ์€ ๋ณ„๋„ collection์— ์žˆ๋‹ค. ํ•œ๊ตญ์–ด ํ™ˆ๊ณผ feed๋ฅผ ์˜ค์—ผ์‹œํ‚ค์ง€ ์•Š๋Š”๋‹ค. ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ๋„ ์–ธ์–ด๋ณ„๋กœ ๊ฐˆ๋ผ์ง„๋‹ค. SEO์—๋Š” hreflang์ด ๋ถ™๋Š”๋‹ค. masthead์—๋Š” ํ•ญ์ƒ ๋ณด์ด๋Š” ์–ธ์–ด ์ „ํ™˜ ๋ฒ„ํŠผ์ด ์žˆ๋‹ค. ์กฐํšŒ์ˆ˜๋Š” ํ•œ/์˜ ๊ฐ™์€ ๊ธ€์ด๋ฉด ๊ฐ™์€ ์ˆซ์ž๋ฅผ ์“ด๋‹ค. ์–ธ์–ด๋งŒ ๋ฐ”๊ฟ”๋„ today๊ฐ€ 2๊ฐœ์”ฉ ํŠ€์ง€ ์•Š๋Š”๋‹ค.

์ž‘์—… ์ž์ฒด๋Š” ๊ฝค ์ปธ๋‹ค.

ํ•˜์ง€๋งŒ ๊ฐ€์žฅ ์ค‘์š”ํ•œ ๊ฑด ๊ธฐ๋Šฅ๋ณด๋‹ค ๊ธฐ์ค€์ด์—ˆ๋‹ค.

์ด๋ฒˆ ์ž‘์—…์„ ํ•˜๋ฉด์„œ ๊ธฐ์ค€์ด ์—ฌ๋Ÿฌ ๊ฐœ ์ƒ๊ฒผ๋‹ค.

์–ธ์–ด URL์€ /en/์œผ๋กœ ๊ฐ„๋‹ค.
์˜์–ด ๊ธ€์€ _en_posts collection์œผ๋กœ ๋ถ„๋ฆฌํ•œ๋‹ค.
๋ฒˆ์—ญ์€ ์ตœ์‹  GPT ๋ชจ๋ธ ๊ธฐ๋ฐ˜์œผ๋กœ ์ƒ์„ฑ/๊ฒ€์ˆ˜ํ•œ๋‹ค.
๊ณต๊ฐœ ๊ธ€ ์ƒ์„ฑ/์ˆ˜์ • ์‹œ ์˜์–ด ๋ฒˆ์—ญ๋„ ๊ฐ™์ด ๋งž์ถ˜๋‹ค.
์–ธ์–ด ์ „ํ™˜์€ ํ•ญ์ƒ ๋ณด์ด๋Š” global control๋กœ ๋‘”๋‹ค.
์กฐํšŒ์ˆ˜์™€ dedupe๋Š” ์–ธ์–ด URL์ด ์•„๋‹ˆ๋ผ canonical page ๊ธฐ์ค€์œผ๋กœ ์žก๋Š”๋‹ค.
Worker ๋ฐฐํฌ ์„ค์ •์€ wrangler.toml์— ๋‚จ๊ธด๋‹ค.

์ด๊ฒŒ ์ด๋ฒˆ ์ž‘์—…์˜ ์ง„์งœ ์‚ฐ์ถœ๋ฌผ์ด๋‹ค.

์˜์–ดํŒ์„ ๋ถ™์ธ ๊ฒƒ๋„ ์ค‘์š”ํ•˜์ง€๋งŒ, ๋” ์ค‘์š”ํ•œ ๊ฑด ์•ž์œผ๋กœ ๋ธ”๋กœ๊ทธ๊ฐ€ ๋‹ค๊ตญ์–ด ์ƒํƒœ๋กœ ๊ณ„์† ์šด์˜๋  ์ˆ˜ ์žˆ๋Š” ๊ธฐ์ค€์„ ๋งŒ๋“  ๊ฒƒ์ด๋‹ค.

๊ทธ๋ฆฌ๊ณ  ์—ฌ๊ธฐ์„œ ๋‹ค์Œ ์งˆ๋ฌธ์ด ๋ฐ”๋กœ ์ƒ๊ฒผ๋‹ค.

์˜์–ด๊นŒ์ง€๋งŒ ๊ฐˆ ๊ฒƒ์ธ๊ฐ€.

์•„๋‹ˆ๋ฉด ์•„์˜ˆ ko ๊ธฐ๋ณธ, en, ja, zh-Hans, ๊ทธ๋ฆฌ๊ณ  ๋ช‡ ๊ฐœ ์–ธ์–ด๋ฅผ ๋” ๋ถ™์—ฌ์„œ ๋‹ค์ค‘ ์–ธ์–ด ์„œ๋น„์Šค์ฒ˜๋Ÿผ ๊ฐˆ ๊ฒƒ์ธ๊ฐ€.

์ด๊ฑด ์ƒ๊ฐ๋ณด๋‹ค ๊ดœ์ฐฎ์€ ํฌํŠธํด๋ฆฌ์˜ค ์ฃผ์ œ๋‹ค. ํŠนํžˆ ํƒ€๋‹ฅ๋ฐ”์ด๋ธ” ํ™๋ณด๊นŒ์ง€ ์ƒ๊ฐํ•˜๋ฉด ๋‹จ์ˆœํ•œ ๊ฐœ์ธ ๋ธ”๋กœ๊ทธ ๋ฒˆ์—ญ๋ณด๋‹ค ๋” ์˜๋ฏธ๊ฐ€ ์žˆ๋‹ค. ๊ธฐ๋…๊ต ์ฝ˜ํ…์ธ ๋Š” ์˜์–ด ํ•˜๋‚˜๋กœ ๋๋‚˜์ง€ ์•Š๋Š”๋‹ค. Pew Research Center์˜ 2025๋…„ ์ข…๊ต ์ง€ํ˜• ๋ณด๊ณ ์„œ๋„ ๊ธฐ๋…๊ต ์ธ๊ตฌ๊ฐ€ ํŠน์ • ์„œ๊ตฌ๊ถŒ์—๋งŒ ๋ชฐ๋ ค ์žˆ๋Š” ๊ตฌ์กฐ๊ฐ€ ์•„๋‹ˆ๋ผ๊ณ  ๋ณธ๋‹ค. 2020๋…„ ๊ธฐ์ค€์œผ๋กœ ์‚ฌํ•˜๋ผ ์ด๋‚จ ์•„ํ”„๋ฆฌ์นด๊ฐ€ ์ „ ์„ธ๊ณ„ ๊ธฐ๋…๊ต์ธ์˜ ๊ฐ€์žฅ ํฐ ์ง€์—ญ๊ถŒ์ด ๋๊ณ , ๋ผํ‹ด์•„๋ฉ”๋ฆฌ์นด์™€ ๋ถ๋ฏธ๋„ ์—ฌ์ „ํžˆ ํฐ ๋น„์ค‘์„ ์ฐจ์ง€ํ•œ๋‹ค.1

๊ทธ๋Ÿฌ๋ฉด ์–ธ์–ด ์„ ์ • ๊ธฐ์ค€๋„ ๊ฐ์œผ๋กœ ํ•˜๋ฉด ์•ˆ ๋œ๋‹ค.

jp, cn์ฒ˜๋Ÿผ ๋‚˜๋ผ ์ฝ”๋“œ ๋А๋‚Œ์œผ๋กœ ๋ถ€๋ฅด๋ฉด ๊ตฌํ˜„๋ถ€ํ„ฐ ์• ๋งคํ•ด์ง„๋‹ค. ์›น i18n์—์„œ๋Š” ์–ธ์–ด ํƒœ๊ทธ๋ฅผ ์จ์•ผ ํ•œ๋‹ค. ์ผ๋ณธ์–ด๋Š” ja, ์ค‘๊ตญ์–ด ๊ฐ„์ฒด๋Š” ๋ณดํ†ต zh-Hans ์ชฝ์ด ๋” ์ •ํ™•ํ•˜๋‹ค.2

1์ฐจ ๋ชฉํ‘œ๋Š” 8๊ฐœ ์–ธ์–ด ์ „์ฒด ๋ฒˆ์—ญ์ด ์•„๋‹ˆ๋‹ค. ๊ทธ๊ฑด ๋„ˆ๋ฌด ๋นจ๋ฆฌ ์˜ค์—ผ๋œ๋‹ค.

๋จผ์ € ๋ชฉํ‘œ๋Š” ์ด์ชฝ์ด ๋งž๋‹ค.

ko ๊ธฐ๋ณธ ๋ธ”๋กœ๊ทธ๋ฅผ ๊ธฐ์ค€์œผ๋กœ, 7๊ฐœ ํ™•์žฅ ์–ธ์–ด๋ฅผ ๋ถ™์ผ ์ˆ˜ ์žˆ๋Š” i18n ๊ตฌ์กฐ๋ฅผ ๋งŒ๋“ ๋‹ค.
UI, routing, SEO, search, sitemap, ์กฐํšŒ์ˆ˜, language switcher, ๋ฒˆ์—ญ ํ’ˆ์งˆ gate๋ฅผ ๋จผ์ € ์™„์„ฑํ•œ๋‹ค.
๊ทธ ๋‹ค์Œ ๋Œ€ํ‘œ ๊ธ€๊ณผ ํƒ€๋‹ฅ๋ฐ”์ด๋ธ” ๊ด€๋ จ ๊ธ€๋ถ€ํ„ฐ ๋‹ค๊ตญ์–ด pilot์œผ๋กœ ๊ฒ€์ฆํ•œ๋‹ค.

ํ›„๋ณด ์–ธ์–ด๋„ ๋‘ ์ธต์œผ๋กœ ๋ด์•ผ ํ•œ๋‹ค.

์ˆœ์ˆ˜ํ•˜๊ฒŒ ๊ธฐ๋…๊ต ์ธ๊ตฌ ํ™•์‚ฐ๋งŒ ๋ณด๋ฉด ์˜์–ด, ์ŠคํŽ˜์ธ์–ด, ํฌ๋ฅดํˆฌ๊ฐˆ์–ด, ํ”„๋ž‘์Šค์–ด, ๋Ÿฌ์‹œ์•„์–ด ์ชฝ์ด ๊ฐ•ํ•˜๋‹ค. ๋ฏธ๊ตญ, ๋ธŒ๋ผ์งˆ, ๋ฉ•์‹œ์ฝ”, ๋Ÿฌ์‹œ์•„, ํ•„๋ฆฌํ•€, ๋‚˜์ด์ง€๋ฆฌ์•„ ๊ฐ™์€ ํฐ ๊ธฐ๋…๊ต ์ธ๊ตฌ๊ถŒ์ด ์—ฐ๊ฒฐ๋˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.3

ํ•˜์ง€๋งŒ ํฌํŠธํด๋ฆฌ์˜ค์™€ ํƒ€๋‹ฅ๋ฐ”์ด๋ธ”์˜ ๋™์•„์‹œ์•„ ํ™•์žฅ์„ฑ๊นŒ์ง€ ๋ณด๋ฉด ์ผ๋ณธ์–ด์™€ ์ค‘๊ตญ์–ด ๊ฐ„์ฒด๋ฅผ ๋„ฃ๋Š” ๊ฒƒ๋„ ๋ง์ด ๋œ๋‹ค. ๋‹ค๋งŒ ์ด๋•Œ๋Š” โ€œ๊ธฐ๋…๊ต ์ธ๊ตฌ๊ฐ€ ๋งŽ์•„์„œโ€๊ฐ€ ์•„๋‹ˆ๋ผ โ€œ์ œํ’ˆ ํ™•์žฅ์„ฑ๊ณผ ๋ณด์—ฌ์ค„ ์ˆ˜ ์žˆ๋Š” ๊ตฌํ˜„ ๋‚œ์ด๋„๊ฐ€ ์ข‹์•„์„œโ€๋ผ๊ณ  ๋ถ„๋ฆฌํ•ด์„œ ๋งํ•ด์•ผ ํ•œ๋‹ค.

๊ทธ๋ž˜์„œ ๋‹ค์Œ goal์€ ์ด๊ฑธ๋กœ ํ™•์ •ํ–ˆ๋‹ค.

hyuk.blog๋ฅผ ko ๊ธฐ๋ณธ + 7๊ฐœ ํ™•์žฅ ์–ธ์–ด์˜ i18n-ready ๋ธ”๋กœ๊ทธ๋กœ ์ „ํ™˜ํ•œ๋‹ค.
๋‹จ, ์ „์ฒด ๊ธ€ ๋Œ€๋Ÿ‰ ๋ฒˆ์—ญ๋ณด๋‹ค ๋‹ค๊ตญ์–ด ์šด์˜ ์‹œ์Šคํ…œ์„ ๋จผ์ € ๋งŒ๋“ ๋‹ค.
์–ธ์–ด๋ณ„ UI ๋ฌธ์ž์—ด, canonical translation key, hreflang, sitemap, search, ์กฐํšŒ์ˆ˜ ๊ณต์œ , today dedupe, ๋ชจ๋ฐ”์ผ language switcher๋ฅผ ๊ฒ€์ฆํ•œ๋‹ค.
๋Œ€ํ‘œ ๊ธ€๊ณผ ํƒ€๋‹ฅ๋ฐ”์ด๋ธ” ์—ฐ๊ฒฐ ๊ธ€์„ pilot corpus๋กœ ์‚ผ์•„ ๋ฒˆ์—ญ ํ’ˆ์งˆ์„ ํ™•์ธํ•œ ๋’ค ์ „์ฒด ํ™•์žฅ์„ ๊ฒฐ์ •ํ•œ๋‹ค.

1์ฐจ ์–ธ์–ด๋Š” ์ด๋ ‡๊ฒŒ ์žก๋Š”๋‹ค.

ko        ํ•œ๊ตญ์–ด, ๊ธฐ๋ณธ ์–ธ์–ด
en        English
ja        ๆ—ฅๆœฌ่ชž
zh-Hans   ็ฎ€ไฝ“ไธญๆ–‡
es        Espaรฑol
pt-BR     Portuguรชs do Brasil
fr        Franรงais
id        Bahasa Indonesia

์ด ์กฐํ•ฉ์€ ์ˆœ์ˆ˜ ๊ธฐ๋…๊ต ์ธ๊ตฌ ๊ธฐ์ค€๋งŒ์œผ๋กœ ๊ณ ๋ฅธ ๋ชฉ๋ก์€ ์•„๋‹ˆ๋‹ค. ์˜์–ด, ์ŠคํŽ˜์ธ์–ด, ํฌ๋ฅดํˆฌ๊ฐˆ์–ด, ํ”„๋ž‘์Šค์–ด๋Š” ๊ธฐ๋…๊ต๊ถŒ ํ™•์‚ฐ์„ฑ์ด ๊ฐ•ํ•˜๊ณ , ์ผ๋ณธ์–ด์™€ ์ค‘๊ตญ์–ด ๊ฐ„์ฒด๋Š” ๋™์•„์‹œ์•„ ์ œํ’ˆ ํ™•์žฅ์„ฑ๊ณผ ํฌํŠธํด๋ฆฌ์˜ค ๊ฐ€์น˜๊ฐ€ ํฌ๋‹ค. ์ธ๋„๋„ค์‹œ์•„์–ด๋Š” ๊ธฐ๋…๊ต์ธ์ด ๋‹ค์ˆ˜์ธ ์–ธ์–ด๋Š” ์•„๋‹ˆ์ง€๋งŒ, ๋™๋‚จ์•„ ํ™•์žฅ์„ฑ๊ณผ ์ ˆ๋Œ€ ์ธ๊ตฌ ์ธก๋ฉด์—์„œ pilot ์–ธ์–ด๋กœ ์˜๋ฏธ๊ฐ€ ์žˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ๋ฐ”๋กœ ๊ตฌํ˜„ ๊ธฐ์ค€์„ ํ•œ ๋‹จ๊ณ„ ๋” ๊ณ ์ •ํ–ˆ๋‹ค.

_data/locales.yml์„ ์ƒˆ๋กœ ๋งŒ๋“ค๊ณ , ๋‹ค๊ตญ์–ด์˜ source of truth๋ฅผ ๊ฑฐ๊ธฐ๋กœ ๋ชจ์•˜๋‹ค.

default: ko
active: ko, en
planned: ja, zh-Hans, es, pt-BR, fr, id

์—ฌ๊ธฐ์„œ active์™€ planned๋ฅผ ๋‚˜๋ˆˆ ๊ฒŒ ์ค‘์š”ํ•˜๋‹ค. ์•„์ง ์ผ๋ณธ์–ด/์ค‘๊ตญ์–ด/์ŠคํŽ˜์ธ์–ด ๊ธ€์ด ์—†๋Š”๋ฐ ๋งํฌ๋ถ€ํ„ฐ ์—ด์–ด๋‘๋ฉด ๊ณต๊ฐœ ์‚ฌ์ดํŠธ์— 404๋ฅผ ๋ฟŒ๋ฆฌ๋Š” ์…ˆ์ด๋‹ค. ๊ทธ๋ž˜์„œ ํ˜„์žฌ ์‹ค์ œ๋กœ ์‚ด์•„ ์žˆ๋Š” ์–ธ์–ด๋Š” ko, en๋งŒ active๋กœ ๋‘๊ณ , ๋‚˜๋จธ์ง€๋Š” ํ™•์ •๋œ ํ™•์žฅ ์–ธ์–ด๋กœ๋งŒ ๋“ฑ๋กํ–ˆ๋‹ค.

์ดํ›„ masthead, SEO, breadcrumb, category/tag link, author profile, sidebar stats, calendar, related posts, visitor stats normalize๋ฅผ en ์ „์šฉ ๋ถ„๊ธฐ์—์„œ locale registry ๊ธฐ๋ฐ˜์œผ๋กœ ๋ฐ”๊ฟจ๋‹ค.

ํŠนํžˆ ์กฐํšŒ์ˆ˜ ์ชฝ์€ /en๋งŒ ์ œ๊ฑฐํ•˜๋Š” ๋ฐฉ์‹์ด๋ฉด ๋‹ค์Œ ์–ธ์–ด์—์„œ ๋ฐ”๋กœ ๊นจ์ง„๋‹ค. ๊ทธ๋ž˜์„œ visitor stats์—๋Š” locale prefix ๋ชฉ๋ก์„ ๋„˜๊ธฐ๊ณ , JS๊ฐ€ /en, /ja, /zh-Hans, /es, /pt-BR, /fr, /id๋ฅผ ๋ชจ๋‘ canonical path๋กœ normalizeํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ–ˆ๋‹ค.

์ด์ œ ja๋ฅผ active๋กœ ์˜ฌ๋ฆฌ๋Š” ์ผ์€ ๋‹จ์ˆœํžˆ ํŒŒ์ผ ๋ช‡ ๊ฐœ๋ฅผ ๋” ๋งŒ๋“œ๋Š” ์ผ์ด ์•„๋‹ˆ๋ผ, ์ด๋ฏธ ๋“ฑ๋ก๋œ locale์„ ์ผœ๋Š” ์ผ์ด ๋๋‹ค. ์ด ์ฐจ์ด๊ฐ€ ํฌ๋‹ค.

๋ธŒ๋ผ์šฐ์ € ๊ฒ€์ฆ ์ค‘์— ์˜์™ธ์˜ ๋ฌธ์ œ๋„ ํ•˜๋‚˜ ๋” ์žก์•˜๋‹ค.

๋ชจ๋ฐ”์ผ ๋ฉ”๋‰ด ๋ฒ„ํŠผ์€ ๋ณด์ด๋Š”๋ฐ ๋ˆŒ๋Ÿฌ๋„ ๋ฉ”๋‰ด๊ฐ€ ์—ด๋ฆฌ์ง€ ์•Š์•˜๋‹ค. ์ฒ˜์Œ์—๋Š” CSS ๋ฌธ์ œ์ฒ˜๋Ÿผ ๋ณด์˜€์ง€๋งŒ, ์ฝ˜์†”์„ ๋ณด๋‹ˆ ๋” ์•„๋ž˜์ชฝ ๋ฌธ์ œ์˜€๋‹ค. main.min.js๊ฐ€ $ is not defined๋กœ ์ฃฝ๊ณ  ์žˆ์—ˆ๋‹ค. jQuery์™€ Minimal Mistakes ์ชฝ plugin ํŒŒ์ผ๋“ค์ด ์‹ค์ œ ํŽ˜์ด์ง€์—์„œ ๋กœ๋“œ๋˜์ง€ ์•Š๊ณ  ์žˆ์—ˆ๋˜ ๊ฒƒ์ด๋‹ค.

๊ทธ๋ž˜์„œ assets/js/vendor์™€ assets/js/plugins๋ฅผ ๋‹ค์‹œ build output์— ํฌํ•จ์‹œํ‚ค๊ณ , main.min.js๋ณด๋‹ค ๋จผ์ € jQuery, FitVids, SmoothScroll, Gumshoe, Magnific Popup์„ ๋กœ๋“œํ•˜๊ฒŒ ํ–ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  custom mobile menu toggle handler๋ฅผ ์ถ”๊ฐ€ํ–ˆ๋‹ค.

์ดํ›„ ๋ชจ๋ฐ”์ผ /en/์—์„œ ๋‹ค์‹œ ํ™•์ธํ–ˆ๋‹ค.

Home       /en/
About      /en/about/
Categories /en/categories/
๐Ÿ‡ฐ๐Ÿ‡ท ํ•œ๊ตญ์–ด  /
๐Ÿ‡บ๐Ÿ‡ธ English /en/

์ด๋ฒˆ์—๋Š” ๋ฉ”๋‰ด๊ฐ€ ์‹ค์ œ๋กœ ์—ด๋ ธ๊ณ , ํ˜„์žฌ ๋ฒ„์ „ ์ฝ˜์†” ์—๋Ÿฌ๋„ ์—†์—ˆ๋‹ค.

๊ทธ ๋‹ค์Œ์—๋Š” pilot corpus์™€ audit gate๋ฅผ ๋ถ™์˜€๋‹ค.

๊ณต๊ฐœ๋œ ๊ณผ๊ฑฐ ๊ธ€์˜ front matter๋ฅผ ๋Œ€๋Ÿ‰์œผ๋กœ ๋œฏ๋Š” ๊ฑด ์œ„ํ—˜ํ•˜๋‹ค. ๊ทธ๋ž˜์„œ ๋จผ์ € _data/i18n_pilot.yml์„ ๋งŒ๋“ค๊ณ , ๋Œ€ํ‘œ ๊ธ€๋“ค์˜ ๋ฒˆ์—ญ ์„ธํŠธ๋ฅผ ๋ฐ์ดํ„ฐ๋กœ ๋ฌถ์—ˆ๋‹ค.

ํƒ€๋‹ฅ๋ฐ”์ด๋ธ” ์ œํ’ˆ ์ฒ ํ•™ ๊ธ€
์ฐฝ์„ธ๊ธฐ ๋ฌต์ƒ ๊ธ€
๋ธ”๋กœ๊ทธ ์žฌ๊ฐ€๋™ ๊ธ€
๋ฐฉ๋ฌธ์ž ์นด์šดํ„ฐ ๊ธ€
Daily Review ์„ฑ๊ฒฝ ๊ตฌ์ ˆ ๋งฅ๋ฝ ๊ธ€

์ด 5๊ฐœ๋ฅผ pilot corpus๋กœ ์žก์•˜๋‹ค. ํƒ€๋‹ฅ๋ฐ”์ด๋ธ” ํ™๋ณด, ์„ฑ๊ฒฝ ์ฝ˜ํ…์ธ , ํฌํŠธํด๋ฆฌ์˜ค, ์กฐํšŒ์ˆ˜ ๊ณต์œ , Daily Review ์‹œ์Šคํ…œ์„ ํ•œ ๋ฒˆ์— ๊ฒ€์ฆํ•  ์ˆ˜ ์žˆ๋Š” ์กฐํ•ฉ์ด๋‹ค.

๊ทธ๋ฆฌ๊ณ  _project/i18n/verify-i18n.rb๋ฅผ ์ถ”๊ฐ€ํ–ˆ๋‹ค. ์ด์ œ ๋‹ค๊ตญ์–ด ์ž‘์—…์€ ๊ฐ์œผ๋กœ ๋๋‚ด์ง€ ์•Š๊ณ  ์•„๋ž˜ ๋ช…๋ น์œผ๋กœ ๊ฒ€์‚ฌํ•  ์ˆ˜ ์žˆ๋‹ค.

bundle exec rake i18n:verify

์ด audit์€ locale registry, pilot translation path, active locale front matter, date/category/permalink parity, ์˜์–ด ํŒŒ์ผ์˜ ์˜๋„์น˜ ์•Š์€ ํ•œ๊ธ€ ์ž”์—ฌ, placeholder, ๋ Œ๋”๋ง๋œ hreflang, ์˜์–ด ์ถœ๋ ฅ์˜ ํ•œ๊ตญ์–ด UI residue๋ฅผ ๋ณธ๋‹ค.

์‹ค์ œ๋กœ build ํ›„ audit์„ ๋Œ๋ ธ๊ณ  ๊ฒฐ๊ณผ๋Š” ์ด๋žฌ๋‹ค.

pilot entries: 5
warnings: 0
errors: 0

์ด์ œ ๋‹ค๊ตญ์–ด ํ™•์žฅ์€ โ€œ๋А๋‚Œ์ƒ ๊ดœ์ฐฎ๋‹คโ€๊ฐ€ ์•„๋‹ˆ๋ผ โ€œ์ด gate๋ฅผ ํ†ต๊ณผํ–ˆ๋‹คโ€๋กœ ๋งํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋๋‹ค.

๋‹ค์Œ์œผ๋กœ๋Š” planned ์–ธ์–ด๋ฅผ ์ผค ๋•Œ ํ„ฐ์งˆ ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋ฐ˜์„ ๋ฏธ๋ฆฌ ๋ณด๊ฐ•ํ–ˆ๋‹ค.

์ฒ˜์Œ์—๋Š” ja, zh-Hans, es, pt-BR, fr, id๊ฐ€ planned์—๋งŒ ์žˆ์œผ๋‹ˆ ๊ดœ์ฐฎ์•„ ๋ณด์˜€๋‹ค. ํ•˜์ง€๋งŒ registry๋ฅผ ๋‹ค์‹œ ๋ณด๋‹ˆ ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๋‹ค. ์ด ์–ธ์–ด๋“ค์€ ์•„์ง active๊ฐ€ ์•„๋‹ˆ๋ผ์„œ ํ™”๋ฉด์— ๋“œ๋Ÿฌ๋‚˜์ง€ ์•Š์„ ๋ฟ, ๋ง‰์ƒ active๋กœ ์˜ฎ๊ธฐ๋ฉด collection, default front matter, navigation key, sidebar label, search language detection์ด ๋น„์–ด ์žˆ๊ฑฐ๋‚˜ ์˜์–ด/ํ•œ๊ตญ์–ด fallback์œผ๋กœ ์ƒ ์ˆ˜ ์žˆ์—ˆ๋‹ค.

๊ทธ๋ž˜์„œ planned ์–ธ์–ด๋„ ๋ฏธ๋ฆฌ collection๊ณผ default๋ฅผ ๋“ฑ๋กํ–ˆ๋‹ค.

ja_posts
zh_hans_posts
es_posts
pt_br_posts
fr_posts
id_posts

๊ฐ collection์—๋Š” lang, locale, sidebar nav, single layout, toc, comments, related posts ๊ธฐ๋ณธ๊ฐ’์„ ๋ถ™์˜€๋‹ค. ๊ทธ๋ฆฌ๊ณ  _data/locales.yml์—๋Š” ๊ฐ ์–ธ์–ด์˜ home/about/categories/tags URL, masthead label, ์š”์ผ, ์กฐํšŒ์ˆ˜ label, calendar label๊นŒ์ง€ ์ฑ„์› ๋‹ค.

navigation๋„ ๊ฐ™์ด ๋„ฃ์—ˆ๋‹ค. main-ja, main-zh-Hans, main-es, main-pt-BR, main-fr, main-id์™€ ๊ฐ ์–ธ์–ด sidebar category key๋ฅผ ๋งŒ๋“ค์—ˆ๋‹ค. ์•„์ง ๊ณต๊ฐœ ๋งํฌ๋กœ ๋…ธ์ถœํ•˜์ง€๋Š” ์•Š์ง€๋งŒ, active๋กœ ์˜ฎ๊ฒผ์„ ๋•Œ ํ•œ๊ตญ์–ด ๋ฉ”๋‰ด๊ฐ€ ํŠ€์–ด๋‚˜์˜ค์ง€ ์•Š๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•œ ์ค€๋น„๋‹ค.

๊ฒ€์ƒ‰๋„ ์†๋ดค๋‹ค. ๊ธฐ์กด ๊ฒ€์ƒ‰ JS๋Š” /en/์ด๋ฉด ์˜์–ด, ์•„๋‹ˆ๋ฉด ํ•œ๊ตญ์–ด๋กœ ํŒ๋‹จํ–ˆ๋‹ค. ์ด ๋ฐฉ์‹์€ /ja/, /zh-Hans/, /pt-BR/๊ฐ€ ์ƒ๊ธฐ๋Š” ์ˆœ๊ฐ„ ๊นจ์ง„๋‹ค. ๊ทธ๋ž˜์„œ search script๋„ locale prefix registry๋ฅผ ์ฝ๊ฒŒ ๋ฐ”๊ฟจ๋‹ค.

๋นŒ๋“œ ํ›„ ๋ Œ๋”๋ง๋œ lunr-en.js ์•ˆ์— ์‹ค์ œ๋กœ ์ด๋Ÿฐ prefix๊ฐ€ ๋“ค์–ด๊ฐ„ ๊ฒƒ์„ ํ™•์ธํ–ˆ๋‹ค.

/en
/ja
/zh-Hans
/es
/pt-BR
/fr
/id

๊ทธ๋ฆฌ๊ณ  ๋‹ค์‹œ build์™€ audit์„ ๋Œ๋ ธ๋‹ค.

bundle exec jekyll build
bundle exec rake i18n:verify

warnings: 0
errors: 0

์ด์ œ planned ์–ธ์–ด๋“ค์€ ๋‹จ์ˆœํ•œ ํฌ๋ง ๋ชฉ๋ก์ด ์•„๋‹ˆ๋‹ค. ์•„์ง ์ฝ˜ํ…์ธ ๋Š” ์—†์ง€๋งŒ, ์ผค ๋•Œ ํ•„์š”ํ•œ collection, ๊ธฐ๋ณธ๊ฐ’, UI label, navigation key, search detection, audit ๊ธฐ์ค€์ด ์ค€๋น„๋œ ์ƒํƒœ๊ฐ€ ๋๋‹ค.

๊ทธ ๋‹ค์Œ์—๋Š” locale page scaffold๋„ ๋งŒ๋“ค์—ˆ๋‹ค.

planned ์–ธ์–ด๋ฅผ active๋กœ ์˜ฎ๊ธฐ๋ ค๋ฉด /ja/, /ja/about/, /ja/categories/, /ja/sitemap/, category pages๊ฐ€ ํ•„์š”ํ•˜๋‹ค. ํ•˜์ง€๋งŒ ์ง€๊ธˆ ๋ฐ”๋กœ ํŒŒ์ผ์„ ์ƒ์„ฑํ•˜๋ฉด active๊ฐ€ ์•„๋‹Œ ์–ธ์–ด์˜ ๊ณต๊ฐœ URL์ด ์ƒ๊ธธ ์ˆ˜ ์žˆ๋‹ค.

๊ทธ๋ž˜์„œ _project/i18n/scaffold-locale-pages.rb์™€ i18n:scaffold_locale_pages task๋ฅผ ๋งŒ๋“ค๊ณ , ๋จผ์ € dry-run์œผ๋กœ ๊ฒ€ํ† ํ•˜๊ฒŒ ํ–ˆ๋‹ค.

LOCALE=ja DRY_RUN=1 bundle exec rake i18n:scaffold_locale_pages

dry-run์€ _pages/ja/index.md, _pages/ja/about.md, _pages/ja/categories.md, _pages/ja/sitemap.md, category pages๋ฅผ ์ƒ์„ฑํ•  ๊ณ„ํš์„ ๋ณด์—ฌ์คฌ๋‹ค. ์‹ค์ œ ํŒŒ์ผ์€ ๋งŒ๋“ค์ง€ ์•Š์•˜๋‹ค.

audit๋„ active locale core page์™€ search prefix๋ฅผ ๋” ๋ณด๊ฒŒ ํ–ˆ๋‹ค. false positive๋„ ํ•˜๋‚˜ ์žก์•˜๋‹ค. Spending ์•ˆ์˜ pending, Todo/Goal ๊ฐ™์€ ์ •์ƒ ์ œ๋ชฉ์„ placeholder๋กœ ์˜คํ•ดํ•˜์ง€ ์•Š๊ฒŒ ์ •๊ทœ์‹์„ ์ขํ˜”๋‹ค.

์—ฌ๊ธฐ์„œ ์กฐํšŒ์ˆ˜ ์ชฝ๋„ ํ•œ ๋ฒˆ ๋” ์žก์•˜๋‹ค.

๋ธŒ๋ผ์šฐ์ € JS๋Š” ์ด๋ฏธ /en, /ja, /zh-Hans, /es, /pt-BR, /fr, /id๋ฅผ canonical path๋กœ ์ ‘๊ณ  ์žˆ์—ˆ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ Cloudflare Worker์˜ normalizePagePath๋Š” ์•„์ง /en๋งŒ ์ œ๊ฑฐํ•˜๊ณ  ์žˆ์—ˆ๋‹ค.

์ง€๊ธˆ active ์–ธ์–ด๊ฐ€ ko, en๋ฟ์ด๋ผ ๋‹น์žฅ์€ ํ‹ฐ๊ฐ€ ์•ˆ ๋‚œ๋‹ค. ํ•˜์ง€๋งŒ ja๋‚˜ pt-BR์„ ์ผœ๋Š” ์ˆœ๊ฐ„ ๊ฐ™์€ ๊ธ€์˜ ์กฐํšŒ์ˆ˜๊ฐ€ ์–ธ์–ด๋ณ„๋กœ ๊ฐˆ๋ผ์ง€๊ณ , today dedupe๋„ ์–ธ์–ด๋ณ„ path๋กœ ๋”ฐ๋กœ ๋จน์„ ์ˆ˜ ์žˆ์—ˆ๋‹ค.

๊ทธ๋ž˜์„œ Worker์—๋„ locale prefix ๋ชฉ๋ก์„ ๋„ฃ์—ˆ๋‹ค.

const LOCALE_PATH_PREFIXES = ["/zh-Hans", "/pt-BR", "/en", "/ja", "/es", "/fr", "/id"];

๊ทธ๋ฆฌ๊ณ  audit์ด Worker normalize์™€ ๋ Œ๋”๋ง๋œ stats prefix, pilot ๊ธ€์˜ canonical page-view tracking path๊นŒ์ง€ ๋ณด๊ฒŒ ํ–ˆ๋‹ค. ์ด๊ฑด ์ž‘์€ ์ˆ˜์ •์ฒ˜๋Ÿผ ๋ณด์ด์ง€๋งŒ ๋‹ค๊ตญ์–ด ํ†ต๊ณ„์—์„œ๋Š” ๊ฝค ์ค‘์š”ํ•œ ๊ธฐ์ค€์ด๋‹ค.

๋งˆ์ง€๋ง‰์œผ๋กœ language link๋„ ๋‹ค์‹œ ๋ดค๋‹ค.

์ƒˆ๋กœ ์“ฐ๋Š” ์ด ๊ธ€์€ ์•„์ง ์˜์–ด ๋ฒˆ์—ญ์ด ์—†๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ๊ธฐ์กด ๋กœ์ง์€ ํ•œ๊ตญ์–ด URL ์•ž์— /en์„ ๋ถ™์ด๋ฉด ์˜์–ด URL์ด ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ–ˆ๋‹ค.

/devlog/github-pages-blog/github-pages-blog-english-version-lessons/
/en/devlog/github-pages-blog/github-pages-blog-english-version-lessons/

์•„๋ž˜ ์˜์–ด URL์€ ์‹ค์ œ๋กœ ์กด์žฌํ•˜์ง€ ์•Š์•˜๋‹ค.

์ด๋Ÿฐ ์ถ”์ • URL์„ hreflang์œผ๋กœ ๋‚ด๋ณด๋‚ด๋ฉด SEO ๊ด€์ ์—์„œ๋„ ์ข‹์ง€ ์•Š๊ณ , ์‚ฌ์šฉ์ž๊ฐ€ ์–ธ์–ด ์ „ํ™˜์„ ๋ˆŒ๋ €์„ ๋•Œ 404๋กœ ๋–จ์–ด์ง„๋‹ค. ๊ทธ๋ž˜์„œ SEO์˜ alternate๋Š” target ๋ฌธ์„œ๊ฐ€ ์‹ค์ œ๋กœ ์žˆ์„ ๋•Œ๋งŒ ๋ Œ๋”๋งํ•˜๊ฒŒ ํ–ˆ๋‹ค. ์–ธ์–ด ๋ฉ”๋‰ด๋Š” ํ•ด๋‹น ๊ธ€์˜ ๋ฒˆ์—ญ์ด ์—†์œผ๋ฉด ๊ทธ ์–ธ์–ด์˜ ํ™ˆ์œผ๋กœ ๋ณด๋‚ธ๋‹ค.

์ด ๊ฒ€์ฆ๋„ audit์— ๋„ฃ์—ˆ๋‹ค. ์ด์ œ ๋ Œ๋”๋ง๋œ ๋ชจ๋“  ๋ฌธ์„œ์˜ hreflang๊ณผ language menu URL์ด ์‹ค์ œ ์ถœ๋ ฅ ํŒŒ์ผ์„ ๊ฐ€๋ฆฌํ‚ค๋Š”์ง€ ๊ฒ€์‚ฌํ•œ๋‹ค.

์ด ๊ณผ์ •์—์„œ permalink ์ฐจ์ด๋„ ํ•˜๋‚˜ ์žก์•˜๋‹ค. ํ•œ๊ตญ์–ด category page๋Š” /daily-review์ฒ˜๋Ÿผ .html๋กœ ์ถœ๋ ฅ๋˜๊ณ , ์˜์–ด category page๋Š” /en/daily-review/์ฒ˜๋Ÿผ index.html๋กœ ์ถœ๋ ฅ๋œ๋‹ค. verifier๊ฐ€ ์ฒ˜์Œ์—๋Š” ํ•œ์ชฝ๋งŒ ๋ณด๊ณ  ์žˆ์–ด์„œ ์‹คํŒจํ–ˆ๋Š”๋ฐ, Jekyll์˜ ๋‘ ์ถœ๋ ฅ ํ˜•ํƒœ๋ฅผ ๋ชจ๋‘ ์ธ์ •ํ•˜๋„๋ก ๊ณ ์ณค๋‹ค.

XML sitemap๋„ ๊ฒฐ๊ตญ ์ง์ ‘ ๋งŒ๋“ค์—ˆ๋‹ค.

jekyll-sitemap ๊ธฐ๋ณธ ์ถœ๋ ฅ์€ URL ๋ชฉ๋ก์€ ๋งŒ๋“ค์–ด์ฃผ์ง€๋งŒ, ์ด ๋ธ”๋กœ๊ทธ์˜ ๋ฒˆ์—ญ ๋ฌถ์Œ์„ ๋ชจ๋ฅธ๋‹ค. ๊ทธ๋ž˜์„œ /sitemap.xml์„ custom Liquid ํŒŒ์ผ๋กœ ๋ฐ”๊พธ๊ณ , ์‹ค์ œ ์กด์žฌํ•˜๋Š” active locale URL๋ผ๋ฆฌ๋งŒ xhtml:link alternate๋ฅผ ๋ถ™์ด๊ฒŒ ํ–ˆ๋‹ค.

์ด๋•Œ๋„ ํ•œ ๋ฒˆ ๋” ๋ฐฐ์› ๋‹ค. site.pages๋ฅผ ๊ทธ๋Œ€๋กœ sitemap์— ๋„ฃ์œผ๋ฉด JS/CSS asset๊นŒ์ง€ ์„ž์ผ ์ˆ˜ ์žˆ๋‹ค. ๋˜ category page๋Š” ํ•œ๊ตญ์–ด์™€ ์˜์–ด permalink ํ˜•ํƒœ๊ฐ€ ๋‹ฌ๋ผ์„œ, ์ž๋™ ์ถ”์ •๋ณด๋‹ค ๋ช…์‹œ์ ์ธ page translation map์ด ํ•„์š”ํ–ˆ๋‹ค.

๊ทธ๋ž˜์„œ _data/i18n_pages.yml์„ ์ถ”๊ฐ€ํ–ˆ๋‹ค. ํ™ˆ, ์†Œ๊ฐœ, ์นดํ…Œ๊ณ ๋ฆฌ, sitemap, category pages์˜ ํ•œ/์˜ URL์„ ๋ช…์‹œํ–ˆ๋‹ค. ์ด์ œ post translation set์€ _data/i18n_pilot.yml, page translation set์€ _data/i18n_pages.yml์ด ๋งก๋Š”๋‹ค.

audit๋„ sitemap์„ ๋ณด๊ฒŒ ํ–ˆ๋‹ค.

XML sitemap์— xhtml namespace๊ฐ€ ์žˆ๋Š”๊ฐ€
assets URL์ด ์„ž์ด์ง€ ์•Š์•˜๋Š”๊ฐ€
planned locale URL์ด ๋…ธ์ถœ๋˜์ง€ ์•Š์•˜๋Š”๊ฐ€
page map๊ณผ pilot corpus๊ฐ€ sitemap alternate๋กœ ๋ฌถ์˜€๋Š”๊ฐ€

๋ฒˆ์—ญ ํ’ˆ์งˆ gate๋„ ๋” ํ˜„์‹ค์ ์œผ๋กœ ๋ฐ”๊ฟจ๋‹ค.

์ฒ˜์Œ์—๋Š” ์˜์–ด ๊ธ€์ด ํ•œ๊ตญ์–ด ์›๋ฌธ๊ณผ ๊ฐ™์€ post_url Liquid token์„ ๊ฐ–๊ณ  ์žˆ๋Š”์ง€ ๋ณด๋ ค ํ–ˆ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ์˜์–ด ๊ธ€์—์„œ๋Š” ํ•œ๊ตญ์–ด ์›๋ฌธ URL์ด ์•„๋‹ˆ๋ผ /en/... ๋Œ€์‘ URL๋กœ ๋ณด๋‚ด๋Š” ๊ฒŒ ๋…์ž์—๊ฒŒ ๋” ์ž์—ฐ์Šค๋Ÿฝ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ๋‹จ์ˆœ ๋ฌธ์ž์—ด parity๋Š” ์˜คํžˆ๋ ค ์ž˜๋ชป๋œ ๊ธฐ์ค€์ด๋‹ค.

๊ทธ๋ž˜์„œ ๊ธฐ์ค€์„ ๋ฐ”๊ฟจ๋‹ค.

์›๋ฌธ์— ์žˆ๋˜ ๋‚ด๋ถ€ ๊ธ€ ์ฐธ์กฐ๊ฐ€ ๋ฒˆ์—ญ๋ฌธ์—๋„ ์‚ด์•„ ์žˆ๋Š”๊ฐ€
์˜์–ด counterpart๊ฐ€ ์žˆ์œผ๋ฉด /en/...์œผ๋กœ ์—ฐ๊ฒฐ๋˜๋Š”๊ฐ€
์—†์œผ๋ฉด ํ•œ๊ตญ์–ด ์›๋ฌธ์œผ๋กœ๋ผ๋„ ์•ˆ์ „ํ•˜๊ฒŒ ์—ฐ๊ฒฐ๋˜๋Š”๊ฐ€

๊ทธ๋ฆฌ๊ณ  heading level, fenced code block ์ˆ˜, non-post_url Liquid token, ์ด๋ฏธ์ง€ target, conversation card class count๋„ ๋น„๊ตํ•˜๊ฒŒ ํ–ˆ๋‹ค. ๋ฒˆ์—ญ๋ฌธ์ด ์˜ˆ์˜๊ฒŒ ์˜์–ด๋กœ ๋ณด์ด๋Š”์ง€๋งŒ์ด ์•„๋‹ˆ๋ผ, ์›๋ฌธ์˜ ๊ตฌ์กฐ์™€ ๊ณต๊ฐœ ์•„์นด์ด๋ธŒ ์žฅ์น˜๋ฅผ ๋ณด์กดํ•˜๋Š”์ง€ ๋ณด๋Š” gate๋‹ค.

๋งˆ์ง€๋ง‰์—๋Š” ์‹ค์ œ ๋ธŒ๋ผ์šฐ์ €๋กœ๋„ ๋ดค๋‹ค.

์ •์  audit๋งŒ ํ†ต๊ณผํ•˜๋ฉด ๋งˆ์Œ์ด ํŽธํ•˜๊ธด ํ•˜๋‹ค. ํ•˜์ง€๋งŒ ์‚ฌ์šฉ์ž๋Š” audit ๊ฒฐ๊ณผ๋ฅผ ๋ณด์ง€ ์•Š๋Š”๋‹ค. ์‚ฌ์šฉ์ž๋Š” ๋ฉ”๋‰ด๋ฅผ ๋ณด๊ณ , ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๊ณ , ๊ฒ€์ƒ‰์„ ํ•œ๋‹ค.

๊ทธ๋ž˜์„œ ๋กœ์ปฌ ์„œ๋ฒ„๋ฅผ ๋„์šฐ๊ณ  ์•„๋ž˜ ํ๋ฆ„์„ ํ™•์ธํ–ˆ๋‹ค.

/
/en/
/devlog/github-pages-blog/github-pages-blog-english-version-lessons/
/devlog/github-pages-blog/github-pages-blog-visitor-counter/
/en/devlog/github-pages-blog/github-pages-blog-visitor-counter/

ํ™•์ธํ•œ ๊ฒƒ์€ ์ด๋žฌ๋‹ค.

ํ•œ๊ตญ์–ด ํ™ˆ๊ณผ ์˜์–ด ํ™ˆ์˜ masthead label
About/์†Œ๊ฐœ ํ‘œ์‹œ
๊ตญ๊ธฐ ํฌํ•จ ์–ธ์–ด ๋ฉ”๋‰ด
๋ฒˆ์—ญ ์—†๋Š” ๊ธ€์˜ ์˜์–ด ๋ฒ„ํŠผ์ด /en/ ํ™ˆ์œผ๋กœ ๊ฐ€๋Š”์ง€
๋ฒˆ์—ญ ์žˆ๋Š” pilot ๊ธ€์˜ ํ•œ/์˜ ๋ฒ„ํŠผ์ด ์„œ๋กœ์˜ ๊ธ€๋กœ ๊ฐ€๋Š”์ง€
์˜์–ด ๊ธ€์˜ ์กฐํšŒ์ˆ˜ tracking path๊ฐ€ ํ•œ๊ตญ์–ด canonical path์ธ์ง€
๋ชจ๋ฐ”์ผ ํ–„๋ฒ„๊ฑฐ ๋ฉ”๋‰ด๊ฐ€ ์‹ค์ œ๋กœ ์—ด๋ฆฌ๋Š”์ง€
๋ชจ๋ฐ”์ผ quick link๊ฐ€ ์˜์–ด UI๋กœ ๋ณด์ด๋Š”์ง€
๊ฒ€์ƒ‰ overlay๊ฐ€ ์—ด๋ฆฌ๋Š”์ง€
์˜์–ด ๊ฒ€์ƒ‰์€ ์˜์–ด ๊ฒฐ๊ณผ๋งŒ, ํ•œ๊ตญ์–ด ๊ฒ€์ƒ‰์€ ํ•œ๊ตญ์–ด ๊ฒฐ๊ณผ๋งŒ ๋‚ด๋Š”์ง€
sitemap.xml์ด XML๋กœ ์œ ํšจํ•˜๊ณ  planned locale๊ณผ assets๋ฅผ ๋…ธ์ถœํ•˜์ง€ ์•Š๋Š”์ง€

์ด ๊ณผ์ •์—์„œ ๋˜ ํ•˜๋‚˜๋ฅผ ์žก์•˜๋‹ค. ํฌ์ŠคํŠธ ์•ˆ์— ์˜ˆ์‹œ๋กœ ์“ด ๋นˆ post_url Liquid token์ด ์‹ค์ œ build์—์„œ ํ„ฐ์กŒ๋‹ค. audit์€ ํ†ต๊ณผํ–ˆ๋Š”๋ฐ serve๊ฐ€ ์‹คํŒจํ•œ ๊ฒƒ์ด๋‹ค. ๊ทธ๋ž˜์„œ ์˜ˆ์‹œ ํ‘œํ˜„์„ ๋ฐ”๊พธ๊ณ , verifier๋„ ๋นˆ post_url ํƒœ๊ทธ๋ฅผ ์ „์—ญ์œผ๋กœ ์žก๊ฒŒ ํ–ˆ๋‹ค.

๋˜ jekyll serve๋Š” sitemap.xml์˜ absolute URL์„ ๋กœ์ปฌ ์„œ๋ฒ„ origin์œผ๋กœ ๋‹ค์‹œ ๋งŒ๋“ ๋‹ค. production build์—์„œ๋Š” https://hyuk.blog, local serve์—์„œ๋Š” http://localhost:4000์ด ๋œ๋‹ค. verifier๊ฐ€ production origin๋งŒ ๊ธฐ๋Œ€ํ•˜๋ฉด ๋กœ์ปฌ QA ๋’ค์— ๊ดœํžˆ ์‹คํŒจํ•œ๋‹ค. ๊ทธ๋ž˜์„œ sitemap audit์€ ๋ Œ๋”๋ง๋œ sitemap์˜ ์‹ค์ œ origin์„ ์ฝ์–ด์„œ ๊ฒ€์‚ฌํ•˜๊ฒŒ ํ–ˆ๋‹ค.

planned locale scaffold๋„ ๋‹ค์‹œ ๋ดค๋‹ค.

์ฒ˜์Œ์—๋Š” ja dry-run๋งŒ ๋ดค๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ๋ชฉํ‘œ๊ฐ€ 8๊ฐœ ์–ธ์–ด๋ผ๋ฉด zh-Hans, pt-BR์ฒ˜๋Ÿผ path์™€ collection ์ด๋ฆ„์ด ๊นŒ๋‹ค๋กœ์šด ์–ธ์–ด๊นŒ์ง€ ์ „๋ถ€ ํ™•์ธํ•ด์•ผ ํ•œ๋‹ค. ๊ทธ๋ž˜์„œ ์ „์ฒด planned locale์„ ํ•œ ๋ฒˆ์— dry-runํ•˜๋Š” task๋ฅผ ์ถ”๊ฐ€ํ–ˆ๋‹ค.

bundle exec rake i18n:scaffold_planned_dry_run

์ด ๊ณผ์ •์—์„œ ๋˜ ํ•˜๋‚˜๋ฅผ ์žก์•˜๋‹ค. scaffold๊ฐ€ child category page๋Š” ๋งŒ๋“ค๊ณ  ์žˆ์—ˆ์ง€๋งŒ, devlog, diary, reading, bible, tip ๊ฐ™์€ ์ƒ์œ„ category page๋ฅผ ๋งŒ๋“ค์ง€ ์•Š์•˜๋‹ค. ์˜์–ดํŒ์—๋Š” ์ด๋ฏธ ์žˆ๋Š” ํŽ˜์ด์ง€๋“ค์ด๋‹ค. planned locale์„ active๋กœ ์˜ฌ๋ฆด ๋•Œ ์ด๊ฒŒ ๋น ์ง€๋ฉด sidebar์™€ sitemap์˜ ์ƒ์œ„ ๊ฒฝ๋กœ๊ฐ€ ์•ฝํ•ด์ง„๋‹ค.

๊ทธ๋ž˜์„œ scaffold๊ฐ€ parent category archive๋„ ๋งŒ๋“ค๊ฒŒ ํ–ˆ๋‹ค. ์ด์ œ planned 6๊ฐœ ์–ธ์–ด ๋ชจ๋‘์—์„œ core page 4๊ฐœ์™€ category page 20๊ฐœ, ์ด 24๊ฐœ ํŒŒ์ผ ์ƒ์„ฑ ๊ณ„ํš์ด ๋‚˜์˜จ๋‹ค.

์—ฌ๊ธฐ์„œ ํ•˜๋‚˜ ๋” ๋‚จ์€ ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๋‹ค.

verify๋Š” ๊นจ์ง„ ๊ฒƒ์„ ์ž˜ ์žก์ง€๋งŒ, ์ง€๊ธˆ pilot corpus๊ฐ€ ์–ด๋А ์–ธ์–ด๊นŒ์ง€ ์ค€๋น„๋๊ณ  ์–ด๋А ์–ธ์–ด๊ฐ€ ์˜๋„์ ์œผ๋กœ pending์ธ์ง€ ํ•œ๋ˆˆ์— ๋ณด์—ฌ์ฃผ์ง€๋Š” ์•Š๋Š”๋‹ค. 8๊ฐœ ์–ธ์–ด๋ฅผ ๋ชฉํ‘œ๋กœ ์žก์œผ๋ฉด ์ด ์ฐจ์ด๊ฐ€ ์ค‘์š”ํ•ด์ง„๋‹ค. ์•ˆ ๋œ ๊ฒƒ๊ณผ ์•„์ง ์•ˆ ํ•˜๊ธฐ๋กœ ํ•œ ๊ฒƒ์„ ๊ตฌ๋ถ„ํ•ด์•ผ ํ•œ๋‹ค.

๊ทธ๋ž˜์„œ pilot translation status task๋ฅผ ๋”ฐ๋กœ ์ถ”๊ฐ€ํ–ˆ๋‹ค.

bundle exec rake i18n:pilot_status

์ด task๋Š” active locale์ธ ko, en์€ ๋น ์ง€๋ฉด error๋กœ ๋ณด๊ณ , planned locale์ธ ja, zh-Hans, es, pt-BR, fr, id๋Š” ์•„์ง ๋ฒˆ์—ญ ํŒŒ์ผ์ด ์—†์œผ๋ฉด pending backlog๋กœ ๋ณด์—ฌ์ค€๋‹ค. ์ฆ‰ ์ง€๊ธˆ ์ƒํƒœ๋ฅผ ์ •์งํ•˜๊ฒŒ ๋งํ•˜๋ฉด ์ด๋ ‡๋‹ค.

active pilot: ready
planned pilot: pending

์ด๊ฒŒ ์žˆ์–ด์•ผ ๋‚˜์ค‘์— ์ผ๋ณธ์–ด๋ฅผ active๋กœ ์˜ฌ๋ฆด ๋•Œ๋„ ๊ฐ์œผ๋กœ ํ•˜์ง€ ์•Š๋Š”๋‹ค. ๋จผ์ € ja page scaffold๋ฅผ ๋งŒ๋“ค๊ณ , pilot translation์„ ์ฑ„์šฐ๊ณ , search์™€ sitemap๊ณผ hreflang๊ณผ UI residue๋ฅผ ํ†ต๊ณผ์‹œํ‚จ ๋‹ค์Œ active๋กœ ์˜ฌ๋ฆฐ๋‹ค. ์–ธ์–ด ํ™•์žฅ์ด ์ด๋ฒคํŠธ๊ฐ€ ์•„๋‹ˆ๋ผ ์ ˆ์ฐจ๊ฐ€ ๋˜๋Š” ๊ฒƒ์ด๋‹ค.

๊ทธ ๋‹ค์Œ์— ๋” ์œ„ํ—˜ํ•œ ์ง€์ ์„ ๋ดค๋‹ค.

registry์—์„œ๋Š” ja, zh-Hans, es, pt-BR, fr, id๊ฐ€ planned์ธ๋ฐ, _config.yml์˜ collection output์€ ์ด๋ฏธ true์˜€๋‹ค. ์ง€๊ธˆ์€ ํ•ด๋‹น ํด๋”๊ฐ€ ์—†์–ด์„œ ๋ณด์ด์ง€ ์•Š์ง€๋งŒ, ๋‚˜์ค‘์— _ja_posts ํ•˜๋‚˜๋งŒ ์‹ค์ˆ˜๋กœ ๋“ค์–ด์™€๋„ active ์Šน๊ฒฉ ์ „ /ja/... URL์ด ๋ Œ๋”๋ง๋  ์ˆ˜ ์žˆ๋‹ค.

์ด๊ฑด planned๋ผ๋Š” ๋ง๊ณผ ๋งž์ง€ ์•Š๋Š”๋‹ค.

๊ทธ๋ž˜์„œ planned locale collection์€ ์ „๋ถ€ output: false๋กœ ๋ฐ”๊ฟจ๋‹ค. ์ด์ œ planned ์–ธ์–ด๋Š” registry์™€ scaffold ๊ณ„ํš์—๋Š” ์กด์žฌํ•˜์ง€๋งŒ, ์‹ค์ œ post output์€ ๋งŒ๋“ค์ง€ ์•Š๋Š”๋‹ค. active๋กœ ์˜ฌ๋ฆด ๋•Œ๋งŒ ํ•ด๋‹น collection์„ output: true๋กœ ๋ฐ”๊พธ๊ณ , ๊ทธ ๋ณ€๊ฒฝ์„ verifier๊ฐ€ ํ™•์ธํ•œ๋‹ค.

verifier๋„ ๋ณด๊ฐ•ํ–ˆ๋‹ค.

active locale collection์€ output true์—ฌ์•ผ ํ•œ๋‹ค.
planned locale collection์€ output false์—ฌ์•ผ ํ•œ๋‹ค.
_site ์•„๋ž˜ planned locale prefix directory๊ฐ€ ์ƒ๊ธฐ๋ฉด ์‹คํŒจํ•œ๋‹ค.

์ฆ‰ ๋‹ค๊ตญ์–ด ํ™•์žฅ์€ โ€œํŒŒ์ผ์„ ๋งŒ๋“ค๋ฉด ๋ฐ”๋กœ ๋…ธ์ถœโ€์ด ์•„๋‹ˆ๋ผ, โ€œ๊ฒ€์ˆ˜๋œ ์–ธ์–ด๋งŒ ์ถœ๋ ฅโ€ํ•˜๋Š” ๊ตฌ์กฐ๊ฐ€ ๋๋‹ค.

RSS๋„ ๋ดค๋‹ค.

์˜์–ดํŒ์ด active์ธ๋ฐ <head>์™€ footer์˜ feed link๊ฐ€ ๊ณ„์† /feed.xml๋งŒ ๊ฐ€๋ฆฌํ‚ค๊ณ  ์žˆ์—ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  Jekyll Feed plugin์ด ๋งŒ๋“  ๋ฃจํŠธ feed๋Š” ํ•œ๊ตญ์–ด site.posts ์ค‘์‹ฌ์ด๋‹ค. ์˜์–ด ๋…์ž๊ฐ€ /en/์— ๋“ค์–ด์™”๋Š”๋ฐ RSS๋Š” ํ•œ๊ตญ์–ด feed๋งŒ ๋ฐ›๋Š” ์ƒํƒœ์ธ ๊ฒƒ์ด๋‹ค.

๊ทธ๋ž˜์„œ active ์˜์–ด feed๋ฅผ ๋”ฐ๋กœ ๋งŒ๋“ค์—ˆ๋‹ค.

/feed.xml      ํ•œ๊ตญ์–ด feed
/en/feed.xml   ์˜์–ด feed

head.html๊ณผ footer๋„ ํ˜„์žฌ locale์ด active non-Korean์ด๋ฉด ํ•ด๋‹น locale feed๋ฅผ ๊ฐ€๋ฆฌํ‚ค๊ฒŒ ํ–ˆ๋‹ค. planned locale feed๋Š” ๋งŒ๋“ค์ง€ ์•Š๋Š”๋‹ค. verifier์—๋Š” active feed ์กด์žฌ, Atom namespace, xml:lang, planned prefix ๋ˆ„์ถœ ์—ฌ๋ถ€, ์˜์–ด feed์˜ /en/ URL ํฌํ•จ ์—ฌ๋ถ€๋ฅผ ๊ฒ€์‚ฌํ•˜๊ฒŒ ํ–ˆ๋‹ค.

์„œ๋ธŒ ์—์ด์ „ํŠธ ๊ฐ์‚ฌ๋„ ๊ฐ™์ด ๋Œ๋ ธ๋‹ค.

์—ญ์‹œ ํ˜ผ์ž ๋ณด๋Š” ๊ฒƒ๋ณด๋‹ค ๋‚ซ๋‹ค. ๊ฐ์‚ฌ์—์„œ ๋‚˜์˜จ ์ง€์ ์€ ๋ช‡ ๊ฐ€์ง€์˜€๋‹ค.

์ฒซ์งธ, feed page๊ฐ€ sitemap์— ๋“ค์–ด๊ฐˆ ์ˆ˜ ์žˆ์—ˆ๋‹ค. ๊ทธ๋ž˜์„œ /feed.xml, /en/feed.xml ๊ฐ™์€ feed URL์€ sitemap์—์„œ ์ œ์™ธํ•˜๊ณ , ์˜์–ด feed page์—๋Š” sitemap: false๋ฅผ ๋ถ™์˜€๋‹ค.

๋‘˜์งธ, verifier๊ฐ€ HTML tag ์†์„ฑ ์ˆœ์„œ๋ฅผ ๋„ˆ๋ฌด ๋ฏฟ๊ณ  ์žˆ์—ˆ๋‹ค. type์ด href๋ณด๋‹ค ์•ž์— ์žˆ์–ด์•ผ๋งŒ feed link๋ฅผ ์ฐพ๋Š” ์‹์ด์—ˆ๋‹ค. ์ด๊ฑด ๊นจ์ง€๊ธฐ ์‰ฌ์šด ๊ฒ€์‚ฌ๋‹ค. ๊ทธ๋ž˜์„œ link tag๋ฅผ ์†์„ฑ ๋‹จ์œ„๋กœ ์ฝ์–ด์„œ ์ˆœ์„œ์™€ ๋ฌด๊ด€ํ•˜๊ฒŒ ๊ฒ€์‚ฌํ•˜๊ฒŒ ํ–ˆ๋‹ค.

์…‹์งธ, ํ•œ๊ตญ์–ด feed ๋ณธ๋ฌธ์—๋Š” ์ด ๊ธ€ ์ž์ฒด์˜ ์„ค๋ช… ๋•Œ๋ฌธ์— /ja/, /zh-Hans/, /pt-BR/ ๊ฐ™์€ ๋ฌธ์ž์—ด์ด ๋“ค์–ด๊ฐ„๋‹ค. ์ด๊ฑด planned locale URL ๋…ธ์ถœ์ด ์•„๋‹ˆ๋ผ ๋ณธ๋ฌธ ์„ค๋ช…์ด๋‹ค. ๊ทธ๋ž˜์„œ feed ๊ฒ€์‚ฌ๋Š” CDATA ์ „์ฒด๊ฐ€ ์•„๋‹ˆ๋ผ feed entry์˜ link URL๋งŒ ๋ณด๊ฒŒ ๋ฐ”๊ฟจ๋‹ค.

๋„ท์งธ, planned locale์€ search์™€ stats ๊ฐ™์€ browser runtime data์—๋„ ์„ž์ด์ง€ ์•Š๋Š” ํŽธ์ด ๋‚ซ๋‹ค. Cloudflare Worker๋Š” ์•ˆ์ „๋ง์œผ๋กœ planned prefix๋ฅผ normalizeํ•ด๋„ ๋˜์ง€๋งŒ, ์‹ค์ œ ํŽ˜์ด์ง€ JS์— planned prefix๋ฅผ ๋ฏธ๋ฆฌ ๋„˜๊ธธ ํ•„์š”๋Š” ์—†๋‹ค. ๊ทธ๋ž˜์„œ runtime search/stats๋Š” active locale๋งŒ ๋“ค๊ณ  ๊ฐ€๊ฒŒ ํ–ˆ๋‹ค.

๋‹ค์„ฏ์งธ, giscus๋Š” ๋ธ”๋กœ๊ทธ locale code์™€ widget language code๊ฐ€ ํ•ญ์ƒ ๊ฐ™์ง€ ์•Š๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ์ค‘๊ตญ์–ด ๊ฐ„์ฒด๋Š” ๋ธ”๋กœ๊ทธ URL์—์„œ๋Š” zh-Hans๊ฐ€ ๋งž์ง€๋งŒ giscus widget์—์„œ๋Š” zh-CN์„ ์“ด๋‹ค. ๋ธŒ๋ผ์งˆ ํฌ๋ฅดํˆฌ๊ฐˆ์–ด๋„ ๋ธ”๋กœ๊ทธ URL์€ pt-BR์ด์ง€๋งŒ giscus์—๋Š” pt๋ฅผ ๋„˜๊ธฐ๋Š” ์ชฝ์ด ๋งž๋‹ค. ๊ทธ๋ž˜์„œ locale registry์— giscus_lang์„ ๋”ฐ๋กœ ๋’€๋‹ค.

์—ฌ์„ฏ์งธ, SEO์—๋Š” hreflang๋ฟ ์•„๋‹ˆ๋ผ og:locale:alternate๋„ ๋„ฃ์—ˆ๋‹ค. ๊ฒ€์ƒ‰์—”์ง„์šฉ alternates์™€ ์†Œ์…œ/OG locale alternate๋ฅผ ๊ฐ™์ด ๋งž์ถฐ๋‘๊ธฐ ์œ„ํ•ด์„œ๋‹ค.

๋ชจ๋ฐ”์ผ๊ณผ ์ ‘๊ทผ์„ฑ๋„ ๋‹ค์‹œ ๋ดค๋‹ค.

๊ฒ€์ƒ‰ overlay๋Š” ๋ˆˆ์œผ๋กœ๋Š” ์—ด๋ฆฌ๊ณ  ๋‹ซํ˜”์ง€๋งŒ, ARIA ์ƒํƒœ๋กœ๋Š” ๋ช…ํ™•ํ•˜์ง€ ์•Š์•˜๋‹ค. ๊ทธ๋ž˜์„œ ๊ฒ€์ƒ‰ ๋ฒ„ํŠผ์— aria-controls, aria-expanded๋ฅผ ๋ถ™์ด๊ณ , ๊ฒ€์ƒ‰ ์˜์—ญ์€ role="dialog", aria-modal="true", hidden ์ƒํƒœ๋ฅผ ๊ฐ–๊ฒŒ ํ–ˆ๋‹ค. ์—ด ๋•Œ๋Š” ๊ฒ€์ƒ‰ input์œผ๋กœ focus๊ฐ€ ๊ฐ€๊ณ , Escape๋กœ ๋‹ซ์œผ๋ฉด ๊ฒ€์ƒ‰ ๋ฒ„ํŠผ์œผ๋กœ focus๊ฐ€ ๋Œ์•„์˜จ๋‹ค.

์–ธ์–ด ๋ฉ”๋‰ด๋„ hover์—๋งŒ ๊ธฐ๋Œ€์ง€ ์•Š๊ฒŒ ํ–ˆ๋‹ค. ํ˜„์žฌ ์–ธ์–ด ๋ฒ„ํŠผ์ด ์‹ค์ œ disclosure button์ฒ˜๋Ÿผ aria-expanded๋ฅผ ๊ฐ–๊ณ , ํด๋ฆญ์œผ๋กœ ์—ด๊ณ  ๋‹ซํžˆ๋ฉฐ, ๋ฐ”๊นฅ ํด๋ฆญ๊ณผ Escape๋กœ ๋‹ซํžŒ๋‹ค. ๋ชจ๋ฐ”์ผ์—์„œ๋Š” desktop dropdown์ด hover/focus specificity ๋•Œ๋ฌธ์— ์ƒˆ๋Š” ๊ฒƒ์„ ๋ง‰๊ณ , ์ด๋ฏธ ์žˆ๋Š” ๋ชจ๋ฐ”์ผ quick language link๋งŒ ์“ฐ๊ฒŒ ํ–ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  post sync gate๋„ ์ถ”๊ฐ€ํ–ˆ๋‹ค.

์ด์ „ ๊ทœ์น™์€ โ€œpushํ•  ๋•Œ ์˜์–ด๋„ ๊ฐ™์ดโ€์˜€์ง€๋งŒ, ๊ทธ๊ฑธ ๊ฒ€์‚ฌํ•˜๋Š” ๋ช…๋ น์ด ๋”ฐ๋กœ ์—†์—ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ๊ทœ์น™์€ ์žˆ๋Š”๋ฐ ์‹ค์ˆ˜๋Š” ๋ชป ๋ง‰๋Š”๋‹ค. ๊ทธ๋ž˜์„œ i18n:post_sync๋ฅผ ๋งŒ๋“ค์—ˆ๋‹ค.

bundle exec rake i18n:post_sync
STRICT=1 bundle exec rake i18n:post_sync

์ผ๋ฐ˜ ๋ชจ๋“œ๋Š” draft-time visibility๋‹ค. ์ง€๊ธˆ์ฒ˜๋Ÿผ ํ•œ๊ตญ์–ด ์›๋ฌธ์ด ๊ณ„์† ๋ฐ”๋€Œ๋Š” ์ค‘์ด๋ฉด missing translation์„ ๊ณง๋ฐ”๋กœ ์ƒ์„ฑํ•˜์ง€ ์•Š๊ณ  _project/i18n/pending-translations.yml์— ๊ธฐ๋กํ•  ์ˆ˜ ์žˆ๋‹ค. strict ๋ชจ๋“œ๋Š” commit/push/publish ์ „์šฉ์ด๋‹ค. strict์—์„œ๋Š” pending๋„ ์‹คํŒจํ•œ๋‹ค.

์ด ์„ธ์…˜ ํฌ์ŠคํŠธ๋„ ์ง€๊ธˆ์€ ๊ณ„์† ์—…๋ฐ์ดํŠธ ์ค‘์ด๋ผ ์˜์–ด ๋ฒˆ์—ญ์„ ๋งŒ๋“ค์ง€ ์•Š๋Š”๋‹ค. ๋Œ€์‹  pending manifest์— source_state: unconfirmed๋กœ ๊ธฐ๋กํ–ˆ๋‹ค. ์ด๊ฒŒ ์ฒ˜์Œ์— ์‚ฌ์šฉ์ž๊ฐ€ ์ง€์ ํ–ˆ๋˜ ๋ฌธ์ œ์˜ ๋ณด์™„์ด๋‹ค. ์›๋ฌธ ํ™•์ธ๋„ ๋๋‚˜๊ธฐ ์ „์— ์˜์–ดํŒ์„ ๋ฐ”๋กœ ๋งŒ๋“ค์ง€ ์•Š๋Š”๋‹ค.

์Šน๊ฒฉ gate๋„ ๋”ฐ๋กœ ๋งŒ๋“ค์—ˆ๋‹ค.

i18n:pilot_status๋Š” backlog๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ๋ฐ ์ข‹์ง€๋งŒ, planned locale์ด ์ „๋ถ€ pending์ด์–ด๋„ ์„ฑ๊ณตํ•ด์•ผ ํ•œ๋‹ค. ๊ทธ๊ฒŒ ํ‰์†Œ์—๋Š” ๋งž๋‹ค. ํ•˜์ง€๋งŒ ja๋ฅผ active๋กœ ์˜ฌ๋ฆฌ๊ธฐ ์ง์ „์—๋Š” ๋‹ค๋ฅด๋‹ค. ๊ทธ๋•Œ๋Š” pending์ด ์žˆ์œผ๋ฉด ์‹คํŒจํ•ด์•ผ ํ•œ๋‹ค.

๊ทธ๋ž˜์„œ i18n:promotion_check๋ฅผ ์ถ”๊ฐ€ํ–ˆ๋‹ค.

LOCALE=ja bundle exec rake i18n:promotion_check

์ด ๋ช…๋ น์€ ์ผ๋ถ€๋Ÿฌ ์—„๊ฒฉํ•˜๋‹ค. ์•„์ง ja page mapping, pilot translation URL, translation review metadata๊ฐ€ ์—†์œผ๋ฉด ์‹คํŒจํ•œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  active ์Šน๊ฒฉ ์ „์—๋Š” collection์ด ๊ณ„์† output: false์—ฌ์•ผ ํ•œ๋‹ค. ์ฆ‰ ์ด ๋ช…๋ น์€ โ€œ์ง€๊ธˆ ๋‹น์žฅ ์Šน๊ฒฉ ๊ฐ€๋Šฅ?โ€์„ ๋ฌป๋Š” ์šฉ๋„๋‹ค.

pilot ์›๋ฌธ ํ™•์ธ metadata๋„ ์ถ”๊ฐ€ํ–ˆ๋‹ค.

๊ฐ pilot entry์— ํ•œ๊ตญ์–ด ์›๋ฌธ์˜ source_last_modified_at๊ณผ source_sha256์„ ๊ธฐ๋กํ–ˆ๊ณ , verifier๊ฐ€ ํ˜„์žฌ ํ•œ๊ตญ์–ด ์›๋ฌธ ํŒŒ์ผ์˜ hash๋ฅผ ๋‹ค์‹œ ๊ณ„์‚ฐํ•œ๋‹ค. ํ•œ๊ตญ์–ด ์›๋ฌธ์ด ๋ฐ”๋€Œ๋ฉด ๊ธฐ์กด ๋ฒˆ์—ญ ๊ฒ€์ˆ˜ metadata๋Š” stale๋กœ ๋ณธ๋‹ค. ์ด๊ฒŒ ์—†์œผ๋ฉด ์›๋ฌธ์ด ๋ฐ”๋€ ๋’ค์—๋„ ์˜› ๋ฒˆ์—ญ์ด ํ†ต๊ณผํ•  ์ˆ˜ ์žˆ๋‹ค.

๊ทธ ๋‹ค์Œ scaffold ์ •์ฑ…๋„ ์†๋ดค๋‹ค.

planned locale page scaffold๋Š” ํ•„์š”ํ•˜๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ๊ทธ๋ƒฅ _pages/ja/index.md๋ฅผ ๋งŒ๋“ค๋ฉด /ja/๊ฐ€ ๋ Œ๋”๋ง๋  ์ˆ˜ ์žˆ๋‹ค. active ์ „์—๋Š” ๊ทธ๋Ÿฌ๋ฉด ์•ˆ ๋œ๋‹ค. ๊ทธ๋ž˜์„œ planned scaffold์—๋Š” ๋‹ค์Œ front matter๋ฅผ ์ž๋™์œผ๋กœ ๋„ฃ๊ฒŒ ํ–ˆ๋‹ค.

published: false
sitemap: false
i18n_status: planned-scaffold

์ฆ‰ ํŒŒ์ผ์€ ์ค€๋น„ํ•˜๋˜ ๊ณต๊ฐœ output์€ ๋งŒ๋“ค์ง€ ์•Š๋Š”๋‹ค.

page mapping๋„ registry ๊ธฐ๋ฐ˜์œผ๋กœ ๋™๊ธฐํ™”ํ•˜๋Š” task๋ฅผ ์ถ”๊ฐ€ํ–ˆ๋‹ค.

bundle exec rake i18n:sync_page_mappings

์ด์ œ ko/en๋งŒ ์†์œผ๋กœ ๋“ค๊ณ  ์žˆ๋Š” ๊ฒŒ ์•„๋‹ˆ๋ผ, ja, zh-Hans, es, pt-BR, fr, id์˜ page/category URL๋„ ๊ฐ™์€ ๊ทœ์น™์œผ๋กœ ๊ณ„์‚ฐํ•ด _data/i18n_pages.yml์— ๋„ฃ์„ ์ˆ˜ ์žˆ๋‹ค. planned locale์€ sitemap๊ณผ hreflang์— ๋…ธ์ถœ๋˜์ง€ ์•Š์ง€๋งŒ, ์Šน๊ฒฉ ์ค€๋น„ ์ƒํƒœ๋Š” ๋ฐ์ดํ„ฐ๋กœ ๋‚จ๋Š”๋‹ค.

์—ฌ๊ธฐ์„œ๋„ ํ•œ ๋ฒˆ ๋” ์ˆ˜์ •ํ–ˆ๋‹ค.

์ฒ˜์Œ ๋งŒ๋“  sync task๋Š” URL์„ ์ •๊ทœํ™”ํ•œ๋‹ค๊ณ  category page ๋์— /๋ฅผ ๊ฐ•์ œ๋กœ ๋ถ™์˜€๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ๊ธฐ์กด ํ•œ๊ตญ์–ด category page๋Š” front matter๊ฐ€ /bible, /devlog, /daily-review์ฒ˜๋Ÿผ trailing slash ์—†์ด ๋˜์–ด ์žˆ์—ˆ๋‹ค. sitemap์€ ์‹ค์ œ Jekyll ์ถœ๋ ฅ ๊ธฐ์ค€์œผ๋กœ /bible์„ ๋งŒ๋“ค๊ณ  ์žˆ๋Š”๋ฐ, page mapping์€ /bible/์„ ๊ธฐ๋Œ€ํ•˜๋‹ˆ verifier๊ฐ€ ๊นจ์กŒ๋‹ค.

๊ทธ๋ž˜์„œ page mapping sync๋Š” ์ถ”์ • URL์„ ๋งŒ๋“ค๊ธฐ ์ „์— ์‹ค์ œ _pages ํŒŒ์ผ์˜ front matter permalink๋ฅผ ๋จผ์ € ์ฝ๊ฒŒ ํ–ˆ๋‹ค. ์˜์–ด์™€ ์ผ๋ณธ์–ด์ฒ˜๋Ÿผ ์ด๋ฏธ locale page scaffold๊ฐ€ ์žˆ๋Š” ์–ธ์–ด๋„ ์‹ค์ œ ํŒŒ์ผ์˜ permalink๋ฅผ ๋”ฐ๋ฅธ๋‹ค.

์ด๊ฑด ์ž‘์€ ์ฐจ์ด ๊ฐ™์ง€๋งŒ ์ค‘์š”ํ•˜๋‹ค.

์›ํ•˜๋Š” URL
์ถ”์ •ํ•œ URL
์‹ค์ œ ๋ Œ๋”๋ง๋˜๋Š” URL

์ด ์…‹์ด ๋‹ค๋ฅด๋ฉด hreflang, sitemap, ์–ธ์–ด ์ „ํ™˜ ๋งํฌ๊ฐ€ ์„œ๋กœ ๋‹ค๋ฅธ ๋ง์„ ํ•˜๊ฒŒ ๋œ๋‹ค. ๋‹ค๊ตญ์–ด ์‚ฌ์ดํŠธ์—์„œ URL์€ ๋ณด๊ธฐ ์ข‹๊ฒŒ ๋งž์ถ”๋Š” ๊ฐ’์ด ์•„๋‹ˆ๋ผ, ์‹ค์ œ output์—์„œ ๊ฒ€์ฆํ•ด์•ผ ํ•˜๋Š” ๊ฐ’์ด๋‹ค.

๋งˆ์ง€๋ง‰์œผ๋กœ ๋‹ค์‹œ build์™€ audit์„ ๋Œ๋ ธ๋‹ค.

bundle exec jekyll build
bundle exec rake i18n:verify
bundle exec rake i18n:pilot_status
bundle exec rake i18n:post_sync

๊ฒฐ๊ณผ๋Š” ์ด๋ ‡๋‹ค.

i18n:verify       warnings 0, errors 0
pilot active      ready 10/10
pilot planned     ready 10/30, pending 20/30
post sync draft   pending 1, errors 0
_site/ja          not rendered

post sync์˜ pending 1๊ฐœ๋Š” ์ด ๊ธ€ ์ž์ฒด๋‹ค. ์›๋ฌธ์ด ์•„์ง ๊ณ„์† ๊ฐฑ์‹ ๋˜๋Š” ์ค‘์ด๋ผ ์˜์–ด ๋ฒˆ์—ญ์„ ์ผ๋ถ€๋Ÿฌ ๋งŒ๋“ค์ง€ ์•Š๊ณ  source_state: unconfirmed๋กœ ๋ฌถ์–ด๋‘” ์ƒํƒœ๋‹ค. ์ด์ œ ์›๋ฌธ ํ™•์ • ์ „ ์ž๋™ ๋ฒˆ์—ญ์ด ํŠ€์–ด๋‚˜์˜ค์ง€ ์•Š๋Š”๋‹ค.

๊ทธ ๋‹ค์Œ์—๋Š” ์ผ๋ณธ์–ด pilot์„ ์‹ค์ œ๋กœ ๋งŒ๋“ค์—ˆ๋‹ค.

๋‹ค์„ฏ ๊ฐœ ๊ธ€์„ ๋จผ์ € ๊ณจ๋ž๋‹ค.

ํƒ€๋‹ฅ๋ฐ”์ด๋ธ” ๋น„์ „ ๊ธ€
์ฐฝ์„ธ๊ธฐ ๋ฌต์ƒ ๊ธ€
๋ธ”๋กœ๊ทธ ์žฌ๊ฐ€๋™ devlog
๋ฐฉ๋ฌธ์ž ์นด์šดํ„ฐ devlog
Daily Review ์„ฑ๊ฒฝ ๋งฅ๋ฝ devlog

์ด๋ฒˆ์—๋Š” ์˜ˆ์ „์ฒ˜๋Ÿผ ์•„๋ฌด ๋ฒˆ์—ญ์ด๋‚˜ ๋Œ€๋Ÿ‰์œผ๋กœ ๋ฐ€์–ด๋ถ™์ด์ง€ ์•Š์•˜๋‹ค. ๊ฐ ๊ธ€์„ ๋‚˜๋ˆ ์„œ GPT-5.5 worker์—๊ฒŒ ๋งก๊ธฐ๊ณ , ํŒŒ์ผ ๋‹จ์œ„๋กœ ownership์„ ์คฌ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋ณ„๋„ GPT-5.5 ๊ฐ์‚ฌ worker๋ฅผ ๋ถ™์—ฌ ์‹ ํ•™ ํ‘œํ˜„, ์ผ๋ณธ์–ด ์ž์—ฐ์Šค๋Ÿฌ์›€, ๊ธฐ์ˆ  ์šฉ์–ด, ๋‚ด๋ถ€ ๋งํฌ, code fence, conversation card ๊ตฌ์กฐ๋ฅผ ๋‹ค์‹œ ๋ดค๋‹ค.

๊ฐ์‚ฌ์—์„œ ์žกํžŒ ๊ฒƒ๋„ ์žˆ์—ˆ๋‹ค.

์„ฑ๊ฒฝ/์‹ ํ•™ ๊ธ€์—์„œ๋Š” ใ€ŒใŸใ ใ€ใ‚ทใƒชใƒผใ‚บ, ใ‚คใ‚จใ‚นใฎ้ก”ใ‚’้€šใฃใฆ, ๅฎ—ๆ•™็š„้›†ๅ›ฃๆ€ง์ฒ˜๋Ÿผ ํ•œ๊ตญ์–ด ์ง์—ญ ๋ƒ„์ƒˆ๊ฐ€ ๋‚˜๋Š” ํ‘œํ˜„์ด ๋ณด์˜€๋‹ค. ๊ทธ๋ž˜์„œ ์ผ๋ณธ์–ด ์‹ ์•™ ๋ฌธ๋งฅ์— ๋งž๊ฒŒ ใ€Œใฎใฟใ€ใจ่จ€ใ‚ใ‚Œใ‚‹ๅฎ—ๆ•™ๆ”น้ฉใฎๆจ™่ชž, ใ‚คใ‚จใ‚นใƒปใ‚ญใƒชใ‚นใƒˆใซ็…งใ‚‰ใ—ใฆ, ๅ…ฑๅŒไฝ“ใฎๅ†…่ผชๆ„่ญ˜ ์ชฝ์œผ๋กœ ๋‹ค๋“ฌ์—ˆ๋‹ค. ์ฐฝ์„ธ๊ธฐ ๋ฌต์ƒ๋„ ใ‚ใชใŸใŒใŸใฎๆ•ตใ‚’ใ‚‚ๆ„›ใ—ใชใ•ใ„, ็ฅžใธใฎๆ„›ใ€้šฃไบบใธใฎๆ„›๋ฅผ ๋” ์ž์—ฐ์Šค๋Ÿฌ์šด ์ผ๋ณธ์–ด ์„ฑ๊ฒฝ ํ‘œํ˜„์— ๊ฐ€๊น๊ฒŒ ์ •๋ฆฌํ–ˆ๋‹ค.

๊ธฐ์ˆ  ๊ธ€ ๊ฐ์‚ฌ์—์„œ๋Š” ๋” ์ค‘์š”ํ•œ promotion risk๊ฐ€ ๋‚˜์™”๋‹ค.

์ผ๋ณธ์–ด ๊ธ€ ์ž์ฒด๋ณด๋‹ค archive list์˜ category chip์ด ๋ฌธ์ œ์˜€๋‹ค. _includes/archive-single.html์ด en๋งŒ ํŠน์ˆ˜ ์ฒ˜๋ฆฌํ•˜๊ณ , ๊ทธ ์™ธ ์–ธ์–ด๋Š” ํ•œ๊ตญ์–ด category label๊ณผ URL๋กœ ๋–จ์–ด์ง€๋Š” ๊ตฌ์กฐ์˜€๋‹ค. ์ง€๊ธˆ์€ ja_posts๊ฐ€ output: false๋ผ ๋ณด์ด์ง€ ์•Š์ง€๋งŒ, ์ผ๋ณธ์–ด๋ฅผ active๋กœ ์˜ฌ๋ฆฌ๋Š” ์ˆœ๊ฐ„ archive list์— ja raw chip์ด๋‚˜ ํ•œ๊ตญ์–ด category label์ด ์„ž์ผ ์ˆ˜ ์žˆ์—ˆ๋‹ค.

๊ทธ๋ž˜์„œ category chip๋„ _data/category_i18n.yml๋กœ ๋ถ„๋ฆฌํ–ˆ๋‹ค.

ko, en, ja, zh-Hans, es, pt-BR, fr, id

๊ฐ ์–ธ์–ด๋ณ„ category label๊ณผ URL์„ ๋ฐ์ดํ„ฐ๋กœ ๋‘๊ณ , archive-single.html์€ post์˜ lang์„ ๊ธฐ์ค€์œผ๋กœ ๊ทธ ๋ฐ์ดํ„ฐ๋ฅผ ์ฝ๋Š”๋‹ค. locale marker category์ธ en, ja, zh-Hans ๊ฐ™์€ ๊ฐ’์€ chip์—์„œ ์ˆจ๊ธด๋‹ค. verifier๋„ ์ด ํŒŒ์ผ์„ ๊ฒ€์‚ฌํ•˜๊ฒŒ ํ–ˆ๋‹ค. ์ด์ œ category chip์€ en ์ „์šฉ ๋ถ„๊ธฐ๊ฐ€ ์•„๋‹ˆ๋ผ ๋‹ค๊ตญ์–ด ๋ฐ์ดํ„ฐ์˜ ์ผ๋ถ€๊ฐ€ ๋๋‹ค.

์ผ๋ณธ์–ด pilot metadata๋„ _data/i18n_pilot.yml์— ๋„ฃ์—ˆ๋‹ค.

translation_review.ja
  reviewed_at: 2026-06-07 16:48:12 +0900
  model_family: gpt-5.5
  paid_api: false

๊ทธ๋ฆฌ๊ณ  ๋‹ค์‹œ ํ™•์ธํ–ˆ๋‹ค.

i18n:pilot_status
  planned ready: 5/30
  planned pending: 25

i18n:promotion_check LOCALE=ja
  warnings: 0
  errors: 0

i18n:verify
  warnings: 0
  errors: 0

์ค‘์š”ํ•œ ๊ฑด ์—ฌ๊ธฐ์„œ๋„ /ja/๋ฅผ ์•„์ง ๊ณต๊ฐœํ•˜์ง€ ์•Š์•˜๋‹ค๋Š” ์ ์ด๋‹ค. ์ผ๋ณธ์–ด pilot ๋ฒˆ์—ญ ์†Œ์Šค์™€ page scaffold๋Š” ์ค€๋น„๋์ง€๋งŒ, ja_posts collection์€ ์—ฌ์ „ํžˆ output: false๋‹ค. _site/ja๋„ ์ƒ๊ธฐ์ง€ ์•Š์•˜๋‹ค. ์ฆ‰ ์ผ๋ณธ์–ด๋Š” ์ด์ œ active ์Šน๊ฒฉ ์ง์ „ ์กฐ๊ฑด์„ ํ†ต๊ณผํ•  ์ˆ˜ ์žˆ๋Š” ์ƒํƒœ๊ฐ€ ๋์ง€๋งŒ, ๊ณต๊ฐœ๋Š” ๋ณ„๋„ promotion ๋‹จ๊ณ„๋กœ ๋‚จ๊ฒจ๋’€๋‹ค.

์ด์–ด์„œ ์ค‘๊ตญ์–ด ๊ฐ„์ฒด zh-Hans pilot๋„ ๊ฐ™์€ ๋ฐฉ์‹์œผ๋กœ ์ง„ํ–‰ํ–ˆ๋‹ค.

์ค‘๊ตญ์–ด ๊ฐ„์ฒด๋Š” ๊ฒฝ๋กœ๋ถ€ํ„ฐ ์กฐ์‹ฌํ•ด์•ผ ํ–ˆ๋‹ค.

collection directory: _zh_hans_posts
URL prefix: /zh-Hans/
front matter category marker: zh-Hans

ํŒŒ์ผ ์‹œ์Šคํ…œ๊ณผ Ruby collection ์ด๋ฆ„์€ underscore๋ฅผ ์“ฐ์ง€๋งŒ, ์‹ค์ œ URL๊ณผ locale tag๋Š” zh-Hans๋ฅผ ์œ ์ง€ํ•ด์•ผ ํ•œ๋‹ค. ๊ทธ๋ž˜์„œ ๋จผ์ € scaffold dry-run์„ ๋Œ๋ ธ๊ณ , /zh-Hans/, /zh-Hans/about/, /zh-Hans/categories/, category pages๊ฐ€ ๋ชจ๋‘ ๊ณ„ํš๋Œ€๋กœ ๋‚˜์˜ค๋Š”์ง€ ํ™•์ธํ–ˆ๋‹ค. ๊ทธ ๋‹ค์Œ planned page scaffold๋ฅผ ๋งŒ๋“ค์—ˆ๋‹ค. ์ผ๋ณธ์–ด์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ published: false, sitemap: false๋ผ์„œ ๊ณต๊ฐœ output์€ ๋งŒ๋“ค์ง€ ์•Š๋Š”๋‹ค.

๋ฒˆ์—ญ๋„ ์ผ๋ณธ์–ด์™€ ๊ฐ™์€ ๋ฐฉ์‹์œผ๋กœ ํ–ˆ๋‹ค. GPT-5.5 worker์—๊ฒŒ pilot 5๊ฐœ๋ฅผ ํŒŒ์ผ๋ณ„๋กœ ๋งก๊ธฐ๊ณ , ๋‹ค์‹œ GPT-5.5 ๊ฐ์‚ฌ worker๋กœ ์‹ ํ•™/๋ฌธ์ฒด์™€ ๊ธฐ์ˆ /๋งํฌ๋ฅผ ๋‚˜๋ˆ  ๊ฒ€์ˆ˜ํ–ˆ๋‹ค.

์ด๋ฒˆ์—๋„ ๊ฐ์‚ฌ๊ฐ€ ์‹ค์ œ ๋ฌธ์ œ๋ฅผ ์žก์•˜๋‹ค.

๊ฐ€์žฅ ์ค‘์š”ํ•œ ๊ฑด ํƒ€๋‹ฅ๋ฐ”์ด๋ธ” ๋น„์ „ ๊ธ€ ์•ˆ์˜ ์˜๋ฏธ ๋ฐ˜์ „์ด์—ˆ๋‹ค.

์›๋ฌธ์€ ๊ณต์œ  ๊ธฐ๋Šฅ์ด ์ด ์„ค๊ต์˜ ๋ฌธ์ œ์ ์ด ์•„๋‹ˆ๋ผ ํ•จ๊ป˜ ์ ๊ฒ€ํ•  ์งˆ๋ฌธ ํ˜•ํƒœ์—ฌ์•ผ ํ•œ๋‹ค๊ณ  ๋งํ•œ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ์ค‘๊ตญ์–ด ์ดˆ์•ˆ์€ ์ด ๋‘˜์„ ๋ฐ˜๋Œ€๋กœ ๋ฒˆ์—ญํ–ˆ๋‹ค. ์ด๊ฑด ๋‹จ์ˆœ ์–ด์ƒ‰ํ•จ์ด ์•„๋‹ˆ๋ผ ์ œํ’ˆ ์•ˆ์ „ ์ฒ ํ•™์„ ์ •๋ฐ˜๋Œ€๋กœ ๋ฐ”๊พธ๋Š” ์˜ค๋ฅ˜๋‹ค.

๊ทธ๋ž˜์„œ ์ด๋ ‡๊ฒŒ ๊ณ ์ณค๋‹ค.

ๅˆ†ไบซๅŠŸ่ƒฝๅฟ…้กปๆ˜ฏโ€œๅฏไปฅไธ€่ตทๆฃ€ๆŸฅ็š„้—ฎ้ข˜โ€๏ผŒ่€Œไธๆ˜ฏโ€œ่ฟ™็ฏ‡่ฎฒ้“็š„้—ฎ้ข˜โ€ใ€‚

๋˜ ๅๅญ—ๆžถไน‹็ฅž์ฒ˜๋Ÿผ ์ค‘๊ตญ์–ด ์‹ ํ•™ ๋ฌธ๋งฅ์—์„œ ์–ด์ƒ‰ํ•  ์ˆ˜ ์žˆ๋Š” ํ‘œํ˜„์€ ๅๅญ—ๆžถไธŠ็š„ไธŠๅธ๋กœ ๋ฐ”๊พธ๊ณ , ๅœฃ็ตๆžœๅญ็š„ๆžœๅฎž ๊ฐ™์€ ์ค‘๋ณต ํ‘œํ˜„์€ ๅœฃ็ต็š„ๆžœๅญ๋กœ ์ •๋ฆฌํ–ˆ๋‹ค.

๊ธฐ์ˆ  ๊ฐ์‚ฌ์—์„œ๋Š” ๋‘ ๊ฐ€์ง€ ๊ธฐ์ค€์„ ๋” ๋ถ„๋ช…ํžˆ ํ–ˆ๋‹ค.

์ฒซ์งธ, ์ค‘๊ตญ์–ด ๊ธ€ ์•ˆ์˜ fallback internal link๋„ ํ•˜๋“œ์ฝ”๋”ฉ URL์ด ์•„๋‹ˆ๋ผ post_url Liquid tag๋กœ ๋‘๋Š” ๊ฒŒ ๋‚ซ๋‹ค. ์•„์ง ์ค‘๊ตญ์–ด counterpart๊ฐ€ ์—†๋Š” ๊ธ€์€ ํ•œ๊ตญ์–ด ์›๋ฌธ์œผ๋กœ ๊ฐ€๋”๋ผ๋„, Jekyll์ด ์กด์žฌ ์—ฌ๋ถ€๋ฅผ ๊ฒ€์ฆํ•˜๊ฒŒ ํ•ด์•ผ ํ•œ๋‹ค.

๋‘˜์งธ, ์ฝ”๋“œ๋ธ”๋ก ์•ˆ์˜ prompt/template ์˜ˆ์‹œ๋Š” ๊ณ ๋ฏผ์ด ํ•„์š”ํ–ˆ๋‹ค. ์›๋ฌธ artifact๋ฅผ ๊ทธ๋Œ€๋กœ ๋ณด์กดํ•˜๋ฉด ํ•œ๊ตญ์–ด๊ฐ€ ๋‚จ๊ณ , ๋ฒˆ์—ญํ•˜๋ฉด ์‹ค์ œ artifact์™€ ๋‹ฌ๋ผ์ง„๋‹ค. ์ด๋ฒˆ pilot์—์„œ๋Š” ๋น„ํ•œ๊ตญ์–ด ๊ณต๊ฐœ๋ฌธ์— ๋ณด์ด๋Š” ํ•œ๊ตญ์–ด residue๋ฅผ ๋ง‰๋Š” ์ชฝ์„ ๋” ๊ฐ•ํ•œ ๊ธฐ์ค€์œผ๋กœ ์žก์•˜๋‹ค. ๊ทธ๋ž˜์„œ code fence ๊ตฌ์กฐ์™€ class name์€ ๋ณด์กดํ•˜๋˜, ์„ค๋ช…์šฉ prompt/template ๋ฌธ์žฅ์€ ์ค‘๊ตญ์–ด ๋…์ž๊ฐ€ ์ฝ์„ ์ˆ˜ ์žˆ๊ฒŒ ์œ ์ง€ํ–ˆ๋‹ค.

์ค‘๊ตญ์–ด ๊ฐ„์ฒด๋„ metadata๋ฅผ ๋„ฃ์—ˆ๋‹ค.

translation_review.zh-Hans
  reviewed_at: 2026-06-07 17:14:26 +0900
  model_family: gpt-5.5
  paid_api: false

๊ทธ๋ฆฌ๊ณ  ๋‹ค์‹œ ํ†ต๊ณผํ–ˆ๋‹ค.

i18n:pilot_status
  planned ready: 10/30
  planned pending: 20

i18n:promotion_check LOCALE=zh-Hans
  warnings: 0
  errors: 0

i18n:verify
  warnings: 0
  errors: 0

์ค‘๊ตญ์–ด ๊ฐ„์ฒด๋„ ์•„์ง ๊ณต๊ฐœํ•˜์ง€ ์•Š์•˜๋‹ค. _zh_hans_posts๋Š” ๊ณ„์† output: false์ด๊ณ , build ํ›„์—๋„ _site/zh-Hans๋Š” ์ƒ๊ธฐ์ง€ ์•Š์•˜๋‹ค. ์ด์ œ ja์™€ zh-Hans๋Š” pilot ๋ฒˆ์—ญ๊ณผ pre-promotion gate๋ฅผ ํ†ต๊ณผํ–ˆ๊ณ , ๋‚จ์€ planned ์–ธ์–ด๋Š” es, pt-BR, fr, id๋‹ค.

๊ทธ ๋‹ค์Œ์€ ์ŠคํŽ˜์ธ์–ด์˜€๋‹ค.

์ŠคํŽ˜์ธ์–ด๋„ ๋จผ์ € /es/ page scaffold๋ฅผ ๋งŒ๋“ค๋˜, ์ผ๋ณธ์–ด์™€ ์ค‘๊ตญ์–ด ๊ฐ„์ฒด์ฒ˜๋Ÿผ published: false, sitemap: false ์ƒํƒœ๋กœ ๋’€๋‹ค. ๊ณต๊ฐœํ•˜์ง€ ์•Š์€ planned ์–ธ์–ด๊ฐ€ _site/es๋ฅผ ๋งŒ๋“ค๋ฉด ์•ˆ ๋˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ๊ทธ ๋‹ค์Œ pilot 5๊ฐœ๋ฅผ GPT-5.5 worker๋“ค์—๊ฒŒ ๋‚˜๋ˆ  ๋งก๊ฒผ๋‹ค.

์—ฌ๊ธฐ์„œ๋„ ์ƒ์„ฑ๋ณด๋‹ค ๊ฒ€์ˆ˜๊ฐ€ ๋จผ์ €๋ผ๋Š” ๊ตํ›ˆ์ด ๋‹ค์‹œ ๋‚˜์™”๋‹ค.

์ฐฝ์„ธ๊ธฐ ๋ฌต์ƒ, ๋ธ”๋กœ๊ทธ ์žฌ๊ฐ€๋™ ๊ธ€, ๋ฐฉ๋ฌธ์ž ์นด์šดํ„ฐ ๊ธ€, Daily Review ์„ฑ๊ฒฝ ๊ตฌ์ ˆ ๋งฅ๋ฝ ๊ธ€์€ 1์ฐจ ๊ตฌ์กฐ ๊ฒ€์‚ฌ๋ฅผ ํ†ต๊ณผํ–ˆ๋‹ค. heading ์ˆ˜, code fence ์ˆ˜, conversation markup ์ˆ˜๊ฐ€ ์›๋ฌธ๊ณผ ๋งž์•˜๊ณ , ์ŠคํŽ˜์ธ์–ด ํŒŒ์ผ ์•ˆ์— ํ•œ๊ธ€/์ค‘๋ฌธ/์ผ๋ฌธ residue๋„ ์žกํžˆ์ง€ ์•Š์•˜๋‹ค.

ํ•˜์ง€๋งŒ ํƒ€๋‹ฅ๋ฐ”์ด๋ธ” ๋น„์ „๊ณผ ์‹ ์•™ ์˜์‹ฌ์„ ๋‹ค๋ฃฌ ๊ธด ๋Œ€ํ™” ์•„์นด์ด๋ธŒ๋Š” ๋ฐ”๋กœ ๊นจ์กŒ๋‹ค.

์ฒซ ๋ฒˆ์งธ conversation-entry--user ์•ˆ์— ์‚ฌ์šฉ์ž์˜ ๊ธด ์งˆ๋ฌธ์ด ์•„๋‹ˆ๋ผ assistant ๋‹ต๋ณ€์ด ๋“ค์–ด๊ฐ€ ์žˆ์—ˆ๋‹ค. ์ค„ ์ˆ˜๊ฐ€ ๋น„์Šทํ•ด๋„ ๊ตฌ์กฐ๊ฐ€ ๋งž๋Š” ๋ฒˆ์—ญ์ด ์•„๋‹ˆ์—ˆ๋‹ค. ์ด๊ฑด ๊ฒ€์ˆ˜๋กœ ๋ช‡ ๋ฌธ์žฅ ๊ณ ์น  ๋ฌธ์ œ๊ฐ€ ์•„๋‹ˆ๋‹ค. ๋Œ€ํ™” ์•„์นด์ด๋ธŒ์—์„œ speaker ordering์ด ๊นจ์ง€๋ฉด ๊ธ€ ์ „์ฒด์˜ ์‹ ๋ขฐ๊ฐ€ ๋ฌด๋„ˆ์ง„๋‹ค.

๊ทธ๋ž˜์„œ ์ด ํŒŒ์ผ์€ ์žฌ๊ฒ€์ˆ˜๊ฐ€ ์•„๋‹ˆ๋ผ ์žฌ์ƒ์„ฑ์œผ๋กœ ๋Œ๋ ธ๋‹ค.

_es_posts/diary/ai/2026-06-05-philosophical-suicide-ai-reformation-tadak-bible.md

์š”๊ตฌ ์กฐ๊ฑด๋„ ๋” ์„ธ๊ฒŒ ๊ฑธ์—ˆ๋‹ค.

์ฒซ user section์€ ๋ฐ˜๋“œ์‹œ ์›๋ฌธ์˜ ์ฒ ํ•™์  ์ž์‚ด/๋„๋งˆ/๋ฏฟ์Œ ์งˆ๋ฌธ์œผ๋กœ ์‹œ์ž‘ํ•œ๋‹ค.
conversation-entry์˜ class ์ˆœ์„œ์™€ timestamp๋ฅผ ์›๋ฌธ๊ณผ ๋งž์ถ˜๋‹ค.
ํ•œ๊ธ€/์ผ๋ฌธ/์ค‘๋ฌธ ๋ฌธ์ž๋Š” ๋ณด์ด๋Š” ๋ณธ๋ฌธ์— ๋‚จ๊ธฐ์ง€ ์•Š๋Š”๋‹ค.
๊ธฐ์กด ๊นจ์ง„ ํŒŒ์ผ์€ ๋ถ€๋ถ„ ์ˆ˜์ •ํ•˜์ง€ ๋ง๊ณ  ์™„์ „ ๋Œ€์ฒดํ•œ๋‹ค.

์ด๋ฒˆ ์ž‘์—…์—์„œ ์ ์  ๋” ํ™•์‹คํ•ด์ง€๋Š” ๊ฑด ํ•˜๋‚˜๋‹ค.

๋‹ค๊ตญ์–ด pilot์€ โ€œ๋ฒˆ์—ญ ํŒŒ์ผ์ด ์ƒ๊ฒผ๋‹คโ€๊ฐ€ ์•„๋‹ˆ๋ผ โ€œ๊นจ์ง„ ๋ฒˆ์—ญ์„ ๊ฑธ๋Ÿฌ๋‚ผ ์ˆ˜ ์žˆ๋‹คโ€๊นŒ์ง€ ํฌํ•จํ•ด์•ผ ํ•œ๋‹ค.

์žฌ์ƒ์„ฑ ํ›„์—๋„ ๊ทธ๋Œ€๋กœ ๋๋‚ด์ง€ ์•Š์•˜๋‹ค. GPT-5.5 ๊ฐ์‚ฌ worker๋ฅผ ๋‹ค์‹œ ๋ถ™์˜€๋‹ค. ํ•˜๋‚˜๋Š” ์‹ ํ•™/์‹ ์•™/ํƒ€๋‹ฅ๋ฐ”์ด๋ธ” ์ œํ’ˆ ์ฒ ํ•™์„ ๋ดค๊ณ , ํ•˜๋‚˜๋Š” devlog์˜ ๊ธฐ์ˆ  ์˜๋ฏธ์™€ ๋งํฌ๋ฅผ ๋ดค๋‹ค.

๊ฐ์‚ฌ๋Š” ๋˜ ์‹ค์ œ ๋ฌธ์ œ๋ฅผ ์žก์•˜๋‹ค.

์ŠคํŽ˜์ธ์–ด ๊ธด ๋Œ€ํ™” ์•„์นด์ด๋ธŒ์—๋Š” ์˜๋ฏธ ๋ฐ˜์ „์ด ์—ฌ๋Ÿฌ ๊ฐœ ์žˆ์—ˆ๋‹ค.

์˜์  ๋ฐ์ดํ„ฐ๊ฐ€ ์œ ์ถœ๋˜๋ฉด ํ•ด๋ฐฉ ๋„๊ตฌ๊ฐ€ ์•„๋‹ˆ๋ผ ๊ฐ์‹œ ๋„๊ตฌ๊ฐ€ ๋œ๋‹ค.
๋‚˜๋Š” ์˜์‹ฌํ•˜๋Š” ์‚ฌ๋žŒ์œผ๋กœ ์ถฉ๋ถ„ํžˆ ํ™˜๋Œ€๋ฐ›์ง€ ๋ชปํ–ˆ๋‹ค.
์‚ฌ์šฉ์ž๋Š” ์˜ณ๊ณ  ๊ทธ๋ฆ„ ์ด์ „์— ํ…์ŠคํŠธ์™€ ํ•ด์„์„ ๊ตฌ๋ถ„ํ•˜๋Š” ๋ฒ•์„ ๋ฐฐ์›Œ์•ผ ํ•œ๋‹ค.
ํƒ€๋‹ฅ๋ฐ”์ด๋ธ”์€ ๋Œ€์ค‘์„ ๋‚ด๋ ค๋‹ค๋ณด๋Š” ๋„๊ตฌ๊ฐ€ ๋˜๋ฉด ์•ˆ ๋œ๋‹ค.
์ œํ’ˆ์€ ๋ฏฟ์Œ์˜ ์—ด๋งค๊ฐ€ ์•„๋‹ˆ๋ผ ์ƒ์ฒ˜์˜ ๋ณต์ˆ˜๋กœ ๋ณ€์งˆ๋  ์ˆ˜ ์žˆ๋‹ค.
๊ทธ ์ƒํƒœ๋Š” ๋ฏฟ์Œ์˜ ์‹คํŒจ๊ฐ€ ์•„๋‹ˆ๋‹ค.

์ด ๋ฌธ์žฅ๋“ค์€ ์ „๋ถ€ ๋ฐฉํ–ฅ์ด ์ค‘์š”ํ•˜๋‹ค. ํŠนํžˆ ํƒ€๋‹ฅ๋ฐ”์ด๋ธ”์˜ ์•ˆ์ „ ์ฒ ํ•™๊ณผ ๋‚ด ์‹ ์•™ ๊ณ ๋ฐฑ์˜ ๊ฒฐ์„ ๋ฐ˜๋Œ€๋กœ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๋ฌธ์žฅ๋“ค์ด์—ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๊ฐ์‚ฌ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜์˜ํ•ด ์ง์ ‘ ๊ณ ์ณค๋‹ค.

๊ทธ ๋‹ค์Œ translation_review.es๋ฅผ ๋„ฃ์—ˆ๋‹ค.

translation_review.es
  reviewed_at: 2026-06-07 18:36:47 +0900
  model_family: gpt-5.5
  paid_api: false

๊ทธ๋ฆฌ๊ณ  ๋‹ค์‹œ gate๋ฅผ ํ†ต๊ณผํ–ˆ๋‹ค.

i18n:pilot_status
  planned ready: 15/30
  planned pending: 15

i18n:promotion_check LOCALE=es
  warnings: 0
  errors: 0

i18n:verify
  warnings: 0
  errors: 0

์—ฌ๊ธฐ์„œ ๊ฒ€์ฆ๊ธฐ ์ž์ฒด์˜ ๋ฌธ์ œ๋„ ํ•˜๋‚˜ ์žก์•˜๋‹ค. TODO placeholder๋ฅผ ์ฐพ๋Š” ๊ทœ์น™์ด ์ŠคํŽ˜์ธ์–ด ๋‹จ์–ด todo๊นŒ์ง€ ์žก๊ณ  ์žˆ์—ˆ๋‹ค. prompt๋ผ๋Š” ์ •์ƒ ๊ธฐ์ˆ ์–ด๋„ residue๋กœ ์˜คํ•ด๋  ์ˆ˜ ์žˆ์—ˆ๋‹ค. ๊ทธ๋ž˜์„œ placeholder ๊ฒ€์‚ฌ๋Š” ๋Œ€๋ฌธ์ž TODO/TBD ํ† ํฐ๊ณผ ์‹ค์ œ ๋ฒˆ์—ญ ์ง€์‹œ๋ฌธ leakage๋งŒ ๋ณด๊ฒŒ ์ขํ˜”๋‹ค.

์ฆ‰ ์ŠคํŽ˜์ธ์–ด pilot์€ ๋‹จ์ˆœํžˆ ๋ฒˆ์—ญ 5๊ฐœ๋ฅผ ์ถ”๊ฐ€ํ•œ ๊ฒŒ ์•„๋‹ˆ๋ผ, speaker ordering ์˜ค๋ฅ˜, ์˜๋ฏธ ๋ฐ˜์ „, ๊ฒ€์ฆ๊ธฐ false positive๊นŒ์ง€ ํ•œ ๋ฒˆ์— ๊ฑธ๋Ÿฌ๋‚ธ ๋‹จ๊ณ„๊ฐ€ ๋๋‹ค.

๋‚จ์€ planned pilot์€ ์ด์ œ ์„ธ ์–ธ์–ด๋‹ค.

pt-BR
fr
id

๊ทธ ๋‹ค์Œ์—๋Š” ํฌ๋ฅดํˆฌ๊ฐˆ์–ด ๋ธŒ๋ผ์งˆํŒ์„ ์ง„ํ–‰ํ–ˆ๋‹ค.

pt-BR์€ ํŒŒ์ผ ์‹œ์Šคํ…œ์—์„œ๋Š” _pt_br_posts๋ฅผ ์“ฐ๊ณ , ์‹ค์ œ URL๊ณผ locale tag์—์„œ๋Š” /pt-BR/๋ฅผ ์œ ์ง€ํ–ˆ๋‹ค. ์ด ์ฐจ์ด๋ฅผ ํ—ท๊ฐˆ๋ฆฌ๋ฉด collection ์ด๋ฆ„๊ณผ ๊ณต๊ฐœ URL์ด ์„œ๋กœ ์–ด๊ธ‹๋‚œ๋‹ค.

5๊ฐœ ํŒŒ์ผ์€ GPT-5.5 worker๋“ค์—๊ฒŒ ๋‚˜๋ˆ  ๋งก๊ฒผ๊ณ , ๋‹ค์‹œ ์‹ ํ•™/๊ธฐ์ˆ  ๊ฐ์‚ฌ worker๋ฅผ ๋ถ™์˜€๋‹ค. ์ด๋ฒˆ์—๋Š” ์ŠคํŽ˜์ธ์–ด์ฒ˜๋Ÿผ ํฐ ์˜๋ฏธ ๋ฐ˜์ „์€ ๋‚˜์˜ค์ง€ ์•Š์•˜๋‹ค. ๊ทธ๋ž˜๋„ ๊ฐ์‚ฌ๊ฐ€ ๋ช‡ ๊ฐ€์ง€๋ฅผ ์žก์•˜๋‹ค.

์ง€์˜ฅ์ด ๋‘๋ ค์›Œ ๋ฏฟ๋Š” ์ฒ™ํ•œ๋‹ค๋Š” ๋ฌธ์žฅ์ด "๋‚ด๊ฐ€ ์–ด๋–ป๊ฒŒ ์ง€์˜ฅ์— ๊ฐˆ ์ˆ˜ ์žˆ๊ฒ ๋ƒ"์ฒ˜๋Ÿผ ์ฝํžˆ๋Š” ๋ฌธ์ œ
์•ผ๊ณฑ์ด ๋นผ์•—์€ ์žฅ์ž๊ถŒ์˜ ์ฃผ์ฒด๊ฐ€ ์•ฝ๊ฐ„ ํ๋ ค์ง€๋Š” ๋ฌธ์ œ
"lรขmpada morna"๊ฐ€ ๋”ฐ๋œปํ•œ ๋น›์ด ์•„๋‹ˆ๋ผ ๋ฏธ์ง€๊ทผํ•˜๊ณ  ์•ฝํ•œ ๋А๋‚Œ์œผ๋กœ ์ฝํžˆ๋Š” ๋ฌธ์ œ
devlog ์•ˆ์˜ extra summary line์ด ์›๋ฌธ์— ์—†๋Š” ๋ฌธ์ œ

ํฐ ์˜ค๋ฅ˜๋Š” ์•„๋‹ˆ์—ˆ์ง€๋งŒ, ์ด๋Ÿฐ ๊ฒƒ๋“ค์ด ์Œ“์ด๋ฉด ๋ฒˆ์—ญ๋ฌธ์ด ์›๋ฌธ๋ณด๋‹ค ํ๋ ค์ง„๋‹ค. ๊ทธ๋ž˜์„œ ๋ชจ๋‘ ๋ฐ˜์˜ํ–ˆ๋‹ค.

pt-BR๋„ ๋ฆฌ๋ทฐ ๋ฉ”ํƒ€๋ฅผ ๋„ฃ์—ˆ๋‹ค.

translation_review.pt-BR
  reviewed_at: 2026-06-07 18:54:29 +0900
  model_family: gpt-5.5
  paid_api: false

๊ทธ๋ฆฌ๊ณ  ๋‹ค์‹œ ํ†ต๊ณผํ–ˆ๋‹ค.

i18n:pilot_status
  planned ready: 20/30
  planned pending: 10

i18n:promotion_check LOCALE=pt-BR
  warnings: 0
  errors: 0

i18n:verify
  warnings: 0
  errors: 0

์ด์ œ ๋‚จ์€ planned pilot์€ ๋‘ ์–ธ์–ด๋‹ค.

fr
id

ํ”„๋ž‘์Šค์–ด๋Š” ๊ฐ€์žฅ ๊ฑฐ์น ์—ˆ๋‹ค.

๊ตฌ์กฐ ๊ฒ€์‚ฌ๋Š” ์ฒ˜์Œ๋ถ€ํ„ฐ ํ†ต๊ณผํ–ˆ๋‹ค. heading ์ˆ˜, conversation-entry ์ˆœ์„œ, code fence ์ˆ˜, post_url ๋งํฌ๋Š” ๋ชจ๋‘ ๋งž์•˜๋‹ค. ํ•˜์ง€๋งŒ ๊ตฌ์กฐ๊ฐ€ ๋งž๋Š” ๊ฒƒ๊ณผ ๊ณต๊ฐœ ๊ฐ€๋Šฅํ•œ ํ”„๋ž‘์Šค์–ด์ธ ๊ฒƒ์€ ๋‹ค๋ฅด๋‹ค.

ํ”„๋ž‘์Šค์–ด ๊ธด ๋Œ€ํ™” ์•„์นด์ด๋ธŒ์—๋Š” ์ด๋Ÿฐ ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๋‹ค.

45๊ฐœ ์กฐํ•ญ์œผ๋กœ ์ž˜๋ชป ๋ฒˆ์—ญ๋œ ๋ฃจํ„ฐ์˜ 95๊ฐœ์กฐ
"๊ฐ€๋ณ๊ฒŒ ๋ณผ ์ˆ˜ ์—†๋‹ค"๊ฐ€ "์ง„์ง€ํ•˜๊ฒŒ ๋ณผ ์ˆ˜ ์—†๋‹ค"๋กœ ๋’ค์ง‘ํžŒ ๋ฌธ์žฅ
์„ค๊ต๋ฅผ ์ •์ฃ„ํ•˜๋Š” ๋„๊ตฌ๊ฐ€ ์•„๋‹ˆ๋ผ ์ž๊ธฐ ์ ๊ฒ€ ๋„๊ตฌ๋ผ๋Š” ํ•ต์‹ฌ ์ฒ ํ•™์˜ ๋ฐ˜์ „
gaslighting prevention์ด anti-waste๋กœ ๋ฐ”๋€ ์•ˆ์ „ ๊ฐœ๋… ์˜ค๋ฅ˜
violence๊ฐ€ viol๋กœ ๋ฐ”๋€ ์‹ฌ๊ฐํ•œ ์˜ค์—ญ
๋ณธ๋ฌธ ์ค‘๊ฐ„์— ๋…ธ์ถœ๋œ GPT-5.5 ๋ผ๋ฒจ๊ณผ translator note
answer, being, Not ๊ฐ™์€ ์˜์–ด ์ฐŒ๊บผ๊ธฐ

์ด๊ฑด ๋‹จ์ˆœํžˆ ์ž์—ฐ์Šค๋Ÿฝ์ง€ ์•Š์€ ์ •๋„๊ฐ€ ์•„๋‹ˆ์—ˆ๋‹ค. ์‹ ํ•™์  ์˜๋ฏธ์™€ ์ œํ’ˆ ์ฒ ํ•™์„ ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ๋Š” ์˜ค๋ฅ˜์˜€๋‹ค. ๊ทธ๋ž˜์„œ ํ”„๋ž‘์Šค์–ด๋Š” ์ดˆ๋ฒŒ ์ƒ์„ฑ ๋’ค ๋ฐ”๋กœ ready๋กœ ์˜ฌ๋ฆฌ์ง€ ์•Š๊ณ , ์‹ ํ•™/์ œํ’ˆ ์ฒ ํ•™ ๊ฐ์‚ฌ์™€ ์žฌ๊ฐ์‚ฌ๋ฅผ ๊ฑฐ์ณค๋‹ค.

์ˆ˜์ • ํ›„ fr๋„ ๋ฆฌ๋ทฐ ๋ฉ”ํƒ€๋ฅผ ๋„ฃ์—ˆ๋‹ค.

translation_review.fr
  reviewed_at: 2026-06-07 19:39:08 +0900
  model_family: gpt-5.5
  paid_api: false

๊ทธ๋ฆฌ๊ณ  ๋‹ค์‹œ ํ†ต๊ณผํ–ˆ๋‹ค.

i18n:pilot_status
  planned ready: 25/30
  planned pending: 5

i18n:promotion_check LOCALE=fr
  warnings: 0
  errors: 0

i18n:verify
  warnings: 0
  errors: 0

์ด์ œ ๋‚จ์€ planned pilot์€ ์ธ๋„๋„ค์‹œ์•„์–ด ํ•˜๋‚˜์˜€๋‹ค.

id

์ธ๋„๋„ค์‹œ์•„์–ด๋„ GPT-5.5 worker๋“ค์—๊ฒŒ 5๊ฐœ ํŒŒ์ผ์„ ๋‚˜๋ˆ  ๋งก๊ฒผ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ด๋ฒˆ์—๋„ ๋ฐ”๋กœ ready๋กœ ์˜ฌ๋ฆฌ์ง€ ์•Š์•˜๋‹ค.

๊ตฌ์กฐ ๊ฒ€์‚ฌ๋Š” ๋จผ์ € ํ†ต๊ณผํ–ˆ๋‹ค.

heading ์ˆ˜
section ์ˆ˜
conversation-entry ์ˆœ์„œ
code fence ์ˆ˜
post_url ๋งํฌ
class order
ํ•œ๊ตญ์–ด/CJK residue
prompt leakage

๊ฒ‰์œผ๋กœ ๋ณด๋ฉด ๊ดœ์ฐฎ์•˜๋‹ค. ํ•˜์ง€๋งŒ ์‹ ํ•™ ๊ฐ์‚ฌ worker๊ฐ€ ๊ธด ํƒ€๋‹ฅ๋ฐ”์ด๋ธ” ๋Œ€ํ™” ์•„์นด์ด๋ธŒ์—์„œ ๋” ๊นŠ์€ ๋ฌธ์ œ๋ฅผ ์žก์•˜๋‹ค.

๊ฐ€์žฅ ํฐ ๋ฌธ์ œ๋Š” ์„น์…˜ ๋ˆ„๋ฝ๊ณผ ์ค‘๋ณต์ด์—ˆ๋‹ค.

์›๋ฌธ์—๋Š” AI๊ฐ€ ์„ฑ๊ฒฝ ์ฝ๊ธฐ ๋Šฅ๋ ฅ์„ ๋„์šธ ์ˆ˜ ์žˆ์ง€๋งŒ ๋™์‹œ์— ํ•ด์„ ๊ทผ์œก์„ ์•ฝํ™”์‹œํ‚ฌ ์ˆ˜ ์žˆ๋‹ค๋Š” 14๋ฒˆ ์„น์…˜, ๊ทธ๋ฆฌ๊ณ  ์ œํ’ˆ์ด ํ•˜๋‚˜๋‹˜์˜ ์นจ๋ฌต์„ ๋ณด์ƒํ•˜๋ ค๋Š” ์žฅ์น˜๊ฐ€ ๋  ์ˆ˜ ์žˆ๋‹ค๋Š” 15๋ฒˆ ์„น์…˜์ด ์žˆ์—ˆ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ์ธ๋„๋„ค์‹œ์•„์–ด ์ดˆ๋ฒŒ์—๋Š” ์ด ์ถ•์ด ๋น ์ง€๊ณ , ๋’ค์ชฝ ์„น์…˜ ์ผ๋ถ€๊ฐ€ ์ค‘๋ณต๋˜์–ด ์žˆ์—ˆ๋‹ค.

๊ตฌ์กฐ ์นด์šดํŠธ๋งŒ์œผ๋กœ๋Š” ์ด๋Ÿฐ ๋ฌธ์ œ๋ฅผ ๋†“์น  ์ˆ˜ ์žˆ๋‹ค. ์ œ๋ชฉ ๊ฐœ์ˆ˜์™€ ์นด๋“œ ๊ฐœ์ˆ˜๊ฐ€ ๋งž์•„๋„, ๋ณธ๋ฌธ ๋‚ด๋ถ€์˜ ๋…ผ๋ฆฌ ์ถ•์ด ๋ฐ”๋€Œ๋ฉด ๋ฒˆ์—ญ์€ ์‹คํŒจ๋‹ค.

๊ทธ๋ž˜์„œ ํ•ด๋‹น ๊ตฌ๊ฐ„์„ ์›๋ฌธ๊ณผ ๋‹ค์‹œ ๋Œ€์กฐํ•ด ๋ณต๊ตฌํ–ˆ๋‹ค.

๊ทธ ์™ธ์—๋„ ์‹ ํ•™์ ์œผ๋กœ ์œ„ํ—˜ํ•œ ์˜ค์—ญ์ด ์žˆ์—ˆ๋‹ค.

์‹ญ์ž๊ฐ€ ๊ฐ€์šด๋ฐ ๊ณ„์‹  ํ•˜๋‚˜๋‹˜์ด ๋น ์ง„ ๋ฌธ์žฅ
๋ถ€ํ™œ์ด ์ฃฝ์Œ์œผ๋กœ ๋ฐ”๋€ ๋ฌธ์žฅ
"๋‚ด ๋ถˆ์‹ ์„ ๋„์™€์ฃผ์†Œ์„œ"๊ฐ€ ์—‰๋šฑํ•œ ์˜๋ฏธ๊ฐ€ ๋œ ๋ฌธ์žฅ
์–‘์‹ฌ์ด ๊ฒฐ๊ณผ๋‚˜ ์˜์‹์œผ๋กœ ํ๋ ค์ง„ ๋ฌธ์žฅ
์˜์›ํ•œ ํ˜•๋ฒŒ์ด ์˜์›ํ•œ ๊ตด์š•์œผ๋กœ ๋ฐ”๋€ ๋ฌธ์žฅ
AI๊ฐ€ ์˜์  ๊ถŒ์œ„๋ฅผ ํ‰๋‚ด ๋‚ด๋Š” ์ˆœ๊ฐ„ ๊นจ์ง„๋‹ค๋Š” ์›์น™์˜ ๋ฐ˜์ „
์ถœ์ฒ˜ ์—†๋Š” ์‹ ํ•™ ์ง€์‹์€ ๋ณด๋ฅ˜ํ•˜๋ผ๋Š” ์•ˆ์ „ ๊ทœ์น™์˜ ๋ฐ˜์ „
๋Œ€์ค‘์„ ๊ฒฝ๋ฉธํ•˜์ง€ ๋ง๋ผ๋Š” ๋ฌธ์žฅ์˜ ์ •๋ฐ˜๋Œ€ ๋ฒˆ์—ญ
์ตœ์ข… ๊ฒฐ๋ก ์˜ ์ ˆ์ œ๊ฐ€ ๋ฒ„ํŒ€์œผ๋กœ ๋ฐ”๋€ ๋ฌธ์žฅ

์ด๊ฑด ์ธ๋„๋„ค์‹œ์•„์–ด๊ฐ€ ์–ด๋ ค์›Œ์„œ๋ผ๊ธฐ๋ณด๋‹ค, ๊ธด ์‹ ํ•™/์ œํ’ˆ ์ฒ ํ•™ ๊ธ€์„ ํ•œ ๋ฒˆ์— ๋ฒˆ์—ญํ•  ๋•Œ ์ƒ๊ธฐ๋Š” ์œ„ํ—˜์ด๋‹ค. ํŠนํžˆ ํƒ€๋‹ฅ๋ฐ”์ด๋ธ” ๊ธ€์€ ๋ฌธ์žฅ์ด ์˜ˆ์œ์ง€๋งŒ ๋ณด๋ฉด ์•ˆ ๋œ๋‹ค. ์งˆ๋ฌธ, ์–‘์‹ฌ, ์ ˆ์ œ, ํ•ด๋ฐฉ, ์•ˆ์ „, ๊ถŒ์œ„ ๊ฐ™์€ ๋‹จ์–ด๊ฐ€ ๋ฐฉํ–ฅ์„ ๋ฐ”๊พธ๋ฉด ์ œํ’ˆ ์ฒ ํ•™ ์ž์ฒด๊ฐ€ ๋ฐ”๋€๋‹ค.

์ˆ˜์ • ํ›„ ์‹ ํ•™ ๊ฐ์‚ฌ worker์—๊ฒŒ spot re-audit์„ ๋‹ค์‹œ ๋ณด๋ƒˆ๋‹ค. ์ด์ „ high/critical ์ง€์  10๊ฐœ๊ฐ€ ๋ชจ๋‘ ํ•ด๊ฒฐ๋๊ณ , ์ถ”๊ฐ€ ๊ณต๊ฐœ ๋ถˆ๊ฐ€ ์ˆ˜์ค€์˜ ์˜๋ฏธ ์—ญ์ „์ด๋‚˜ ์„น์…˜ ๋ˆ„๋ฝ์€ ์—†๋‹ค๋Š” ํ™•์ธ์„ ๋ฐ›์•˜๋‹ค. devlog ๊ธฐ์ˆ  ๊ฐ์‚ฌ worker๋„ category label, Jekyll include, Korean Revised Version, Daily Review template ํ‘œํ˜„์ด ๋ชจ๋‘ ํ•ด๊ฒฐ๋๋‹ค๊ณ  ํ™•์ธํ–ˆ๋‹ค.

๊ทธ ๋‹ค์Œ id ๋ฆฌ๋ทฐ ๋ฉ”ํƒ€๋ฅผ ๋„ฃ์—ˆ๋‹ค.

translation_review.id
  reviewed_at: 2026-06-07 20:32:16 +0900
  model_family: gpt-5.5
  paid_api: false

๊ทธ๋ฆฌ๊ณ  ๋‹ค์‹œ gate๋ฅผ ํ†ต๊ณผํ–ˆ๋‹ค.

i18n:promotion_check LOCALE=id
  warnings: 0
  errors: 0

i18n:pilot_status
  active ready: 10/10
  planned ready: 30/30
  planned pending: 0

i18n:verify
  warnings: 0
  errors: 0

์—ฌ๊ธฐ๊นŒ์ง€ ์™€์„œ์•ผ 8๊ฐœ ์–ธ์–ด pilot์„ ready๋ผ๊ณ  ๋ถ€๋ฅผ ์ˆ˜ ์žˆ์—ˆ๋‹ค.

ko        ready
en        ready
ja        ready
zh-Hans   ready
es        ready
pt-BR     ready
fr        ready
id        ready

๊ทธ ๋‹ค์Œ์—๋Š” ja, zh-Hans, es, pt-BR, fr, id๋ฅผ ์‹ค์ œ active๋กœ ์˜ฌ๋ ธ๋‹ค.

์—ฌ๊ธฐ์„œ๋„ ๊ทธ๋ƒฅ active ๋ชฉ๋ก๋งŒ ๋ฐ”๊พธ๋ฉด ์•ˆ ๋๋‹ค.

๋จผ์ € registry์™€ collection output์„ ๊ฐ™์ด ๋ฐ”๊ฟจ๋‹ค.

_data/locales.yml
  active: ko, en, ja, zh-Hans, es, pt-BR, fr, id
  planned: []

_config.yml
  ja_posts, zh_hans_posts, es_posts, pt_br_posts, fr_posts, id_posts
  output: true

๊ทธ ๋‹ค์Œ planned scaffold์— ๋‚จ์•„ ์žˆ๋˜ published: false, sitemap: false, i18n_status: planned-scaffold๋ฅผ ์ œ๊ฑฐํ–ˆ๋‹ค. ์ด์ œ /ja/, /zh-Hans/, /es/, /pt-BR/, /fr/, /id/๊ฐ€ ์‹ค์ œ ์ถœ๋ ฅ๋œ๋‹ค.

About ํŽ˜์ด์ง€๋„ ๋ฌธ์ œ์˜€๋‹ค.

ํ™ˆ๊ณผ ์นดํ…Œ๊ณ ๋ฆฌ๋งŒ ์—ด๋ ค๋„ ์†Œ๊ฐœ ํŽ˜์ด์ง€๊ฐ€ placeholder๋ฉด ์‹ค์ œ ์šด์˜์ด๋ผ๊ณ  ๋งํ•˜๊ธฐ ์–ด๋ ต๋‹ค. ๊ทธ๋ž˜์„œ 6๊ฐœ About ํŽ˜์ด์ง€๋ฅผ GPT-5.5 worker๋“ค์—๊ฒŒ ํŒŒ์ผ๋ณ„๋กœ ๋งก๊ฒผ๋‹ค. ์ผ๋ณธ์–ด, ์ค‘๊ตญ์–ด ๊ฐ„์ฒด, ์ŠคํŽ˜์ธ์–ด, ๋ธŒ๋ผ์งˆ ํฌ๋ฅดํˆฌ๊ฐˆ์–ด, ํ”„๋ž‘์Šค์–ด, ์ธ๋„๋„ค์‹œ์•„์–ด ์†Œ๊ฐœ ํŽ˜์ด์ง€๊ฐ€ ๋ชจ๋‘ ์˜์–ด About ๊ตฌ์กฐ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ฒˆ์—ญ๋๋‹ค. ์ด๋ฏธ์ง€, GitHub ๊ทธ๋ž˜ํ”„, iframe, ๋งํฌ ๊ตฌ์กฐ๋Š” ์œ ์ง€ํ–ˆ๊ณ , placeholder์™€ prompt leakage๋Š” ์ œ๊ฑฐํ–ˆ๋‹ค.

RSS๋„ ์–ธ์–ด๋ณ„๋กœ ์ถ”๊ฐ€ํ–ˆ๋‹ค.

/feed.xml
/en/feed.xml
/ja/feed.xml
/zh-Hans/feed.xml
/es/feed.xml
/pt-BR/feed.xml
/fr/feed.xml
/id/feed.xml

๊ทธ๋ฆฌ๊ณ  ๋‹ค์‹œ build์™€ verifier๋ฅผ ๋Œ๋ ธ๋‹ค.

bundle exec jekyll build
bundle exec rake i18n:verify

warnings: 0
errors: 0

์—ฌ๊ธฐ์„œ ์ค‘๊ตญ์–ด ๊ฐ„์ฒด UI residue๋„ ํ•˜๋‚˜ ์žก์•˜๋‹ค. URL๊ณผ hreflang์€ zh-Hans๊ฐ€ ๋งž์ง€๋งŒ, UI text์™€ giscus ์ชฝ ์–ธ์–ด ์ฝ”๋“œ๋Š” zh-CN์ด์–ด์•ผ ํ–ˆ๋‹ค. ์ฒ˜์Œ์—๋Š” ์ค‘๊ตญ์–ด ํŽ˜์ด์ง€ ์•ˆ์— ์นดํ…Œ๊ณ ๋ฆฌ, ์ตœ๊ทผ ์ˆ˜์ •์ผ ๊ฐ™์€ ํ•œ๊ตญ์–ด UI๊ฐ€ ๋‚จ์•˜๋‹ค. ๊ทธ๋ž˜์„œ registry๋ฅผ ๋ถ„๋ฆฌํ–ˆ๋‹ค.

lang: zh-Hans
hreflang: zh-Hans
locale/ui_locale/giscus_lang: zh-CN

์ดํ›„ ์ค‘๊ตญ์–ด pilot 5๊ฐœ ๋ Œ๋”๋ง์—์„œ ํ•œ๊ตญ์–ด UI residue๊ฐ€ ์‚ฌ๋ผ์กŒ๋‹ค.

๋ธŒ๋ผ์šฐ์ €์—์„œ๋„ ํ™•์ธํ–ˆ๋‹ค.

/, /en/, /ja/, /zh-Hans/, /es/, /pt-BR/, /fr/, /id/

8๊ฐœ ํ™ˆ์ด ๋ชจ๋‘ ์—ด๋ ธ๊ณ , ๊ฐ ์–ธ์–ด์˜ About ๋ฒ„ํŠผ๊ณผ Atom feed link๊ฐ€ ํ•ด๋‹น ์–ธ์–ด๋กœ ๋‚˜์™”๋‹ค. ์–ธ์–ด ๋ฉ”๋‰ด์—๋Š” ๊ตญ๊ธฐ ํฌํ•จ 8๊ฐœ ์˜ต์…˜์ด ๋ชจ๋‘ ๋ณด์˜€๋‹ค.

๐Ÿ‡ฐ๐Ÿ‡ท ํ•œ๊ตญ์–ด
๐Ÿ‡บ๐Ÿ‡ธ English
๐Ÿ‡ฏ๐Ÿ‡ต ๆ—ฅๆœฌ่ชž
๐Ÿ‡จ๐Ÿ‡ณ ็ฎ€ไฝ“ไธญๆ–‡
๐Ÿ‡ช๐Ÿ‡ธ Espaรฑol
๐Ÿ‡ง๐Ÿ‡ท Portuguรชs
๐Ÿ‡ซ๐Ÿ‡ท Franรงais
๐Ÿ‡ฎ๐Ÿ‡ฉ Bahasa Indonesia

์ผ๋ณธ์–ด์™€ ์ค‘๊ตญ์–ด pilot ๊ธ€์—์„œ๋Š” ์กฐํšŒ์ˆ˜ tracking path๋„ ํ™•์ธํ–ˆ๋‹ค.

/ja/devlog/github-pages-blog/github-pages-blog-visitor-counter/
/zh-Hans/devlog/github-pages-blog/github-pages-blog-visitor-counter/

data-page-view-path="/devlog/github-pages-blog/github-pages-blog-visitor-counter/"

์ฆ‰ ์–ธ์–ด๋ณ„ URL๋กœ ๋“ค์–ด์™€๋„ ์กฐํšŒ์ˆ˜๋Š” ํ•œ๊ตญ์–ด canonical ๊ธ€๊ณผ ๊ณต์œ ๋œ๋‹ค. today dedupe๋„ ๊ฐ™์€ canonical path ๊ธฐ์ค€์œผ๋กœ ์ž‘๋™ํ•œ๋‹ค.

๋ชจ๋ฐ”์ผ์—์„œ๋„ ํ”„๋ž‘์Šค์–ด ํ™ˆ ๊ธฐ์ค€์œผ๋กœ ์–ธ์–ด ๋“œ๋กญ๋‹ค์šด๊ณผ ํ–„๋ฒ„๊ฑฐ ๋ฉ”๋‰ด๋ฅผ ๋ˆŒ๋Ÿฌ๋ดค๋‹ค. ์–ธ์–ด ๋“œ๋กญ๋‹ค์šด 8๊ฐœ ์˜ต์…˜์ด visible์ด๊ณ , ๋ชจ๋ฐ”์ผ quick link์—๋„ 8๊ฐœ ์–ธ์–ด๊ฐ€ ๋ชจ๋‘ visible์ด์—ˆ๋‹ค.

๋‹ค๋งŒ ์ด ์„ธ์…˜ ํฌ์ŠคํŠธ ์ž์ฒด๋Š” ์•„์ง ์›๋ฌธ์ด ๊ณ„์† ์—…๋ฐ์ดํŠธ ์ค‘์ด๋‹ค. ๊ทธ๋ž˜์„œ active 7๊ฐœ ๋น„ํ•œ๊ตญ์–ด ๋ฒˆ์—ญ์„ ๋ฐ”๋กœ ๋งŒ๋“ค์ง€ ์•Š์•˜๋‹ค. _project/i18n/pending-translations.yml์— en, ja, zh-Hans, es, pt-BR, fr, id ๋ชจ๋‘ source_state: unconfirmed๋กœ ๊ธฐ๋กํ–ˆ๋‹ค. bundle exec rake i18n:post_sync๋Š” warning 7๊ฐœ์™€ error 0๊ฐœ๋ฅผ ๋‚ธ๋‹ค. ์›๋ฌธ ํ™•์ • ์ „์—๋Š” ๋ฒˆ์—ญ์„ ๋งŒ๋“ค์ง€ ์•Š๋Š”๋‹ค๋Š” ๊ทœ์น™์ด ์‹ค์ œ gate๋กœ ์œ ์ง€๋œ ์…ˆ์ด๋‹ค.

์—ฌ๊ธฐ์„œ repo ๊ทœ์น™๋„ ๋‹ค์‹œ ๊ณ ์ณค๋‹ค. ์ฒ˜์Œ์—๋Š” โ€œ์˜์–ดํŒ๋„ ๊ฐ™์ด ๋งŒ๋“ ๋‹คโ€๋Š” ํ‘œํ˜„์ด ๋‚จ์•„ ์žˆ์—ˆ๋Š”๋ฐ, ์ด์ œ๋Š” ๊ทธ ํ‘œํ˜„๋„ ๋ถ€์กฑํ•˜๋‹ค. ํ˜„์žฌ active locale์€ ์˜์–ด ํ•˜๋‚˜๊ฐ€ ์•„๋‹ˆ๋ผ en, ja, zh-Hans, es, pt-BR, fr, id ์ „์ฒด๋‹ค. ๊ทธ๋ž˜์„œ commit, push, publish ์‹œ์—๋Š” active ๋น„ํ•œ๊ตญ์–ด ์ „์ฒด๋ฅผ ๋™๊ธฐํ™”ํ•˜๊ณ , ๋„“์€ ๋ฒˆ์—ญ/๊ฒ€์ˆ˜ batch์—์„œ๋Š” ์ตœ์‹  GPT-series worker/subagent๋ฅผ ์“ฐ๋ฉฐ, ์›๋ฌธ ํ™•์ • ์ „์—๋Š” pending์œผ๋กœ ๋‚จ๊ธฐ๋Š” ๊ทœ์น™์œผ๋กœ ๋ฐ”๊ฟจ๋‹ค.

๋งˆ์ง€๋ง‰์œผ๋กœ coverage๋„ ๋”ฐ๋กœ ๋ดค๋‹ค.

์ฒ˜์Œ์—๋Š” i18n:verify์™€ i18n:pilot_status๊ฐ€ ํ†ต๊ณผํ•˜๋‹ˆ ๋‹ค ๋๋‚œ ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ผ ์ˆ˜ ์žˆ์—ˆ๋‹ค. ํ•˜์ง€๋งŒ ๊ทธ ๋‘˜์€ active locale ์‹œ์Šคํ…œ๊ณผ pilot corpus๋ฅผ ๋ณด๋Š” gate๋‹ค. ๊ธฐ์กด ํ•œ๊ตญ์–ด ๊ธ€ 312๊ฐœ ์ „์ฒด๊ฐ€ 7๊ฐœ ์–ธ์–ด๋กœ ๋ชจ๋‘ ๋ฒˆ์—ญ๋๋Š”์ง€๋Š” ๋‹ค๋ฅธ ์งˆ๋ฌธ์ด๋‹ค.

๊ทธ๋ž˜์„œ i18n:post_coverage๋ฅผ ์ถ”๊ฐ€ํ–ˆ๋‹ค.

bundle exec rake i18n:post_coverage

์ด ๋ช…๋ น์€ ์ „์ฒด _posts์™€ active ๋น„ํ•œ๊ตญ์–ด target์„ ๋ชจ๋‘ ํ›‘์–ด ์–ธ์–ด๋ณ„ coverage๋ฅผ ๋ณด์—ฌ์ค€๋‹ค. ํ˜„์žฌ ์ƒํƒœ๋Š” ์ •์งํ•˜๊ฒŒ ์ด๋ ‡๋‹ค.

en       ready 311/312, pending 1
ja       ready 8/312, pending 1, missing 303
zh-Hans  ready 8/312, pending 1, missing 303
es       ready 8/312, pending 1, missing 303
pt-BR    ready 8/312, pending 1, missing 303
fr       ready 8/312, pending 1, missing 303
id       ready 8/312, pending 1, missing 303

์—ฌ๊ธฐ์„œ ์˜์–ด์˜ pending 1๊ฐœ๋Š” ์ด ์„ธ์…˜ ํฌ์ŠคํŠธ๋‹ค. ์›๋ฌธ์ด ์•„์ง ํ™•์ •๋˜์ง€ ์•Š์•˜์œผ๋‹ˆ ์ผ๋ถ€๋Ÿฌ ๋ฒˆ์—ญํ•˜์ง€ ์•Š์•˜๋‹ค. ๋‚˜๋จธ์ง€ 6๊ฐœ ์–ธ์–ด์˜ missing 303๊ฐœ๋Š” ์ˆจ๊ธธ ๊ฒŒ ์•„๋‹ˆ๋ผ backlog๋‹ค. ์ฆ‰ ํ˜„์žฌ ์„ฑ๊ณผ๋Š” โ€œ8๊ฐœ ์–ธ์–ด์˜ ์šด์˜ ๊ตฌ์กฐ์™€ pilot corpus๋ฅผ active๋กœ ๊ฒ€์ฆํ–ˆ๋‹คโ€์ด์ง€, โ€œ๊ธฐ์กด ์ „์ฒด ์•„์นด์ด๋ธŒ๋ฅผ 8๊ฐœ ์–ธ์–ด๋กœ ์™„์—ญํ–ˆ๋‹คโ€๊ฐ€ ์•„๋‹ˆ๋‹ค.

์ด coverage๋ฅผ ๋ณธ ๋’ค์—๋Š” Daily Review ์ดˆ๋ฐ˜ 3๊ฐœ๋ฅผ ์ฒซ backlog ๊ฐ์†Œ batch๋กœ ์žก์•˜๋‹ค.

2024-12-14  GitHub Pages ๋ธ”๋กœ๊ทธ ์‹œ์ž‘
2024-12-15  ์š”์ฆ˜ ๊นจ๋‹ฌ์€ ๊ฒƒ๋“ค
2024-12-16  ๊ฐœ๋ฐœ ํŒจ๋Ÿฌ๋‹ค์ž„์˜ ์ „ํ™˜

์˜์–ดํŒ์€ ์ด๋ฏธ ์žˆ์—ˆ๊ธฐ ๋•Œ๋ฌธ์—, ํ•œ๊ตญ์–ด ์›๋ฌธ์„ source of truth๋กœ ๋‘๊ณ  ์˜์–ดํŒ์„ ๋ณด์กฐ ์ฐธ์กฐ๋กœ ์‚ผ์•˜๋‹ค. ์ผ๋ณธ์–ด, ์ค‘๊ตญ์–ด ๊ฐ„์ฒด, ์ŠคํŽ˜์ธ์–ด, ๋ธŒ๋ผ์งˆ ํฌ๋ฅดํˆฌ๊ฐˆ์–ด, ํ”„๋ž‘์Šค์–ด, ์ธ๋„๋„ค์‹œ์•„์–ด๋Š” GPT-5.5 worker 6๊ฐœ์— ์–ธ์–ด๋ณ„๋กœ ๋‚˜๋ˆ  ๋งก๊ฒผ๋‹ค. ๊ฐ worker๋Š” ์ž๊ธฐ locale collection์˜ 3๊ฐœ ํŒŒ์ผ๋งŒ ์†Œ์œ ํ•˜๊ฒŒ ํ–ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ์—ฌ๊ธฐ์„œ๋„ ๋ฐ”๋กœ ๋๋‚ด์ง€ ์•Š์•˜๋‹ค. ๋ณ„๋„ GPT-5.5 reviewer์—๊ฒŒ 18๊ฐœ ์‹ ๊ทœ ๋ฒˆ์—ญ ํŒŒ์ผ์„ ๋‹ค์‹œ ๋ณด๊ฒŒ ํ–ˆ๋‹ค.

front matter parity
date / last_modified_at
categories / lang / locale / permalink
image order
section structure
Hangul residue
prompt leakage
obvious meaning reversal
public-quality phrasing

reviewer๋Š” ์ŠคํŽ˜์ธ์–ด, ํฌ๋ฅดํˆฌ๊ฐˆ์–ด, ํ”„๋ž‘์Šค์–ด, ์ธ๋„๋„ค์‹œ์•„์–ด์˜ ์ผ๋ถ€ ๋ฌธ์žฅ์„ ์ž‘๊ฒŒ ๋‹ค๋“ฌ์—ˆ๋‹ค. ์ดํ›„ batch ์ „์šฉ post sync๋ฅผ ๋Œ๋ ธ๋‹ค.

SOURCE_PATHS="..." bundle exec rake i18n:post_sync

๊ฒฐ๊ณผ๋Š” 3๊ฐœ ์›๋ฌธ ร— 7๊ฐœ target ์ „์ฒด ready์˜€๋‹ค.

checked: 21
ready: 21
warnings: 0
errors: 0

๊ทธ ๋‹ค์Œ์—๋Š” Daily Review 2์ฐจ batch๋ฅผ ๋ฐ”๋กœ ์ด์–ด์„œ ์ค„์˜€๋‹ค.

2024-12-17  ๋Œ€์ˆ˜์ˆ 
2024-12-18  ๋ฐ”์ด๋ธŒ ์ฝ”๋”ฉ, ๋„ˆ๋ฌด ๋Œ€์ถฉ ํ–ˆ๊ตฌ๋‚˜
2024-12-19  ๊ฐœ๋ฐœ์€ ๋ณด์—ฌ์ค˜์•ผ ์ œ๋ง›
2024-12-20  ์—ญ์‹œ ์ง์ ‘ ๋ถ€๋”ชํ˜€๋ณด๋Š” ๊ฒŒ ์ตœ๊ณ 

์ด๋ฒˆ์—๋„ ๋ฐฉ์‹์€ ๊ฐ™์•˜๋‹ค. ์˜์–ดํŒ์€ ์ฐธ์กฐ๋กœ๋งŒ ๋‘๊ณ , ํ•œ๊ตญ์–ด ์›๋ฌธ์„ source of truth๋กœ ์‚ผ์•˜๋‹ค. ์ผ๋ณธ์–ด, ์ค‘๊ตญ์–ด ๊ฐ„์ฒด, ์ŠคํŽ˜์ธ์–ด, ๋ธŒ๋ผ์งˆ ํฌ๋ฅดํˆฌ๊ฐˆ์–ด, ํ”„๋ž‘์Šค์–ด, ์ธ๋„๋„ค์‹œ์•„์–ด worker 6๊ฐœ๊ฐ€ ๊ฐ์ž ์ž๊ธฐ ์–ธ์–ด์˜ 4๊ฐœ ํŒŒ์ผ๋งŒ ๋งก์•˜๋‹ค.

๊ทธ๋ฆฌ๊ณ  ๋‹ค์‹œ GPT-5.5 reviewer๋ฅผ ๋ถ™์˜€๋‹ค. ์ด๋ฒˆ reviewer๋Š” 24๊ฐœ ์‹ ๊ทœ ๋ฒˆ์—ญ ์ค‘ 11๊ฐœ ํŒŒ์ผ์„ ์‹ค์ œ๋กœ ๊ณ ์ณค๋‹ค. ์ค‘๊ตญ์–ด์˜ ์ง์—ญ idiom, ํฌ๋ฅดํˆฌ๊ฐˆ์–ด์™€ ์ธ๋„๋„ค์‹œ์•„์–ด์˜ ์–ด์ƒ‰ํ•œ ์‹ ์ฒด ํ‘œํ˜„, Local Run, duplicate variable declaration, Date Picker, dependency conflict ๊ฐ™์€ ๊ฐœ๋ฐœ ๋กœ๊ทธ ํ‘œํ˜„์„ ๋” ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ๋‹ค๋“ฌ์—ˆ๋‹ค.

๋ฆฌ๋ทฐ ํ›„ batch ์ „์šฉ post sync๋ฅผ ๋‹ค์‹œ ๋Œ๋ ธ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

์ž”์—ฌ ํ•œ๊ธ€๊ณผ ๋ฒˆ์—ญ ํ”„๋กฌํ”„ํŠธ ๋ˆ„์ˆ˜๋„ ๋‹ค์‹œ ํ›‘์—ˆ๋‹ค. ์ถœ๋ ฅ์€ ์—†์—ˆ๋‹ค. ์ด ๋ง์€ ์ตœ์†Œํ•œ ์ด batch ์•ˆ์—์„œ๋Š” ๊ตฌ์กฐ, ์–ธ์–ด prefix, front matter, permalink, ์ด๋ฏธ์ง€ ์ˆœ์„œ, Liquid token, ๋ˆˆ์— ๋ณด์ด๋Š” ํ•œ๊ตญ์–ด ์ž”์—ฌ๊ฐ€ gate๋ฅผ ํ†ต๊ณผํ–ˆ๋‹ค๋Š” ๋œป์ด๋‹ค.

2์ฐจ batch๊นŒ์ง€ ๋ฐ˜์˜ํ•œ ํ˜„์žฌ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋ฐ”๋€Œ์—ˆ๋‹ค.

en       ready 311/312, pending 1
ja       ready 12/312, pending 1, missing 299
zh-Hans  ready 12/312, pending 1, missing 299
es       ready 12/312, pending 1, missing 299
pt-BR    ready 12/312, pending 1, missing 299
fr       ready 12/312, pending 1, missing 299
id       ready 12/312, pending 1, missing 299

3์ฐจ batch๋„ ์ด์–ด์„œ ์ง„ํ–‰ํ–ˆ๋‹ค.

2024-12-21  ์ด๋ ‡๊ฒŒ ๋ฐฐ์šธ ์ˆ˜๋ฐ–์— ์—†์—ˆ๋‹ค
2024-12-22  ์ด์ œ ์ง„์งœ ๋์žฅ์„ ๋ด์•ผ ํ•œ๋‹ค
2024-12-23  AIFFELTHON ๋งˆ๋ฌด๋ฆฌ ์ „๋‚ 
2024-12-24  ํฌ๋ฆฌ์Šค๋งˆ์Šค ์ด๋ธŒ์—๋„ ๊ฒฐ๊ตญ ๋งŒ๋“ค์—ˆ๋‹ค

์ด๋ฒˆ์—๋„ 6๊ฐœ ์–ธ์–ด worker๋ฅผ GPT-5.5๋กœ ๋„์šฐ๊ณ , ํŒŒ์ผ ownership์„ ์–ธ์–ด๋ณ„๋กœ ๋‚˜๋ˆด๋‹ค. ์ƒ์„ฑ ํ›„์—๋Š” batch ์ „์šฉ sync๊ฐ€ ๋จผ์ € ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

๊ทธ ๋‹ค์Œ ๋ณ„๋„ GPT-5.5 reviewer๊ฐ€ 24๊ฐœ ํŒŒ์ผ์„ ๋‹ค์‹œ ๋ดค๊ณ , 12๊ฐœ ํŒŒ์ผ์— ํ’ˆ์งˆ ์ˆ˜์ •์„ ๋„ฃ์—ˆ๋‹ค. ์ŠคํŽ˜์ธ์–ด/ํฌ๋ฅดํˆฌ๊ฐˆ์–ด์˜ ์—ญ์‹œ ์ง์—ญ drift, ํ”„๋ž‘์Šค์–ด์˜ AIFFELTHON ๊ณ„ํš ํ‘œํ˜„, ์ธ๋„๋„ค์‹œ์•„์–ด์˜ ์˜์–ด residue์™€ ๊ณผํ•œ ์ง์—ญ ํ‘œํ˜„์„ ๋‹ค๋“ฌ์—ˆ๋‹ค.

๋ฆฌ๋ทฐ ํ›„ ๋‹ค์‹œ batch sync๋ฅผ ๋Œ๋ ธ๊ณ  ๊ฒฐ๊ณผ๋Š” ๊ทธ๋Œ€๋กœ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

3์ฐจ batch๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์—ฌ๊ธฐ๊นŒ์ง€ ์˜ฌ๋ผ์™”๋‹ค.

en       ready 311/312, pending 1
ja       ready 16/312, pending 1, missing 295
zh-Hans  ready 16/312, pending 1, missing 295
es       ready 16/312, pending 1, missing 295
pt-BR    ready 16/312, pending 1, missing 295
fr       ready 16/312, pending 1, missing 295
id       ready 16/312, pending 1, missing 295

4์ฐจ batch๋Š” ํฌ๋ฆฌ์Šค๋งˆ์Šค ๋‹น์ผ๋ถ€ํ„ฐ 12์›” 28์ผ๊นŒ์ง€ ์žก์•˜๋‹ค.

2024-12-25  ์Šต๊ด€์ด ๋ฌด์„œ์šด ์ด์œ 
2024-12-26  ์ž‘์€ ์„ ๋ฌผ๊ณผ ์ง„์‹ฌ ์–ด๋ฆฐ ํŽธ์ง€
2024-12-27  ๊ตฐ๋Œ€ ์˜๋ฌด์™€ ๊ฒจ์šธ ์žฅ๋น„
2024-12-28  ์ต์ˆ™ํ•ด์ง„ ์Šต๊ด€์˜ ํž˜

์ด๋ฒˆ์—๋„ ์ƒ์„ฑ์€ 6๊ฐœ ์–ธ์–ด GPT-5.5 worker๊ฐ€ ๋งก๊ณ , ๊ฒ€์ˆ˜๋Š” ๋ณ„๋„ GPT-5.5 reviewer๊ฐ€ ๋งก์•˜๋‹ค. ์ƒ์„ฑ ์งํ›„ batch sync๋Š” ๋จผ์ € ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

reviewer๋Š” 24๊ฐœ ํŒŒ์ผ ์ค‘ 10๊ฐœ ํŒŒ์ผ์„ ์ˆ˜์ •ํ–ˆ๋‹ค. ํฌ๋ฅดํˆฌ๊ฐˆ์–ด์™€ ํ”„๋ž‘์Šค์–ด์˜ ์–ด์ƒ‰ํ•œ ์‹œ๊ฐ„ ํ‘œํ˜„, ์ŠคํŽ˜์ธ์–ด/ํฌ๋ฅดํˆฌ๊ฐˆ์–ด/์ธ๋„๋„ค์‹œ์•„์–ด์˜ ์ž‘์€ ์„ ๋ฌผ๊ณผ ํŽธ์ง€ ํ‘œํ˜„, ์ธ๋„๋„ค์‹œ์•„์–ด์˜ ์˜๋ณต/๊ฒจ์šธ ์žฅ๋น„ residue, ํ”„๋ž‘์Šค์–ด์˜ ๊ตฐ๋Œ€ ์˜๋ฌด ํ‘œํ˜„, ๊ทธ๋ฆฌ๊ณ  12์›” 28์ผ ์ œ๋ชฉ์˜ โ€œ์Šต๊ด€์ด ๋ฌด์„ญ๋‹คโ€๋Š” ์˜๋ฏธ๋ฅผ ๋‹ค์‹œ ๋งž์ท„๋‹ค.

๋ฆฌ๋ทฐ ํ›„ batch sync์™€ residue scan์„ ๋‹ค์‹œ ๋Œ๋ ธ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

4์ฐจ batch๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์—ฌ๊ธฐ๊นŒ์ง€ ์˜ฌ๋ผ์™”๋‹ค.

en       ready 311/312, pending 1
ja       ready 20/312, pending 1, missing 291
zh-Hans  ready 20/312, pending 1, missing 291
es       ready 20/312, pending 1, missing 291
pt-BR    ready 20/312, pending 1, missing 291
fr       ready 20/312, pending 1, missing 291
id       ready 20/312, pending 1, missing 291

5์ฐจ batch๋Š” ์—ฐ๋„ ๊ฒฝ๊ณ„๋ฅผ ๋„˜๊ฒผ๋‹ค.

2024-12-29  2024๋…„ ๋งˆ์ง€๋ง‰ ์ฃผ์ผ
2024-12-30  ๋๊นŒ์ง€ ์†์„ ๋–ผ์ง€ ์•Š๋Š” ๋‚ 
2024-12-31  ํ•œ ํ•ด๋ฅผ ๋งˆ๋ฌด๋ฆฌํ•˜๋ฉฐ
2025-01-01  ์ƒˆํ•ด ์ฒซ๋‚ 

2024-12์™€ 2025-01 ํด๋”๊ฐ€ ์„ž์—ฌ ์žˆ์–ด์„œ source path ๊ฒ€์ฆ์„ ํŠนํžˆ ์กฐ์‹ฌํ–ˆ๋‹ค. ์ด๋ฒˆ์—๋„ 6๊ฐœ ์–ธ์–ด GPT-5.5 worker๊ฐ€ ๊ฐ์ž ์ž๊ธฐ ํŒŒ์ผ๋งŒ ๋งŒ๋“ค๊ณ , ๋ณ„๋„ GPT-5.5 reviewer๊ฐ€ 24๊ฐœ ํŒŒ์ผ์„ ๋‹ค์‹œ ๋ดค๋‹ค.

reviewer๋Š” ์ผ๋ณธ์–ด, ์ค‘๊ตญ์–ด ๊ฐ„์ฒด, ์ŠคํŽ˜์ธ์–ด, ํฌ๋ฅดํˆฌ๊ฐˆ์–ด, ํ”„๋ž‘์Šค์–ด ์ผ๋ถ€ ํŒŒ์ผ์„ ๋‹ค๋“ฌ์—ˆ๋‹ค. ํŠนํžˆ ์‚ฌ์—ญ์ž๊ฐ€ Romance language์—์„œ ordained clergy์ฒ˜๋Ÿผ ๊ณผํ•˜๊ฒŒ ์ฝํžˆ๋Š” ๋ฌธ์ œ๋ฅผ servant/server ์ชฝ ํ‘œํ˜„์œผ๋กœ ๋‚ฎ์ท„๊ณ , ์†์„ ๋–ผ๋‹ค ๊ฐ™์€ ํ‘œํ˜„์˜ ์ง์—ญ๋„ ๊ณ ์ณค๋‹ค. KPT label๋„ (Keep), (Problem), (Try)๋Š” ๋ณด์กดํ•˜๋˜ ๊ฐ ์–ธ์–ด์—์„œ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ์ฝํžˆ๋„๋ก ๋งž์ท„๋‹ค.

๋ฆฌ๋ทฐ ํ›„ batch sync๋Š” ๋‹ค์‹œ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

5์ฐจ batch๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 311/312, pending 1
ja       ready 24/312, pending 1, missing 287
zh-Hans  ready 24/312, pending 1, missing 287
es       ready 24/312, pending 1, missing 287
pt-BR    ready 24/312, pending 1, missing 287
fr       ready 24/312, pending 1, missing 287
id       ready 24/312, pending 1, missing 287

6์ฐจ batch๋Š” 2025๋…„ 1์›” ์ดˆ๋ฐ˜์œผ๋กœ ๋„˜์–ด๊ฐ”๋‹ค.

2025-01-02  ์ƒˆํ•ด ์ฒซ ๋ฃจํ‹ด ์ ๊ฒ€
2025-01-03  ๋‹ค์‹œ ๋ฆฌ๋“ฌ์„ ์žก๋Š” ๋‚ 
2025-01-04  ์ฐฝ์—… ๊ณต๋ชจ์ „ ๋ชฉํ‘œ ์ •๋ฆฌ
2025-01-05  ํ”ผ๊ณคํ•จ ์†์—์„œ๋„ ์ •๋ฆฌํ•œ ํ•˜๋ฃจ

์ด๋ฒˆ์—๋„ 6๊ฐœ ์–ธ์–ด GPT-5.5 worker๊ฐ€ ์ƒ์„ฑํ•˜๊ณ , ๋ณ„๋„ GPT-5.5 reviewer๊ฐ€ 24๊ฐœ ํŒŒ์ผ์„ ๋‹ค์‹œ ๋ดค๋‹ค. reviewer๋Š” ์ŠคํŽ˜์ธ์–ด KPT Try label์„ ๋…์ž์—๊ฒŒ ๋งํ•˜๋Š” ํ˜•ํƒœ๋กœ ๋ฐ”๊พธ๊ณ , ์ฐฝ์—… ๊ณต๋ชจ์ „์ด startup contest์ฒ˜๋Ÿผ ํ๋ฅด๋˜ ํ‘œํ˜„์„ entrepreneurship ์ชฝ์œผ๋กœ ๋ฐ”๋กœ์žก์•˜๋‹ค. ํ”„๋ž‘์Šค์–ด์˜ ์ง์—ญ ์ˆ˜๋ฉด ํ‘œํ˜„๊ณผ ์ธ๋„๋„ค์‹œ์•„์–ด์˜ ์–ด์ƒ‰ํ•œ ์ •๋ฆฌ ํ‘œํ˜„๋„ ๊ณ ์ณค๋‹ค.

๋ฆฌ๋ทฐ ํ›„ batch sync์™€ residue scan์€ ๋‹ค์‹œ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

6์ฐจ batch๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์—ฌ๊ธฐ๊นŒ์ง€ ์˜ฌ๋ผ์™”๋‹ค.

en       ready 311/312, pending 1
ja       ready 28/312, pending 1, missing 283
zh-Hans  ready 28/312, pending 1, missing 283
es       ready 28/312, pending 1, missing 283
pt-BR    ready 28/312, pending 1, missing 283
fr       ready 28/312, pending 1, missing 283
id       ready 28/312, pending 1, missing 283

7์ฐจ batch๋Š” 2025๋…„ 1์›” 6์ผ๋ถ€ํ„ฐ 9์ผ๊นŒ์ง€ ์ด์–ด๊ฐ”๋‹ค.

2025-01-06
2025-01-07
2025-01-08
2025-01-09

์ด๋ฒˆ์—๋„ ์ƒ์„ฑ์€ 6๊ฐœ ์–ธ์–ด GPT-5.5 worker๊ฐ€ ๋งก๊ณ , ๊ฒ€์ˆ˜๋Š” ๋ณ„๋„ GPT-5.5 reviewer๊ฐ€ ๋งก์•˜๋‹ค. ์ƒ์„ฑ ๋‹จ๊ณ„์—์„œ ์ผ๋ถ€ worker๊ฐ€ post_sync์˜ ์ „์ฒด active target missing์„ ๋ดค์ง€๋งŒ, ๊ทธ๊ฑด ์•„์ง ๋‹ค๋ฅธ ์–ธ์–ด ํŒŒ์ผ์ด ๋“ค์–ด์˜ค๊ธฐ ์ „์˜ ์ •์ƒ ๋…ธ์ด์ฆˆ์˜€๋‹ค. ์ตœ์ข… ๊ฒ€์ฆ์€ batch ์ „์šฉ SOURCE_PATHS๋กœ ๋‹ค์‹œ ๋Œ๋ ธ๋‹ค.

reviewer๋Š” ์ŠคํŽ˜์ธ์–ด 4๊ฐœ ํŒŒ์ผ๊ณผ ์ธ๋„๋„ค์‹œ์•„์–ด 3๊ฐœ ํŒŒ์ผ์„ ์ˆ˜์ •ํ–ˆ๋‹ค. ์ŠคํŽ˜์ธ์–ด diacritics์™€ ๋ฌธ์žฅ๋ถ€ํ˜ธ๋ฅผ ๋ณต๊ตฌํ–ˆ๊ณ , QA ์ค‘ ์ƒ๊ธด URL typo๋ฅผ ๋ฐ”๋กœ์žก์•˜์œผ๋ฉฐ, ์ธ๋„๋„ค์‹œ์•„์–ด์— ๋‚จ์•„ ์žˆ๋˜ Import RichTextEditor in diary ๊ฐ™์€ ์˜์–ด residue๋ฅผ ํ˜„์ง€์–ด ๋ฌธ์žฅ์œผ๋กœ ๋ฐ”๊ฟจ๋‹ค.

๋ฆฌ๋ทฐ ํ›„ batch sync์™€ residue scan์€ ๋‹ค์‹œ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

7์ฐจ batch๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์—ฌ๊ธฐ๊นŒ์ง€ ์˜ฌ๋ผ์™”๋‹ค.

en       ready 311/312, pending 1
ja       ready 32/312, pending 1, missing 279
zh-Hans  ready 32/312, pending 1, missing 279
es       ready 32/312, pending 1, missing 279
pt-BR    ready 32/312, pending 1, missing 279
fr       ready 32/312, pending 1, missing 279
id       ready 32/312, pending 1, missing 279

8์ฐจ batch๋Š” 2025๋…„ 1์›” 10์ผ๋ถ€ํ„ฐ 13์ผ๊นŒ์ง€ ์žก์•˜๋‹ค.

2025-01-10  KeyPit MVP(์˜คํ”ˆ ์นดํ†ก๋ฐฉ) ํ…Œ์ŠคํŠธ ์‹œ์ž‘
2025-01-11  ๋” ๋„“์€ ์„ธ์ƒ์„ ํ–ฅํ•ด
2025-01-12  ์„ฑ๊ณต์ ์ธ ๋ชฉํ‘œ ๋‹ฌ์„ฑ ์‚ฌ์ดํด
2025-01-13  ์ผ๋ณธ ๋‹จ๊ธฐ์„ ๊ต (1/4) - ๋ฐธ๋Ÿฐ์‹ฑ

์ด๋ฒˆ์—๋„ ์ƒ์„ฑ์€ 6๊ฐœ ์–ธ์–ด GPT-5.5 worker๊ฐ€ ๋งก์•˜๋‹ค. ์ผ๋ณธ์–ด, ์ค‘๊ตญ์–ด ๊ฐ„์ฒด, ์ŠคํŽ˜์ธ์–ด, ๋ธŒ๋ผ์งˆ ํฌ๋ฅดํˆฌ๊ฐˆ์–ด, ํ”„๋ž‘์Šค์–ด, ์ธ๋„๋„ค์‹œ์•„์–ด worker๋ฅผ ๋ถ„๋ฆฌํ–ˆ๊ณ , ๊ฐ worker๋Š” ์ž๊ธฐ ์–ธ์–ด์˜ 4๊ฐœ ํŒŒ์ผ๋งŒ ์†Œ์œ ํ–ˆ๋‹ค. ์˜์–ดํŒ์€ ์ด๋ฏธ ์žˆ์œผ๋‹ˆ ์ฐธ์กฐ๋กœ๋งŒ ์ผ๊ณ , ํ•œ๊ตญ์–ด ์›๋ฌธ์„ source of truth๋กœ ๋ดค๋‹ค.

์ƒ์„ฑ ์งํ›„ batch ์ „์šฉ sync๋Š” ๋จผ์ € ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

๊ทธ ๋‹ค์Œ ๋ณ„๋„ GPT-5.5 reviewer๊ฐ€ 24๊ฐœ ํŒŒ์ผ์„ ๋‹ค์‹œ ๋ดค๋‹ค. ์ด๋ฒˆ reviewer๋Š” 14๊ฐœ ํŒŒ์ผ์„ ์‹ค์ œ๋กœ ๊ณ ์ณค๋‹ค. ํŠนํžˆ ์ ˆ๋ฐ•ํ•จ์ด ์ผ๋ถ€ ์–ธ์–ด์—์„œ hopelessness๋‚˜ despair์ฒ˜๋Ÿผ ์ ˆ๋ง ์ชฝ์œผ๋กœ ๋ฏธ๋„๋Ÿฌ์ง„ ๋ฌธ์ œ๋ฅผ, ํ•„์š”์™€ ๊ธด๊ธ‰ํ•จ์˜ ๋‰˜์•™์Šค๋กœ ๋‹ค์‹œ ๋งž์ท„๋‹ค. ํ”„๋ž‘์Šค์–ด์—๋Š” ใ…‹ใ…‹, ใ…  ๊ฐ™์€ ํ•œ๊ตญ์–ด ๊ฐ์ •ํ‘œํ˜„์ด ๋‚จ์•„ ์žˆ์—ˆ๊ณ , ์ผ๋ณธ ๋‹จ๊ธฐ์„ ๊ต ์ œ๋ชฉ์˜ mission courte, รฉquilibrage ๊ฐ™์€ ์ง์—ญ๋„ ๋‹ค๋“ฌ์—ˆ๋‹ค.

๋ฆฌ๋ทฐ ํ›„ ๋‹ค์‹œ batch sync์™€ residue scan์„ ๋Œ๋ ธ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

์ž”์—ฌ ํ•œ๊ธ€, ๋ฒˆ์—ญ ํ”„๋กฌํ”„ํŠธ ๋ˆ„์ˆ˜, whitespace ๋ฌธ์ œ๋„ ๋‹ค์‹œ ํ™•์ธํ–ˆ๋‹ค. ์ถœ๋ ฅ์€ ์—†์—ˆ๋‹ค. ์ด batch๋„ โ€œํŒŒ์ผ์ด ์ƒ๊ฒผ๋‹คโ€๊ฐ€ ์•„๋‹ˆ๋ผ, ์ƒ์„ฑ worker์™€ ๋ณ„๋„ reviewer, ๊ทธ๋ฆฌ๊ณ  batch sync gate๋ฅผ ๋ชจ๋‘ ํ†ต๊ณผํ•œ ์ƒํƒœ๋กœ ๊ธฐ๋กํ•œ๋‹ค.

8์ฐจ batch๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์—ฌ๊ธฐ๊นŒ์ง€ ์˜ฌ๋ผ์™”๋‹ค.

en       ready 311/312, pending 1
ja       ready 36/312, pending 1, missing 275
zh-Hans  ready 36/312, pending 1, missing 275
es       ready 36/312, pending 1, missing 275
pt-BR    ready 36/312, pending 1, missing 275
fr       ready 36/312, pending 1, missing 275
id       ready 36/312, pending 1, missing 275

9์ฐจ batch๋Š” ์ผ๋ณธ ๋‹จ๊ธฐ์„ ๊ต ํ๋ฆ„์˜ ๋’ท๋ถ€๋ถ„๊ณผ ๊ฐœ๋ฐœ์ž ํ”ผ๋“œ๋ฐฑ ๊ธ€์„ ๋ฌถ์—ˆ๋‹ค.

2025-01-14  ์ผ๋ณธ ๋‹จ๊ธฐ์„ ๊ต (2/4) - ์ธ์‹์˜ ํ™•์žฅ, ์„ธ์ƒ์˜ ํ™•์žฅ
2025-01-15  ์ผ๋ณธ ๋‹จ๊ธฐ์„ ๊ต (3/4) - ์˜๋ฏธ๋ถ€์—ฌ, ์ƒˆ๊น€
2025-01-16  ์ผ๋ณธ ๋‹จ๊ธฐ์„ ๊ต (4/4) - ๊ฐ์„ฑ๊ณผ ๋น„์ƒ์˜ ๋‹ค์ง
2025-01-17  ๊ฐœ๋ฐœ์ž ํ•„์ˆ˜ ๋•๋ชฉ: ํ”ผ๋“œ๋ฐฑ, ๋‚˜๋ˆ”

์ด๋ฒˆ์—๋„ 6๊ฐœ ์–ธ์–ด GPT-5.5 worker๊ฐ€ ๊ฐ์ž ์ž๊ธฐ locale์˜ 4๊ฐœ ํŒŒ์ผ๋งŒ ๋งŒ๋“ค์—ˆ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ์ƒ์„ฑ ์งํ›„ batch sync์—์„œ ๋ฐ”๋กœ ๋ฌธ์ œ๊ฐ€ ์žกํ˜”๋‹ค. ์ผ๋ณธ์–ด์™€ ์ธ๋„๋„ค์‹œ์•„์–ด ํŒŒ์ผ์˜ ๋ณธ๋ฌธ์€ ๋“ค์–ด์™”์ง€๋งŒ, front matter์˜ locale ๊ฐ’์ด registry ๊ธฐ์ค€๊ณผ ๋‹ฌ๋ž๋‹ค.

ja  locale: ja     -> ja-JP
id  locale: id     -> id-ID

lang๊ณผ locale์€ ๊ฐ™์€ ๊ฐ’์ด ์•„๋‹ˆ๋‹ค. URL language tag์™€ UI locale, giscus locale์ด ๋ถ„๋ฆฌ๋˜์–ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ์ด๊ฑด ์‚ฌ๋žŒ์ด ๋ˆˆ์œผ๋กœ ์ฝ๋Š” ๋ฒˆ์—ญ ๊ฒ€์ˆ˜๋งŒ์œผ๋กœ๋Š” ๋†“์น˜๊ธฐ ์‰ฝ๊ณ , batch sync gate๊ฐ€ ์ •ํ™•ํžˆ ์žก์•„์ค€ ๋ฌธ์ œ์˜€๋‹ค.

์ˆ˜์ • ํ›„ batch sync๋Š” ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

๊ทธ ๋‹ค์Œ ๋ณ„๋„ GPT-5.5 reviewer๊ฐ€ 24๊ฐœ ํŒŒ์ผ์„ ๋‹ค์‹œ ๋ดค๋‹ค. reviewer๋Š” 7๊ฐœ ํŒŒ์ผ์„ ๊ณ ์ณค๋‹ค. ํŠนํžˆ ๋น„์ƒ์ด ์ผ๋ถ€ ์–ธ์–ด์—์„œ literal flight๋‚˜ ascension์œผ๋กœ ์ƒˆ๋˜ ๋ฌธ์ œ๋ฅผ ๋ฐ”๋กœ์žก์•˜๋‹ค. ์ค‘๊ตญ์–ด ๊ฐ„์ฒด์˜ ้ฃžๅ‡์€ ่…พ้ฃž๋กœ, ์ŠคํŽ˜์ธ์–ด์™€ ํฌ๋ฅดํˆฌ๊ฐˆ์–ด๋Š” alzar/alรงar vuelo/voo ์ชฝ์œผ๋กœ, ์ธ๋„๋„ค์‹œ์•„์–ด๋Š” bangkit๊ณผ melesat ์ชฝ์œผ๋กœ ์กฐ์ •ํ–ˆ๋‹ค. ํฌ๋ฅดํˆฌ๊ฐˆ์–ด์—์„œ๋Š” 4์ผ 3๋ฐ•์ด 3 dias e 4 noites๋กœ ๋’ค์ง‘ํžŒ ๊ธฐ๊ฐ„ ์˜ค์—ญ๋„ ์žก์•˜๋‹ค. 1์›” 17์ผ ๊ธ€์˜ ๋‚˜๋ˆ”๋„ developer peer support ๋งฅ๋ฝ์œผ๋กœ ๋‹ค์‹œ ๋งž์ท„๋‹ค.

๋ฆฌ๋ทฐ ํ›„ ๋‹ค์‹œ batch sync, residue scan, whitespace check๋ฅผ ๋Œ๋ ธ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

9์ฐจ batch๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 311/312, pending 1
ja       ready 40/312, pending 1, missing 271
zh-Hans  ready 40/312, pending 1, missing 271
es       ready 40/312, pending 1, missing 271
pt-BR    ready 40/312, pending 1, missing 271
fr       ready 40/312, pending 1, missing 271
id       ready 40/312, pending 1, missing 271

10์ฐจ batch๋Š” ์ผ๋ณธ ๋‹จ๊ธฐ์„ ๊ต ์ดํ›„ ๋‹ค์‹œ ์ผ์ƒ๊ณผ ๊ฐœ๋ฐœ ๋ฆฌ๋“ฌ์œผ๋กœ ๋Œ์•„์˜ค๋Š” ๊ตฌ๊ฐ„์ด์—ˆ๋‹ค.

2025-01-18  ์—ญ์ง€์‚ฌ์ง€
2025-01-19  ํ‹ฐ๋Œ ๋ชจ์—ฌ ํƒœ์‚ฐ
2025-01-20  ๊ฑฐ์ง“๋ง, ์‹ ๋ขฐ
2025-01-21  ์ง€ํ‚ฌ ์ˆ˜ ์žˆ๋Š” ๋ชฉํ‘œ

์ด๋ฒˆ์—๋„ 6๊ฐœ ์–ธ์–ด GPT-5.5 worker๊ฐ€ ๊ฐ์ž ์ž๊ธฐ ์–ธ์–ด์˜ 4๊ฐœ ํŒŒ์ผ๋งŒ ๋งŒ๋“ค์—ˆ๋‹ค. ์ง€๋‚œ batch์—์„œ locale mismatch๊ฐ€ ํ•œ ๋ฒˆ ๋‚˜์™”๊ธฐ ๋•Œ๋ฌธ์—, ์ด๋ฒˆ์—๋Š” ์ฒ˜์Œ๋ถ€ํ„ฐ registry ๊ธฐ์ค€์„ ๋” ๋ช…ํ™•ํžˆ ์คฌ๋‹ค.

ja       locale: ja-JP
zh-Hans  locale: zh-CN
id       locale: id-ID

์ƒ์„ฑ ํ›„ batch sync๋Š” ๋ฐ”๋กœ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

๊ทธ ๋‹ค์Œ ๋ณ„๋„ GPT-5.5 reviewer๊ฐ€ 24๊ฐœ ํŒŒ์ผ์„ ๋‹ค์‹œ ๋ดค๋‹ค. reviewer๋Š” 10๊ฐœ ํŒŒ์ผ์„ ๊ณ ์ณค๋‹ค. ์ด๋ฒˆ batch๋Š” ์ œ๋ชฉ๋ถ€ํ„ฐ ๊ด€์šฉ๊ตฌ์™€ ๋„๋•์  ๋‰˜์•™์Šค๊ฐ€ ๋งŽ์•˜๋‹ค. ์—ญ์ง€์‚ฌ์ง€๋ฅผ ๋‹จ์ˆœ empathy๋กœ๋งŒ ๋ˆŒ๋Ÿฌ๋ฒ„๋ฆฌ๋ฉด ๊ธ€์˜ ์ž๊ธฐ๋ฐ˜์„ฑ ๊ฒฐ์ด ์•ฝํ•ด์ง€๊ณ , ํ‹ฐ๋Œ ๋ชจ์—ฌ ํƒœ์‚ฐ์€ ๋‹จ์ˆœ accumulated tasks๊ฐ€ ์•„๋‹ˆ๋ผ ์ž‘์€ ๊ฒƒ๋“ค์ด ์Œ“์—ฌ ํฐ ๋ถ€๋‹ด์ด๋‚˜ ๊ฒฐ๊ณผ๊ฐ€ ๋˜๋Š” ๊ฐ๊ฐ์ด ์žˆ๋‹ค. ๊ฑฐ์ง“๋ง, ์‹ ๋ขฐ์—์„œ๋Š” ๊ฑฐ์ง“๋ง ์ž์ฒด๋ณด๋‹ค ์‹ ๋ขฐ๋ฅผ ์žƒ๋Š” ๊ตฌ์กฐ๊ฐ€ ์ค‘์š”ํ–ˆ๊ณ , ์ง€ํ‚ฌ ์ˆ˜ ์žˆ๋Š” ๋ชฉํ‘œ์—์„œ๋Š” ๋ชฉํ‘œ๋ฅผ ๋‚ฎ์ถ”๋Š” ๊ฒŒ ์•„๋‹ˆ๋ผ ์ง€ํ‚ฌ ์ˆ˜ ์žˆ์–ด์•ผ ์ž๊ธฐ ์‹ ๋ขฐ๊ฐ€ ์ƒ๊ธด๋‹ค๋Š” ๋ฐฉํ–ฅ์ด ์ค‘์š”ํ–ˆ๋‹ค.

ํŠนํžˆ pt-BR์—์„œ๋Š” โ€œํ‰๊ฐ€์ž๊ฐ€ ํƒ€์ธ์ด๋“  ๋‚˜ ์ž์‹ ์ด๋“ โ€์ด๋ผ๋Š” ๋ฌธ์žฅ์ด ์ž˜๋ชป ํ๋ฅธ ๋ถ€๋ถ„์ด ์žกํ˜”๋‹ค. ๋ฒˆ์—ญ ์ž์ฒด๋Š” ์ž์—ฐ์Šค๋Ÿฌ์›Œ ๋ณด์—ฌ๋„ ์ฃผ์ฒด๊ฐ€ ๋ฐ”๋€Œ๋ฉด ๊ธ€์˜ ์œค๋ฆฌ์  ๋ฐฉํ–ฅ์ด ๋ฐ”๋€๋‹ค. ์ด๊ฑด ์ด๋ฒˆ batch์—์„œ ์ข‹์€ ๊ฒ€์ˆ˜ ํฌ์ธํŠธ์˜€๋‹ค.

๋ฆฌ๋ทฐ ํ›„ ๋‹ค์‹œ batch sync, residue scan, whitespace check๋ฅผ ๋Œ๋ ธ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

10์ฐจ batch๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 311/312, pending 1
ja       ready 44/312, pending 1, missing 267
zh-Hans  ready 44/312, pending 1, missing 267
es       ready 44/312, pending 1, missing 267
pt-BR    ready 44/312, pending 1, missing 267
fr       ready 44/312, pending 1, missing 267
id       ready 44/312, pending 1, missing 267

11์ฐจ batch๋Š” 2025๋…„ 1์›” ํ›„๋ฐ˜๋ถ€๋กœ ๋„˜์–ด๊ฐ”๋‹ค.

2025-01-22  ๊ฐ’์‹ผ ๋„ํŒŒ๋ฏผ, ์‹œ์Šคํ…œ ๋ณ€ํ™”
2025-01-23  ์ž„๊ณ„์ , ํ•˜๊ธฐ ์‹ซ์€ ์ผ, ๋‡Œ์˜ ๋ณ€ํ™”
2025-01-26  ๋ฉ˜๋ถ•
2025-01-27  ๋ฐค์ƒ˜, ์ •์‹ ๋ ฅ ์šด๋™

์ด๋ฒˆ์—๋„ 6๊ฐœ ์–ธ์–ด GPT-5.5 worker๊ฐ€ ๊ฐ์ž ์ž๊ธฐ locale์˜ 4๊ฐœ ํŒŒ์ผ๋งŒ ๋งŒ๋“ค์—ˆ๋‹ค. ์ด batch๋Š” ๋‹จ์–ด ์„ ํƒ์ด ๊ฝค ๊นŒ๋‹ค๋กœ์› ๋‹ค. ๊ฐ’์‹ผ ๋„ํŒŒ๋ฏผ, ๋‡Œ์˜ ๋ณ€ํ™”, ๋ฉ˜๋ถ•, ์ •์‹ ๋ ฅ ์šด๋™ ๊ฐ™์€ ํ‘œํ˜„์€ ๋„ˆ๋ฌด ์˜ํ•™์ ์œผ๋กœ ๋ฒˆ์—ญํ•˜๋ฉด ์›๋ฌธ์˜ ์ผ์ƒ์  ์ž๊ธฐ๋ฐ˜์„ฑ ๊ฒฐ์ด ์‚ฌ๋ผ์ง€๊ณ , ๋„ˆ๋ฌด ๊ฐ€๋ณ๊ฒŒ ๋ฒˆ์—ญํ•˜๋ฉด ๊ธ€์˜ ๊ฑฐ์นœ ์ž๊ธฐ๋น„ํŒ์ด ์•ฝํ•ด์ง„๋‹ค.

์ƒ์„ฑ ํ›„ batch sync๋Š” ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

๊ทธ ๋‹ค์Œ ๋ณ„๋„ GPT-5.5 reviewer๊ฐ€ 24๊ฐœ ํŒŒ์ผ์„ ๋‹ค์‹œ ๋ดค๋‹ค. reviewer๋Š” 5๊ฐœ ํŒŒ์ผ์„ ๊ณ ์ณค๋‹ค. ์ŠคํŽ˜์ธ์–ด์™€ ํฌ๋ฅดํˆฌ๊ฐˆ์–ด์—์„œ ํ•˜๊ธฐ ์‹ซ์€ ์ผ์ด ๋„ˆ๋ฌด ๋”ฑ๋”ฑํ•˜๊ฒŒ ๋ฒˆ์—ญ๋œ ๋ถ€๋ถ„์„ ๋‹ค๋“ฌ์—ˆ๊ณ , ์ŠคํŽ˜์ธ์–ด์˜ ๋ฉ˜๋ถ• ํ‘œํ˜„์ด ์–ด์ƒ‰ํ•˜๊ฒŒ ํ๋ฅธ ๊ฒƒ๋„ ๊ณ ์ณค๋‹ค. ๋…๊ธฐ๋Š” ๋‹จ์ˆœ venom์ด๋‚˜ malice๊ฐ€ ์•„๋‹ˆ๋ผ, ๋‚˜์œ ์ชฝ์œผ๋กœ๋„ ๊ฐˆ ์ˆ˜ ์žˆ๋Š” ๊ฑฐ์นœ grit์— ๊ฐ€๊น๋‹ค. ๊ทธ๋ž˜์„œ ์ŠคํŽ˜์ธ์–ด์™€ ํฌ๋ฅดํˆฌ๊ฐˆ์–ด์—์„œ ๊ทธ ๊ฒฐ์„ ๋‹ค์‹œ ๋งž์ท„๋‹ค. ์ธ๋„๋„ค์‹œ์•„์–ด์—์„œ๋Š” ๊ณฑ์ƒํ•˜๊ฒŒ๊ฐ€ ๋„ˆ๋ฌด ๋ฌธ์ž ๊ทธ๋Œ€๋กœ ์˜ฎ๊ฒจ์ ธ์„œ, ์›๋ฌธ์˜ ์ž๊ธฐ๋น„ํŒ์  ๋‰˜์•™์Šค๋ฅผ ์‚ด๋ฆฌ๋Š” ์ชฝ์œผ๋กœ ์กฐ์ •ํ–ˆ๋‹ค.

๋ฆฌ๋ทฐ ํ›„ ๋‹ค์‹œ batch sync, residue scan, whitespace check๋ฅผ ๋Œ๋ ธ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

11์ฐจ batch๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 311/312, pending 1
ja       ready 48/312, pending 1, missing 263
zh-Hans  ready 48/312, pending 1, missing 263
es       ready 48/312, pending 1, missing 263
pt-BR    ready 48/312, pending 1, missing 263
fr       ready 48/312, pending 1, missing 263
id       ready 48/312, pending 1, missing 263

12์ฐจ batch๋Š” 2025๋…„ 2์›” ์ดˆ๋ฐ˜ Daily Review๋กœ ๋„˜์–ด๊ฐ”๋‹ค.

2025-02-02  ์ •์ง€ ๊ด€์„ฑ์„ ๊นจ๋Š” ๋ฐฉ๋ฒ•
2025-02-03  ์ƒ๊ฐํ•˜๋Š” ์‚ถ, ์ตœ๊ณ ์˜ ์‚ฌ๊ณ  ์ด‰์ง„ ๋„๊ตฌ - ์ผ๊ธฐ
2025-02-04  ์„ฑ๊ณต์˜ ์ ˆ๋ฐ˜์€ ์ถœ์„์ด๋‹ค
2025-02-05  ๊ณ„๋‹จ ์˜ค๋ฅด๊ธฐ์˜ ์˜๋ฏธ, ๊พธ์ค€ํ•œ ๊ธฐ๋ก์˜ ํž˜

์ด๋ฒˆ์—๋„ 6๊ฐœ ์–ธ์–ด GPT-5.5 worker๊ฐ€ ๊ฐ์ž ์ž๊ธฐ locale์˜ 4๊ฐœ ํŒŒ์ผ๋งŒ ๋งŒ๋“ค์—ˆ๋‹ค. ์ด batch๋Š” ํฐ ์‹ ํ•™ ํ‘œํ˜„๋ณด๋‹ค ์ƒํ™œ ๊ฐœ๋…์˜ ๋ฒˆ์—ญ์ด ๊นŒ๋‹ค๋กœ์› ๋‹ค. ์ •์ง€ ๊ด€์„ฑ, ์ถœ์„, ๊ณ„๋‹จ ์˜ค๋ฅด๊ธฐ, ๊พธ์ค€ํ•œ ๊ธฐ๋ก ๊ฐ™์€ ๋ง์€ ์ง์—ญํ•˜๋ฉด ์–ด์ƒ‰ํ•ด์ง€๊ณ , ๋„ˆ๋ฌด ํ’€์–ด ์“ฐ๋ฉด ์ œ๋ชฉ์˜ ํž˜์ด ๋น ์ง„๋‹ค.

์ƒ์„ฑ ํ›„ batch sync๋Š” ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

๊ทธ ๋‹ค์Œ ๋ณ„๋„ GPT-5.5 reviewer๊ฐ€ 24๊ฐœ ํŒŒ์ผ์„ ๋‹ค์‹œ ๋ดค๋‹ค. reviewer๋Š” 4๊ฐœ ํŒŒ์ผ์„ ๊ณ ์ณค๋‹ค. ํ•ต์‹ฌ์€ 2์›” 2์ผ ๊ธ€์˜ ์ •์ง€ ๊ด€์„ฑ์ด์—ˆ๋‹ค. ์ŠคํŽ˜์ธ์–ด, ํฌ๋ฅดํˆฌ๊ฐˆ์–ด, ํ”„๋ž‘์Šค์–ด, ์ธ๋„๋„ค์‹œ์•„์–ด์—์„œ ๋„ˆ๋ฌด ๋ฌธ์ž ๊ทธ๋Œ€๋กœ ๊ตณ์–ด ์žˆ๋˜ ํ‘œํ˜„์„, ๋ฉˆ์ถฐ ์žˆ๋Š” ์ƒํƒœ์˜ ๊ด€์„ฑ์ด๋‚˜ inertia of immobility/rest ์ชฝ์œผ๋กœ ๋” ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ์กฐ์ •ํ–ˆ๋‹ค. ํฌ๋ฅดํˆฌ๊ฐˆ์–ด์—์„œ๋Š” ์ •ํ™•ํžˆ 2๋ถ„์ฒ˜๋Ÿผ ์ฝํžˆ๋˜ ํ‘œํ˜„์„ 2๋ถ„ ์•ˆ์— ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ์›๋ž˜ ๋‰˜์•™์Šค์— ๋งž๊ฒŒ ๊ณ ์ณค๋‹ค.

๋ฆฌ๋ทฐ ํ›„ ๋‹ค์‹œ batch sync, residue scan, whitespace check๋ฅผ ๋Œ๋ ธ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

12์ฐจ batch๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 311/312, pending 1
ja       ready 52/312, pending 1, missing 259
zh-Hans  ready 52/312, pending 1, missing 259
es       ready 52/312, pending 1, missing 259
pt-BR    ready 52/312, pending 1, missing 259
fr       ready 52/312, pending 1, missing 259
id       ready 52/312, pending 1, missing 259

13์ฐจ batch๋Š” 2์›” ์ดˆ์˜ ํ”„๋กœ์ ํŠธ ์ „ํ™˜ ๊ตฌ๊ฐ„์ด์—ˆ๋‹ค.

2025-02-06  ์ƒ๊ฐ๋Œ€๋กœ ์‚ด์ง€ ์•Š์œผ๋ฉด, ์‚ฌ๋Š” ๋Œ€๋กœ ์ƒ๊ฐํ•˜๊ฒŒ ๋œ๋‹ค.
2025-02-11  ์•„์ดํŽ ํ†ค(์กธ์—… ํ”„๋กœ์ ํŠธ) ๋
2025-02-12  ์•„์ดํŽ  9๊ธฐ ์ฝ”์–ด ๊ณผ์ • ์ข…๋ฃŒ, MVP Runners ์‹œ์ž‘
2025-02-13  ์ž„๊ณ„์ , ๋„ํ”ผ์„ฑ ๋‘๋ ค์›€

์ด๋ฒˆ์—๋„ 6๊ฐœ ์–ธ์–ด GPT-5.5 worker๊ฐ€ ๊ฐ์ž ์ž๊ธฐ locale์˜ 4๊ฐœ ํŒŒ์ผ๋งŒ ๋งŒ๋“ค์—ˆ๋‹ค. ์ด batch๋Š” ๊ณ ์œ ๋ช…์‚ฌ๊ฐ€ ๋งŽ์•˜๋‹ค. AIFFELthon, ์•„์ดํŽ ํ†ค, AIFFEL 9๊ธฐ ์ฝ”์–ด ๊ณผ์ •, MVP Runners ๊ฐ™์€ ์ด๋ฆ„์€ ๋ฒˆ์—ญ๋ณด๋‹ค ๋ณด์กด๊ณผ ํ˜„์ง€ํ™”์˜ ๊ฒฝ๊ณ„๊ฐ€ ๋” ์ค‘์š”ํ–ˆ๋‹ค. ์ œ๋ชฉ๋„ ๊นŒ๋‹ค๋กœ์› ๋‹ค. ์ƒ๊ฐ๋Œ€๋กœ ์‚ด์ง€ ์•Š์œผ๋ฉด, ์‚ฌ๋Š” ๋Œ€๋กœ ์ƒ๊ฐํ•˜๊ฒŒ ๋œ๋‹ค๋Š” ๋ฌธ์žฅ์€ ๋„ˆ๋ฌด ๋งค๋ˆํ•˜๊ฒŒ ๋ฐ”๊พธ๋ฉด ์›๋ฌธ์˜ ๊ฒฝ๊ณ ์„ฑ์ด ์•ฝํ•ด์ง„๋‹ค.

์ƒ์„ฑ ํ›„ batch sync๋Š” ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

๊ทธ ๋‹ค์Œ ๋ณ„๋„ GPT-5.5 reviewer๊ฐ€ 24๊ฐœ ํŒŒ์ผ์„ ๋‹ค์‹œ ๋ดค๋‹ค. reviewer๋Š” 20๊ฐœ ํŒŒ์ผ์„ ๊ณ ์ณค๋‹ค. ํ”„๋ž‘์Šค์–ด 4๊ฐœ ํŒŒ์ผ์€ ๊ทธ๋Œ€๋กœ ํ†ต๊ณผํ–ˆ๊ณ , ๋‚˜๋จธ์ง€ ์–ธ์–ด์—์„œ๋Š” AIFFEL 9๊ธฐ ์ฝ”์–ด ๊ณผ์ •์ด ์˜์–ด AIFFEL 9th Core Course์ฒ˜๋Ÿผ ์ƒˆ์–ด ๋‚˜์˜จ ๋ถ€๋ถ„์„ ๊ฐ ์–ธ์–ด์— ๋งž๊ฒŒ ์ •๋ฆฌํ–ˆ๋‹ค. ์ธ๋„๋„ค์‹œ์•„์–ด์˜ AIFFEL batch 9 core course๋„ ํ˜„์ง€์–ด ํ๋ฆ„์— ๋งž๊ฒŒ ๊ณ ์ณค๋‹ค. ํฌ๋ฅดํˆฌ๊ฐˆ์–ด์—์„œ๋Š” ํฐ ๊ตฌ๊ฐ„์—์„œ diacritics๊ฐ€ ๋น ์ ธ ์žˆ์—ˆ๊ณ , ์ด๊ฑด ๊ณต๊ฐœ ํ’ˆ์งˆ์ƒ ๊ทธ๋ƒฅ ๋„˜์–ด๊ฐˆ ์ˆ˜ ์—†๋Š” ๋ฌธ์ œ๋ผ ๋‹ค์‹œ ์ •๋ฆฌํ–ˆ๋‹ค.

๋ฆฌ๋ทฐ ํ›„ ๋‹ค์‹œ batch sync, residue scan, whitespace check๋ฅผ ๋Œ๋ ธ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

13์ฐจ batch๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 311/312, pending 1
ja       ready 56/312, pending 1, missing 255
zh-Hans  ready 56/312, pending 1, missing 255
es       ready 56/312, pending 1, missing 255
pt-BR    ready 56/312, pending 1, missing 255
fr       ready 56/312, pending 1, missing 255
id       ready 56/312, pending 1, missing 255

14์ฐจ batch๋Š” ๋ฃจํ‹ด๊ณผ ์„ฑ์ˆ™ํ•จ ์ชฝ Daily Review์˜€๋‹ค.

2025-02-14  ๊ธฐ๋ณธ์— ์ถฉ์‹คํ•˜๋ผ - ๊ฑด๊ฐ•ํ•œ ๋ฃจํ‹ด ํ˜•์„ฑ
2025-02-15  ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค~ ํ–‰๋ณตํ•œ ํ•˜๋ฃจ ๋˜์„ธ์š”!โ˜บ๏ธ
2025-02-16  ์„ฑ์ˆ™ํ•จ์˜ ํ•ต์‹ฌ: ์ง€์—ฐ ๋ณด์ƒ ์ธ๋‚ด, ์ฆ‰๊ฐ ๋ณด์ƒ ์ ˆ์ œ
2025-02-17  ๋ณต์‹ฑ ์‹œ์ž‘, ์›”-๊ธˆ ํ—ฌ์Šค์žฅ+๋ณต์‹ฑ์žฅ ์ฑŒ๋ฆฐ์ง€

์ด๋ฒˆ์—๋„ 6๊ฐœ ์–ธ์–ด GPT-5.5 worker๋ฅผ ๋ถ™์˜€๋‹ค. ๊ฐ worker๋Š” ์ž๊ธฐ ์–ธ์–ด์˜ 4๊ฐœ ํŒŒ์ผ๋งŒ ๋งŒ๋“ค๊ณ , ํ•œ๊ตญ์–ด ์›๋ฌธ์„ source of truth๋กœ ์‚ผ์•˜๋‹ค. ์˜์–ดํŒ์€ ์ฐธ๊ณ ๋งŒ ํ–ˆ๋‹ค. ๊ธฐ๋ณธ์— ์ถฉ์‹คํ•˜๋ผ, ์ง€์—ฐ ๋ณด์ƒ ์ธ๋‚ด, ์ฆ‰๊ฐ ๋ณด์ƒ ์ ˆ์ œ ๊ฐ™์€ ํ‘œํ˜„์€ ์˜์–ด๋ฅผ ๋‹ค์‹œ ๋ฒˆ์—ญํ•˜๋ฉด ๊ธˆ๋ฐฉ ์–ด์ƒ‰ํ•ด์งˆ ์ˆ˜ ์žˆ์–ด์„œ, ํ•œ๊ตญ์–ด ์›๋ฌธ์„ ๊ณ„์† ๋ถ™์žก๊ฒŒ ํ–ˆ๋‹ค.

์ƒ์„ฑ ํ›„ batch sync, residue scan, whitespace check๋ฅผ ๋Œ๋ ธ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

๊ทธ ๋‹ค์Œ ๋ณ„๋„ GPT-5.5 reviewer๊ฐ€ 24๊ฐœ ํŒŒ์ผ์„ ๋‹ค์‹œ ๋ดค๋‹ค. reviewer๋Š” 8๊ฐœ ํŒŒ์ผ์„ ๊ณ ์ณค๋‹ค. ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค~ ํ–‰๋ณตํ•œ ํ•˜๋ฃจ ๋˜์„ธ์š”!โ˜บ๏ธ ๊ฐ™์€ ์ธ์‚ฌ๋ง์€ ์–ธ์–ด๋งˆ๋‹ค ์ž์—ฐ์Šค๋Ÿฌ์šด ์˜จ๋„๊ฐ€ ๋‹ฌ๋ž๊ณ , MVP Runners ๋ชจ์ž„์— ๊ฐ€์ž…์€ ๋ช‡๋ช‡ ์–ธ์–ด์—์„œ โ€œ๋ชจ์ž„์— ์ฐธ์„ํ–ˆ๋‹คโ€์ฒ˜๋Ÿผ ์ฝํž ์œ„ํ—˜์ด ์žˆ์—ˆ๋‹ค. 2์›” 16์ผ ๊ธ€์—์„œ๋Š” ํฌ๋ฅดํˆฌ๊ฐˆ์–ด์™€ ์ธ๋„๋„ค์‹œ์•„์–ด์˜ ์ง€์—ฐ ๋ณด์ƒ ์ธ๋‚ด, ์ฆ‰๊ฐ ๋ณด์ƒ ์ ˆ์ œ ํ‘œํ˜„์„ ๋” ์ž๊ธฐ ์ ˆ์ œ์˜ ์˜๋ฏธ๊ฐ€ ์‚ด์•„๋‚˜๊ฒŒ ๊ณ ์ณค๋‹ค.

๋ฆฌ๋ทฐ ํ›„ ๋‹ค์‹œ batch sync, residue scan, whitespace check๋ฅผ ๋Œ๋ ธ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

14์ฐจ batch๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 311/312, pending 1
ja       ready 60/312, pending 1, missing 251
zh-Hans  ready 60/312, pending 1, missing 251
es       ready 60/312, pending 1, missing 251
pt-BR    ready 60/312, pending 1, missing 251
fr       ready 60/312, pending 1, missing 251
id       ready 60/312, pending 1, missing 251

15์ฐจ batch๋Š” 2์›” ๋ง์—์„œ 3์›” ์ดˆ๋กœ ๋„˜์–ด๊ฐ€๋Š” Daily Review์˜€๋‹ค.

2025-02-23  ๋„‰๋‹ค์šด + ๊ฐ๊ธฐ
2025-02-24  3๋Œ€ ๋ชฉํ‘œ ๋ณ€๊ฒฝ, ์˜ˆ๋น„์ฐฝ์—…ํŒจํ‚ค์ง€ ์ค€๋น„ ์ค‘๋‹จ
2025-02-25  ์ƒ์ผ
2025-03-02  ๋ฏธ๋ฃจ๊ธฐ ๊ด€์„ฑ

์ด๋ฒˆ batch๋Š” ๊ธ€์˜ ์˜จ๋„ ์ฐจ์ด๊ฐ€ ์ปธ๋‹ค. 2์›” 23์ผ์€ ๋ชธ์ด ๋ฌด๋„ˆ์ง„ ๊ธฐ๋ก์ด๊ณ , 2์›” 24์ผ์€ ์˜ˆ๋น„์ฐฝ์—…ํŒจํ‚ค์ง€ ์ค€๋น„๋ฅผ ๋ฉˆ์ถ”๋Š” ์˜์‚ฌ๊ฒฐ์ •์ด๋‹ค. 2์›” 25์ผ์€ ์ƒ์ผ์ด๋ผ ์ผ๋ถ€๋Ÿฌ ๊ฐ€๋ณ๊ณ  ์žฅ๋‚œ์Šค๋Ÿฝ๋‹ค. 3์›” 2์ผ์€ ๋‹ค์‹œ ๋ฏธ๋ฃจ๊ธฐ ๊ด€์„ฑ์„ ๊นจ๋ ค๋Š” ๊ธ€์ด๋‹ค. ๊ฐ™์€ Daily Review๋ผ๋„ ๋ฒˆ์—ญ ํ†ค์„ ํ•œ ๊ฐ€์ง€๋กœ ๋ฐ€๋ฉด ๋ง๊ฐ€์ง€๋Š” ๊ตฌ๊ฐ„์ด์—ˆ๋‹ค.

์ƒ์„ฑ ํ›„ batch sync, residue scan, whitespace check๋ฅผ ๋Œ๋ ธ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

๊ทธ ๋‹ค์Œ ๋ณ„๋„ GPT-5.5 reviewer๊ฐ€ 24๊ฐœ ํŒŒ์ผ์„ ๋‹ค์‹œ ๋ดค๋‹ค. reviewer๋Š” 3๊ฐœ ํŒŒ์ผ์„ ๊ณ ์ณค๋‹ค. ์ŠคํŽ˜์ธ์–ด์—์„œ๋Š” ์‘~ ์•„๋‹ˆ์•ผ~ ์ƒ์ผ์ด๋‹ˆ๊นŒ ์‰ด ๊ฑฐ์•ผ~ ๋‚ด ๋งด์ด์•ผ~์˜ ์žฅ๋‚œ์Šค๋Ÿฌ์šด ๊ฒฐ์„ ์‚ด๋ฆฌ๊ธฐ ์œ„ํ•ด ์–ด์ƒ‰ํ•œ ํ‘œํ˜„์„ ๋” ์ž์—ฐ์Šค๋Ÿฌ์šด ๊ตฌ์–ด์ฒด๋กœ ๋ฐ”๊ฟจ๋‹ค. ํ”„๋ž‘์Šค์–ด์—์„œ๋Š” ์ •์ง€ ๊ด€์„ฑ์„ ๋ฉˆ์ถค์˜ ๊ด€์„ฑ๋ณด๋‹ค ํœด์ง€/์ •์ง€ ์ƒํƒœ์˜ ๊ด€์„ฑ์— ๊ฐ€๊น๊ฒŒ ๊ณ ์ณค๊ณ , ์ธ๋„๋„ค์‹œ์•„์–ด์—์„œ๋Š” ํ•  ์ผ์„ ๋„ˆ๋ฌด ๋นก์„ธ๊ฒŒ ์„ค์ •ํ–ˆ์„๊นŒ?์˜ ๋นก์„ธ๊ฒŒ๋ฅผ ์ž์—ฐ์Šค๋Ÿฌ์šด ๊ณผ์—… ๋‚œ์ด๋„ ํ‘œํ˜„์œผ๋กœ ์กฐ์ •ํ–ˆ๋‹ค.

๋ฆฌ๋ทฐ ํ›„ ๋‹ค์‹œ batch sync, residue scan, whitespace check๋ฅผ ๋Œ๋ ธ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

15์ฐจ batch๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 311/312, pending 1
ja       ready 64/312, pending 1, missing 247
zh-Hans  ready 64/312, pending 1, missing 247
es       ready 64/312, pending 1, missing 247
pt-BR    ready 64/312, pending 1, missing 247
fr       ready 64/312, pending 1, missing 247
id       ready 64/312, pending 1, missing 247

16์ฐจ batch๋Š” 3์›” ์ดˆ์˜ ๋ฌด๊ฑฐ์šด Daily Review ๊ตฌ๊ฐ„์ด์—ˆ๋‹ค.

2025-03-06  ๋ฏธ๋ฃจ๊ธฐ ๊ด€์„ฑ 2
2025-03-07  ์ƒ๊ฐํ•˜์ง€ ๋ชปํ•˜๊ฒŒ ๋œ ๋™๋ฌผ
2025-03-08  ์„œ์šธ์‹œ ์ฒญ๋…„ ๋งˆ์Œ๊ฑด๊ฐ• ์ƒ๋‹ด 2ํšŒ์ฐจ: TCI, KSCL-95
2025-03-20  ๋‹ค์‹œ ์ผ์–ด์„œ์ž. ๋นจ๋ฆฌ ๊ฑท๊ณ , ๋Šฆ๊ฒŒ ๋›ฐ์ž.

์ด๋ฒˆ batch๋Š” ๋‹จ์ˆœํ•œ ์ƒํ™œ ๊ธฐ๋ก์ด ์•„๋‹ˆ์—ˆ๋‹ค. ๊ฐ’์‹ผ ๋„ํŒŒ๋ฏผ, ์ƒ๊ฐํ•˜์ง€ ๋ชปํ•˜๊ฒŒ ๋œ ๋™๋ฌผ ๊ฐ™์€ ๊ฑฐ์นœ ์ž๊ธฐ๋น„ํŒ๋„ ์žˆ๊ณ , ์„œ์šธ์‹œ ์ฒญ๋…„ ๋งˆ์Œ๊ฑด๊ฐ• ์ƒ๋‹ด, TCI, KSCL-95 ๊ฐ™์€ ์ƒ๋‹ด/๊ฒ€์‚ฌ ๋งฅ๋ฝ๋„ ์žˆ์—ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๋ฒˆ์—ญ์„ ๋งค๋ˆํ•˜๊ฒŒ๋งŒ ํ•˜๋ฉด ์•ˆ ๋๋‹ค. ๊ฑฐ์นœ ํ‘œํ˜„์€ ๊ฑฐ์น ๊ฒŒ ๋‚จ๊ธฐ๋˜, ์ƒ๋‹ด๊ณผ ์‹ฌ๋ฆฌ๊ฒ€์‚ฌ ํ‘œํ˜„์€ ์ง„๋‹จ์ฒ˜๋Ÿผ ๋ถ€ํ’€๋ฆฌ์ง€ ์•Š์•„์•ผ ํ–ˆ๋‹ค.

์ƒ์„ฑ ํ›„ batch sync, residue scan, whitespace check๋ฅผ ๋Œ๋ ธ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

๊ทธ ๋‹ค์Œ ๋ณ„๋„ GPT-5.5 reviewer๊ฐ€ 24๊ฐœ ํŒŒ์ผ์„ ๋‹ค์‹œ ๋ดค๋‹ค. reviewer๋Š” 10๊ฐœ ํŒŒ์ผ์„ ๊ณ ์ณค๋‹ค. ๊ฐ€์žฅ ์ค‘์š”ํ•œ ์ˆ˜์ •์€ mania์ฒ˜๋Ÿผ ์ง„๋‹จ์œผ๋กœ ์ฝํž ์ˆ˜ ์žˆ๋Š” ํ‘œํ˜„์„ ๋น„์ง„๋‹จ์  ๊ฐ์„ฑ/๊ณผํ™œ์„ฑ ํ‘œํ˜„์œผ๋กœ ๋‚ฎ์ถ˜ ๊ฒƒ์ด๋‹ค. ์ค‘๊ตญ์–ด์—์„œ๋Š” TCI์™€ KSCL-95๋ฅผ ์ž„์ƒ์  ๆฃ€ๆŸฅ๋ณด๋‹ค ์‹ฌ๋ฆฌ๊ฒ€์‚ฌ ๋งฅ๋ฝ์˜ ๆต‹้ชŒ์œผ๋กœ ๊ณ ์ณค๋‹ค. ํ”„๋ž‘์Šค์–ด์—์„œ๋Š” counseling์ด ๊ทธ๋Œ€๋กœ ์ƒˆ์–ด ๋‚˜์˜จ ๋ถ€๋ถ„์„ ์ž์—ฐ์Šค๋Ÿฌ์šด accompagnement ๊ณ„์—ด ํ‘œํ˜„์œผ๋กœ ์ •๋ฆฌํ–ˆ๊ณ , ํฌ๋ฅดํˆฌ๊ฐˆ์–ด์—์„œ๋Š” ์•ฑ ์‚ญ์ œ ์‹ค์ฒœ์„ ์–ด์ƒ‰ํ•˜๊ฒŒ ์„ค๋ช…ํ•˜๋˜ description์„ ๋” ์ •ํ™•ํžˆ ๊ณ ์ณค๋‹ค.

๋ฆฌ๋ทฐ ํ›„ ๋‹ค์‹œ batch sync, residue scan, whitespace check๋ฅผ ๋Œ๋ ธ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

16์ฐจ batch๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 311/312, pending 1
ja       ready 68/312, pending 1, missing 243
zh-Hans  ready 68/312, pending 1, missing 243
es       ready 68/312, pending 1, missing 243
pt-BR    ready 68/312, pending 1, missing 243
fr       ready 68/312, pending 1, missing 243
id       ready 68/312, pending 1, missing 243

17์ฐจ batch๋Š” ์‹ ์•™ ์€์œ , ์กฐ์–ด, AI ์ฒ ํ•™, ์‹ค์ฒœ ๋งค๋‰ด์–ผ์ด ํ•œ๊บผ๋ฒˆ์— ์„ž์ธ ๊ตฌ๊ฐ„์ด์—ˆ๋‹ค.

2025-03-21  ์งง์€ ์—ฌํ–‰, ๊นจ๋‹ฌ์Œ์˜ ํ™์ˆ˜, ๋Œ์•„์˜จ ํƒ•์ž
2025-03-25  ๋ฐ˜๋ณต๋˜๋Š” ์‹ค์ˆ˜์™€ ์ž˜๋ชป์„ ๋Š์–ด๋‚ด๊ธฐ ์œ„ํ•œ 6๋‹จ๊ณ„ ๊ตฌ์กฐ
2025-03-26  ์ธ๊ฐ„-๊ธฐ๊ณ„ ๊ณต์ƒ ์‹œ๋Œ€์˜ ์‚ฌ๊ณ  ํ™•์žฅ
2025-03-27  ํ•˜๊ธฐ ์‹ซ์€ ์„ ํƒ์ง€ ์ฑ„ํƒ ๋งค๋‰ด์–ผ

์ด๋ฒˆ batch๋Š” 3์›” 21์ผ ๊ธ€ ํ•˜๋‚˜๋งŒ ๋ด๋„ ์‰ฝ์ง€ ์•Š์•˜๋‹ค. ๋Œ์•„์˜จ ํƒ•์ž๋Š” ์„ฑ๊ฒฝ์  ๋‰˜์•™์Šค๋ฅผ ๊ฐ–๊ณ  ์žˆ๊ณ , ์†Œํ™•ํ–‰, ๋Œ€๊นจ๋‘, ์ฝฐ์‚ญํ‚น/๋ง›์ดˆํ‚น ๊ฐ™์€ ์‚ฌ๋žŒ ๊ฐ™์€ ํ‘œํ˜„์€ ๊ทธ๋ƒฅ ์˜๋ฏธ๋งŒ ํ’€๋ฉด ๊ธ€์˜ ์งˆ๊ฐ์ด ์‚ฌ๋ผ์ง„๋‹ค. 3์›” 26์ผ์˜ ์ธ๊ฐ„-๊ธฐ๊ณ„ ๊ณต์ƒ, ๋‡Œ๊ฐ€์†Œ์„ฑ, ๋„คํŠธ์›Œํฌ ์—ญ๋Ÿ‰, ์‚ฌ์ด๋ณด๊ทธ์  ์กด์žฌ์—ญ๋Ÿ‰๋„ ๋„ˆ๋ฌด corporateํ•œ AI ๊ธ€์ฒ˜๋Ÿผ ๋งŒ๋“ค๋ฉด ์•ˆ ๋๋‹ค.

์ƒ์„ฑ ํ›„ batch sync, residue scan, whitespace check๋ฅผ ๋Œ๋ ธ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

๊ทธ ๋‹ค์Œ ๋ณ„๋„ GPT-5.5 reviewer๊ฐ€ 24๊ฐœ ํŒŒ์ผ์„ ๋‹ค์‹œ ๋ดค๋‹ค. reviewer๋Š” 13๊ฐœ ํŒŒ์ผ์„ ๊ณ ์ณค๋‹ค. ํ•ต์‹ฌ์€ 3์›” 21์ผ์˜ ์กฐ์–ด์™€ ๋†๋‹ด ์งˆ๊ฐ์„ ๋˜์‚ด๋ฆฌ๋Š” ์ผ์ด์—ˆ๋‹ค. ์†Œํ™•ํ–‰, ๋Œ€๊นจ๋‘๋ฅผ ์™„์ „ํžˆ ํ’€์–ด๋ฒ„๋ฆฌ์ง€ ์•Š๊ณ  sohwakhaeng, daekkaedu ๊ฐ™์€ romanized label์„ ๋ถ™์—ฌ, ์™ธ๊ตญ์–ด ๋…์ž๊ฐ€ ์˜๋ฏธ๋ฅผ ๋”ฐ๋ผ๊ฐ€๋ฉด์„œ๋„ ์›๋ฌธ์˜ ํŠน์ดํ•œ ์งˆ๊ฐ์„ ๋А๋‚„ ์ˆ˜ ์žˆ๊ฒŒ ํ–ˆ๋‹ค. ๋˜ ๊ตํšŒ ์—ฌํ–‰/ํ•˜๋ฃจ ์ž‘์—… ์ธ์ฆ ๋ชฉํ‘œ๊ฐ€ ์–ด์ƒ‰ํ•˜๊ฒŒ ๋ฒˆ์—ญ๋œ ๋ถ€๋ถ„์„ ๊ณ ์ณค๊ณ , ์ผ๋ณธ์–ด์—์„œ๋Š” ์•ˆ๋ชฉ์„ ็œผ็›ฎ์ด ์•„๋‹ˆ๋ผ ่ฆ‹่ญ˜์œผ๋กœ ๊ณ ์ณ ์‹œ๋Œ€๋ฅผ ๋ณด๋Š” ์‹๊ฒฌ์˜ ์˜๋ฏธ๋ฅผ ์‚ด๋ ธ๋‹ค.

๋ฆฌ๋ทฐ ํ›„ ๋‹ค์‹œ batch sync, residue scan, whitespace check๋ฅผ ๋Œ๋ ธ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

17์ฐจ batch๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 311/312, pending 1
ja       ready 72/312, pending 1, missing 239
zh-Hans  ready 72/312, pending 1, missing 239
es       ready 72/312, pending 1, missing 239
pt-BR    ready 72/312, pending 1, missing 239
fr       ready 72/312, pending 1, missing 239
id       ready 72/312, pending 1, missing 239

18์ฐจ batch๋Š” ๋„ํŒŒ๋ฏผ ๋””ํ†ก์Šค์™€ Secret Messenger ๊ฐœ๋ฐœ ์ดˆ์ž…์ด์—ˆ๋‹ค.

2025-03-31  ์‹ธ๊ตฌ๋ ค ๋„ํŒŒ๋ฏผ ๋””ํ†ก์Šค 1์ผ์ฐจ
2025-04-01  Secret Messenger ๊ฐœ๋ฐœ ์‹œ์ž‘
2025-04-03  No Pain, No Gain, No Game.
2025-04-13  ๋ˆ์ด ๊ฑธ๋ฆฐ ๋ฐ๋“œ๋ผ์ธ - ํšจ๊ณผ๋Š” ๊ต‰์žฅํ–ˆ๋‹ค!

์ด๋ฒˆ batch์—์„œ๋Š” ์ œํ’ˆ๋ช…๊ณผ ๋งํฌ ์ฒ˜๋ฆฌ๊ฐ€ ์ค‘์š”ํ–ˆ๋‹ค. Secret Messenger๋Š” ๋ฒˆ์—ญ ๋Œ€์ƒ์ด ์•„๋‹ˆ๋ผ ์ œํ’ˆ๋ช…์ด๊ณ , ๊ด€๋ จ devlog์˜ ๋‹ค๊ตญ์–ด counterpart๋Š” ์•„์ง ์—†์—ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๋ณด์ด๋Š” ๋งํฌ ๋ผ๋ฒจ์€ ๊ฐ ์–ธ์–ด๋กœ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ์˜ฎ๊ธฐ๋˜, href๋Š” ์กด์žฌํ•˜์ง€ ์•Š๋Š” /locale/devlog/...๋ฅผ ๋งŒ๋“ค์ง€ ์•Š๊ณ  ๊ธฐ์กด ํ•œ๊ตญ์–ด ๊ณต๊ฐœ URL์„ ์œ ์ง€ํ–ˆ๋‹ค. ์—†๋Š” ๋ฒˆ์—ญ ๋งํฌ๋ฅผ ๋งŒ๋“ค์–ด ๊นจ์ง„ ๋‚ด๋ถ€ ๋งํฌ๋ฅผ ๋Š˜๋ฆฌ๋Š” ๊ฒƒ๋ณด๋‹ค, ํ˜„์žฌ ์กด์žฌํ•˜๋Š” canonical ๋ฌธ์„œ๋กœ ๋ณด๋‚ด๋Š” ์ชฝ์ด ๋งž๋‹ค.

๋˜ 4์›” 13์ผ ๊ธ€์—๋Š” ADHD, ์ค‘๋… ๊ฒฝํ–ฅ, ๋„ํŒŒ๋ฏผ ๋ณด์ƒ ํšŒ๋กœ, ์ปค๋ฏธํŠธ๋จผํŠธ ์žฅ์น˜, ๋…ผ๋ฌธ ์ˆ˜์น˜ ๊ฐ™์€ ํ‘œํ˜„์ด ๋“ค์–ด๊ฐ”๋‹ค. ์ด ๋ถ€๋ถ„์€ ๋ฒˆ์—ญ์ด ์ž์นซ ์ƒˆ๋กœ์šด ์˜ํ•™ ์กฐ์–ธ์ด๋‚˜ ์ง„๋‹จ์ฒ˜๋Ÿผ ์ฝํžˆ๋ฉด ์•ˆ ๋œ๋‹ค. ์›๋ฌธ์ด ์ž๊ธฐ ์ดํ•ด์™€ ํ–‰๋™ ๊ตฌ์กฐ ์‹คํ—˜์œผ๋กœ ์“ฐ๊ณ  ์žˆ๋Š” ๋ฒ”์œ„๋ฅผ ๋„˜์ง€ ์•Š๋„๋ก ์กฐ์‹ฌํ•ด์•ผ ํ–ˆ๋‹ค.

์ƒ์„ฑ ํ›„ batch sync, residue scan, whitespace check๋ฅผ ๋Œ๋ ธ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

๊ทธ ๋‹ค์Œ ๋ณ„๋„ GPT-5.5 reviewer๊ฐ€ 24๊ฐœ ํŒŒ์ผ์„ ๋‹ค์‹œ ๋ดค๋‹ค. ์ด๋ฒˆ์—๋Š” reviewer๊ฐ€ ํŒŒ์ผ์„ ๊ณ ์น˜์ง€ ์•Š์•˜๋‹ค. ์ œํ’ˆ๋ช…, ๋งํฌ, ์ด๋ฏธ์ง€, ์ฒดํฌ๋ฆฌ์ŠคํŠธ, No Pain, No Gain, No Game., 4์›” 13์ผ์˜ ADHD/์ค‘๋…/๋„ํŒŒ๋ฏผ/์ด๋ก  ํ‘œํ˜„์ด ์›๋ฌธ ๋ฒ”์œ„ ์•ˆ์—์„œ ์œ ์ง€๋˜์–ด ์žˆ๋‹ค๊ณ  ํŒ๋‹จํ–ˆ๋‹ค. ์ƒ์„ฑ ๋‹จ๊ณ„์—์„œ๋ถ€ํ„ฐ Secret Messenger ๋งํฌ๋ฅผ ์–ต์ง€๋กœ locale URL๋กœ ๋ฐ”๊พธ์ง€ ์•Š์€ ๊ฒƒ๋„ ๊ทธ๋Œ€๋กœ ํ†ต๊ณผํ–ˆ๋‹ค.

๋ฆฌ๋ทฐ ํ›„ ๋‹ค์‹œ batch sync, residue scan, whitespace check๋ฅผ ๋Œ๋ ธ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

18์ฐจ batch๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 311/312, pending 1
ja       ready 76/312, pending 1, missing 235
zh-Hans  ready 76/312, pending 1, missing 235
es       ready 76/312, pending 1, missing 235
pt-BR    ready 76/312, pending 1, missing 235
fr       ready 76/312, pending 1, missing 235
id       ready 76/312, pending 1, missing 235

19์ฐจ batch๋Š” ์‹œ์Šคํ…œ๊ณผ ์ •์ฒด์„ฑ, ์ฒ ํ•™์  ์•…, AI ์ •์น˜ ์ƒ์ƒ์œผ๋กœ ์ด์–ด์กŒ๋‹ค.

2025-04-14  ์‹œ์Šคํ…œ, ๋ฒŒ๊ธˆ, ๊ทธ๋ฆฌ๊ณ  ๊พธ์ค€ํ•จ์˜ ํž˜
2025-04-15  ๋‚˜๋‹ค์šด ๊ฒŒ ๋ญ”๋ฐ?
2025-04-16  '๋ฌด์–ธ๊ฐ€์— ์ซ“๊ธฐ๋Š” ์ƒํƒœ'๋Š” '์•…'์ผ์ง€๋„?
2025-04-17  AI๊ฐ€ ์˜์•„์˜ฌ๋ฆฐ ์—˜๋ฆฌํŠธ ๋ฏผ์ฃผ์ฃผ์˜์˜ ์„œ๋ง‰...?

์ด๋ฒˆ batch๋Š” ์ œ๋ชฉ์˜ ๋ฌผ์Œํ‘œ์™€ ๋ง์ค„์ž„ํ‘œ๊ฐ€ ์ค‘์š”ํ–ˆ๋‹ค. ํŠนํžˆ 4์›” 17์ผ ๊ธ€์€ ์—˜๋ฆฌํŠธ ๋ฏผ์ฃผ์ฃผ์˜๋ฅผ ํ™•์ •์ ์œผ๋กœ ์ฃผ์žฅํ•˜๋Š” ๊ธ€์ด๋ผ๊ธฐ๋ณด๋‹ค, AI ๊ธฐ๋ฐ˜ ํŒฉํŠธ์ฒดํฌ์™€ ํˆฌํ‘œ ์ž๊ฒฉ์„ ๋‘˜๋Ÿฌ์‹ผ ๊ฑฐ์นœ ์ƒ์ƒ๊ณผ ๋ฐ˜๋ก ์„ ํ•จ๊ป˜ ๋ถ™์—ฌ๋ณด๋Š” ๊ธ€์ด๋‹ค. ๊ทธ๋ž˜์„œ ๋ฒˆ์—ญ์—์„œ๋„ ํ™•์ •์  ์ •์น˜ ์„ ์–ธ์ฒ˜๋Ÿผ ๊ตณํžˆ์ง€ ์•Š๊ณ , ...?์˜ ๋ถˆ์•ˆ์ •ํ•œ ์‚ฌ์œ  ์ƒํƒœ๋ฅผ ์‚ด๋ ค์•ผ ํ–ˆ๋‹ค.

์ƒ์„ฑ ํ›„ batch sync, residue scan, whitespace check๋ฅผ ๋Œ๋ ธ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

๊ทธ ๋‹ค์Œ ๋ณ„๋„ GPT-5.5 reviewer๊ฐ€ 24๊ฐœ ํŒŒ์ผ์„ ๋‹ค์‹œ ๋ดค๋‹ค. reviewer๋Š” 3๊ฐœ ํŒŒ์ผ์„ ๊ณ ์ณค๋‹ค. ์ผ๋ณธ์–ด์—์„œ๋Š” AI๊ฐ€ ์ธ๊ฐ„๋ณด๋‹ค ํŒฉํŠธ์ฒดํฌ๋ฅผ ์ž˜ํ•  ์ˆ˜๋ฐ–์— ์—†๋‹ค๋Š” ๋ฌธ์žฅ์˜ modal ๋‰˜์•™์Šค๋ฅผ ๋‹ค๋“ฌ์—ˆ๊ณ , big-data-based๊ฐ€ ใƒ“ใƒƒใ‚ฐใƒ‡ใƒผใ‚ฟใƒ™ใƒผใ‚น์ฒ˜๋Ÿผ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ž์ฒด๋กœ ์˜คํ•ด๋  ์ˆ˜ ์žˆ๋˜ ๋ถ€๋ถ„์„ ใƒ“ใƒƒใ‚ฐใƒ‡ใƒผใ‚ฟใซๅŸบใฅใ์œผ๋กœ ๊ณ ์ณค๋‹ค. ์ŠคํŽ˜์ธ์–ด์™€ ํ”„๋ž‘์Šค์–ด์—์„œ๋Š” 4์›” 15์ผ์˜ โ€œ์ƒ๋Œ€์—๊ฒŒ ํœ˜๋‘˜๋ฆฌ์ง€ ์•Š๊ฒ ๋‹คโ€๋Š” ๋ฌธ์žฅ์ด ์ž๊ธฐ ๊ฒฐ์‹ฌ์˜ ๋ฐฉํ–ฅ์„ ์žƒ์ง€ ์•Š๋„๋ก ๋‹ค์‹œ ์ •๋ฆฌํ–ˆ๋‹ค.

๋ฆฌ๋ทฐ ํ›„ ๋‹ค์‹œ batch sync, residue scan, whitespace check๋ฅผ ๋Œ๋ ธ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

19์ฐจ batch๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 311/312, pending 1
ja       ready 80/312, pending 1, missing 231
zh-Hans  ready 80/312, pending 1, missing 231
es       ready 80/312, pending 1, missing 231
pt-BR    ready 80/312, pending 1, missing 231
fr       ready 80/312, pending 1, missing 231
id       ready 80/312, pending 1, missing 231

20์ฐจ batch๋Š” ์ •์‹ ๊ฑด๊ฐ• ๊ธฐ๋ก๊ณผ ์ผ์ƒ ํšŒ๋ณต, ๊ทธ๋ฆฌ๊ณ  ์ž๊ธฐ ์ดํ•ด์˜ ๊ธฐ๋ก์œผ๋กœ ์ด์–ด์กŒ๋‹ค.

2025-04-18  ๋‚ด๊ฐ€ ์‚ด์•„์˜จ 20๋Œ€๋Š”, ์•„๋ฌด๋ž˜๋„ ์ง€์˜ฅ์ด์—ˆ๋˜ ๊ฒƒ ๊ฐ™๋‹ค
2025-04-22  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #78: ์ค‘๋…์—์„œ ๋ฒ—์–ด๋‚˜๊ธฐ
2025-04-23  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #79: Adult ADHD์—์„œ ํšŒ๋ณต์œผ๋กœ
2025-04-24  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #80: ๋‹ค์‹œ ๋ฃจํ‹ด์œผ๋กœ

์ด batch๋Š” ๋‹จ์ˆœํ•œ ์ผ๊ธฐ ๋ฒˆ์—ญ์ฒ˜๋Ÿผ ๋ณด์ด์ง€๋งŒ ์กฐ์‹ฌํ•  ์ง€์ ์ด ๋งŽ์•˜๋‹ค. ADHD, ์กฐ์šธ์ฆ, ์•ฝ๋ฌผ์น˜๋ฃŒ, ์ •์‹ ๊ฑด๊ฐ•์˜ํ•™๊ณผ, ํšŒ๋ณต ๊ฐ™์€ ํ‘œํ˜„์ด ๋“ค์–ด๊ฐ€๋ฉด ๋ฒˆ์—ญ์ด ์‰ฝ๊ฒŒ ์ง„๋‹จ๋ฌธ์ด๋‚˜ ์กฐ์–ธ๋ฌธ์ฒ˜๋Ÿผ ๊ตณ์–ด์งˆ ์ˆ˜ ์žˆ๋‹ค. ์›๋ฌธ์€ ์–ด๋””๊นŒ์ง€๋‚˜ ์ž๊ธฐ ๊ธฐ๋ก์ด๊ณ , ์น˜๋ฃŒ๋ฅผ ์ผ๋ฐ˜ํ™”ํ•˜๋Š” ๊ธ€์ด ์•„๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๋ณ‘๋ช…๊ณผ ์น˜๋ฃŒ ํ‘œํ˜„์€ ์ •ํ™•ํ•˜๊ฒŒ ์˜ฎ๊ธฐ๋˜, ๊ธ€์˜ ์ฃผ์–ด๊ฐ€ ๊ณ„์† ๋‚˜์—๊ฒŒ ๋จธ๋ฌผ๋„๋ก ํ–ˆ๋‹ค.

์ƒ์„ฑ ํ›„ scoped sync์™€ residue scan์„ ๋Œ๋ ธ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

20์ฐจ๋ถ€ํ„ฐ๋Š” ๊ฒ€์ฆ ๋ฐฉ์‹์„ ๋‹ค์‹œ ์ž˜๋ผ๋ƒˆ๋‹ค. ์ด์ „๊นŒ์ง€๋Š” batch๋งˆ๋‹ค ์ „์ฒด Jekyll build๋ฅผ ๋ถ™์˜€๋Š”๋ฐ, ๋ฒˆ์—ญ ํŒŒ์ผ๋งŒ ์ถ”๊ฐ€ํ•˜๋Š” ๋‹จ๊ณ„์—์„œ๋Š” ๊ทธ๊ฒŒ ๊ณผํ•œ ๊ฒ€์ฆ์ด์—ˆ๋‹ค. ๊ตฌ์กฐ ๋ณ€๊ฒฝ ๋‹จ๊ณ„์—์„œ ํ•„์š”ํ–ˆ๋˜ full build ์Šต๊ด€์„ ๋ฒˆ์—ญ ์ƒ์„ฑ ๋‹จ๊ณ„๊นŒ์ง€ ๋Œ๊ณ  ๊ฐ„ ์…ˆ์ด๋‹ค. ์ด๋•Œ๋ถ€ํ„ฐ translation-only batch์—์„œ๋Š” post_sync, residue scan, front matter/permalink, localized-link, Liquid marker, coverage report๋งŒ ๋Œ๋ฆฌ๊ณ , full build๋Š” ์ „์ฒด ์ž‘์—… ์ข…๋ฃŒ ํ›„๋กœ ๋ฏธ๋ฃจ๋Š” ๊ธฐ์ค€์„ ์„ธ์› ๋‹ค.

21์ฐจ batch๋Š” 4์›” ๋ง๊ณผ 5์›” ์ดˆ ๋ฃจํ‹ด ๊ธฐ๋ก์ด์—ˆ๋‹ค.

2025-04-28  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #80: ์ง€๊ธˆ ์ด ์ˆœ๊ฐ„์˜ ํ–‰๋ณต
2025-04-29  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #81: ๋‹ค ๋‚ด ํƒ“์ด์˜ค
2025-04-30  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #82: ์ˆจ ๊ณ ๋ฅด๊ธฐ
2025-05-12  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #83: ๊ฐ์„ฑ(Why)๊ณผ ์ฝ”์นญ(How)์˜ ๊ท ํ˜•

์ด๋ฒˆ์—๋Š” 6๊ฐœ ์–ธ์–ด worker๋ฅผ ๋‹ค์‹œ ๋ณ‘๋ ฌ๋กœ ๋Œ๋ฆฌ๋˜, ๊ฐ worker๊ฐ€ ์ž๊ธฐ locale ํด๋”๋งŒ ์“ฐ๋„๋ก ๋ฒ”์œ„๋ฅผ ๋ถ„๋ฆฌํ–ˆ๋‹ค. ์ค‘๊ฐ„์— ์ŠคํŽ˜์ธ์–ด์™€ ํ”„๋ž‘์Šค์–ด worker๊ฐ€ locale: es-ES, locale: fr-FR๋ฅผ ๋„ฃ์€ ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๋Š”๋ฐ, _data/locales.yml์˜ ์‹ค์ œ ๊ฐ’์€ es, fr์˜€๋‹ค. ์ด๊ฑด full build ์—†์ด front matter ํ™•์ธ๊ณผ scoped sync๋กœ ์žก๊ณ  ๋ฐ”๋กœ ๊ณ ์ณค๋‹ค.

21์ฐจ scoped sync ๊ฒฐ๊ณผ๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

21์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 311/312, pending 1
ja       ready 88/312, pending 1, missing 223
zh-Hans  ready 88/312, pending 1, missing 223
es       ready 88/312, pending 1, missing 223
pt-BR    ready 88/312, pending 1, missing 223
fr       ready 88/312, pending 1, missing 223
id       ready 88/312, pending 1, missing 223

22์ฐจ batch๋Š” 5์›” ์ค‘์ˆœ ๋ฃจํ‹ด ์žฌ์ •๋น„์™€ 5์›” 27์ผ ๊ธฐ๋ก์œผ๋กœ ์ด์–ด์กŒ๋‹ค.

2025-05-13  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #84: ๋‚ด๊ฐ€ ์„  ์ž๋ฆฌ์—์„œ ๋‹ค์‹œ ์‹œ์ž‘
2025-05-14  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #85: ๋ฃจํ‹ด์€ ์‹คํŒจํ•ด๋„ ๋‹ค์‹œ ์„ธ์šฐ๋ฉด ๋œ๋‹ค
2025-05-15  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #86: ํ”๋“ค๋ฆฌ๋Š” ๋ฃจํ‹ด ์•ˆ์—์„œ ๋ถ™์žก์€ ๊ฒƒ
2025-05-27  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #87: ๋‹ค์‹œ ๊ธฐ๋ก์œผ๋กœ ๋Œ์•„์˜ค๊ธฐ

์ด๋ฒˆ batch์—์„œ๋„ full build๋Š” ๋Œ๋ฆฌ์ง€ ์•Š์•˜๋‹ค. 6๊ฐœ ์–ธ์–ด worker๊ฐ€ ์ž๊ธฐ locale ํด๋”๋งŒ ๋งก์•˜๊ณ , ์ƒ์„ฑ ํ›„ scoped sync์™€ residue scan, locale front matter ํ™•์ธ๋งŒ ์ง„ํ–‰ํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

22์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 311/312, pending 1
ja       ready 92/312, pending 1, missing 219
zh-Hans  ready 92/312, pending 1, missing 219
es       ready 92/312, pending 1, missing 219
pt-BR    ready 92/312, pending 1, missing 219
fr       ready 92/312, pending 1, missing 219
id       ready 92/312, pending 1, missing 219

23์ฐจ batch๋Š” ๋„ค์ด๋ฒ„ ๋ธ”๋กœ๊ทธ ์‚ฌ์ดํŠธ๋งต๊ณผ 5์›” ๋ง Daily Review์˜€๋‹ค.

2025-05-27  ๋„ค์ด๋ฒ„ ๋ธ”๋กœ๊ทธ๋กœ ์ด์‚ฌ ๊ฐ”์Šต๋‹ˆ๋‹ค. (+๋„ค์ด๋ฒ„ ์‚ฌ์ดํŠธ๋งต)
2025-05-28  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #88
2025-05-29  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #89
2025-05-30  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #90

์ด๋ฒˆ batch์—๋Š” ํŠน์ˆ˜ permalink๊ฐ€ ์žˆ์—ˆ๋‹ค. 2025-05-27-naver-sitemap.md๋Š” ๋‚ ์งœ URL์ด ์•„๋‹ˆ๋ผ /daily-review/naver-sitemap/ ํ˜•ํƒœ๋กœ ๊ณต๊ฐœ๋˜๋Š” ๊ธ€์ด๋‹ค. ๊ทธ๋ž˜์„œ ์–ธ์–ด๋ณ„ worker์—๊ฒŒ ์ด ํŒŒ์ผ๋งŒ /locale/daily-review/naver-sitemap/์œผ๋กœ ๋งŒ๋“ค๋„๋ก ๋”ฐ๋กœ ์ง€์‹œํ–ˆ๋‹ค. scoped sync์™€ permalink grep์œผ๋กœ ํ™•์ธํ–ˆ๊ณ , ํŠน์ˆ˜ URL์€ ์ •์ƒ์ ์œผ๋กœ ๋งž์•˜๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

23์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 311/312, pending 1
ja       ready 96/312, pending 1, missing 215
zh-Hans  ready 96/312, pending 1, missing 215
es       ready 96/312, pending 1, missing 215
pt-BR    ready 96/312, pending 1, missing 215
fr       ready 96/312, pending 1, missing 215
id       ready 96/312, pending 1, missing 215

24์ฐจ batch๋Š” 5์›” ๋งˆ์ง€๋ง‰ ๋‚ ๊ณผ 6์›” ์ดˆ ๋ฃจํ‹ด ๊ธฐ๋ก์ด์—ˆ๋‹ค.

2025-05-31  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #91: ๋ชฉํ‘œ: 1/1, ํ•  ์ผ: 6/6, ์Šต๊ด€: 6/6
2025-06-01  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #92: ๋ชฉํ‘œ: 1/1, ํ•  ์ผ: 3/3, ์Šต๊ด€: 2/2
2025-06-02  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #93: ๋ชฉํ‘œ: 1/1, ํ•  ์ผ: 2/2, ์Šต๊ด€: 6/6
2025-06-03  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #94: ๋ชฉํ‘œ: 1/1, ํ•  ์ผ: 1/1, ์Šต๊ด€: 6/6

์ด๋ฒˆ batch๋Š” ๊ตฌ์กฐ์ ์œผ๋กœ๋Š” ๋น„๊ต์  ๋‹จ์ˆœํ–ˆ๋‹ค. ๋‚ ์งœ permalink์˜€๊ณ , ์ด๋ฏธ์ง€/๋งํฌ/์ฒดํฌ๋ฐ•์Šค/raw ๋ธ”๋ก๋งŒ ์ž˜ ๋ณด์กดํ•˜๋ฉด ๋๋‹ค. 6๊ฐœ ์–ธ์–ด ๋ชจ๋‘ scoped sync์™€ residue scan์„ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

24์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 311/312, pending 1
ja       ready 100/312, pending 1, missing 211
zh-Hans  ready 100/312, pending 1, missing 211
es       ready 100/312, pending 1, missing 211
pt-BR    ready 100/312, pending 1, missing 211
fr       ready 100/312, pending 1, missing 211
id       ready 100/312, pending 1, missing 211

๊ฐ ์–ธ์–ด๊ฐ€ 100๊ฐœ ready๋ฅผ ๋„˜์—ˆ๋‹ค. ์ด ์‹œ์ ์—์„œ ์ค‘์š”ํ•œ ๊ฑด ์†๋„๋ณด๋‹ค ๋ฆฌ๋“ฌ์ด๋‹ค. full build๋ฅผ ๋Š์–ด๋‚ด์ž batch ํ•˜๋‚˜์˜ ํ”ผ๋กœ๋„๊ฐ€ ํ™• ์ค„์—ˆ๋‹ค. ์ด์ œ๋Š” ๋ฒˆ์—ญ ์ƒ์„ฑ, scoped sync, residue scan, coverage ํ™•์ธ์ด๋ผ๋Š” ์ž‘์€ ๋ฃจํ”„๊ฐ€ ์œ ์ง€๋œ๋‹ค.

25์ฐจ batch๋Š” 6์›” 4์ผ๋ถ€ํ„ฐ 7์ผ๊นŒ์ง€์˜ ๊ธฐ๋ก์ด์—ˆ๋‹ค.

2025-06-04  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #95
2025-06-05  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #96
2025-06-06  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #97
2025-06-07  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #98

์ด๋ฒˆ batch๋„ ๊ฐ™์€ ๋ฃจํ”„๋กœ ์ฒ˜๋ฆฌํ–ˆ๋‹ค. 6๊ฐœ ์–ธ์–ด worker๊ฐ€ ๊ฐ์ž์˜ locale ํด๋”๋งŒ ์ˆ˜์ •ํ–ˆ๊ณ , ์ƒ์„ฑ ํ›„ scoped sync์™€ residue scan๋งŒ ๋Œ๋ ธ๋‹ค. full build๋Š” ๋Œ๋ฆฌ์ง€ ์•Š์•˜๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

25์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 311/312, pending 1
ja       ready 104/312, pending 1, missing 207
zh-Hans  ready 104/312, pending 1, missing 207
es       ready 104/312, pending 1, missing 207
pt-BR    ready 104/312, pending 1, missing 207
fr       ready 104/312, pending 1, missing 207
id       ready 104/312, pending 1, missing 207

26์ฐจ batch๋Š” 6์›” 8์ผ๋ถ€ํ„ฐ 11์ผ๊นŒ์ง€์˜ ๊ธฐ๋ก์ด์—ˆ๋‹ค.

2025-06-08  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #99: ๊ฒŒ์ž„/์œ ํŠœ๋ธŒ ๋Œ€์ฒด์žฌ ํ•„์š”
2025-06-09  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #100: ์ปจ๋””์…˜ ํšŒ๋ณต ์™„๋ฃŒ
2025-06-10  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #101: ํญ์‹ ๋ฐฉ์ง€ ๋ฃจํ‹ด ์‹œ์Šคํ…œ ์ถ”๊ฐ€
2025-06-11  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #102: GitHub Copilot Agent๋ฅผ ํ™œ์šฉํ•œ ๋ฐ”์ด๋ธŒ ์ฝ”๋”ฉ ์ž…๋ฌธ

์ด๋ฒˆ batch์—์„œ๋Š” ์ œํ’ˆ๋ช…๊ณผ ๊ธฐ์ˆ ๋ช…์„ ๊ฑด๋“œ๋ฆฌ์ง€ ์•Š๋Š” ๊ฒŒ ์ค‘์š”ํ–ˆ๋‹ค. YouTube, GitHub Copilot Agent, Agent, ๋ฃจํ‹ด ์‹œ์Šคํ…œ ๊ฐ™์€ ๋ง์€ ๊ฐ ์–ธ์–ด์—์„œ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ์„ค๋ช…ํ•˜๋˜, ์ œํ’ˆ๋ช…๊ณผ ํ•ต์‹ฌ ๊ธฐ์ˆ ๋ช…์€ ๋ณด์กดํ–ˆ๋‹ค.

๊ฒ€์ฆ์€ ์—ฌ์ „ํžˆ scoped sync์™€ residue scan๋งŒ ๋Œ๋ ธ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

26์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 311/312, pending 1
ja       ready 108/312, pending 1, missing 203
zh-Hans  ready 108/312, pending 1, missing 203
es       ready 108/312, pending 1, missing 203
pt-BR    ready 108/312, pending 1, missing 203
fr       ready 108/312, pending 1, missing 203
id       ready 108/312, pending 1, missing 203

27์ฐจ batch๋Š” 6์›” 12์ผ๋ถ€ํ„ฐ 15์ผ๊นŒ์ง€์˜ ๊ธฐ๋ก์ด์—ˆ๋‹ค.

2025-06-12  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #103: ๋ฐ”์ด๋ธŒ ์ฝ”๋”ฉ ์ž…๋•์ค‘
2025-06-13  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #104: ๋ฐ”์œ ํ•˜๋ฃจ, ๊ธฐ์œ ํ•˜๋ฃจ
2025-06-14  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #105: ํ•œ ๋ฐ•์ž ์‰ฌ๊ณ 
2025-06-15  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #106: ์‹ธ๊ตฌ๋ ค ๋„ํŒŒ๋ฏผ ๊ณผ์ค‘๋…, ์ง„์‹ค๋œ ๊ธฐ๋ก ์›์น™ ์ค€์ˆ˜

vibe coding, cheap dopamine, ๊ธฐ๋ก ์›์น™ ๊ฐ™์€ ํ‘œํ˜„์€ ๊ฐ ์–ธ์–ด์—์„œ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ์˜ฎ๊ธฐ๋˜, ์›๋ฌธ์ด ๊ฐ€์ง„ ์ž๊ธฐ ๋ฐ˜์„ฑ์˜ ๊ฑฐ์นœ ๊ฒฐ์€ ๋„ˆ๋ฌด ๋ถ€๋“œ๋Ÿฝ๊ฒŒ ๋งŒ๋“ค์ง€ ์•Š๋„๋ก ํ–ˆ๋‹ค. ์ด๋ฒˆ batch๋„ scoped sync์™€ residue scan๋งŒ์œผ๋กœ ๊ฒ€์ฆํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

27์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 311/312, pending 1
ja       ready 112/312, pending 1, missing 199
zh-Hans  ready 112/312, pending 1, missing 199
es       ready 112/312, pending 1, missing 199
pt-BR    ready 112/312, pending 1, missing 199
fr       ready 112/312, pending 1, missing 199
id       ready 112/312, pending 1, missing 199

28์ฐจ batch๋Š” 6์›” 16์ผ๋ถ€ํ„ฐ 19์ผ๊นŒ์ง€์˜ ๊ธฐ๋ก์ด์—ˆ๋‹ค.

2025-06-16  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #107: ์‹œ๊ฐ„ ์••๋ฐ•์˜ ํ•„์š”์„ฑ, ์†Œ์…œ๋ง ์ž…๋ฌธ
2025-06-17  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #108: ๊ต๋ฅ˜๋ฅผ ์œ„ํ•œ ์™ธ์ถœ์˜ ๋ฃจํ‹ดํ™”
2025-06-18  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #109: ์˜ค๋Š˜์˜ ๋ชฉํ‘œ ๋‚œ์ด๋„ ํ•˜ํ–ฅ ์กฐ์ •
2025-06-19  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #110: ์š”์ฆ˜ ๋„ˆ๋ฌด ์ž์ฃผ ์ง€์นœ๋‹ค

์ด๋ฒˆ batch๋Š” ์‹œ๊ฐ„ ์••๋ฐ•, ์†Œ์…œ๋ง, ์™ธ์ถœ์˜ ๋ฃจํ‹ดํ™”, ์ž์ฃผ ์ง€์น˜๋Š” ์ƒํƒœ ๊ฐ™์€ ํ‘œํ˜„์ด ์ค‘์‹ฌ์ด์—ˆ๋‹ค. ๋ฒˆ์—ญ์ด ๋„ˆ๋ฌด ๊น”๋”ํ•œ ์ž๊ธฐ๊ณ„๋ฐœ ๋ฌธ์žฅ์œผ๋กœ ๋ฐ”๋€Œ๋ฉด ์›๋ฌธ์˜ ํ”ผ๋กœ์™€ ์ž๊ธฐ ๊ด€์ฐฐ์ด ์‚ฌ๋ผ์ง„๋‹ค. ๊ทธ๋ž˜์„œ ๊ฐ ์–ธ์–ด worker์—๊ฒŒ rough self-observation tone์„ ์œ ์ง€ํ•˜๋ผ๊ณ  ์ง€์‹œํ–ˆ๋‹ค.

๊ฒ€์ฆ ๊ฒฐ๊ณผ๋Š” ๊ฐ™์•˜๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

28์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 311/312, pending 1
ja       ready 116/312, pending 1, missing 195
zh-Hans  ready 116/312, pending 1, missing 195
es       ready 116/312, pending 1, missing 195
pt-BR    ready 116/312, pending 1, missing 195
fr       ready 116/312, pending 1, missing 195
id       ready 116/312, pending 1, missing 195

29์ฐจ batch๋Š” 6์›” 20์ผ๋ถ€ํ„ฐ 23์ผ๊นŒ์ง€์˜ ๊ธฐ๋ก์ด์—ˆ๋‹ค.

2025-06-20  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #111: ์ ์‘๋ ฅ๊ณผ ํšŒ๋ณต ํƒ„๋ ฅ์„ฑ์˜ ์ค‘์š”์„ฑ
2025-06-21  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #112: ๋˜๋‹ค์‹œ ์ข‹์€ ๊ธฐํšŒ, ์‹ฌ์‚ฌ์ˆ™๊ณ 
2025-06-22  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #113: ๋‚˜๋Š” ๋‚˜์˜ ๊ธธ์„ ๊ฐ„๋‹ค.
2025-06-23  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #114: ์šฐ์—ฐํ•œ ๋งŒ๋‚จ, ๋ฏธํŒ…, ๊ธฐํšŒ

์ด๋ฒˆ batch๋Š” ๊ธฐํšŒ ์•ž์—์„œ ๋“ค๋œจ์ง€ ์•Š๊ณ  ์‹ฌ์‚ฌ์ˆ™๊ณ ํ•˜๋Š” ํ†ค, ๊ทธ๋ฆฌ๊ณ  โ€œ๋‚˜๋Š” ๋‚˜์˜ ๊ธธ์„ ๊ฐ„๋‹คโ€๋Š” ๋ฌธ์žฅ์˜ ๋‹จ๋‹จํ•จ์„ ์œ ์ง€ํ•˜๋Š” ์ชฝ์ด ์ค‘์š”ํ–ˆ๋‹ค. ์ƒ์„ฑ ํ›„ scoped sync์™€ residue scan์„ ๋Œ๋ ธ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

29์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 311/312, pending 1
ja       ready 120/312, pending 1, missing 191
zh-Hans  ready 120/312, pending 1, missing 191
es       ready 120/312, pending 1, missing 191
pt-BR    ready 120/312, pending 1, missing 191
fr       ready 120/312, pending 1, missing 191
id       ready 120/312, pending 1, missing 191

30์ฐจ batch๋Š” 6์›” 24์ผ๋ถ€ํ„ฐ 27์ผ๊นŒ์ง€์˜ ๊ธฐ๋ก์ด์—ˆ๋‹ค.

2025-06-24  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #115: ๋ฃจํ‹ด ํšŒ๋ณต. ์ฒœ์ฒœํžˆ, ๊พธ์ค€ํžˆ
2025-06-25  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #116: ๋ฐ”์ด๋ธŒ ์ฝ”๋”ฉ ํ•œ๊ณ„์  ๋ด‰์ฐฉ
2025-06-26  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #117: ๋ฐ”์จ์€ ์ผ์ข…์˜ ์•…์ผ์ง€๋„
2025-06-27  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #118: ์ด๋Œ€๋กœ. ๊พธ์ค€ํžˆ. ๊ณ„์†.

์ด๋ฒˆ batch๋Š” ์งง์€ ๋ฆฌ๋“ฌ์„ ์‚ด๋ฆฌ๋Š” ๊ฒŒ ์ค‘์š”ํ–ˆ๋‹ค. ํŠนํžˆ โ€œ์ด๋Œ€๋กœ. ๊พธ์ค€ํžˆ. ๊ณ„์†.โ€์€ ์˜๋ฏธ๋ณด๋‹ค ํ˜ธํก์ด ๋จผ์ € ์˜ค๋Š” ์ œ๋ชฉ์ด๋‹ค. ๋˜ โ€œ๋ฐ”์จ์€ ์ผ์ข…์˜ ์•…์ผ์ง€๋„โ€๋Š” ํ™•์ •์  ์„ ์–ธ์ด๋ผ๊ธฐ๋ณด๋‹ค ์‚ฌ์œ ์˜ ํ˜•ํƒœ๋ผ, ๋ฒˆ์—ญ์—์„œ๋„ ๋„ˆ๋ฌด ๋‹จ์ •์ ์œผ๋กœ ๊ตณํžˆ์ง€ ์•Š๋„๋ก ํ–ˆ๋‹ค.

๊ฒ€์ฆ ๊ฒฐ๊ณผ๋Š” ๊ทธ๋Œ€๋กœ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

30์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 311/312, pending 1
ja       ready 124/312, pending 1, missing 187
zh-Hans  ready 124/312, pending 1, missing 187
es       ready 124/312, pending 1, missing 187
pt-BR    ready 124/312, pending 1, missing 187
fr       ready 124/312, pending 1, missing 187
id       ready 124/312, pending 1, missing 187

31์ฐจ batch๋Š” 6์›” ๋ง์—์„œ 7์›” ์ดˆ๋กœ ๋„˜์–ด๊ฐ€๋Š” ๊ธฐ๋ก์ด์—ˆ๋‹ค.

2025-06-28  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #119: ๋ฐค์ƒ˜ ํ›„์œ ์ฆ, ๊ทธ๋Ÿฌ๋‚˜ ๋งŒ์กฑ์Šค๋Ÿฐ
2025-06-29  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #120: ๋ฉ˜ํ† ์˜ ์ค‘์š”์„ฑ
2025-06-30  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #121: ์‚ฌ๋žŒ๊ณผ์˜ ํœด์‹, ์—๋„ˆ์ง€ ๊ณ ๊ฐˆ
2025-07-01  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #122: ์˜์š• ๊ณผ๋‹ค, ์ž‘์€ ์‹œ์ž‘์˜ ์ค‘์š”์„ฑ

์ด๋ฒˆ batch๋Š” ์›” ๊ฒฝ๊ณ„๊ฐ€ ์„ž์—ฌ ์žˆ์—ˆ๋‹ค. ๋ฐค์ƒ˜ ๋’ค์˜ ๋งŒ์กฑ๊ฐ, ๋ฉ˜ํ† ์˜ ํ•„์š”, ์‚ฌ๋žŒ๊ณผ ์‰ฌ์—ˆ๋Š”๋ฐ๋„ ์—๋„ˆ์ง€๊ฐ€ ๋น ์ง€๋Š” ๊ฐ๊ฐ, ์˜์š•์ด ๋„ˆ๋ฌด ์•ž์„ค ๋•Œ ์ž‘์€ ์‹œ์ž‘์œผ๋กœ ๋‚ฎ์ถ”๋Š” ํŒ๋‹จ์ด ์ด์–ด์กŒ๋‹ค. ๋ฒˆ์—ญ์—์„œ๋Š” โ€œ์„ฑ์žฅ ๊ธฐ๋กโ€์ฒ˜๋Ÿผ ๋ฒˆ๋“ฏํ•˜๊ฒŒ ํฌ์žฅํ•˜์ง€ ์•Š๊ณ , ๊ทธ๋‚ ์˜ ํ”ผ๋กœ์™€ ํŒ๋‹จ์ด ๊ฐ™์ด ๋‚จ๋„๋ก ํ–ˆ๋‹ค.

scoped sync ๊ฒฐ๊ณผ๋Š” ๊ทธ๋Œ€๋กœ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

31์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 127/311, pending 1, missing 183
zh-Hans  ready 127/311, pending 1, missing 183
es       ready 127/311, pending 1, missing 183
pt-BR    ready 127/311, pending 1, missing 183
fr       ready 127/311, pending 1, missing 183
id       ready 127/311, pending 1, missing 183

32์ฐจ batch๋Š” 7์›” 2์ผ๋ถ€ํ„ฐ 5์ผ๊นŒ์ง€์˜€๋‹ค.

2025-07-02  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #123: ์žฌ๋ฐŒ์œผ๋ฉด ๊ทธ๋ƒฅ ํ•˜๊ฒŒ ๋œ๋‹ค
2025-07-03  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #124: ์‚ถ์˜ ๋ฐ€๋„, ์‚ถ์˜ ํŒจํ„ด
2025-07-04  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #125: ํ•œ๊ฐ• ๋ผ์ด๋”ฉ
2025-07-05  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #126: ์ธ์ƒ RPG ํ™ˆํŽ˜์ด์ง€ ์ œ์ž‘ ์™„๋ฃŒ

์ด๋ฒˆ batch๋Š” ์žฌ๋ฏธ๊ฐ€ ๋ถ™์œผ๋ฉด ์–ต์ง€ ์—†์ด ํ•˜๊ฒŒ ๋œ๋‹ค๋Š” ๊ฐ๊ฐ, ์‚ถ์˜ ๋ฐ€๋„์™€ ํŒจํ„ด, ํ•œ๊ฐ• ๋ผ์ด๋”ฉ, ์ธ์ƒ RPG ํ™ˆํŽ˜์ด์ง€ ์ œ์ž‘ ์™„๋ฃŒ๊ฐ€ ์ด์–ด์กŒ๋‹ค. ํŠนํžˆ โ€œ์žฌ๋ฐŒ์œผ๋ฉด ๊ทธ๋ƒฅ ํ•˜๊ฒŒ ๋œ๋‹คโ€๋Š” ๋ฌธ์žฅ์€ ์ƒ์‚ฐ์„ฑ ์กฐ์–ธ์ฒ˜๋Ÿผ ๋ฒˆ์—ญํ•˜๋ฉด ํž˜์ด ๋น ์ง„๋‹ค. ๊ทธ๋ƒฅ ํ•˜๊ฒŒ ๋˜๋Š” ๊ฐ๊ฐ ์ž์ฒด๊ฐ€ ํ•ต์‹ฌ์ด๋ผ, ๊ฐ ์–ธ์–ด ๋ฒˆ์—ญ์—์„œ๋„ ๋„ˆ๋ฌด ์„ค๋ช…์ ์ธ ๋ฌธ์žฅ์œผ๋กœ ๋Š˜๋ฆฌ์ง€ ์•Š๊ฒŒ ํ–ˆ๋‹ค.

ํ†ตํ•ฉ scoped sync์™€ residue scan ๊ฒฐ๊ณผ๋Š” ๋ฌธ์ œ ์—†์—ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

32์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 131/311, pending 1, missing 179
zh-Hans  ready 131/311, pending 1, missing 179
es       ready 131/311, pending 1, missing 179
pt-BR    ready 131/311, pending 1, missing 179
fr       ready 131/311, pending 1, missing 179
id       ready 131/311, pending 1, missing 179

33์ฐจ batch๋Š” 7์›” 6์ผ๋ถ€ํ„ฐ 9์ผ๊นŒ์ง€์˜€๋‹ค.

2025-07-06  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #127: ์˜ค๋Š˜์˜ ๋ชฉํ‘œ, ์˜ค๋Š˜ ํ•˜๊ณ  ์‹ถ์€ ๊ฒƒ
2025-07-07  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #128: ๋ชฉํ‘œ์— ๋ˆˆ๋จผ ๊ดด๋ฌผ
2025-07-08  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #129: ๋ฐ”์ด๋ธŒ์ฝ”๋”ฉ์˜ ๋‹ค์–‘ํ•œ ์ด์Šˆ
2025-07-09  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #130: ์ผ๋‹จ์€ ๋ฐ”์ด๋ธŒ ์ฝ”๋”ฉ์— ์ง‘์ค‘

์ด๋ฒˆ batch๋Š” ๋ชฉํ‘œ์™€ ์š•๋ง์„ ๊ตฌ๋ถ„ํ•˜๋Š” ํ๋ฆ„, ๋ชฉํ‘œ์— ๋ˆˆ๋จผ ์ƒํƒœ์— ๋Œ€ํ•œ ๊ฒฝ๊ณ„, ๋ฐ”์ด๋ธŒ์ฝ”๋”ฉ์˜ ๋ฌธ์ œ์ , ๊ทธ๋ž˜๋„ ์ผ๋‹จ ๋ฐ”์ด๋ธŒ ์ฝ”๋”ฉ์— ์ง‘์ค‘ํ•˜๊ฒ ๋‹ค๋Š” ํŒ๋‹จ์ด ์ด์–ด์กŒ๋‹ค. ์ œ๋ชฉ๋ถ€ํ„ฐ ๊ฑฐ์น ๋‹ค. ํŠนํžˆ โ€œ๋ชฉํ‘œ์— ๋ˆˆ๋จผ ๊ดด๋ฌผโ€์€ ์ˆœํ™”ํ•˜๋ฉด ์•ˆ ๋˜๋Š” ์ œ๋ชฉ์ด๋‹ค. ๋ฒˆ์—ญ์—์„œ๋„ ๋ฌด๋ฆฌํ•˜๊ฒŒ ์ ์ž–๊ฒŒ ๋งŒ๋“ค์ง€ ์•Š๊ณ , ์ž๊ธฐ ๊ฒฝ๊ณ„์˜ ๊ฐ•ํ•œ ํ‘œํ˜„์œผ๋กœ ๋‚จ๊ธฐ๋Š” ์ชฝ์„ ํƒํ–ˆ๋‹ค.

๊ฒ€์ฆ์€ scoped sync์™€ residue scan๋งŒ ๋Œ๋ ธ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

33์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 135/311, pending 1, missing 175
zh-Hans  ready 135/311, pending 1, missing 175
es       ready 135/311, pending 1, missing 175
pt-BR    ready 135/311, pending 1, missing 175
fr       ready 135/311, pending 1, missing 175
id       ready 135/311, pending 1, missing 175

34์ฐจ batch๋Š” 7์›” 10์ผ๋ถ€ํ„ฐ 13์ผ๊นŒ์ง€์˜€๋‹ค.

2025-07-10  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #131: ํœด์‹
2025-07-11  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #132: ๋ฃจํ‹ด์˜ ์ค‘์š”์„ฑ
2025-07-12  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #133: ์ด๋ฃจ๊ณ  ์‹ถ์€ ๊ฒƒ, ๋น„์ƒ์‚ฐ์  ํ•˜๋ฃจ
2025-07-13  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #134: ๋•์—…์ผ์น˜, ๊ฒŒ์ด๋จธ์—์„œ ๋ฐ”์ด๋ธŒ์ฝ”๋”๋กœ

์ด๋ฒˆ batch๋Š” ์‰ฌ๋Š” ๋‚ ์„ ๋ฐ›์•„๋“ค์ด๋Š” ๊ฐ๊ฐ์—์„œ ์‹œ์ž‘ํ•ด์„œ, ๋ฃจํ‹ด์˜ ๊ธฐ๋ณธ๊ธฐ, ๋น„์ƒ์‚ฐ์  ํ•˜๋ฃจ๋ฅผ ์ •์งํ•˜๊ฒŒ ๋ณด๋Š” ํƒœ๋„, ๊ทธ๋ฆฌ๊ณ  ๊ฒŒ์ด๋จธ์˜ ๋ชฐ์ž…์„ ๋ฐ”์ด๋ธŒ์ฝ”๋”์˜ ์ƒ์‚ฐ์„ฑ์œผ๋กœ ๋ฐ”๊พธ๋Š” ๋•์—…์ผ์น˜์˜ ๊ฐ€๋Šฅ์„ฑ์œผ๋กœ ์ด์–ด์กŒ๋‹ค. ํŠนํžˆ โ€œ๋น„์ƒ์‚ฐ์  ํ•˜๋ฃจโ€๋Š” ์ˆจ๊ธฐ๊ฑฐ๋‚˜ ๋ฏธํ™”ํ•˜์ง€ ์•Š๋Š” ํ‘œํ˜„์ด๋ผ, ๋ฒˆ์—ญ์—์„œ๋„ ์ƒ์‚ฐ์„ฑ ํšŒ๊ณ ์ฒ˜๋Ÿผ ํฌ์žฅํ•˜์ง€ ์•Š๊ฒŒ ํ–ˆ๋‹ค.

๊ฒ€์ฆ์€ ์ด๋ฒˆ์—๋„ batch ๋ฒ”์œ„๋งŒ ์ขํ˜€์„œ ๋Œ๋ ธ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

34์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 139/311, pending 1, missing 171
zh-Hans  ready 139/311, pending 1, missing 171
es       ready 139/311, pending 1, missing 171
pt-BR    ready 139/311, pending 1, missing 171
fr       ready 139/311, pending 1, missing 171
id       ready 139/311, pending 1, missing 171

35์ฐจ batch๋Š” 7์›” 14์ผ๋ถ€ํ„ฐ 17์ผ๊นŒ์ง€์˜€๋‹ค.

2025-07-14  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #135: ๋ชจ๋ฐ”์ผ ๋ฐ”์ด๋ธŒ ์ฝ”๋”ฉ ์‹œ์ž‘
2025-07-15  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #136: ์ง„์‹ฌ์–ด๋ฆฐ ์นญ์ฐฌ, ์ด์›ƒ ์‚ฌ๋ž‘, ์ธ๋ฅ˜์• 
2025-07-16  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #137: ๋ชจํ—˜๊ฐ€์˜ ํ”ผ
2025-07-17  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #138: ๋ณธ๋Šฅ์— ํœ˜๋‘˜๋ฆฌ๋Š” ์‚ถ

์ด๋ฒˆ batch๋Š” ๋ชจ๋ฐ”์ผ ๋ฐ”์ด๋ธŒ ์ฝ”๋”ฉ์˜ ์‹œ์ž‘, ์ง„์‹ฌ ์–ด๋ฆฐ ์นญ์ฐฌ๊ณผ ์ด์›ƒ ์‚ฌ๋ž‘, ๋‹ค์‹œ ๋“๋Š” ๋ชจํ—˜๊ฐ€์˜ ๊ฐ๊ฐ, ๋ณธ๋Šฅ์— ํœ˜๋‘˜๋ฆฌ๋Š” ์‚ถ์— ๋Œ€ํ•œ ๊ฒฝ๊ณ„๊ฐ€ ์ด์–ด์กŒ๋‹ค. ๊ธฐ์ˆ  ์ด์•ผ๊ธฐ์— ์ข…๊ต์ /์œค๋ฆฌ์  ๊ฐ๊ฐ์ด ์„ž์ด๋Š” ๊ตฌ๊ฐ„์ด๋ผ, ๋ฒˆ์—ญ์ด ๋„ˆ๋ฌด ๊ฑด์กฐํ•ด์ง€์ง€ ์•Š๊ฒŒ ํ–ˆ๋‹ค. โ€œ๋ชจํ—˜๊ฐ€์˜ ํ”ผโ€ ๊ฐ™์€ ํ‘œํ˜„๋„ ์„ค๋ช…๋ฌธ์œผ๋กœ ํ’€๊ธฐ๋ณด๋‹ค ์ œ๋ชฉ์˜ ์ƒ๋™๊ฐ์„ ์‚ด๋ฆฌ๋Š” ์ชฝ์ด ๋งž์•˜๋‹ค.

๊ฒ€์ฆ์€ ๊ฐ™์€ ๋ฒ”์œ„๋กœ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

35์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 143/311, pending 1, missing 167
zh-Hans  ready 143/311, pending 1, missing 167
es       ready 143/311, pending 1, missing 167
pt-BR    ready 143/311, pending 1, missing 167
fr       ready 143/311, pending 1, missing 167
id       ready 143/311, pending 1, missing 167

36์ฐจ batch๋Š” 7์›” 18์ผ๋ถ€ํ„ฐ 21์ผ๊นŒ์ง€์˜€๋‹ค.

2025-07-18  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #139: ์›”๊ธ‰ 27๋งŒ์› ์ฒœ์žฌ ์˜ฌ๋ผ์šด๋” ๊ฐœ๋ฐœ์ž
2025-07-19  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #140: ํœด์‹
2025-07-20  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #141: ๋ฒ„์Šค์—์„œ ๋ชจ๋ฐ”์ผ ๋ฐ”์ด๋ธŒ ์ฝ”๋”ฉ
2025-07-21  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #142: ๋ฒˆ์•„์›ƒ์ด ๋‘๋ ต์ง€ ์•Š๋‹ค

์ด๋ฒˆ batch๋Š” ์ž์กฐ๊ฐ€ ๊ฐ•ํ–ˆ๋‹ค. โ€œ์›”๊ธ‰ 27๋งŒ์› ์ฒœ์žฌ ์˜ฌ๋ผ์šด๋” ๊ฐœ๋ฐœ์žโ€ ๊ฐ™์€ ์ œ๋ชฉ์€ ๋ฒˆ์—ญ์—์„œ ์‚ด์ง๋งŒ ์ ์ž–๊ฒŒ ๋งŒ๋“ค์–ด๋„ ์›๋ฌธ์˜ ๋ง›์ด ์‚ฌ๋ผ์ง„๋‹ค. ๊ทธ๋ž˜์„œ ๊ฐ ์–ธ์–ด์—์„œ๋„ ๋‚ฎ์€ ๊ธˆ์•ก, ์ž๊ธฐ ๋น„๊ผผ, ๊ทธ๋ž˜๋„ ์ž๊ธฐ ๊ฐ€์น˜๋ฅผ ๋ณด๋Š” ๊ฐ๊ฐ์„ ๊ฐ™์ด ์‚ด๋ฆฌ๊ฒŒ ํ–ˆ๋‹ค. ๋’ค๋กœ๋Š” ํœด์‹, ๋ฒ„์Šค ์•ˆ ๋ชจ๋ฐ”์ผ ๋ฐ”์ด๋ธŒ ์ฝ”๋”ฉ, ๋ฒˆ์•„์›ƒ์„ ๋‘๋ ค์›Œํ•˜์ง€ ์•Š๋Š” ํƒœ๋„๊ฐ€ ์ด์–ด์กŒ๋‹ค.

ํ†ตํ•ฉ ๊ฒ€์ฆ์€ ์ด๋ฒˆ์—๋„ scoped check๋กœ ๋๋ƒˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

36์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 147/311, pending 1, missing 163
zh-Hans  ready 147/311, pending 1, missing 163
es       ready 147/311, pending 1, missing 163
pt-BR    ready 147/311, pending 1, missing 163
fr       ready 147/311, pending 1, missing 163
id       ready 147/311, pending 1, missing 163

37์ฐจ batch๋Š” 7์›” 22์ผ๋ถ€ํ„ฐ 25์ผ๊นŒ์ง€์˜€๋‹ค.

2025-07-22  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #143: ๋ฐ”์ด๋ธŒ ์ฝ”๋”ฉ ํ˜„ํƒ€, ๋””์ž์ธ ์‹œ์Šคํ…œ ์„ค๊ณ„ ๋ฐฉ์•ˆ
2025-07-23  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #144: ์‹คํŒจํ•  ์šฉ๊ธฐ, ์‹œ๋„ํ•  ์šฉ๊ธฐ
2025-07-24  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #145: Thank U (์˜ค๋Š˜์˜ ๋ ˆ์Šจ)
2025-07-25  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #146: 14์ฝค๋ณด: ์ƒ์•  ์‹ ๊ธฐ๋ก์„ ํ–ฅํ•ด

์ด๋ฒˆ batch๋Š” ๋ฐ”์ด๋ธŒ ์ฝ”๋”ฉ์˜ ํ˜„ํƒ€์™€ ๋””์ž์ธ ์‹œ์Šคํ…œ ํ•„์š”์„ฑ, ์‹คํŒจํ•˜๊ณ  ์‹œ๋„ํ•  ์šฉ๊ธฐ, ๊ฐ์‚ฌ์™€ ์˜ค๋Š˜์˜ ๋ ˆ์Šจ, ๊ทธ๋ฆฌ๊ณ  14์ฝค๋ณด๋ผ๋Š” ๊ฒŒ์ž„์‹ ๊ธฐ๋ก ๊ฐ๊ฐ์ด ์ด์–ด์กŒ๋‹ค. Thank U ๊ฐ™์€ ์˜์–ด ์ œ๋ชฉ ์กฐ๊ฐ๊ณผ 14์ฝค๋ณด ๊ฐ™์€ ํ‘œํ˜„์€ ์–ต์ง€๋กœ ํ˜„์ง€ํ™”ํ•˜์ง€ ์•Š๊ณ , ์›๋ฌธ์˜ ๋ฆฌ๋“ฌ์„ ์‚ด๋ฆฌ๋Š” ์ชฝ์œผ๋กœ ๋’€๋‹ค.

ํ†ตํ•ฉ ๊ฒ€์ฆ์—์„œ๋Š” ์ค‘๊ฐ„์— ๋ณด์˜€๋˜ ์ธ๋„๋„ค์‹œ์•„์–ด missing๋„ ํ•ด์†Œ๋๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

37์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 151/311, pending 1, missing 159
zh-Hans  ready 151/311, pending 1, missing 159
es       ready 151/311, pending 1, missing 159
pt-BR    ready 151/311, pending 1, missing 159
fr       ready 151/311, pending 1, missing 159
id       ready 151/311, pending 1, missing 159

38์ฐจ batch๋Š” 7์›” 26์ผ๋ถ€ํ„ฐ 29์ผ๊นŒ์ง€์˜€๋‹ค.

2025-07-26  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #147: ๋””์ž์ธ์˜ ์ค‘์š”์„ฑ
2025-07-27  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #148: ํƒ€์ธ์„ ์œ„ํ•ด ๋ด‰์‚ฌํ•˜๋Š” ์‚ถ
2025-07-28  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #149: ๋ฐ”์ด๋ธŒ ์ฝ”๋”ฉ์„ ํ•  ์ˆ˜๋ฐ–์— ์—†๋Š” ๋ชธ
2025-07-29  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #150: ์‹คํ–‰๋ ฅ์ด ๋†’์€ ์‚ฌ๋žŒ๋งŒ์ด ์‚ด์•„๋‚จ๋Š”๋‹ค

์ด๋ฒˆ batch๋Š” ๋””์ž์ธ์˜ ์ค‘์š”์„ฑ์—์„œ ์‹œ์ž‘ํ•ด, ํƒ€์ธ์„ ์œ„ํ•ด ๋ด‰์‚ฌํ•˜๋Š” ์‚ถ, ๋ฐ”์ด๋ธŒ ์ฝ”๋”ฉ์ด ๋ชธ์— ๋ถ™๋Š” ๊ฐ๊ฐ, ์‹คํ–‰๋ ฅ์˜ ์ค‘์š”์„ฑ์œผ๋กœ ์ด์–ด์กŒ๋‹ค. โ€œ๋ชธโ€์ด๋‚˜ โ€œ์‚ด์•„๋‚จ๋Š”๋‹คโ€ ๊ฐ™์€ ํ‘œํ˜„์€ ์ถ”์ƒํ™”ํ•˜๋ฉด ํž˜์ด ๋น ์ง„๋‹ค. ๊ทธ๋ž˜์„œ ๋ฒˆ์—ญ์—์„œ๋„ ํ–‰๋™๊ณผ ์‹ ์ฒด๊ฐ์ด ๋‚จ๋„๋ก ํ–ˆ๋‹ค.

๊ฒ€์ฆ ๊ฒฐ๊ณผ๋Š” ๊ทธ๋Œ€๋กœ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

38์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 155/311, pending 1, missing 155
zh-Hans  ready 155/311, pending 1, missing 155
es       ready 155/311, pending 1, missing 155
pt-BR    ready 155/311, pending 1, missing 155
fr       ready 155/311, pending 1, missing 155
id       ready 155/311, pending 1, missing 155

39์ฐจ batch๋Š” 7์›” ๋ง์—์„œ 8์›” ์ดˆ๋กœ ๋„˜์–ด๊ฐ€๋Š” ๊ธฐ๋ก์ด์—ˆ๋‹ค.

2025-07-30  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #151: ํ”„๋กœํŽ˜์…”๋„๋ฆฌ์ฆ˜
2025-07-31  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #152: ๊ฐœ๋ฐœ์ž ๋‚ฉ๋Ÿ‰ํŠน์ง‘: DB ๋ฎ์–ด์“ฐ๊ธฐ, ๋น„๋ฐ€๋ฒˆํ˜ธ ๋…ธ์ถœ
2025-08-01  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #153: ๊ฐœ๋ฐœ์ž๊ฐ€ ๋ฐค์ƒ˜ํ•˜๋Š” ์ด์œ 
2025-08-02  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #154: ๊ท€๋™๋ƒฅ

์ด๋ฒˆ batch๋Š” ํ”„๋กœํŽ˜์…”๋„๋ฆฌ์ฆ˜, DB ๋ฎ์–ด์“ฐ๊ธฐ์™€ ๋น„๋ฐ€๋ฒˆํ˜ธ ๋…ธ์ถœ ๊ฐ™์€ ๊ฐœ๋ฐœ ์‚ฌ๊ณ , ๊ฐœ๋ฐœ์ž๊ฐ€ ๋ฐค์„ ์ƒˆ์šฐ๋Š” ์ด์œ , ๊ท€๋™๋ƒฅ์œผ๋กœ ์–ป๋Š” ๋ฐฐ์›€์ด ์ด์–ด์กŒ๋‹ค. ํŠนํžˆ โ€œ๋น„๋ฐ€๋ฒˆํ˜ธ ๋…ธ์ถœโ€ ๊ฐ™์€ ํ‘œํ˜„์€ ๋ณด์•ˆ ์‚ฌ๊ณ ์˜ ๋ฌด๊ฒŒ๊ฐ€ ์žˆ๋Š” ๋ง์ด๋ผ, ๋ฒˆ์—ญ์—์„œ ์™„๊ณกํ•˜๊ฒŒ ๋‚ฎ์ถ”์ง€ ์•Š๊ฒŒ ํ–ˆ๋‹ค.

์›” ๊ฒฝ๊ณ„๊ฐ€ ์„ž์˜€์ง€๋งŒ scoped sync๋Š” ๊ทธ๋Œ€๋กœ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

39์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 159/311, pending 1, missing 151
zh-Hans  ready 159/311, pending 1, missing 151
es       ready 159/311, pending 1, missing 151
pt-BR    ready 159/311, pending 1, missing 151
fr       ready 159/311, pending 1, missing 151
id       ready 159/311, pending 1, missing 151

40์ฐจ batch๋Š” 8์›” 3์ผ๋ถ€ํ„ฐ 6์ผ๊นŒ์ง€์˜€๋‹ค.

2025-08-03  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #155: ์ฝค๋ณด ๋ธŒ๋ ˆ์ดํฌ
2025-08-04  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #156: ๋ฒˆ์•„์›ƒ (1๋„ ํ™”์ƒ)
2025-08-05  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #157: ํšŒ๋ณต ํƒ„๋ ฅ์„ฑ
2025-08-06  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #158: ๊ฐˆ๋ฆผ๊ธธ, ๋‚ด๋ฉด์˜ ์„ฑ์ˆ™

์ด๋ฒˆ batch๋Š” ์ด์–ด์˜ค๋˜ ์ฝค๋ณด๊ฐ€ ๋Š๊ธฐ๋Š” ๊ฐ๊ฐ, 1๋„ ํ™”์ƒ ๊ฐ™์€ ๋ฒˆ์•„์›ƒ, ํšŒ๋ณต ํƒ„๋ ฅ์„ฑ, ๊ฐˆ๋ฆผ๊ธธ ์•ž์—์„œ ํ•„์š”ํ•œ ๋‚ด๋ฉด์˜ ์„ฑ์ˆ™์œผ๋กœ ์ด์–ด์กŒ๋‹ค. โ€œ1๋„ ํ™”์ƒโ€์€ ๋ฒˆ์•„์›ƒ์„ ์„ค๋ช…ํ•˜๋Š” ์€์œ ๋ผ์„œ, ๊ฐ ์–ธ์–ด์—์„œ๋„ ๋‹จ์ˆœํžˆ โ€œ๊ฐ€๋ฒผ์šด ๋ฒˆ์•„์›ƒโ€์œผ๋กœ ๋‚ฎ์ถ”์ง€ ์•Š๊ฒŒ ํ–ˆ๋‹ค.

ํ†ตํ•ฉ ๊ฒ€์ฆ์€ ๋ฌธ์ œ ์—†์ด ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

40์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 163/311, pending 1, missing 147
zh-Hans  ready 163/311, pending 1, missing 147
es       ready 163/311, pending 1, missing 147
pt-BR    ready 163/311, pending 1, missing 147
fr       ready 163/311, pending 1, missing 147
id       ready 163/311, pending 1, missing 147

41์ฐจ batch๋Š” 8์›” 7์ผ๋ถ€ํ„ฐ 10์ผ๊นŒ์ง€์˜€๋‹ค.

2025-08-07  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #159: AI ์ž๋™ํ™” ํˆด Make ์ฒดํ—˜
2025-08-08  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #160: ์‚ฌํšŒ์  ์–ด๋ฆฐ์ด
2025-08-09  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #161: ์„ ํƒ๊ณผ ์ง‘์ค‘
2025-08-10  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #162: ์ „๋žต์  ํ›„ํ‡ด

์ด๋ฒˆ batch๋Š” Make ์ž๋™ํ™” ํˆด ์ฒดํ—˜, ์‚ฌํšŒ์  ๋ฏธ์ˆ™ํ•จ์„ ๋ณด๋Š” ์ž๊ธฐ ์ธ์‹, ์„ ํƒ๊ณผ ์ง‘์ค‘, ์ „๋žต์  ํ›„ํ‡ด๊ฐ€ ์ด์–ด์กŒ๋‹ค. Make๋Š” ์ œํ’ˆ๋ช…์ด๋ผ ๊ทธ๋Œ€๋กœ ๋ณด์กดํ–ˆ๊ณ , โ€œ์‚ฌํšŒ์  ์–ด๋ฆฐ์ดโ€ ๊ฐ™์€ ํ‘œํ˜„์€ ์ž๊ธฐ๋ฅผ ๊นŽ์•„๋ณด๋Š” ํ‘œํ˜„์ด์–ด์„œ ๋„ˆ๋ฌด ๋ถ€๋“œ๋Ÿฝ๊ฒŒ ๋ฐ”๊พธ์ง€ ์•Š๊ฒŒ ํ–ˆ๋‹ค.

scoped sync์™€ residue scan์€ ๋ฌธ์ œ ์—†์ด ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

41์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 167/311, pending 1, missing 143
zh-Hans  ready 167/311, pending 1, missing 143
es       ready 167/311, pending 1, missing 143
pt-BR    ready 167/311, pending 1, missing 143
fr       ready 167/311, pending 1, missing 143
id       ready 167/311, pending 1, missing 143

42์ฐจ batch๋Š” 8์›” 11์ผ๋ถ€ํ„ฐ 14์ผ๊นŒ์ง€์˜€๋‹ค.

2025-08-11  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #163: ๊ฒฝ์ฒญ ๊ด€๋ จ ๋ฉ”๋ชจ
2025-08-12  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #164: ์ด์ƒํ˜•์„ ๋†“์นœ ๋‚ , ์ด์ƒ์„ ์ฐพ์€ ๋‚ 
2025-08-13  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #165: ํ”„๋กœ๋•์…˜ ๋ฐฐํฌ ํŒŒ์ดํ”„๋ผ์ธ ๊ตฌ์ถ•์ค‘
2025-08-14  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #166: ๋ฌด์กฐ๊ฑด์ ์ธ ๋‚ด ํŽธ

์ด๋ฒˆ batch๋Š” ๊ฒฝ์ฒญ, ์ด์ƒํ˜•์„ ๋†“์นœ ์•„์‰ฌ์›€๊ณผ ์ด์ƒ์„ ์ฐพ๋Š” ๊ฐ๊ฐ, ํ”„๋กœ๋•์…˜ ๋ฐฐํฌ ํŒŒ์ดํ”„๋ผ์ธ, ๋ฌด์กฐ๊ฑด์ ์ธ ๋‚ด ํŽธ์ด๋ผ๋Š” ์ •์„œ๊ฐ€ ์„ž์˜€๋‹ค. ๊ธฐ์ˆ ์ ์ธ ์ œ๋ชฉ๊ณผ ๊ด€๊ณ„์ ์ธ ์ œ๋ชฉ์ด ๊ฐ™์ด ์žˆ์–ด์„œ, ๋ฒˆ์—ญ์—์„œ๋„ ํ•œ์ชฝ ํ†ค์œผ๋กœ ๋ฐ€์–ด๋ถ™์ด์ง€ ์•Š๊ฒŒ ํ–ˆ๋‹ค.

๊ฒ€์ฆ์€ ๊ฐ™์€ ๋ฒ”์œ„์—์„œ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

42์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 171/311, pending 1, missing 139
zh-Hans  ready 171/311, pending 1, missing 139
es       ready 171/311, pending 1, missing 139
pt-BR    ready 171/311, pending 1, missing 139
fr       ready 171/311, pending 1, missing 139
id       ready 171/311, pending 1, missing 139

43์ฐจ batch๋Š” 8์›” 15์ผ๋ถ€ํ„ฐ 18์ผ๊นŒ์ง€์˜€๋‹ค.

2025-08-15  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #167: ์ค‘๊ตญ ๊ณต์•ˆ์— ์ฃผ์˜ ์ธ๋ฌผ๋กœ ๋“ฑ๋ก๋œ ์ฐ
2025-08-16  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #168: ์‰ฌ์–ด๊ฐ€๋Š” ํƒ€์ž„
2025-08-17  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #169: ์‰ฌ์–ด๊ฐ€๋Š” ํƒ€์ž„ 2
2025-08-18  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #170: ๋ณ€ํ™”์˜ ์‹œ์ž‘์€ ์ง‘ ์ฒญ์†Œ๋ถ€ํ„ฐ

์ด๋ฒˆ batch๋Š” ์ค‘๊ตญ ๊ณต์•ˆ ์ฃผ์˜ ์ธ๋ฌผ๋กœ ๋“ฑ๋ก๋œ ์ด์•ผ๊ธฐ, ๋‘ ๋ฒˆ์˜ ์‰ฌ์–ด๊ฐ€๋Š” ํƒ€์ž„, ์ง‘ ์ฒญ์†Œ์—์„œ ์‹œ์ž‘๋˜๋Š” ๋ณ€ํ™”๊ฐ€ ์ด์–ด์กŒ๋‹ค. ์ฒซ ์ œ๋ชฉ์€ ์ž๊ทน์ ์ธ ์†Œ์žฌ์ง€๋งŒ ์›๋ฌธ์€ ๊ณผ์žฅ๋œ ์ •์น˜ ๊ธ€์ด ์•„๋‹ˆ๋ผ ์‚ถ์˜ ์•„์ด๋Ÿฌ๋‹ˆ๋ฅผ ๊ธฐ๋กํ•˜๋Š” ์ชฝ์ด๋ผ, ๋ฒˆ์—ญ์—์„œ๋„ ๊ณผํ•˜๊ฒŒ ํ‚ค์šฐ์ง€ ์•Š๋„๋ก ํ–ˆ๋‹ค.

๊ฒ€์ฆ์€ ๋™์ผํ•˜๊ฒŒ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

43์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 175/311, pending 1, missing 135
zh-Hans  ready 175/311, pending 1, missing 135
es       ready 175/311, pending 1, missing 135
pt-BR    ready 175/311, pending 1, missing 135
fr       ready 175/311, pending 1, missing 135
id       ready 175/311, pending 1, missing 135

44์ฐจ batch๋Š” 8์›” 19์ผ๋ถ€ํ„ฐ 22์ผ๊นŒ์ง€์˜€๋‹ค.

2025-08-19  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #171: ํž๋ง ์ˆ˜๋‹ค, ํ‚ฌ๋ง ์ˆ˜๋‹ค
2025-08-20  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #172: ๋ง‰์—ฐํ•˜๊ณ  ๋ง‰๋ง‰ํ•œ ๊ธธ
2025-08-21  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #173: ์˜ค๋žœ๋งŒ์— ๋…์„œ ์žฌ๊ฐœ
2025-08-22  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #174: ์ •๋ˆ๋œ ์‚ถ

์ด๋ฒˆ batch๋Š” ๋Œ€ํ™”๊ฐ€ ํšŒ๋ณต์ด ๋˜๊ธฐ๋„ ํ•˜๊ณ  ์†Œ๋ชจ๊ฐ€ ๋˜๊ธฐ๋„ ํ•˜๋Š” ์–‘๋ฉด, ๋ง‰์—ฐํ•˜๊ณ  ๋ง‰๋ง‰ํ•œ ๊ธธ ์•ž์— ์„  ๊ฐ๊ฐ, ์˜ค๋žœ๋งŒ์— ๋…์„œ๋ฅผ ๋‹ค์‹œ ์žก์€ ํ๋ฆ„, ์ •๋ˆ๋œ ์‚ถ์— ๋Œ€ํ•œ ๋ฐ”๋žŒ์œผ๋กœ ์ด์–ด์กŒ๋‹ค. ์ œ๋ชฉ์ด ์ผ๊ธฐ์ฒ˜๋Ÿผ ์ž‘์•„ ๋ณด์—ฌ๋„ ์‹ค์ œ๋กœ๋Š” ์ƒํ™œ ๋ฆฌ๋“ฌ๊ณผ ๊ด€๊ณ„ ๊ฐ๊ฐ์ด ๊ฐ™์ด ์›€์ง์ด๋Š” ๊ตฌ๊ฐ„์ด๋ผ, ๋ฒˆ์—ญ์—์„œ๋„ ๊ตํ›ˆ๋ฌธ์ฒ˜๋Ÿผ ํ‚ค์šฐ๊ธฐ๋ณด๋‹ค ์›๋ฌธ์˜ ์ƒํ™œ ๋ฐ€๋„๋ฅผ ์‚ด๋ฆฌ๋Š” ์ชฝ์œผ๋กœ ๋งž์ท„๋‹ค.

๊ฒ€์ฆ์€ ์ด๋ฒˆ์—๋„ translation-only ๋ฒ”์œ„ ์•ˆ์—์„œ๋งŒ ํ†ต๊ณผ์‹œ์ผฐ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

44์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 179/311, pending 1, missing 131
zh-Hans  ready 179/311, pending 1, missing 131
es       ready 179/311, pending 1, missing 131
pt-BR    ready 179/311, pending 1, missing 131
fr       ready 179/311, pending 1, missing 131
id       ready 179/311, pending 1, missing 131

45์ฐจ batch๋Š” 8์›” 23์ผ๋ถ€ํ„ฐ 26์ผ๊นŒ์ง€์˜€๋‹ค.

2025-08-23  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #175: ๊ฒฐ์ด ๋งž๋Š” ์‚ฌ๋žŒ
2025-08-24  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #176: ์ธํ„ฐ๋ทฐ ๋ฐ›์€ ๋‚ 
2025-08-25  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #177: ์ œ์ฃผ๋„ ์—ฌํ–‰ 1์ผ์ฐจ: ๋„์ฐฉ
2025-08-26  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #178: ์ œ์ฃผํ™˜์ƒ์ž์ „๊ฑฐ๊ธธ 1์ผ์ฐจ: ์šฉ๋‘์•” - ์†ก์•…์‚ฐ

์ด๋ฒˆ batch๋Š” ๊ฒฐ์ด ๋งž๋Š” ์‚ฌ๋žŒ๊ณผ์˜ ํŽธ์•ˆํ•จ, ์ธํ„ฐ๋ทฐ๋ฅผ ๋ฐ›์œผ๋ฉฐ ์ž๊ธฐ ์ด์•ผ๊ธฐ๋ฅผ ๋‹ค์‹œ ๋ง๋กœ ๊บผ๋‚ธ ๊ฒฝํ—˜, ์ œ์ฃผ๋„ ๋„์ฐฉ, ์ œ์ฃผํ™˜์ƒ์ž์ „๊ฑฐ๊ธธ ์ฒซ๋‚  ๊ธฐ๋ก์œผ๋กœ ์ด์–ด์กŒ๋‹ค. ์•ž์˜ ๋‘ ๊ธ€์€ ๊ด€๊ณ„์™€ ์ž๊ธฐ์„œ์‚ฌ ์ชฝ์ด๊ณ , ๋’ค์˜ ๋‘ ๊ธ€์€ ์—ฌํ–‰๊ณผ ๋ชธ์œผ๋กœ ๋ฐ€์–ด๋ถ™์ด๋Š” ์‹คํ–‰ ์ชฝ์ด๋ผ ๊ฐ™์€ Daily Review๋ผ๋„ ๋ฌธ์žฅ์˜ ์˜จ๋„๊ฐ€ ๋‹ฌ๋ž๋‹ค.

๊ฒ€์ฆ์€ batch scope์—์„œ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

45์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 183/311, pending 1, missing 127
zh-Hans  ready 183/311, pending 1, missing 127
es       ready 183/311, pending 1, missing 127
pt-BR    ready 183/311, pending 1, missing 127
fr       ready 183/311, pending 1, missing 127
id       ready 183/311, pending 1, missing 127

46์ฐจ batch๋Š” 8์›” 27์ผ๋ถ€ํ„ฐ 30์ผ๊นŒ์ง€์˜€๋‹ค.

2025-08-27  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #179: ์ œ์ฃผํ™˜์ƒ์ž์ „๊ฑฐ๊ธธ 2์ผ์ฐจ: ์†ก์•…์‚ฐ - ํ‘œ์„ ํ•ด๋ณ€
2025-08-28  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #180: ์ œ์ฃผํ™˜์ƒ์ž์ „๊ฑฐ๊ธธ 3์ผ์ฐจ: ํ‘œ์„ ํ•ด๋ณ€ - ๊น€๋…•์„ฑ์„ธ ๊ธฐํ•ด๋ณ€
2025-08-29  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #181: ์ œ์ฃผํ™˜์ƒ์ž์ „๊ฑฐ๊ธธ 4์ผ์ฐจ: ๊น€๋…•์„ฑ์„ธ๊ธฐํ•ด๋ณ€ - ์šฉ ๋‘์•”
2025-08-30  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #182: ์—ฌํ–‰ ๋

์ด๋ฒˆ batch๋Š” ์ œ์ฃผํ™˜์ƒ์ž์ „๊ฑฐ๊ธธ ์—ฌํ–‰ ๊ธฐ๋ก์˜ ํ•ต์‹ฌ ๊ตฌ๊ฐ„์ด์—ˆ๋‹ค. ์ด๋ฏธ์ง€๊ฐ€ ๋งŽ์€ ๊ธ€์ด๋ผ ๋ฒˆ์—ญ ํ’ˆ์งˆ๋งŒํผ์ด๋‚˜ ์ด๋ฏธ์ง€ path parity๊ฐ€ ์ค‘์š”ํ–ˆ๋‹ค. ๊ธ€ ๋ณธ๋ฌธ์„ ์•„๋ฌด๋ฆฌ ์ž˜ ๋ฒˆ์—ญํ•ด๋„ ์‚ฌ์ง„ ๋งํฌ๊ฐ€ ํ•˜๋‚˜๋งŒ ๊นจ์ง€๋ฉด ์—ฌํ–‰ ๊ธฐ๋ก์˜ ์ ˆ๋ฐ˜์ด ์‚ฌ๋ผ์ง„๋‹ค. ๊ทธ๋ž˜์„œ ์ด๋ฒˆ์—๋Š” ๊ฐ ์–ธ์–ด worker๊ฐ€ raw block, ์ด๋ฏธ์ง€ ๊ฐœ์ˆ˜, ์ด๋ฏธ์ง€ ๊ฒฝ๋กœ๋ฅผ ๊ฐ™์ด ํ™•์ธํ•˜๊ฒŒ ํ–ˆ๋‹ค.

๊ฒ€์ฆ์€ batch scope์—์„œ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

46์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 187/311, pending 1, missing 123
zh-Hans  ready 187/311, pending 1, missing 123
es       ready 187/311, pending 1, missing 123
pt-BR    ready 187/311, pending 1, missing 123
fr       ready 187/311, pending 1, missing 123
id       ready 187/311, pending 1, missing 123

47์ฐจ batch๋Š” 8์›” 31์ผ, 9์›” 1์ผ, 9์›” 2์ผ ์„ธ ๊ธ€์ด์—ˆ๋‹ค.

2025-08-31  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #183: ์ธ์ƒ์€ ์˜ˆ์ƒ๋Œ€๋กœ ํ˜๋Ÿฌ๊ฐ€์ง€ ์•Š๋Š”๋‹ค
2025-09-01  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #184: ์—ฌํ–‰์˜ ์—ฌํŒŒ
2025-09-02  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #185: ์ •์ง€ ๊ด€์„ฑ

์ด๋ฒˆ batch๋Š” ์—ฌํ–‰์ด ๋๋‚œ ๋’ค์˜ ์—ฌ์šด๊ณผ ๋ฌด๋„ˆ์ง„ ๋ฆฌ๋“ฌ, ๋‹ค์‹œ ์›€์ง์ด๊ธฐ ์–ด๋ ค์šด ์ •์ง€ ๊ด€์„ฑ์„ ๋‹ค๋ค˜๋‹ค. ํŒŒ์ผ ํ๋ฆ„์ƒ 9์›” 3์ผ๋ถ€ํ„ฐ 7์ผ๊นŒ์ง€๋Š” ์›๋ฌธ์ด ์—†์–ด์„œ ์–ต์ง€๋กœ ๋„ค ๊ธ€ batch๋ฅผ ๋งŒ๋“ค์ง€ ์•Š๊ณ , ์‹ค์ œ ์กด์žฌํ•˜๋Š” ์„ธ ๊ธ€๋งŒ ๋ฌถ์—ˆ๋‹ค. ๋Œ€๋Ÿ‰ ์ž‘์—…์ผ์ˆ˜๋ก โ€œ์žˆ์–ด์•ผ ํ•  ๊ฒƒ ๊ฐ™๋‹คโ€๊ฐ€ ์•„๋‹ˆ๋ผ โ€œํ˜„์žฌ ํŒŒ์ผ๋กœ ์กด์žฌํ•œ๋‹คโ€๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์›€์ง์—ฌ์•ผ ํ•œ๋‹ค.

๊ฒ€์ฆ์€ ์„ธ ๊ธ€ scope์—์„œ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 21
ready: 21
warnings: 0
errors: 0

47์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 190/311, pending 1, missing 120
zh-Hans  ready 190/311, pending 1, missing 120
es       ready 190/311, pending 1, missing 120
pt-BR    ready 190/311, pending 1, missing 120
fr       ready 190/311, pending 1, missing 120
id       ready 190/311, pending 1, missing 120

48์ฐจ batch๋Š” 9์›” 8์ผ๋ถ€ํ„ฐ 11์ผ๊นŒ์ง€์˜€๋‹ค.

2025-09-08  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #186: ์žฌ์ •๋น„ ์™„๋ฃŒ
2025-09-09  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #187: ์ธ์‚ฌ์ดํŠธ ๋Œ€ํญ๋ฐœ
2025-09-10  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #188: ๋ชจ๋‘์™€ ์นœํ•ด์งˆ ํ•„์š” ์—†๋‹ค
2025-09-11  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #189: ์‹œ์žฅ ๋ฐ˜์‘์ด ์žˆ๋Š”/์—†๋Š” ์„œ๋น„์Šค

์ด๋ฒˆ batch๋Š” ์—ฌํ–‰ ์ดํ›„ ๋‹ค์‹œ ์ •๋น„ํ•˜๊ณ , ์ƒ๊ฐ์ด ์—ด๋ฆฌ๊ณ , ๊ด€๊ณ„ ๊ธฐ์ค€์„ ์„ธ์šฐ๊ณ , ์‹œ์žฅ ๋ฐ˜์‘์ด ์žˆ๋Š” ์„œ๋น„์Šค์™€ ์—†๋Š” ์„œ๋น„์Šค๋ฅผ ๊ตฌ๋ถ„ํ•˜๋Š” ํ๋ฆ„์ด์—ˆ๋‹ค. Daily Review๊ฐ€ ๋‹จ์ˆœ ์ผ๊ธฐ๋ผ๊ธฐ๋ณด๋‹ค ์ œํ’ˆ ๊ฐ๊ฐ๊ณผ ์ƒํ™œ ๋ฆฌ๋“ฌ์ด ์„œ๋กœ ์˜ํ–ฅ์„ ์ฃผ๋Š” ๊ธฐ๋ก์ด๋ผ๋Š” ์ ์ด ๋‹ค์‹œ ๋“œ๋Ÿฌ๋‚œ ๊ตฌ๊ฐ„์ด๋‹ค.

๊ฒ€์ฆ์€ batch scope์—์„œ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

48์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 194/311, pending 1, missing 116
zh-Hans  ready 194/311, pending 1, missing 116
es       ready 194/311, pending 1, missing 116
pt-BR    ready 194/311, pending 1, missing 116
fr       ready 194/311, pending 1, missing 116
id       ready 194/311, pending 1, missing 116

49์ฐจ batch๋Š” 2026๋…„ 5์›” 25์ผ, 27์ผ, 28์ผ, 29์ผ ๋„ค ๊ธ€์ด์—ˆ๋‹ค.

2026-05-25  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #190: ๋‹ค์‹œ, ๊ณต๊ฐœ๋œ ์–‘์‹ฌ ๋กœ๊ทธ
2026-05-27  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #191: ์ƒ๊ฐ์„ ๋ฉˆ์ถ”์ง€ ์•Š๊ธฐ
2026-05-28  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #192: ์Šต๊ด€ ๋‹ค์ง€๋Š” ์ค‘
2026-05-29  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #193: ํšŒ๋ณตํ•˜๊ณ  ๋‹ค์‹œ ๋‹ฌ๋ฆด ์ค€๋น„

์ด๋ฒˆ batch๋ถ€ํ„ฐ๋Š” ๋„ค์ด๋ฒ„ ๋ฐฑ์—… raw block ์ค‘์‹ฌ์˜ 2025๋…„ ๊ธ€์—์„œ, ๋‹ค์‹œ hyuk.blog์—์„œ ์ž‘์„ฑํ•œ 2026๋…„ Daily Review๋กœ ๋„˜์–ด์™”๋‹ค. ์ด๋ฏธ์ง€๊ฐ€ ๊ฑฐ์˜ ์—†๊ณ , Codex, GPT-5.5, ๊ณต๊ฐœ ๊ธฐ๋ก ๋ฃจํ‹ด ๊ฐ™์€ ํ˜„์žฌ ๋ธ”๋กœ๊ทธ ์šด์˜ ๋งฅ๋ฝ์ด ๋” ๋งŽ์ด ๋‚˜์˜จ๋‹ค. ๊ทธ๋ž˜์„œ ์ด๋ฏธ์ง€ parity๋ณด๋‹ค Liquid, code fence, ๊ธฐ์ˆ ๋ช… ๋ณด์กด ์ชฝ์„ ๋” ์‹ ๊ฒฝ ์“ฐ๊ฒŒ ๋๋‹ค.

๊ฒ€์ฆ์€ batch scope์—์„œ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

49์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 198/311, pending 1, missing 112
zh-Hans  ready 198/311, pending 1, missing 112
es       ready 198/311, pending 1, missing 112
pt-BR    ready 198/311, pending 1, missing 112
fr       ready 198/311, pending 1, missing 112
id       ready 198/311, pending 1, missing 112

50์ฐจ batch๋Š” 2026๋…„ 5์›” 30์ผ, 31์ผ, 6์›” 1์ผ, 2์ผ ๋„ค ๊ธ€์ด์—ˆ๋‹ค.

2026-05-30  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #194: ์ž”์ž”ํ•œ ํ–‰๋ณต๊ณผ 4์—ฐ์† ์—…๋กœ๋“œ
2026-05-31  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #195: ํ‰์˜จํ•œ ํ•˜๋ฃจ์— ๋Œ€ํ•œ ๊ฐ์‚ฌ
2026-06-01  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #196: ๋‹ต๋‹ตํ•ด๋„ ์ผ๋‹จ ํ•ด๋ณด์ž
2026-06-02  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #197: ์ค‘์šฉ์€ ๊ธฐ์ค€์„ ์„ ์ง€ํ‚ค๋Š” ์ผ

์ด๋ฒˆ batch๋Š” ์„œ์šธ๋Œ€๊ณต์›์—์„œ์˜ ์ž”์ž”ํ•œ ํ–‰๋ณต, ์˜จ๋ผ์ธ ์˜๋ฃŒ์„ ๊ต์™€ ํ‰์˜จํ•œ ํ•˜๋ฃจ์— ๋Œ€ํ•œ ๊ฐ์‚ฌ, ๊ตญ๋ฏผ์ทจ์—…์ง€์›์ œ๋„ ์ƒ๋‹ด ์ดํ›„์˜ ๋‹ต๋‹ตํ•จ, ๋‚จ์„ ๋•๋Š” ์ผ๊ณผ ๋‚ด ์ผ์„ ์ง€ํ‚ค๋Š” ์ค‘์šฉ์˜ ๊ธฐ์ค€์„ ์„ ๋‹ค๋ค˜๋‹ค. ํŠนํžˆ 6์›” 2์ผ ๊ธ€์—๋Š” ๊ณผ๊ฑฐ Daily Review ๋งํฌ๊ฐ€ ๋“ค์–ด ์žˆ์–ด์„œ, ๋‹จ์ˆœ Liquid marker ๋ณด์กด๋งŒ์œผ๋กœ๋Š” ์ถฉ๋ถ„ํ•˜์ง€ ์•Š์•˜๋‹ค.

์ฒ˜์Œ worker ๊ฒฐ๊ณผ์—์„œ๋Š” ์ผ๋ถ€ ์–ธ์–ด๊ฐ€ ํ•œ๊ตญ์–ด {% post_url %}์„ ๊ทธ๋Œ€๋กœ ๋‚จ๊ธฐ๊ณ , ์ผ๋ถ€ ์–ธ์–ด๋Š” ์–ธ์–ด๋ณ„ URL๋กœ ๋ฐ”๊ฟ” ๋‘” ์ƒํƒœ์˜€๋‹ค. ์ด๋Œ€๋กœ ๋‘๋ฉด ๋‹ค๊ตญ์–ด ๊ธ€ ์•ˆ์˜ ๊ณผ๊ฑฐ ๊ธ€ ๋งํฌ๊ฐ€ ํ•œ๊ตญ์–ด๋กœ ํŠˆ ์ˆ˜ ์žˆ๋‹ค. ๊ทธ๋ž˜์„œ 50์ฐจ ๊ฒ€์ฆ์—์„œ๋Š” ๋งํฌ target์„ ํ•œ ๋ฒˆ ๋” ํ™•์ธํ–ˆ๊ณ , ์—ฌ์„ฏ ์–ธ์–ด ๋ชจ๋‘ ์ž๊ธฐ ์–ธ์–ด์˜ /daily-review/2025-05-14/ URL์„ ๊ฐ€๋ฆฌํ‚ค๋„๋ก ๋งž์ท„๋‹ค.

๊ฒ€์ฆ์€ batch scope์—์„œ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

50์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 202/311, pending 1, missing 108
zh-Hans  ready 202/311, pending 1, missing 108
es       ready 202/311, pending 1, missing 108
pt-BR    ready 202/311, pending 1, missing 108
fr       ready 202/311, pending 1, missing 108
id       ready 202/311, pending 1, missing 108

51์ฐจ batch๋Š” 2026๋…„ 6์›” 3์ผ๋ถ€ํ„ฐ 6์ผ๊นŒ์ง€์˜€๋‹ค.

2026-06-03  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #198: ์กฐ๊ธ‰ํ•  ๊ฒƒ ์—†๋‹ค, ์˜ค๋Š˜์˜ ๋ชซ์„ ํ•˜์ž
2026-06-04  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #199: AI๋ฅผ ๊ตด๋ฆฌ๋Š” ๋ฒ•์„ ๋ผˆ์— ์ƒˆ๊ธด ๋‚ 
2026-06-05  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #200: ๊ฐœ๋ฐœ ์„ธํฌ ๋ณต๊ตฌ, ๋ถˆ ๋ถ™์€ ์‹ ํ•™ ํ† ๋ก 
2026-06-06  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #201: ๋‚ด๊ฒ ๋‹น์—ฐํ•œ ๊ฒƒ์ด ๋‚จ์—๊ฒŒ๋Š” ํ˜๋ช…์ด ๋  ์ˆ˜ ์žˆ๋‹ค.

์ด๋ฒˆ batch๋Š” ์กฐ๊ธ‰ํ•จ๊ณผ ์ฑ…์ž„๊ฐ, AI๋ฅผ ์–ด๋””๊นŒ์ง€ ๋ฏฟ๊ณ  ์–ด๋””์„œ ๋Š์„์ง€์— ๋Œ€ํ•œ ๋ถ„๋…ธ ์„ž์ธ ์šด์˜ ๊ฐ๊ฐ, ๊ฐœ๋ฐœ ๊ฐ๊ฐ์˜ ํšŒ๋ณต, ๋””์ง€ํ„ธ/AI ๋ฆฌํ„ฐ๋Ÿฌ์‹œ ๊ฒฉ์ฐจ๋ฅผ ๋‹ค๋ค˜๋‹ค. ํŠนํžˆ 6์›” 4์ผ ๊ธ€์€ ์›๋ฌธ์˜ ๊ฑฐ์นœ ๊ฐ์ •์ด ์ค‘์š”ํ•œ ๊ธ€์ด๋ผ, ๋ฒˆ์—ญ์—์„œ๋„ ๋„ˆ๋ฌด ๋งค๋ˆํ•˜๊ฒŒ ์ˆœํ™”ํ•˜์ง€ ์•Š๋„๋ก ํ–ˆ๋‹ค.

๋งํฌ ๊ฒ€์ฆ๋„ ํ•œ ๋ฒˆ ๋” ๊ฑธ์—ˆ๋‹ค. ์ด๋ฏธ ์–ธ์–ด๋ณ„ target์ด ์žˆ๋Š” ๊ณผ๊ฑฐ Daily Review์™€ 6์›” 5์ผ ๋Œ€ํ™” ์•„์นด์ด๋ธŒ ๋งํฌ๋Š” ๊ฐ ์–ธ์–ด URL๋กœ ๋ฐ”๊ฟจ๋‹ค. ๋ฐ˜๋ฉด 2026-06-04-codex-decision-discipline ๊ธ€์€ es, pt-BR, id ๋ฒˆ์—ญ target์ด ์•„์ง ์—†์–ด์„œ, ์ด ์„ธ ์–ธ์–ด์—์„œ๋Š” ํ•œ๊ตญ์–ด {% post_url %} ๋งํฌ๋ฅผ ๊ทธ๋Œ€๋กœ ๋‚จ๊ฒผ๋‹ค. ์ง€๊ธˆ ์–ต์ง€๋กœ ์–ธ์–ด๋ณ„ URL์„ ๋งŒ๋“ค๋ฉด 404๊ฐ€ ๋˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

๊ฒ€์ฆ์€ batch scope์—์„œ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

51์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 206/311, pending 1, missing 104
zh-Hans  ready 206/311, pending 1, missing 104
es       ready 206/311, pending 1, missing 104
pt-BR    ready 206/311, pending 1, missing 104
fr       ready 206/311, pending 1, missing 104
id       ready 206/311, pending 1, missing 104

52์ฐจ batch๋Š” 2026๋…„ 6์›” 7์ผ Daily Review ํ•œ ๊ธ€์ด์—ˆ๋‹ค.

2026-06-07  ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š” #202: Pro 20x 30๋งŒ์›, ๋ฒผ๋ž‘ ๋ ์ „์ˆ  ์žฌ๊ฐœ

์ด ๊ธ€์€ ์ด๋ฒˆ ๋‹ค๊ตญ์–ด ์ž‘์—…์„ ์ง„ํ–‰ํ•˜๋˜ ๋‹น์ผ์˜ Daily Review๋‹ค. Pro 20x ๊ฒฐ์ œ, Claude Code Max x20๋กœ ์ œํ’ˆ์„ ๋ฐ€์–ด๋ถ™์˜€๋˜ ๊ฐ๊ฐ, Codex์™€ ๋ชจ๋ฐ”์ผ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์œผ๋กœ ๋‹ค์‹œ ๊ฐœ๋ฐœ ๊ด€์„ฑ์„ ๋ถ™์žก๊ฒ ๋‹ค๋Š” ๊ฒฐ์‹ฌ์ด ๋“ค์–ด ์žˆ์—ˆ๋‹ค. ์„ธ์…˜ ๊ตํ›ˆ ํฌ์ŠคํŠธ์™€ ๋‚ ์งœ๋Š” ๊ฐ™์ง€๋งŒ, ์ด ๊ธ€์€ ๋ณ„๋„ Daily Review๋ผ ๋ฒˆ์—ญ ๋Œ€์ƒ์— ํฌํ•จํ–ˆ๋‹ค.

๋ฐ˜๋Œ€๋กœ ์ด ๊ธ€ ์•„๋ž˜์— ๊ณ„์† ๊ฐฑ์‹  ์ค‘์ธ github-pages-blog-english-version-lessons ํฌ์ŠคํŠธ๋Š” ์•„์ง ํ•œ๊ตญ์–ด ์›๋ฌธ์ด ์™„์„ฑ/ํ™•์ธ๋˜์ง€ ์•Š์€ ์„ธ์…˜ ํฌ์ŠคํŠธ์ด๋ฏ€๋กœ ๋ฒˆ์—ญ pending์œผ๋กœ ๋‚จ๊ฒผ๋‹ค. ์ด ๊ตฌ๋ถ„์ด ์ค‘์š”ํ•˜๋‹ค. โ€œ6์›” 7์ผ ๊ธ€โ€์ด๋ผ๋Š” ๋‚ ์งœ๋งŒ ๋ณด๊ณ  ์ž๋™ ๋ฒˆ์—ญํ•˜๋ฉด ์•ˆ ๋˜๊ณ , ์‹ค์ œ ํŒŒ์ผ์˜ ์—ญํ• ๊ณผ publication ์ƒํƒœ๋ฅผ ๋ด์•ผ ํ•œ๋‹ค.

๊ฒ€์ฆ์€ ๋‹จ์ผ ๊ธ€ scope์—์„œ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 7
ready: 7
warnings: 0
errors: 0

52์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 207/311, pending 1, missing 103
zh-Hans  ready 207/311, pending 1, missing 103
es       ready 207/311, pending 1, missing 103
pt-BR    ready 207/311, pending 1, missing 103
fr       ready 207/311, pending 1, missing 103
id       ready 207/311, pending 1, missing 103

์ด ์‹œ์ ์—์„œ Daily Review๋Š” ํ˜„์žฌ ์›๋ฌธ ๊ธฐ์ค€์œผ๋กœ ๋”ฐ๋ผ์žกํ˜”๋‹ค.

๋‚จ์€ 103๊ฐœ๋Š” Daily Review๊ฐ€ ์•„๋‹ˆ๋ผ ๋‹ค๋ฅธ ์นดํ…Œ๊ณ ๋ฆฌ์— ๋ชฐ๋ ค ์žˆ์—ˆ๋‹ค.

diary/restaurant          14
reading/mindset           13
diary/life                12
devlog/keymory            11
diary/ai                  10
devlog/github-pages-blog   9
diary/thought              9
diary/dev                  7
diary/religion             7
devlog/secret-messenger    4
diary/relationship         3
tip/app                    3
diary/travel               1

๊ทธ๋ž˜์„œ ๋‹ค์Œ๋ถ€ํ„ฐ๋Š” Daily Review๋ฅผ ๊ณ„์† ํ›‘๋Š” ๊ฒŒ ์•„๋‹ˆ๋ผ, ๋‚จ์€ category backlog๋ฅผ ์‹ค์ œ ํŒŒ์ผ ๋ชฉ๋ก ๊ธฐ์ค€์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์‹œ์ž‘ํ–ˆ๋‹ค.

53์ฐจ batch๋Š” devlog/github-pages-blog ๋„ค ๊ธ€์ด์—ˆ๋‹ค.

2024-12-15  GitHub Pages ๋ธ”๋กœ๊ทธ์— ์ด๋ฏธ์ง€ ์˜ฌ๋ฆฌ๋Š” ๋ฒ•
2024-12-15  Jekyll๋กœ GitHub Pages Blog ์‹œ์ž‘ํ•˜๋Š” ๋ฐฉ๋ฒ•
2025-05-28  ๋ธ”๋กœ๊ทธ ์ง€์ˆ˜ ์ƒ์Šน๊ธฐ #1: ๋ธ”๋กœ๊ทธ ํฌ์ŠคํŒ… ๋ˆ„๋ฝ ํƒˆ์ถœ๊ธฐ
2025-05-29  ๋ธ”๋กœ๊ทธ ์ง€์ˆ˜ ์ƒ์Šน๊ธฐ #2: '์œ ์‚ฌ๋ฌธ์„œ' ํ”ผํ•˜๊ธฐ ์‹คํ—˜ ํ›„๊ธฐ

์ด๋ฒˆ batch๋Š” ์ดˆ๊ธฐ GitHub Pages/Jekyll ๊ฐ€์ด๋“œ์™€ ๋„ค์ด๋ฒ„ ๋ธ”๋กœ๊ทธ ์ง€์ˆ˜ ์‹คํ—˜ ๊ธฐ๋ก์ด ์„ž์˜€๋‹ค. Daily Review์™€ ๋‹ฌ๋ฆฌ ์ฝ”๋“œ๋ธ”๋ก, ์ด๋ฏธ์ง€ ๊ฒฝ๋กœ, ์™ธ๋ถ€ ๋งํฌ, ๊ธฐ์ˆ  ์šฉ์–ด๊ฐ€ ๋” ์ค‘์š”ํ–ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๋ฒˆ์—ญ ๊ฒ€์ฆ์—์„œ๋„ code fence, Liquid, image path parity๋ฅผ ๋‹ค์‹œ ๊ฐ•ํ•˜๊ฒŒ ๋ดค๋‹ค.

๊ฒ€์ฆ์€ batch scope์—์„œ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

53์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 211/311, pending 1, missing 99
zh-Hans  ready 211/311, pending 1, missing 99
es       ready 211/311, pending 1, missing 99
pt-BR    ready 211/311, pending 1, missing 99
fr       ready 211/311, pending 1, missing 99
id       ready 211/311, pending 1, missing 99

54์ฐจ batch๋„ devlog/github-pages-blog ๋„ค ๊ธ€์ด์—ˆ๋‹ค.

2025-06-18  ๋ธ”๋กœ๊ทธ ์ง€์ˆ˜ ์ƒ์Šน๊ธฐ #3: ์ œ๋ชฉ์— ์ด๋ชจ์ง€ ๋„ฃ์—ˆ๋‹ค๊ฐ€ ๋ˆ„๋ฝ ํญํƒ„ ๋งž์€ ์ด์•ผ๊ธฐ
2026-05-26  Daily Review v2๋ฅผ ๊ณผํ•˜๊ฒŒ ๋งŒ๋“ค์—ˆ๋‹ค๊ฐ€ ๋‹ค์‹œ ์ค„์ด๊ธฐ
2026-05-26  ๋ชจ๋ฐ”์ผ ๋ฉ”๋‰ด์™€ ์นดํ…Œ๊ณ ๋ฆฌ overview๋กœ ๋ธ”๋กœ๊ทธ ํƒ์ƒ‰ ๋ณต๊ตฌํ•˜๊ธฐ
2026-05-26  GitHub Pages ๋ธ”๋กœ๊ทธ ์‚ฌ์ด๋“œ๋ฐ”์— ๋‹ฌ๋ ฅ๊ณผ ํ™œ๋™ ํ†ต๊ณ„ ๋ถ™์ด๊ธฐ

์ด๋ฒˆ batch๋Š” ๊ธฐ์ˆ  ๊ตฌํ˜„ ๊ธฐ๋ก ์•ˆ์— ์‹ค์ œ UI ์ฝ”๋“œ ์˜ˆ์‹œ๊ฐ€ ๋งŽ์•˜๋‹ค. ๊ทธ๋ž˜์„œ ๋ฒˆ์—ญ ์ž์ฒด๋ณด๋‹ค โ€œ๋ฒˆ์—ญ๋œ ๊ธ€ ์•ˆ์˜ ์ฝ”๋“œ ์˜ˆ์‹œ๊ฐ€ ๊ณต๊ฐœ ํ™”๋ฉด์—์„œ ํ•œ๊ธ€์„ ๋‚จ๊ธฐ์ง€ ์•Š๋Š”๊ฐ€โ€๋ฅผ ๋” ์กฐ์‹ฌํ•ด์„œ ๋ดค๋‹ค.

์‹ค์ œ๋กœ zh-Hans์™€ pt-BR ๋‘ ์–ธ์–ด์—์„œ ์ฝ”๋“œ๋ธ”๋ก ์•ˆ์˜ aria-label="๋ชจ๋ฐ”์ผ ์นดํ…Œ๊ณ ๋ฆฌ"์™€ 5์›” 25์ผ ๊ธ€์ด ๋‚จ์•„ ์žˆ์—ˆ๋‹ค. ์ฒ˜์Œ์—๋Š” ์›๋ฌธ ์ฝ”๋“œ ๋ณด์กด์œผ๋กœ ๋ณผ ์ˆ˜๋„ ์žˆ์—ˆ์ง€๋งŒ, ์ด ๋ฌธ์ž์—ด๋“ค์€ ํ™”๋ฉด์— ๋…ธ์ถœ๋  ์ˆ˜ ์žˆ๋Š” UI ์˜ˆ์‹œ์˜€๋‹ค. ๊ทธ๋ž˜์„œ ๊ฐ ์–ธ์–ด์— ๋งž๊ฒŒ ํ˜„์ง€ํ™”ํ–ˆ๋‹ค.

zh-Hans  aria-label="็งปๅŠจ็ซฏๅˆ†็ฑป", 5ๆœˆ25ๆ—ฅๆ–‡็ซ 
pt-BR    aria-label="Categorias mobile", Posts de 25 de maio

์ดํ›„ ๋‹ค์‹œ batch scope ๊ฒ€์ฆ์„ ๋Œ๋ ธ๊ณ  ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

54์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 215/311, pending 1, missing 95
zh-Hans  ready 215/311, pending 1, missing 95
es       ready 215/311, pending 1, missing 95
pt-BR    ready 215/311, pending 1, missing 95
fr       ready 215/311, pending 1, missing 95
id       ready 215/311, pending 1, missing 95

55์ฐจ batch๋Š” devlog/github-pages-blog์˜ ๋‚จ์€ ์ผ๋ฐ˜ ํฌ์ŠคํŠธ ํ•œ ๊ธ€์ด์—ˆ๋‹ค.

2026-06-05  ๋„ค์ด๋ฒ„ ๋ธ”๋กœ๊ทธ PDF ๋ฐฑ์—…์„ GitHub Pages๋กœ ์˜ฎ๊ธด ์ด์•ผ๊ธฐ

์ด ๊ธ€์€ ๋„ค์ด๋ฒ„ ๋ธ”๋กœ๊ทธ PDF ๋ฐฑ์—… 18๊ฐœ์—์„œ ๊ธ€ 173๊ฐœ์™€ ์ด๋ฏธ์ง€ 1521๊ฐœ๋ฅผ ๊ฐ€์ ธ์˜จ ์ž‘์—… ๊ธฐ๋ก์ด์—ˆ๋‹ค. ์ˆซ์ž, ํŒŒ์ผ ๊ฒฝ๋กœ, ์นดํ…Œ๊ณ ๋ฆฌ ์ด๋ฆ„, Daily Review ์‹œ๋ฆฌ์ฆˆ๋ช…, ๋นŒ๋“œ ๊ฒ€์ฆ ๊ธฐ๋ก์ด ์„ž์—ฌ ์žˆ์–ด์„œ ๋‹จ์ˆœ ์‚ฐ๋ฌธ๋ณด๋‹ค front matter์™€ ์ฝ”๋“œ๋ธ”๋ก ๋ณด์กด์ด ์ค‘์š”ํ–ˆ๋‹ค.

ํ†ตํ•ฉ ๊ฒ€์ฆ์—์„œ ๋‘ ๊ฐ€์ง€๊ฐ€ ๊ฑธ๋ ธ๋‹ค.

ํ•˜๋‚˜๋Š” ์ผ๋ณธ์–ด ๋ฒˆ์—ญ์— ์˜ค๋Š˜ ํ•˜๋ฃจ๋Š”, ์˜ค๋Š˜์˜ ์ธ์ฆ ๊ฐ™์€ ํ•œ๊ตญ์–ด ์‹œ๋ฆฌ์ฆˆ๋ช…์ด ๋‚จ์•„ ์žˆ๋˜ ๊ฒƒ์ด๋‹ค. ๊ณ ์œ ๋ช…์ฒ˜๋Ÿผ ๋ณด์กดํ•  ์ˆ˜๋„ ์žˆ์—ˆ์ง€๋งŒ, ์ผ๋ณธ์–ดํŒ ๋…์ž๊ฐ€ ์ฝ๋Š” ๊ณต๊ฐœ ๊ธ€์—์„œ๋Š” ไปŠๆ—ฅใฎไธ€ๆ—ฅ, ไปŠๆ—ฅใฎ่ช่จผ์ฒ˜๋Ÿผ ๋ฒˆ์—ญํ•˜๋Š” ํŽธ์ด ๋งž๋‹ค๊ณ  ๋ดค๋‹ค.

๋‹ค๋ฅธ ํ•˜๋‚˜๋Š” es/fr front matter์˜ locale ๊ฐ’์ด์—ˆ๋‹ค. ์›Œ์ปค๋Š” es-ES, fr-FR๋กœ ๋„ฃ์—ˆ์ง€๋งŒ, ํ˜„์žฌ locale registry์˜ source of truth๋Š” es, fr์˜€๋‹ค. ๊ทธ๋ž˜์„œ ๋ฒˆ์—ญ ํŒŒ์ผ์„ registry ๊ธฐ์ค€์œผ๋กœ ๋งž์ท„๋‹ค.

์ˆ˜์ • ํ›„ batch scope ๊ฒ€์ฆ์€ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 7
ready: 7
warnings: 0
errors: 0

55์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 216/311, pending 1, missing 94
zh-Hans  ready 216/311, pending 1, missing 94
es       ready 216/311, pending 1, missing 94
pt-BR    ready 216/311, pending 1, missing 94
fr       ready 216/311, pending 1, missing 94
id       ready 216/311, pending 1, missing 94

์ด ์‹œ์ ์—์„œ devlog/github-pages-blog์˜ ์ผ๋ฐ˜ backlog๋Š” ๋‹ซํ˜”๋‹ค. ๋‚จ์€ ๊ฒƒ์€ ์ด ์„ธ์…˜ ํฌ์ŠคํŠธ ํ•˜๋‚˜๋ฟ์ด๊ณ , ์ด ๊ธ€์€ ํ•œ๊ตญ์–ด ์›๋ฌธ์ด ์™„์„ฑ/ํ™•์ธ๋˜๊ธฐ ์ „๊นŒ์ง€ ๋ฒˆ์—ญํ•˜์ง€ ์•Š๊ธฐ๋กœ ์ด๋ฏธ ์ •ํ•œ ๋Œ€์ƒ์ด๋‹ค.

56์ฐจ batch๋ถ€ํ„ฐ๋Š” devlog/keymory๋กœ ๋„˜์–ด๊ฐ”๋‹ค.

2025-01-23  Keymory ๊ฐœ๋ฐœ ์ผ์ง€ #1: ๊ฐœ๋ฐœ ์ผ์ง€ ์ž‘์„ฑ ์‹œ์ž‘
2025-01-24  Keymory ๊ฐœ๋ฐœ ์ผ์ง€ #2: ์ด์ƒ๊ณผ ํ˜„์‹ค์˜ ์žฅ๋ฒฝ
2025-01-27  Keymory ๊ฐœ๋ฐœ ์ผ์ง€ #3: ๋ฐค์ƒ˜์ค‘
2025-01-30  Keymory ๊ฐœ๋ฐœ ์ผ์ง€ #4: Mood slider, OpenAI API

Keymory ๊ธ€์€ Daily Review๋‚˜ ์ผ๋ฐ˜ devlog์™€ ๊ตฌ์กฐ๊ฐ€ ์กฐ๊ธˆ ๋‹ฌ๋ž๋‹ค. ๊ฐœ๋ฐœ ์ฒดํฌ๋ฆฌ์ŠคํŠธ, inline HTML ๋Œ€ํ™” ์นด๋“œ, GPT-4o KPT ์ฝ”๋ฉ˜ํŠธ๊ฐ€ ์„ž์—ฌ ์žˆ์—ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์›Œ์ปค์—๊ฒŒ ์ž์—ฐ์Šค๋Ÿฌ์šด ๋ฒˆ์—ญ๋งŒ์ด ์•„๋‹ˆ๋ผ conversation-entry, conversation-meta, conversation-body, markdown="1" ๊ฐ™์€ ๊ตฌ์กฐ ๋ณด์กด์„ ๊ฐ™์ด ๋งก๊ฒผ๋‹ค.

์ด๋ฒˆ batch์—์„œ ์ค‘์š”ํ–ˆ๋˜ ๊ฑด ๊ณ ์œ ๋ช…๊ณผ ๋ฒˆ์—ญ ๋Œ€์ƒ์˜ ๊ตฌ๋ถ„์ด์—ˆ๋‹ค. Keymory, Grace, FlutterFlow, FireStore, OpenAI API ๊ฐ™์€ ์ด๋ฆ„์€ ๊ทธ๋Œ€๋กœ ๋‘ฌ์•ผ ํ•œ๋‹ค. ๋ฐ˜๋ฉด ๋ฏผํ˜, ์ž˜ํ•œ ์ , ์•„์‰ฌ์šด ์ , ์‹œ๋„ํ•ด๋ณผ ์ , ๊ฒฐ๋ก ์ฒ˜๋Ÿผ ๋…์ž๊ฐ€ ์ฝ๋Š” ๋ผ๋ฒจ์€ ๊ฐ ์–ธ์–ด๋กœ ์˜ฎ๊ฒจ์•ผ ํ•œ๋‹ค. ๊ทธ๋ž˜์•ผ ์˜์–ด๊ฐ€ ์•„๋‹Œ ์–ธ์–ด์—์„œ๋„ ํ•œ๊ตญ์–ด UI residue๊ฐ€ ๋‚จ์ง€ ์•Š๋Š”๋‹ค.

๊ฒ€์ฆ์€ batch scope์—์„œ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

56์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 220/311, pending 1, missing 90
zh-Hans  ready 220/311, pending 1, missing 90
es       ready 220/311, pending 1, missing 90
pt-BR    ready 220/311, pending 1, missing 90
fr       ready 220/311, pending 1, missing 90
id       ready 220/311, pending 1, missing 90

57์ฐจ batch๋„ devlog/keymory ๋„ค ๊ธ€์ด์—ˆ๋‹ค.

2025-01-31  Keymory ๊ฐœ๋ฐœ ์ผ์ง€ #5: tmpGetAIComment, Custom OpenAI API Call
2025-02-01  Keymory ๊ฐœ๋ฐœ ์ผ์ง€ #6: ChatPage ์ตœ์ ํ™”, DiaryPage ํ†ตํ•ฉ
2025-02-03  Keymory ๊ฐœ๋ฐœ ์ผ์ง€ #7: FleatherViewer ์ด์Šˆ ํ•ด๊ฒฐ, HomeFeedPage Unexpected null value ์ด์Šˆ ํ•ด๊ฒฐ
2025-02-04  Keymory ๊ฐœ๋ฐœ ์ผ์ง€ #8: DiaryPage ๊ฐ์ • ํ‚ค์›Œ๋“œ ์‹œ์Šคํ…œ ๊ตฌ์ถ•, AI ์ฝ”๋ฉ˜ํŠธ ์บ๋ฆญํ„ฐ ์„ค์ •

์ด๋ฒˆ batch๋Š” ์ฝ”๋“œ์™€ ๊ตฌ์กฐ ๋ณด์กด ๋น„์ค‘์ด ๋” ์ปธ๋‹ค. Dart snippet, JSON ์˜ˆ์‹œ, {::options parse_block_html="true" /} ๊ฐ™์€ kramdown option, <details>, <summary> ๋ธ”๋ก์ด ์„ž์—ฌ ์žˆ์—ˆ๋‹ค. ๋ฒˆ์—ญ์€ ๊ธ€์„ ์ฝํžˆ๊ฒŒ ๋งŒ๋“ค์–ด์•ผ ํ•˜์ง€๋งŒ, ์ด๋Ÿฐ ๋งˆ์ปค๋ฅผ ๊ฑด๋“œ๋ฆฌ๋ฉด ๋ Œ๋”๋ง์ด ๊นจ์ง„๋‹ค.

๊ทธ๋ž˜์„œ ์›Œ์ปค ๊ฒ€์ฆ ์กฐ๊ฑด์—๋„ code fence, raw/endraw, Liquid marker, kramdown option pairing, HTML tag count sanity๋ฅผ ๋„ฃ์—ˆ๋‹ค. ํ†ตํ•ฉ ๊ฒ€์ฆ์—์„œ๋Š” ๋‹ค์‹œ source scope ๊ธฐ์ค€์œผ๋กœ ํ™•์ธํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

57์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 224/311, pending 1, missing 86
zh-Hans  ready 224/311, pending 1, missing 86
es       ready 224/311, pending 1, missing 86
pt-BR    ready 224/311, pending 1, missing 86
fr       ready 224/311, pending 1, missing 86
id       ready 224/311, pending 1, missing 86

58์ฐจ batch๋Š” devlog/keymory์˜ ๋งˆ์ง€๋ง‰ ์„ธ ๊ธ€์ด์—ˆ๋‹ค.

2025-02-05  Keymory ๊ฐœ๋ฐœ ์ผ์ง€ #9: Diary to Chat ๊ตฌํ˜„, AI ์ฝ”๋ฉ˜ํŠธ ์‹œ์Šคํ…œ ์ตœ์ ํ™”
2025-02-06  Keymory ๊ฐœ๋ฐœ ์ผ์ง€ #10: Diary <-> Chat ์—ฐ๊ฒฐ, ์ž๋™ ์š”์•ฝ ๊ธฐ๋Šฅ ์ถ”๊ฐ€
2025-02-07  Keymory ๊ฐœ๋ฐœ ์ผ์ง€ #11: ๊ฐœ๋ฐœ ์ผ์‹œ ์ค‘์ง€. (์•„์ดํŽ ํ†ค ๋, FlutterFlow ๊ฐœ๋ฐœ ์ค‘๋‹จ.)

์ด batch๊ฐ€ ๋๋‚˜๋ฉด์„œ Keymory ๊ฐœ๋ฐœ์ผ์ง€ 11๊ฐœ๋Š” ja, zh-Hans, es, pt-BR, fr, id๊นŒ์ง€ ๋ชจ๋‘ ์ฑ„์›Œ์กŒ๋‹ค. ๋งˆ์ง€๋ง‰ ์„ธ ๊ธ€๋„ Chat/Diary ์—ฐ๊ฒฐ, ์ž๋™ ์š”์•ฝ, ๋ฐœํ‘œ ์ œ์ถœ, AIFFELTHON ์ข…๋ฃŒ์ฒ˜๋Ÿผ ์•ฑ ๊ตฌ์กฐ์™€ ๋Œ€ํšŒ ๋งฅ๋ฝ์ด ์„ž์—ฌ ์žˆ์—ˆ๋‹ค.

๊ฒ€์ฆ์€ batch scope์—์„œ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 21
ready: 21
warnings: 0
errors: 0

58์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 227/311, pending 1, missing 83
zh-Hans  ready 227/311, pending 1, missing 83
es       ready 227/311, pending 1, missing 83
pt-BR    ready 227/311, pending 1, missing 83
fr       ready 227/311, pending 1, missing 83
id       ready 227/311, pending 1, missing 83

์ด ์‹œ์ ์—์„œ devlog/keymory backlog๋Š” ๋‹ซํ˜”๋‹ค.

59์ฐจ batch๋Š” diary/restaurant ์ฒซ ๋„ค ๊ธ€์ด์—ˆ๋‹ค.

2025-06-09  ์ธ์ƒ ์ตœ๊ณ  ์งฌ๋ฝ• ๋ง›์ง‘ ๋„์•ผ์งฌ๋ฝ• ๋ชฉ๋™๊ณ ์ฒ™์ 
2025-06-18  ์‹ ์ดŒ ์ค‘์‹ ์ธ์ƒ ๋ง›์ง‘ ๋ฌด๊ถํ™”๋ฐ˜์  ์‹ ์ดŒ์  24์‹œ
2025-06-24  ํ™๋Œ€ ํ•ฉ์ •์—ญ ์–‘๊ผฌ์น˜ ๋ง›์ง‘ ๋กœ์šฐ์ƒน๋กœ์šฐ
2025-06-27  ํ™๋Œ€ ํ•ฉ์ •์—ญ ์น˜ํ‚จ ์ธ์ƒ ๋ง›์ง‘ ๋‚˜๋“ค๋ชฉ ์น˜ํ‚จํ˜ธํ”„

restaurant ๊ธ€์€ ๋„ค์ด๋ฒ„ PDF ๋ฐฑ์—… import ๊ธ€์ด๋ผ raw ๋ธ”๋ก ์•ˆ์— ์›๋ฌธ ๋ณธ๋ฌธ๊ณผ ์ด๋ฏธ์ง€๊ฐ€ ๊ธธ๊ฒŒ ๋“ค์–ด ์žˆ๋‹ค. ์—ฌ๊ธฐ์„œ๋Š” ์ฝ”๋“œ๋ณด๋‹ค ์ด๋ฏธ์ง€ path, ์›๋ฌธ URL, /, notice block์„ ๋ณด์กดํ•˜๋Š” ๊ฒŒ ์ค‘์š”ํ–ˆ๋‹ค.

๋˜ ํ•˜๋‚˜ ์‹ ๊ฒฝ ์“ด ๊ฑด ์‹๋‹น๋ช…๊ณผ ์ง€๋ช…์ด๋‹ค. ๋„์•ผ์งฌ๋ฝ•, ๋ฌด๊ถํ™”๋ฐ˜์ , ๋กœ์šฐ์ƒน๋กœ์šฐ, ๋‚˜๋“ค๋ชฉ ์น˜ํ‚จํ˜ธํ”„ ๊ฐ™์€ ์ด๋ฆ„์€ ์˜๋ฏธ๋ฅผ ์„ค๋ช…ํ•˜๋”๋ผ๋„ ๊ณ ์œ ๋ช…์œผ๋กœ ๋‚จ๊ฒจ์•ผ ํ•œ๋‹ค. ๋ฐ˜๋Œ€๋กœ ์›๋ฌธ, ๋„ค์ด๋ฒ„ ๋ฐœํ–‰ ์‹œ๊ฐ, ์›๋ฌธ ์นดํ…Œ๊ณ ๋ฆฌ, ์˜์—…์‹œ๊ฐ„, ๊ฐ์ƒ ๋ฌธ์žฅ์€ ๊ฐ ์–ธ์–ด ๋…์ž๊ฐ€ ์ฝ์„ ์ˆ˜ ์žˆ๊ฒŒ ๋ฒˆ์—ญํ•ด์•ผ ํ•œ๋‹ค.

๊ฒ€์ฆ์€ batch scope์—์„œ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

59์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 231/311, pending 1, missing 79
zh-Hans  ready 231/311, pending 1, missing 79
es       ready 231/311, pending 1, missing 79
pt-BR    ready 231/311, pending 1, missing 79
fr       ready 231/311, pending 1, missing 79
id       ready 231/311, pending 1, missing 79

60์ฐจ batch๋„ diary/restaurant ๋„ค ๊ธ€์ด์—ˆ๋‹ค.

2025-07-04  ํ™๋Œ€ ํ•ฉ์ •์—ญ ์น˜ํ‚จ ๋ง›์ง‘ ํ˜ธ๊ณ„ ํ•ฉ์ •๋ณธ์ 
2025-07-11  ๋ถ„์œ„๊ธฐ ์ข‹์€ ์‘์•”๋™์ˆ ์ง‘ ์—ฐ๋ณด๋ผ
2025-07-12  ํž™ํ•œ ๋А๋‚Œ์˜ ๊ฐ€์„ฑ๋น„ ํ™๋Œ€ํฌ์ฐจ ๋‚™์›
2025-07-14  ๋ถ„์œ„๊ธฐ๋„ ๋ง›๋„ ์ข‹์€ ํ•ฉ์ • ํ™๋Œ€ ์นตํ…Œ์ผ๋ฐ” ์•„์ดˆ๋ฐ”

์ด๋ฒˆ batch๋Š” ํ˜‘์ฐฌ ๋ฐฉ๋ฌธ, ์ˆ ์ง‘, ํฌ์ฐจ, ์นตํ…Œ์ผ๋ฐ” ๊ธ€์ด ์„ž์—ฌ ์žˆ์—ˆ๋‹ค. restaurant ๊ธ€์€ ๋ณธ๋ฌธ ๊ฐ์ƒ๋งŒ ๋ฒˆ์—ญํ•˜๋ฉด ๋˜๋Š” ๊ฒŒ ์•„๋‹ˆ๋ผ, ๊ฐ ๊ธ€ ์•ˆ์— 18๊ฐœ, 25๊ฐœ, 18๊ฐœ, 28๊ฐœ ์ˆ˜์ค€์˜ ์ด๋ฏธ์ง€ ์ฐธ์กฐ๊ฐ€ ๋“ค์–ด ์žˆ์—ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์›Œ์ปค ๊ฒ€์ฆ๊ณผ ํ†ตํ•ฉ ๊ฒ€์ฆ์—์„œ ์ด๋ฏธ์ง€ path parity๋ฅผ ๊ณ„์† ํ™•์ธํ–ˆ๋‹ค.

๊ฒ€์ฆ์€ batch scope์—์„œ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

60์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 235/311, pending 1, missing 75
zh-Hans  ready 235/311, pending 1, missing 75
es       ready 235/311, pending 1, missing 75
pt-BR    ready 235/311, pending 1, missing 75
fr       ready 235/311, pending 1, missing 75
id       ready 235/311, pending 1, missing 75

61์ฐจ batch๋„ diary/restaurant ๋„ค ๊ธ€์ด์—ˆ๋‹ค.

2025-07-15  ์—ฐ๋‚จ๋™ ๊ฐ€์„ฑ๋น„ ํ•œ์‹ ์ˆ ์ง‘ ๊ผฌ์š”์‹๋‹น
2025-07-17  ๊ฐ์„ฑ์ด ์ถฉ๋งŒํ•œ ์‹ ์ดŒ ์ฃผ์  ๊ฐ์„ฑ๋งค์ธ
2025-07-29  ์ผ๋ณธ ๊ฐ์„ฑ ์ถฉ๋งŒํ•œ ํ˜œํ™” ๋Œ€ํ•™๋กœ ๋ง›์ง‘ ํ•˜๋‚˜๋งˆํ† 
2025-07-31  ์‹ ์ดŒ ๋ง›์ง‘ ๋ƒ‰๋™ ์‚ผ๊ฒน์‚ด ์ „๋ฌธ์  ์‹ ์ดŒ์Šค๋งˆ์ผ์‚ผ๊ฒน

์ด batch์—์„œ๋„ raw block, Naver ์›๋ฌธ ๋งํฌ, notice block, ์ด๋ฏธ์ง€ path๋ฅผ ๋ณด์กดํ–ˆ๋‹ค. restaurant ๊ธ€์€ ๊ธ€๋งˆ๋‹ค ์ด๋ฏธ์ง€๊ฐ€ ๋งŽ์€ ๋Œ€์‹  ๊ตฌ์กฐ๊ฐ€ ๋น„๊ต์  ์ผ์ •ํ•ด์„œ, batch ๋‹จ์œ„ ๊ฒ€์ฆ์ด ์ž˜ ๋งž๋Š”๋‹ค.

๊ฒ€์ฆ์€ batch scope์—์„œ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

61์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 239/311, pending 1, missing 71
zh-Hans  ready 239/311, pending 1, missing 71
es       ready 239/311, pending 1, missing 71
pt-BR    ready 239/311, pending 1, missing 71
fr       ready 239/311, pending 1, missing 71
id       ready 239/311, pending 1, missing 71

62์ฐจ batch๋Š” diary/restaurant์˜ ๋งˆ์ง€๋ง‰ ๋‘ ๊ธ€์ด์—ˆ๋‹ค.

2025-07-31  ํ”ผ์ž๊ฐ€ ๊ฟ€๋ง›์ธ ์‹ ์ดŒ ์ˆ ์ง‘ ๋ธŒ๋ฆญ์Šค5221๋งฅ์ฃผ
2025-09-09  ๋ช…๋ฅœ์ง„์‚ฌ๊ฐˆ๋น„ ๋งˆํฌ์„ฑ์‚ฐ์  ํ›„๊ธฐ

๋‘ ๋ฒˆ์งธ ๊ธ€์—๋Š” ์ฒดํ—˜๋‹จ ์‹์‚ฌ๊ถŒ ์ œ๊ณต ๊ณ ์ง€๊ฐ€ ์žˆ์—ˆ๋‹ค. ์ด๋Ÿฐ ๋ฌธ์žฅ์€ ๋‹จ์ˆœํ•œ ๊ฐ์ƒ์ด ์•„๋‹ˆ๋ผ ๊ณต๊ฐœ ๊ธ€์˜ ์กฐ๊ฑด์ด๋ฏ€๋กœ, ๊ฐ ์–ธ์–ด์—์„œ๋„ sponsored-review disclosure๋กœ ๋ถ„๋ช…ํžˆ ์˜ฎ๊ธฐ๋„๋ก ํ–ˆ๋‹ค.

๊ฒ€์ฆ์€ batch scope์—์„œ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 14
ready: 14
warnings: 0
errors: 0

62์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 241/311, pending 1, missing 69
zh-Hans  ready 241/311, pending 1, missing 69
es       ready 241/311, pending 1, missing 69
pt-BR    ready 241/311, pending 1, missing 69
fr       ready 241/311, pending 1, missing 69
id       ready 241/311, pending 1, missing 69

์ด ์‹œ์ ์—์„œ diary/restaurant backlog๋Š” ๋‹ซํ˜”๋‹ค.

63์ฐจ batch๋ถ€ํ„ฐ๋Š” reading/mindset๋กœ ๋„˜์–ด๊ฐ”๋‹ค.

2025-01-04  ์ ˆ๋ฐ•ํ•จ์„ ๋ฒ„๋ฆฐ ๋‚จ์ž๋“ค ใ…ก by ๋งˆํฌ ๋งจ์Šจ
2025-05-17  ๋ฌด๊ฐ€์น˜ํ•œ ๊ฒฝํ—˜์€ ์—†๋‹ค, ์˜๋ฏธ๋ถ€์—ฌ์˜ ์„ ๋ฌผ
2025-05-18  RSD - ์ •๋ณด: ๋ฏธ๋ฃจ๊ธฐ ๊ทน๋ณต, ํฌ๊ทธ ํ–‰๋™ ๋ชจ๋ธ(B=MAP), Daily Habit ALL PASS
2025-05-23  RSD - ๊ธฐํš: ํˆฌ๋‘/๋ชฉํ‘œ ๊ด€๋ฆฌ ๋ฃจํ‹ด ์‹œ์Šคํ…œ ๊ธฐํš

์ด batch๋Š” restaurant๋ณด๋‹ค ํ›จ์”ฌ ๋” ์กฐ์‹ฌ์Šค๋Ÿฌ์› ๋‹ค. ์ฒซ ๊ธ€์€ ๊ธด ๋…์„œ ๋ฉ”๋ชจ์˜€๊ณ , ๋‚˜๋จธ์ง€ ์„ธ ๊ธ€์€ ๋„ค์ด๋ฒ„ PDF import ๊ธ€์ด๋ฉด์„œ๋„ ์‚ฌ๊ณ  ํ๋ฆ„๊ณผ ๊ฐœ๋… ์ •์˜๊ฐ€ ๊ธธ๊ฒŒ ์ด์–ด์ง€๋Š” ๊ธ€์ด์—ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๋ฒˆ์—ญ ์›์น™์€ โ€œ์ฝ๊ธฐ ์ข‹๊ฒŒ ์ค„์ด๊ธฐโ€๊ฐ€ ์•„๋‹ˆ๋ผ โ€œ์ถ•์•ฝํ•˜์ง€ ์•Š๊ณ  ๊ตฌ์กฐ๋ฅผ ์œ ์ง€ํ•˜๊ธฐโ€์˜€๋‹ค.

ํŠนํžˆ Mark Manson, Robert Glover, Gemini 2.5 Pro, RSD, Fogg Behavior Model, B=MAP, Daily Habit ALL PASS ๊ฐ™์€ ์ด๋ฆ„๊ณผ ๊ฐœ๋…์€ ๊ฐ ์–ธ์–ด์—์„œ ์ฝํžˆ๋„๋ก ํ•˜๋˜, ๊ธฐ์ˆ ์ /๊ฐœ๋…์  ์‹๋ณ„์„ฑ์€ ์œ ์ง€ํ•ด์•ผ ํ–ˆ๋‹ค.

๊ฒ€์ฆ์€ batch scope์—์„œ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

63์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 245/311, pending 1, missing 65
zh-Hans  ready 245/311, pending 1, missing 65
es       ready 245/311, pending 1, missing 65
pt-BR    ready 245/311, pending 1, missing 65
fr       ready 245/311, pending 1, missing 65
id       ready 245/311, pending 1, missing 65

64์ฐจ batch๋„ reading/mindset ๋„ค ๊ธ€์ด์—ˆ๋‹ค.

2025-05-26  ํˆฌ๋‘/๋ชฉํ‘œ ๊ด€๋ฆฌ ๋ฃจํ‹ด ์‹œ์Šคํ…œ๊ณผ ์•„์ด์  ํ•˜์›Œ ๋งคํŠธ๋ฆญ์Šค ๋น„๊ต
2025-05-28  ์ ˆ๋ฐ•ํ•จ์„ ๋ฒ„๋ฆฐ ๋‚จ์ž๋“ค p56: ์‚ฌ๋žŒ๋“ค์€ ์„œ๋กœ์˜ ๋ชจ๋‚œ ๋ฉด์— ๋Œ๋ฆฐ๋‹ค
2025-05-29  ์ ˆ๋ฐ•ํ•จ์„ ๋ฒ„๋ฆฐ ๋‚จ์ž๋“ค p101: ๊ฑฐ์ ˆ์€ ์ถ•๋ณต์ด์ง€ ์ €์ฃผ๊ฐ€ ์•„๋‹ˆ๋‹ค
2025-05-30  ์ ˆ๋ฐ•ํ•จ์„ ๋ฒ„๋ฆฐ ๋‚จ์ž๋“ค p133: ๋” ์ด์ƒ '์„'๋กœ ์‚ด์ง€ ๋งˆ๋ผ

์ด๋ฒˆ batch๋Š” ์ƒ์‚ฐ์„ฑ ์‹œ์Šคํ…œ ๋น„๊ต ๊ธ€ ํ•˜๋‚˜์™€ Models ๋…์„œ ๊ฐ์ƒ ์„ธ ๊ธ€์ด์—ˆ๋‹ค. Eisenhower Matrix, Two-Track Routine System, TickTick ๊ฐ™์€ ์ƒ์‚ฐ์„ฑ ๊ฐœ๋…๊ณผ vulnerability, honesty ๊ฐ™์€ ๊ด€๊ณ„/์ž๊ธฐ์ธ์‹ ๊ฐœ๋…์„ ๊ฐ ์–ธ์–ด์—์„œ ์ฝํžˆ๊ฒŒ ์˜ฎ๊ธฐ๋˜, ๊ฐœ๋… ์‹๋ณ„์„ฑ์€ ์œ ์ง€ํ–ˆ๋‹ค.

๊ฒ€์ฆ์€ batch scope์—์„œ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

64์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 249/311, pending 1, missing 61
zh-Hans  ready 249/311, pending 1, missing 61
es       ready 249/311, pending 1, missing 61
pt-BR    ready 249/311, pending 1, missing 61
fr       ready 249/311, pending 1, missing 61
id       ready 249/311, pending 1, missing 61

65์ฐจ batch๋Š” reading/mindset์˜ ๋งˆ์ง€๋ง‰ ๋‹ค์„ฏ ๊ธ€์ด์—ˆ๋‹ค.

2025-05-31  ์ ˆ๋ฐ•ํ•จ์„ ๋ฒ„๋ฆฐ ๋‚จ์ž๋“ค p159: ๋‚ด ์‹ ๋…์ด ๋‚ด ๊ด€๊ณ„๋ฅผ ๊ฒฐ์ •ํ•œ๋‹ค
2025-06-03  ์ ˆ๋ฐ•ํ•จ์„ ๋ฒ„๋ฆฐ ๋‚จ์ž๋“ค p169: ๋‚ด ์•ˆ์˜ ์ •์งํ•œ ๋ชฉ์†Œ๋ฆฌ
2025-06-05  ์ ˆ๋ฐ•ํ•จ์„ ๋ฒ„๋ฆฐ ๋‚จ์ž๋“ค p202: ์ค€๋น„๋ผ๋Š” ํ•‘๊ณ„์™€ ํ–‰๋™ํ•  ์šฉ๊ธฐ
2025-06-09  ์ ˆ๋ฐ•ํ•จ์„ ๋ฒ„๋ฆฐ ๋‚จ์ž๋“ค p210: ๋ˆ„๊ตฌ ์ž˜๋ชป์ธ์ง€ ํ—ท๊ฐˆ๋ฆฐ๋‹ค๋ฉด, ๋‚ด ์ž˜๋ชป์ด๋‹ค
2025-07-28  ์˜์ง€๋ ฅ ์„ค๊ณ„์˜ ๊ธฐ์ˆ : ๋ฒŒ๊ธˆ๋ณด๋‹ค ๋žœ๋ค ์†Œ๊ฐœํŒ… 1ํšŒ๊ถŒ์ด ๋Œ๋ฆฌ๋Š” ์ด์œ 

์ด batch๋กœ reading/mindset backlog๋„ ๋‹ซํ˜”๋‹ค.

๊ฒ€์ฆ ์ค‘์— ์ž‘์€ front matter ์˜ค๋ฅ˜๊ฐ€ ์žกํ˜”๋‹ค. ์ŠคํŽ˜์ธ์–ด์™€ ํ”„๋ž‘์Šค์–ด ํŒŒ์ผ์˜ locale์„ ๊ฐ๊ฐ es-ES, fr-FR๋กœ ๋„ฃ์—ˆ๋Š”๋ฐ, ์ด ๋ธ”๋กœ๊ทธ์˜ ํ™œ์„ฑ locale registry๋Š” _data/locales.yml ๊ธฐ์ค€์œผ๋กœ es, fr์˜€๋‹ค. ๋ฒˆ์—ญ ํ”„๋กฌํ”„ํŠธ์˜ ๊ธฐ์–ต๋ณด๋‹ค registry๊ฐ€ ์šฐ์„ ์ด๋‹ค. ๊ทธ๋ž˜์„œ ํ•ด๋‹น 10๊ฐœ ํŒŒ์ผ์˜ locale๋งŒ ๋ฐ”๋กœ์žก๊ณ  ๋‹ค์‹œ scoped sync๋ฅผ ๋Œ๋ ธ๋‹ค.

๊ฒ€์ฆ์€ batch scope์—์„œ ์ตœ์ข… ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 35
ready: 35
warnings: 0
errors: 0

65์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 254/311, pending 1, missing 56
zh-Hans  ready 254/311, pending 1, missing 56
es       ready 254/311, pending 1, missing 56
pt-BR    ready 254/311, pending 1, missing 56
fr       ready 254/311, pending 1, missing 56
id       ready 254/311, pending 1, missing 56

66์ฐจ batch๋ถ€ํ„ฐ๋Š” diary/life๋กœ ๋„˜์–ด๊ฐ”๋‹ค.

2025-05-16  ๋‚ด๊ฐ€ GitHub Pages์—์„œ ๋„ค์ด๋ฒ„ ๋ธ”๋กœ๊ทธ๋กœ ์ด์‚ฌ ์˜จ ์ด์œ 
2025-05-20  Da Capo: Piano, ma subito A Tempo, Forte e Brillante!
2025-05-20  ๋ฐฑ๋ฌธ์ด ๋ถˆ์—ฌ์ผ๊ฒฌ, ๋ฐฑ๊ฒฌ์ด ๋ถˆ์—ฌ์ผํƒ€
2025-05-23  ๋จธ๋ฆฌ๊ฐ€ ๊นจ์ง€๋”๋ผ๋„ ํ•ด์•ผ๋งŒ ํ•  ๊ฒƒ์€ ํ•˜๊ณ  ๋„˜์–ด๊ฐ€์•ผ ํ•œ๋‹ค

์ด ๋ฌถ์Œ์€ ๊ธฐ์ˆ  ๊ธ€์ด ์•„๋‹ˆ๋ผ ์ƒํ™œ ๊ธฐ๋ก์ด์—ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๋ฒˆ์—ญ ๊ธฐ์ค€๋„ ๋‹ฌ๋ž๋‹ค. GitHub Pages, Naver Blog, Flutter, Fogg Behavior Model ๊ฐ™์€ ๊ณ ์œ ๋ช…์‚ฌ์™€ ๊ฐœ๋…์€ ์œ ์ง€ํ•˜๋˜, ๊ธ€์˜ ์ค‘์‹ฌ์€ โ€œ๋ฌด์Šจ ๊ธฐ๋Šฅ์„ ๋งŒ๋“ค์—ˆ๋‚˜โ€๊ฐ€ ์•„๋‹ˆ๋ผ โ€œ๊ทธ๋‚  ์–ด๋–ค ๊ฐ์ •๊ณผ ๊ฒฐ์‹ฌ์ด ์žˆ์—ˆ๋‚˜โ€์˜€๋‹ค.

๊ฒ€์ฆ์€ batch scope์—์„œ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

66์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 258/311, pending 1, missing 52
zh-Hans  ready 258/311, pending 1, missing 52
es       ready 258/311, pending 1, missing 52
pt-BR    ready 258/311, pending 1, missing 52
fr       ready 258/311, pending 1, missing 52
id       ready 258/311, pending 1, missing 52

67์ฐจ batch๋„ diary/life ๋„ค ๊ธ€์ด์—ˆ๋‹ค.

2025-05-24  ๋‚˜๋ผ๋„ ํ•ด์•ผ์ง€!
2025-05-26  ์‰ฌ์—ˆ๋‹ค... ๊ฐˆ๊นŒ? / ์‹œ๊ฐ„์ด ์•ฝ์ด๋‹ค.
2025-05-28  ์ฒซ ์•จ๋ฒ” Love Your Soul ๋ฐœ๋งค, ์•„ํ‹ฐ์ŠคํŠธ ์ž‰ํ˜ํ‚น ๋ฐ๋ท”์˜ ์„œ๋ง‰
2025-05-31  ๋‹น๊ทผ๋งˆ์ผ“ ์™ธ๋ถ€ ์ฑ„๋„ ์œ ๋„ ์‚ฌ๊ธฐ ์ฃผ์˜

์ด ๋ฌถ์Œ์—์„œ๋Š” ํ‘œํ˜„์˜ ๊ฒฐ์„ ํŠนํžˆ ์กฐ์‹ฌํ•ด์•ผ ํ–ˆ๋‹ค. ๋‚˜๋ผ๋„ ํ•ด์•ผ์ง€! ๊ฐ™์€ ์งง์€ ๊ฐํƒ„์€ ์ง์—ญํ•˜๋ฉด ํž˜์ด ์ฃฝ๊ณ , ๋ฒˆ์•„์›ƒ ๊ธ€์˜ ์‰ฌ์—ˆ๋‹ค... ๊ฐˆ๊นŒ?๋Š” ๋„ˆ๋ฌด ๋งค๋„๋Ÿฝ๊ฒŒ ๋‹ค๋“ฌ์œผ๋ฉด ์›๋ฌธ์˜ ๋งฅ ๋น ์ง„ ํ˜ธํก์ด ์‚ฌ๋ผ์ง„๋‹ค. ๋˜ Love Your Soul, Suno AI, Music Labs, ๋‹น๊ทผ๋งˆ์ผ“์ฒ˜๋Ÿผ ๊ณ ์œ ๋ช…์‚ฌ๊ฐ€ ์„ž์—ฌ ์žˆ์–ด์„œ, ๊ฐ ์–ธ์–ด์—์„œ ์„ค๋ช…์„ ๋ณดํƒœ๊ธฐ๋ณด๋‹ค ์›๋ฌธ ์‹๋ณ„์„ฑ์„ ์œ ์ง€ํ•˜๋Š” ์ชฝ์œผ๋กœ ๋งž์ท„๋‹ค.

๊ฒ€์ฆ์€ batch scope์—์„œ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

67์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 262/311, pending 1, missing 48
zh-Hans  ready 262/311, pending 1, missing 48
es       ready 262/311, pending 1, missing 48
pt-BR    ready 262/311, pending 1, missing 48
fr       ready 262/311, pending 1, missing 48
id       ready 262/311, pending 1, missing 48

68์ฐจ batch๋Š” diary/life์˜ ๋งˆ์ง€๋ง‰ ๋„ค ๊ธ€์ด์—ˆ๋‹ค.

2025-06-11  ๋ณต์‹ฑ์žฅ ์žฌ๊ฐœ 1์ผ์ฐจ์— ๋ชธ์‚ด ๊ฑธ๋ฆด ๋ป”ํ•œ ์ฐ
2025-07-16  AIํ•œํ…Œ ๊ธํ˜€์„œ ์ง„์‹ฌ์œผ๋กœ ์‹ธ์šฐ๋‹ค๊ฐ€ ๊นจ๋‹ฌ์Œ ์–ป์€ ์ฐ
2025-08-13  ์ด์ƒํ˜•์„ ๋†“์นœ ๋‚ , ์ด์ƒ์„ ์ฐพ์€ ๋‚ 
2025-08-16  ์ค‘๊ตญ ๊ณต์•ˆ์— ์ฃผ์˜ ์ธ๋ฌผ๋กœ ๋“ฑ๋ก๋œ ์ฐ

๋งˆ์ง€๋ง‰ ๊ธ€์€ ํŠนํžˆ ์กฐ์‹ฌํ•ด์•ผ ํ–ˆ๋‹ค. ์ค‘๊ตญ ๋‚ด ์‹ ๋ถ„์ฆ ์—†๋Š” ํƒˆ๋ถ๋ฏผ, ์˜ˆ๋ฐฐ ๋ฐฉ์†ก, ๋ณด์•ˆ ๋ฉ”์‹ ์ €, ์ค‘๊ตญ ๊ณต์•ˆ, ๊ฐ•์ œ ๋ถ์†ก ์œ„ํ—˜ ๊ฐ™์€ ํ‘œํ˜„์€ ์ •์น˜์ /์ข…๊ต์  ๋ฏผ๊ฐ์„ฑ์ด ์žˆ์ง€๋งŒ, ๊ทธ ๋ฏผ๊ฐ์„ฑ์„ ์ด์œ ๋กœ ๋ฒˆ์—ญ์—์„œ ์˜๋ฏธ๋ฅผ ํ๋ฆฌ๋ฉด ์•ˆ ๋œ๋‹ค. ์ด๋ฒˆ batch์—์„œ๋Š” ๊ณผ์žฅ๋„ ์™„๊ณกํ™”๋„ ํ•˜์ง€ ์•Š๊ณ  ์›๋ฌธ ์˜๋ฏธ๋ฅผ ๊ทธ๋Œ€๋กœ ๋ณด์กดํ•˜๋Š” ์ชฝ์„ ๋ช…์‹œํ–ˆ๋‹ค.

๊ฒ€์ฆ์€ batch scope์—์„œ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

68์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 266/311, pending 1, missing 44
zh-Hans  ready 266/311, pending 1, missing 44
es       ready 266/311, pending 1, missing 44
pt-BR    ready 266/311, pending 1, missing 44
fr       ready 266/311, pending 1, missing 44
id       ready 266/311, pending 1, missing 44

์ด ์‹œ์ ์—์„œ diary/life backlog๋„ ๋‹ซํ˜”๋‹ค.

69์ฐจ batch๋ถ€ํ„ฐ๋Š” diary/ai๋กœ ๋„˜์–ด๊ฐ”๋‹ค.

2024-12-23  GPT, o3, AGI, ํœด๋จธ๋…ธ์ด๋“œ, ํŠน์ด์ 
2025-04-07  AI ์‹œ๋Œ€์˜ ์ƒ์กด ๊ฐ€์ด๋“œ๋ผ์ธ
2025-05-21  AI ์‹œ๋Œ€์— ๋„์ง„ ์กฐ๊ธ‰ํ•จ์ด๋ผ๋Š” ๋ณ‘
2025-05-31  AI ๋ฆฌํ„ฐ๋Ÿฌ์‹œ๋ฅผ ํ‚ค์šฐ๊ณ  ์ธ๊ฐ„๋‹ค์›€์„ ์ง€์ผœ์•ผ ์ƒ์กดํ•  ์ˆ˜ ์žˆ๋‹ค

์ด ๋ฌถ์Œ์€ permalink๊ฐ€ ์„ž์—ฌ ์žˆ์—ˆ๋‹ค. ๋‘ ๊ธ€์€ slugํ˜• permalink์˜€๊ณ , ๋‘ ๊ธ€์€ naver-*ํ˜• permalink์˜€๋‹ค. ๊ทธ๋ž˜์„œ ํŒŒ์ผ๋ช…๋งŒ ๋ณด๊ณ  URL์„ ์ถ”๋ก ํ•˜์ง€ ์•Š๊ณ , ์˜์–ด ๊ธฐ์ค€๋ณธ๊ณผ registry ๊ธฐ์ค€์„ ํ™•์ธํ•œ ๋’ค ๊ฐ ์–ธ์–ด permalink๋ฅผ ๊ทธ๋Œ€๋กœ ๋งž์ท„๋‹ค.

๋˜ iframe, raw/endraw, code span, AI ๋ชจ๋ธ๋ช…, AGI, singularity, contextual intelligence, AI literacy ๊ฐ™์€ ๊ฐœ๋…์–ด๊ฐ€ ๋งŽ์•˜๋‹ค. ์ด๋Ÿฐ ๊ธ€์€ ๋ฒˆ์—ญ๋ณด๋‹ค ๊ตฌ์กฐ ๋ณด์กด์ด ๋จผ์ €๋‹ค. ๋ฌธ์žฅ์ด ์ž์—ฐ์Šค๋Ÿฌ์›Œ๋„ iframe์ด๋‚˜ raw block, code span์ด ๊นจ์ง€๋ฉด ๊ธ€์€ ์‹คํŒจํ•œ๋‹ค.

๊ฒ€์ฆ์€ batch scope์—์„œ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

69์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 270/311, pending 1, missing 40
zh-Hans  ready 270/311, pending 1, missing 40
es       ready 270/311, pending 1, missing 40
pt-BR    ready 270/311, pending 1, missing 40
fr       ready 270/311, pending 1, missing 40
id       ready 270/311, pending 1, missing 40

70์ฐจ batch๋„ diary/ai ๋„ค ๊ธ€์ด์—ˆ๋‹ค.

2025-06-03  ํŠน์ด์ ์ด ๋‹ค๊ฐ€์˜ค๋Š” AI ์‹œ๋Œ€
2025-06-14  AI์—๊ฒŒ ์ง€๋ฐฐ๋‹นํ•˜์ง€ ์•Š๊ณ  ํ–‰๋ณตํ•˜๊ฒŒ ์‚ฌ๋Š” ๋ฒ•
2025-07-24  ๊ฐœ๋ฐœ์ž๋Š” AI์— ์˜ํ•ด ์ ์ฐจ์ ์œผ๋กœ ๋Œ€์ฒด๋  ๊ฒƒ์ด๋‹ค
2025-07-25  Claude Code์˜ ์‹ ๊ธฐ๋Šฅ Agents๋กœ ๋ฐ”์ด๋ธŒ ์ฝ”๋”ฉ ๋“œ๋ฆผํŒ€ ๊ฒฐ์„ฑ

์ด๋ฒˆ ๋ฌถ์Œ์€ AI ๋‹ด๋ก ๊ณผ ๋„๊ตฌ ์‚ฌ์šฉ๊ธฐ๊ฐ€ ์„ž์—ฌ ์žˆ์—ˆ๋‹ค. decidability, context size, AI literacy, contextual intelligence ๊ฐ™์€ ๊ฐœ๋…์–ด๋Š” ๊ฐ ์–ธ์–ด์—์„œ ์ฝํžˆ๊ฒŒ ์˜ฎ๊ธฐ๋˜, ๊ฐœ๋…์˜ ์‹๋ณ„์„ฑ์€ ์œ ์ง€ํ•ด์•ผ ํ–ˆ๋‹ค. Claude Code ๊ธ€์—์„œ๋Š” /agents ๊ฐ™์€ slash command์™€ Description ๋ธ”๋ก์ด ์žˆ์–ด์„œ, ์ž์—ฐ์Šค๋Ÿฌ์šด ๋ฌธ์žฅ๋ณด๋‹ค ๋ช…๋ น/๊ตฌ์กฐ ๋ณด์กด์ด ์šฐ์„ ์ด์—ˆ๋‹ค.

๊ฒ€์ฆ์€ batch scope์—์„œ ํ†ต๊ณผํ–ˆ๋‹ค.

checked: 28
ready: 28
warnings: 0
errors: 0

70์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 274/311, pending 1, missing 36
zh-Hans  ready 274/311, pending 1, missing 36
es       ready 274/311, pending 1, missing 36
pt-BR    ready 274/311, pending 1, missing 36
fr       ready 274/311, pending 1, missing 36
id       ready 274/311, pending 1, missing 36

71์ฐจ batch๋Š” diary/ai์˜ ๋งˆ์ง€๋ง‰ ๋‘ ๊ธ€์ด์—ˆ๋‹ค.

2026-06-04  Codex๊ฐ€ ๋ณ‘์‹ ์ด ๋˜์ง€ ์•Š์œผ๋ ค๋ฉด ํ•„์š”ํ•œ ํŒ๋‹จ ๊ทœ์œจ
2026-05-25  ์˜ˆ๋น„๊ตฐ ์‚ฌ๋ง ์‚ฌ๊ฑด์— ๋Œ€ํ•œ ๋ถ„๋…ธ์—์„œ ๋ธ”๋กœ๊ทธ ์žฌ๊ฐœ๊นŒ์ง€

6์›” 4์ผ ๊ธ€์€ ์งง์€ ๋Œ€ํ™” ์•„์นด์ด๋ธŒ๋ผ์„œ ๋น„๊ต์  ๋‹จ์ˆœํ–ˆ๋‹ค. ๋ฌธ์ œ๋Š” 5์›” 25์ผ ๊ธ€์ด์—ˆ๋‹ค. ์ด ๊ธ€์€ 2,000์ค„์ด ๋„˜๋Š” ๋Œ€ํ™” ์•„์นด์ด๋ธŒ์˜€๊ณ , conversation card, ๋งˆ์Šคํ‚น, ์ฝ”๋“œ์ฒ˜๋Ÿผ ๋ณด์ด๋Š” ์˜ˆ์‹œ, Daily Review ํ…œํ”Œ๋ฆฟ, ๋งํฌ๊ฐ€ ์ „๋ถ€ ์„ž์—ฌ ์žˆ์—ˆ๋‹ค.

์ฒ˜์Œ์—๋Š” ํ†ตํŒŒ์ผ๋กœ ๋ฒˆ์—ญ์„ ์‹œ๋„ํ–ˆ๋‹ค. ๊ฒฐ๊ณผ๋Š” ์ข‹์ง€ ์•Š์•˜๋‹ค. ์ผ๋ณธ์–ด๋Š” ์š”์•ฝ๋ฌธ์ฒ˜๋Ÿผ ์ค„์–ด๋“ค์—ˆ๊ณ , ํ”„๋ž‘์Šค์–ด๋Š” ์•ž๋ถ€๋ถ„๋งŒ ํ”„๋ž‘์Šค์–ด์ฒ˜๋Ÿผ ๋ณด์ด๊ณ  ๋ณธ๋ฌธ์€ ์˜์–ด๊ฐ€ ๋งŽ์ด ๋‚จ์•˜๋‹ค. ์ธ๋„๋„ค์‹œ์•„์–ด๋Š” placeholder์™€ ์ด์ƒํ•œ artifact๊ฐ€ ์„ž์˜€๋‹ค. ์ด ์ƒํƒœ์—์„œ โ€œ๊ฒ€์ˆ˜ํ•ด์„œ ์‚ด๋ฆฐ๋‹คโ€๋Š” ํŒ๋‹จ์€ ์œ„ํ—˜ํ–ˆ๋‹ค. ๊ทธ๋ž˜์„œ ํ•ด๋‹น current-task ์ƒ์„ฑ๋ฌผ์€ ๋ฐ”๋กœ ๋ฒ„๋ฆฌ๊ณ , coverage๊ฐ€ ๊ฑฐ์ง“์œผ๋กœ ์˜ฌ๋ผ๊ฐ€์ง€ ์•Š๊ฒŒ ํ–ˆ๋‹ค.

์ดํ›„ ๊ธ€์„ ๋‹ค์„ฏ ์ฒญํฌ๋กœ ๋‚˜๋ˆด๋‹ค.

01-intro-media
02-politics
03-human-narrow-road
04-ai-self-management
05-blog-restart

๊ฐ ์ฒญํฌ๋Š” gpt-5.5 worker๊ฐ€ ์–ธ์–ด๋ณ„๋กœ ๋งก์•˜๋‹ค. ๋นŒ๋“œ๋Š” ๋Œ๋ฆฌ์ง€ ์•Š์•˜๋‹ค. ๋Œ€์‹  ์ฒญํฌ๋งˆ๋‹ค ๋‹ค์Œ ๊ฒƒ๋งŒ ๋ดค๋‹ค.

ํ•œ๊ธ€ ์ž”๋ฅ˜
ํ”„๋กฌํ”„ํŠธ/์˜์–ด ์ž”๋ฅ˜
conversation-entry/meta/body/mask/code ๊ฐœ์ˆ˜
code fence ๊ฐœ์ˆ˜
์ธ๋„๋„ค์‹œ์•„์–ด artifact

๋งˆ์ง€๋ง‰์— ๋‹ค์„ฏ ์ฒญํฌ๋ฅผ ์‹ค์ œ locale post๋กœ ์กฐ๋ฆฝํ•œ ๋’ค scoped sync๋ฅผ ๋Œ๋ ธ๋‹ค.

source files: 1
checked: 7
ready: 7
warnings: 0
errors: 0

diary/ai ์ตœ๊ทผ ์„ธ ๊ธ€ ๊ธฐ์ค€์œผ๋กœ๋„ ๋‹ค์‹œ ํ™•์ธํ–ˆ๋‹ค.

source files: 3
checked: 21
ready: 21
warnings: 0
errors: 0

71์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 276/311, pending 1, missing 34
zh-Hans  ready 276/311, pending 1, missing 34
es       ready 276/311, pending 1, missing 34
pt-BR    ready 276/311, pending 1, missing 34
fr       ready 276/311, pending 1, missing 34
id       ready 276/311, pending 1, missing 34

72์ฐจ batch๋Š” devlog/secret-messenger ๋„ค ๊ธ€์ด์—ˆ๋‹ค.

2025-04-01  Secret Messenger ๊ฐœ๋ฐœ ์ผ์ง€ #1
2025-04-03  Secret Messenger ๊ฐœ๋ฐœ ์ผ์ง€ #2
2025-04-13  Secret Messenger ๊ฐœ๋ฐœ ์ผ์ง€ #3
2025-04-17  Secret Messenger ๊ฐœ๋ฐœ ์ผ์ง€ #4

์ด ๋ฌถ์Œ์€ ๋ณดํ†ต ๊ฐœ๋ฐœ๋กœ๊ทธ๋ณด๋‹ค ๋ฏผ๊ฐํ–ˆ๋‹ค. ์ค‘๊ตญ ๋‚ด ํƒˆ๋ถ๋ฏผ, ์‹ ๋ถ„์ฆ ์—†๋Š” ๊ณ ์œ„ํ—˜ ์‚ฌ์šฉ์ž, ๋ธŒ๋ผ์šฐ์ € ๊ธฐ๋ฐ˜ ์œ„์žฅ ๋ฉ”์‹ ์ €, Flutter Web, Django, VPS, Nginx, GFW ๊ฐ™์€ ๋งฅ๋ฝ์ด ์„ž์—ฌ ์žˆ์—ˆ๋‹ค. ์ด๋Ÿฐ ๊ธ€์€ ํ‘œํ˜„์„ ์ˆœํ™”ํ•˜๋ฉด ์˜คํžˆ๋ ค ์˜๋ฏธ๊ฐ€ ์†์ƒ๋œ๋‹ค. ๊ทธ๋ž˜์„œ worker ์ง€์‹œ์—๋Š” ๋ณด์•ˆ/์ธ๊ถŒ ๋งฅ๋ฝ์„ ์™„๊ณกํ™”ํ•˜์ง€ ๋ง๊ณ , product name๊ณผ ๊ธฐ์ˆ  ์šฉ์–ด๋Š” ์‹๋ณ„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ์œ ์ง€ํ•˜๋ผ๊ณ  ๋„ฃ์—ˆ๋‹ค.

๊ตฌ์กฐ์ƒ์œผ๋กœ๋Š” ํ‘œ์™€ ์ฒดํฌ๋ฐ•์Šค๊ฐ€ ํ•ต์‹ฌ์ด์—ˆ๋‹ค.

2025-04-01  table 28, checkbox 10
2025-04-03  checkbox 35
2025-04-13  table 10, checkbox 34
2025-04-17  table 11, checkbox 36

๊ฒ€์ฆ์€ batch scope์—์„œ ํ†ต๊ณผํ–ˆ๋‹ค.

source files: 4
checked: 28
ready: 28
warnings: 0
errors: 0

์ถ”๊ฐ€๋กœ ํ•œ๊ธ€ ์ž”๋ฅ˜, ํ”„๋กฌํ”„ํŠธ ์ž”๋ฅ˜, ์ธ๋„๋„ค์‹œ์•„์–ด artifact, table row parity, checkbox parity๋ฅผ ํ™•์ธํ–ˆ๋‹ค. ์ „๋ถ€ ์›๋ฌธ๊ณผ ๋งž์•˜๋‹ค.

72์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 280/311, pending 1, missing 30
zh-Hans  ready 280/311, pending 1, missing 30
es       ready 280/311, pending 1, missing 30
pt-BR    ready 280/311, pending 1, missing 30
fr       ready 280/311, pending 1, missing 30
id       ready 280/311, pending 1, missing 30

์ด์ œ ๋น„์˜์–ด๊ถŒ ์—ฌ์„ฏ ์–ธ์–ด๋„ 90% ์„ ์„ ๋„˜์—ˆ๋‹ค. ๋‚จ์€ ๊ฒƒ์€ diary/dev ์ชฝ๋ถ€ํ„ฐ ์ด์–ด์ง€๋Š” 30๊ฐœ๋‹ค.

73์ฐจ batch๋Š” diary/dev์˜ ์•ž์ชฝ ์„ธ ๊ธ€์ด์—ˆ๋‹ค.

2024-12-14  Hello, World!
2024-12-16  ํ”„๋กœ๊ทธ๋ž˜๋จธ๋ผ๋Š” ์ง์—…์€ ์‚ฌ๋ผ์งˆ ์šด๋ช…์ธ ๊ฒƒ ๊ฐ™๋‹ค
2025-05-23  ์š”์ฆ˜ AI์˜ ์ฝ”๋“œ ์ž๋™์™„์„ฑ ์ˆ˜์ค€

์ฒซ ๋‘ ๊ธ€์€ ์งง์€ ์žฌ๊ฐœ/์ƒ๊ฐ ๊ธ€์ด์—ˆ๊ณ , ์„ธ ๋ฒˆ์งธ ๊ธ€์€ ๋„ค์ด๋ฒ„ ๋ฐฑ์—…๋ณธ์—์„œ ๊ฐ€์ ธ์˜จ raw block ๊ธ€์ด์—ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์ด๋ฒˆ์—๋Š” ๋ฌธ์žฅ๋ณด๋‹ค ๊ตฌ์กฐ ๋ณด์กด์„ ์ค‘์‹ฌ์œผ๋กœ ๋ดค๋‹ค.

2024-12-14  code span 1
2024-12-16  image 3, link 4, code span 1
2025-05-23  raw 1, endraw 1, image 7, link 8, code span 1

๊ฒ€์ฆ์€ batch scope์—์„œ ํ†ต๊ณผํ–ˆ๋‹ค.

source files: 3
checked: 21
ready: 21
warnings: 0
errors: 0

์ถ”๊ฐ€๋กœ ํ•œ๊ธ€ ์ž”๋ฅ˜, ํ”„๋กฌํ”„ํŠธ ์ž”๋ฅ˜, ์ธ๋„๋„ค์‹œ์•„์–ด artifact, raw/endraw parity, image/link count๋ฅผ ํ™•์ธํ–ˆ๋‹ค. ์ „๋ถ€ ์›๋ฌธ๊ณผ ๋งž์•˜๋‹ค.

73์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 283/311, pending 1, missing 27
zh-Hans  ready 283/311, pending 1, missing 27
es       ready 283/311, pending 1, missing 27
pt-BR    ready 283/311, pending 1, missing 27
fr       ready 283/311, pending 1, missing 27
id       ready 283/311, pending 1, missing 27

74์ฐจ batch๋Š” diary/dev์˜ ๋‚จ์€ ๋„ค ๊ธ€์ด์—ˆ๋‹ค.

2025-05-30  Flutter ์•ฑ ๊ฐœ๋ฐœ ๊ธฐ์ดˆ 14/44๊ฐ•
2025-06-02  AI ๋•Œ๋ฌธ์— Flutter ๊ณต๋ถ€ํ•˜๋‹ค ํ˜„ํƒ€ ์˜จ ์ฐ
2025-06-29  ํ”Œ๋Ÿฌํ„ฐ ๊ฐ•์ขŒ ์ˆ˜๊ฐ• ์ค‘๋‹จ
2025-07-02  ์ธ์ƒ RPG ๊ฐ€์ƒ ์ธํ„ฐ๋ทฐ

์ด๋ฒˆ ๋ฌถ์Œ๋„ ๋„ค์ด๋ฒ„ ๋ฐฑ์—…๋ณธ ๊ธฐ๋ฐ˜์ด๋ผ raw block์„ ๊ทธ๋Œ€๋กœ ๋ณด์กดํ•ด์•ผ ํ–ˆ๋‹ค. ํŠนํžˆ 6์›” 2์ผ ๊ธ€์€ ์ด๋ฏธ์ง€๊ฐ€ 22๊ฐœ๋ผ, ๋ฒˆ์—ญ ํ’ˆ์งˆ๋ณด๋‹ค ์ด๋ฏธ์ง€/๋งํฌ ๊ฐœ์ˆ˜ ๋ณด์กด์„ ๋จผ์ € ๋ดค๋‹ค.

2025-05-30  raw 1, image 10, link 11, blockquote 2
2025-06-02  raw 1, image 22, link 23, blockquote 3
2025-06-29  raw 1, image 1, link 2, blockquote 4
2025-07-02  raw 1, image 1, link 2, blockquote 2

๊ฒ€์ฆ์€ batch scope์—์„œ ํ†ต๊ณผํ–ˆ๋‹ค.

source files: 4
checked: 28
ready: 28
warnings: 0
errors: 0

์ถ”๊ฐ€๋กœ ํ•œ๊ธ€ ์ž”๋ฅ˜, ํ”„๋กฌํ”„ํŠธ ์ž”๋ฅ˜, ์ธ๋„๋„ค์‹œ์•„์–ด artifact, raw/endraw parity, image/link/blockquote/code-span count๋ฅผ ํ™•์ธํ–ˆ๋‹ค. ์ „๋ถ€ ์›๋ฌธ๊ณผ ๋งž์•˜๋‹ค.

74์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 287/311, pending 1, missing 23
zh-Hans  ready 287/311, pending 1, missing 23
es       ready 287/311, pending 1, missing 23
pt-BR    ready 287/311, pending 1, missing 23
fr       ready 287/311, pending 1, missing 23
id       ready 287/311, pending 1, missing 23

์ด ์‹œ์ ์—์„œ diary/dev backlog๋„ ๋‹ซํ˜”๋‹ค. ๋‹ค์Œ์€ diary/relationship์ด๋‹ค.

75์ฐจ batch๋Š” diary/relationship ์„ธ ๊ธ€์ด์—ˆ๋‹ค.

2025-05-22  ์ผ์ƒ ์† ์ž‘์€ ๋งŒ๋‚จ, ์ด์›ƒ ์‚ฌ๋ž‘์ด๋ผ๋Š” ํฐ ์šธ๋ฆผ
2025-05-27  ๋ชจ๋‚œ ๋ฉด์„ ๋“œ๋Ÿฌ๋‚ผ ์šฉ๊ธฐ
2025-05-29  ์†Œํ†ต์˜ ์ฐฝ์„ ์—ด๋‹ค

์ด๋ฒˆ ๋ฌถ์Œ์€ ๊ธฐ๋Šฅ ์„ค๋ช…์ด๋‚˜ ๊ฐœ๋ฐœ ๊ธฐ๋ก์ด ์•„๋‹ˆ๋ผ ๊ด€๊ณ„, ๊ฐ์ •, ๊ตํšŒ ๊ณต๋™์ฒด, ์ด์›ƒ ์‚ฌ๋ž‘์— ๋Œ€ํ•œ ๊ธ€์ด์—ˆ๋‹ค. ๊ทธ๋ž˜์„œ worker ์ง€์‹œ์—๋Š” ๋„ˆ๋ฌด ๋งค๋ˆํ•œ ์„ค๋ช…๋ฌธ์œผ๋กœ ๋ฐ”๊พธ์ง€ ๋ง๊ณ , ๊ฐœ์ธ์ ์ธ ์„ฑ์ฐฐ์˜ ํ†ค์„ ์‚ด๋ฆฌ๋ผ๊ณ  ๋„ฃ์—ˆ๋‹ค.

๊ตฌ์กฐ๋Š” ๋น„๊ต์  ๋‹จ์ˆœํ–ˆ์ง€๋งŒ raw block๊ณผ ์ธ์šฉ๋ฌธ์ด ๋งŽ์•˜๋‹ค.

2025-05-22  raw 1, image 6, link 7, blockquote 7
2025-05-27  raw 1, image 6, link 7, blockquote 7
2025-05-29  raw 1, image 7, link 8, blockquote 4

๊ฒ€์ฆ์€ batch scope์—์„œ ํ†ต๊ณผํ–ˆ๋‹ค.

source files: 3
checked: 21
ready: 21
warnings: 0
errors: 0

์ถ”๊ฐ€๋กœ ํ•œ๊ธ€ ์ž”๋ฅ˜, ํ”„๋กฌํ”„ํŠธ ์ž”๋ฅ˜, ์ธ๋„๋„ค์‹œ์•„์–ด artifact, raw/endraw parity, image/link/blockquote/code-span count๋ฅผ ํ™•์ธํ–ˆ๋‹ค. ์ „๋ถ€ ์›๋ฌธ๊ณผ ๋งž์•˜๋‹ค.

75์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 290/311, pending 1, missing 20
zh-Hans  ready 290/311, pending 1, missing 20
es       ready 290/311, pending 1, missing 20
pt-BR    ready 290/311, pending 1, missing 20
fr       ready 290/311, pending 1, missing 20
id       ready 290/311, pending 1, missing 20

์ด ์‹œ์ ์—์„œ diary/relationship backlog๋„ ๋‹ซํ˜”๋‹ค. ๋‚จ์€ ๊ฒƒ์€ diary/religion๋ฟ์ด๋‹ค.

76์ฐจ batch๋Š” diary/religion์˜ ์ดˆ๊ธฐ ์„ธ ๊ธ€์ด์—ˆ๋‹ค.

2024-12-25  GPT์˜ ์ผ๊ธฐ: Ubermensch with Jesus
2025-04-07  Daily Conscience Prayer
2025-04-17  ๋ฏผํ˜ vs GPT-4o: ๋ฐฐํƒ€์ฃผ์˜/ํฌ์šฉ์ฃผ์˜/๋‹ค์›์ฃผ์˜

์ด ๋ฌถ์Œ์€ ๋‹จ์ˆœํ•œ ์ข…๊ต ๊ธ€์ด ์•„๋‹ˆ๋ผ, ์˜ˆ์ˆ˜์˜ ์‚ฌ๋ž‘, ๋‹ˆ์ฒด์˜ ์ดˆ์ธ, ์–‘์‹ฌ ๊ธฐ๋„, ๋ฐฐํƒ€์ฃผ์˜/ํฌ์šฉ์ฃผ์˜/๋‹ค์›์ฃผ์˜ ๋…ผ์Ÿ์ด ์„ž์—ฌ ์žˆ์—ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์‹ ํ•™ ์šฉ์–ด๋ฅผ ๋„ˆ๋ฌด ํ’€์–ด๋ฒ„๋ฆฌ์ง€ ์•Š๊ณ , ์ด๋ฆ„๊ณผ ๊ฐœ๋…์„ ์‹๋ณ„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ์œ ์ง€ํ•˜๋Š” ์ชฝ์„ ๊ธฐ์ค€์œผ๋กœ ์žก์•˜๋‹ค.

๊ตฌ์กฐ์ƒ์œผ๋กœ๋Š” ์ธ์šฉ๊ณผ HTML notice, code span์ด ํ•ต์‹ฌ์ด์—ˆ๋‹ค.

2024-12-25  blockquote 2, html marker 10
2025-04-07  blockquote 2, html marker 2
2025-04-17  blockquote 10, code span 6, html marker 12

๊ฒ€์ฆ์€ batch scope์—์„œ ํ†ต๊ณผํ–ˆ๋‹ค.

source files: 3
checked: 21
ready: 21
warnings: 0
errors: 0

์ถ”๊ฐ€๋กœ ํ•œ๊ธ€ ์ž”๋ฅ˜, ํ”„๋กฌํ”„ํŠธ ์ž”๋ฅ˜, ์ธ๋„๋„ค์‹œ์•„์–ด artifact, blockquote/code/html marker count๋ฅผ ํ™•์ธํ–ˆ๋‹ค. ์ „๋ถ€ ์›๋ฌธ๊ณผ ๋งž์•˜๋‹ค.

76์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 293/311, pending 1, missing 17
zh-Hans  ready 293/311, pending 1, missing 17
es       ready 293/311, pending 1, missing 17
pt-BR    ready 293/311, pending 1, missing 17
fr       ready 293/311, pending 1, missing 17
id       ready 293/311, pending 1, missing 17

77์ฐจ batch๋Š” diary/religion์˜ ๋‚จ์€ ๋„ค ๊ธ€์ด์—ˆ๋‹ค.

2025-06-02  ๋ฏผ์ˆ˜๊ธฐ๊ฐ€ ๋˜์ง„ ์‹ ์•™์  ๊ณ ๋‡Œ
2025-06-26  ์˜์‹ฌ ๋งŽ์€ ๋‚˜์˜ ์‹ ์•™
2025-06-27  ์‹ ์ด ์žˆ๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ํ–‰๋™ํ•˜๊ธฐ๋กœ ํ–ˆ๋‹ค
2026-06-07  ๋™์„ฑ์•  ํ˜์˜ค๋ฅผ ์‹ ์•™์ด๋ผ ๋ถ€๋ฅผ ์ˆ˜๋Š” ์—†๋‹ค

์ด๋ฒˆ ๋ฌถ์Œ์€ ๋„ค์ด๋ฒ„ ๋ฐฑ์—…๋ณธ raw block ์„ธ ๊ธ€๊ณผ ์ตœ์‹  ๊ณต๊ฐœ ๊ธ€ ํ•˜๋‚˜๊ฐ€ ์„ž์—ฌ ์žˆ์—ˆ๋‹ค. ํŠนํžˆ ๋งˆ์ง€๋ง‰ ๊ธ€์€ {% post_url %} ๋งํฌ๊ฐ€ 3๊ฐœ ์žˆ์–ด์„œ, ๋ฒˆ์—ญ๋ณด๋‹ค Liquid marker ๋ณด์กด์ด ๋จผ์ €์˜€๋‹ค.

๊ตฌ์กฐ ๊ธฐ์ค€์€ ์ด๋žฌ๋‹ค.

2025-06-02  raw 1, image 7, link 8, blockquote 5
2025-06-26  raw 1, image 6, link 7, blockquote 2
2025-06-27  raw 1, image 6, link 7, blockquote 2
2026-06-07  image 1, link 10, blockquote 4, code span 2, post_url 3

๊ฒ€์ฆ์€ batch scope์—์„œ ํ†ต๊ณผํ–ˆ๋‹ค.

source files: 4
checked: 28
ready: 28
warnings: 0
errors: 0

์ถ”๊ฐ€๋กœ ํ•œ๊ธ€ ์ž”๋ฅ˜, ํ”„๋กฌํ”„ํŠธ ์ž”๋ฅ˜, ์ธ๋„๋„ค์‹œ์•„์–ด artifact, raw/endraw, image/link/blockquote/code/html/post_url count๋ฅผ ํ™•์ธํ–ˆ๋‹ค. ์ „๋ถ€ ์›๋ฌธ๊ณผ ๋งž์•˜๋‹ค.

77์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 297/311, pending 1, missing 13
zh-Hans  ready 297/311, pending 1, missing 13
es       ready 297/311, pending 1, missing 13
pt-BR    ready 297/311, pending 1, missing 13
fr       ready 297/311, pending 1, missing 13
id       ready 297/311, pending 1, missing 13

์ด ์‹œ์ ์—์„œ diary/religion backlog๋„ ๋‹ซํ˜”๋‹ค. ๋‚จ์€ ๊ฒƒ์€ diary/thought ์ชฝ์ด๋‹ค.

์ด batch์—์„œ ์–ป์€ ๊ตํ›ˆ์€ ๋ถ„๋ช…ํ–ˆ๋‹ค.

ํฐ ๋Œ€ํ™” ์•„์นด์ด๋ธŒ๋Š” ํ†ตํŒŒ์ผ ๋ฒˆ์—ญ์œผ๋กœ ๋ฐ€์–ด๋ถ™์ด๋ฉด ์•ˆ ๋œ๋‹ค. ์‹คํŒจํ–ˆ์„ ๋•Œ ๊ฒ€์ˆ˜ ๋น„์šฉ์ด ๋„ˆ๋ฌด ํฌ๊ณ , ๋ฌด์—‡์ด ๊นจ์กŒ๋Š”์ง€๋„ ๋Šฆ๊ฒŒ ๋ณด์ธ๋‹ค. ๋ฐ˜๋Œ€๋กœ ์ฒญํฌ๋กœ ๋‚˜๋ˆ„๋ฉด ์‹คํŒจ ๋ฒ”์œ„๊ฐ€ ์ค„์–ด๋“ค๊ณ , ๊ตฌ์กฐ ๋งˆ์ปค๋ฅผ ์›๋ฌธ๊ณผ ์ง์ ‘ ๋น„๊ตํ•  ์ˆ˜ ์žˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ๋ฒˆ์—ญ batch ์ค‘ full build๋Š” ์—ฌ์ „ํžˆ ํ•„์š” ์—†์—ˆ๋‹ค. ์ด๋ฒˆ์— ๋ด์•ผ ํ•  ์œ„ํ—˜์€ Jekyll ์ „์ฒด ์ƒ์„ฑ ์—ฌ๋ถ€๊ฐ€ ์•„๋‹ˆ๋ผ, ๋ฒˆ์—ญ ํŒŒ์ผ์ด ์›๋ฌธ ๊ตฌ์กฐ์™€ ๋Œ€์‘๋˜๋Š”์ง€์˜€๋‹ค. ๊ทธ ์งˆ๋ฌธ์—๋Š” scoped sync์™€ residue scan, marker parity๊ฐ€ ๋” ์ •ํ™•ํ•˜๊ฒŒ ๋‹ตํ–ˆ๋‹ค.

์ด๋ฒˆ ๊ต์ •์—์„œ ์ค‘์š”ํ•œ ๊ฑด ๋ฒˆ์—ญ ํ’ˆ์งˆ๋ณด๋‹ค ์šด์˜ ํŒ๋‹จ์ด์—ˆ๋‹ค.

๊ฒ€์ฆ์€ ๋งŽ์ด ๋Œ๋ฆฐ๋‹ค๊ณ  ์ข‹์€ ๊ฒŒ ์•„๋‹ˆ๋‹ค. ๊ฐ™์€ ๋ฆฌ์Šคํฌ๋ฅผ ๋ฐ˜๋ณตํ•ด์„œ ๋ณด๋Š” ๊ฒ€์ฆ์€ ์•ˆ์‹ฌ์„ ์ฃผ๋Š” ๊ฒŒ ์•„๋‹ˆ๋ผ ์‹œ๊ฐ„์„ ํƒœ์šด๋‹ค. ํŠนํžˆ Jekyll full build์ฒ˜๋Ÿผ 7๋ถ„ ์ด์ƒ ๊ฑธ๋ฆฌ๋Š” ๊ฒ€์ฆ์€ ๊ตฌ์กฐ ๋ณ€๊ฒฝ, ๋ฆด๋ฆฌ์ฆˆ ์ง์ „, ์ „์ฒด ์ž‘์—… ์ข…๋ฃŒ ๊ฐ™์€ ๊ฒฝ๊ณ„์—์„œ๋งŒ ์จ์•ผ ํ•œ๋‹ค. ๋ฒˆ์—ญ ์ƒ์„ฑ ๋‹จ๊ณ„์—์„œ๋Š” ๊ฐ€๋ฒผ์šด ๊ฒ€์ฆ์ด ๋งž๋‹ค.

๊ทธ๋ž˜์„œ ๊ณต์šฉ ๋ฃฐ๊ณผ ํ”„๋กœ์ ํŠธ ๋ฃฐ๋„ ๊ณ ์ณค๋‹ค. ๊ตฌ์กฐ/์ฝ”๋“œ ๋ณ€๊ฒฝ์—์„œ ๋ฐ˜๋ณต ์ฝ˜ํ…์ธ  ์ƒ์„ฑ์œผ๋กœ ๋‹จ๊ณ„๊ฐ€ ๋ฐ”๋€Œ๋ฉด expensive full check๋ฅผ ๋ฉˆ์ถ”๊ณ  cheap scoped check๋งŒ ์“ฐ๋„๋ก ํ–ˆ๊ณ , ์ด ๋ธ”๋กœ๊ทธ์˜ translation-only batch์—์„œ๋Š” full build๋ฅผ batch๋งˆ๋‹ค ๋Œ๋ฆฌ์ง€ ์•Š๋„๋ก ๋ช…์‹œํ–ˆ๋‹ค.

์ด ๊ณผ์ •์—์„œ SOURCE_PATHS ์˜ต์…˜๋„ ์ถ”๊ฐ€ํ–ˆ๋‹ค. ์ „์ฒด coverage๋Š” backlog๋ฅผ ๋ณด๋Š” ๋ฐ ์ข‹๊ณ , changed-post sync๋Š” ์ง€๊ธˆ ์ˆ˜์ •ํ•œ ๊ธ€์„ ๋ณด๋Š” ๋ฐ ์ข‹์ง€๋งŒ, ๋ฒˆ์—ญ batch์ฒ˜๋Ÿผ โ€œํŠน์ • ์›๋ฌธ ๋ฌถ์Œ๋งŒ ์ •ํ™•ํžˆ ๊ฒ€์ฆโ€ํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋‹ค. ์ด์ œ ๊ทธ ๊ฒฝ์šฐ๋ฅผ ๋ช…๋ น์œผ๋กœ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค.

์ด ๊ตฌ๋ถ„์ด ์ค‘์š”ํ•˜๋‹ค.

๊ฒ€์ฆ์ด ํ†ต๊ณผํ–ˆ๋‹ค๋Š” ๋ง์€ ํ•ญ์ƒ ๋ฒ”์œ„๋ฅผ ๊ฐ€์ง„๋‹ค. ๋ฒ”์œ„๋ฅผ ๋งํ•˜์ง€ ์•Š๋Š” ์ดˆ๋ก ์ฒดํฌ๋Š” ์˜คํžˆ๋ ค ์œ„ํ—˜ํ•˜๋‹ค. ๊ทธ๋ž˜์„œ ์ด๋ฒˆ์—๋Š” verifier, pilot status, changed-post sync, all-post coverage๋ฅผ ๋ถ„๋ฆฌํ–ˆ๋‹ค. ๊ฐ๊ฐ์ด ๋‹ค๋ฅธ ์งˆ๋ฌธ์— ๋‹ตํ•˜๊ฒŒ ๋งŒ๋“ค์—ˆ๋‹ค.

78์ฐจ batch๋Š” diary/thought์˜ ์•ž์ชฝ ์„ธ ๊ธ€์ด์—ˆ๋‹ค.

2025-06-09  ๊ด€๊ณ„๋Š” ์„œ๋กœ๋ฅผ ๋น„์ถ”๋Š” ๊ฑฐ์šธ์ด๋‹ค
2025-06-09  ๊ฑด๊ฐ•ํ•œ ํœด์‹์„ ํ–ฅํ•˜์—ฌ
2025-06-10  ์Œ์•…์ด ์—†๋‹ค๋ฉด ์ธ์ƒ์€ ์ž˜๋ชป๋œ ๊ฒƒ์ด๋‹ค

์ด๋ฒˆ ๋ฌถ์Œ์€ ๋„ค์ด๋ฒ„ ๋ฐฑ์—… raw block์„ ๊ฐ€์ง„ ์ƒ๊ฐ ๊ธ€์ด์—ˆ๋‹ค. ๋งˆ์ง€๋ง‰ ๊ธ€์€ ์Œ์•…, Suno, ๋‹ˆ์ฒด์˜ ๋ง์ด ์„ž์—ฌ ์žˆ์—ˆ๊ณ , <Twilight of the Idols>์ฒ˜๋Ÿผ ๊ฐ๊ด„ํ˜ธ๊ฐ€ ์‹ค์ œ HTML์ด ์•„๋‹ˆ๋ผ ์ฑ… ์ œ๋ชฉ์œผ๋กœ ์“ฐ์ธ ๋ถ€๋ถ„๋„ ์žˆ์—ˆ๋‹ค.

๊ทธ๋ž˜์„œ ๊ฒ€์ฆํ•  ๋•Œ ๋‹จ์ˆœํžˆ <...> ๊ฐœ์ˆ˜๋ฅผ ์„ธ๋Š” ๋ฐฉ์‹์€ ๋ฒ„๋ ธ๋‹ค. ์‹ค์ œ๋กœ ๋ณด์กดํ•ด์•ผ ํ•  ๊ตฌ์กฐ์ธ comment, div, raw/endraw marker๋ฅผ ๋”ฐ๋กœ ๋น„๊ตํ–ˆ๋‹ค.

๊ตฌ์กฐ ๊ธฐ์ค€์€ ์ด๋žฌ๋‹ค.

2025-06-09 naver-126  raw 1, image 6, link 7, blockquote 2
2025-06-09 naver-127  raw 1, image 6, link 7, blockquote 2
2025-06-10 naver-123  raw 1, image 9, link 10, blockquote 4, code span 1

๊ฒ€์ฆ์€ batch scope์—์„œ ํ†ต๊ณผํ–ˆ๋‹ค.

source files: 3
checked: 21
ready: 21
warnings: 0
errors: 0

์ถ”๊ฐ€๋กœ ํ•œ๊ธ€ ์ž”๋ฅ˜, ํ”„๋กฌํ”„ํŠธ ์ž”๋ฅ˜, ์ธ๋„๋„ค์‹œ์•„์–ด artifact, raw/endraw, image/link/blockquote/code count๋ฅผ ํ™•์ธํ–ˆ๋‹ค. ์„ธ ๋ฒˆ์งธ ๊ธ€์€ ์ฑ… ์ œ๋ชฉ์˜ ๊ฐ๊ด„ํ˜ธ ๋•Œ๋ฌธ์— naive HTML count๊ฐ€ ํ”๋“ค๋ ธ์ง€๋งŒ, ์‹ค์ œ ๋ณด์กด ๋Œ€์ƒ์ธ comment/div/raw marker๋Š” ์ „๋ถ€ ์›๋ฌธ๊ณผ ๋งž์•˜๋‹ค.

78์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 300/311, pending 1, missing 10
zh-Hans  ready 300/311, pending 1, missing 10
es       ready 300/311, pending 1, missing 10
pt-BR    ready 300/311, pending 1, missing 10
fr       ready 300/311, pending 1, missing 10
id       ready 300/311, pending 1, missing 10

79์ฐจ batch๋„ diary/thought ์„ธ ๊ธ€์ด์—ˆ๋‹ค.

2025-06-12  ์†Œํ†ต์˜ ์ •์ˆ˜๋Š” ํ—ค์•„๋ฆฌ๋Š” ๋งˆ์Œ์ด ์•„๋‹๊นŒ
2025-06-16  ํ˜ธ๊ตฌ๊ฐ€ ๋˜์ง€ ์•Š๊ธฐ ์œ„ํ•œ ์ดํƒ€์‹ฌ ์‚ฌ์šฉ๋ฒ•
2025-06-18  ๋‚˜์˜ ์šฐ์ฃผ๋Š” ์–ด๋–ป๊ฒŒ ํ™•์žฅ๋˜๋Š”๊ฐ€ (์„ฑ์žฅ์˜ ํ”Œ๋ผ์ดํœ )

์ด ๋ฌถ์Œ๋„ ์ „๋ถ€ ๋„ค์ด๋ฒ„ ๋ฐฑ์—… raw block์„ ๊ฐ€์ง„ ๊ธ€์ด์—ˆ๋‹ค. ๊ด€๊ณ„, ์ดํƒ€์‹ฌ, ์„ฑ์žฅ์˜ ํ”Œ๋ผ์ดํœ ์ฒ˜๋Ÿผ ์ถ”์ƒ์ ์ธ ๋‹จ์–ด๊ฐ€ ๋งŽ์•˜์ง€๋งŒ, ๊ธ€์˜ ๊ตฌ์กฐ ์ž์ฒด๋Š” ๋น„๊ต์  ๋ช…ํ™•ํ–ˆ๋‹ค. ์˜คํžˆ๋ ค ์ด๋ฒˆ์— ๊ฑธ๋ฆฐ ๋ฌธ์ œ๋Š” ๋ฒˆ์—ญ๋ฌธ์ด ์•„๋‹ˆ๋ผ front matter์˜€๋‹ค.

์ŠคํŽ˜์ธ์–ด์™€ ํ”„๋ž‘์Šค์–ด worker๊ฐ€ locale: es-ES, locale: fr-FR๋กœ ๋„ฃ์—ˆ๋Š”๋ฐ, ํ”„๋กœ์ ํŠธ ์„ค์ •์˜ ์‹ค์ œ locale ๊ฐ’์€ es, fr์˜€๋‹ค. ์ด๊ฑด scoped sync๊ฐ€ ๋ฐ”๋กœ ์žก์•„๋ƒˆ๋‹ค.

ERROR ... es locale mismatch
ERROR ... fr locale mismatch

๊ทธ๋ž˜์„œ ํ•ด๋‹น 6๊ฐœ ํŒŒ์ผ์˜ locale๋งŒ ํ”„๋กœ์ ํŠธ ์„ค์ •์— ๋งž๊ฒŒ ๊ณ ์ณค๊ณ , ๋‹ค์‹œ ๊ฒ€์ฆํ–ˆ๋‹ค.

source files: 3
checked: 21
ready: 21
warnings: 0
errors: 0

๊ตฌ์กฐ ๊ธฐ์ค€์€ ์ด๋žฌ๋‹ค.

2025-06-12 naver-120  raw 1, image 6, link 7, blockquote 5, code span 1
2025-06-16 naver-113  raw 1, image 4, link 5, blockquote 2, code span 1
2025-06-18 naver-110  raw 1, image 6, link 7, blockquote 2, code span 1

์ถ”๊ฐ€๋กœ ํ•œ๊ธ€ ์ž”๋ฅ˜, ํ”„๋กฌํ”„ํŠธ ์ž”๋ฅ˜, ์ธ๋„๋„ค์‹œ์•„์–ด artifact, raw/endraw, image/link/blockquote/code/comment/div marker count๋ฅผ ํ™•์ธํ–ˆ๋‹ค. ์ „๋ถ€ ์›๋ฌธ๊ณผ ๋งž์•˜๋‹ค.

79์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 303/311, pending 1, missing 7
zh-Hans  ready 303/311, pending 1, missing 7
es       ready 303/311, pending 1, missing 7
pt-BR    ready 303/311, pending 1, missing 7
fr       ready 303/311, pending 1, missing 7
id       ready 303/311, pending 1, missing 7

์—ฌ๊ธฐ์„œ ๋‹ค์‹œ ํ™•์ธํ•œ ๊ตํ›ˆ์€ ๊ฐ„๋‹จํ–ˆ๋‹ค.

worker๊ฐ€ ๋ฒˆ์—ญ์„ ์ž˜ํ•ด๋„ ํ”„๋กœ์ ํŠธ ์„ค์ •๊ฐ’์€ ํ‹€๋ฆด ์ˆ˜ ์žˆ๋‹ค. ๊ทธ๋ž˜์„œ โ€œ์ž์—ฐ์Šค๋Ÿฌ์šด ๋ฒˆ์—ญโ€ ๊ฒ€์ˆ˜์™€ โ€œrepo๊ฐ€ ๊ธฐ๋Œ€ํ•˜๋Š” ๋ฉ”ํƒ€๋ฐ์ดํ„ฐโ€ ๊ฒ€์ˆ˜๋Š” ๋ณ„๊ฐœ๋‹ค. locale, permalink, categories ๊ฐ™์€ ๊ฐ’์€ ๊ฐ์œผ๋กœ ๋งก๊ธฐ๋ฉด ์•ˆ ๋˜๊ณ , active config์™€ verifier๊ฐ€ ํ™•์ธํ•ด์•ผ ํ•œ๋‹ค.

80์ฐจ batch๋Š” diary/thought์˜ ๋‚จ์€ ์„ธ ๊ธ€์ด์—ˆ๋‹ค.

2025-06-27  ๋ฌด์–ธ๊ฐ€์— ์ซ“๊ธฐ๋Š” ๋ฐ”์œ ์ƒํƒœ๋Š” ์ผ์ข…์˜ ์•…์ผ์ง€๋„
2025-07-09  ๋‚˜๋Š” ๋ฐ˜๋“œ์‹œ ์‹คํŒจํ•  ๊ฒƒ์ด๋‹ค.
2025-07-13  ์ž์ฑ…์—์„œ ๋ถ„์„์œผ๋กœ, ํ›„ํšŒ์—์„œ ์„ค๊ณ„๋กœ, ๋ฐ˜์„ฑ์—์„œ ๊ธฐํš์œผ๋กœ

์ด batch๋กœ diary/thought ์ชฝ full-missing backlog๋Š” ๋‹ซํ˜”๋‹ค. ์…‹ ๋‹ค ๋„ค์ด๋ฒ„ ๋ฐฑ์—… raw block ๊ธ€์ด์—ˆ๊ณ , 7์›” 13์ผ ๊ธ€๋งŒ ์กฐ๊ธˆ ๊ธธ์—ˆ๋‹ค. ๊ทธ๋ž˜๋„ ๋ณ„๋„ ์ฒญํฌ๋ฅผ ๋งŒ๋“ค ์ •๋„๋Š” ์•„๋‹ˆ์–ด์„œ ์–ธ์–ด๋ณ„ worker๊ฐ€ ๊ฐ locale ํŒŒ์ผ์„ ๊ทธ๋Œ€๋กœ ๋งก์•˜๋‹ค.

๊ตฌ์กฐ ๊ธฐ์ค€์€ ์ด๋žฌ๋‹ค.

2025-06-27 naver-096  raw 1, image 5, link 6, blockquote 2, code span 1
2025-07-09 naver-078  raw 1, image 1, link 2, blockquote 4, code span 1
2025-07-13 naver-071  raw 1, image 2, link 3, blockquote 2, code span 1

๊ฒ€์ฆ์€ batch scope์—์„œ ํ†ต๊ณผํ–ˆ๋‹ค.

source files: 3
checked: 21
ready: 21
warnings: 0
errors: 0

์ถ”๊ฐ€๋กœ ํ•œ๊ธ€ ์ž”๋ฅ˜, ํ”„๋กฌํ”„ํŠธ ์ž”๋ฅ˜, ์ธ๋„๋„ค์‹œ์•„์–ด artifact, raw/endraw, image/link/blockquote/code/comment/div marker count๋ฅผ ํ™•์ธํ–ˆ๋‹ค. ์ „๋ถ€ ์›๋ฌธ๊ณผ ๋งž์•˜๋‹ค.

80์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 306/311, pending 1, missing 4
zh-Hans  ready 306/311, pending 1, missing 4
es       ready 306/311, pending 1, missing 4
pt-BR    ready 306/311, pending 1, missing 4
fr       ready 306/311, pending 1, missing 4
id       ready 306/311, pending 1, missing 4

coverage๊ฐ€ ์—ฌ๊ธฐ์„œ ์ƒˆ๋กœ ๋‚จ์€ ์˜์—ญ์„ ๋” ์„ ๋ช…ํ•˜๊ฒŒ ๋ณด์—ฌ์คฌ๋‹ค. ์ด์ œ ๋‚จ์€ ๊ฒƒ์€ diary/travel์˜ ๊ธด ์ œ์ฃผ ์ž์ „๊ฑฐ ๊ธ€ ํ•˜๋‚˜์™€ tip/app ์„ธ ๊ธ€์ด๋‹ค. ์งง์€ tip/app๋ถ€ํ„ฐ ๋‹ซ๊ณ , 973์ค„์งœ๋ฆฌ ์—ฌํ–‰ ๊ธ€์€ ๋ณ„๋„ ๊ธด ๊ธ€ ์ „๋žต์œผ๋กœ ๋‹ค๋ฃจ๋Š” ๊ฒŒ ๋งž๋‹ค.

81์ฐจ batch๋Š” tip/app ์„ธ ๊ธ€์ด์—ˆ๋‹ค.

2025-03-10  Espanso๋กœ ํ…์ŠคํŠธ ์ž๋™์™„์„ฑํ•˜๊ธฐ
2025-05-29  ํฌ๋กฌ ํ”Œ๋Ÿฌ๊ทธ์ธ Unhook
2025-06-03  Espanso ๋ฐ˜๋ณต ์ž…๋ ฅ ์ค„์ด๊ธฐ

์ฒซ ๊ธ€์€ ์ผ๋ฐ˜ tip ๊ธ€์ด๊ณ , ๋‚˜๋จธ์ง€ ๋‘˜์€ ๋„ค์ด๋ฒ„ ๋ฐฑ์—… raw block ๊ธ€์ด์—ˆ๋‹ค. ํŠนํžˆ ์ฒซ Espanso ๊ธ€์€ YAML ์˜ˆ์ œ ์•ˆ์— , ๊ฐ™์€ ํ…์ŠคํŠธ๊ฐ€ ์žˆ์–ด์„œ ์กฐ์‹ฌํ•ด์•ผ ํ–ˆ๋‹ค. ์˜์–ดํŒ์€ ์ด ๋ถ€๋ถ„์„ Jekyll Liquid๊ฐ€ ํ•ด์„ํ•˜์ง€ ์•Š๋„๋ก code fence ์•ˆ์— /๋ฅผ ์ถ”๊ฐ€ํ•ด ๋‘” ์ƒํƒœ์˜€๋‹ค.

๊ทธ๋ž˜์„œ ์ด๋ฒˆ parity๋Š” ๋‘ ์ธต์œผ๋กœ ๋ดค๋‹ค.

ํ•œ๊ตญ์–ด ์›๋ฌธ๊ณผ ๋น„๊ตํ•  ๋•Œ๋Š” image, link, heading, code fence ๊ฐ™์€ ์ผ๋ฐ˜ ๊ตฌ์กฐ๋ฅผ ๋ดค๊ณ , target locale๋ผ๋ฆฌ๋Š” ์˜์–ด baseline๊ณผ raw/endraw, code span๊นŒ์ง€ ๋งž๋Š”์ง€ ํ™•์ธํ–ˆ๋‹ค. ์ด ๊ธฐ์ค€์œผ๋กœ 6๊ฐœ ์–ธ์–ด ๋ชจ๋‘ ์˜์–ด baseline๊ณผ ์ผ์น˜ํ–ˆ๋‹ค.

๊ฒ€์ฆ์€ batch scope์—์„œ ํ†ต๊ณผํ–ˆ๋‹ค.

source files: 3
checked: 21
ready: 21
warnings: 0
errors: 0

์ถ”๊ฐ€๋กœ ํ•œ๊ธ€ ์ž”๋ฅ˜, ํ”„๋กฌํ”„ํŠธ ์ž”๋ฅ˜, ์ธ๋„๋„ค์‹œ์•„์–ด artifact, code fence, raw/endraw, image/link/blockquote/code/comment/div marker count๋ฅผ ํ™•์ธํ–ˆ๋‹ค. ์‹ ๊ทœ ๋ฒˆ์—ญ ํŒŒ์ผ ๊ธฐ์ค€์œผ๋กœ ๋ฌธ์ œ๋Š” ์—†์—ˆ๋‹ค.

81์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1
ja       ready 309/311, pending 1, missing 1
zh-Hans  ready 309/311, pending 1, missing 1
es       ready 309/311, pending 1, missing 1
pt-BR    ready 309/311, pending 1, missing 1
fr       ready 309/311, pending 1, missing 1
id       ready 309/311, pending 1, missing 1

์ด์ œ ๋‚จ์€ ๊ณต๊ฐœ ๋ฒˆ์—ญ backlog๋Š” diary/travel/2025-08-30-naver-010.md ํ•˜๋‚˜๋‹ค. ๋‹ค๋งŒ ์ด ๊ธ€์€ ์›๋ฌธ 973์ค„, ์ด๋ฏธ์ง€ 142๊ฐœ, ๋งํฌ 143๊ฐœ๋ผ ์ผ๋ฐ˜ batch์ฒ˜๋Ÿผ ์ทจ๊ธ‰ํ•˜๋ฉด ์•ˆ ๋œ๋‹ค. ๊ตฌ์กฐ๋Š” ๋‹จ์ˆœํ•˜์ง€๋งŒ ๊ธธ์ด๊ฐ€ ๊ธธ๋‹ค. ์—ฌ๊ธฐ์„œ๋Š” ์ „์ฒด ๊ธ€์„ ํ†ต์งธ๋กœ ๋ฐ€์–ด๋ถ™์ด๋Š” ๊ฒƒ๋ณด๋‹ค, ์ด๋ฏธ์ง€ ๋ผ์ธ์€ ๊ทธ๋Œ€๋กœ ๋ณด์กดํ•˜๊ณ  ํ…์ŠคํŠธ ๊ตฌ๊ฐ„๋งŒ ์‹ ์ค‘ํ•˜๊ฒŒ ๋ฒˆ์—ญํ•˜๋„๋ก ์ง€์‹œํ•˜๋Š” ํŽธ์ด ๋‚ซ๋‹ค.

82์ฐจ batch๋Š” ๋งˆ์ง€๋ง‰ ๊ณต๊ฐœ ๋ฒˆ์—ญ backlog์ธ ์ œ์ฃผ ์ž์ „๊ฑฐ ์—ฌํ–‰ ๊ธ€์ด์—ˆ๋‹ค.

2025-08-30  ์ œ์ฃผํ™˜์ƒ์ž์ „๊ฑฐ๊ธธ ํ•œ ๋ฐ”ํ€ด(with ํญ์—ผ ๊ฒฝ๋ณด)

์ด ๊ธ€์€ ์›๋ฌธ 973์ค„์งœ๋ฆฌ์˜€๋‹ค. ์ด๋ฏธ์ง€๊ฐ€ 142๊ฐœ, ๋งํฌ๊ฐ€ 143๊ฐœ์˜€๋‹ค. ๋ฒˆ์—ญ ์ž์ฒด๋ณด๋‹ค ๋” ์œ„ํ—˜ํ•œ ๊ฒƒ์€ ์ด๋ฏธ์ง€ ์ค„์„ ๋น ๋œจ๋ฆฌ๊ฑฐ๋‚˜ ์ˆœ์„œ๋ฅผ ๋ฐ”๊พธ๋Š” ์ผ์ด์—ˆ๋‹ค.

๊ทธ๋ž˜์„œ worker ์ง€์‹œ๋ฅผ ํ‰์†Œ๋ณด๋‹ค ๋” ์ขํ˜”๋‹ค.

์ด๋ฏธ์ง€ markdown line 142๊ฐœ๋ฅผ ๊ทธ๋Œ€๋กœ ๋ณด์กดํ•œ๋‹ค.
์ด๋ฏธ์ง€ path์™€ ์ˆœ์„œ๋ฅผ ๋ฐ”๊พธ์ง€ ์•Š๋Š”๋‹ค.
raw/endraw, notice div, naver ์›๋ฌธ ๋งํฌ๋ฅผ ๋ณด์กดํ•œ๋‹ค.
์š”์•ฝํ•˜์ง€ ์•Š๋Š”๋‹ค.
์‚ฌ๋žŒ์ด ์“ด ํ…์ŠคํŠธ๋งŒ ๋ฒˆ์—ญํ•œ๋‹ค.

๊ฒ€์ฆ์€ batch scope์—์„œ ํ†ต๊ณผํ–ˆ๋‹ค.

source files: 1
checked: 7
ready: 7
warnings: 0
errors: 0

์ถ”๊ฐ€๋กœ ํ•œ๊ธ€ ์ž”๋ฅ˜, ํ”„๋กฌํ”„ํŠธ ์ž”๋ฅ˜, ์ธ๋„๋„ค์‹œ์•„์–ด artifact๋ฅผ ํ™•์ธํ–ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋งˆ์ง€๋ง‰์œผ๋กœ image/link/marker parity๋ฅผ ์ „์ฒด ์–ธ์–ด์— ๋Œ€ํ•ด ๋‹ค์‹œ ๋ดค๋‹ค.

raw 1
endraw 1
images 142
links 143
blockquotes 2
code span 1
div open 1
div close 1
comments 2
headings 2

์˜์–ด ํฌํ•จ 7๊ฐœ target์ด ๋ชจ๋‘ ์ด ๊ตฌ์กฐ์™€ ๋งž์•˜๋‹ค. ์ด๋ฏธ์ง€ 142๊ฐœ๋„ ์›๋ฌธ๊ณผ ๊ฐ™์€ ์ˆœ์„œ์˜€๋‹ค.

82์ฐจ๊นŒ์ง€ ๋ฐ˜์˜ํ•œ coverage๋Š” ์ด๋ ‡๊ฒŒ ๋๋‹ค.

en       ready 310/311, pending 1, missing 0, invalid 0
ja       ready 310/311, pending 1, missing 0, invalid 0
zh-Hans  ready 310/311, pending 1, missing 0, invalid 0
es       ready 310/311, pending 1, missing 0, invalid 0
pt-BR    ready 310/311, pending 1, missing 0, invalid 0
fr       ready 310/311, pending 1, missing 0, invalid 0
id       ready 310/311, pending 1, missing 0, invalid 0
errors   0

๋‚จ์€ pending 1์€ ์ด ๊ธ€, ๊ทธ๋Ÿฌ๋‹ˆ๊นŒ ์ง€๊ธˆ ์“ฐ๊ณ  ์žˆ๋Š” ์„ธ์…˜ ํฌ์ŠคํŠธ๋‹ค. ํ•œ๊ตญ์–ด ์›๋ฌธ ํ™•์ • ์ „์—๋Š” ์ž๋™ ๋ฒˆ์—ญํ•˜์ง€ ์•Š๊ธฐ๋กœ ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— pending์œผ๋กœ ๋‚จ๊ฒจ๋‘” ๊ฒƒ์ด๋‹ค.

์—ฌ๊ธฐ์„œ ๋ฒˆ์—ญ ์ƒ์„ฑ ๋‹จ๊ณ„๋Š” ๋‹ซํ˜”๋‹ค.

๊ทธ ๋‹ค์Œ์—์•ผ full build๋ฅผ ๋Œ๋ ธ๋‹ค.

์ฒ˜์Œ build๋Š” ์‹คํŒจํ–ˆ๋‹ค.

Liquid Exception: Could not parse name of post "" in tag 'post_url'

์›์ธ์€ ๋ฒˆ์—ญ ํŒŒ์ผ์ด ์•„๋‹ˆ์—ˆ๋‹ค. ์ด ์„ธ์…˜ ํฌ์ŠคํŠธ ์•ˆ์—์„œ ์„ค๋ช…์šฉ์œผ๋กœ ์ ์€ ๋นˆ {% post_url %} ๋ฆฌํ„ฐ๋Ÿด์„ Jekyll์ด ์‹ค์ œ Liquid ํƒœ๊ทธ๋กœ ํ•ด์„ํ•œ ๊ฒƒ์ด์—ˆ๋‹ค. Markdown code fence๋‚˜ inline code์ฒ˜๋Ÿผ ๋ณด์—ฌ๋„, Jekyll์€ Markdown๋ณด๋‹ค Liquid๋ฅผ ๋จผ์ € ์ฒ˜๋ฆฌํ•œ๋‹ค.

๊ทธ๋ž˜์„œ ์„ค๋ช…์šฉ Liquid ํƒœ๊ทธ๋ฅผ escapeํ–ˆ๋‹ค. ๊ทธ ๋’ค production build๋Š” ํ†ต๊ณผํ–ˆ๋‹ค.

JEKYLL_ENV=production bundle exec jekyll build
done in 1311.791 seconds.

ํ†ต๊ณผ๋Š” ํ–ˆ์ง€๋งŒ, ์‹œ๊ฐ„์ด ๋ฌธ์ œ์˜€๋‹ค. 1311.791์ดˆ๋ฉด ์•ฝ 21๋ถ„ 52์ดˆ๋‹ค. ์ด๋ฒˆ์— ์‚ฌ์šฉ์ž๊ฐ€ ์ง€์ ํ•œ ๊ฒƒ์ฒ˜๋Ÿผ, ์ด ์ •๋„ build๋ฅผ batch๋งˆ๋‹ค ๋Œ๋ ธ๋‹ค๋ฉด ์ž‘์—…์€ ๊ณ„์† ํ„ฐ์กŒ์„ ๊ฒƒ์ด๋‹ค.

๋งˆ์ง€๋ง‰ Browser QA๋„ ํ–ˆ๋‹ค.

/en/                  200
/en/about/            200
/ja/.../naver-010/    200
/zh-Hans/.../naver-010/ 200
/es/.../naver-010/    200
/pt-BR/.../naver-010/ 200
/fr/.../naver-010/    200
/id/.../naver-010/    200

์˜๋ฌธ ํ™ˆ๊ณผ ์˜๋ฌธ About์—์„œ๋Š” About์ด ๋ณด์˜€๊ณ , ํ•œ๊ตญ์–ด nav residue๋Š” ์—†์—ˆ๋‹ค. ๋ชจ๋ฐ”์ผ ํญ์—์„œ๋„ About, ๐Ÿ‡บ๐Ÿ‡ธEnglish, ๊ฒ€์ƒ‰, category control์ด ๋ณด์˜€๋‹ค. ์—ฌํ–‰ ๊ธ€์˜ ์˜๋ฌธ ํŽ˜์ด์ง€๋Š” ๋ณธ๋ฌธ ํ•œ๊ธ€ ์ž”๋ฅ˜๊ฐ€ ์—†์—ˆ๊ณ , hreflang์€ ko, en, ja, zh-Hans, es, pt-BR, fr, id, x-default๋กœ ์žกํ˜”๋‹ค.

์กฐํšŒ์ˆ˜๋„ ๋‹ค์‹œ ๋ดค๋‹ค. ํ•œ๊ตญ์–ด์™€ ์˜์–ด ์—ฌํ–‰ ๊ธ€ ๋ชจ๋‘ built HTML์—์„œ ๊ฐ™์€ canonical page view path๋ฅผ ์ผ๋‹ค.

data-page-view-path="/diary/travel/naver-010/"

ํด๋ผ์ด์–ธํŠธ JS์™€ Worker ์–‘์ชฝ์—์„œ /en, /ja, /zh-Hans, /es, /pt-BR, /fr, /id prefix๋ฅผ ์ œ๊ฑฐํ•œ๋‹ค. ๊ทธ๋ž˜์„œ ๊ฐ™์€ ๊ธ€์„ ์–ธ์–ด๋งŒ ๋ฐ”๊ฟ” ์ฝ์–ด๋„ ์กฐํšŒ์ˆ˜ key์™€ dedupe key๋Š” ๊ฐ™์€ canonical path ๊ธฐ์ค€์œผ๋กœ ์žกํžŒ๋‹ค.

์ด์ œ ๋‚จ์€ ๊ฒƒ์€ ์ด ์„ธ์…˜ ํฌ์ŠคํŠธ์˜ ๋ฒˆ์—ญ๋ฟ์ด๋‹ค. ๋‹ค๋งŒ ์ด๊ฑด ์›๋ฌธ ํ™•์ • ์ „ ์ž๋™ ๋ฒˆ์—ญํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๋ฃฐ ๋•Œ๋ฌธ์— pending์œผ๋กœ ๋‚จ๊ธด๋‹ค.

์˜์–ดํŒ ์ž‘์—…์ด /en/ ํด๋”๋ฅผ ๋งŒ๋“  ์ผ์ด์—ˆ๋‹ค๋ฉด, ๋‹ค์Œ ์ž‘์—…์€ ๋ธ”๋กœ๊ทธ๋ฅผ ๋‹ค๊ตญ์–ด ์ œํ’ˆ์œผ๋กœ ๋‹ค๋ฃฐ ์ˆ˜ ์žˆ๋Š” ์šด์˜ ๊ตฌ์กฐ๋ฅผ ๋งŒ๋“œ๋Š” ์ผ์ด๋‹ค.

๋ธ”๋กœ๊ทธ๊ฐ€ ์ปค์งˆ์ˆ˜๋ก ๋ฌธ์ œ๋Š” ๊ธ€ ๊ฐœ์ˆ˜๊ฐ€ ์•„๋‹ˆ๋‹ค.

๊ฐ™์€ ๊ธฐ์ค€์œผ๋กœ ๊ณ„์† ์›€์ง์ผ ์ˆ˜ ์žˆ๋А๋ƒ๊ฐ€ ๋ฌธ์ œ๋‹ค.

์ด๋ฒˆ์—๋Š” ๊ทธ ๊ธฐ์ค€์„ ๊ฝค ๋น„์‹ธ๊ฒŒ ๋ฐฐ์› ๋‹ค. ๋ฒˆ์—ญ ํ’ˆ์งˆ์—์„œ ํ•œ ๋ฒˆ ๋งž๊ณ , ์–ธ์–ด ์ „ํ™˜ UI์—์„œ ํ•œ ๋ฒˆ ๋งž๊ณ , ์กฐํšŒ์ˆ˜ dedupe์—์„œ ํ•œ ๋ฒˆ ๋” ๋งž์•˜๋‹ค. ๊ทธ๋ž˜๋„ ๊ทธ ๋•๋ถ„์— /en/์€ ๋‹จ์ˆœํ•œ ๋ฒˆ์—ญ ํด๋”๊ฐ€ ์•„๋‹ˆ๋ผ, ํ•œ๊ตญ์–ด ์›๋ฌธ๊ณผ ๊ฐ™์ด ์›€์ง์ด๋Š” ์˜์–ดํŒ ๋ธ”๋กœ๊ทธ๊ฐ€ ๋๋‹ค.

์นดํ…Œ๊ณ ๋ฆฌ: ,

์ตœ๊ทผ ์ˆ˜์ •์ผ:

๋Œ“๊ธ€ ๋‚จ๊ธฐ๊ธฐ