Typed Path Caller Construction - kimjooyoon/meta-ontology-go GitHub Wiki

ํ•จ์ˆ˜์˜ ๋ถ„๊ธฐ๋ฅผ ํ˜ธ์ถœ ๊ฒฐ๊ณผ๋กœ ๋‹ค์‹œ ๊ณ ๋ฅด๊ธฐ

ํ™•์ธ: 2026-10-10 KST. ์‹คํ—˜ PR1431์„ ์›๋ณธ ์—ฌ์„ฏ ๊ฒ€์‚ฌยท์ฆ๊ฑฐ ๋ฌถ์Œยท๋„ค ํ”Œ๋žซํผ ์ค€๋น„ ๊ฒ€์‚ฌ๋ฅผ ํ†ต๊ณผํ•ด dev 26c4e315์— ์ •์ƒ ๋ณ‘ํ•ฉํ–ˆ์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ ๊ณต๊ฐœ0.6.23 ํŒŒ์ผ๋ณด๋‹ค ๋’ค์˜ ๊ฐœ๋ฐœ ์†Œ์Šค์ž…๋‹ˆ๋‹ค. ์ฒซ CI๋Š” ๊ธฐ๋Šฅยทraceยท์ •์ฑ… ๊ฒ€์‚ฌ๋ฅผ ํ†ต๊ณผํ–ˆ๊ณ , ํ•จ์ˆ˜ ์ž๋™ ๋ถ„ํ• ์˜ ๋ณด์กฐ ํ•จ์ˆ˜๊ฐ€ ๊ธธ์ด ํ•œ๋„๋ฅผ 3์ค„ ๋„˜์–ด ์˜๋ฏธ ์ผ๊ด€์„ฑ ๊ฒ€์‚ฌ์—์„œ ๋ฉˆ์ท„์Šต๋‹ˆ๋‹ค. ์ ์ˆ˜ ๊ณ„์‚ฐ์„ ๋ณ„๋„ ํ•จ์ˆ˜๋กœ ์ •๋ฆฌํ•˜๊ณ  ๊ฐ™์€ ๋ถ„ํ•  ๊ฒ€์‚ฌ์™€ ์ƒ์„ฑ Go์˜ race ๊ฒ€์‚ฌ๋ฅผ ํ†ต๊ณผํ–ˆ์Šต๋‹ˆ๋‹ค. ์ˆ˜์ • ์†Œ์Šค fe2e533a์˜ ์ƒˆ ์›๋ณธ CI๋Š” ์„ฑ๊ณต์œผ๋กœ ์™„๋ฃŒ๋์Šต๋‹ˆ๋‹ค. ์ฒซ ์‹คํŒจ์™€ ์ˆ˜์ • ๊ด€์ธก ยท ์›๋ณธ ์ฆ๊ฑฐ์™€ ๋ณ‘ํ•ฉ ๊ธฐ๋ก.

์˜ˆ๋ฅผ ๋“ค์–ด ํ•จ์ˆ˜๊ฐ€ 0์„ ๋ฐ›์•„ 0์„ ๋Œ๋ ค์ฃผ๋Š” ์˜ˆ์ œ ํ•˜๋‚˜๋ฅผ ํ†ต๊ณผํ–ˆ๋‹ค๊ณ  ํ•ฉ์‹œ๋‹ค. ์–‘์ˆ˜์ผ ๋•Œ ์ž…๋ ฅ์„ ๊ทธ๋Œ€๋กœ ๋Œ๋ ค์ฃผ๋Š” ๋ถ„๊ธฐ์™€ ์Œ์ˆ˜๋กœ ๋ฐ”๊พธ๋Š” ๋ถ„๊ธฐ ๋ชจ๋‘ ๊ทธ ์˜ˆ์ œ๋ฅผ ํ†ต๊ณผํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Gooo๋Š” ํ•จ์ˆ˜๋ฅผ ์‹ค์ œ๋กœ ์“ฐ๋Š” ์ชฝ์˜ 3 -> 6 ๊ธฐ๋Œ€๊ฐ’์„ ์‹คํ–‰ํ•ด ๋ณด๊ณ  ํ—ˆ์šฉ๋œ ๋‹ค๋ฅธ ๋ถ„๊ธฐ๋„ ์กฐ๋ฆฝํ•ฉ๋‹ˆ๋‹ค. ํ•จ์ˆ˜ ์ž์ฒด์˜ ์˜ˆ์ œ์™€ ์ „์ฒด ํ˜ธ์ถœ์˜ ์˜ˆ์ œ๋ฅผ ๊ฐ๊ฐ ๊ธฐ๋กํ•ฉ๋‹ˆ๋‹ค.

์ด๋ฒˆ์— ๋Š˜๋ฆฐ ์–ธ์–ด ๊ธฐ๋Šฅ

์กฐ๊ฑดยท๋ณ€์ˆ˜ยท๋ถ„๊ธฐ typed-path ๋ณธ๋ฌธ์„ ๋ ˆ์ฝ”๋“œ ์„ ํƒ, ์ •์ˆ˜ ์‹, ์—ฌ๋Ÿฌ ๋นˆ์นธ์˜ ๋ณธ๋ฌธ๊ณผ ๊ฐ™์ด ์ „์ฒด ํ”„๋กœ๊ทธ๋žจ ์žฌ์กฐ๋ฆฝ์— ๋„ฃ์Šต๋‹ˆ๋‹ค. ์ฒ˜์Œ ๊ณ ๋ฅธ ๋ณธ๋ฌธ๋ถ€ํ„ฐ ์‹คํ–‰ํ•˜๊ณ  ๋‹ค์Œ typed ํ›„๋ณด๋Š” ์›๋ž˜ ์†Œ์Šค fallback๊ณผ ๋‹ค๋ฅธ ์„ ํƒ ์ˆ˜, ์ˆซ์ž ์ˆœ์œผ๋กœ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ํ•จ์ˆ˜์˜ ์‹œ๋„ ์ˆ˜์™€ ์ „์ฒด ํ”„๋กœ๊ทธ๋žจ์˜ ์‹œ๋„ ์ˆ˜๋Š” ๋”ฐ๋กœ ์ œํ•œํ•ฉ๋‹ˆ๋‹ค.

ํƒ€์ž…์— ๋งž์ง€ ์•Š๋Š” ๋‘ ์„ ํƒ์˜ ์กฐํ•ฉ๋„ ์‹œ๋„ ๊ธฐ๋ก์— ๋‚จ์Šต๋‹ˆ๋‹ค. ๊ทธ ์กฐํ•ฉ์—๋Š” ์‹คํ–‰ ์ ์ˆ˜๋ฅผ ๋ถ™์ด์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ €์žฅ ์žฌ์ƒ์€ ์†Œ์Šค์™€ ํ›„๋ณด ๋ฒ”์œ„๋ฅผ ๋‹ค์‹œ ์ฝ๊ณ  ๊ฐ ์‹œ๋„์˜ ๊ฒฐ๊ณผ๋ฅผ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. gooo/joint-construction/v7์€ ์„ ํƒํ•œ ๊ฐ’ยท์ง€์—ญ ์‹ค์ œ ๊ฐ’ยทํƒˆ๋ฝยทnative ํ˜ธ์ถœ์„ ๋ณด๊ด€ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด v1..v6 ๊ธฐ๋ก๋„ ๊ฐ™์€ ์˜๋ฏธ๋กœ ์žฌ์ƒํ•ฉ๋‹ˆ๋‹ค.

์‹ค์ œ๋กœ ํ•ด๋ณธ ๊ฒฐ๊ณผ

์˜ˆ์ œ ํ”„๋กœ๊ทธ๋žจ ์‹œ๋„ ์„ ํƒ ํ•จ์ˆ˜๋“ค์˜ ์ง€์—ญ ์‚ฌ๋ก€ ๋งˆ์ง€๋ง‰ ๋ณ„๋„ ์ž…๋ ฅ ์ดˆ๊ธฐ ๋ชจ๋ธ ํ˜ธ์ถœ ์žฌ์ƒ์˜ ์ƒˆ ํ˜ธ์ถœ
๋ถ„๊ธฐ ํ•˜๋‚˜, ๋ชจ๋ธ ์ƒ๋žต 2 1/1 3/3 0 0
๋ถ„๊ธฐ + ๋ ˆ์ฝ”๋“œ, ์ž์ฒด ์ž‘์€ ๋ชจ๋ธ 15 2/2 3/3 1 0

์ดˆ๊ธฐ ํ”„๋กœ๊ทธ๋žจ์˜ ํ˜ธ์ถœ ๊ฒฐ๊ณผ๋Š” ๋‘˜ ๋‹ค0/1์ด์—ˆ์Šต๋‹ˆ๋‹ค. ๋ถ„๊ธฐ๋ฅผ ๋‹ค์‹œ ๊ณ ๋ฅธ ๋’ค ๊ฐ ์กฐ๋ฆฝ์šฉ ํ˜ธ์ถœ1/1๊ณผ ์„œ๋กœ ๋‹ค๋ฅธ ๋งˆ์ง€๋ง‰ ์ž…๋ ฅ3/3์„ ๊ด€์ธกํ–ˆ์Šต๋‹ˆ๋‹ค. ๋งˆ์ง€๋ง‰ ์ž…๋ ฅ์—๋Š” ์ •ํ™•ํ•œ ์ •์ˆ˜ 9007199254740993์ด ์žˆ์Šต๋‹ˆ๋‹ค. ํ•™์Šต ๋ฐ์ดํ„ฐ์™€์˜ ๊ด€๊ณ„๋Š” ํ™•์ธํ•˜์ง€ ์•Š์•˜๊ณ , ์ ์ˆ˜๋Š” ์ด ์˜ˆ์ œ๋ฅผ ์‹คํ–‰ํ•œ ๋ฒ”์œ„๋กœ ์ฝ์Šต๋‹ˆ๋‹ค.

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

์‹คํ–‰๊ณผ ์›๋ณธ

์งง์€ ์‹คํ–‰ ์˜ˆ์ œ๋Š” ๋ชจ๋ธ ์ƒ๋žต, ํ˜ธํ™˜ ๋ชจ๋ธ๊ณผ ๋ ˆ์ฝ”๋“œ ํ˜ผํ•ฉ์„ ๋‚˜๋ˆ  ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค. ํŒจํ‚ค์ง€๋กœ ์—ฐ๊ฒฐํ•  ๋•Œ๋Š” ์ž…๋ ฅ ์ด๋ฆ„์„ <package-path>:<activity>๋กœ ์”๋‹ˆ๋‹ค. imported helper์˜ ๋ถ„๊ธฐ๋ฅผ ๋‹ค์‹œ ๊ณ ๋ฅด๋Š” ๊ฒ€์‚ฌ๋„ ํ†ต๊ณผํ–ˆ์Šต๋‹ˆ๋‹ค.

์›๋ณธ ๋ณด๊ณ ์„œ์™€ ์‹œ๊ฐ„ยท๊ฒ€์‚ฌ ๊ธฐ๋ก์˜ ์‹คํ–‰ ์ƒ์‚ฐ์ž๋Š” ๊นจ๋—ํ•œ ce430158์ž…๋‹ˆ๋‹ค. ๋ฌธ์„œ ์ถ”๊ฐ€ ์†Œ์Šค3544519e์™€ ๊ณต๊ฐœ ํŒŒ์ผ ์ƒ์‚ฐ์ž2b๋ฅผ ๊ตฌ๋ถ„ํ•ฉ๋‹ˆ๋‹ค. ์ง€์—ญ ๊ฒ€์‚ฌ, native ์‚ฐ์ˆ  ์˜ค๋ฅ˜, ํƒ€์ž… ์กฐํ•ฉ ๊ฑฐ์ ˆ, ๋ณ€๊ฒฝ๋œ ๊ธฐ๋ก, ํ•œ๋„, CLIยทํŒจํ‚ค์ง€ ์ €์žฅ ์žฌ์ƒ์„ ํ™•์ธํ–ˆ์Šต๋‹ˆ๋‹ค. ์‹ค์ œ ๋ชจ๋ธ ์˜ˆ์ธก ํƒ€์ด๋จธ12,834ns์™€ ์ „์ฒด ์กฐ๋ฆฝ CLI8.20์ดˆ๋„ ๊ฐ ๋ฒ”์œ„๋กœ ๋‚จ๊ฒจ๋‘์—ˆ์Šต๋‹ˆ๋‹ค.

๋ณ‘ํ•ฉ ๋’ค dev 26c4e315์˜ ์›๋ณธ push CI37981912354๋„ attempt1์—์„œ ์„ฑ๊ณตํ–ˆ์Šต๋‹ˆ๋‹ค. ์ค€๋น„ ๊ฒ€์‚ฌ37981912156 ์—ญ์‹œ ๊ฐ™์€ ์†Œ์Šค์—์„œ ์„ฑ๊ณตํ–ˆ์Šต๋‹ˆ๋‹ค.

typed recipe์˜ ๋ณ€์ˆ˜ ์Œ์ˆ˜ -input์€ PR1432์˜ ์›๋ณธ ์—ฌ์„ฏ ๊ฒ€์‚ฌยทv5 ์ฆ๊ฑฐยท๋„ค ํ”Œ๋žซํผ ์ค€๋น„ ๊ฒ€์‚ฌ๋ฅผ ํ†ต๊ณผํ•ด dev 035e4447์— ์ •์ƒ ๋ณ‘ํ•ฉํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ณ€์ˆ˜ยท๊ด„ํ˜ธ ์‹ยท์ค‘์ฒฉ ์Œ์ˆ˜ยท์žฌํ• ๋‹นยท์กฐ๊ฑด์‹ ์กฐํ•ฉ์˜ ์ง€์—ญ ์‚ฌ๋ก€ 35๊ฐœ๋ฅผ ๊ฒ€์‚ฌํ–ˆ๊ณ  ์ •์ˆ˜ ์ƒ์ˆ˜์˜ ๊ธฐ์กด ๋ฐฐ์—ด ๋ฒˆํ˜ธ๋ฅผ ์œ ์ง€ํ–ˆ์Šต๋‹ˆ๋‹ค. dev26c์—์„œ๋Š” 0 - input์œผ๋กœ ์“ฐ๊ณ  dev035์—์„œ๋Š” -input์„ ์ง์ ‘ ์”๋‹ˆ๋‹ค. ์‹คํ–‰ ์›๋ฆฌ์™€ ๋ฒ”์œ„.

์ž‘์—…์žฅ PR56์€ ์ €์žฅํ•œ typed ์กฐ๋ฆฝ์˜ ํ˜ธ์ถœ ๋ฐ˜๋ก€๋ฅผ ์ด ๋„ค์ดํ‹ฐ๋ธŒ ๊ฒฝ๋กœ๋กœ ๋„˜๊ธฐ๋Š” ๋ณ€๊ฒฝ์œผ๋กœ ์›๋ณธ PR/push CI๋ฅผ ํ†ต๊ณผํ•ด main8302cd7์— ๋ณ‘ํ•ฉยท์„ค์น˜ํ–ˆ์Šต๋‹ˆ๋‹ค. ์›๋ž˜ ์กฐ๋ฆฝ ํŒŒ์ผ์„ ๋ณด์กดํ•˜๊ณ  ์ตœ์‹  Gooo ์ •์ฑ…์ด ๋‹ค์Œ ๋ฐ˜๋ก€๋ฅผ ๊ณ ๋ฆ…๋‹ˆ๋‹ค. ์›๋ณธ ๊ณต๊ฐœ 0.6.23์˜ ์‹ค์ œ ์ง€์› ๋ฒ”์œ„๋„ ๋”ฐ๋กœ ๊ฒ€์‚ฌํ•ฉ๋‹ˆ๋‹ค. ํ˜„์žฌ ์‚ฌ์šฉ ํ๋ฆ„๊ณผ ์›๋ณธ ์„ค์น˜ ๊ด€์ธก.

โš ๏ธ **GitHub.com Fallback** โš ๏ธ