Docs/biop02 113 braveji harness techniques - #141
Merged
Conversation
git 으로 하네스 자산을 전수 조사(agents/critic/{scripts,tests}, evals/*,
.github/workflows, docs/*)해 ai_scientist/*.md 반영 여부를 대조.
설계가 바뀐 게 아니라 **설계서가 리포보다 뒤처져 있었다**.
■ 04 (검수·거버넌스)
- CI 검증기 3종 → **7종** 표 갱신(게이트 mutation·split 누수·공허통과·국영문 정합 추가)
- ⭐ "검증기를 검증한다" 절 신설 — mutation 하네스(control↔mutated 델타,
"실무자가 저지를 법한 실수를 심으면 게이트가 잡는가") + 공허통과 회귀 10케이스.
근거: 두 가드 동시 무력화 시 기존 CI 는 초록이었고 신규 스텝만 잡았다
= 수정이 통째로 되돌아가도 CI 는 초록이었다는 뜻.
- 검증기가 스스로 터지지 않게 — $ref 지연 해석이라 늦게 터지는 실패를 회귀로 고정
- "판정하지 않는 검증기" — 드리프트 체커는 어긋남만 보고, 판정은 사람.
v1 이 범위 밖을 스스로 명시해 v2 가 이어받은 구조
- 픽스처 자기충족 회피 — 픽스처 작성자=채점기 작성자면 통과가 자기충족.
실제 산출물로 돌리되 판정은 critic_status 아님(Owner≠Reviewer)
- ⭐ 메타-학습 루프 절 신설 — 사고 → PITFALLS_REGISTRY 등재 →
재발방지 장치 필수(규칙②) → 금지조항/스크립트/CI.
A4(검증 스크립트가 같은 버그를 쓰면 버그가 "현상"으로 보인다)가
mutation·자기충족 회피의 뿌리임을 연결
- 낡은 서술 정정: config 불일치 → Leader 승인 후 정렬 완료(닫힘)
■ 03 (계약) — "스키마는 선언이 아니라 검증이어야 한다"
validate_hypothesis.py 신설 경위 + ⚠️ CI 미편입이 의도적임을 명시
(위반 남은 채 blocking 켜면 "원래 빨간 CI" → 아무도 안 본다. 순서도 설계다)
■ 05 (협업) — memory/ 층 추가
핸드오프(며칠~몇 주) vs memory(프로젝트 내내) 수명 구분 + 색인 + 낡음 주의.
"이 층의 실패는 조용하고 되돌릴 수 없다" — 한 달치 로그 유실 사고와 규칙 2건
■ README — 하네스 계보 절 신설
원본(CC BY 4.0) → BIOP01·BIOP02. "복사가 아니라 벤치마킹 이식"
(골격만 가져오고 mutation·detector 는 자기 도메인으로 새로 씀)
+ 기법 동기화 표 + config 갭 닫힘 반영
검증: 11개 기법 전부 반영 확인(grep 대조). 인용 전 각 자산의 docstring·README 를
열어 실제 동작을 확인했다(추측 인용 없음).
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
앞 커밋(eefbfb2)에서 ai_scientist/*.md 에 반영한 기법 11건을 템플릿에도 일반화해 이식. 대조 결과 일부는 GETTING_STARTED(실행 가이드)에만 있고 **원칙 문서(01~06) 에는 없었다** — 실행 절차만 있고 근거가 없는 상태였다. ■ 04 (검수) — CI 검증기를 두 부류로 재구성 (a) 산출물을 검사하는 것 (검수기 회귀·인용 회귀·숫자 드리프트·누수 검사) (b) ⭐ 검사기 자신을 검사하는 것 — 잊기 쉽고 없으면 (a) 전체가 허사 · mutation 하네스 (control ↔ mutated 델타) · 공허통과(vacuous pass) 회귀 · 검증기 크래시 회귀 (지연 해석 참조는 빈 입력에서 통과) + "통과만 하는 게이트는 게이트가 아니다" — 실패의 '색깔'로 설명: 결과 오류는 빨간불, 검증기 사망·공허통과는 초록불이라 아무도 안 본다 + 판정하지 않는 검증기 — 어긋남만 보고, **자기 범위 밖을 스스로 명시**해야 다음 사람이 그 빈칸만 이어받을 수 있다 + 픽스처 자기충족 회피 — 픽스처 작성자=채점기 작성자면 통과가 자기충족 세 절의 뿌리를 한 줄로 연결: 검증기가 피검증 대상과 같은 맹점을 공유하면 버그가 "현상"으로 보인다 ■ 03 (계약) — 스키마는 "선언"이 아니라 "검증" 산출 시점 검증 / 필요한 필드는 삭제 대신 스키마 확장으로 흡수 / 참조 해석을 회귀로 고정.⚠️ CI blocking 시점 주의 — 위반 남은 채 켜면 "원래 빨간 CI" → 아무도 안 본다. 순서도 설계다. ■ 05 (협업) — 수명이 다른 두 종류의 기록 핸드오프(며칠~몇 주) vs {{MEMORY_STORE}}(프로젝트 내내). 한 항목=한 파일=한 사실 + 색인.⚠️ 기억도 낡는다 — 파일·명령을 지목하는 항목은 쓰기 전에 존재 확인. ■ README — 이식 원칙 "복사가 아니라 벤치마킹 이식" 가져오는 것(골격) vs 새로 쓰는 것(도메인 판정기준) 표 + 3자 대조표 권장 ■ PROJECT_SLOTS — {{MEMORY_STORE}} · {{PITFALLS_REGISTRY}} 슬롯 신설 ■ APPENDIX — 사례 10(가드 동시 무력화 시 CI 초록) · 11(검증기가 늦게 터짐) · 12(형식 선언만 있고 검사 없음) 추가, 전부 익명화 서술 검증: 11기법 전부 반영 확인 · BIOP02 고유 토큰 전 파일 0건 · 본문 사용 슬롯 전부 PROJECT_SLOTS 에 정의(누락 0). Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.