1.9 KiB
1.9 KiB
인터페이스 계약 작성 방법
인터페이스 계약 문서는 승인된 Discovery와 구현 결과를 근거로 외부·내부 인터페이스의 호출 규칙을 설명한다.
저장 위치
완성된 인터페이스 계약 문서는 대상 저장소 루트 기준 docs/interface-contract.md에 저장한다. 파일이 이미 존재하면 별도 문서를 만들지 않고 이 정본 문서를 갱신한다.
이 디렉터리의 README.md와 TEMPLATE.md는 하네스의 작성 규칙과 템플릿이며 대상 저장소에 저장하는 산출물이 아니다.
작성 방법
TEMPLATE.md를 복사하고 섹션 순서를 유지한다.- 목적, 포함·제외 범위 및 인터페이스 사용 주체를 명시한다.
계약의 H3 블록을 인터페이스 수만큼 복제하고 입력·출력·오류 행을 실제 계약 수만큼 복제한다.- 모든
${lowercase_snake_case}placeholder를 실제 값으로 교체한다.${stable_section_id}에는 고유한 소문자 케밥 표기법을 사용한다. 인터페이스 이름이 바뀌어도 ID는 유지하며 삭제된 ID를 재사용하지 않는다. - 각 인터페이스의 책임, 종류·프로토콜, 호출 대상, 버전, 호출 주체, 인증·권한을 기록한다.
- 입력·출력 필드와 오류 계약을 표에 기록한다. 값이 없으면
없음으로 기록한다. - 기존 호출 방식, 버전 변경·폐기, 재시도·중복 처리 및 순서 보장에 대한 호환성 계약을 기록한다.
- 실제 구현과 일치하는 호출 예시와 정상·실패·경계 계약의 검증 방법을 기록한다. 예시에는 실제 credential이나 민감정보를 포함하지 않는다.
근거 없이 인터페이스나 동작을 추측하지 않는다. 완성 문서에는 placeholder나 작성 안내 문구를 남기지 않는다.