Task Outcomes KO - teamswyg/laya-tools GitHub Wiki

μž‘μ—… 기둝과 μš”κ΅¬μ‚¬ν•­ μΆ©μ‘± μ—¬λΆ€ ν™•μΈν•˜κΈ°

English

λΌμš°ν„°κ°€ μž‘μ€ λͺ¨λΈμ„ μΆ”μ²œν–ˆλ‹€λŠ” μ‚¬μ‹€λ§ŒμœΌλ‘œ λΉ„μš© μ ˆκ°μ΄λ‚˜ μž‘μ—… 성곡을 μ•Œ μˆ˜λŠ” μ—†μŠ΅λ‹ˆλ‹€. μ‹€μ œ μ‚¬μš©λŸ‰κ³Ό κ²°κ³Ό 파일이 μš”κ΅¬μ‚¬ν•­μ„ μΆ©μ‘±ν–ˆλŠ”μ§€λ₯Ό 각각 확인해야 ν•©λ‹ˆλ‹€. 이 λ¬Έμ„œλŠ” 이미 μžˆλŠ” μ‹€ν–‰ 기둝을 μ½λŠ” riido-taskoutcomeκ³Ό κ²°κ³Ό νŒŒμΌμ„ λ³„λ„λ‘œ κ²€μ‚¬ν•˜λŠ” riido-taskverify의 μ‚¬μš©λ²•μ„ μ„€λͺ…ν•©λ‹ˆλ‹€. 두 λ„κ΅¬λŠ” λͺ¨λΈμ„ μ‹€ν–‰ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. Codex 연동도 선택 μ‚¬ν•­μž…λ‹ˆλ‹€.

ν˜„μž¬ 곡개 μž‘μ—… ν›„λ³΄λŠ” 8κ°œΒ·μ„Έ μ½”λ“œ κ°€μ‘±Β·ν•œ μ €μž₯μ†Œμž…λ‹ˆλ‹€. μ‹€μ œ μ‹œλ„ν•œ λˆ„μ  λ²”μœ„λŠ” μ„œλ‘œ λ‹€λ₯Έ μš”μ²­ 7κ°œΒ·λ‹€μ„― μ½”λ“œ κ°€μ‘±Β·μ„Έ μ €μž₯μ†Œ, 직접 μ†Œμœ ν•œ 기둝 20κ±΄μž…λ‹ˆλ‹€. μ‹€ν—˜ 55λŠ” 기쑴에 κ²€μ‚¬λ§Œ μ€€λΉ„ν•œ μ™ΈλΆ€ 두 논리 μš”μ²­μ„ λͺ…ν™•ν•œ v2 쑰건으둜 처음 μ‹€ν–‰ν–ˆμŠ΅λ‹ˆλ‹€. μ„œμˆ˜λŠ” Sol6/Luna μš”μ²­ λͺ¨λ‘ 수용됐고 UUIDλŠ” Sol6 μš”μ²­λ§Œ μˆ˜μš©λμŠ΅λ‹ˆλ‹€. λ„€ 기둝 λͺ¨λ‘ μ’…λ£ŒΒ·μ „μ²΄ μ‚¬μš©λŸ‰Β·μ˜ˆμ‚° 영수증·인증 정리λ₯Ό ν™•μΈν–ˆμœΌλ©° μƒˆ ν•™μŠ΅μ΄λ‚˜ μ΅œμ’… 적격은 μ—†μŠ΅λ‹ˆλ‹€. 버전 μΆ”κ°€λŠ” 검사 registry의 μƒˆ 논리 μš”μ²­μ„ λ§Œλ“€μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. μ‹€ν—˜ 53은 ν‚€μ›Œλ“œ 보호 μš”μ²­ ν•˜λ‚˜λ₯Ό λ„€ 번 λ°˜λ³΅ν–ˆκ³ , μ‹€ν—˜ 54λŠ” μƒˆ νŒŒμ„œ μš”μ²­ ν•˜λ‚˜λ₯Ό Sol6/Luna low둜 각각 두 번 μ‹€ν–‰ν–ˆμŠ΅λ‹ˆλ‹€. 54의 λ„€ μ‹œλ„ λͺ¨λ‘ 독립 검사 75κ°œΒ·μ •μƒ μ’…λ£ŒΒ·μ™„μ „ν•œ 전체 κΈ°λ³Έ μ‚¬μš©λŸ‰μ„ ν™•μΈν–ˆμŠ΅λ‹ˆλ‹€. λ„€ 반볡과 75개 κ²€μ‚¬λŠ” 고유 μš”μ²­ ν•˜λ‚˜μ˜ 관츑이며 μƒˆ μš”μ²­ μˆ˜μ— λ”ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. 첫 μˆ˜μš©Β·μ™„λ£Œ ν›„λ³΄μ˜ νŒŒμ„œ 경계 처리λ₯Ό runtime에 λ°˜μ˜ν•˜κ³  κ³ μ • 독립 κ³„μ•½μœΌλ‘œ νšŒκ·€ κ²€μ‚¬ν–ˆμŠ΅λ‹ˆλ‹€.

51의 μ •ν™•ν•œ 주석 κ±°μ ˆΒ·ν”„λ‘œν•„ 지원 였λ₯˜μ™€ 52의 μ—¬μ„― 후보 μˆ˜μš©Β·λ‹€μ„― μ‹€ν–‰ μ™„λ£ŒΒ· ν•œ μ‹œκ°„ 초과/μ‚¬μš©λŸ‰ 미확정은 역사적 원문 기둝으둜 λ³΄μ‘΄ν•©λ‹ˆλ‹€. 기둝 μˆ˜Β·ν›„λ³΄ 수용· μ‹€ν–‰ μ™„λ£ŒλŠ” λ‹€λ₯Έ μˆ˜μΉ˜μž…λ‹ˆλ‹€. κ³΅κΈ‰μžκ°€ ν™•μΈν•œ μ‹€μ œ λͺ¨λΈκ³Ό κΈˆμ•‘Β·κ΅¬λ… μž”λŸ‰μ€ λ―Έν™•μ •μž…λ‹ˆλ‹€. 이 개발 사둀듀은 ν˜„μž¬ ν•™μŠ΅ 라벨과 finalμ—μ„œ μ œμ™Έν•©λ‹ˆλ‹€.

νŒŒμ„œ taskoutcome-event-key-boundsμ—λŠ” 이제 54의 μ‹€μ œ λͺ¨λΈ μ‹œλ„ λ„€ 건이 μžˆμŠ΅λ‹ˆλ‹€. 곡개 Go μ›μ²œ μ‘°μ‚¬μ˜ 120개·8μ €μž₯μ†ŒΒ·μ‹€ν–‰ 적격 0κ°œλŠ” 53 μ‹œμ μ˜ 역사적 snapshot으둜 κ·ΈλŒ€λ‘œ λ³΄μ‘΄ν•©λ‹ˆλ‹€. 54μ—μ„œ 그쀑 μ™ΈλΆ€ 두 μš”μ²­μ˜ 독립 계약을 λ‘œμ»¬μ—μ„œ μ€€λΉ„ν–ˆμ§€λ§Œ μ™ΈλΆ€ λͺ¨λΈ μ‹€ν–‰Β· ν•™μŠ΅ 라벨·final 적격은 λ‹Ήμ‹œ 0κ°œμ˜€μŠ΅λ‹ˆλ‹€. 55의 μ‹€μ œ μ™ΈλΆ€ μ‹€ν–‰ λ„€ 기둝은 μœ„ λˆ„μ μ— ν¬ν•¨ν•˜λ©° ν•™μŠ΅ 라벨·final 적격은 계속 0κ°œμž…λ‹ˆλ‹€. 컴파일된 검사 μž‘μ—… 7개·3개 μ €μž₯μ†ŒλŠ” 둜컬 후보 8개의 λͺ©λ‘κ³Ό λ‹€λ₯Έ λ²”μœ„μž…λ‹ˆλ‹€. 직접 μž‘μ„±ν•œ μž…λ ₯Β·μ •λ‹΅ λŒ€μ‘°κ΅°Β·μ˜€λ‹΅ κ²€μ‚¬λŠ” λͺ¨λΈ κ²°κ³Όλ‚˜ μ£Όμž₯ μ˜μ—­λ³„ 2,400개 μ΅œμ’… 평가λ₯Ό λŒ€μ‹ ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

κΈ°μ‘΄ 기둝 μ§‘κ³„ν•˜κΈ°

μ €μž₯μ†Œ λ£¨νŠΈμ—μ„œ Go λ°”μ΄λ„ˆλ¦¬λ₯Ό λ§Œλ“­λ‹ˆλ‹€. λŸ°νƒ€μž„μ— Python은 ν•„μš”ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

mkdir -p .cache/bin
go build -trimpath -o .cache/bin/riido-taskoutcome ./cmd/riido-taskoutcome
go build -trimpath -o .cache/bin/riido-taskverify ./cmd/riido-taskverify

λ¨Όμ € 곡개된 직접 μž‘μ„± 예제둜 좜λ ₯ ν˜•μ‹μ„ 확인할 수 μžˆμŠ΅λ‹ˆλ‹€.

.cache/bin/riido-taskoutcome --input examples/task-outcomes/complete-authored.jsonl
.cache/bin/riido-taskoutcome --input examples/task-outcomes/partial-authored.jsonl
직접 μž‘μ„±ν•œ μž…λ ₯ κ΄€μΈ‘ μž…λ ₯ κ΄€μΈ‘ μΊμ‹œ μž…λ ₯ κ΄€μΈ‘ 좜λ ₯ 전체 μ‚¬μš©λŸ‰
complete-authored.jsonl 250 110 50 μž…λ ₯Β·μΊμ‹œΒ·μΆœλ ₯ 합계가 μ•Œλ €μ Έ 있음
partial-authored.jsonl 100 λ―Έν™•μ • 20 두 번째 turn μ‹€νŒ¨λ‘œ λ―Έν™•μ •

첫 μ˜ˆμ œμ—λŠ” μ™„λ£Œλœ turn이 두 개 μžˆμŠ΅λ‹ˆλ‹€. reasoning 좜λ ₯은 ν•œ turnμ—μ„œλ§Œ 5κ°€ κ΄€μΈ‘λ˜μ–΄, κ΄€μΈ‘ ν•©κ³„λŠ” 5이고 전체 reasoning ν•©κ³„λŠ” λ―Έν™•μ •μž…λ‹ˆλ‹€. 선택 ν•„λ“œμΈ reasoning의 λˆ„λ½μ€ μ•Œλ €μ§„ μž…λ ₯Β·μΊμ‹œΒ·μΆœλ ₯ 합계λ₯Ό μ§€μš°μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

μΊμ‹œ μž…λ ₯ 110은 μž…λ ₯ 250에 이미 ν¬ν•¨λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€. reasoning 좜λ ₯도 좜λ ₯에 ν¬ν•¨λ©λ‹ˆλ‹€. 이듀을 λ‹€μ‹œ λ”ν•˜μ§€ μ•ŠμœΌλ©°, μΊμ‹œλ₯Ό λΊ€ 값을 청ꡬ 토큰이라고 ν‘œμ‹œν•˜μ§€λ„ μ•ŠμŠ΅λ‹ˆλ‹€. 토큰을 μš”κΈˆΒ·κ΅¬λ… μ‚¬μš©λŸ‰Β·λ‚¨μ€ μ‚¬μš©λŸ‰μœΌλ‘œ ν™˜μ‚°ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

μ‹€μ œ 기둝은 곡개 디렉터리 λŒ€μ‹  둜컬 λΉ„κ³΅κ°œ μœ„μΉ˜μ— λ³΄κ΄€ν•©λ‹ˆλ‹€. λ‹€μŒ κ²½λ‘œλŠ” μ‚¬μš©λ²•μ„ μœ„ν•œ μ˜ˆμ‹œμž…λ‹ˆλ‹€.

.cache/bin/riido-taskoutcome --input .cache/private-task-trace.jsonl
.cache/bin/riido-taskoutcome --input - < .cache/private-task-trace.jsonl

μ„ νƒμ μœΌλ‘œ μš”μ²­ν–ˆλ˜ λͺ¨λΈκ³Ό μž‘μ—…μ˜ 짧은 곡개 μ‹λ³„μžλ₯Ό 뢙일 수 μžˆμŠ΅λ‹ˆλ‹€.

.cache/bin/riido-taskoutcome \
  --input examples/task-outcomes/complete-authored.jsonl \
  --task-label authored-example \
  --requested-model example-model \
  --requested-reasoning low

이 μ‹λ³„μžλŠ” ν˜ΈμΆœμžκ°€ μ œκ³΅ν•œ μš”μ²­κ°’μž…λ‹ˆλ‹€. --requested-model은 μ‹€μ œ μ‚¬μš©λœ λͺ¨λΈμ˜ 증거가 μ•„λ‹ˆλ©°, observed_model은 unknown으둜 λ‚¨μŠ΅λ‹ˆλ‹€. μš”μ²­κ°’μ— ν”„λ‘¬ν”„νŠΈΒ·κ°œμΈμ •λ³΄Β·κ²½λ‘œΒ·ν† ν°μ„ λ„£μ§€ λ§ˆμ„Έμš”. 집계 결과도 μ‹€μ œ λΉ„κ³΅κ°œ μž‘μ—…μ— μ‚¬μš©ν–ˆλ‹€λ©΄ 곡개 전에 λ³„λ„λ‘œ κ²€ν† ν•΄μ•Ό ν•©λ‹ˆλ‹€.

집계 κ²°κ³Όλ₯Ό 읽을 λ•Œ ꡬ뢄할 것

  • turn.completedλŠ” turn이 λλ‚¬λ‹€λŠ” κΈ°λ‘μž…λ‹ˆλ‹€. μ½”λ“œκ°€ λ§žκ±°λ‚˜ μž‘μ—…μ΄ μ™„λ£Œλλ‹€λŠ” νŒμ •μ€ μ•„λ‹™λ‹ˆλ‹€.
  • usage.*.observed_total은 κΈ°λ‘μ—μ„œ μ‹€μ œλ‘œ 읽은 ν•©κ³„μž…λ‹ˆλ‹€. total은 전체 κ΅¬κ°„μ˜ ν•΄λ‹Ή ν•„λ“œκ°€ μ•Œλ €μ Έ μžˆμ„ λ•Œλ§Œ 숫자둜 ν‘œμ‹œν•©λ‹ˆλ‹€.
  • null λ˜λŠ” unknown은 λ―Έν™•μ •μž…λ‹ˆλ‹€. κ΄€μΈ‘ν•œ 0κ³Ό λ‹€λ¦…λ‹ˆλ‹€. μΊμ‹œ ν•„λ“œλ§Œ μ—†μœΌλ©΄ μž…λ ₯·좜λ ₯ 관츑값은 λ³΄μ‘΄λ©λ‹ˆλ‹€.
  • usage_completeλŠ” λͺ¨λ“  turn의 μž…λ ₯Β·μΊμ‹œΒ·μΆœλ ₯κ³Ό κΉ¨λ—ν•œ μ’…λ£Œλ₯Ό ν™•μΈν–ˆμ„ λ•Œλ§Œ μ°Έμž…λ‹ˆλ‹€. μ‹€νŒ¨Β·μ΄ˆκΈ° 였λ₯˜Β·μ—΄λ¦° turnΒ·μ•Œ 수 μ—†λŠ” control μ΄λ²€νŠΈκ°€ 있으면 λΆ€λΆ„ 관츑값을 λ³΄μ‘΄ν•˜λ˜ 전체 합계λ₯Ό ν™•μ •ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. μ΄λŠ” 제곡된 기둝의 λ²”μœ„μ΄λ©°, λ‹€λ₯Έ μ‹œλ„λ‚˜ 기둝 파일이 λˆ„λ½λ˜μ§€ μ•Šμ•˜λ‹€λŠ” μ¦κ±°λŠ” μ•„λ‹™λ‹ˆλ‹€.
  • μ‹€μ œ λͺ¨λΈ, ν”„λ‘œμ„ΈμŠ€ μ’…λ£Œ μƒνƒœ, μ‹€ν–‰ μ‹œκ°„, 기둝의 생산 좜처, task_acceptanceλŠ” 이 μ§‘κ³„κΈ°μ—μ„œ unknownμž…λ‹ˆλ‹€.
  • startup_error_itemsλŠ” thread.started λ’€ 첫 turn.started 전에 λ‚˜μ˜¨ item.completed의 error ν•­λͺ© μˆ˜μž…λ‹ˆλ‹€. 이 쒁은 초기 진단 ν˜•μ‹μ˜ 개수만 κΈ°λ‘ν•˜κ³  원문·IDλŠ” λ²„λ¦½λ‹ˆλ‹€. 였λ₯˜κ°€ 있으면 이후 turn이 λλ‚˜λ„ 전체 μ‚¬μš©λŸ‰μ€ λ―Έν™•μ •μž…λ‹ˆλ‹€. 이 ν•„λ“œ μžμ²΄λŠ” ν”„λ‘œν•„ κ°€μš©μ„± 였λ₯˜μ˜ 원인을 λΆ„λ₯˜ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

μž…λ ₯ SHA-256은 곡백과 κ°œν–‰κΉŒμ§€ ν¬ν•¨ν•œ μ •ν™•ν•œ bytesλ₯Ό μ—°κ²°ν•©λ‹ˆλ‹€. λˆ„κ°€ μž‘μ„±ν–ˆλŠ”μ§€, μ‹€μ œ λͺ¨λΈμ΄ μ‹€ν–‰λλŠ”μ§€ λ˜λŠ” μž‘μ—…μ„ μ™„λ£Œν–ˆλŠ”μ§€λŠ” 증λͺ…ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. λ³Έ 집계기가 λͺ¨λΈμ„ μ‹€ν–‰ν•˜κ±°λ‚˜ 결과의 생산 좜처λ₯Ό κ²€μ¦ν•˜μ§€λŠ” μ•ŠμŠ΅λ‹ˆλ‹€. κ·Έ 연결은 λ³„λ„μ˜ 선택적 μ‹€ν–‰κΈ°κ°€ μ œκ³΅ν•©λ‹ˆλ‹€.

초기 였λ₯˜ 처리 보완은 μ‹€ν—˜ 51의 두 번째 원본 μ‹€ν–‰ 기둝을 λ°”κΎΈμ§€ μ•ŠμŠ΅λ‹ˆλ‹€. κ·Έ 기둝의 summary_status: parse_failedλŠ” λ‹Ήμ‹œ κ³ μ •ν•œ μ§‘κ³„κΈ°μ˜ μ‹€μ œ 결과둜 μœ μ§€ν•©λ‹ˆλ‹€. μƒˆ μ§‘κ³„κΈ°λ‘œ μž¬ν•΄μ„ν•œλ‹€λ©΄ 원본을 μ°Έμ‘°ν•˜λŠ” 별도 λ²„μ „μ˜ 기둝으둜 남겨야 ν•˜λ©°, μ—†λ˜ μ‚¬μš©λŸ‰μ΄λ‚˜ μž‘μ—… 성곡을 λ§Œλ“€μ–΄λ‚΄μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

μ§‘κ³„κΈ°λŠ” λ©”μ‹œμ§€Β·reasoning 원문·도ꡬ λͺ…λ ΉΒ·νŒŒμΌ 본문·둜컬 경둜·thread/item IDλ₯Ό 좜λ ₯에 λ³΄κ΄€ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. κΈ°λ³Έ ν•œλ„λŠ” 전체 64 MiB, ν•œ 쀄 1 MiB, 이벀트 100,000개, turn 4,096κ°œμž…λ‹ˆλ‹€. 잘λͺ»λœ JSON·쀑볡 μ£Όμš” ν‚€Β·μˆ˜μΉ˜ μ˜€λ²„ν”Œλ‘œΒ·ν•œλ„ μ΄ˆκ³ΌλŠ” 원문을 ν¬ν•¨ν•˜μ§€ μ•ŠλŠ” 였λ₯˜ μ½”λ“œλ‘œ κ±°μ ˆν•©λ‹ˆλ‹€.

κ²°κ³Ό νŒŒμΌμ„ λ³„λ„λ‘œ κ²€μ¦ν•˜κΈ°

μ•„λž˜ λ‹€μ„― κ³„μ•½μ—λŠ” μ‹€μ œ λͺ¨λΈ μ‹œλ„κ°€ μžˆμŠ΅λ‹ˆλ‹€. riido-taskverifyλŠ” ν•΄λ‹Ή μ •ν•΄μ§„ 파일 λ²”μœ„λ₯Ό κ²€μ‚¬ν•©λ‹ˆλ‹€. νŒŒμ„œμ˜ 버전별 독립 κ²€μ‚¬λŠ” 54의 λ„€ μ‹œλ„μ— μ‚¬μš©λκ³  κΈ°μ‘΄ λͺ…세와 기둝은 λ³΄μ‘΄ν•©λ‹ˆλ‹€. μ•„λž˜ ν‘œλŠ” 둜컬 λ‹€μ„― κ³„μ•½μ˜ λ²”μœ„μž…λ‹ˆλ‹€. 별도 μ™ΈλΆ€ 두 논리 μš”μ²­μ€ 55의 v2 μ‹€μ œ λΉ„κ΅μ—μ„œ λ„€ μ‹œλ„λ₯Ό κΈ°λ‘ν–ˆμŠ΅λ‹ˆλ‹€. λ¨Όμ € λͺ…μ„Έλ₯Ό μ½μŠ΅λ‹ˆλ‹€. 이 λͺ…령은 κ²€μ‚¬λ‚˜ λͺ¨λΈ μ‹€ν–‰ 없이 JSON λͺ…μ„Έλ₯Ό 좜λ ₯ν•©λ‹ˆλ‹€.

.cache/bin/riido-taskverify --task catalog-min-context --spec
.cache/bin/riido-taskverify --task repo-keyword-language-guard --spec
μž‘μ—… ID κ²€μ‚¬ν•˜λŠ” μš”κ΅¬μ‚¬ν•­ 파일 λ²”μœ„μ™€ 검사 방식
comment-budget-period μ˜ˆμ‚° κΈ°κ°„ μ„€λͺ… 주석을 λͺ…μ„Έ λ¬Έμž₯으둜 μ •ν™•νžˆ ꡐ체 κ³ μ • go.mod, catalog μ†ŒμŠ€Β·ν…ŒμŠ€νŠΈ 3개 파일. μ •ν™•ν•œ λ³€κ²½Β·gofmt와 κ³ μ • ν…ŒμŠ€νŠΈ μ‹€ν–‰
comment-preview-authority μ €μž₯μ†Œ μΆ”μ²œμ΄ μ‹€ν–‰ μŠΉμΈμ„ λœ»ν•˜μ§€ μ•ŠλŠ”λ‹€λŠ” μ£Όμ„μœΌλ‘œ μ •ν™•νžˆ ꡐ체 pkg/reporouter/router.go 1개 파일. μ •ν™•ν•œ λ³€κ²½Β·gofmt 정적 검사
catalog-min-context 선택적 MinContext ν•„λ“œ, 음수 거절, μ΅œμ†Œ μ»¨ν…μŠ€νŠΈ 쑰건과 κΈ°μ‘΄ λ™μž‘ 보쑴 catalogΒ·plannerΒ·switchpolicy와 예제λ₯Ό ν¬ν•¨ν•œ κ³ μ • 9개 파일. 독립 경계값 검사와 κ³ μ • catalogΒ·planner ν…ŒμŠ€νŠΈ μ‹€ν–‰
repo-keyword-language-guard μ„ νƒλœ ν›„λ³΄μ˜ ν‚€μ›Œλ“œ 쀑 ν•˜λ‚˜λΌλ„ 비라틴 κΈ€μžκ°€ 있으면 Judgeλ₯Ό λΆ€λ₯΄μ§€ μ•Šκ³  κΈ°μ‘΄ 후보 결과와 보λ₯˜ 이유λ₯Ό 보쑴 별도 κΈ°μ€€μ˜ κ³ μ • go.mod, reporouter μ†ŒμŠ€Β·ν…ŒμŠ€νŠΈ 3개 파일. 독립 계약과 κ³ μ • ν…ŒμŠ€νŠΈ μ‹€ν–‰; 53의 같은 μš”μ²­ λ„€ μ‹œλ„ λͺ¨λ‘ 수용
taskoutcome-event-key-bounds JSONL event μ΅œμƒμœ„ ν‚€μ˜ 쀑볡·64개 개수·128 UTF-8 byte 길이 μ œν•œ, κΈ°μ‘΄ lifecycleΒ·μ‚¬μš©λŸ‰Β·λΆˆνˆ¬λͺ… item·였λ₯˜ 비식별 처리 보쑴 별도 κΈ°μ€€μ˜ go.mod, taskoutcome μ†ŒμŠ€Β·ν…ŒμŠ€νŠΈ 3파일과 LICENSE/NOTICE. 독립 계약·고정 ν…ŒμŠ€νŠΈ 75개; 54의 같은 μš”μ²­ λ„€ μ‹œλ„ λͺ¨λ‘ 수용

파일 λ²”μœ„λŠ” λͺ…μ„Έμ˜ μž‘μ—…μ„ κ²€μ‚¬ν•˜κΈ° μœ„ν•œ closureμž…λ‹ˆλ‹€. λ²”μœ„ λ°– νŒŒμΌμ€ 미검사이며, acceptedκ°€ μ €μž₯μ†Œ 전체·λͺ¨λ“  μš”κ΅¬μ‚¬ν•­μ˜ μ•ˆμ „μ„±μ„ λœ»ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. λ³€κ²½ μ—†λŠ” baseλŠ” μš”κ΅¬ν•œ μž‘μ—…μ„ μˆ˜ν–‰ν•œ ν›„λ³΄λ‘œ μΈμ •ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. 후보가 직접 μž‘μ„±ν•œ ν…ŒμŠ€νŠΈμ˜ 성곡 μ£Όμž₯도 승인 근거둜 μ‚¬μš©ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

μ›λž˜ μ„Έ μž‘μ—…μ˜ 곡개 κΈ°μ€€ νŒŒμΌμ€ internal/taskverify/testdata/base에 μžˆμŠ΅λ‹ˆλ‹€. κΈ°μ€€ revision은 6b2c1bdfd38bea5a9a2c11433ffcfcb94c4143a3이며, κ²€μ¦κΈ°λŠ” ν•„μš”ν•œ 각 파일의 SHA-256을 ν™•μΈν•©λ‹ˆλ‹€. μƒˆ ν‚€μ›Œλ“œ μž‘μ—…μ€ 곡개 리비전 146b02b9c37e6d90a11386050ccfdffc036c113e의 별도 κΈ°μ€€ internal/taskverify/testdata/repo-keyword-language-guard-v1을 μ‚¬μš©ν•©λ‹ˆλ‹€. 버전이 뢙은 μž‘μ—… μ •μ˜λŠ” μ†ŒμŠ€Β·λͺ…세·독립 계약을 λ¬Άκ³  LICENSEΒ·NOTICE도 λ³„λ„λ‘œ κ³ μ •ν•©λ‹ˆλ‹€. κΈ°μ‘΄ μ„Έ μž‘μ—…μ˜ λͺ…세와 ν•΄μ‹œλ₯Ό μƒˆ μž‘μ—…μ— 맞좰 λ°”κΎΈμ§€ μ•ŠμŠ΅λ‹ˆλ‹€. 후보 λ””λ ‰ν„°λ¦¬λŠ” μ„ νƒν•œ μž‘μ—…μ˜ 같은 κΈ°μ€€μ—μ„œ μž‘μ—…μ„ λ°˜μ˜ν•œ νŒŒμΌμ„ μ€€λΉ„ν•΄μ•Ό ν•©λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄ λ‹€μŒ λͺ…령은 이미 μ€€λΉ„ν•œ 후보λ₯Ό κ²€μ‚¬ν•©λ‹ˆλ‹€.

.cache/bin/riido-taskverify \
  --task catalog-min-context \
  --base-dir internal/taskverify/testdata/base \
  --candidate-dir .cache/task-candidates/catalog-min-context \
  --go-root /absolute/trusted/go-toolchain

μœ„ 후보 디렉터리λ₯Ό λ§Œλ“€μ–΄ μ£Όκ±°λ‚˜ μž‘μ—…μ„ λŒ€μ‹  μˆ˜ν–‰ν•˜λŠ” λͺ…령은 μ•„λ‹™λ‹ˆλ‹€. λ‹€λ₯Έ 두 μž‘μ—…λ„ --task와 후보 디렉터리λ₯Ό ν•΄λ‹Ή μž‘μ—…μœΌλ‘œ λ°”κΎΈμ–΄ μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€. --helpμ—μ„œ κ°„λ‹¨ν•œ μ‚¬μš©λ²•μ„ 확인할 수 μžˆμŠ΅λ‹ˆλ‹€. μƒˆ ν‚€μ›Œλ“œ μž‘μ—…μ—λŠ” --task repo-keyword-language-guard와 ν•¨κ»˜ μœ„μ˜ 별도 --base-dir 및 κ·Έ κΈ°μ€€μ—μ„œ μ€€λΉ„ν•œ 후보λ₯Ό μ‚¬μš©ν•΄μ•Ό ν•©λ‹ˆλ‹€. --spec은 ν˜„μž¬ μž‘μ—…μ˜ κΈ°μ€€ 리비전과 고정값을 ν™•μΈν•˜λŠ” 방법이며 λͺ¨λΈμ„ μ‹€ν–‰ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. --go-rootμ—λŠ” bin/goλ₯Ό ν¬ν•¨ν•œ μ‹ λ’°ν•  Go 1.27.1 μ„€μΉ˜μ˜ μ ˆλŒ€ 경둜λ₯Ό μ§€μ •ν•©λ‹ˆλ‹€. -trimpath둜 λ§Œλ“  λ°”μ΄λ„ˆλ¦¬μ— κΈ°λ³Έ Go μ„€μΉ˜ κ²½λ‘œκ°€ μ—†μœΌλ©΄, λ™μž‘ 검사가 ν•„μš”ν•œ μž‘μ—…μ—λŠ” 이 μ˜΅μ…˜μ΄ ν•„μš”ν•©λ‹ˆλ‹€. μ„€μΉ˜ κ²½λ‘œλ‚˜ 격리된 Go 싀행을 확인할 수 μ—†μœΌλ©΄ μž‘μ—… μ‹€νŒ¨λ‘œ λ‹¨μ •ν•˜μ§€ μ•Šκ³  verifier_unknown으둜 λ‚¨κΉλ‹ˆλ‹€. 후보 μ½”λ“œλ₯Ό μ‹€ν–‰ν•˜μ§€ μ•ŠλŠ” 주석 정적 κ²€μ‚¬μ™€λŠ” κ΅¬λΆ„λ©λ‹ˆλ‹€.

μœ„μ˜ μ‹€μ œ μ‹œλ„ μž‘μ—… λ‹€μ„― 개 쀑 λ™μž‘ ν…ŒμŠ€νŠΈκ°€ ν•„μš”ν•œ λ„€ μž‘μ—…μ€ macOS의 sandbox-exec 격리λ₯Ό μ‚¬μš©ν•  수 μžˆμ„ λ•Œλ§Œ ν…ŒμŠ€νŠΈν•©λ‹ˆλ‹€. μ •ν•΄μ§„ 곡개 μ†ŒμŠ€μ™€ κ³ μ • ν…ŒμŠ€νŠΈλ₯Ό μž„μ‹œ 디렉터리에 λ„£κ³ , λ„€νŠΈμ›Œν¬μ™€ 호슀트의 인증 ν™˜κ²½μ„ μ‚¬μš©ν•˜μ§€ μ•Šλ„λ‘ κ΅¬μ„±ν•©λ‹ˆλ‹€. 격리λ₯Ό μ‚¬μš©ν•  수 μ—†κ±°λ‚˜ 전체 κ²€μ¦μ˜ μ‹œκ°„ μ œν•œΒ·μ€‘λ‹¨Β·μΆœλ ₯ ν•œλ„λ‘œ 검증을 λ§ˆμΉ˜μ§€ λͺ»ν•˜λ©΄ verifier_unknownμž…λ‹ˆλ‹€. μ‹€μ œ 독립 ν…ŒμŠ€νŠΈμ˜ μš”κ΅¬μ‚¬ν•­ μ‹€νŒ¨λŠ” 후보 거절둜 μ²˜λ¦¬ν•©λ‹ˆλ‹€. ν˜„μž¬ λ‹€λ₯Έ OSμ—μ„œλŠ” 이 λ„€ μž‘μ—…μ˜ λ™μž‘ 검증이 λ―Έν™•μ •μž…λ‹ˆλ‹€. comment-preview-authorityλŠ” μ½”λ“œλ₯Ό μ‹€ν–‰ν•˜μ§€ μ•ŠλŠ” 정적 검사라 이 μ œν•œκ³Ό κ΅¬λΆ„λ©λ‹ˆλ‹€. 이 λ„κ΅¬λŠ” μž„μ˜μ˜ μ €μž₯μ†Œλ‚˜ μž„μ˜μ˜ μ½”λ“œ 싀행을 μŠΉμΈν•˜λŠ” λ²”μš© λ³΄μ•ˆ 검증기가 μ•„λ‹™λ‹ˆλ‹€.

검증 JSONμ—λŠ” μž‘μ—… λͺ…μ„Έ, base, 후보 파일의 hash와 검사 κ²°κ³Όκ°€ ν¬ν•¨λ©λ‹ˆλ‹€. independent_testsλŠ” ν†΅κ³Όν•œ Go ν…ŒμŠ€νŠΈΒ·ν•˜μœ„ ν…ŒμŠ€νŠΈ 이벀트 수이며, λ…λ¦½λœ μž‘μ—… μš”μ²­μ˜ ν‘œλ³Έ μˆ˜κ°€ μ•„λ‹™λ‹ˆλ‹€. accepted: false만 보고 μ‹€νŒ¨λ₯Ό λ‹¨μ •ν•˜μ§€ 말고 status와 각 검사 μ½”λ“œλ₯Ό ν•¨κ»˜ 읽어야 ν•©λ‹ˆλ‹€. verifier_unknown은 검증 ν™˜κ²½μ˜ 미확정을 λœ»ν•  수 μžˆμŠ΅λ‹ˆλ‹€. μ§€μ›ν•˜λŠ” 후보 μ½”λ“œ ꡬ쑰λ₯Ό λ²—μ–΄λ‚˜λŠ” κ²½μš°λ„ unsupported_candidate_shape둜 검증 미확정을 ν‘œμ‹œν•©λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄ ν—ˆμš©ν•œ κΈ°λ³Έ import λ²”μœ„λ₯Ό λ„˜μ–΄μ„  κ΅¬ν˜„μ€ 이 쒁은 κ²€μ¦κΈ°μ˜ λ²”μœ„ 밖일 수 있으며, κ·Έ 자체둜 κ΅¬ν˜„μ΄ μš”κ΅¬μ‚¬ν•­μ„ μΆ©μ‘±ν•˜μ§€ λͺ»ν•œλ‹€λŠ” νŒμ •μ€ μ•„λ‹™λ‹ˆλ‹€.

μƒˆ ν‚€μ›Œλ“œ μž‘μ—…μ€ import λ³€κ²½Β·init ν•¨μˆ˜Β·μ»΄νŒŒμΌλŸ¬ μ§€μ‹œλ¬Έλ„ 지원 λ²”μœ„ λ°–μœΌλ‘œ μ²˜λ¦¬ν•©λ‹ˆλ‹€. 후보가 μž‘μ„±ν•œ ν…ŒμŠ€νŠΈ λŒ€μ‹  κ³ μ •ν•œ 독립 κ³„μ•½μ˜ μ§€μ • ν…ŒμŠ€νŠΈλ“€μ΄ μ •ν™•ν•œ νŒ¨ν‚€μ§€μ—μ„œ μ‹€μ œ ν†΅κ³Όν–ˆλŠ”μ§€ ν™•μΈν•©λ‹ˆλ‹€. μ†ŒμŠ€ 수용 λ²”μœ„μ™€ LICENSEΒ·NOTICE의 배치 ν•΄μ‹œλ„ κ΅¬λΆ„ν•˜λ©°, 이것이 ν›„λ³΄μ˜ λ²”μœ„ λ°– νŒŒμΌκΉŒμ§€ κ²€μ‚¬ν–ˆλ‹€λŠ” λœ»μ€ μ•„λ‹™λ‹ˆλ‹€.

λͺ…λ Ή μ’…λ£Œ μ½”λ“œ 뜻
riido-taskoutcome 0 집계 λ˜λŠ” 도움말 좜λ ₯ 성곡. μž‘μ—… 성곡을 λœ»ν•˜μ§€ μ•ŠμŒ
riido-taskoutcome 1 μž…λ ₯·메타데이터 κ²€μ¦Β·νŒŒμ‹±Β·ν•œλ„Β·μΆœλ ₯ 였λ₯˜
riido-taskoutcome 2 μ•Œ 수 μ—†λŠ” μ˜΅μ…˜ λ“± λͺ…λ Ή 인자 문법 였λ₯˜
riido-taskverify 검증 μ‹€ν–‰ 0 μ •ν•΄μ§„ closure의 μš”κ΅¬μ‚¬ν•­ μΆ©μ‘±
riido-taskverify 검증 μ‹€ν–‰ 1 후보 거절
riido-taskverify 검증 μ‹€ν–‰ 2 잘λͺ»λœ μΈμžΒ·κΈ°μ€€ 파일·좜λ ₯ λ“± 호좜 였λ₯˜
riido-taskverify 검증 μ‹€ν–‰ 3 격리 λ˜λŠ” λ™μž‘ 검증 λ―Έν™•μ •
riido-taskverify --spec λ˜λŠ” --help 0 λͺ…μ„Έ λ˜λŠ” 도움말 좜λ ₯ 성곡. 후보 검증 κ²°κ³Όκ°€ μ•„λ‹˜

μ—μ΄μ „νŠΈλŠ” JSON ν•„λ“œμ™€ μ’…λ£Œ μ½”λ“œλ₯Ό ν•¨κ»˜ 읽어야 ν•©λ‹ˆλ‹€. νŒŒμ‹±μ΄ μ„±κ³΅ν–ˆλ‹€λŠ” 이유둜 μž‘μ—… μ™„λ£Œλ₯Ό κΈ°λ‘ν•˜κ±°λ‚˜, --spec의 μ’…λ£Œ μ½”λ“œλ‘œ 후보λ₯Ό μŠΉμΈν•˜μ§€ λ§ˆμ„Έμš”.

μ‹€μ œ μ‹€ν–‰κ³Ό 역사적 예제λ₯Ό κ΅¬λΆ„ν•˜κΈ°

μ‹€ν—˜ 50은 μ‹€ν–‰κΈ° νŒ¨ν‚€μ§• 문제둜 μ½”λ”© λͺ¨λΈ λ³Έ μ‹€ν–‰ 전에 μ€‘λ‹¨ν–ˆμŠ΅λ‹ˆλ‹€. μ‹€ν—˜ 51은 ν•œ 주석 μž‘μ—…μ˜ 직접 μ†Œμœ ν•œ CLI μ‹œλ„ 두 건을 μ—°κ²°ν–ˆμ§€λ§Œ, 첫 후보 거절과 두 번째 ν”„λ‘œν•„ 지원 였λ₯˜Β· 초기 였λ₯˜ μ§‘κ³„μ˜ ν˜Έν™˜μ„± 곡백으둜 λ‚˜λ¨Έμ§€ λ„€ ν•­λͺ©μ„ μ€‘λ‹¨ν–ˆμŠ΅λ‹ˆλ‹€. 첫 μ‹œλ„μ˜ μ‚¬μš©λŸ‰μ€ μ™„μ „νžˆ κ΄€μΈ‘ν–ˆκ³  두 λ²ˆμ§ΈλŠ” λ―Έν™•μ •μž…λ‹ˆλ‹€. 비ꡐ κ°€λŠ₯ν•œ 두 ν”„λ‘œν•„μ˜ λŠ₯λ ₯ κ²°κ³Όλ‚˜ 절감 νš¨κ³ΌλŠ” ν™•λ³΄ν•˜μ§€ λͺ»ν–ˆμŠ΅λ‹ˆλ‹€.

μ‹€ν—˜ 52λŠ” μ‚¬μš© κ°€λŠ₯ν•œ μš”μ²­ ν”„λ‘œν•„ gpt-6-solΒ·gpt-6-lunaλ₯Ό 각각 low둜 μ§€μ •ν•œ 별도 κ³„νšμ˜ μ—¬μ„― μ‹œλ„λ₯Ό κΈ°λ‘ν–ˆμŠ΅λ‹ˆλ‹€. μ„Έ μš”μ²­μ˜ μ–‘μͺ½ 후보 λͺ¨λ‘ 독립 λ²”μœ„ κ²€μ‚¬μ—μ„œ μˆ˜μš©ν–ˆμ§€λ§Œ, 정상 μ’…λ£Œμ™€ 전체 κΈ°λ³Έ μ‚¬μš©λŸ‰μ€ λ‹€μ„― μ‹œλ„μ—μ„œλ§Œ ν™•μΈν–ˆμŠ΅λ‹ˆλ‹€. catalog-min-context의 Sol μ‹œλ„λŠ” 120초 ν•œλ„ 후에도 후보가 계약을 μΆ©μ‘±ν–ˆμœΌλ―€λ‘œ κ΅¬ν˜„ μ‹€νŒ¨λ‘œ λ°”κΎΈμ§€ μ•ŠμœΌλ©°, μ‚¬μš©λŸ‰μ€ unknown으둜 λ‚¨κΉλ‹ˆλ‹€. 두 주석 μš”μ²­μ—μ„œλ§Œ μ–‘μͺ½μ˜ μ™„μ „ν•œ μ‚¬μš©λŸ‰μ„ 비ꡐ할 수 μžˆμŠ΅λ‹ˆλ‹€. 큰 ν”„λ‘œν•„μ΄ μ–Έμ œλ‚˜ 더 μ’‹λ‹€λŠ” κ°€μ •μ΄λ‚˜ 일반적인 절감λ₯ μ„ λ§Œλ“€μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

51Β·52만의 역사적 ν•©κ³„λŠ” 8기둝·3μš”μ²­μ΄κ³ , 53κΉŒμ§€λŠ” 12기둝·4μš”μ²­Β·λ‘ μ‹€μ œ μ‹œλ„ κ°€μ‘±μž…λ‹ˆλ‹€. 53 μ‹œμ μ—λŠ” 수용 후보 10κ°œΒ·μ™„μ „ν•œ κΈ°λ³Έ μ‚¬μš©λŸ‰ 10κΈ°λ‘μ΄μ—ˆκ³ , μ‚¬μš©λŸ‰ κΈ°λ‘μ—λŠ” 51의 거절된 첫 μ‹œλ„λ„ ν¬ν•¨λμŠ΅λ‹ˆλ‹€. 54κΉŒμ§€μ˜ 역사적 λˆ„μ μ€ 기둝 16κ°œΒ·μš”μ²­ 5κ°œΒ·μ„Έ μ‹€μ œ μ‹œλ„ κ°€μ‘±Β·ν•œ μ €μž₯μ†Œμž…λ‹ˆλ‹€. 수용 ν›„λ³΄λŠ” 52의 μ—¬μ„― 개, 53Β·54 각각의 λ„€ 개둜 총 14κ°œμž…λ‹ˆλ‹€. μ™„μ „ν•œ κΈ°λ³Έ μ‚¬μš©λŸ‰μ€ 총 14개 기둝이며, μ—¬κΈ°μ—λŠ” 51의 거절된 첫 μ‹œλ„λ„ ν¬ν•¨λ©λ‹ˆλ‹€. μˆ˜μš©Β·μ •μƒ μ’…λ£ŒΒ·μ™„μ „ν•œ μ‚¬μš©λŸ‰μ„ λͺ¨λ‘ ν™•μΈν•œ 기둝은 13κ°œμž…λ‹ˆλ‹€. 지원 였λ₯˜ 1건과 수용 ν›„λ³΄μ˜ μ‹œκ°„ 초과/μ‚¬μš©λŸ‰ λ―Έν™•μ • 1건도 λ³΄μ‘΄ν•©λ‹ˆλ‹€. κ³΅κΈ‰μžκ°€ ν™•μΈν•œ μ‹€μ œ λͺ¨λΈκ³Ό μ‹€μ œ λΉ„μš©μ€ μ—¬μ „νžˆ unknown이고 λͺ¨λ“  기둝은 개발 μžλ£Œμž…λ‹ˆλ‹€.

53의 ν•©κ³„λŠ” μž…λ ₯ 339,805·그쀑 μΊμ‹œ 280,576·좜λ ₯ 4,890·그쀑 reasoning 76μž…λ‹ˆλ‹€. Luna의 총 μž…λ ₯은 μ μ—ˆμ§€λ§Œ μΊμ‹œλ₯Ό μ œμ™Έν•˜λ©΄ Luna 31,425Β·Sol 27,804μ˜€μŠ΅λ‹ˆλ‹€. 뢀뢄집합을 쀑볡 ν•©μ‚°ν•˜κ±°λ‚˜ 이 차이λ₯Ό μ‹€μ œ λΉ„μš© 절감으둜 ν•΄μ„ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

54의 ν•©κ³„λŠ” μž…λ ₯ 485,609·그쀑 μΊμ‹œ 423,552·좜λ ₯ 5,282·그쀑 reasoning 157μž…λ‹ˆλ‹€. Luna의 uncached μž…λ ₯ ν•©κ³„λŠ” 26,735, Sol6λŠ” 35,322μ˜€μŠ΅λ‹ˆλ‹€. 이 ν•œ μš”μ²­μ—μ„œλŠ” Luna의 μž…λ ₯·좜λ ₯Β·κ΄€μΈ‘ μ‹€ν–‰ μ‹œκ°„μ΄ μž‘μ•˜μ§€λ§Œ ꡬ독 μ‚¬μš©λŸ‰κ³Ό κΈˆμ•‘ μ ˆκ°μ„ 증λͺ…ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. 사전 κ³„νšκ³Ό 원본 수치 기둝을 ν•¨κ»˜ ν™•μΈν•©λ‹ˆλ‹€.

μ‹€μ œ λΌμš°ν„° ν‰κ°€μ—λŠ” 같은 μž‘μ—… λͺ…μ„ΈΒ·κΈ°μ€€ νŒŒμΌμ—μ„œ μ‹€ν–‰ν•  수 μžˆλŠ” λͺ¨λΈλ“€μ˜ 독립 수용 κ²°κ³Ό, λͺ¨λ“  μ‹œλ„Β·μž¬μ‹œλ„μ˜ μ‚¬μš©λŸ‰κ³Ό μš”μ²­Β·κ΄€μΈ‘ κ·Όκ±°κ°€ 더 ν•„μš”ν•©λ‹ˆλ‹€. μ™„λ£Œμœ¨κ³Ό 전체 μž‘μ—…λ‹Ή μ‚¬μš©λŸ‰μ„ ν•¨κ»˜ 비ꡐ해야 상ν–₯Β·ν•˜ν–₯ λΌμš°νŒ…μ˜ μœ μš©μ„±μ„ νŒλ‹¨ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 골든셋 μ„€κ³„μ˜ μ˜μ—­λ³„ μ΅œμ†Œ 2,400개 μ΅œμ’… μš”μ²­ λͺ©ν‘œλŠ” 이 개발 기둝으둜 λŒ€μ²΄ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. ꡬ체적인 μ›μ²œ 확보·그룹 뢄할·비ꡐ μ‹€ν–‰ μ˜ˆμ‚°μ€ 골든셋 확보 κ³„νšμ— μ„€λͺ…λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€.

ν˜„μž¬ 직접 μž‘μ„±ν•œ JSONL μ˜ˆμ œμ™€ 곡개 μ½”λ“œ 검증 μ˜ˆμ œλŠ” λ„κ΅¬μ˜ λ™μž‘μ„ μ„€λͺ…ν•˜λŠ” μžλ£Œμž…λ‹ˆλ‹€. μ‹€μ œ λͺ¨λΈ μž‘μ—… κ²°κ³Όκ°€ μ•„λ‹™λ‹ˆλ‹€. 이 초기 도ꡬ κ΅¬ν˜„μ˜ λ²”μœ„μ™€ 검증 κ³„νšμ€ 역사적 κ³„νš 49에 μžˆμŠ΅λ‹ˆλ‹€.

직접 μž‘μ„±ν•œ 예제의 μ‹€μ œ 도ꡬ μ‹€ν–‰ 기둝은 집계 두 건, μ •ν™•ν•œ 주석 λ³€κ²½μ˜ 수용, λ³€κ²½ μ—†λŠ” κΈ°μ€€ 파일의 κ±°μ ˆμ„ λ‹΄μŠ΅λ‹ˆλ‹€. μ—¬κΈ°μ„œ 도ꡬ μ’…λ£Œ μ½”λ“œλŠ” λͺ¨λΈ ν”„λ‘œμ„ΈμŠ€μ˜ μ’…λ£Œ μ½”λ“œκ°€ μ•„λ‹ˆλ©°, κ·Έ 역사적 예제 기둝의 λͺ¨λΈ κ²°κ³ΌλŠ” 0κ±΄μž…λ‹ˆλ‹€. 이후 μ‹€ν—˜ 51Β·52Β·53Β·54의 μ‹€μ œ μ‹œλ„ 기둝과 κ΅¬λΆ„ν•©λ‹ˆλ‹€.

μ›μ²œ μˆ˜μ§‘κ³Ό μ‹€ν–‰ 계약은 곡개 Go 후보 120개 쑰사에 λ³„λ„λ‘œ μ„€λͺ…ν•©λ‹ˆλ‹€.