{
  "schema_version": "2026-05-15-F6-compat-output",
  "analysis_date": "2026-05-15",
  "analysis_scope": {
    "scope_type": "SINGLE_TICKER",
    "tickers": ["005930"],
    "accounts": ["일반계좌"]
  },
  "data_basis": {
    "as_of": "2026-05-15 16:30 KST",
    "timezone": "Asia/Seoul",
    "sources": [
      {
        "name": "sample",
        "type": "CALCULATED",
        "status": "OK",
        "note": "schema validation sample"
      }
    ]
  },
  "capture_read_ledger": [
    {
      "source": "sample",
      "account": "일반계좌",
      "screen_type": "unknown",
      "read_values": {},
      "confidence": 0,
      "applied_to_orders": false,
      "read_status": "NOT_PROVIDED",
      "next_source_to_check": "HTS 보유종목/현금 화면 캡처"
    }
  ],
  "portfolio_decision": {
    "final_action": "WATCH",
    "grade": "C",
    "confidence_score": 50,
    "rationale": "검증용 샘플. 실제 투자 판단 아님."
  },
  "scores": {
    "quality_score": null,
    "valuation_score": null,
    "momentum_score": null,
    "risk_score": 50,
    "strategy_score": null,
    "portfolio_fit_score": null,
    "total_score": null,
    "score_formula": "not_calculated",
    "score_notes": ["검증 샘플이므로 점수 산출 생략"]
  },
  "position_sizing": {
    "status": "NOT_APPLICABLE",
    "recommended_position_size_pct": null,
    "max_allowed_position_size_pct": null,
    "risk_budget": null,
    "atr20": null,
    "calculated_quantity": null,
    "final_quantity": null,
    "reason": "WATCH 샘플로 수량 산출 대상 아님"
  },
  "risk_gate": {
    "status": "CAUTION",
    "cash_floor_status": "UNKNOWN",
    "total_heat_pct": null,
    "hard_stop_triggered": false,
    "triggered_rules": []
  },
  "data_completeness_matrix": [
    {
      "ticker": "005930",
      "name": "삼성전자",
      "price_status": "OK",
      "flow5d_status": "PARTIAL",
      "flow20d_status": "DATA_MISSING",
      "atr20_status": "DATA_MISSING",
      "dart_status": "NOT_APPLICABLE",
      "missing_fields": ["ATR20", "Flow20D"],
      "next_source_to_check": "KRX/Naver/Yahoo 21거래일 OHLC 및 수급",
      "allowed_action": "WATCH_ONLY"
    }
  ],
  "decision_trace": [
    {
      "state": "DATA_COMPLETENESS_CHECK",
      "check_id": "DCC_SAMPLE_001",
      "rule_ref": "spec/09_decision_flow.yaml:decision_flow.states.DATA_COMPLETENESS_CHECK",
      "inputs_used": ["ticker", "ATR20", "Flow20D"],
      "result": "INSUFFICIENT_DATA",
      "selected_action": "WATCH",
      "blocked_actions": ["BUY"],
      "missing_inputs": ["ATR20", "Flow20D"],
      "tie_breaker_applied": "5: 보수적 행동"
    }
  ],
  "orders": [],
  "prohibited_calculations": [
    {
      "item": "buy_quantity",
      "reason": "ATR20 DATA_MISSING",
      "next_source_to_check": "21거래일 OHLC"
    }
  ],
  "triggered_rules": [
    {
      "file": "spec/00_execution_contract.yaml",
      "path": "master_prohibitions.P2_no_atr_extrapolation",
      "result": "BLOCK",
      "explanation": "ATR20 미확인으로 정수 매수수량 산출 금지"
    }
  ],
  "missing_data": [
    {
      "field": "ATR20",
      "status": "DATA_MISSING",
      "next_source_to_check": "Yahoo/Naver OHLC"
    }
  ],
  "invalidation_conditions": [
    {
      "condition": "ATR20 remains DATA_MISSING",
      "action": "NO_BUY_QUANTITY",
      "rule_ref": "spec/00_execution_contract.yaml:master_prohibitions.P2_no_atr_extrapolation"
    }
  ],
  "evidence": [
    {
      "field": "ticker",
      "value": "005930",
      "source": "sample",
      "as_of": "2026-05-15",
      "data_tag": "계산값"
    }
  ],
  "rule_ids_used": ["P2_no_atr_extrapolation"],
  "rules_used": [
    {
      "file": "spec/00_execution_contract.yaml",
      "path": "master_prohibitions.P2_no_atr_extrapolation",
      "result": "USED",
      "explanation": "정수 매수수량 산출 금지 규칙 확인"
    }
  ],
  "summary": "검증용 WATCH 샘플. 실제 투자 판단이 아니다."
}
