Mapae docs
목차 · 문서 검색
기술자료 (Tech) · 6. 검증 상태와 로드맵

6. 검증 상태와 로드맵

무엇이 어느 수준까지 검증되었는지를 증거 수준과 함께 기록한다. §2 증거표와 같은 규칙으로, 채굴된 것·fork에서 완주한 것·시뮬레이션으로 확인한 것을 같은 문장에 섞지 않는다.

정산 원장·일일 가스 예산·동일 결제의 거래 해시 복구는 SQLite에 구현되어 있다. 거래 해시는 전송 전에 기록하며, 재시작 뒤 원래 영수증을 조회하고 성공은 한 번만 집계한다. 이는 로컬 회귀 테스트로 검증한 코드 상태이며 운영 배포 증거와는 별개다. 서명자 하나의 nonce·예산 처리를 위해 facilitator는 단일 프로세스로 운영한다.

정산 자동화의 트리거·스케줄러·실행 이력·재시도 정책은 apps/payment-scheduler에 구현되어 있다(§1): 간격 슬롯과 nextAt, payment_runs 이력과 runs 조회, maxAttempts·retryDelayMs, 그리고 자동 재시도하는 두 실패까지. 그 둘의 이유는 서로 다르다: TRANSPORT_ERROR는 결제 헤더가 프로세스를 떠나기 전에 끝난 연결 실패이고, SELLER_UNAVAILABLE은 헤더는 갔지만 판매자가 503으로 "아무것도 청구하지 않았다"고 답한 일시 불가다. 헤더가 나간 뒤에도 재시도가 안전한 것은 후자의 근거가 전송이 아니라 판매자의 답이기 때문이다. 결과가 미확정인 슬롯은 예약을 유지한 채 멈추고 자동 재개하지 않는다.

앞으로 만들 것: