{
  "status": "success",
  "provider": "codex",
  "model": "gpt-5.4",
  "priority_order": [
    "TSM",
    "MU",
    "LLY",
    "GEV",
    "GLDM"
  ],
  "portfolio_note": "This is a wait-heavy batch with 16/16 entries marked WAIT and only about 77,437 KRW strict cash available above the minimum cash buffer, so no immediate new buy should be prioritized. Keep TSM as the highest-quality hold, treat MU/LLY/GEV as conditional starter watch candidates only after confirmed triggers, and refresh GLDM before using it for any allocation decision. Semiconductor exposure should be handled conservatively because both TSM and MU depend on the same AI hardware cycle.",
  "reason_by_ticker": {
    "TSM": {
      "summary": "Best relative priority because it is already held, has the strongest actionable hold profile, positive current score, constructive AI/3nm thesis, and clear support-or-breakout triggers, but no add should occur until stale execution data and resistance-zone confirmation improve.",
      "reason_codes": [
        "existing_position_hold_priority",
        "constructive_medium_term_thesis",
        "positive_score_now",
        "support_or_breakout_confirmation_needed",
        "near_resistance",
        "stale_degraded_execution_data",
        "review_required_before_add"
      ],
      "review_required": true
    },
    "MU": {
      "summary": "Highest non-held watch candidate on triggered score and data coverage, supported by AI/HBM and DRAM fundamentals, but should remain starter-only because price is extended near resistance, intraday confirmation is incomplete, and semiconductor concentration is already represented by TSM.",
      "reason_codes": [
        "strong_triggered_watch_candidate",
        "constructive_medium_term_thesis",
        "breakout_confirmation_required",
        "pullback_support_confirmation_alternative",
        "extended_near_resistance",
        "semiconductor_concentration_risk",
        "stale_degraded_execution_data"
      ],
      "review_required": true
    },
    "LLY": {
      "summary": "Ranks ahead of GEV on diversification and healthcare exposure, with a constructive growth and pipeline thesis, but entry is not ready while price sits near the 200-day support area without volume, RSI, or MACD confirmation.",
      "reason_codes": [
        "diversification_benefit",
        "constructive_medium_term_thesis",
        "breakout_not_confirmed",
        "support_test_near_200dma",
        "volume_confirmation_missing",
        "event_and_fcf_risks_present",
        "starter_only_if_triggered"
      ],
      "review_required": true
    },
    "GEV": {
      "summary": "Constructive power-demand and grid thesis remains intact, but ranking is reduced by elevated valuation, legal overhang, cooling momentum near resistance, and weaker trigger quality versus MU and LLY.",
      "reason_codes": [
        "constructive_medium_term_thesis",
        "near_resistance_zone",
        "volume_confirmation_missing",
        "momentum_cooling",
        "valuation_risk_elevated",
        "legal_overhang_present",
        "starter_only_if_triggered"
      ],
      "review_required": true
    },
    "GLDM": {
      "summary": "Lowest action priority because the run contains missing analysis, no trigger plan, no instrument thesis, and no actionable timing signal; maintain only as a held watch item until refreshed analysis is available.",
      "reason_codes": [
        "missing_analysis_for_held_position",
        "insufficient_data_coverage",
        "no_actionable_trigger",
        "rule_only_decision",
        "not_actionable_now",
        "refresh_analysis_required"
      ],
      "review_required": true
    }
  }
}