--- kind: CONCEPT slug: adapter-outbound-persistence-jpa-c40 title: 재현에 쓴 레인과 복원까지 남긴 기록 topic: state-machines-and-ownership project: clean-architecture-backend-template status: 게시 전 sourceRevision: 21234e38cdb9a926cbc92bb97a2aee2e4a7d2916 rootTreeNode: concept:adapter-outbound-persistence-jpa-c40 evidenceCapturedOn: 2026-09-01 assets: - key: adapter-outbound-persistence-jpa-c40 file: ../../../final/evidence/rendered/adapter-outbound-persistence-jpa-c40.svg evidence: - ../../../final/evidence/raw/adapter-outbound-persistence-jpa-c40.txt source: - 원본 분석 절은 analysis/05-adapter-outbound-persistence-jpa.md#L2883 이다. module: adapter-outbound-persistence-jpa --- # 재현에 쓴 레인과 복원까지 남긴 기록 `postgresqlIdempotencyIntegrationTest` 레인에서 두 경계를 실제로 재현했고, 임시 테스트는 실행 후 source에서 복원했다. ## 본문 `postgresqlIdempotencyIntegrationTest` 레인에서 두 경계를 실제로 재현했다. - `complete()`가 replay TTL을 바꿨을 때의 false-same replay 재현 - 만료된 COMPLETED row의 `inspect()`/`claim()` lifecycle 불일치 재현 원본은 `evidence/raw/066-postgresql-idempotency-replay-boundary-probe.txt`에 있고, 실행 결과는 BUILD SUCCESSFUL이다. 임시 테스트는 실행 후 source에서 복원했다. ## 분석 원문의 실행 기록 :::evidence key="adapter-outbound-persistence-jpa-c40" alt="분석 문서 analysis/05-adapter-outbound-persistence-jpa.md 에서 이 기록의 근거 절을 그대로 잘라낸 15줄. 코드베이스를 측정한 것이 아니라 원본 판정이 무엇을 적었는지를 보여 준다." caption="analysis/05-adapter-outbound-persistence-jpa.md 발췌 — 15줄" zoom="true" :::