ADR-0007은 MCP 배포 하나가 Tool Service 하나만 보게 했으나 구현은 이미 Portal이 route와 endpoint를 소유하는 구조다. 결정 문서가 없어 ADR-0007이 Accepted로 남은 채 코드와 정반대되는 내용을 현재 설계 근거처럼 제시하고 있었다. ADR-0013이 그 경로를 확정하고 ADR-0007 전체와 ADR-0009 결정 4를 대체한다. ADR-0010은 Tool 실행 주소의 소유자가 설정이 아니라 Tool Service 매니페스트라는 6078852의 결정을 사후 기록한다. 두 ADR이 정본으로 인용하는 Portal-MCP 계약 v0.1도 함께 넣는다. ADR-0013은 main 현재 코드에 맞춰 세 곳을 고쳤다. route 간 갱신 격리 부재는 6653030이 해소해 격리 표로 옮겼고, 제거된 mcp.portal.route-key 항목은 뺐다. 남은 위험 둘(Portal 모드 warm start 미동작, readiness의 route별 상태 미노출)은 코드에서 유효함을 확인해 남긴다. ADR-0010이 기록하는 대로 endpoint 검증에는 도메인 허용목록이 없고 NetworkPolicy도 Ingress만 선언한다. 매니페스트 원천의 신뢰성이 곧 outbound 대상의 신뢰성이다. McpProperties와 application.yml의 주석이 이 결정과 반대로 남아 있다는 사실도 ADR에 적었다. 코드는 바꾸지 않는다. 192개 테스트 통과. 문서 상대링크 깨짐 없음. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2.0 KiB
2.0 KiB
Architecture Decision Records
장기 설계 결정은 ADR로 관리한다.
Accepted: 확정된 결정Superseded: 후속 ADR로 대체된 결정Rejected: 검토했으나 채택하지 않은 결정
결정이 변경되면 기존 ADR을 삭제하거나 의미를 덮어쓰지 않고 새 ADR에서 대체 관계를 기록한다.
결정 목록
| ADR | 제목 | 상태 |
|---|---|---|
| ADR-0001 | Stateless 실행 책임 경계 | Accepted |
| ADR-0002 | Agent Builder Tool 노출 제한과 단일 Tool 호출 | Accepted |
| ADR-0003 | Builder Tool UID를 시스템 간 식별 키로 사용 | Superseded |
| ADR-0004 | 300초, Raw Data, unsafe retry 실행 가드레일 | Accepted |
| ADR-0005 | 표준 MCP Tool name을 실행 식별자로 사용 | Accepted |
| ADR-0006 | MCP Server는 인증·인가를 하지 않는다 | Accepted |
| ADR-0007 | MCP 배포 하나는 Tool Service 하나만 본다 | Superseded |
| ADR-0008 | 공유 host의 path를 독립 MCP 배포로 연결 | Superseded |
| ADR-0009 | 컨테이너가 공개 MCP path를 직접 처리 | Accepted |
| ADR-0010 | Tool 실행 endpoint를 Tool Service 매니페스트가 선언 | Accepted |
| ADR-0011 | Tool inputSchema는 문서 밖을 참조하지 않는다 | Accepted |
| ADR-0012 | Tool inputSchema의 정규식에 예산을 둔다 | Accepted |
| ADR-0013 | Tool Server endpoint 목록과 route 매핑의 원천은 Portal | Accepted |