Historical Roots 30 KO - teamswyg/laya-tools GitHub Wiki

ํ‰๊ฐ€2,400๊ฐœ ์ „์ฒด์˜ ๊ณผ๊ฑฐ ์›์ฒœ ์ ‘๊ทผ โ€” ์‹คํ—˜30

๊ณ ์ •ํ•œ2,400๊ฐœ ์ˆ˜์ • ์ „ ์Šค๋ƒ…์ƒท ๋ชจ๋‘์˜ ์ตœ์ƒ์œ„ ํŒŒ์ผ ๋ชฉ๋ก์— ์ ‘๊ทผํ–ˆ๋‹ค. ํ‘œ๋ณธ53๊ฐœ์—์„œ ์ „์ฒด๋กœ ๋ฒ”์œ„๋ฅผ ๋„“ํ˜”๋‹ค.2,230๊ฐœ์—๋Š” ์ตœ์ƒ์œ„ ๋ผ์ด์„ ์Šค ํ›„๋ณด ํŒŒ์ผ์ด ์žˆ๊ณ , ๋‚˜๋จธ์ง€170๊ฐœ๋Š” ํ•˜์œ„ ๊ฒฝ๋กœ ํ™•์ธ์ด ํ•„์š”ํ•˜๋‹ค. ๋ผ์ด์„ ์Šค ๋ณธ๋ฌธ ๊ฒ€ํ† ๋‚˜ ๋ชจ๋ธ ํ‰๊ฐ€ ์™„๋ฃŒ๋ฅผ ๋œปํ•˜์ง€ ์•Š๋Š”๋‹ค.

๋ฒ”์œ„์™€ ๊ฒฐ๊ณผ

์‚ฌ์ „ ๊ณ„ํš์— ๋”ฐ๋ผ ์‹คํ—˜29์˜ ์„ ํƒ ๊ตฌ์„ฑ์„ ์›์ฒœ projection์—์„œ ์žฌ๊ณ„์‚ฐํ–ˆ๋‹ค. ์„ ํƒ ํ•ด์‹œ fa58c4e51ae307963eb587813e49adf70d987dcb4893f6ee1aa6050bc6b80a5a์™€2,400๊ฐœ ์ˆ˜๋ฅผ ํ™•์ธํ•œ ๋’ค ๊ฐ ์ •ํ™•ํ•œ base_commit์˜ GitHub root tree๋ฅผ ์กฐํšŒํ–ˆ๋‹ค. ๊ธด ์š”์ฒญ53๊ฐœ์™€ ๋‹ค๋ฅธ ๋ชจ๋“  ์„ ํƒ ํ•ญ๋ชฉ์„ ์œ ์ง€ํ–ˆ๋‹ค.

ํ•ญ๋ชฉ ๊ฒฐ๊ณผ
๋Œ€์ƒ / ์ ‘๊ทผ ์„ฑ๊ณต 2,400 / 2,400
์ ‘๊ทผ ์‹คํŒจ 0
์ตœ์ƒ์œ„ ๋ผ์ด์„ ์Šค ํ›„๋ณด๊ฐ€ ์žˆ๋Š” ์Šค๋ƒ…์ƒท 2,230
ํ•˜์œ„ ๊ฒฝ๋กœ ํ™•์ธ์ด ํ•„์š”ํ•œ ์Šค๋ƒ…์ƒท 170
์‘๋‹ต ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ํ•ฉ๊ณ„ 14,752,218๋ฐ”์ดํŠธ
์ค‘๋ณต์„ ํ•ฉ์นœ ํ›„๋ณด ๊ฐ์ฒด ๋ชฉ๋ก 143๊ฐœ

170๊ฐœ๋Š” matplotlib/matplotlib163๊ฐœ์™€ tokio-rs/axum7๊ฐœ๋‹ค. ๊ธฐ์กด ํ‘œ๋ณธ์˜ root๋ฅผ ์ถ”๊ฐ€๋กœ ์‚ดํŽด๋ณด๋ฉด Matplotlib์€ LICENSE๊ฐ€ ๋””๋ ‰ํ„ฐ๋ฆฌ์ด๊ณ , Axum์€ ์—ฌ๋Ÿฌ ํ•˜์œ„ ํŒจํ‚ค์ง€๋ฅผ ๋‘” ๊ตฌ์กฐ์˜€๋‹ค. ์ตœ์ƒ์œ„ ํ›„๋ณด ํŒŒ์ผ์ด ์—†๋‹ค๊ณ  ๋ผ์ด์„ ์Šค๊ฐ€ ์—†๋Š” ๊ฒƒ์€ ์•„๋‹ˆ๋‹ค. ํ›„์† ๋‹จ๊ณ„์—์„œ ํ•˜์œ„ ๊ฒฝ๋กœ๋ฅผ ํ™•์ธํ•œ๋‹ค.

ํ›„๋ณด ๊ทœ์น™์€ ์‹คํ—˜29์˜ LICENSE/COPYING/NOTICE ํŒŒ์ผ๋ช… ๊ทœ์น™ ๊ทธ๋Œ€๋กœ๋‹ค.143๊ฐœ๋Š” (์ €์žฅ์†Œ, ๊ฒฝ๋กœ, blob ID) ์กฐํ•ฉ์„ ํ•ฉ์นœ ์ˆ˜์ด๋ฉฐ143์ข… ๋ผ์ด์„ ์Šค๋ผ๋Š” ๋œป์ด ์•„๋‹ˆ๋‹ค. ํ›„๋ณด์˜ ์ฐธ์กฐ ํšŸ์ˆ˜์™€ blob ๋ชฉ๋ก์€ ๋กœ์ปฌ ํŒŒ์ผ์—๋งŒ ์ €์žฅํ•œ๋‹ค. ์ €์žฅ์†Œ๋ณ„ ๊ณต๊ฐœ ์ง‘๊ณ„๋Š” ๊ฐœ๋ณ„ ์ž‘์—… ID๋‚˜ ์ปค๋ฐ‹ ID๋ฅผ ํฌํ•จํ•˜์ง€ ์•Š๋Š”๋‹ค.

์‹คํ–‰๊ณผ ์บ์‹ฑ

๋‘ ์ž‘์—…์ž๊ฐ€ ๊ฐ์ž ์ž…๋ ฅ๊ณผ ๊ฒฐ๊ณผ ์Šฌ๋กฏ์„ ์†Œ์œ ํ•œ๋‹ค. ์š”์ฒญ ์‹œ๊ฐ„30์ดˆ, ์‘๋‹ต2MiB, ์˜ค๋ฅ˜4KiB ์ƒํ•œ์„ ๋‘๊ณ  ์ž‘์—…์ž๋ณ„ ์š”์ฒญ ์‹œ์ž‘ ์‚ฌ์ด๋ฅผ ์ตœ์†Œ250ms ๋„์šด๋‹ค. ๊ธฐ์กด GitHub CLI ์ธ์ฆ์„ ์‚ฌ์šฉํ•˜๋ฉฐ ์ธ์ฆ๊ฐ’๊ณผ ์˜ค๋ฅ˜ ์›๋ฌธ์„ ๊ณต๊ฐœ ๊ฒฐ๊ณผ๋กœ ์˜ฎ๊ธฐ์ง€ ์•Š๋Š”๋‹ค.

์„ฑ๊ณต ์‘๋‹ต๋งŒ ๊ฒ€์ฆ ํ›„ ์ž„์‹œ ํŒŒ์ผ์—์„œ ์›์ž์ ์œผ๋กœ ์ด๋ฆ„์„ ๋ฐ”๊ฟ” ์บ์‹œ์— ์ €์žฅํ•œ๋‹ค. ๋ถˆ์™„์ „ treeยท์ž˜๋ชป๋œ ๊ฐ์ฒด ์ข…๋ฅ˜/๋ชจ๋“œยท์ž˜๋ชป๋œ ๊ฐ์ฒด IDยท์ค‘๋ณต ๊ฒฝ๋กœยท๊ณผ๋„ํ•œ ์‘๋‹ต์€ ๊ฑฐ๋ถ€ํ•œ๋‹ค. ์‹คํŒจ ํ•ญ๋ชฉ์„ ๋‹ค๋ฅธ ์‰ฌ์šด ํ•ญ๋ชฉ์œผ๋กœ ๋Œ€์ฒดํ•˜์ง€ ์•Š๋Š”๋‹ค. ๊ธฐ์กด53๊ฐœ ํ‘œ๋ณธ ์บ์‹œ๋„ ์žฌ์‚ฌ์šฉํ–ˆ๋‹ค. ์บ์‹œ๋Š” ์›์ฒœ ์กฐํšŒ ์‘๋‹ต์ด๋ฉฐ ๋ผ์ด์„ ์Šค ์Šน์ธ ๋ชฉ๋ก์ด ์•„๋‹ˆ๋‹ค.

--offline ์žฌ์‹คํ–‰์€ GitHub ํ˜ธ์ถœ์„ ํ•˜์ง€ ์•Š๋Š”๋‹ค. ์บ์‹œ์— ์—†๋Š” ํ•ญ๋ชฉ์€ ์ ‘๊ทผ ๋ฏธํ™•์ธ์œผ๋กœ ์ง‘๊ณ„ํ•œ๋‹ค. ์ด๋ฒˆ์—๋Š”2,400๊ฐœ ๋ชจ๋‘ ์บ์‹œ๊ฐ€ ์žˆ์—ˆ๊ณ  ์ง‘๊ณ„์™€ private ํ›„๋ณด ๋ชฉ๋ก์ด ์ตœ์ดˆ ์‹คํ–‰๊ณผ ๋ฐ”์ดํŠธ ๋‹จ์œ„๋กœ ์ผ์น˜ํ–ˆ๋‹ค.

go run ./cmd/riido-rootcoverage --out .cache/historical-roots-new
# ์œ„ ์ˆ˜์ง‘์ด ๋๋‚œ ๋’ค, ์ƒˆ ์ถœ๋ ฅ ํด๋”์— ๋„คํŠธ์›Œํฌ ์—†์ด ์žฌํ˜„ํ•œ๋‹ค.
go run ./cmd/riido-rootcoverage --offline --out .cache/historical-roots-offline-new

๊ณ ์ • ์ž…๋ ฅ projection์ด ํ•„์š”ํ•˜๋‹ค. ์ถœ๋ ฅ ํด๋”๋Š” ์ƒˆ ๊ฒฝ๋กœ์—ฌ์•ผ ํ•œ๋‹ค. candidates.json๊ณผ ์›์ฒœ cache๋Š” ๋กœ์ปฌ ์œ ์ง€์šฉ์ด๋ฉฐ Git/HF์— ์˜ฌ๋ฆฌ์ง€ ์•Š๋Š”๋‹ค.

๊ฒ€์ฆยท์ž์›ยทํ•ด์„

์ฃผ์ž…๋œ API ์‘๋‹ต์œผ๋กœ ์บ์‹œ ์žฌ์‚ฌ์šฉ, ์‹คํŒจ ์‘๋‹ต ๋ฏธ์ €์žฅ, ์ž˜๋ชป๋œ ์‹๋ณ„์ž, ์ถœ๋ ฅ ํฌ๊ธฐ ์ œํ•œ์„ ๊ฒ€์‚ฌํ–ˆ๋‹ค. ํ›„๋ณด ์ค‘๋ณต ํ•ฉ์‚ฐ๊ณผ ์ €์žฅ์†Œ๋ณ„ ์„ฑ๊ณต/์‹คํŒจ/๋ฏธ๋ฐœ๊ฒฌ ์ง‘๊ณ„๋„ ํ…Œ์ŠคํŠธํ–ˆ๋‹ค. ์ „์ฒด Go race/vetยทํ˜•์‹ ๊ฒ€์‚ฌ, ๊ธฐ์กด53๊ฐœ ํ‘œ๋ณธ ๊ฒฐ๊ณผ ์žฌํ˜„, ์‹ค์ œ2,400๊ฐœ ์˜คํ”„๋ผ์ธ ์‹คํ–‰์˜ race ๊ฒ€์‚ฌ์™€ ๊ฒฐ๊ณผ ์ผ์น˜๋ฅผ ํ™•์ธํ–ˆ๋‹ค.

M4 Pro CPU์—์„œ ์บ์‹œ๋งŒ ์‚ฌ์šฉํ•˜๋Š” ์žฌํ˜„1ํšŒ๋Š” wall0.93์ดˆ,user0.44์ดˆ,sys0.10์ดˆ,peak RSS32,440,320๋ฐ”์ดํŠธ(์•ฝ30.9MiB)์˜€๋‹ค. ์ตœ์ดˆ ๋„คํŠธ์›Œํฌ ์ˆ˜์ง‘ ์ „์ฒด์˜ ์‹œ๊ฐ„/๋ฉ”๋ชจ๋ฆฌ ์ธก์ •์ด ์•„๋‹ˆ๋ฉฐ, ๋ชจ๋ธ ์ถ”๋ก ยทGPU ๋น„์šฉ๋„ ์•„๋‹ˆ๋‹ค. ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ14.8MB๋Š” ์ฝ”๋“œ ์ „์ฒด๋‚˜ ์ปจํ…Œ์ด๋„ˆ์˜ ์ €์žฅ ๊ณต๊ฐ„ ์ถ”์ •์น˜๊ฐ€ ์•„๋‹ˆ๋‹ค.

์ด๋ฒˆ์— ํ™•์ธํ•œ ๊ฒƒ์€ ๋ชจ๋“  ์„ ํƒ ์ปค๋ฐ‹์˜ ์ตœ์ƒ์œ„ ๋ชฉ๋ก ์ ‘๊ทผ ๊ฐ€๋Šฅ์„ฑ์ด๋‹ค. ์ฝ”๋“œ ๋ณธ๋ฌธ์ด๋‚˜ ๋ผ์ด์„ ์Šค ๋ณธ๋ฌธ์€ ๋ฐ›์ง€ ์•Š์•˜๊ณ  ํ•˜์œ„ ํŒŒ์ผ ์ „์ฒด๋ฅผ ์ ๊ฒ€ํ•˜์ง€ ์•Š์•˜๋‹ค. root ํ›„๋ณด๊ฐ€ ์žˆ์–ด๋„ ํ•ด๋‹น ํ…์ŠคํŠธ์™€ ์ œ3์ž ์ฝ”๋“œ์˜ ์กฐ๊ฑด์„ ์ฝ์–ด์•ผ ํ•œ๋‹ค. LicensesReviewed์™€ ProductionReady๋Š” ๊ณ„์†false๋‹ค.

๋‹ค์Œ์€170๊ฐœ ๋Œ€์ƒ์˜ ํ•˜์œ„ ๋ผ์ด์„ ์Šค ๊ฒฝ๋กœ ํ™•์ธ, ์ค‘๋ณต ํ›„๋ณด ๋ณธ๋ฌธ์˜ ๋ฌด๊ฒฐ์„ฑ ๊ฒ€์ฆ๊ณผ ์›์ฒœ ์กฐ๊ฑด ์ •๋ฆฌ๋‹ค. ๊ธด ์š”์ฒญ์˜ ์ž…๋ ฅ ๊ณ„์•ฝ๊ณผ ์‹ค์ œ2,400๊ฐœ ํ‰๊ฐ€๋„ ๋‚จ๋Š”๋‹ค. ํ•™์Šตยท๋ชจ๋ธ ์ถ”๋ก ยท์ƒˆ HF ๋ฐฐํฌยท๊ธฐ๋ณธ ๊ธฐ๋Šฅ ํ™œ์„ฑํ™”๋Š” ํ•˜์ง€ ์•Š์•˜๊ณ  ๊ธฐ์กด ์ตœ์ข… reserve๋Š” ์‚ฌ์šฉํ•˜์ง€ ์•Š์•˜๋‹ค.

PR #53 ยท CI

ํ›„์†: ์‹คํ—˜ 31์—์„œ 170๊ฐœ ํ•˜์œ„ ๊ฒฝ๋กœ๋ฅผ ํ™•์ธํ•˜๊ณ  ์ „์ฒด 2,400๊ฐœ ๋ฒ„์ „์˜ ํ›„๋ณด ๋ณธ๋ฌธ ๋ฌด๊ฒฐ์„ฑ์„ ๊ฒ€์ฆํ–ˆ๋‹ค. ์ „์ฒด ๋ฒ•์  ์กฐ๊ฑด ๋ฐ ์‹ค์ œ ๋ชจ๋ธ ํ‰๊ฐ€๋Š” ๋ณ„๋„๋‹ค.