[feat] negodata: 카드 변수 카탈로그에 전술 변수 6종 추가

agent 전술 재설계로 늘어난 치환 변수를 편집기 툴바·칩에 노출:
제시가(input_price)·협력사 직전가(prev_partner_price)·제안가(counter_price)·
중간가(target_mid_price)·절충가(middle_price)·인하율(discount_rate).
name 은 agent chat_engine.vars_for 치환 키와 일치. 라벨은 렌더 시점 조회라
기존 저장 카드도 마이그레이션 없이 한글 라벨로 표기된다.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
hbyang 2026-07-10 13:37:50 +09:00
parent 1682481b01
commit afacd74382

View File

@ -7,11 +7,18 @@ export type CardVariable = {
label: string; // 칩·툴바에 보이는 한글 라벨 (예: 목표가) label: string; // 칩·툴바에 보이는 한글 라벨 (예: 목표가)
}; };
// 라벨은 카드 작성자(구매 담당) 관점 용어. name 은 agent 치환 키(chat_engine.vars_for)와 일치해야 한다.
export const CARD_VARIABLES: CardVariable[] = [ export const CARD_VARIABLES: CardVariable[] = [
{ name: 'target_price', label: '목표가' }, { name: 'target_price', label: '목표가' },
{ name: 'anchor_price', label: '앵커가' }, { name: 'anchor_price', label: '앵커가' },
{ name: 'partner_name', label: '협력사명' }, { name: 'partner_name', label: '협력사명' },
{ name: 'product_name', label: '상품명' }, { name: 'product_name', label: '상품명' },
{ name: 'input_price', label: '제시가' }, // 협력사가 이번에 제시한 가격
{ name: 'prev_partner_price', label: '협력사 직전가' }, // 협력사의 직전 라운드 제시가
{ name: 'counter_price', label: '제안가' }, // 당사가 이번에 제시하는 카운터 가격
{ name: 'target_mid_price', label: '중간가' }, // 앵커·목표 중간값(역제안용)
{ name: 'middle_price', label: '절충가' }, // 당사 직전가·협력사 제시가의 절충값
{ name: 'discount_rate', label: '인하율' }, // 기존 공급가 대비 인하율(%)
]; ];
const VARIABLE_NAMES = new Set(CARD_VARIABLES.map((v) => v.name)); const VARIABLE_NAMES = new Set(CARD_VARIABLES.map((v) => v.name));