72 KiB
Stage 1·Stage 2 세부 Task별 개선 방안 리포트
1. 작성 목적
본 리포트는 discrepancy_report_1.md의 "5. 근본 원인 분석" 및 "6. 개선 제안"을 Stage 1과 Stage 2의 실제 task 구조에 맞추어 세분화한 개선 설계서이다.
분석 대상 오류는 C-001과 C-013 물품대금 청구권에서 발생한 다음 문제들이다.
- 하나의 물품대금 채권에 대한
김선웅 = 원채무자,오민한 = 상호속용 영업양수인의 중첩 책임 구조를C-001,C-013두 개의 단독 청구처럼 분리하였다. F-004(2021. 11. 5. 전화 독촉),F-023(2024. 5. 4. 최고)이 Stage 1에는 존재했으나 Stage 2의source_fact_ids에서 빠져, 지연손해금 기산일이2021. 11. 6.이 아니라2024. 8. 6.로 밀렸다.- 이행각서의 세부 조항인
2024. 8. 31. 변제기 재설정이 구조화되지 않아, 채무승인·시효중단·변제기 재설정 구조가 청구원인에 반영되지 않았다. - 상법 제42조의
상호속용 영업양수인 책임전용 해석 모듈이 없어, C-013이 "상호속용 또는 채무인수 등"이라는 모호한 법률구성으로 작성되었다. - Stage 2의 1원고 x 1피고 atomicity가 동일 채무의 공동/부진정연대 책임을 재결합할 수 있는 후속 구조 없이 적용되었다.
- Stage 2와 Stage 3의 역할 분리 때문에, 소멸시효·영업양수인 책임 등 청구원인 자체에 필수적인 예상 항변 대응이 Stage 2 문안에서 누락되었다.
본 리포트의 목표는 위 문제를 "프롬프트를 조금 더 똑똑하게" 만드는 수준이 아니라, Stage 1과 Stage 2의 산출물 계약, task 간 데이터 전달 방식, 검증 게이트, 모듈 구조를 함께 개선하는 것이다.
2. 전체 개선 방향
2.1 핵심 아키텍처 원칙
개선 후 파이프라인은 다음 원칙을 따라야 한다.
-
청구권 성립 fact와청구범위/방어 fact를 분리하여 보존한다.- 예: 물품대금 채권 발생은 F-003, 이행지체 기산은 F-004, 시효중단은 F-023/F-029, 영업양수인 책임은 F-026/F-027/F-047이다.
-
1원고 x 1피고후보 구조는 유지하되, 동일 채무의 중첩 책임은liability_group_id로 재결합 가능하게 한다.- Stage 2 Task B에서 atomic claim을 만들더라도, Stage 2.2 또는 Stage 2.3에서
liability_group_id단위 통합 문안을 생성해야 한다.
- Stage 2 Task B에서 atomic claim을 만들더라도, Stage 2.2 또는 Stage 2.3에서
-
금전채권에는 별도
money_claim_timeline을 생성한다.- 권리발생일, 지급기일, 최초 이행청구일, 지연손해금 기산일, 최고 발송일, 최고 도달일, 채무승인일, 새 변제기, 소멸시효 기간, 시효중단 근거를 구조화한다.
-
영업양도·상호속용 책임에는 별도
commercial_successor_liability구조를 둔다.- 단순히 "영업양도" fact가 있다는 수준을 넘어, 상법 제42조 제1항/제2항 요건을 검사한다.
-
Stage 2 claim_description은 Stage 3의 모든 항변 전략을 앞당겨 쓰는 단계는 아니지만, 청구원인 성립 및 청구범위에 직접 영향을 주는 방어형 필수 쟁점은 반드시 반영해야 한다.
- 소멸시효, 제척기간, 피고적격, 승계책임, 이행기, 지연손해금 기산일은 Stage 2에서 다룬다.
2.2 새 공통 데이터 구조 제안
아래 additive field들은 기존 schema를 깨지 않는 방식으로 추가한다.
{
"money_claim_timeline": {
"claim_arising_date": "2021-06-05",
"original_due_date": null,
"is_due_date_unspecified": true,
"first_demand_date": "2021-11-05",
"first_default_start_date": "2021-11-06",
"notice_dispatch_date": "2024-05-04",
"notice_arrival_date": "2024-05-06",
"acknowledgement_date": "2024-08-05",
"new_due_date_if_any": "2024-08-31",
"limitation_period": "3 years",
"limitation_start_date": "2021-06-05",
"limitation_interruption_basis": "최고 후 6개월 내 채무승인",
"interest_start_date": "2021-11-06",
"pre_service_rate": "6%",
"post_service_rate": "12%",
"source_fact_ids": ["F-003", "F-004", "F-023", "F-029"],
"source_evidence_indexes": ["E-018", "E-029"],
"unresolved_items": ["notice_arrival_date requires explicit extraction if only dispatch date exists"]
}
}
{
"commercial_successor_liability": {
"transferor": "김선웅",
"transferee": "오민한",
"business_name": "해드림(SUN-DREAM)",
"transfer_date": "2024-07-05",
"business_assets_transferred": true,
"trade_name_continued": true,
"customers_or_employees_succeeded": "unknown",
"debt_arose_before_transfer": true,
"debt_is_business_debt": true,
"no_liability_registration_exists": "unknown",
"internal_debt_exclusion_clause": "unknown",
"third_party_opposability": false,
"legal_basis": "상법 제42조 제1항",
"liability_relation_with_transferor": "imperfect_joint_and_several",
"source_fact_ids": ["F-003", "F-026", "F-027", "F-047"],
"source_evidence_indexes": ["E-020", "E-028"]
}
}
{
"claim_fact_roles": {
"core_entitlement_fact_ids": ["F-003"],
"debtor_acknowledgement_fact_ids": ["F-029"],
"default_and_interest_fact_ids": ["F-004"],
"limitation_interruption_fact_ids": ["F-023", "F-029"],
"successor_liability_fact_ids": ["F-026", "F-027", "F-047"],
"expected_defense_fact_ids": ["F-023", "F-029", "F-047"]
}
}
{
"liability_group": {
"liability_group_id": "LG-IC-01-money-200m-KYW-KSW-OMH",
"underlying_claim_type": "물품대금",
"creditor": "강용원",
"principal_debtor": "김선웅",
"co_liability_parties": [
{
"party": "김선웅",
"role": "principal_debtor"
},
{
"party": "오민한",
"role": "business_transferee_using_trade_name"
}
],
"joint_liability_type": "imperfect_joint_and_several",
"principal_amount": "200,000,000",
"relief_party_phrase": "피고 김선웅과 피고 오민한은 공동하여",
"source_claim_ids": ["C-001", "C-013"]
}
}
3. Stage 1 개선 방안
Stage 1의 임무는 사건 개요 파악이지만, 현재 문제의 상당 부분은 Stage 1의 세부 구조화 손실에서 출발한다. 특히 금전채권 사건에서는 증거문서와 상담문서의 "주문에 직접 영향을 주는 부대사실"을 초기부터 구조화해야 한다.
3.1 Stage 1 Task_A: client_goal.json 생성 개선
현재 역할
Task_A는 client_meeting.md만 읽고 client_goal.json을 생성한다. 현재 산출물에는 primary_goal, constraints, summary_key_incidents, parties, aliases, defendant_target_matrix, issue_clusters, current_control_map 등이 포함된다.
본 사건에서 Task_A는 IC-01 인테리어 자재대금 채권, 후보 피고 김선웅, 오민한, 그리고 오민한 = 김선웅 사업 양수인을 포착하였다. 그러나 "동일 채무에 대한 공동 책임 구조"와 "금전채권 timeline 필요성"은 별도 machine-readable 구조로 남기지 않았다.
개선 목표
Task_A는. 사건군별로 다음 정보를 명확히 남겨야 한다.
- 동일 채무에 대해 복수 피고가 책임질 가능성이 있는지
- 원채무자와 승계/인수/보증/상호속용 책임자의 역할이 다른지
- 금전채권 사건군에서 지급기일, 이행청구, 최고, 채무승인, 시효가 쟁점이 될 가능성이 있는지
- 상담문서에 나타난 상호, 영업양도, 상호속용, 채무불승계 약정, 책임부인 등을 issue cluster에 보존할지
추가 필드 제안
issue_clusters[*]에 다음 additive field를 추가한다.
{
"cluster_id": "IC-01",
"cluster_label": "인테리어 자재대금 채권",
"candidate_plaintiffs": ["강용원"],
"candidate_defendants_or_counterparties": ["김선웅", "오민한"],
"desired_relief_keywords": ["금전"],
"monetary_claim_profile": {
"underlying_claim_type": "물품대금",
"principal_amount_candidate": "2억 원",
"principal_debtor_candidates": ["김선웅"],
"successor_or_secondary_liability_candidates": [
{
"party": "오민한",
"candidate_role": "영업양수인",
"candidate_basis": "김선웅 사업 양수인"
}
],
"default_or_limitation_issue_expected": true,
"known_demand_or_notice_signals": ["전화 지급 요구", "최고서", "이행각서"],
"requires_money_claim_timeline": true
},
"liability_group_hint": {
"same_underlying_debt": true,
"possible_joint_or_overlapping_liability": true,
"principal_debtor": "김선웅",
"secondary_liability_candidates": ["오민한"],
"candidate_joint_liability_type": "unknown_until_legal_module"
},
"commercial_successor_liability_hint": {
"business_transfer_mentioned": true,
"trade_name_or_business_name_candidates": ["해드림(SUN-DREAM)"],
"transferee_candidates": ["오민한"],
"requires_article_42_review": true
}
}
프롬프트 개선 문구
Task_A의 EXTRACTION_OBJECTIVES에 다음 지시를 추가한다.
<MONETARY_CLAIM_CLUSTER_RULE>
- 금전청구 사건군에서 원채무자 외 보증인, 채무인수자, 영업양수인, 상호속용자, 공동채무자 후보가 함께 등장하면 이를 별도 후보 피고로만 나열하지 말고 `liability_group_hint`로 묶어 보존한다.
- 동일 금액, 동일 원채권, 동일 원고를 기준으로 복수 피고가 책임질 가능성이 있으면 `same_underlying_debt=true`로 둔다.
- 지급기일, 이행청구, 최고, 채무승인, 이행각서, 소멸시효, 변제기 재설정 단서가 등장하면 `requires_money_claim_timeline=true`로 둔다.
- 영업양도, 상호 계속 사용, 사업 양수인, 채무승계 부인 단서가 등장하면 `commercial_successor_liability_hint.requires_article_42_review=true`로 둔다.
</MONETARY_CLAIM_CLUSTER_RULE>
검증 게이트
Task_A 최종 검증에 다음 항목을 추가한다.
- 동일 사건군에
원채무자 + 승계/양수/보증 책임 후보가 있는데도liability_group_hint가 비어 있지 않은가 - 금전청구 사건군에 최고·이행각서·변제기·시효 단서가 있는데도
requires_money_claim_timeline이 false가 아닌가 - 영업양도 또는 상호 단서가 있는데도
commercial_successor_liability_hint가 빠지지 않았는가
3.2 Stage 1 Task_B1: evidence_indexed.json 생성 개선
현재 역할
Task_B1은 evidence_all.json과 client_meeting.md를 사용하여 authority evidence catalog인 evidence_indexed.json을 생성한다. 현재는 key_facts, key_dates, key_amounts, doc_semantic_flags, contract_components, 일부 legal_calculation_object(s)를 기록한다.
본 사건에서 E-018 이행각서는 key_facts: 김선웅의 자재대금 변제 약속, key_dates: 2024-08-05 정도로 요약되었고, 2024. 8. 31. 새 변제기는 구조화되지 않았다. E-029 최고 통지서도 발송일은 잡혔으나 도달일 또는 시효중단 relevance가 충분히 구조화되지 않았다.
개선 목표
Task_B1은 금전채권 관련 문서에 대해 일반 key_* 요약 외에 claim_document_components를 생성해야 한다.
특히 다음 문서는 세부 조항 분해가 필수이다.
- 이행각서
- 최고서/내용증명/통지서
- 차용증/매매계약서/납품서
- 채무승인서/변제확인서
- 영업양도계약서
추가 필드 제안: 금전채권 문서 컴포넌트
{
"claim_document_components": [
{
"component_id": "E-018-CDC-01",
"component_kind": "debt_acknowledgement",
"underlying_claim_type": "물품대금",
"creditor_candidates": ["강용원"],
"debtor_candidates": ["김선웅"],
"principal_amount": "2억 원",
"acknowledgement_date": "2024-08-05",
"new_due_date": "2024-08-31",
"acknowledgement_text_summary": "김선웅이 자재대금 2억 원 변제를 약속",
"source_locator": {
"locator_type": "paragraph",
"locator_hint": "이행각서 본문",
"excerpt": "자재대금 변제 약속 및 변제기"
}
}
]
}
{
"claim_document_components": [
{
"component_id": "E-029-CDC-01",
"component_kind": "demand_notice",
"underlying_claim_type": "물품대금",
"sender_candidates": ["강용원"],
"recipient_candidates": ["김선웅"],
"dispatch_date": "2024-05-04",
"arrival_date": "2024-05-06",
"demanded_claim_amount": "2억 원",
"demanded_performance": "자재대금 변제",
"limitation_relevance_tags": ["pre_limitation_expiry_demand"],
"source_locator": {
"locator_type": "document",
"locator_hint": "최고 통지서",
"excerpt": "자재대금 변제 독촉"
}
}
]
}
추가 필드 제안: 영업양도 문서 컴포넌트 확장
기존 contract_components의 business_transfer에 다음 필드를 추가한다.
{
"component_id": "E-020-CC-01",
"component_kind": "business_transfer",
"business_name": "해드림(SUN-DREAM)",
"transferor_candidates": ["김선웅"],
"transferee_candidates": ["오민한"],
"business_assets_transferred": true,
"trade_name_continuation_clause": true,
"customer_or_employee_succession_clause": true,
"pre_transfer_debt_exclusion_clause": true,
"liability_exclusion_registration_clause": null,
"amount": "2억 원",
"date": "2024-07-05"
}
프롬프트 개선 문구
Task_B1의 DOC_SEMANTIC_FLAGS 및 contract_components 규칙 근처에 다음 규칙을 추가한다.
<CLAIM_DOCUMENT_COMPONENT_RULES>
- 문서가 이행각서, 채무승인서, 최고서, 내용증명, 지급요구서, 변제약정서, 차용증, 납품대금 확인서이면 `claim_document_components`를 생성한다.
- 단순 key_dates에 문서작성일만 넣고 끝내지 말고, 문서 안에 지급기일, 새 변제기, 최고 도달일, 채무승인일, 청구금액, 채권자, 채무자가 직접 읽히면 component field로 분해한다.
- `key_dates`에는 문서 작성일뿐 아니라 법률효과 후보일인 `arrival_date`, `new_due_date`, `acknowledgement_date`를 의미별로 구분하여 `claim_document_components` 안에 보존한다.
- 이행각서에서 "언제까지 지급한다"는 문구가 있으면 반드시 `new_due_date` 후보로 분리한다.
- 최고서에서 발송일과 수령일/도달일이 모두 있으면 `dispatch_date`와 `arrival_date`를 분리한다.
</CLAIM_DOCUMENT_COMPONENT_RULES>
검증 게이트
doc_semantic_flags에claim_doc이 있는데claim_document_components가 비어 있으면 경고- 이행각서 문서에
변제,지급,까지, 날짜 표현이 함께 있는데new_due_date가 없으면 경고 - 최고서 문서에 수령/도달 단서가 있는데
arrival_date가 없으면 경고 - 영업양도계약서에 상호/영업명 단서가 있는데
business_name또는trade_name_continuation_clause가 없으면 경고
3.3 Stage 1 Task_B2: evidence_event_candidates.json 생성 개선
현재 역할
Task_B2는 evidence_indexed.json, evidence_all.json, client_meeting.md를 사용하여 각 증거문서를 사건행위 단위로 분해한다. 현재는 event_kind, event_subkind, action_summary, object_spec, event_date, participants, identity_signature 등을 만든다.
본 사건에서 E-018은 채무변제약정, E-029는 통지/변제독촉, E-020은 영업양도 후보로 잡혔다. 그러나 다음 세부 후보는 충분히 분리되지 않았다.
- 이행각서 작성일과 새 변제기
- 최고 발송일과 도달일
- 채무승인과 변제기 재설정의 법률효과
- 영업양도계약 체결과 상호속용/채무불승계/책임배제 등기 부존재 문제
개선 목표
Task_B2는 금전채권 문서에서 하나의 문서가 여러 법률효과 후보를 담을 때 각각 별도 event candidate로 분해해야 한다.
예를 들어 E-018 이행각서는 다음 후보를 분리할 수 있다.
- 채무승인 event
- 변제기 재설정 event
- 변제약정 event
E-029 최고 통지서는 다음 후보를 분리할 수 있다.
- 최고 발송 event
- 최고 도달 state/event
- 시효중단 relevance candidate
E-020 영업양도계약서는 다음 후보를 분리할 수 있다.
- 영업양도계약 event
- 상호속용/영업동일성 candidate
- 채무불승계 약정 candidate
- 책임배제 등기 필요성 candidate
추가 candidate 스키마
{
"event_kind": "채권관리",
"event_subkind": "채무승인",
"action_summary": "김선웅의 자재대금 채무 승인",
"event_date": "2024-08-05",
"legal_effect_candidates": {
"acknowledgement_of_debt": true,
"limitation_interruption_candidate": true,
"new_limitation_start_candidate": "2024-08-05",
"related_claim_type": "물품대금"
}
}
{
"event_kind": "채권관리",
"event_subkind": "변제기재설정",
"action_summary": "김선웅이 자재대금 변제기를 2024. 8. 31.로 정함",
"event_date": "2024-08-31",
"legal_effect_candidates": {
"new_due_date_candidate": "2024-08-31",
"default_start_candidate": "2024-09-01",
"related_acknowledgement_date": "2024-08-05"
}
}
{
"event_kind": "통지",
"event_subkind": "최고도달",
"action_summary": "강용원의 최고가 김선웅에게 도달",
"event_date": "2024-05-06",
"legal_effect_candidates": {
"demand_notice_arrival": true,
"limitation_preservation_notice": true,
"related_claim_type": "물품대금"
}
}
{
"event_kind": "영업양도",
"event_subkind": "상호속용책임후보",
"action_summary": "오민한이 해드림 영업을 양수하고 상호를 계속 사용하는 책임 후보",
"event_date": "2024-07-05",
"commercial_successor_candidates": {
"transferor": "김선웅",
"transferee": "오민한",
"business_name": "해드림(SUN-DREAM)",
"article_42_candidate": true,
"same_business_identity_candidate": true,
"trade_name_continuation_candidate": true
}
}
프롬프트 개선 문구
<MONEY_CLAIM_EVENT_SPLIT_RULES>
- claim_doc 문서가 채무승인, 최고, 변제기, 변제약정, 지급기일을 함께 포함하면 하나의 generic event로 압축하지 말고 legal effect별 candidate를 분리한다.
- 이행각서에는 최소한 `채무승인`, `변제약정`, `변제기재설정` 후보가 있는지 검토한다.
- 최고서에는 `최고발송`, `최고도달`, `시효보전 relevance` 후보가 있는지 검토한다.
- 발송일과 도달일이 다르면 각각 별도 event_date로 보존한다.
</MONEY_CLAIM_EVENT_SPLIT_RULES>
<BUSINESS_TRANSFER_EVENT_SPLIT_RULES>
- business_transfer_doc 문서는 단순 영업양도 formation event로만 끝내지 않는다.
- 문서 또는 상담내용에서 상호, 영업명, 영업자산, 고객관계, 고용관계, 채무불승계 조항, 책임배제 등기 필요성이 보이면 `commercial_successor_candidates`로 분해한다.
- 상법 제42조 책임을 최종 확정하지는 않되, downstream이 요건판단을 할 수 있도록 transferor, transferee, business_name, trade_name_continuation_candidate, debt_exclusion_clause_candidate를 남긴다.
</BUSINESS_TRANSFER_EVENT_SPLIT_RULES>
검증 게이트
claim_doc에 최고/채무승인 문서가 있는데legal_effect_candidates가 전혀 없으면 경고business_transfer_doc에commercial_successor_candidates가 없으면 경고- 동일 문서 내 복수 날짜가 모두
key_dates로만 묶이고 event candidate에서 의미별로 분리되지 않으면 경고
3.4 Stage 1 Task_C: BO.json, actio_case_signals.json 생성 개선
현재 역할
Task_C는 client_meeting.md, evidence_event_candidates.json, evidence_indexed.json, Juristic_Act.md를 사용하여 BO 단위 사건행위를 합성한다.
현재 BO에는 F-004에 해당하는 전화 독촉, F-023에 해당하는 최고 발송, F-029에 해당하는 이행각서 작성이 생성되어 있다. 그러나 이들 사이의 "금전채권 timeline chain"은 일반적인 ReasonRefs, PriorAct 수준에 머물러 있고, downstream이 "이 fact들은 C-001/C-013의 지연·시효 fact다"라고 인식할 별도 구조는 없다.
개선 목표
Task_C는 BO 생성 시 다음 chain을 명확히 만들어야 한다.
-
underlying_claim_chain- F-003: 물품대금 채권 발생
- F-004: 최초 이행청구 및 지체 발생
- F-023: 최고 발송/도달
- F-029: 채무승인 및 변제기 재설정
-
successor_liability_chain- F-026: 영업양도
- F-027: 해드림 운영/상호속용 후보
- F-047: 오민한 책임 부인
-
liability_group_hint- 동일 원채권에 대해 김선웅과 오민한이 중첩 책임 후보로 연결됨
BO optional additive field 제안
{
"id": "bh23",
"BOType": "event",
"Action": "강용원이 김선웅에게 자재대금 변제를 독촉하는 최고 통지서를 발송하였다.",
"claim_chain_tags": ["money_claim_notice", "limitation_preservation"],
"claim_chain_ref": {
"chain_id": "MCT-IC-01-강용원-김선웅-물품대금",
"underlying_claim_bo_id": "bh3",
"prior_demand_bo_id": "bh4",
"role_in_chain": "demand_notice"
},
"money_claim_effect": {
"notice_dispatch_date": "2024-05-04",
"notice_arrival_date": "2024-05-06",
"limitation_interruption_candidate": true
}
}
{
"id": "bh29",
"claim_chain_tags": ["debt_acknowledgement", "new_due_date"],
"claim_chain_ref": {
"chain_id": "MCT-IC-01-강용원-김선웅-물품대금",
"underlying_claim_bo_id": "bh3",
"prior_notice_bo_id": "bh23",
"role_in_chain": "acknowledgement_after_notice"
},
"money_claim_effect": {
"acknowledgement_date": "2024-08-05",
"new_due_date": "2024-08-31",
"limitation_interruption_candidate": true
}
}
{
"id": "bh26",
"commercial_successor_chain_ref": {
"chain_id": "CSL-IC-01-KSW-OMH-해드림",
"underlying_claim_chain_id": "MCT-IC-01-강용원-김선웅-물품대금",
"role_in_chain": "business_transfer"
},
"commercial_successor_effect": {
"transferor": "김선웅",
"transferee": "오민한",
"business_name": "해드림(SUN-DREAM)",
"article_42_candidate": true
}
}
actio_case_signals와 별도 case_liability_signals 분리
현재 Task_C는 사해행위 의심 구조를 actio_case_signals.json에 남긴다. 본 문제는 사해행위가 아니라 금전채권·상호속용 책임 문제이므로 별도 산출물이 필요하다.
새 파일 제안:
case_liability_signals.json
예시:
{
"schema_version": "case_liability_signals.v1",
"money_claim_chains": [
{
"chain_id": "MCT-IC-01-강용원-김선웅-물품대금",
"creditor": "강용원",
"principal_debtor": "김선웅",
"claim_type": "물품대금",
"principal_amount": "2억 원",
"underlying_claim_bo_id": "bh3",
"default_or_demand_bo_ids": ["bh4", "bh23"],
"acknowledgement_bo_ids": ["bh29"],
"requires_limitation_review": true,
"requires_interest_start_review": true
}
],
"commercial_successor_liability_chains": [
{
"chain_id": "CSL-IC-01-KSW-OMH-해드림",
"underlying_money_claim_chain_id": "MCT-IC-01-강용원-김선웅-물품대금",
"transferor": "김선웅",
"transferee": "오민한",
"business_name": "해드림(SUN-DREAM)",
"business_transfer_bo_id": "bh26",
"operation_or_trade_name_bo_ids": ["bh27"],
"liability_denial_bo_ids": ["bh47"],
"requires_article_42_review": true
}
],
"liability_group_hints": [
{
"liability_group_id": "LG-IC-01-money-200m-KYW-KSW-OMH",
"underlying_money_claim_chain_id": "MCT-IC-01-강용원-김선웅-물품대금",
"candidate_parties": ["김선웅", "오민한"],
"candidate_relation": "principal_debtor_and_business_transferee"
}
]
}
검증 게이트
money_claim_notice,debt_acknowledgement,business_transfer가 같은 issue cluster에 있는데case_liability_signals가 생성되지 않으면 경고PriorAct만 존재하고claim_chain_ref가 없으면 경고- 영업양도 BO가 있고 원채권 BO가 같은 사건군에 있는데
commercial_successor_liability_chains가 비어 있으면 경고
3.5 Stage 1 Task_B3: evidence_actio_support.json 개선
현재 역할
Task_B3는 사해행위취소 및 가액배상 계산용 문서별 sparse support를 생성한다.
본 사건 관련성
본 물품대금 오류의 직접 원인은 사해행위 support가 아니다. 그러나 현재 파이프라인은 사해행위에 대해서는 별도 support delta를 두고, 금전채권·상호속용 책임에 대해서는 별도 support delta가 없다는 구조적 비대칭이 있다.
개선 방향
Task_B3 자체를 억지로 범용화하기보다는, 같은 패턴으로 새로운 sparse support task를 추가하는 것이 바람직하다.
새 task 제안:
Task_B4:evidence_money_claim_support.json생성Task_B5:evidence_commercial_successor_support.json생성
다만 기존 task 수를 늘리기 어렵다면 Task_B3와 유사한 sparse delta 설계를 Stage 1 후반에 추가하는 것으로 충분하다.
evidence_money_claim_support.json 예시
[
{
"evidence_index": "E-018",
"money_claim_support": {
"support_role_tags": ["채무승인", "변제기재설정"],
"claim_type": "물품대금",
"creditor_candidate": "강용원",
"debtor_candidate": "김선웅",
"principal_amount": "2억 원",
"acknowledgement_date": "2024-08-05",
"new_due_date": "2024-08-31",
"proof_strength": "direct"
}
},
{
"evidence_index": "E-029",
"money_claim_support": {
"support_role_tags": ["최고", "시효보전"],
"claim_type": "물품대금",
"sender_candidate": "강용원",
"recipient_candidate": "김선웅",
"dispatch_date": "2024-05-04",
"arrival_date": "2024-05-06",
"proof_strength": "direct"
}
}
]
evidence_commercial_successor_support.json 예시
[
{
"evidence_index": "E-020",
"commercial_successor_support": {
"support_role_tags": ["영업양도", "상호속용후보"],
"transferor": "김선웅",
"transferee": "오민한",
"business_name": "해드림(SUN-DREAM)",
"transfer_date": "2024-07-05",
"business_assets_transferred": true,
"trade_name_continuation_candidate": true,
"pre_transfer_debt_exclusion_clause_candidate": true,
"proof_strength": "direct"
}
}
]
3.6 Stage 1 Task_D1: Fact_Ledger_base.json 생성 개선
현재 역할
Task_D1은 BO.json과 evidence_indexed.json을 읽어 1 BO = 1 Fact 원칙으로 Fact_Ledger_base.json을 생성한다. 현재 schema에는 legal_calculation_object가 있으나, 금전채권 timeline이나 상호속용 책임 구조를 담는 전용 field는 없다.
개선 목표
Fact Ledger는 downstream의 가장 중요한 join target이다. 따라서 Task_D1은 BO의 optional field와 evidence support를 안전하게 fact 레벨로 투영해야 한다.
추가 field 제안
각 fact에 다음 additive field를 허용한다.
{
"money_claim_effect": {
"chain_id": "MCT-IC-01-강용원-김선웅-물품대금",
"effect_type": "underlying_claim|first_demand|demand_notice|notice_arrival|debt_acknowledgement|new_due_date",
"claim_type": "물품대금",
"creditor_candidate": "강용원",
"debtor_candidate": "김선웅",
"principal_amount": "2억 원",
"event_date": "2024-08-05",
"legal_effect_date": "2024-08-31",
"interest_or_limitation_relevance": ["default_start", "limitation_interruption"]
}
}
{
"commercial_successor_effect": {
"chain_id": "CSL-IC-01-KSW-OMH-해드림",
"effect_type": "business_transfer|business_operation|liability_denial",
"transferor": "김선웅",
"transferee": "오민한",
"business_name": "해드림(SUN-DREAM)",
"article_42_candidate": true,
"source_evidence_indexes": ["E-020"]
}
}
{
"claim_chain_ref": {
"issue_cluster_id": "IC-01",
"money_claim_chain_id": "MCT-IC-01-강용원-김선웅-물품대금",
"commercial_successor_chain_id": "CSL-IC-01-KSW-OMH-해드림",
"liability_group_id": "LG-IC-01-money-200m-KYW-KSW-OMH",
"role_in_claim_chain": "debt_acknowledgement"
}
}
safe slot 병합 개선
현재 Task_D1은 linked evidence의 legal_calculation_object를 safe slot 기준으로 병합한다. 여기에 다음 compatibility class를 추가한다.
-
money_claim_notice_class- 최고, 지급요구, 내용증명, 독촉
- compatible field:
dispatch_date,arrival_date,demanded_amount,demanded_claim_type
-
debt_acknowledgement_class- 이행각서, 채무승인서, 변제약정서
- compatible field:
acknowledgement_date,new_due_date,principal_amount
-
business_successor_class- 영업양도계약서, 상호속용 관련 통지, 책임부인 통지
- compatible field:
transferor,transferee,business_name,trade_name_continued,debt_exclusion_clause
검증 게이트
- BO에
claim_chain_ref가 있는데 Fact에claim_chain_ref가 누락되지 않았는지 확인 - BO 또는 evidence에
new_due_date가 있는데 Fact에 누락되지 않았는지 확인 - 영업양도 Fact에
commercial_successor_effect가 없는지 확인 money_claim_effect.effect_type=debt_acknowledgement인데acknowledgement_date가 없는지 확인
3.7 Stage 1 Task_D2: fact_actio_support.json 개선 및 범용화 제안
현재 역할
Task_D2는 BO.json, evidence_actio_support.json, actio_case_signals.json을 사용하여 BO 단위 사해행위 support를 normalized support object로 병합한다.
개선 방향
Task_D2 자체는 사해행위 전용으로 유지하되, 같은 패턴의 fact_money_claim_support.json과 fact_commercial_successor_support.json 병합 task를 추가하는 것이 좋다.
새 task 제안:
Task_D3:fact_money_claim_support.jsonTask_D4:fact_commercial_successor_support.json
fact_money_claim_support.json 예시
[
{
"source_bo_id": "bh3",
"money_claim_support": {
"chain_id": "MCT-IC-01-강용원-김선웅-물품대금",
"role": "underlying_claim",
"creditor": "강용원",
"debtor": "김선웅",
"principal_amount": "2억 원",
"claim_arising_date": "2021-06-05"
}
},
{
"source_bo_id": "bh4",
"money_claim_support": {
"chain_id": "MCT-IC-01-강용원-김선웅-물품대금",
"role": "first_demand",
"first_demand_date": "2021-11-05",
"interest_start_candidate": "2021-11-06"
}
},
{
"source_bo_id": "bh23",
"money_claim_support": {
"chain_id": "MCT-IC-01-강용원-김선웅-물품대금",
"role": "limitation_notice",
"notice_dispatch_date": "2024-05-04",
"notice_arrival_date": "2024-05-06"
}
},
{
"source_bo_id": "bh29",
"money_claim_support": {
"chain_id": "MCT-IC-01-강용원-김선웅-물품대금",
"role": "debt_acknowledgement",
"acknowledgement_date": "2024-08-05",
"new_due_date": "2024-08-31"
}
}
]
fact_commercial_successor_support.json 예시
[
{
"source_bo_id": "bh26",
"commercial_successor_support": {
"chain_id": "CSL-IC-01-KSW-OMH-해드림",
"role": "business_transfer",
"transferor": "김선웅",
"transferee": "오민한",
"business_name": "해드림(SUN-DREAM)",
"transfer_date": "2024-07-05"
}
},
{
"source_bo_id": "bh27",
"commercial_successor_support": {
"chain_id": "CSL-IC-01-KSW-OMH-해드림",
"role": "post_transfer_operation",
"operator": "오민한",
"business_name": "해드림(SUN-DREAM)",
"operation_start_date": "2024-07-05"
}
},
{
"source_bo_id": "bh47",
"commercial_successor_support": {
"chain_id": "CSL-IC-01-KSW-OMH-해드림",
"role": "liability_denial",
"denying_party": "오민한",
"counterparty": "강용원",
"denial_date": "2024-12-27"
}
}
]
3.8 Stage 1 Task_Display 개선
현재 역할
Task_Display는 stage1.html을 생성하여 사건 구조를 사람이 볼 수 있게 한다.
개선 목표
사람이 Stage 1 결과를 검토할 때, 단순 fact timeline뿐 아니라 다음 경고가 보여야 한다.
- 금전채권 timeline 누락 경고
- 지연손해금 기산일 후보
- 소멸시효 쟁점 후보
- 동일 채무 복수 책임자 후보
- 상법 제42조 검토 필요 후보
표시 섹션 제안
stage1.html에 다음 섹션을 추가한다.
금전채권 타임라인
- 원채권: F-003 / 2021. 6. 5. / 물품대금 2억 원
- 최초 이행청구: F-004 / 2021. 11. 5.
- 지연손해금 기산 후보: 2021. 11. 6.
- 최고: F-023 / 2024. 5. 4. 발송 / 2024. 5. 6. 도달 후보
- 채무승인: F-029 / 2024. 8. 5.
- 새 변제기: 2024. 8. 31. 후보
복수 책임자 후보
- 원채무자: 김선웅
- 영업양수인 후보: 오민한
- 책임 법리 후보: 상법 제42조 상호속용 영업양수인 책임
- 통합 청구취지 필요성: 높음
4. Stage 2 개선 방안
Stage 2는 현재 오류가 실제 청구권 서술로 확정된 단계다. 따라서 개선의 핵심은 Stage 1에서 보강한 구조를 Stage 2가 소비하고, 1원고 x 1피고 후보를 유지하면서도 최종 소장 문안 단위에서는 재결합할 수 있게 하는 것이다.
4.1 Stage 2.1 Task_A: claim_identification_view.json 생성 개선
현재 역할
Task_A는 Stage 1 산출물인 Fact_Ledger_base.json, BO.json, evidence_indexed.json, evidence_event_candidates.json, 사해행위 support 등을 모아 claim_identification_view.json을 생성한다.
현재 Task_A는 fact별 풍부한 projection을 만들지만, claim chain 단위의 집계 구조는 약하다. F-004, F-023은 view에는 존재했으나 C-001/C-013의 source fact로 선택되지 않았다.
개선 목표
Task_A는 단순 fact view 외에 다음 index를 만들어야 한다.
money_claim_chain_indexcommercial_successor_chain_indexliability_group_hint_indexfact_role_projection
output schema 추가 제안
{
"schema_version": "claim_identification_view.v3",
"items": [],
"money_claim_chain_index": [
{
"chain_id": "MCT-IC-01-강용원-김선웅-물품대금",
"creditor": "강용원",
"principal_debtor": "김선웅",
"claim_type": "물품대금",
"principal_amount": "2억 원",
"core_entitlement_fact_ids": ["F-003"],
"default_and_interest_fact_ids": ["F-004"],
"limitation_interruption_fact_ids": ["F-023", "F-029"],
"debtor_acknowledgement_fact_ids": ["F-029"],
"recommended_money_claim_timeline": {
"claim_arising_date": "2021-06-05",
"interest_start_date_candidate": "2021-11-06",
"limitation_period": "3 years"
}
}
],
"commercial_successor_chain_index": [
{
"chain_id": "CSL-IC-01-KSW-OMH-해드림",
"underlying_money_claim_chain_id": "MCT-IC-01-강용원-김선웅-물품대금",
"transferor": "김선웅",
"transferee": "오민한",
"business_name": "해드림(SUN-DREAM)",
"successor_liability_fact_ids": ["F-026", "F-027", "F-047"],
"article_42_review_required": true
}
],
"liability_group_hint_index": [
{
"liability_group_id": "LG-IC-01-money-200m-KYW-KSW-OMH",
"underlying_money_claim_chain_id": "MCT-IC-01-강용원-김선웅-물품대금",
"candidate_claim_fact_roles": {
"core_entitlement_fact_ids": ["F-003"],
"default_and_interest_fact_ids": ["F-004"],
"limitation_interruption_fact_ids": ["F-023", "F-029"],
"successor_liability_fact_ids": ["F-026", "F-027", "F-047"]
},
"candidate_parties": [
{"party": "김선웅", "role": "principal_debtor"},
{"party": "오민한", "role": "business_transferee_using_trade_name"}
]
}
]
}
projection logic 개선
Task_A는 다음 방식으로 chain index를 생성한다.
Fact_Ledger_base.money_claim_effect가 있으면 같은chain_id로 묶는다.claim_chain_ref.money_claim_chain_id가 있으면money_claim_chain_index에 반영한다.commercial_successor_effect또는commercial_successor_chain_ref가 있으면commercial_successor_chain_index에 반영한다.case_liability_signals.json이 있으면 이를 우선 사용하고, 없으면 fact projection으로 fallback한다.
검증 게이트
items에 F-004/F-023이 있고 F-003과 같은 chain으로 연결 가능한데money_claim_chain_index에서 빠지지 않았는가business_transfer_docfact가 있고 원채권 fact가 있는데commercial_successor_chain_index가 비어 있지 않은가- 동일 원고·동일 금액·원채무자·영업양수인 후보가 있는데
liability_group_hint_index가 없는가
4.2 Stage 2.1 Task_B: claims_identified.json 생성 개선
현재 역할
Task_B는 본안 청구권을 식별하고 claims_identified.json을 생성한다. 현재 지시에 따르면 identified_claims는 각 항목이 1원고 x 1피고 구조가 되도록 분해된다.
문제점
1원고 x 1피고 구조 자체가 문제는 아니다. 문제는 atomic entry를 만든 뒤 동일 채무의 중첩 책임을 재결합할 metadata가 없다는 점이다.
개선 목표
Task_B는 다음을 수행해야 한다.
- atomic claim entry를 유지한다.
- 각 entry에
liability_group_id,liability_role,joint_liability_type_candidate를 추가한다. source_fact_ids를 성립사실만 담는 필드로 축소하지 말고,claim_fact_roles를 추가한다.- 금전채권 사건에는
money_claim_timeline_required=true를 부여한다. - 상호속용 영업양수인 책임 사건에는
commercial_successor_liability_required=true를 부여한다. - 통합 문안 생성을 위한
claim_groupingtop-level 구조를 추가한다.
개선된 identified_claims 예시
{
"claim_id": "C-001",
"claim_title": "물품대금 청구",
"plaintiffs": ["강용원"],
"defendants": ["김선웅"],
"claim_statement": "원고 강용원은 피고 김선웅을 상대로 물품대금 청구를 할 수 있다.",
"source_fact_ids": ["F-003", "F-004", "F-023", "F-029"],
"claim_fact_roles": {
"core_entitlement_fact_ids": ["F-003"],
"default_and_interest_fact_ids": ["F-004"],
"limitation_interruption_fact_ids": ["F-023", "F-029"],
"debtor_acknowledgement_fact_ids": ["F-029"]
},
"liability_group_id": "LG-IC-01-money-200m-KYW-KSW-OMH",
"liability_role": "principal_debtor",
"joint_liability_type_candidate": "imperfect_joint_and_several",
"money_claim_chain_id": "MCT-IC-01-강용원-김선웅-물품대금",
"money_claim_timeline_required": true,
"review_flags": [],
"completeness": null
}
{
"claim_id": "C-013",
"claim_title": "물품대금 청구",
"plaintiffs": ["강용원"],
"defendants": ["오민한"],
"claim_statement": "원고 강용원은 피고 오민한을 상대로 상호속용 영업양수인 책임에 기초한 물품대금 청구를 할 수 있다.",
"source_fact_ids": ["F-003", "F-004", "F-023", "F-026", "F-027", "F-029", "F-047"],
"claim_fact_roles": {
"core_entitlement_fact_ids": ["F-003"],
"default_and_interest_fact_ids": ["F-004"],
"limitation_interruption_fact_ids": ["F-023", "F-029"],
"successor_liability_fact_ids": ["F-026", "F-027", "F-047"],
"debtor_acknowledgement_fact_ids": ["F-029"]
},
"liability_group_id": "LG-IC-01-money-200m-KYW-KSW-OMH",
"liability_role": "business_transferee_using_trade_name",
"commercial_successor_chain_id": "CSL-IC-01-KSW-OMH-해드림",
"commercial_successor_liability_required": true,
"joint_liability_type_candidate": "imperfect_joint_and_several",
"review_flags": ["ARTICLE_42_REVIEW"],
"completeness": ["COMMERCIAL_SUCCESSOR_ELEMENTS_TO_CONFIRM"]
}
top-level claim_grouping 예시
{
"claim_groups": [
{
"claim_group_id": "CG-IC-01-money-claim",
"liability_group_id": "LG-IC-01-money-200m-KYW-KSW-OMH",
"claim_ids": ["C-001", "C-013"],
"group_type": "same_underlying_debt_multiple_liability_parties",
"recommended_relief_party_structure": "joint_or_imperfect_joint_and_several",
"principal_amount": "200,000,000",
"requires_group_level_claim_description": true
}
]
}
source_fact_ids 선택 규칙 개선
Task_B에 다음 규칙을 추가한다.
<SOURCE_FACT_ROLE_RULES>
- 금전채권 청구에서 `source_fact_ids`는 권리발생 fact만 포함해서는 안 된다.
- 청구취지의 원금, 이자, 지연손해금 기산일, 소멸시효, 승계책임에 직접 영향을 주는 fact를 역할별로 포함한다.
- `source_fact_ids`는 기존 downstream 호환을 위해 모든 관련 fact의 union으로 유지하되, 반드시 `claim_fact_roles`에 역할별 분류를 남긴다.
- 권리발생 fact와 이행지체/시효 fact를 구별하지 못하면 `MONEY_TIMELINE_REVIEW`를 review_flags에 추가한다.
</SOURCE_FACT_ROLE_RULES>
1원고 x 1피고 규칙 보정
<ATOMICITY_WITH_GROUPING_RULE>
- identified_claims는 1원고 x 1피고 atomic entry로 유지할 수 있다.
- 그러나 동일 원채권, 동일 원고, 동일 금액에 대해 원채무자와 보증인/영업양수인/채무인수자/상호속용자가 함께 존재하면 반드시 같은 `liability_group_id`를 부여한다.
- atomic entry를 만든 사실을 이유로 최종 소장 청구취지가 독립 채무처럼 분리되어서는 안 된다.
- 같은 `liability_group_id`를 가진 entry들은 Stage 2.2 또는 Stage 2.3에서 group-level description 생성 대상이다.
</ATOMICITY_WITH_GROUPING_RULE>
검증 게이트
- 같은
liability_group_id가 필요한데 claim별로 비어 있지 않은가 source_fact_ids에 F-003만 있고 F-004/F-023/F-029 같은 이행·시효 fact가 누락되지 않았는가DEFENDANT_SCOPE_REVIEW가 붙은 successor liability claim에commercial_successor_chain_id가 없는가- 동일 채무 복수 책임자 후보가 있는데
claim_groups가 없는가
4.3 Stage 2.1 Task_C: claims_identified_case_type.json 생성 개선
현재 역할
Task_C는 Task_B의 청구권에 사건 종류를 부여한다. 현재 C-001과 C-013은 모두 매매대금 청구로 분류되었다.
문제점
C-013은 표면적으로는 매매대금/물품대금 청구이지만, 피고 책임 근거는 상법 제42조 상호속용 영업양수인 책임이다. case_kind가 매매대금 청구만 남으면 Stage 2.2가 단순 매매대금 청구취지 작성 규칙만 불러오고, 상호속용 책임 모듈을 호출할 수 없다.
개선 목표
Task_C는 case_kind와 별도로 liability_basis_kind 또는 sub_liability_basis를 남겨야 한다.
output schema 개선 예시
{
"claim_id": "C-013",
"claim_type": "매매대금 청구",
"case_kind": "매매대금 청구",
"liability_basis_kind": "상호속용 영업양수인 책임",
"liability_basis_code": "COMMERCIAL_CODE_ARTICLE_42",
"underlying_claim_kind": "물품대금",
"requires_commercial_successor_module": true,
"requires_money_claim_timeline_module": true
}
분류 규칙 개선
<LIABILITY_BASIS_CLASSIFICATION_RULE>
- 사건 종류(case_kind)는 주된 청구취지 표제 기준으로 정하되, 피고 책임 근거가 원채무, 보증, 연대보증, 채무인수, 상호속용 영업양수인 책임, 법인격부인, 사용자책임 등으로 달라지면 `liability_basis_kind`를 별도 기재한다.
- 영업양도, 상호 계속 사용, 사업 양수인, 채무승계 부인, 상법 제42조 단서가 있으면 `requires_commercial_successor_module=true`로 둔다.
- 물품대금·대여금·보증채무금 등 금전채권이면 `requires_money_claim_timeline_module=true`로 둔다.
</LIABILITY_BASIS_CLASSIFICATION_RULE>
검증 게이트
claim_title=물품대금 청구이고liability_role=business_transferee_using_trade_name인데liability_basis_kind가 비어 있지 않은가commercial_successor_chain_id가 있는데requires_commercial_successor_module이 false가 아닌가- 금전청구인데
requires_money_claim_timeline_module이 false가 아닌가
4.4 Stage 2.2 preD_assembly: C-XXX_claim_information.json 생성 개선
현재 역할
Stage 2.2의 preD_assembly는 claim별로 claims_identified, claims_identified_case_type, claim_identification_view, Fact_Ledger_base, evidence_indexed, 사해행위 support를 조인하여 C-XXX_claim_information.json을 만든다.
현재 이 단계는 claim_entry.source_fact_ids만 순회하여 fact_id_content를 구성한다. 따라서 Task_B에서 빠진 fact는 downstream으로 전달되지 않는다.
개선 목표
preD_assembly는 claim별 source fact만이 아니라 다음을 함께 조립해야 한다.
claim_fact_rolesmoney_claim_timelinecommercial_successor_liabilityliability_group- 같은
liability_group_id에 속한 sibling claims 요약 - group-level description 생성 여부
조립 로직 개선
현재 로직:
source_fact_ids = uniq_str_list(claim_entry.get("source_fact_ids"))
fact_id_content = [build_fact_block(fact_id=...) for fact_id in source_fact_ids]
개선 로직:
source_fact_ids = union_preserving_order(
claim_entry.source_fact_ids,
claim_entry.claim_fact_roles.core_entitlement_fact_ids,
claim_entry.claim_fact_roles.default_and_interest_fact_ids,
claim_entry.claim_fact_roles.limitation_interruption_fact_ids,
claim_entry.claim_fact_roles.debtor_acknowledgement_fact_ids,
claim_entry.claim_fact_roles.successor_liability_fact_ids
)
그리고 claim_identification_view.money_claim_chain_index와 commercial_successor_chain_index를 조인한다.
output schema 개선 예시
{
"claim_id": "C-013",
"claim_title": "물품대금 청구",
"case_kind": "매매대금 청구",
"liability_basis_kind": "상호속용 영업양수인 책임",
"source_fact_ids": ["F-003", "F-004", "F-023", "F-026", "F-027", "F-029", "F-047"],
"claim_fact_roles": {
"core_entitlement_fact_ids": ["F-003"],
"default_and_interest_fact_ids": ["F-004"],
"limitation_interruption_fact_ids": ["F-023", "F-029"],
"successor_liability_fact_ids": ["F-026", "F-027", "F-047"]
},
"money_claim_timeline": {},
"commercial_successor_liability": {},
"liability_group": {},
"sibling_claims_in_liability_group": [
{
"claim_id": "C-001",
"defendants": ["김선웅"],
"liability_role": "principal_debtor"
}
],
"group_level_description_required": true
}
relief_summary_statement_rule 보강
현재는 case_kind mapping으로 청구취지작성규칙_매매대금청구.md만 들어온다. 개선 후에는 liability basis module prompt도 함께 붙어야 한다.
예시:
{
"relief_summary_statement_rule": ["청구취지작성규칙_매매대금청구.md"],
"liability_basis_rule": ["상호속용_영업양수인_책임_작성규칙.md"],
"money_claim_timeline_rule": ["금전채권_이행기_시효_지연손해금_작성규칙.md"]
}
검증 게이트
claim_fact_roles에 있는 fact가fact_id_content에 모두 포함되었는지 확인liability_group_id가 있는데sibling_claims_in_liability_group가 비어 있지 않은지 확인requires_money_claim_timeline_module=true인데money_claim_timeline이 비어 있지 않은지 확인requires_commercial_successor_module=true인데commercial_successor_liability가 비어 있지 않은지 확인
4.5 Stage 2.2 Reduce: group-level assembly 추가
현재 역할
현재 reduce는 Task_D map-reduce 완료 메시지만 출력한다.
개선 목표
이 reduce 단계에서 claim별 C-XXX_claim_information.json과 별도로 CG-XXX_claim_group_information.json을 생성해야 한다.
특히 같은 liability_group_id를 공유하는 claim들이 있으면 다음 group 파일을 만든다.
{
"claim_group_id": "CG-IC-01-money-claim",
"liability_group_id": "LG-IC-01-money-200m-KYW-KSW-OMH",
"group_type": "same_underlying_debt_multiple_liability_parties",
"source_claim_ids": ["C-001", "C-013"],
"plaintiffs": ["강용원"],
"defendants": ["김선웅", "오민한"],
"principal_amount": "200,000,000",
"joint_liability_type": "imperfect_joint_and_several",
"recommended_relief_party_phrase": "피고 김선웅과 피고 오민한은 공동하여",
"money_claim_timeline": {},
"commercial_successor_liability": {},
"combined_claim_fact_roles": {},
"combined_fact_id_content": [],
"combined_evidence_index_content": []
}
naming rule
- claim-level:
C-001_claim_information.json - group-level:
CG-001_claim_group_information.json - mapping:
claim_group_index.json
group assembly 검증
- 같은
liability_group_id를 가진 claim이 2개 이상이면 반드시 group 파일 생성 - group 파일의
defendants는 sibling claims의 defendants union - group 파일의
combined_fact_id_content는 각 claim의claim_fact_rolesunion - group 파일의
money_claim_timeline은 group 단위 하나만 생성 - group 파일의
recommended_relief_party_phrase가 비어 있으면GROUP_RELIEF_STRUCTURE_REVIEW
4.6 Stage 2.3 load_claim_info 개선
현재 역할
load_claim_info는 개별 C-###_claim_information.json을 로드하고, actio 여부에 따라 모듈 입력을 구성한다.
문제점
현재 입력 단위가 claim 하나이다. 따라서 C-001 문안 생성 시 C-013의 존재를 모르고, C-013 문안 생성 시 C-001과 결합해야 한다는 사실을 충분히 활용하지 못한다.
개선 목표
load_claim_info는 다음을 수행해야 한다.
- 현재 claim이
liability_group_id를 가지고 있으면claim_group_index.json을 조회한다. - group-level 파일이 있으면
group_info_str와group_module_input_str를 추가한다. - group-level description을 생성할 대표 claim인지 판단한다.
- sibling claim은 개별 description을 만들되, 최종 소장/claim_description.md에서는 group description을 우선하도록 표시한다.
output 개선 예시
{
"claim_id": "C-001",
"claim_group_id": "CG-IC-01-money-claim",
"is_group_representative": true,
"group_level_description_required": true,
"group_info_str": "{...}",
"group_module_input_str": "{...}",
"claim_info_str": "{...}"
}
{
"claim_id": "C-013",
"claim_group_id": "CG-IC-01-money-claim",
"is_group_representative": false,
"group_level_description_required": true,
"description_delegated_to_group_claim_id": "C-001"
}
normalized module input 개선
build_normalized_module_input에 다음을 추가한다.
{
"claim_core": {},
"group_core": {
"claim_group_id": "CG-IC-01-money-claim",
"liability_group_id": "LG-IC-01-money-200m-KYW-KSW-OMH",
"source_claim_ids": ["C-001", "C-013"],
"plaintiffs": ["강용원"],
"defendants": ["김선웅", "오민한"],
"joint_liability_type": "imperfect_joint_and_several"
},
"money_claim_timeline": {},
"commercial_successor_liability": {},
"fact_id_content": [],
"evidence_index_content": []
}
4.7 Stage 2.3 generate_module_block 개선
현재 역할
generate_module_block는 현재 사해행위취소 사건에 대해서만 module JSON을 생성한다.
개선 목표
비사해행위 금전채권 사건에도 module block이 필요하다. 특히 다음 두 모듈을 추가한다.
money_claim_timeline_modulecommercial_successor_liability_module
module selection logic 개선
현재:
is_actio(case_kind)이면 사해행위 모듈 선택- 그 외에는 module block 없음
개선:
requires_money_claim_timeline_module=true이면money_claim_timeline_module생성requires_commercial_successor_module=true이면commercial_successor_liability_module생성liability_group_id가 있으면 group module input 사용
money_claim_timeline_module 출력 예시
{
"module_name": "money_claim_timeline_module",
"claim_type": "물품대금",
"creditor": "강용원",
"principal_debtor": "김선웅",
"principal_amount": "200,000,000",
"claim_arising_date": "2021-06-05",
"is_due_date_unspecified": true,
"first_demand_date": "2021-11-05",
"interest_start_date": "2021-11-06",
"notice_dispatch_date": "2024-05-04",
"notice_arrival_date": "2024-05-06",
"acknowledgement_date": "2024-08-05",
"new_due_date": "2024-08-31",
"limitation_period": "3 years",
"limitation_interruption_theory": "최고 후 6개월 내 채무승인",
"pre_service_rate": "6%",
"post_service_rate": "12%",
"source_fact_ids": ["F-003", "F-004", "F-023", "F-029"],
"source_evidence_indexes": ["E-018", "E-029"],
"review_flags": []
}
commercial_successor_liability_module 출력 예시
{
"module_name": "commercial_successor_liability_module",
"legal_basis": "상법 제42조 제1항",
"transferor": "김선웅",
"transferee": "오민한",
"business_name": "해드림(SUN-DREAM)",
"transfer_date": "2024-07-05",
"underlying_debt": {
"creditor": "강용원",
"principal_debtor": "김선웅",
"claim_type": "물품대금",
"principal_amount": "200,000,000",
"arising_date": "2021-06-05"
},
"article_42_elements": {
"business_transfer": true,
"same_trade_name_continued": true,
"pre_transfer_business_debt": true,
"liability_exclusion_registration": "not_found_or_unproven",
"internal_debt_exclusion_not_opposable_to_third_party": true
},
"liability_relation_with_transferor": "imperfect_joint_and_several",
"defense_points_to_address": [
"영업양수 후 채무승인 효과 부인",
"채무불승계 약정 주장",
"책임배제 등기 여부"
],
"source_fact_ids": ["F-003", "F-026", "F-027", "F-047"],
"source_evidence_indexes": ["E-020", "E-028"]
}
검증 게이트
requires_money_claim_timeline_module=true인데 module이 생성되지 않으면 failrequires_commercial_successor_module=true인데 module이 생성되지 않으면 fail- module에
source_fact_ids와source_evidence_indexes가 없으면 fail commercial_successor_liability_module에서legal_basis가 "채무인수 등"처럼 모호하면 review
4.8 Stage 2.3 interpret_claim_metadata 개선
현재 역할
이 task는 청구취지/청구원인을 직접 작성하지 않고, Task 3가 사용할 해석 메타데이터를 생성한다. 현재도 금액, 날짜, 이율, 책임범위 conflict를 식별하도록 되어 있다.
문제점
입력에 F-004, F-023, group 정보, money timeline, commercial successor module이 없으면 아무리 해석 지시가 좋아도 올바른 결론을 만들 수 없다. 그러나 입력이 보강된 후에는 이 task가 가장 중요한 법률 해석 gate가 된다.
개선 목표
이 task는 다음을 반드시 산출해야 한다.
selected_operatives.interest_start_date = 2021-11-06selected_operatives.joint_liability_structureselected_operatives.money_claim_timelineselected_operatives.commercial_successor_liabilitycause_summary_focus에 소멸시효·상법 제42조 항변 대응 포함recommended_relief_construction에 "피고 김선웅과 피고 오민한은 공동하여" 구조 명시
추가 출력 항목 제안
{
"selected_operatives": {
"relief_party_structure": {
"phrase": "피고 김선웅과 피고 오민한은 공동하여",
"joint_liability_type": "imperfect_joint_and_several",
"source": "liability_group + commercial_successor_liability_module"
},
"money_claim_timeline": {
"principal_amount": "200,000,000",
"interest_start_date": "2021-11-06",
"pre_service_rate": "6%",
"post_service_rate": "12%"
},
"commercial_successor_liability": {
"legal_basis": "상법 제42조 제1항",
"transferor": "김선웅",
"transferee": "오민한",
"business_name": "해드림(SUN-DREAM)",
"article_42_elements_satisfied_or_pleadable": true
}
},
"operative_date_candidates": [
{
"date": "2021-11-06",
"meaning": "지연손해금 기산일",
"selected": true,
"basis": "2021. 11. 5. 지급 요구 다음 날"
},
{
"date": "2024-08-06",
"meaning": "채무승인일 다음 날",
"selected": false,
"basis": "이미 이전 이행청구로 지체 발생"
}
],
"cause_summary_focus": [
"물품대금 원채권 발생",
"2021. 11. 5. 이행청구 및 2021. 11. 6. 지체 발생",
"2024. 5. 6. 최고 도달 및 2024. 8. 5. 채무승인에 따른 시효중단",
"상호속용 영업양수인 오민한의 상법 제42조 책임",
"김선웅과 오민한의 부진정연대 또는 공동 책임 구조"
],
"recommended_relief_construction": "피고 김선웅과 피고 오민한은 공동하여 원고에게 200,000,000원 및 이에 대하여 2021. 11. 6.부터 소장부본 송달일까지 연 6%, 그 다음 날부터 다 갚는 날까지 연 12%의 돈을 지급하는 구조"
}
프롬프트 개선 문구
<MONEY_CLAIM_TIMELINE_INTERPRETATION_RULE>
- 금전채권 module이 제공되면 권리발생일, 이행기, 최초 이행청구일, 지연손해금 기산일, 최고 도달일, 채무승인일, 새 변제기를 구분한다.
- 이행기 없는 채권에서 최초 이행청구일이 있으면 그 다음 날을 지연손해금 기산 후보로 우선 검토한다.
- 채무승인일 다음 날을 기산일로 쓰기 전에, 이전 이행청구 또는 지체 발생 사실이 있는지 반드시 확인한다.
- 소멸시효 완성 가능성이 보이면 청구원인에 시효중단 경위를 포함하도록 drafting_guidance에 지시한다.
</MONEY_CLAIM_TIMELINE_INTERPRETATION_RULE>
<LIABILITY_GROUP_INTERPRETATION_RULE>
- 같은 liability_group_id에 속한 claim들은 독립 채무처럼 해석하지 않는다.
- 원채무자와 영업양수인, 보증인, 채무인수자 등이 같은 원채권에 대해 중첩 책임을 부담하면 recommended_relief_construction에 복수 피고 공동/연대/부진정연대 구조를 명시한다.
- atomic claim_id 단위 입력보다 group_info가 우선한다.
</LIABILITY_GROUP_INTERPRETATION_RULE>
<COMMERCIAL_SUCCESSOR_INTERPRETATION_RULE>
- commercial_successor_liability_module이 있으면 오민한의 책임을 "채무인수 등"으로 흐리지 말고 상법 제42조 상호속용 영업양수인 책임으로 우선 구성한다.
- 채무인수는 별도 명시적 승낙·계약 근거가 있을 때만 병렬 또는 예비 법리로 둔다.
- 책임배제 등기 또는 채무불승계 약정은 청구원인에서 예상 항변 반박으로 다룰지 검토한다.
</COMMERCIAL_SUCCESSOR_INTERPRETATION_RULE>
4.9 Stage 2.3 generate_description 개선
현재 역할
generate_description은 최종 relief_summary, cause_summary를 작성한다.
개선 목표
이 task는 group-level 입력이 있는 경우 claim-level description이 아니라 group-level description을 작성해야 한다.
청구취지 생성 규칙
recommended_relief_construction이 있으면 이를 우선한다.liability_group.joint_liability_type이 있으면 복수 피고 문형을 사용한다.money_claim_timeline.interest_start_date를 반드시 반영한다.commercial_successor_liability.legal_basis를 청구원인에 명시한다.- C-001/C-013 같은 sibling claim을 각각 독립 2억 원 청구처럼 쓰지 않는다.
기대 청구취지 형태
1. 피고 김선웅과 피고 오민한은 공동하여 원고 강용원에게 200,000,000원 및 이에 대하여 2021. 11. 6.부터 이 사건 소장부본 송달일까지는 연 6%의, 그 다음 날부터 다 갚는 날까지는 연 12%의 각 비율로 계산한 돈을 지급하라.
2. 소송비용은 피고들이 부담한다.
3. 제1항은 가집행할 수 있다.
기대 청구원인 구조
1. 원고의 김선웅에 대한 물품대금 채권 발생
2. 이행청구 및 지연손해금 기산
3. 최고 및 채무승인에 따른 소멸시효 중단
4. 오민한의 영업양수 및 상호속용 책임
5. 피고들의 예상 항변에 대한 반박
6. 결론
프롬프트 개선 문구
<GROUP_LEVEL_DRAFTING_RULE>
- group_info 또는 liability_group이 제공되면 개별 claim_id의 defendant만 기준으로 문안을 작성하지 않는다.
- 같은 liability_group_id의 source_claim_ids 전체를 하나의 소장 주문 단위로 볼지 먼저 판단한다.
- same_underlying_debt_multiple_liability_parties이면, 중복 청구처럼 보이지 않도록 하나의 본안청구 항에서 피고들의 공동/연대/부진정연대 책임관계를 표시한다.
</GROUP_LEVEL_DRAFTING_RULE>
<MANDATORY_CAUSE_DEFENSE_INTEGRATION_RULE>
- 소멸시효, 제척기간, 승계책임, 영업양수인 책임, 책임배제 등기, 이행기·지연손해금 기산일은 단순 Stage 3 항변이 아니라 청구원인 완성요소가 될 수 있다.
- money_claim_timeline 또는 commercial_successor_liability module이 해당 쟁점을 제공하면 cause_summary에 반드시 반영한다.
- 다만 입력에 없는 판례번호나 구체 법리를 창작하지 말고, module 또는 source가 제공한 범위에서 서술한다.
</MANDATORY_CAUSE_DEFENSE_INTEGRATION_RULE>
검증 게이트
- group-level description인데 청구취지에 피고가 1명만 등장하면 fail
money_claim_timeline.interest_start_date가 있는데 다른 날짜를 기산일로 쓰면 conflict checkcommercial_successor_liability.legal_basis=상법 제42조인데 cause_summary에 상법 제42조 또는 상호속용 영업양수인 책임이 없으면 fail- 소멸시효 쟁점이 marked인데 cause_summary에 최고/채무승인 구조가 없으면 fail
4.10 Stage 2.3 save_description 개선
현재 역할
save_description은 생성된 relief_summary, cause_summary를 기존 claim_info와 결합하여 C-###_claim_description.json을 저장한다.
개선 목표
group-level description을 저장할 수 있어야 한다.
저장 방식 제안
- 대표 claim에는 group-level description을 그대로 저장한다.
- sibling claim에는
delegated_to_group_description을 표시한다. - 별도 group description 파일을 생성한다.
예시:
{
"claim_id": "C-001",
"claim_group_id": "CG-IC-01-money-claim",
"is_group_representative": true,
"source_claim_ids": ["C-001", "C-013"],
"relief_summary": "...피고 김선웅과 피고 오민한은 공동하여...",
"cause_summary": "..."
}
{
"claim_id": "C-013",
"claim_group_id": "CG-IC-01-money-claim",
"is_group_representative": false,
"delegated_to_group_description": "CG-IC-01-money-claim_claim_description.json",
"relief_summary": null,
"cause_summary": null,
"note": "동일 물품대금 채무의 상호속용 영업양수인 책임 부분은 group-level claim description에 통합됨"
}
또는 backward compatibility를 위해 C-013에도 동일 문안을 저장하되 다음 필드를 둔다.
{
"duplicate_group_description": true,
"canonical_group_description_file": "CG-IC-01-money-claim_claim_description.json"
}
4.11 Stage 2.3 assemble_claim_description_md 개선
현재 역할
개별 C-XXX_claim_description.json을 모아 claim_description.md를 만든다.
문제점
현재 방식으로는 C-001과 C-013이 별도 행으로 출력되어, 최종 사용자가 두 개의 독립 물품대금 청구처럼 이해할 수 있다.
개선 목표
group-level description이 있으면 claim_description.md에서는 group 단위로 보여야 한다.
표시 방식 제안
## CG-IC-01-money-claim / 물품대금 청구
| 항목 | 내용 |
|---|---|
| 관련 청구번호 | C-001, C-013 |
| 원고 | 강용원 |
| 피고 | 김선웅, 오민한 |
| 책임구조 | 원채무자 + 상호속용 영업양수인 공동/부진정연대 책임 |
| 청구취지 | 피고 김선웅과 피고 오민한은 공동하여 ... |
| 청구원인 | ... |
개별 C-013 행은 다음처럼 간략히 표시한다.
| C-013 | CG-IC-01-money-claim에 통합됨 | 오민한 | 상호속용 영업양수인 책임 |
검증 게이트
- group description이 있는데 source claim들이 개별 독립 청구처럼 중복 출력되지 않았는지 확인
source_claim_ids가 모두 group 표시 안에 포함되었는지 확인- 최종 markdown에서 동일 원금 2억 원이 두 번 독립 청구처럼 보이지 않는지 확인
5. Default_Agent / Files_to_be_Used 개선 방안
사용자 지시에 따르면 Default_Agent 폴더 파일은 현재 디렉토리의 Files_to_be_Used로 간주된다. 따라서 다음 파일 추가 또는 보강이 필요하다.
5.1 금전채권_이행기_시효_지연손해금_작성규칙.md 추가
포함 내용:
- 이행기 있는 채권/없는 채권 구분
- 민법 제387조 제2항상 이행청구와 지체책임
- 상사채권 연 6%와 소촉법 연 12% 구간
- 물품대금 3년 단기소멸시효
- 최고 후 6개월 내 재판상 청구 또는 승인 구조
- 채무승인의 시효중단 효과
- 지연손해금 기산일 선택 우선순위
기산일 우선순위 예시:
1. 약정 지급기일 다음 날
2. 이행기 없는 채권의 최초 이행청구 다음 날
3. 새 변제기를 정한 채무승인의 경우 새 변제기 다음 날
4. 위 모두 불명확하면 소장부본 송달 다음 날
단, 이미 2번에서 지체가 발생했다면 3번을 새 기산일로 기계적으로 대체하지 말라는 규칙을 명시한다.
5.2 상호속용_영업양수인_책임_작성규칙.md 추가
포함 내용:
- 상법 제42조 제1항 책임요건
- 상호 계속 사용의 의미
- 영업상 채무 범위
- 양도 전 채무인지 여부
- 책임배제 등기의 항변 구조
- 채무불승계 약정의 대외효 한계
- 원채무자와 영업양수인의 부진정연대 구조
- 청구취지 문형
청구취지 문형:
피고 [양도인]과 피고 [양수인]은 공동하여 원고에게 [원금]원 및 이에 대하여 [기산일]부터 이 사건 소장부본 송달일까지는 연 [이율]%의, 그 다음 날부터 다 갚는 날까지는 연 12%의 각 비율로 계산한 돈을 지급하라.
5.3 청구취지작성규칙_매매대금청구.md 보강
현재 매매대금 청구 규칙에는 복수 피고 중첩관계 문형이 있다. 그러나 이를 호출하려면 claim input에 복수 피고 구조가 들어와야 한다. 파일 자체에는 다음 보강을 넣는다.
<상호속용 영업양수인 특칙>
- 원채무자와 영업양수인이 같은 물품대금 채무에 관하여 책임지는 경우, 두 피고를 독립 채무자처럼 분리하지 않는다.
- 상법 제42조 책임이 인정되거나 주장 가능한 경우 `피고들은 공동하여` 또는 사안에 따라 `연대하여` 구조를 우선 검토한다.
- 영업양수인에게만 별도 물품대금 원채무가 발생한 것처럼 쓰지 않는다.
</상호속용 영업양수인 특칙>
6. 구현 우선순위
6.1 1순위: 데이터 손실 방지
가장 먼저 고쳐야 할 것은 F-004/F-023/F-029 같은 부대 fact가 Stage 2.2로 전달되지 않는 문제다.
즉시 구현할 항목:
- Stage 2 Task_B에
claim_fact_roles추가 - Stage 2.2 preD_assembly에서
claim_fact_rolesunion으로fact_id_content구성 - Stage 2.3 interpret/generate에서
default_and_interest_fact_ids,limitation_interruption_fact_ids를 필수 읽기 대상으로 지정
이것만으로도 지연손해금 기산일 오류의 상당 부분을 줄일 수 있다.
6.2 2순위: liability_group 재결합
다음으로 중요한 것은 C-001/C-013을 동일 채무의 책임자 그룹으로 재결합하는 것이다.
즉시 구현할 항목:
- Stage 2 Task_B에
liability_group_id추가 - Stage 2.2 reduce에서
claim_group_information.json생성 - Stage 2.3 load/generate에서 group-level description 우선
- assemble markdown에서 group 단위 표시
6.3 3순위: 금전채권 timeline module
이행기·최고·채무승인·시효·지연손해금은 금전청구 전반에 반복되는 고위험 요소다.
즉시 구현할 항목:
- Stage 1 Task_B1/B2에서
claim_document_components와legal_effect_candidates추가 - Stage 1 Task_C/D1에서
money_claim_effect투영 - Stage 2.3
money_claim_timeline_module생성
6.4 4순위: 상법 제42조 module
상호속용 영업양수인 책임은 사건 빈도는 상대적으로 낮더라도, 적용되면 피고 범위와 책임구조를 크게 바꾼다.
구현 항목:
- Stage 1 Task_A에서
commercial_successor_liability_hint - Stage 1 Task_B1/B2에서 영업양도계약 조항 분해
- Stage 2 Task_C에서
liability_basis_kind - Stage 2.3
commercial_successor_liability_module
6.5 5순위: Stage 2 방어형 필수 쟁점 주입
Stage 3과의 경계를 완전히 무너뜨릴 필요는 없다. 다만 다음 쟁점은 Stage 2 청구원인에 들어가야 한다.
- 소멸시효 완성 가능성과 중단 근거
- 제척기간
- 피고적격/승계책임
- 책임배제 등기 또는 공시 요건
- 이행기와 지연손해금 기산일
7. 회귀 테스트 시나리오
7.1 본 사건 테스트
입력:
- F-003: 2021. 6. 5. 물품대금 채권 발생
- F-004: 2021. 11. 5. 지급 독촉
- F-023: 2024. 5. 4. 최고
- F-026: 2024. 7. 5. 영업양도
- F-027: 오민한 해드림 운영
- F-029: 2024. 8. 5. 이행각서
- F-047: 오민한 책임 부인
기대 결과:
-
claims_identified.json- C-001과 C-013은 같은
liability_group_id - C-001 source roles에 F-004/F-023/F-029 포함
- C-013 source roles에 F-004/F-023/F-026/F-027/F-029/F-047 포함
- C-001과 C-013은 같은
-
C-001_claim_information.jsonmoney_claim_timeline.interest_start_date = 2021-11-06sibling_claims_in_liability_group에 C-013 포함
-
CG-IC-01-money-claim_claim_description.json- 청구취지에 김선웅과 오민한 모두 등장
- 기산일은 2021. 11. 6.
- 청구원인에 상법 제42조 책임과 소멸시효 중단 구조 포함
7.2 원채무자 단독 물품대금 사건
조건:
- 영업양도/보증/채무인수 후보 없음
기대 결과:
liability_group_id는 없거나 single-party group- group-level description 생성 불필요
- money timeline만 반영
7.3 보증인 포함 사건
조건:
- 원채무자 + 연대보증인
기대 결과:
liability_group_id생성liability_role: principal_debtor, joint_guarantor- 상호속용 module은 호출하지 않음
- 보증채무 module 호출
7.4 영업양도는 있으나 상호속용 불명확 사건
조건:
- 영업양도계약은 있으나 상호 계속 사용 자료 없음
기대 결과:
commercial_successor_liability_required=trueARTICLE_42_REVIEW- 청구취지에서는 보수적 구조 또는 예비적 구조 검토
- 청구원인에는 상호속용 입증 필요성 명시
8. 최종 정리
이번 불일치의 핵심은 Stage 2의 문장 생성 실패가 아니라, Stage 1과 Stage 2 사이의 구조화 정보 손실 및 claim grouping 부재다.
개선의 중심은 다음 네 가지이다.
- Stage 1에서 금전채권 문서의 법률효과를
claim_document_components,money_claim_effect,case_liability_signals로 보존한다. - Stage 2 Task_B에서
source_fact_ids를 역할별로 세분화하고, 동일 채무 복수 책임자는liability_group_id로 연결한다. - Stage 2.2에서 claim별 information뿐 아니라 group-level information을 생성한다.
- Stage 2.3에서 금전채권 timeline module과 상호속용 영업양수인 책임 module을 사용하여, 최종 청구취지와 청구원인을 group 단위로 작성한다.
이 구조가 적용되면 C-001과 C-013은 더 이상 별도의 독립 2억 원 청구처럼 작성되지 않는다. 에이전트는 하나의 물품대금 원채권을 중심으로 김선웅의 원채무, 오민한의 상호속용 영업양수인 책임, 2021. 11. 6. 지연손해금 기산일, 2024. 5. 6. 최고 도달 및 2024. 8. 5. 채무승인에 따른 시효중단 구조를 하나의 소장 문안으로 통합할 수 있게 된다.