← /geode/portfolioGEODE . 문서
GitHub
자기개선 루프
레퍼런스

아우터 루프 설정

autoresearch + seed-pipeline + petri 세 축의 outer-loop 설정을 ~/.geode/config.toml 한 곳에 모았습니다. pydantic v2 스키마, strict mode 가 기본.

왜 outer-loop 설정이 분리되어 있나

`core/config/outer_loop.py` 는 inner-loop (AgenticLoop, model selection) 와 분리된 outer-loop 의 설정 root 입니다. autoresearch (자가 ML 실험 루프) + seed-pipeline (재귀적 seed 생성) + petri (alignment audit) 세 시스템이 공유하는 임계값을 한 곳에 둠으로써 8 군데에 흩어져 있던 설정(모듈 상수 2 + TOML 2 + env vars + manifest + auth.toml + codex auth.json) 을 단일 SOT 로 통합합니다.

스키마

[outer_loop]
fallback_to_payg = false      # subscription 소진 시 PAYG api_key 폴백 차단 (strict)
warn_threshold = 0.5          # 사용량 50% 시 노란 경고
abort_threshold = 0.9         # 사용량 90% 시 abort

[outer_loop.autoresearch]
# autoresearch/train.py 의 9-col tsv outer-loop 임계값

[outer_loop.petri]
credential_source = "oauth"   # OAuth subscription 만 사용

[outer_loop.seed_pipeline]
# Session 63 cycle 의 generation 임계값

[outer_loop.bindings]
# slack/discord/telegram poller binding

로드 경로

`load_outer_loop_config(path?)` 가 우선순위: (1) 명시적 path 인자, (2) `GEODE_CONFIG_TOML` env, (3) `~/.geode/config.toml`. 파일/섹션 누락 시 기본값 모델 반환. `extra='forbid'` 로 오타는 즉시 에러.

Phase α-ζ 작업

본 페이지가 다루는 PR-α1 (#1308) 은 schema + loader 만. 후속 Phase β/γ/δ/ε/ζ 는 subscription guard + FE warning UX (prompt_toolkit bottom_toolbar 3-tier) + SessionCheckpoint resume + idempotency-key cache. 자세한 로드맵은 `docs/plans/2026-05-19-outer-loop-config-consolidation.md`.

관련 코드 + 참조

  • core/config/outer_loop.py (PR-α1 #1308, 16 unit tests)
  • docs/architecture/outer-loop-resume-decision.md (Phase ζ ADR)
  • docs/plans/2026-05-19-outer-loop-config-consolidation.md