Working with Gooo - kimjooyoon/meta-ontology-go GitHub Wiki

3. ์‚ฌ์šฉ ํ๋ฆ„

๋‚ด๋ถ€ ํ‰๊ฐ€๊ธฐ ์ด๋ฆ„์„ ๋ชจ๋‘ ์™ธ์šฐ๊ธฐ ์ „์—, ์ง€๊ธˆ ํ•˜๋ ค๋Š” ์ž‘์—…๋ถ€ํ„ฐ ๊ณ ๋ฆ…๋‹ˆ๋‹ค.

์—…๋ฐ์ดํŠธ: 2026-10-09. ๊ณต๊ฐœ 0.6.22์™€ ์ž์ฒด ๋ชจ๋ธ์„ ์ด์šฉํ•œ ์กฐ๋ฆฝยท์‹ค์ œ ์‹คํ–‰ ํ๋ฆ„์ž…๋‹ˆ๋‹ค.

์†Œ์Šค์—์„œ ์‹คํ–‰๊ณผ ๋‹ค์Œ ์กฐ๋ฆฝ๊นŒ์ง€ ์ด์–ด ์“ฐ๊ธฐ

์ž‘์—…์žฅ์—์„œ assemble๋กœ ์†Œ์Šค์™€ ๋ชจ๋ธ์„ ํ™•์ธํ•˜๊ณ  ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์ €์žฅํ•œ ๊ฒฐ๊ณผ์˜ ์‹คํŒจ ์ž…๋ ฅ์€ construct --assembly๋กœ ๋‹ค์Œ ์กฐ๋ฆฝ์— ๋ฐ˜์˜ํ•ฉ๋‹ˆ๋‹ค. ํ•œ ํ™œ๋™๋ฟ ์•„๋‹ˆ๋ผ ๋ฃจํŠธ ๋ ˆ์ฝ”๋“œ๋ฅผ ์กฐ๋ฆฝํ•˜๊ณ  ๊ทธ ๊ฐ’์„ ๋ฐ›์€ ๊ณ ์ • ํ™œ๋™ยท๋ณด์กฐ ํ•จ์ˆ˜๋ฅผ ์‹คํ–‰ํ•˜๋Š” ํ๋ฆ„๋„ ์—ฐ๊ฒฐํ•ฉ๋‹ˆ๋‹ค. ์ฒ˜์Œ ์‹คํ–‰ํ•˜๊ธฐ, ์—ฐ๊ฒฐ ํ™œ๋™ ์˜ˆ์ œ.

์ •๋‹ต ์—†์ด ์‹คํ–‰๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๋ ค๋ฉด ๊ฐœ๋ฐœํŒ gooo-dev์˜ body-compose --inputs๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋‚˜์ค‘์— ๊ฐ™์€ ์ƒ์„ฑ๋ฌผ์— ๊ธฐ๋Œ€๊ฐ’์„ ์ œ๊ณตํ•ด ๊ฒ€์‚ฌํ•ฉ๋‹ˆ๋‹ค. ์ž‘์—…์žฅ์˜ assemble๋Š” ์„ ์–ธํ•œ ํ˜ธ์ถœ ๊ธฐ๋Œ€๊ฐ’์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ž…๋ ฅ๋ถ€ํ„ฐ ์‹คํ–‰ํ•˜๊ธฐ.

์ž‘์€ ๋ชจ๋ธ๊ณผ ํ•จ๊ป˜ ํ•จ์ˆ˜ ๋ฐ”๋””๋ฅผ ์กฐ๋ฆฝํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค

์›๋ณธ Gooo + ํ—ˆ์šฉ๋œ ๊ฒฝ๋กœ ๊ณ„ํš + ํ•œ๊ตญ์–ด/์˜์–ด ์˜๋„
  -> ๋ชจ๋ธ์˜ ๊ฒฝ๋กœ ์ˆœ์œ„ ๋˜๋Š” ๊ฒฐ์ •๋ก ์  ์ˆœ์„œ
  -> ํƒ€์ž…ยท๋ฒ”์œ„ ๊ฒ€์‚ฌ์™€ ๋ฐ”๋”” ์กฐ๋ฆฝ
  -> ์œ ํ•œ ์˜ˆ์‹œ ํ‰๊ฐ€์™€ ์‹คํŒจ ํ”ผ๋“œ๋ฐฑ
  -> Go ์ƒ์„ฑ
  -> ๋นŒ๋“œยท์‹คํ–‰ ๊ด€์ธก

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

์†Œ์Šคยท์กฐ๋ฆฝ ๊ณ„ํšยท๊ธฐ๋Œ€๊ฐ’์ด ํŒŒ์ผ์— ์žˆ๋‹ค๋ฉด gooo body-path-run์œผ๋กœ ์ƒ์„ฑ๊ณผ ์‹คํ–‰์„ ์ด์–ด๊ฐ‘๋‹ˆ๋‹ค. ๋ชจ๋ธ์„ ์ƒ๋žตํ•˜๋ฉด ๊ฐ™์€ ๊ณ„ํš์—์„œ ๊ฒฐ์ •๋ก ์ ์œผ๋กœ ์กฐ๋ฆฝํ•ฉ๋‹ˆ๋‹ค. ์ถœ๋ ฅ ํด๋”์˜ summary.json์—์„œ ์š”์ฒญ๋ณ„ ์ถฉ์กฑ ์ˆ˜ยท๋ถ„๋ชจ๋ฅผ ์ฝ๊ณ , run-N-generated.go์™€ run-N-runtime.json์—์„œ ์‹ค์ œ ์ฝ”๋“œ๋ฅผ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ํŒŒ์ผ ์‹คํ–‰ ์˜ˆ์ œ์™€ ๊ฒฐ๊ณผ ์ฝ๋Š” ๋ฒ•.

์ด์ „ ์ƒ์„ฑยท์‹คํ–‰ ๊ธฐ๋ก์„ ๋‹ค์Œ ์ž…๋ ฅ์œผ๋กœ ์‚ฌ์šฉํ•  ๋•Œ์—๋Š” gooo completeness-delta --before ... --after ...๋กœ ๊ฐ™์€ ์กฐ๊ฑด์˜ ์ถฉ์กฑ ์ˆ˜์™€ ๋ณ€๊ฒฝ๋œ ๊ธฐ๋Œ€๊ฐ’ยท๋‹จ์œ„ยท๋ถ„๋ชจ๋ฅผ ์ฝ์Šต๋‹ˆ๋‹ค. ์‹ค์ œ ๋ช…๋ น๊ณผ ์ฝ๋Š” ์ˆœ์„œ.

์„ ์–ธ์—์„œ Go ๊ตฌ์กฐ๋ฅผ ๋งŒ๋“ค๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค

Gooo ์„ ์–ธ
  -> ์˜๋ฏธ ๊ฒ€์‚ฌ
  -> Go ๊ตฌ์กฐ ์ƒ์„ฑ
  -> ํ—ˆ์šฉ๋œ ์Šฌ๋กฏ์—์„œ ๋กœ์ง ๊ตฌํ˜„
  -> ๋‹ค์‹œ ์ƒ์„ฑํ•˜๊ณ  ๋ณ€๊ฒฝ ๋ฒ”์œ„ ํ™•์ธ

์—…๋ฌด ์˜๋„๋ฅผ ๋ฐ”๊พธ๋ ค๋ฉด .gooo ์›๋ณธ์„ ๋ฐ”๊ฟ‰๋‹ˆ๋‹ค. ์ƒ์„ฑ๊ธฐ์˜ ๊ตฌ์กฐ๊ฐ€ ์ž˜๋ชป๋˜์—ˆ๋‹ค๋ฉด ์ƒ์„ฑ๊ธฐ ์ชฝ์„ ์ˆ˜์ •ํ•ฉ๋‹ˆ๋‹ค. ์ƒ์„ฑ๋œ ์˜์—ญ์„ ์ž„์‹œ๋กœ ๊ณ ์น˜๋ฉด ๋‹ค์Œ ์ƒ์„ฑ์—์„œ ๊ทธ ์ˆ˜์ •์˜ ๊ถŒ์œ„์™€ ๋ณด์กด ์—ฌ๋ถ€๊ฐ€ ๋ชจํ˜ธํ•ด์ง‘๋‹ˆ๋‹ค.

์ˆ˜์ž‘์—… ์Šฌ๋กฏ ๋ณด์กด์€ ์ •ํ•ด์ง„ marker์™€ ์ƒ์„ฑ ๊ณ„์•ฝ ์•ˆ์—์„œ์˜ ๋ณด์žฅ์ž…๋‹ˆ๋‹ค. marker๊ฐ€ ์†์ƒ๋˜๊ฑฐ๋‚˜ ID๊ฐ€ ์ถฉ๋Œํ•˜๋ฉด ๋ฌด์กฐ๊ฑด ๋ฎ์–ด์“ฐ๋Š” ๋Œ€์‹  ๊ฑฐ์ ˆํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ƒ์„ฑ ๊ฒฝ๊ณ„ ๊ณ„์•ฝ

์‹คํ–‰ ๊ฒฐ๊ณผ๋ฅผ ํ™•์ธํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค

๋จผ์ € ๋ฌด์—‡์ด ์‹คํ–‰๋˜์—ˆ๋Š”์ง€ ๋ฌป์Šต๋‹ˆ๋‹ค.

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

๋ฒ”์œ„ ์ด๋ฆ„๋งŒ์œผ๋กœ ์‹คํ–‰ ์„ฑ๊ณต์„ ํŒ๋‹จํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์‹ค์ œ ํ˜ธ์ถœ ์ˆ˜, ์ถœ๋ ฅ, ์‹คํŒจ ๊ธฐ๋ก, ์ž…๋ ฅ ์ •์ฒด์„ฑ์ด ํ•จ๊ป˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์„ ์–ธยท๊ฐ’ ์‹คํ–‰์˜ ๊ตฌ๋ถ„

์ž˜๋ชป๋œ ์ •์ฑ…์„ ๊ณ ์น˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค

์‹คํŒจ๋‚˜ ๋ฐ˜๋ก€ ๊ด€์ธก
  -> ์›๋ณธ์— ๊ฒฐ์†๋œ ์ˆ˜์ • ์กฐ๊ฑด
  -> Gooo ํ›„๋ณด
  -> ์‹ค์ œ ์‹คํ–‰๊ณผ ๋…๋ฆฝ ๋น„๊ต
  -> ์„ ํƒ ๋˜๋Š” ๊ฑฐ์ ˆ
  -> ๋‹ค์Œ ์‹คํ–‰์—์„œ ์„ ํƒ ๊ฒฐ๊ณผ ์‚ฌ์šฉ

ํ˜„์žฌ ๊ฐœ๋ฐœ์€ ์ด ์—ฐ๊ฒฐ์„ ์ž‘์€ ์‚ฌ๋ก€์—์„œ ๋‹ซ๋Š” ๋ฐ ์ง‘์ค‘ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ ๋‹จ๊ณ„๊ฐ€ ์กด์žฌํ•œ๋‹ค๋Š” ์‚ฌ์‹ค๋งŒ์œผ๋กœ ๋ชจ๋“  ์ •์ฑ…์ด ์ž์œจ์ ์œผ๋กœ ์ˆ˜์ •๋˜๋Š” ๊ฒƒ์€ ์•„๋‹™๋‹ˆ๋‹ค. ์–ด๋А ๋‹จ๊ณ„๊นŒ์ง€ ๋ณ‘ํ•ฉยท์‹คํ–‰๋๋Š”์ง€๋Š” ํ˜„์žฌ ์ƒํƒœ์—์„œ ๋ถ„๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

์ด๋ฏธ ๋ณ‘ํ•ฉ๋œ ์ •์ฑ… ์„ ํƒ ๊ฒฝ๋กœ์˜ ์ž…๋ ฅ ์ค€๋น„, ์‹ค์ œ ๋ช…๋ น, ๊ฑฐ์ ˆ ์‚ฌ์œ ๋Š” ์‹คํ—˜: ๊ณ ์ •๋œ ๋ชฉํ‘œ๋กœ ์ •์ฑ… ํ›„๋ณด ์„ ํƒํ•˜๊ธฐ์—์„œ ๋”ฐ๋ผ๊ฐˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ›„๋ณด์˜ ์„ ํƒ๊ณผ ๊ณต์‹ ์ •์ฑ… ์ฑ„ํƒ์€ ๋‹ค๋ฅธ ๋‹จ๊ณ„์ž…๋‹ˆ๋‹ค.

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

๊ฒฐ๊ณผ๊ฐ€ UNKNOWN์ž…๋‹ˆ๋‹ค

UNKNOWN์€ ๋‹ต์„ ํ”ผํ•˜๋Š” ๋ฌธ๊ตฌ๊ฐ€ ์•„๋‹ˆ๋ผ, ํ•„์š”ํ•œ ๊ทผ๊ฑฐ์™€ ๋‹ค์Œ ์ž‘์—…์„ ๋ณด์กดํ•˜๊ธฐ ์œ„ํ•œ ์ƒํƒœ์ž…๋‹ˆ๋‹ค. ์—ฌ์„ฏ ํ•„๋“œ ๊ณ„์•ฝ์„ ์ง€์›ํ•˜๋Š” ๊ฒฝ๋กœ์—์„œ๋Š” ๋‹ค์Œ์ฒ˜๋Ÿผ ์ฝ์Šต๋‹ˆ๋‹ค.

ํ•„๋“œ ์‚ฌ์šฉ์ž๊ฐ€ ์–ป์–ด์•ผ ํ•˜๋Š” ๋‹ต
stage ์–ด๋””์—์„œ ๋ฉˆ์ท„๋‚˜?
step ์–ด๋–ค ์ž‘์—…์„ ํ•˜๋˜ ์ค‘์ธ๊ฐ€?
reason ๋ฌด์—‡ ๋•Œ๋ฌธ์— ๊ฒฐ์ •ํ•˜์ง€ ๋ชปํ–ˆ๋‚˜?
unknown_class ๋ˆ„๋ฝยท์˜ค๋ž˜๋œ ์ž…๋ ฅยท๋ชจํ˜ธํ•จยท์˜์กด์„ฑ ์ค‘ ๋ฌด์—‡์ธ๊ฐ€?
next_operation ๋‹ค์Œ์— ์–ด๋–ค ์ž‘์—…์„ ํ•ด์•ผ ํ•˜๋‚˜?
blocked_by ์–ด๋–ค ์„ ํ–‰ ์ž…๋ ฅ์ด๋‚˜ ๊ทผ๊ฑฐ๊ฐ€ ํ•„์š”ํ•œ๊ฐ€?

์‹คํ–‰ ์ค‘์ธ CI๋ผ๋ฉด ๊ฐ™์€ ์‹คํ–‰ ID๋ฅผ ๋‹ค์‹œ ๊ด€์ธกํ•ฉ๋‹ˆ๋‹ค. ์‹œ๊ฐ„์ด ์ง€๋‚ฌ๋‹ค๋Š” ์ด์œ ๋กœ ์‹คํŒจ๋‚˜ ์„ฑ๊ณต์„ ์ถ”์ธกํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋ฐ˜๋Œ€๋กœ ์ด๋ฏธ ๋ฐœ๊ฒฌ๋œ ๋ชจ์ˆœ์€ ๋‚˜๋จธ์ง€ ์ž๋ฃŒ๊ฐ€ ์—†๋”๋ผ๋„ ๋ฐ˜๋ก€๋กœ ๋‚จ๊ฒจ์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋ชจ๋“  ์˜ค๋ž˜๋œ ๊ฒฝ๋กœ๊ฐ€ ๋™์ผํ•œ ์—ฌ์„ฏ ํ•„๋“œ๋ฅผ ์ œ๊ณตํ•œ๋‹ค๋Š” ๋ณด์žฅ์€ ์—†์Šต๋‹ˆ๋‹ค. ํ•ด๋‹น ๊ฒฐ๊ณผ ์Šคํ‚ค๋งˆ๋ฅผ ๋จผ์ € ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

์–ด๋””์— ์ ์šฉํ•ด ๋ณผ ์ˆ˜ ์žˆ๋‚˜์š”?

ํ”„๋กœ์ ํŠธ ๊ด€๋ฆฌ, ๋””์ž์ธ ์‹œ์Šคํ…œ๊ณผ ๊ตฌํ˜„์˜ ๋Œ€์‘, ์ธํ”„๋ผ ์„ ์–ธ๊ณผ ์„œ๋น„์Šค ๊ณ„์•ฝ์˜ ์—ฐ๊ฒฐ์€ ์‹คํ—˜ ๋Œ€์ƒ์œผ๋กœ ์ƒ๊ฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ณตํ†ต์ ์€ โ€œ๋Œ€์ƒ, ๊ด€๊ณ„, ๋ณ€๊ฒฝ ๊ทผ๊ฑฐโ€๊ฐ€ ์ค‘์š”ํ•˜๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ด ๋ชฉ๋ก์€ ์ œํ’ˆ ์™„์„ฑ์ด๋‚˜ ์™ธ๋ถ€ ํšจ์šฉ์˜ ์ฆ๊ฑฐ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ์ƒˆ๋กœ์šด ์ž‘์—… ํ•˜๋‚˜๋ฅผ ๊ธฐ์กด ์˜๋ฏธ ์š”์†Œ์™€ ์–ด๋Œ‘ํ„ฐ๋กœ ๋๊นŒ์ง€ ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š”์ง€๋ถ€ํ„ฐ ํ™•์ธํ•˜๋Š” ํŽธ์ด ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.


์ด์ „: ์–ธ์–ด ๋‘˜๋Ÿฌ๋ณด๊ธฐ ยท ๋ฌธ์„œ ํ™ˆ ยท ๋‹ค์Œ: ์›๋ฆฌ์™€ ๊ฒฝ๊ณ„