--- kind: CONCEPT slug: shared-contract-c04 title: digest는 고정하지만 validator 상호운용은 증명하지 않는다 topic: schema-and-wire-models project: clean-architecture-backend-template status: 게시 전 sourceRevision: 21234e38cdb9a926cbc92bb97a2aee2e4a7d2916 rootTreeNode: concept:shared-contract-c04 evidenceCapturedOn: 2026-09-01 assets: - key: shared-contract-c04 file: ../../../final/evidence/rendered/shared-contract-c04.svg evidence: - ../../../final/evidence/raw/shared-contract-c04.txt source: - 원본 분석 절은 analysis/02-shared-contract.md#L114 이다. module: shared-contract --- # digest는 고정하지만 validator 상호운용은 증명하지 않는다 contracts/messaging/envelope/v1.schema.json은 Draft 2020-12 schema resource이며 envelopeVersion/eventId/contractId/payloadVersion/logicalDestination/aggregate/occurredAt/correlationId/contentType/payload를 required로 고정하고 top-level/aggregate에 unevaluatedProperties:false를 둔다. checked-in SHA-256은 bf6f2e13fafe01b8ef4cbb73d7ba3f5703bfc68d145bdfe43190bf606dbd00b1이다. ## 본문 `contracts/messaging/envelope/v1.schema.json`은 Draft 2020-12 schema resource이며 envelopeVersion/eventId/contractId/payloadVersion/logicalDestination/aggregate/occurredAt/correlationId/contentType/payload를 required로 고정하고 top-level/aggregate에 `unevaluatedProperties:false`를 둔다. checked-in SHA-256은 `bf6f2e13fafe01b8ef4cbb73d7ba3f5703bfc68d145bdfe43190bf606dbd00b1`이다. ## MessagingEnvelopeSchemaResourceTest 참조 위치 :::evidence key="shared-contract-c04" alt="코드베이스에서 MessagingEnvelopeSchemaResourceTest 를 검색한 출력 2줄. 이 기록이 세는 참조가 그 출력에 그대로 보인다." caption="MessagingEnvelopeSchemaResourceTest 코드베이스 검색 — 2줄 · exit 0" zoom="true" ::: ## 테스트가 JDK API로 확인하는 것 schema text 자체, identifier regex parity, Java int/long 경계 vector, strict UTF-8, exact digest. ## 그것이 증명하지 않는 것 resource drift와 digest mismatch는 강하게 막지만, README가 명시하듯 실제 Draft 2020-12 validator interoperability나 broker runtime discovery는 증명하지 않는다.