--- kind: CONCEPT slug: messaging-core-api-c05 title: 코드가 실제로 도는 네 지점 topic: schema-and-wire-models project: clean-architecture-backend-template status: 게시 전 sourceRevision: 21234e38cdb9a926cbc92bb97a2aee2e4a7d2916 rootTreeNode: concept:messaging-core-api-c05 evidenceCapturedOn: 2026-09-01 assets: - key: messaging-core-api-c05 file: ../../../final/evidence/rendered/messaging-core-api-c05.svg evidence: - ../../../final/evidence/raw/messaging-core-api-c05.txt source: - 원본 분석 절은 final/document.md#a19-messaging-core-api#L406 이다. module: messaging-core-api --- # 코드가 실제로 도는 네 지점 이 leaf에는 실행 경로가 거의 없다. 실제로 코드가 도는 지점은 넷이다. ## 본문 이 leaf에는 실행 경로가 거의 없다. 실제로 코드가 도는 지점은 넷이다. ## 이 기록이 다루는 범위 :::evidence key="messaging-core-api-c05" alt="코드베이스에서 파일 목록을 만든 출력 25줄. 이 기록이 다루는 범위가 그 목록이다." caption="코드베이스 파일 목록 — 25줄 · exit 0" zoom="true" ::: ## 네 지점 1. **봉투 생성** — `new MessageEnvelope<>(...)` → 14개 non-null 검사 + partitionKey/orderingKey wire 검사 2. **헤더 생성** — `MessageHeaders.application/platform(Map)` → 개수(≤64) → 이름별 예약/자격증명/중복 검사 → 총 바이트(≤32,768) 3. **식별자 생성** — `MessageId.newId()` → `UuidV7.next()` → `AtomicLong.updateAndGet(advance)` 4. **결과 조립** — `new PublishResult(...)` / `new SettlementResult(...)` → 조합 검증 ## 나머지가 있는 곳 나머지는 전부 인터페이스 선언이고, 구현은 `messaging-runtime-core`·`messaging-kafka`·`messaging-rabbit` 등 다른 leaf가 소유한다.