test-time skill optimization · ARC-AGI-3 · prior-work synthesis · 2026-07-30
이 저장소에는 이미 네 개의 선행 시스템 해부 페이지가 구현 깊이로 존재한다. 이 페이지는 그것을 다시 유도하지 않는다. 빠져 있던 종합 층 — 그 시스템들을 우리의 측정된 네 축(품질·개선·판정·인출)으로 재색인하고, 오늘 측정한 숫자에 접합하는 층 — 만을 채운다. 모든 주장은 그 주장을 이미 싣고 있는 기존 페이지로 딥링크한다.
아래 다섯 배지가 이 페이지의 모든 셀에 붙는다. 배지가 허용하지 않는 주장은 셀에 들어올 수 없고, 저장소에 근거가 없는 셀은 비워두지 않고 여기 기록 없음으로 명시한다. 문헌 기억으로 셀을 채우는 일은 없다.
code-in-repo 소스가 이 저장소 안에 있다 · verbatim-quote 저장소 밖 소스의 축어 인용(저장소의 해부 페이지가 실어 놓음) · self-reported 해당 팀이 스스로 보고한 수치, 미검증 · prose-only 저장소에 산문 한두 문장뿐, 구현 없음 · not-recorded-here 저장소에 아무 기록 없음
| 시스템 | 저장소가 담고 있는 것 | 소스 코드 | 수치의 성격 | 허용 배지 |
|---|---|---|---|---|
| Schema (Impossible Research) |
해부 페이지 codenative/references/schema.html (477행). 공개된 schema-level 서술의 축어 사본이 NODE_DESC 문자열로 :367–371, data-tip으로 :288에 보존돼 있다. | 코드·프롬프트 저장소에 없음, 비공개. 유일한 공개 아티팩트는 HF 데이터셋 schema-harness/arc-agi-3-schema-traces. | 98.98% 등은 자가 보고, Public set(25게임) 한정, Fable 5 폴백 재실행을 포함한 앙상블. | verbatim-quote self-reported |
| baseline1 (astroseger) |
해부 페이지 codenative/references/baseline1.html (681행). 함수 시그니처·예외 메시지·프롬프트 절이 소스에서 축어로 발췌돼 있다. | 클론이 /home/v-seungplee/arc-3-agents-baseline1에 있으나 이 저장소 밖이다. | 점수 주장을 이 페이지는 쓰지 않는다. | verbatim-quote |
| SkillOpt (arXiv:2605.23904) |
해부 페이지 codenative/references/skillopt.html (652행). trainer·gate·optimizer의 시그니처와 독스트링이 축어로 발췌돼 있다. | 클론이 /home/v-seungplee/SkillOpt에 있으나 이 저장소 밖이다. | 벤치마크 수치(52셀 등)는 논문의 자가 보고. | verbatim-quote self-reported |
| symbolica (agentica) |
해부 페이지 codenative/references/symbolica.html (422행). 우리 엔진은 이 코드베이스의 포크다 — 선행 연구이자 우리 계보. | 저장소 안: engine/agents/templates/agentica/ (prompts.py, scope/roles.py, skills/skill.py, skills/skill_judge.py, sleep/, wake/). | 점수 주장 없음. | code-in-repo |
| DreamCoder (Ellis) |
산문 한 문장뿐: 실험 원장 docs/reports/autoresearch-log.md:1180의 리뷰어 판정. 구현 셀 없음. | 여기 기록 없음 | 여기 기록 없음 | prose-only |
이 표가 페이지 전체의 상한이다. 표에 없는 시스템은 아래 어느 절에도 등장하지 않는다.
스킬 루프가 해야 하는 네 가지 일 — 좋은 규칙을 만들고(품질), 만든 것을 고치고(개선),
믿을 것을 고르고(판정), 고른 것을 필요한 순간에 꺼내는(인출) 것 — 을
docs/reports/scripts/four_axes.py가 기록된 런에서 직접 계산했다.
측정일 2026-07-30. 두 런 모두 n=1이다.
| 축 | 지표 | bwsvfull (ft09, n=1) | ls20a (ls20, n=1) |
|---|---|---|---|
| ① 품질 | 라이브러리 최고 규칙의 realized F1 / 중복 코드 그룹 | best_f1 0.813 · 중복 4그룹(최대 6) | best_f1 0.832 · 중복 3그룹(최대 19) |
| ② 개선 | version 1을 넘겨 개정된 레코드 | 0 of 244 | 0 of 124 (통제 noE3full: 0 of 346, n=1) |
| ③ 판정 | corr(top_credence, realized F1) / 최상위 랭크가 실제 최선이었던 라운드 | −0.305 · 0 of 59 | +0.249 · 3 of 39 |
| ④ 인출 | best vs USED F1 / 최상위 mechanic 침묵 속 커밋 비율 | 0.813 vs 0.267 · silent 67.4% | 0.832 vs 0.328 · silent 62.5% |
bwsvfull의 6/6 완주(59라운드, 227액션, RHAE 19.7)는 스킬 루프의 공으로 돌릴 수 없다. 그 런은 전문가 브리핑 섹션들이 36라운드 연속 부재한 채로(CONSENSUS는 59라운드 중 0회, WORLD MODEL·WIN-CONDITION은 23라운드 이후 소멸), simulate를 3회만 호출하고 이겼다. 네 축 중 셋이 작동하지 않는 채 이긴 것 자체가 발견이다. 통제군은 물리적으로 옆에 둔다: 게이트를 지우되 원장을 고치지 않은 noE3full은 60라운드에 4레벨, 레벨 4에서 123액션(인간 기준 16)을 태웠다(n=1). 시드 1·2는 아직 돌린 적이 없어 6/6은 미복제다.
행은 §01의 시스템, 열은 §02의 축이다. 각 셀은 그 시스템이 그 축을 어떻게 다루는지, 그리고 그것이 우리의 측정값에 대해 무엇을 예측하는지를 배지와 함께 말한다. 저장소 근거가 없는 셀은 여기 기록 없음이다.
| 시스템 | ① 품질 — best_f1 0.813 / 0.832 | ② 개선 — 0 of 244 / 0 of 124 | ③ 판정 — corr −0.305 / +0.249 | ④ 인출 — USED 0.267 / 0.328 |
|---|---|---|---|---|
| Schema | verbatim-quote 품질의 단위가 개별 규칙이 아니라 하나의 step() 프로그램이고, 표현(state representation)도 그 안에서 발명되므로 반례가 표현 자체를 기소할 수 있다. per-rule F1 분포라는 것이 구조상 존재하지 않는다 — 우리의 best_f1 통계는 Schema에는 없는 물음이다. | verbatim-quote “fixing the existing program, not stacking a new record beside it” (schema.html:367). 개선이 정체성(identity)으로 보장된다 — 형제-축적 실패 모드가 구조적으로 제거. 우리는 그 장치가 없고 0 of 244를 측정했다. | verbatim-quote “A single mismatch pinpoints the bug.” (schema.html:368). run_backtest는 이진·전량 인증이다 — 오교정될 랭크가 애초에 없다. 우리는 랭크가 있고 −0.305를 측정했다. | verbatim-quote 프로그램이 하나이므로 인출할 것이 없다; 탐색은 인증된 프로그램 안에서만 일어나고 commit_actions가 유일한 행동 채널이다. silent commit이 구조상 불가능. 우리는 silent 67.4%를 측정했다. |
| baseline1 | verbatim-quote 품질 판정이 픽셀 단위 전-이력 재생 (np.array_equal, 프레임 대 프레임)으로 이진이다. 부분점수 0.813짜리 규칙은 여기서는 “그냥 실패”다 — 통과 아니면 VerificationMismatchError. | verbatim-quote Codex가 같은 4개 파일을 제자리 편집하고, 레벨 2+에서는 매 사이클 7-shot simplification pgroup(“hard refactoring”)이 강제된다. 개선 이력이 파일 정체성 위에 쌓인다. 우리: 0 of 244. | verbatim-quote “This script — not a human — decides whether the model is right.” (baseline1.html#snode-verify). LLM의 자기평가 랭크가 판정에 개입할 자리가 없다. 우리는 자기평가 credence가 랭크이고 −0.305를 측정했다. | verbatim-quote 모델이 곧 작업 디렉터리라 항상 전부 로드되고, plan_executor는 클라이언트 호출 전마다 예측을 먼저 커밋한다(“no real action without a prediction”을 코드로 강제). 침묵 커밋이 구조상 불가능. 우리: silent 67.4%. |
| SkillOpt | verbatim-quote 품질 신호는 롤아웃의 hard/soft 점수 하나로, 문서 전체의 전역 점수다. 규칙 단위 realized F1 같은 국소 품질 개념이 없다 — 우리의 축 ①은 SkillOpt가 던지지 않는 물음이다. | verbatim-quote 하나의 스킬 문서에 bounded edit(add/delete/replace)를 가하고, 게이트 기각 시 이전 상태로 롤백한다. 개선은 언제나 같은 문서의 다음 버전이다. 우리: 0 of 244. | verbatim-quote “Analogous to validation-based early stopping and model selection in neural network training” (evaluate_gate 독스트링). 수용은 held-out 실측 점수의 strict inequality — 생성기의 자기 신뢰도가 판정에 들어오지 않는다. 우리: −0.305 · 최상위가 최선인 라운드 0 of 59. | verbatim-quote 배포는 best_skill.md 전문이 그대로 붙는 방식이다 (“zero inference-time model calls at deployment” README 축어) — 인출 단계 자체가 없다. 우리: best 0.813 vs USED 0.267. |
| symbolica | code-in-repo 채굴에 EVIDENCE PROTOCOL이 강제된다: “>=10-word verbatim quotes from memory.details or trace_digest lines” + coordinate-free (scope/roles.py). 근거 없는 채굴은 grounding 실패로 감점되도록 설계됐다. 우리 ls20a에서는 게임에 존재하지 않는 ACTION5 가설이 브리핑 40회 중 19회에 등장했다 — 그 프로토콜이 우리 채굴 경로에는 없다. | code-in-repo 지식은 같은 레코드 위에서 갱신된다: posterior (confirm_n, falsify_n)를 confirm()/falsify()로만 움직이고, falsify 우세 시 삭제가 아니라 격리한다. 우리는 이 계보를 포크하고도 refine 경로가 형제를 쌓는다(§04-1). 우리: 0 of 244. | code-in-repo combined = advantage × grounding, 그리고 “a skill commits ONLY on a confident verdict (combined >= commit_conf)” (skill_judge.py) — fail-closed는 커밋 시점만 지킨다. 커밋 이후 credence를 실측 F1에 대조하는 장치는 없다; 사후 miscalibration은 구조적으로 열려 있고, 우리의 −0.305는 그 열린 문의 실측이다. | code-in-repo 인출을 명시적 설계 문제로 둔다: retrieval_labels(T3), posterior_by_game(T7), is_surviving() 생존 술어. 그 표면을 우리가 실측한 값이 best 0.832 vs USED 0.328 (ls20a)이다. |
| DreamCoder | 여기 기록 없음 | prose-only “grows in count, not expressive power” (autoresearch-log.md:1180, 2026-07-23 리뷰어 판정). 우리: 0 of 244 · 중복 코드 그룹 4(최대 6) / 3(최대 19). | 여기 기록 없음 | 여기 기록 없음 |
위 루프는 Schema가 공개한 서술의 여섯 마디, 아래 루프는 우리 코드의 일곱 마디다. 네 개의 붉은 절단이 §02–§03의 측정값 그 자리다. 오른쪽의 초록 막대 하나가 정직하게 수렴하는 지점이다.
네 개의 메커니즘 주장. 각각은 저쪽 절반은 공개 서술의 축어 인용으로, 이쪽 절반은 우리 측정값으로 딛는다. 형식은 하나다: 그 메커니즘은 이 실패 모드를 구조적으로 제거한다; 우리에게는 없고, 그 실패 모드를 측정했다.
고칠 대상이 하나뿐이고 편집이 그 대상 위에서 일어나면, “개정판이 만들어지지 않는” 실패 모드는 정의상 불가능하다.
ttso/sleep/orchestrator.py:1360의 _with_code()가
기존 레코드의 set_code() 대신 새 Record를 반환해, 수용된 모든 정련이 version 2가 아니라
형제로 저장된다. set_code 호출처는 :1267(goal_reask)과
:1335(when-게이트 수리) 둘뿐이고, refine 경로는
:1497에서 _with_code로 후보를 만든다. — Schema의 해부 페이지가
기록해 둔 문구가 정확히 우리 안티패턴의 이름이었다.통과/실패 둘뿐인 전량 재생 인증에는 “신뢰도 순위”라는 층이 없다. 순위가 없으면 순위가 실측과 어긋나는 실패 모드도 없다.
지식이 프로그램 하나에 살면 “맞는 규칙을 필요한 순간에 꺼내는” 문제 자체가 성립하지 않는다. 최상위 지식이 행동 순간에 침묵할 방법이 없다.
인증이 행동 면허로 쓰인다: 인증된 프로그램 안에서 짠 계획(대기열)을 실비용 제로 탐색으로 뽑아 배치로 소비하고, 클릭마다의 예측-검사가 안전핀 노릇을 한다.
“We kept the half of Schema's idea that prevents damage and lost the half that makes certification worth earning.”presentation/experiments.html §07 (line 682) — 이 저장소가 이미 적어 둔 문장
Schema의 코드와 프롬프트는 이 저장소에 없고 공개되지도 않았다. 위 네 주장은 그들이 공개한 schema-level 서술(저장소의 schema.html이 축어로 보존)에만 딛는다. 98.98%는 자가 보고이며 Public set(25게임) 한정이고, 80점 미만 게임만 Fable 5로 재실행한 앙상블의 산출이다. 이 페이지는 라인 단위 구현 비교를 하지 않으며, 그들의 메커니즘이 그들의 점수를 초래했다는 주장도 하지 않는다. 말할 수 있는 것은 위 네 칸이 전부다: 메커니즘 X는 실패 모드 Y를 구조로 제거한다; 우리는 X가 없고 Y를 측정했다.
아래 다섯 쌍의 왼쪽은 2026-07-23과 07-26에 실험 원장(docs/reports/autoresearch-log.md)에
이미 기록돼 있던 문장이고, 오른쪽은 2026-07-30의 four_axes.py 측정값이다. 예측이 측정을
앞선다 — 사후 짜맞춤이 아니다.
ls20a(n=1): value-agreement 0.975 (추정식: 1 − Σwrong / Σ(pred∧obs)), best_f1 0.832 — 거의 완벽하게 예측되는 닫힌 세계 — 그리고 40라운드 40액션, 레벨 0 미클리어. 트리거는 침묵했다.
plan kind 레코드 0 — 모든 런, 양 게임. 진단은 쌓였다 (RESOURCE_LIMIT 22 · CONSENSUS_BLOCKED 11, bwsvfull 39수면). 행동으로는 한 번도 건너가지 못했다.
게이트-ON 팔들 커밋 1.00 actions/round(각 n=1) · bwsvfull USED f1 0.267 vs best 0.813 · silent-commit 67.4%. 인증된 진실은 여전히 소비되지 않는다.
version 1을 넘긴 레코드 0 of 244(bwsvfull) / 0 of 124(ls20a) · 중복 코드 그룹 4(최대 6) / 3(최대 19). 라이브러리는 개수로만 자랐다.
bwsvfull 수면 트리거 39 of 39가 “wincond”, “surprise”는 0. 신호는 매번 같은 문으로 갔고, 행동의 방향을 바꾼 적은 기록에 없다.
각 줄의 숫자는 전부 위 절들에서 나온 그대로다(런은 각각 n=1). 전체 런 원장은 이 주의 덱(index.html)에 있다.
| 구성요소 | 가장 가까운 선행 | 여기서의 예측 | 우리 숫자 |
|---|---|---|---|
| mine | symbolica EVIDENCE PROTOCOL code-in-repo | ≥10단어 축어 인용에 접지된 채굴만 통과 — 근거 없는 가설은 grounding 실패 | best_f1 0.813/0.832 — 그러나 ls20a에서 존재하지 않는 ACTION5 가설이 브리핑 19/40, actor 추론 11/40, 제출 시도 14회. 출처는 번들이 아니라 base prompt의 인터페이스 목록 |
| refine | Schema theorize verbatim-quote | 제자리 수정이면 version 2는 정체성으로 존재 | 0 of 244 · 근인 orchestrator.py:1360 _with_code 형제 생성 |
| credence | SkillOpt evaluate_gate verbatim-quote | 판정은 held-out 실측 점수로만 — 자기평가 랭크 배제 | corr(top_credence, realized F1) = −0.305 · 최상위=최선 0 of 59 |
| retrieval | Schema의 단일 프로그램 verbatim-quote | 지식이 하나면 인출 실패가 정의 불능 | best 0.813 vs USED 0.267 · silent 67.4% |
| brief | symbolica의 무조건 인계 (“Always pass GAME_REFERENCE … to every subagent.”) code-in-repo | 지식 전달은 선택이 아니라 계약 | CONSENSUS 0/59 · OTHER SKILLS 라운드 6 이후 소멸 · WM/WIN-CONDITION 라운드 23 이후 소멸 (wake.py cap_chars=8000 절단; 07-29 수정, 미검증) |
| simulate | Schema run_bfs (“real cost is zero”) verbatim-quote | 공짜 탐색은 세게 소비되어야 한다 — RHAE는 액션 수에 제곱 | bwsvfull 3회 — 전부 한 라운드(r53)에, 나머지 58라운드는 0 · C3는 41개 라운드 (simulate는 game.actions 비증가 = 유일한 공짜 탐색) |
| plan | baseline1 planner + 재시뮬 자기검증 verbatim-quote | 인증된 계획은 소비 가능한 면허 | plan kind 레코드 0 (모든 런, 양 게임) · 바인딩 RESOURCE_LIMIT 22 · CONSENSUS_BLOCKED 11 |
| commit | baseline1 plan_executor — predict·execute·compare verbatim-quote | 클릭마다 예측 검사, 첫 불일치에 계획 폐기 — 정직한 수렴점 | namespace.py:378–394 핀이 동일 규율 구현 (2026-07-16 추가; C3는 그 이전) · bwsvfull 배치 라운드 43/59 |
| sleep | SkillOpt 야간 사이클 — 한 밤 = 한 에폭, 예산 유계 verbatim-quote | 수면은 필요 신호에 반응하고 비용이 유계여야 | 트리거 39/39 “wincond”, “surprise” 0 · 수면이 LLM 호출의 81% · 비-LLM 계산 라운드당 1.5 → 116분 (규칙×버퍼 O(n²)) |
| record | Schema Timeline (“append-only … the only ground truth”) verbatim-quote | 기록이 다음 인증의 재생 대상 | jsonl 원장은 남는다 — 그러나 그것을 전량 재생해 검사하는 certify 단계가 없다; wm_fidelity.jsonl은 bwsv 이후에만 존재(noE3full 값은 잠정 표기) |