Codex App vs Runtime Sandbox 강화 보고서
이 보고서는 Codex App 워크스페이스와 discord-codex-bot runtime-enforced sandbox의 역할 차이를 의사결정 관점에서 정리한다.
Codex App은 코드 읽기, 리뷰, 설계 초안에 적합하다. 서비스별 자동 수정과 승인된 운영 변경은 agent-runtime의 worker profile, write allowlist, approval record, diff guard가 통제해야 한다.
Lane 분리
| Lane | 역할 | 쓰기 경계 |
|---|---|---|
| Codex App | 개인 탐색, 리뷰, 설계 초안 | 하드 경계 아님 |
| discord-codex-bot service worker | 서비스 내부 자동 작업 | runtime writeAllow와 diff guard |
| root/e2e agent | 계약, 통합, cross-service 변경 | 승인된 넓은 범위와 강화된 감사 |
Runtime-Enforced Profile
cwd: 기본 작업 디렉터리readAllow: 읽기 가능한 근거 범위writeAllow: 직접 수정 가능한 경로proposeOnly: 직접 수정 금지, 제안 또는 handoff만 허용하는 범위approvalPolicy: 승인 필요한 변경diffGuard: 작업 후 실제 diff 검증
Sanctum 적용 해석
| Worker | Read | Write | Propose-only |
|---|---|---|---|
| wallet-api | contracts, kms/hd stubs, e2e role | wallet code/test/context | contracts, kms-api, hd-manager, root/e2e |
| kms-api | contracts, wallet/hd stubs, runbook | kms code/test/context | contracts, wallet-api, deployment config |
| hd-manager | wallet/kms context, key contracts | hd-manager code/test/context | wallet-api, kms-api, contracts, e2e |
| mpc-manager-rs | party-node stubs, MPC contracts | manager code/test/context | party-node, shared protocol, root/e2e |
| party-node-rs | manager stubs, protocol contracts | party-node code/test/context | manager, contracts, root/e2e |
Graphify는 read planning을 돕는 context router이고 RAG는 source-backed evidence retrieval에 머물러야 한다. 둘 다 writeAllow를 확장하지 않는다.
리스크와 가드레일
- 단일 서비스 변경이 cross-service patch로 번지는 위험은 좁은 writeAllow와 proposeOnly handoff로 완화한다.
- Discord approval button에는
approval_id만 넣고 action과 scope는 서버 저장소에서 조회한다. contracts/변경은 contracts agent 또는 root/e2e agent가 승인된 범위에서 수행한다.- LLM의 changed summary가 아니라 실제 git diff 또는 변경 파일 목록을 기준으로 검사한다.