### 17.1 P3 — 클래스가 비판한 무제한 증가를 형제 맵이 그대로 한다

클래스 javadoc 이 집합 방식을 거부한 이유가 무제한 증가다 — "A set grows without bound for the life of a session".

체크포인트는 그 비판을 지킨다. 세션당 항목 하나이고 순번만 앞으로 간다.

형제 맵은 지키지 않는다.

```java
private final ConcurrentMap<String, String> replayableOutcomes = new ConcurrentHashMap<>();
…
public void recordApplied(GrpcClientStreamMessage<?> message, String outcomeReference, Instant at) {
  checkpoints.put(message.sessionId().value(), checkpoint.advancedTo(message.sequence(), at));
  if (outcomeReference != null && !outcomeReference.isBlank()) {
    replayableOutcomes.put(message.dedupKey(), outcomeReference);   // ← 메시지마다 한 항목
