chat_v2 멀티턴 대화 기록 + 평가

사용자 발화 ↔ 챗봇 응답 + 추천칩 형태의 대화 시나리오 24개 · 메시지 80개 · invariant 42/42 PASS

레포 ai-real-estate-servicemain HEAD d471c0132026-05-28
24대화 시나리오
80user+bot 메시지
42invariants PASS
0FAIL

멀티턴 대화 기록

기본 대화 흐름 (12)

C01 대전 둔산동 원룸 검색 (사용자 보고 회귀 직격)

사용자가 비서울 지역 발화 시 추천칩에 강남·마포 등 boilerplate 도시명이 누출되면 안 됨

안녕 둔산동 원룸 알아보고 있어
안녕하세요! 둔산동 원룸 보여드릴게요. 예산이나 평수 조건 있으세요?
월세 50 이하투룸도 같이?지하철 도보 5분?바로 추천받을래
월세 50 이하로
둔산동 원룸 월세 50 이하 매물 3건 찾았어요. 둔산초·정부청사역 도보권에 깔끔한 신축 위주예요.
월세 60 이하도 같이?월평동도 같이 볼까?정부청사역 도보 5분?다른 옵션도 보여줘
월평동도 같이 봐줘
둔산동·월평동 두 동네 원룸 월세 50 이하 합쳐서 5건. 월평동은 갤러리아·롯데백화점 권역이 가깝고 단지 신축이 많아요.
보증금 1000 이하만?대전 다른 동도 살펴볼까?대형마트 가까워?이건 별로네요, 다른 거

자동 평가 — invariant 검증

invariantexpectedactualverdict
area_keywords 누적 union['둔산동', '대전', '월평동']['둔산동', '대전', '월평동']PASS
rent_max 보존500000500000PASS
강남 도시명 챕에 없음FalseFalsePASS
backstage (filter/merge raw)
[
  {
    "turn": 1,
    "merge_prev_areas": [],
    "merge_after_areas": [
      "둔산동",
      "대전"
    ]
  },
  {
    "turn": 2,
    "merge_prev_areas": [
      "둔산동",
      "대전"
    ],
    "merge_after_areas": [
      "둔산동",
      "대전",
      "월평동"
    ]
  }
]

C02 예산 감액 대화 — LLM 음수 stochastic 차단 (#sosot03)

사용자 '월세 30 깎아줘' 발화 시 LLM 이 음수(-300000) 출력해도 BE 가 prev (600000) 보존

강남 원룸 월세 60 이하로 찾아줘
강남 원룸 월세 60 이하 매물 3건이에요. 역삼·삼성역 근처가 많아요.
보증금 5천 이하만서초도 같이 볼까?강남역 도보 10분?다른 매물 더
월세 30 깎아줘
예산을 좀 더 빠듯하게 잡고 싶으신가봐요. 현재 누적 월세 한도는 600,000원 (=60만원) 으로 유지했어요. 추가 30만원 감액 의도면 '월세 30 이하' 처럼 명시해주세요.
월세 30 이하 매물만대전·송파 같은 가격대 지역?저렴한 동네 추천?그냥 60 유지

자동 평가 — invariant 검증

invariantexpectedactualverdict
음수 차단 후 prev 보존600000600000PASS
backstage (filter/merge raw)
[
  {
    "turn": 1,
    "merge_after_rent_max": 600000
  },
  {
    "turn": 2,
    "merge_after_rent_max": 600000,
    "note": "LLM mock 이 -300000 출력 → silently skip, prev 600000 보존"
  }
]

C03 POI 발화 — 한밭대 근처 (resolve_place tool 호출)

사용자가 학교명·지하철역 같은 POI 발화 시 챗봇이 행정동으로 변환해서 echo + nearby_umds 안내

한밭대 근처 자취방 알아보고 있어
한밭대 근처라면 대전 유성구 덕명동 쪽이네요. 주변 동네는 궁동(도보 5분), 장대동(차로 5분) 정도가 인근 후보예요. 예산이나 평수 알려주시면 매물 추천해드릴게요.
월세 50 이하덕명동 외 궁동도 같이?학교 도보 10분?바로 추천
월세 40 이하 원룸
덕명동·궁동 원룸 월세 40 이하 매물 4건이에요. 한밭대 정문에서 도보 10-15분 권역이 많고 풀옵션 비율 높아요.
보증금 500 이하만궁동만 따로 볼까?기숙사식 풀옵션?다른 매물 더

자동 평가 — invariant 검증

invariantexpectedactualverdict
응답에 행정동 echo (덕명동)TrueTruePASS
nearby 안내에 인근 동만 (hallucinate 차단)TrueTruePASS
backstage (filter/merge raw)
[
  {
    "turn": 1,
    "tool_called": "resolve_place(keyword='한밭대')",
    "kakao_mock": {
      "sido": "대전",
      "sgg": "유성구",
      "umd": "덕명동"
    },
    "nearby_umds": [
      "궁동(~320m)",
      "장대동(~890m)"
    ]
  }
]

C04 페르소나 — 강아지 + 재택근무 (post_validate 보강)

LLM 이 persona_tags 누락해도 post_validate_filters 가 명시 키워드 매칭으로 보충

강아지 키워서 1층이거나 마당 있으면 좋겠어요. 재택근무 자주 해서 조용한 동네 위주로요.
강아지랑 함께 사실 거고 재택근무 환경 우선이시군요. 1층·마당·조용한 동네 + 인터넷 좋은 곳으로 좁혀볼게요. 지역은 어디 쪽 보고 계세요?
강남구 위주동네 상관없어 추천부터동물병원 가까워?바로 추천
성동구 쪽으로
성동구 1층·마당 있는 매물 보여드릴게요. 성수동·금호동 일대가 신축 빌라 + 펫프렌들리 단지 많아요. 기가 인터넷·방음 OK인 매물 우선이에요.
월세 80 이하만광진구 화양동도 비슷할까?강아지 산책로 좋은 곳?이건 별로네요

자동 평가 — invariant 검증

invariantexpectedactualverdict
'강아지' → pet_owner 보충TrueTruePASS
'재택' → remote_work 보충TrueTruePASS
backstage (filter/merge raw)
[
  {
    "turn": 1,
    "llm_persona_tags": [],
    "post_validate_after": [
      "pet_owner",
      "remote_work"
    ]
  }
]

C05 시급한 입주 — time_pressure + urgency 자동 승급

'당장 다음 주' 발화 시 time_pressure=immediate + urgency=normal→high

당장 다음 주에 입주해야 해요
일정이 급하시네요! 즉시 입주 가능한 매물 우선으로 추천드릴게요. 어느 지역으로 보고 계세요?
강남구 신축어디든 추천부터최대한 빨리 가능한 곳일정은 조정 가능
강남 원룸 보 1000 / 월 60
강남 원룸 보 1천/월 60 매물 중 즉시 입주 OK 인 곳 5건이에요. 역삼·논현 쪽에 신축 비율 높고 짐 들이는데 1-2일 정도 여유 있어요.
보증금 500 이하만서초도 같이?당일 입주 가능?다른 매물 더

자동 평가 — invariant 검증

invariantexpectedactualverdict
time_pressure=immediateTrueTruePASS
urgency 승급 highTrueTruePASS
backstage (filter/merge raw)
[
  {
    "turn": 1,
    "time_pressure_after": "immediate",
    "urgency_after": "high"
  }
]

C06 수도권/부산 다중 지역 매트릭스 (출장 시나리오)

출장으로 양쪽 거점 필요한 사용자 — area_keywords 가 union 으로 양쪽 보존

회사가 강남이고 본가가 부산이어서 양쪽 다 알아봐야 해요
주중엔 강남, 주말엔 부산 거점이 필요하신 거군요. 두 지역 모두 매물 보여드릴게요. 예산 어느 정도 잡으셨어요?
강남 보 5000/월 80, 부산 보 2000/월 50강남만 먼저 볼까?KTX 가까운 곳?바로 추천
강남 보 5천/월 80, 부산은 해운대로
강남 원룸 보 5천/월 80 매물 + 부산 해운대 매물 양쪽 보여드릴게요. 해운대 쪽은 비교적 보 1천/월 40 권역이 많고 해변 인근이에요.
강남 신축만?해운대 외 광안리도?KTX 부산역 가까이?다른 옵션 더

자동 평가 — invariant 검증

invariantexpectedactualverdict
강남 + 해운대 + 부산 unionTrueTruePASS
backstage (filter/merge raw)
[
  {
    "turn": 1,
    "area_keywords_after": [
      "강남"
    ]
  },
  {
    "turn": 2,
    "area_keywords_after": [
      "강남",
      "해운대",
      "부산"
    ]
  }
]

C07 신혼부부 — 투룸 신축 + 생활편의 발화

사용자 '결혼 준비 둘이 살아요' 발화 → persona_tags=newlywed, property_types=tworoom

결혼 준비 중이라 둘이 살 투룸 알아보고 있어요. 마트랑 공원 가까웠으면 좋겠어요.
신혼집 알아보시는군요! 투룸 + 마트·공원 도보권으로 좁혀볼게요. 지역이나 예산 알려주세요.
강서구 위주아파트도 같이?학군 좋은 곳?바로 추천
위례신도시 보 5천/월 100 까지
위례신도시 투룸 보 5천/월 100 이하 매물 4건이에요. 이마트 위례점·중앙광장공원 도보권에 신축 비율 높아요.
보증금 3천 이하만위례 외 송파도?어린이집 가까워?다른 매물 더

자동 평가 — invariant 검증

invariantexpectedactualverdict
'결혼 준비' → newlywed 분류TrueTruePASS
'마트' → nearby_infra=mart 보충TrueTruePASS
'공원' → nearby_infra=park 보충TrueTruePASS
backstage (filter/merge raw)
[
  {
    "turn": 1,
    "persona_tags_after": [
      "newlywed"
    ]
  }
]

C08 학생 페르소나 — 충남대 근처 자취

사용자 '충남대 수업 자주' 발화 → student persona + school 인프라

충남대 자취방 처음 알아봐요. 수업 자주 가야 하고 월세 30 이하면 좋겠어요
첫 자취 응원드려요! 충남대 도보권 + 월세 30 이하로 좁혀볼게요. 충남대 근처라면 궁동·어은동 일대가 매물 많아요.
보증금 500 이하만어은동만 따로 볼까?학교 도보 10분?바로 추천
어은동 풀옵션이면 더 좋겠어요
어은동 원룸 월세 30 이하 풀옵션 매물 3건이에요. 충남대 정문에서 도보 5-8분, 편의점·스타벅스 권역이에요.
월세 25 이하 있어?궁동도 같이?24시 편의점 가까이?다른 매물

자동 평가 — invariant 검증

invariantexpectedactualverdict
'충남대' → student personaTrueTruePASS
'수업' → school infra 보충TrueTruePASS
backstage (filter/merge raw)
[
  {
    "turn": 1,
    "persona_tags_after": [
      "student",
      "single"
    ],
    "nearby_infra_after": [
      "school"
    ]
  }
]

C09 거절 후속 — '비싸다' / '다른 거' 발화

사용자가 매물에 부정 반응 시 sentiment=negative + rejection_reason 자동 추출

강남 원룸 월세 60 이하
강남 원룸 월세 60 이하 3건 추천드려요. 역삼·삼성역 근처 신축 위주예요.
보증금 1000 이하서초도?강남역 도보 5분?다른 매물
비싸요 다른 거 보여줘
가격대가 부담스러우시군요. 인근 송파·관악구는 같은 평수 대비 월세 40 권역으로 떨어져요. 선택지 넓혀드릴까요?
월세 40 이하만송파구 매물 보여줘저렴한 동네 추천?강남 유지하되 다른 매물

자동 평가 — invariant 검증

invariantexpectedactualverdict
'비싸' → sentiment=negativeTrueTruePASS
'다른 거' → rejection_reason 추출TrueTruePASS
backstage (filter/merge raw)
[
  {
    "turn": 2,
    "sentiment_after": "negative",
    "rejection_reason_after": "too_expensive"
  }
]

C10 라이프스타일 — 조용한 주거지 발화

'조용', '도로 시끄러운 거 싫어' → required_amenities=quiet + nearby_infra=park

조용한 동네에 살고 싶어요. 도로 시끄러운 거 진짜 싫어해요
정온한 동네 우선이시군요! 큰 도로에서 떨어진 안쪽 골목 + 단지 깊숙한 매물로 좁혀볼게요. 지역 알려주실 수 있을까요?
동작구 위주어디든 정온한 곳공원 산책 좋은 곳?바로 추천
성동구 옥수동 쪽
옥수동 정온한 매물 3건이에요. 한강 도보권 + 골목 안쪽 신축 위주이고 응봉공원 근처도 조용해요.
보 3천/월 70 이하만금호동도 비슷할까?한강뷰 가능?다른 매물

자동 평가 — invariant 검증

invariantexpectedactualverdict
'조용' → quiet 보충TrueTruePASS
backstage (filter/merge raw)
[
  {
    "turn": 1,
    "required_amenities_after": [
      "quiet"
    ]
  }
]

C11 추천칩 클릭 후속 — '지하철 도보 5분?' 선택 후 deepen

사용자가 persona chip 을 클릭하면 그 라이프스타일 갈래를 deepen 하는 다음 chip 들이 생성

강남 원룸
강남 원룸 매물 3건 보여드릴게요. 평수·예산 알려주시면 더 좁혀드릴 수 있어요.
월세 70 이하서초도 같이?지하철 도보 5분?바로 추천
지하철 도보 5분?
교통 편의 우선이시군요! 강남역·역삼역 도보 5분 매물로 좁혀드릴게요. 역세권 신축 위주 + 큰 차도 떨어진 골목 우선이에요.
강남역 정확히 5분 이내환승역 가까운 곳도?버스도 다양한 동네?다른 매물 더

자동 평가 — invariant 검증

invariantexpectedactualverdict
chip 클릭 후 persona deepenTrueTruePASS
backstage (filter/merge raw)
[
  {
    "turn": 1,
    "chip_clicked": "지하철 도보 5분? (persona)"
  }
]

C12 펫팸족 — 단지 시설·층간소음·강아지 산책로

강아지 키우는 사용자가 1층·마당·층간소음 적은 신축 우선

강아지 두 마리 키우는데 1층이면서 강아지 산책로 좋은 동네 찾아요
강아지랑 함께 사실 환경 우선이군요! 1층·마당 있는 매물 + 펫프렌들리 단지로 좁혀볼게요. 특히 산책로 좋은 위례·동탄 같은 신도시 권역 추천이에요.
위례 단독 1층만동탄도 같이 볼까?동물병원 가까워?바로 추천
층간소음 적었으면 좋겠어요
층간소음 적은 매물은 기둥식(RC조) 구조 + 신축 위주로 좁혀집니다. 위례신도시 신축 1층 + 단지 내 산책로 있는 매물 5건이에요.
월세 90 이하만판교 신축도 비슷?애견 동반 카페 많은 동네?다른 매물 더

자동 평가 — invariant 검증

invariantexpectedactualverdict
'강아지' → pet_ownerTrueTruePASS
'층간소음' → soundproof 보충TrueTruePASS
backstage (filter/merge raw)
[
  {
    "turn": 1,
    "persona_tags_after": [
      "pet_owner"
    ]
  },
  {
    "turn": 2,
    "required_amenities_after": [
      "soundproof",
      "new_building"
    ]
  }
]

매물 응답 quality (2)

C13 매물 0건 fallback — generic 문구 회피

검색 결과 0건일 때 챗봇이 '조건을 완화해보세요' 같은 generic 답변 대신 왜 0건인지 추측 + 구체적 완화안 1-2개

강남 아파트 보 500 월 20 이하
강남 아파트 보 500/월 20 조건은 매물이 거의 없어요. 강남권 아파트는 보 5천+ 월 70 권역이 보통이라 예산이 빡빡한 편이세요. 월세 한도를 50까지 올리거나 인근 송파·관악구도 같이 보면 후보가 늘어요.
월세 50 이하로 확대송파·관악구도 같이강남 원룸·오피스텔도?조건 다시 입력

자동 평가 — invariant 검증

invariantexpectedactualverdict
generic 문구 ('조건을 조금 완화...') 회피TrueTruePASS
구체적 완화안 1-2개 제시TrueTruePASS
backstage (filter/merge raw)
[
  {
    "turn": 1,
    "matched_count": 0,
    "fallback_used": true
  }
]

C14 매물 풍부 (5건+) — 동네/가격대 요약

매물 카드는 FE 가 자동 표시 — chatbot 은 markdown 표 만들지 않고 1-2 문장 요약

강남 원룸 월세 60 이하 추천
강남 원룸 월세 60 이하 매물 5건이에요. 역삼동·논현동 위주이고 신축 비율 60% / 풀옵션 4건이에요. 지하철 도보 5분 이내가 필수이신가요?
도보 5분 이내만서초도 같이?강남역 도보권?다른 매물 더

자동 평가 — invariant 검증

invariantexpectedactualverdict
markdown 표 미사용TrueTruePASS
1-2 문장 요약TrueTruePASS
backstage (filter/merge raw)
[
  {
    "turn": 1,
    "matched_count": 5,
    "table_used": false
  }
]

어색한·엣지 발화 (3)

C15 초단발 발화 — clarify 요청

사용자가 무의미한 짧은 발화 시 챗봇이 친근하게 다시 물어봐서 흐름 회복

아 ㅎㅎ 어떤 매물 찾고 계신가요? 지역이나 평수 알려주시면 추천드릴게요.
지역부터 알려줄게요그냥 알아서 추천처음이라 막막해요나중에 다시
ㅁㄴㅇ
음, 입력이 좀 모호하셨네요 🙂 "강남 원룸 50 이하" 처럼 한 줄로 알려주시면 바로 추천해드릴 수 있어요.
강남 원룸 50 이하막막해서 도움이 필요해요아무거나 추천?그만할게요

자동 평가 — invariant 검증

invariantexpectedactualverdict
짧은 발화에 친근 clarifyTrueTruePASS
clarity_level=vague 추정TrueTruePASS
backstage (filter/merge raw)
[
  {
    "turn": 1,
    "clarity_level": "vague"
  }
]

C16 영어 발화 — 한국어 응답 유지

사용자가 영어로 입력해도 챗봇은 한국어 응답 (서비스 언어 고정)

apartment near gangnam for two people
강남 근처 2인 거주 아파트 찾으시는군요! 투룸 또는 작은 아파트 위주로 보여드릴게요. 예산은 어느 정도 잡으셨어요?
보 5천 / 월 80서초도 같이?신혼이라 신축 우선바로 추천

자동 평가 — invariant 검증

invariantexpectedactualverdict
한국어 응답 유지TrueTruePASS
의미 파악 (2 people → tworoom/apartment)TrueTruePASS
backstage (filter/merge raw)
[
  {
    "turn": 1,
    "input_lang": "en",
    "response_lang": "ko"
  }
]

C17 PII 노출 발화 — 챗봇 마스킹 안내

사용자가 전화번호·계좌·주민번호 등 PII 발화 시 챗봇이 저장 안 함을 안내 (classify_message_safety)

강남 매물 보 5천 월 80 으로 찾아줘, 내 번호는 010-1234-5678 이야
매물 검색은 도와드릴게요. 다만 전화번호 같은 개인정보는 저장하지 않으니 직접 입력하지 않으셔도 괜찮아요. 강남 매물 보 5천/월 80 이하 추천드릴게요.
보증금 3천 이하만서초도?강남역 도보?다른 매물

자동 평가 — invariant 검증

invariantexpectedactualverdict
phone_number 감지TrueTruePASS
PII 저장 안내 + 검색은 계속TrueTruePASS
backstage (filter/merge raw)
[
  {
    "turn": 1,
    "pii_categories": [
      "phone_number"
    ],
    "should_filter_persist_pii": true
  }
]

금액 표현 (2)

C18 금액 단축 표현 — '보 5천 월 30'

사용자가 단축 표현으로 발화 시 LLM 이 deposit_max=50,000,000 / rent_max=300,000 로 추출

강남 원룸 보 5천 월 30
강남 원룸 보 5천(5,000만원)/월 30(30만원) 매물 찾아드릴게요. 예산 빡빡하신 편이라 매물 수가 적을 수 있어요.
월세 35까지 가능관악·동작도 같이?저렴한 동네 추천?바로 추천

자동 평가 — invariant 검증

invariantexpectedactualverdict
'5천' → 50000000TrueTruePASS
'월 30' → 300000TrueTruePASS
backstage (filter/merge raw)
[
  {
    "turn": 1,
    "deposit_max_extracted": 50000000,
    "rent_max_extracted": 300000
  }
]

C19 price_tier 고급 — '비싸도 OK'

사용자가 '비싸도 OK', '고급' 발화 시 price_tier=expensive 자동 추론

강남 비싸도 OK 고급 매물로
프리미엄 매물 위주로 좁혀드릴게요. 한남·청담·도곡 권역의 신축 고급 아파트·오피스텔이 후보예요. 평수나 부대시설 우선순위 알려주세요.
스카이라운지 있는 단지한남동만?한강뷰 가능?바로 추천

자동 평가 — invariant 검증

invariantexpectedactualverdict
'고급' → price_tier=expensiveTrueTruePASS
backstage (filter/merge raw)
[
  {
    "turn": 1,
    "price_tier_after": "expensive"
  }
]

시간 표현 (1)

C20 시간 — '이번 달' = this_month

사용자가 '이번 달 입주' 발화 시 time_pressure=this_month

이번 달 안에 입주 가능한 매물로
이번 달 입주 OK 매물 위주로 추천드릴게요. 지역이나 예산 알려주시면 더 좁혀드릴게요.
강남구 신축어디든 추천입주 1주 안 가능?일정 유연

자동 평가 — invariant 검증

invariantexpectedactualverdict
'이번 달' → this_monthTrueTruePASS
backstage (filter/merge raw)
[
  {
    "turn": 1,
    "time_pressure_after": "this_month"
  }
]

POI 다양성 (2)

C21 없는 POI graceful — Kakao 0건

사용자가 오타·없는 POI 발화 시 챗봇이 정확한 동·구 알려달라고 부드럽게 재요청

ㅇㅇ대학교 근처 매물
'ㅇㅇ대학교' 위치를 못 찾았어요. 정확한 동이나 구 알려주시면 그 동네 매물 추천드릴게요. 혹시 충남대·서울대·고려대 같은 학교 말씀이신가요?
충남대 근처그냥 강남 매물학원가 가까운 곳?다시 입력

자동 평가 — invariant 검증

invariantexpectedactualverdict
0건 시 친근 clarifyTrueTruePASS
hallucinate 도시명 generation 안 함TrueTruePASS
backstage (filter/merge raw)
[
  {
    "turn": 1,
    "kakao_hits": 0,
    "graceful_fallback": true
  }
]

C22 랜드마크 POI — 코엑스 근처

관광지·복합쇼핑몰 같은 랜드마크 발화 시 resolve_place → 행정동 변환

코엑스 근처 매물 있어?
코엑스 근처라면 서울 강남구 삼성동 / 대치동 일대네요. 삼성역·봉은사역 도보권 매물 보여드릴게요. 예산 어느 정도세요?
보 5천/월 80 이하삼성동만?스타필드 코엑스 도보권?바로 추천

자동 평가 — invariant 검증

invariantexpectedactualverdict
랜드마크 POI 정상 resolveTrueTruePASS
응답에 행정동 echo (삼성동)TrueTruePASS
backstage (filter/merge raw)
[
  {
    "turn": 1,
    "tool_called": "resolve_place(keyword='코엑스')",
    "kakao_mock": {
      "sido": "서울",
      "sgg": "강남구",
      "umd": "삼성동"
    }
  }
]

추천칩 클릭 흐름 (2)

C23 change_filter chip 클릭 — 지역 변경 후속

사용자가 'OO 외 XX도 같이?' chip 클릭 시 챗봇이 area_keywords union 처리

강남 원룸
강남 원룸 매물 추천드릴게요. 예산이나 평수 알려주세요.
월세 70 이하서초도 같이?지하철 도보 5분?바로 추천
서초도 같이?
강남 + 서초 원룸 합쳐서 추천드릴게요. 서초는 강남역·교대역 권역이 신축 비율 높고 비슷한 가격대예요.
월세 70 이하만관악도 같이?강남역 도보 5분?다른 매물

자동 평가 — invariant 검증

invariantexpectedactualverdict
chip 클릭 → area unionTrueTruePASS
backstage (filter/merge raw)
[
  {
    "turn": 2,
    "chip_clicked": "change_filter",
    "area_keywords_after": [
      "강남",
      "서초"
    ]
  }
]

C24 reject chip 클릭 — '다른 매물 더' 후속

사용자가 reject chip 클릭 시 챗봇이 같은 조건으로 추가 매물 추천 (shown_ids 제외)

강남 원룸 월세 60 이하
강남 원룸 월세 60 이하 매물 3건이에요. 역삼·논현 신축 위주예요.
보증금 1000 이하서초도?강남역 도보?다른 매물 더
다른 매물 더
이전 3건 외 추가 매물 보여드릴게요. 이번엔 청담·삼성동 권역 매물이 들어왔어요.
월세 70 이하로 확대강남구 외도 같이?스타벅스 가까운 곳?이건 별로

자동 평가 — invariant 검증

invariantexpectedactualverdict
reject 후 shown_ids 제외 매물TrueTruePASS
backstage (filter/merge raw)
[
  {
    "turn": 2,
    "chip_clicked": "reject",
    "shown_ids_excluded": true
  }
]

약한·어색한 부분 자동 검출 결과

검증 시나리오결과현재 상태
매물 0건 fallbackC13generic '조건 완화' 문구 회피 ✓구체적 완화안 1-2개 제시
매물 풍부 응답 톤C14markdown 표 미사용 ✓ / 1-2 문장 요약 ✓FE 가 카드 자동 표시
초단발 발화 (ㅋ, ㅁㄴㅇ)C15친근 clarify ✓clarity_level=vague 추정
영어 발화C16한국어 응답 유지 ✓의미 파악 OK (2 people → tworoom)
PII 노출C17저장 안 함 안내 ✓classify_message_safety + 검색 계속
금액 단축 표현C18'5천' / '월 30' 정상 추출 ✓schema strict + few-shot
price_tier 고급C19'비싸도 OK' → expensive ✓post_validate 추론
시간 표현 다양성C05·C20immediate / this_month 분류 ✓urgency 자동 승급 연동
없는 POIC21hallucinate 도시명 generation 안 함 ✓graceful clarify
랜드마크 POIC22코엑스 → 강남구 삼성동 echo ✓resolve_place 정상
chip 4 카테고리 클릭 후속C11·C23·C24persona/change_filter/reject deepen ✓add_condition 클릭 시나리오 보강 필요
boilerplate 도시명 누출C01·C03·C06·C08·C22모든 응답에 사용자 지역만 echo ✓강남 발화 안 했을 때 강남 0회 등장

추가 개선 사항 (우선순위별)

🔴 P1 — 즉시 보강 권고

#영역현황개선 방향
P1-1헥사고날 — agent.py:28groq.client 직접 importPort 무시, concrete adapter 의존LLMPort 추상화 + DI
P1-2헥사고날 — redis_adapter.py:26-40 의 lazy Pg adapter importadapter→adapter 역방향 의존Composition root 에서 DI
P1-3하드코딩 — post_validation.py 의 8 keyword dictC04·C09 동작 검증되지만 over-engineeringprompt few-shot 강화 → LLM 위임
P1-4테스트 갭 — handle_turn 5-stage end-to-end각 layer 분리 mock 만전체 chain mock 시나리오 1-2

🟡 P2 — 후속 작업

#영역개선 방향
P2-1실 LLM stochastic 미측정 (모든 시나리오 mock)integration scenarios.py 풀 multi-turn 5건 (Groq cost ≈ $0.5)
P2-2workplace_keywords 25 지역명 하드코딩resolve_place 활용으로 위임
P2-3PlaceSearchPort 가 resolve + find_facilities 2 책임ResolvePort + FacilitySearchPort 분리
P2-4import-linter chat_v2 계층 계약 부재application→adapters 금지 contract 추가
P2-5lookup_facility 단위 테스트 0건mock 케이스 5-7개
P2-6운영 모니터링 — chip 분포·CTRFE 이벤트 + Grafana 패널

🟢 P3 — 정당화된 현 정책 (변경 비권고)