{ "version": "1.1", "id": "messaging-admin-runtime-c03", "audience": [ "메시징 플랫폼을 읽는 사람" ], "source_context": { "document": "docs/clean-architecture-backend-template/final/document.md", "document_sha256": "8071fe71b3359d9cf60b95909c26c7b50653ce2f22bbc5fcf6988719bb91236d", "anchor": { "kind": "line", "value": 24574, "line": 24574 } }, "groups": [], "legend": [], "metadata": {}, "title": "재개가 붙는 쪽과 붙지 않는 쪽", "question": "리스의 재개 지점은 어느 실행에 전달되는가?", "type": "dependency", "direction": "LR", "summary": "리스는 리드라이브 실행에 resumeFrom 과 체크포인트 콜백을 넘기지만 리플레이 실행에는 넘기지 않는다.", "alt": "리스에서 리드라이브 실행으로 resumeFrom 전달 화살표가 가고 리플레이 실행으로 가는 화살표는 점선이다.", "long_description": "SSOT §4.5 가 인용한 AdminOperationLease javadoc 은 resumeFrom 이 불리언 대신 리스를 건네는 이유 전부라고 적는다. 크래시 뒤의 재시도는 승인의 새 실행이 아니라 같은 작업의 계속이고, 그것을 새 것으로 다루면 첫 시도가 이미 옮긴 항목을 다시 발행한다. 리플레이 시그니처에는 그 값이 없다.", "composition": { "profile": "component-flow", "diagram_only": true, "reference_ids": [ "payment-event-flow" ], "rationale": "재개 지점이 어느 실행으로 건너가는지가 논지다. 한쪽으로는 건너가지 않는다.", "focus_node": "lease" }, "nodes": [ { "id": "lease", "label": "AdminOperationLease", "kind": "service", "role": "source", "evidence": [ { "start_line": 24574, "end_line": 24582 } ], "assumption": false, "emphasis": "primary" }, { "id": "redrive", "label": "리드라이브 실행", "kind": "service", "role": "sink", "evidence": [ { "start_line": 24574, "end_line": 24582 } ], "assumption": false }, { "id": "replay", "label": "리플레이 실행", "kind": "service", "role": "sink", "evidence": [ { "start_line": 24574, "end_line": 24582 } ], "assumption": false } ], "edges": [ { "id": "a", "from": "lease", "to": "redrive", "label": "resumeFrom 전달", "kind": "request", "evidence": [ { "start_line": 24576, "end_line": 24582 } ], "assumption": false }, { "id": "b", "from": "lease", "to": "replay", "label": "시그니처에 없음", "kind": "request", "evidence": [ { "start_line": 24574, "end_line": 24582 } ], "assumption": false, "style": "dashed", "emphasis": "primary" } ] }