# 공유 베이스 정책 (계획서 D). 신규 테넌트 cold-start 의 기준값. # 모든 값은 우리 플랫폼의 중립 기본값이다(CLEANROOM.md). 특정 고객 운영값 복제 아님. # 실제 운영값은 각 테넌트 YAML/DB 에서 주입한다. 차원 개수만 기능적 설계, 값/라벨은 우리 선택. tenant_id: _base inherits_base: false # 베이스는 자기 자신을 상속하지 않음 name: "Shared Base Policy" state: revenue: thresholds: [10000000, 50000000] # 플랫폼 중립 기본 구간 weights: [0.3, 0.6, 1.0] descriptions: ["low", "mid", "high"] distribution: code_map: {A: 0, B: 1, C: 2} # 중립 예시 코드(테넌트가 자사 코드로 오버라이드) weights: [0.3, 0.6, 1.0] descriptions: ["channel_a", "channel_b", "channel_c"] partner: weights: [0.5, 1.0, 0.3] # single, multiple, none descriptions: ["single", "multiple", "none"] acceptance: thresholds: [0.03, 0.09] weights: [0.3, 0.6, 1.0] descriptions: ["low", "mid", "high"] price_zone: weights: [1.0, 0.5] # at_or_below_anchor(우선협상), above_anchor(협상지속) descriptions: ["at_or_below_anchor", "above_anchor"] # state_space_size 는 차원 곱으로 자동 산출: 3×3×3×3×2 = 162 reward: beta: 0.2 success_reward: 1.0 ongoing_reward: 0.0 failure_penalty: -0.5 penalty_lambda: 0.02 w1: 0.2 w2: 0.2 w3: 0.2 w4: 0.2 w5: 0.2 min_weight: 0.2 max_weight: 0.8 policy: type: ucb learning_rate: 0.1 # 표준 기본값 gamma: 0.95 params: exploration_constant: 1.4142135623730951 # sqrt(2) — 표준 UCB 상수 epsilon: 1.0e-6 action_mapping: type: file # 기본 9카드 — 자동 온보딩(신규 company_id) 테넌트가 물려받는 카드 공간(base 정책 162×9와 정합). # 테넌트는 자사 카탈로그(card.nego_cards/tenant_action_cards)로 override 한다. action_to_card: "0": "NGC-001" "1": "NGC-002" "2": "NGC-003" "3": "NGC-004" "4": "NGC-005" "5": "NGC-006" "6": "NGC-007" "7": "NGC-008" "8": "NGC-009" cards: # file: scripts_cards.json(파일) 사용. backoffice_db: card.nego_cards.script(negodata 편집 정본)를 # 카드코드(action_to_card)로 조회, 없으면 파일 폴백. 테넌트가 자사 카드를 편집하면 backoffice_db 로 전환. source_type: file sync_interval_seconds: 300 connection: {} llm: enabled: false resources: language: ko scripts_dir: resources