# Configuration & Schemas

## 1. 목적

이 문서는 Phase 6 런타임 설정 파일과 JSON schema 파일의 역할을 설명합니다.

## 2. 주요 설정 파일 구조

권장 파일 구조:

```text
configs/
  live/
    paper.yaml
    live_approval.yaml
    live_auto.yaml
  brokers/
    alpaca_paper.yaml
    alpaca_live.yaml
  risk/
    default.yaml
  alerts/
    default.yaml
```

## 3. live_config 구성 섹션

- `env`
- `mode`
- `broker`
- `session`
- `order_submission`
- `risk_limits`
- `approval`
- `reconciliation`
- `monitoring`
- `alerts`
- `degraded_modes`

## 4. order_event.schema.json 역할

모든 broker raw event를 canonical execution event로 변환했을 때 검증에 사용한다.
이 schema는 다음 용도에 사용한다.
- adapter contract validation
- replay test fixture validation
- event store write validation

## 5. approval_ticket.schema.json 역할

approval workflow가 있을 때 human review 객체를 검증한다.
이 schema는 다음 용도에 사용한다.
- UI/API 입력 검증
- audit log 저장 검증
- session restart 후 pending approval 복원 검증

## 6. 설정 변경 원칙

- 장중에는 live_config의 핵심 위험 파라미터를 임의 수정하지 않는다.
- 수정이 필요한 경우 새 session 또는 명시적 operator action event를 남긴다.
- schema version을 명시하고 backward compatibility를 관리한다.
