{
  "verdicts": [
    {
      "canonical_ticker": "AAPL",
      "display_name": "AAPL",
      "decision_source": "RULE+DEEP",
      "thesis_strength": 0.66,
      "timing_readiness": 0.36,
      "trigger_type": "breakout_confirmation",
      "trigger_horizon": "days_to_weeks",
      "trigger_quality": 0.68,
      "thesis_state": "constructive_but_not_confirmed",
      "semantic_summary": "AAPL thesis is constructive for existing holders, supported by reclaimed moving averages, positive MACD, non-overbought RSI, strong cash flow, margins, and buybacks. Timing is not actionable now because the plan explicitly says WAIT: price is already near 266.43-272 resistance after an 8% rebound and earnings gap risk remains ahead of 2026-04-30. Add only after confirmed breakout above 266.43 with volume and momentum confirmation, or after a controlled 260-262 support hold; otherwise maintain current exposure and cap event risk.",
      "counter_evidence": [
        "Entry action is WAIT and execution feasibility is not actionable now.",
        "Price is pressing 266.43 first resistance and 272 prior supply after an approximately 8% rebound from 246.63.",
        "2026-04-30 earnings introduces gap risk before confirmation.",
        "No intraday snapshot was used, and social sentiment fell back to news-derived coverage.",
        "Premium valuation leaves downside risk if earnings, guidance, AI roadmap, services, iPhone demand, margins, or buyback commentary disappoint."
      ],
      "reason_codes": [
        "held_position_constructive_bias",
        "entry_wait_not_actionable_now",
        "breakout_confirmation_required",
        "near_resistance_after_rebound",
        "earnings_gap_risk",
        "support_pullback_alternative",
        "defined_risk_invalidation_levels",
        "premium_valuation_sensitivity"
      ],
      "review_required": false
    },
    {
      "canonical_ticker": "COST",
      "display_name": "COST",
      "decision_source": "RULE+DEEP",
      "thesis_strength": 0.68,
      "timing_readiness": 0.34,
      "trigger_type": "breakout_confirmation",
      "trigger_horizon": "days_to_weeks",
      "trigger_quality": 0.64,
      "thesis_state": "constructive_but_not_confirmed",
      "semantic_summary": "COST has a constructive medium-term quality-growth thesis supported by revenue/EPS growth, cash flow, ROE, balance sheet strength, membership durability, and dividend growth, but the setup is not actionable now. Price remains below the 994-1000 confirmation zone, 50-day SMA, 10-day EMA, and VWMA, while MACD has weakened and RSI is not confirming a rebound. The correct timing posture is watch and wait for a daily close above 994-1000 with volume and momentum stabilization, or only a smaller exploratory entry if 966-968 support shows clear selling absorption.",
      "counter_evidence": [
        "2026-04-15 close of 984.75 is below 50-day SMA 994.28, 10-day EMA 995.78, and VWMA 998.18.",
        "MACD momentum has faded and RSI 46.18 is not a decisive rebound signal.",
        "New capital is explicitly deferred; entry_action is WAIT and execution_feasibility_now is not_actionable_now.",
        "Premium valuation around P/E 51 and forward P/E 44 leaves meaningful downside if fundamentals disappoint.",
        "Intraday same-day snapshot is missing, reducing confidence in immediate timing."
      ],
      "reason_codes": [
        "constructive_fundamental_thesis",
        "entry_wait_required",
        "below_confirmation_zone",
        "momentum_not_confirmed",
        "specific_breakout_trigger_defined",
        "support_retest_secondary_trigger",
        "premium_valuation_risk",
        "intraday_snapshot_missing"
      ],
      "review_required": false
    },
    {
      "canonical_ticker": "ETHU",
      "display_name": "ETHU",
      "decision_source": "RULE+DEEP",
      "thesis_strength": 0.62,
      "timing_readiness": 0.38,
      "trigger_type": "breakout_confirmation",
      "trigger_horizon": "days_to_weeks",
      "trigger_quality": 0.72,
      "thesis_state": "constructive_but_not_confirmed",
      "semantic_summary": "ETHU has a constructive short-term rebound thesis and existing small held exposure can be maintained, but the timing is not actionable for adding now. Confirmation requires a daily close above the 29.5-30.0 resistance area with volume clearly above the 2026-04-15 level, or a controlled pullback that holds near 25.3 with improving ETH-USD and volume support.",
      "counter_evidence": [
        "Entry action is explicitly WAIT and execution feasibility is not actionable now.",
        "The 29.5-30.0 resistance breakout has not been confirmed.",
        "Recent high momentum weakened, with the 2026-04-15 high below the 2026-04-14 high.",
        "ETHU is a 2x leveraged Ether product with ATR around 8%, daily reset risk, gap risk, and volatility decay.",
        "Intraday same-day snapshot is missing and social data is news-derived rather than direct."
      ],
      "reason_codes": [
        "constructive_momentum_but_wait",
        "breakout_not_confirmed",
        "volume_confirmation_required",
        "held_position_can_continue",
        "leveraged_etf_high_volatility",
        "specific_price_volume_trigger",
        "risk_defined_by_close_levels",
        "intraday_snapshot_missing"
      ],
      "review_required": false
    },
    {
      "canonical_ticker": "ETN",
      "display_name": "ETN",
      "decision_source": "RULE+DEEP",
      "thesis_strength": 0.68,
      "timing_readiness": 0.38,
      "trigger_type": "breakout_confirmation",
      "trigger_horizon": "days_to_weeks",
      "trigger_quality": 0.62,
      "thesis_state": "constructive_but_not_confirmed",
      "semantic_summary": "ETN has a constructive medium-term thesis supported by price above key moving averages, solid fundamentals, AI/data-center/grid demand, and analyst target upgrades, but the action is explicitly WAIT/HOLD. Timing is not yet actionable because price failed to hold $400 or break $407.83, momentum indicators are decelerating, and same-day intraday confirmation is missing. Adds should wait for support confirmation near $387-$390 with RSI stability or a volume-backed close above $407.83 and sustained trade above $400.",
      "counter_evidence": [
        "Entry action is WAIT and execution feasibility now is not actionable.",
        "Price failed to hold $400 and failed to break $407.83.",
        "MACD histogram is decelerating and RSI has fallen from the high 60s toward 62.",
        "Intraday same-day snapshot is missing, reducing confidence in immediate timing.",
        "Elevated valuation and upcoming Q1 guidance risk argue against aggressive adds before confirmation."
      ],
      "reason_codes": [
        "constructive_medium_term_thesis",
        "entry_wait_not_actionable_now",
        "breakout_not_confirmed",
        "support_confirmation_needed",
        "momentum_decelerating",
        "elevated_valuation_risk",
        "intraday_snapshot_missing"
      ],
      "review_required": false
    },
    {
      "canonical_ticker": "FANG",
      "display_name": "FANG",
      "decision_source": "RULE+DEEP",
      "thesis_strength": 0.68,
      "timing_readiness": 0.34,
      "trigger_type": "breakout_confirmation",
      "trigger_horizon": "days_to_weeks",
      "trigger_quality": 0.61,
      "thesis_state": "constructive_but_not_confirmed",
      "semantic_summary": "FANG has a constructive medium-term bullish thesis supported by oil leverage, cash generation, debt reduction, and analyst target support, but the entry is explicitly not actionable now. Timing requires confirmation either through a constructive 180-181 support hold or a close above the 189-193 supply zone, especially above 193 with RSI back over 50, VWMA recovery, and MACD histogram improvement.",
      "counter_evidence": [
        "Current price is below the 10-day EMA at 189.26 and VWMA at 192.78, so near-term momentum has not confirmed.",
        "RSI is below 50 and MACD histogram remains negative, indicating incomplete buying pressure.",
        "ATR is elevated at about 3.6% of price, making immediate full-size entry unattractive.",
        "Liquidity and balance-sheet risks remain relevant, including low cash, negative working capital, low current ratio, and high net debt.",
        "Intraday same-day snapshot is missing, so current execution timing is less reliable."
      ],
      "reason_codes": [
        "constructive_medium_term_thesis",
        "entry_action_wait",
        "technical_confirmation_required",
        "below_short_term_averages",
        "momentum_not_confirmed",
        "clear_breakout_trigger",
        "support_hold_alternative",
        "elevated_volatility",
        "data_quality_intraday_gap"
      ],
      "review_required": false
    },
    {
      "canonical_ticker": "GEV",
      "display_name": "GEV",
      "decision_source": "RULE+DEEP",
      "thesis_strength": 0.72,
      "timing_readiness": 0.34,
      "trigger_type": "breakout_confirmation",
      "trigger_horizon": "days_to_weeks",
      "trigger_quality": 0.74,
      "thesis_state": "constructive_but_not_confirmed",
      "semantic_summary": "GEV has a constructive medium-term thesis supported by power infrastructure, AI data-center electricity demand, grid/gas/nuclear exposure, positive cash generation, and an intact uptrend above key moving averages. Timing is not actionable now because price is just below the $1000-$1007.38 resistance zone, momentum is slowing, RSI is near overbought, and breakout volume has not confirmed. Entry should wait for a volume-backed close above $1007.38 with follow-through above $1000, or a controlled pullback and support confirmation near the 10-day EMA around $952.",
      "counter_evidence": [
        "Current recommendation is WAIT/WATCH, not immediate buy or add.",
        "Price is extended near the $1000-$1007.38 resistance zone.",
        "RSI near 67.99 suggests proximity to overbought conditions.",
        "MACD histogram is decelerating, reducing near-term momentum quality.",
        "Prior $1007.38 test occurred on lighter volume, weakening breakout confidence.",
        "Vineyard Wind litigation and project-cost uncertainty remain unresolved.",
        "High valuation increases sensitivity to earnings quality, rates, and theme fatigue.",
        "Intraday same-day snapshot is missing, reducing near-term timing confidence."
      ],
      "reason_codes": [
        "bullish_medium_term_thesis",
        "entry_action_wait",
        "resistance_nearby",
        "breakout_not_confirmed",
        "volume_confirmation_required",
        "momentum_decelerating",
        "overbought_risk",
        "pullback_entry_alternative",
        "unresolved_project_litigation_risk",
        "valuation_risk",
        "intraday_snapshot_missing"
      ],
      "review_required": false
    },
    {
      "canonical_ticker": "GLDM",
      "display_name": "GLDM",
      "decision_source": "RULE+DEEP",
      "thesis_strength": 0.66,
      "timing_readiness": 0.38,
      "trigger_type": "breakout_confirmation",
      "trigger_horizon": "days_to_weeks",
      "trigger_quality": 0.72,
      "thesis_state": "constructive_but_not_confirmed",
      "semantic_summary": "GLDM thesis is constructive for existing exposure and conditional overweight because the medium-term gold hedge trend remains intact, price is above the 200-day average, and momentum has recovered. Timing is not actionable now because the plan explicitly says WAIT until either a daily close above 98.00 with volume confirms resistance recovery, or a controlled pullback holds the 93.89-95.00 10-day EMA area. Current action is hold, not add.",
      "counter_evidence": [
        "Entry action is WAIT and execution feasibility is not_actionable_now.",
        "Price remains below the 50-day SMA near 96.98 and faces clustered 97.00-98.00 resistance with the Bollinger upper band near 97.85.",
        "Meaningful adds require confirmation above 98.00, later retest support, or continuation above 100.00 with volume.",
        "Intraday same-day snapshot is missing, reducing confidence in immediate timing.",
        "A close below 92.50 would trigger risk reduction and a break below 90.00 would weaken the medium-term bullish thesis."
      ],
      "reason_codes": [
        "constructive_medium_term_thesis",
        "entry_action_wait",
        "breakout_not_confirmed",
        "resistance_cluster_overhead",
        "held_position_hold_only",
        "conditional_add_trigger",
        "intraday_snapshot_missing"
      ],
      "review_required": false
    },
    {
      "canonical_ticker": "GOOGL",
      "display_name": "GOOGL",
      "decision_source": "RULE+DEEP",
      "thesis_strength": 0.72,
      "timing_readiness": 0.42,
      "trigger_type": "breakout_confirmation",
      "trigger_horizon": "days_to_weeks",
      "trigger_quality": 0.78,
      "thesis_state": "constructive_but_not_confirmed",
      "semantic_summary": "GOOGL has a constructive medium-term overweight thesis supported by trend recovery, positive MACD, strong fundamentals, AI/cloud catalysts, and existing core-holder rationale. Timing is not actionable now because the plan explicitly says WAIT, avoids chase buying, and requires either a volume-confirmed close above 337.48 or a controlled pullback into 323.75-317.19 with support and higher-low confirmation before adding.",
      "counter_evidence": [
        "Entry action is WAIT and suggested action now is HOLD, not immediate ADD.",
        "RSI near 71, elevated ATR, and price extension above the 10-day EMA argue against chasing.",
        "Latest usable price data is stale through 2026-04-15 and same-day intraday snapshot is missing.",
        "Regulatory, earnings, AI capex, and AI search competition risks remain material.",
        "Full sizing requires later breakout retest or earnings confirmation, not just the current thesis."
      ],
      "reason_codes": [
        "constructive_medium_term_thesis",
        "entry_action_wait",
        "breakout_trigger_defined_not_confirmed",
        "volume_confirmation_required",
        "pullback_alternative_requires_support",
        "overbought_extended_price",
        "intraday_snapshot_missing",
        "headline_and_earnings_risk"
      ],
      "review_required": false
    },
    {
      "canonical_ticker": "LHX",
      "display_name": "LHX",
      "decision_source": "RULE+DEEP",
      "thesis_strength": 0.68,
      "timing_readiness": 0.36,
      "trigger_type": "breakout_confirmation",
      "trigger_horizon": "days_to_weeks",
      "trigger_quality": 0.72,
      "thesis_state": "constructive_but_not_confirmed",
      "semantic_summary": "LHX has a constructive medium-term thesis supported by defense demand, rocket motor capacity investment, Aerojet integration, and potential margin/free-cash-flow improvement, but timing is not yet actionable. Price remains inside the 353-365 range near key moving averages with neutral RSI and only modest MACD confirmation, so adds should wait for support confirmation or a volume-backed breakout above 365.",
      "counter_evidence": [
        "Current entry_action is WAIT and execution_feasibility_now is not_actionable_now.",
        "Price is still range-bound around 353-365 and has not confirmed a daily close above 365 with above-average volume.",
        "RSI is neutral and MACD is only modestly positive, so trend confirmation is incomplete.",
        "Operating margin weakness, working-capital-driven free cash flow risk, high valuation, insider selling, and event volatility remain material."
      ],
      "reason_codes": [
        "bullish_medium_term_thesis",
        "entry_wait",
        "range_bound_setup",
        "breakout_not_confirmed",
        "support_retest_needed",
        "volume_confirmation_required",
        "neutral_momentum",
        "event_and_margin_risk"
      ],
      "review_required": false
    },
    {
      "canonical_ticker": "LLY",
      "display_name": "LLY",
      "decision_source": "RULE+DEEP",
      "thesis_strength": 0.68,
      "timing_readiness": 0.34,
      "trigger_type": "breakout_confirmation",
      "trigger_horizon": "days_to_weeks",
      "trigger_quality": 0.74,
      "thesis_state": "constructive_but_not_confirmed",
      "semantic_summary": "LLY has a constructive medium-term growth thesis supported by GLP-1 demand, margins, earnings growth and analyst support, but timing is not actionable now. Price is only marginally above the 200-day support area near 902-905 while still below the 10-day EMA/VWMA around 925-926 and the 50-day near 976-977, with RSI and MACD not yet confirming trend repair. Best interpretation is watch for support defense and a reclaim of 925-926 before starter exposure, with stronger confirmation above 955 and 976-977.",
      "counter_evidence": [
        "Entry action is explicitly WAIT and execution feasibility is not actionable now.",
        "Price remains below the 10-day EMA, VWMA, and 50-day SMA, so upside trend confirmation is incomplete.",
        "RSI 42.16 and MACD -13.75 do not yet confirm momentum recovery.",
        "Current price is very close to 200-day support, making downside invalidation risk immediate if 902 fails on volume.",
        "Valuation, leverage, weak free cash flow, and Q1/Foundayo uncertainty raise risk if fundamentals disappoint."
      ],
      "reason_codes": [
        "constructive_medium_term_thesis",
        "entry_wait_state",
        "below_near_term_moving_averages",
        "support_defense_required",
        "breakout_confirmation_needed",
        "momentum_not_confirmed",
        "starter_only_if_triggered",
        "clear_downside_invalidation"
      ],
      "review_required": false
    },
    {
      "canonical_ticker": "LRCX",
      "display_name": "LRCX",
      "decision_source": "RULE+DEEP",
      "thesis_strength": 0.72,
      "timing_readiness": 0.36,
      "trigger_type": "breakout_confirmation",
      "trigger_horizon": "days_to_weeks",
      "trigger_quality": 0.62,
      "thesis_state": "constructive_but_not_confirmed",
      "semantic_summary": "LRCX has a constructive medium-term thesis supported by strong trend posture and AI/HBM, memory recovery, and advanced-node equipment demand, but the action is explicitly WAIT. New entry is not confirmed because price is near 273.50 resistance, event risk remains ahead of 2026-04-22 earnings, and management/export-control confirmation is still needed. A starter position is only justified after a volume-confirmed breakout above 273.50, a controlled pullback holding 253-258, or post-earnings demand and China-risk confirmation.",
      "counter_evidence": [
        "Entry action is WAIT and execution feasibility now is not actionable.",
        "Price is extended near 273.50 resistance with concerns about distribution-like weakness.",
        "2026-04-22 earnings and US export-control headlines create near-term event risk.",
        "Valuation and volatility are elevated, with beta around 1.79, ATR around 11.84, and high PER/PBR metrics.",
        "A decisive close below 253.46 or loss of the 50-day SMA near 230.49 would weaken or invalidate the setup."
      ],
      "reason_codes": [
        "constructive_medium_term_thesis",
        "entry_wait_state",
        "breakout_confirmation_required",
        "earnings_event_risk",
        "export_control_uncertainty",
        "extended_near_resistance",
        "support_pullback_alternative",
        "not_actionable_now"
      ],
      "review_required": false
    },
    {
      "canonical_ticker": "MU",
      "display_name": "MU",
      "decision_source": "RULE+DEEP",
      "thesis_strength": 0.72,
      "timing_readiness": 0.34,
      "trigger_type": "watch_only",
      "trigger_horizon": "days_to_weeks",
      "trigger_quality": 0.58,
      "thesis_state": "constructive_but_not_confirmed",
      "semantic_summary": "MU has a constructive medium-term overweight thesis supported by AI server memory demand, HBM/high-end DRAM tightness, improving trend indicators, strong reported profitability, FCF, and liquidity. Timing is not actionable now because the recommendation is explicitly WAIT: price is extended near 465.78-471.14 resistance after a sharp rebound, ATR is high, and entry requires either confirmed 426 support with RSI/volume stabilization or a volume breakout and successful 465 retest.",
      "counter_evidence": [
        "Entry action is WAIT and execution feasibility is not actionable now.",
        "Price is extended after a move from 318.40 to 465.78 and is near 52-week/resistance levels.",
        "ATR around 26, roughly 5.7% of price, makes chase entry risk/reward incomplete.",
        "Insider selling near highs, high valuation, capex intensity, export control/China demand risk, and receivables growth cap position size.",
        "No intraday confirmation was available."
      ],
      "reason_codes": [
        "constructive_medium_term_thesis",
        "entry_wait_required",
        "setup_developing_not_confirmed",
        "extended_near_resistance",
        "high_volatility_atr",
        "support_or_breakout_confirmation_needed",
        "risk_controls_defined"
      ],
      "review_required": false
    },
    {
      "canonical_ticker": "NET",
      "display_name": "NET",
      "decision_source": "RULE+DEEP",
      "thesis_strength": 0.64,
      "timing_readiness": 0.34,
      "trigger_type": "breakout_confirmation",
      "trigger_horizon": "days_to_weeks",
      "trigger_quality": 0.72,
      "thesis_state": "constructive_but_not_confirmed",
      "semantic_summary": "NET has a constructive medium-term thesis supported by recovery momentum, high gross margin, positive free cash flow, and AI/security demand, but it is not actionable now because price has not confirmed above the 195 resistance cluster or the higher-quality 202-204 zone. The appropriate action is watch-only until a daily close confirms breakout conditions; downside risk is defined by 184 and thesis invalidation near 166.99.",
      "counter_evidence": [
        "Entry action is explicitly WAIT and suggested action now is WATCH, so no immediate execution signal is present.",
        "NET remains below the 50-day SMA, 10-day EMA, 200-day SMA, and Bollinger midline resistance zones cited in the plan.",
        "April 9-10 heavy selling volume suggests overhead supply and weak confirmation quality until upside volume improves.",
        "High valuation, negative EPS, TTM net loss, elevated stock-based compensation, and dilution risk reduce timing confidence.",
        "Intraday data was unavailable and the plan relies on daily close confirmation, making current timing incomplete."
      ],
      "reason_codes": [
        "entry_wait",
        "breakout_not_confirmed",
        "daily_close_required",
        "below_key_moving_averages",
        "overhead_supply_risk",
        "high_valuation_risk",
        "not_held_watchlist_candidate"
      ],
      "review_required": false
    },
    {
      "canonical_ticker": "NVDA",
      "display_name": "NVDA",
      "decision_source": "RULE+DEEP",
      "thesis_strength": 0.74,
      "timing_readiness": 0.42,
      "trigger_type": "breakout_confirmation",
      "trigger_horizon": "days_to_weeks",
      "trigger_quality": 0.66,
      "thesis_state": "constructive_but_not_confirmed",
      "semantic_summary": "NVDA thesis is constructive and supports holding existing exposure, but timing is not yet actionable for adding. The plan requires confirmation through a daily close above 200.40 with volume, or a controlled pullback holding near 189.26 with momentum stability. Current price is near resistance with elevated RSI and volatility, so immediate chase/add is not semantically confirmed.",
      "counter_evidence": [
        "Entry action is WAIT despite OVERWEIGHT/BULLISH stance.",
        "Price is near the 198.87-200.40 resistance zone without confirmed breakout or volume expansion.",
        "RSI near 70 and ATR around 5.27 imply stretched short-term conditions and elevated volatility.",
        "Execution feasibility is flagged as blocked_stale_or_degraded_data, with no intraday snapshot used.",
        "Valuation, inventory, receivables, supply-chain, and competitive risks remain material."
      ],
      "reason_codes": [
        "bullish_thesis_but_wait_entry",
        "breakout_not_confirmed",
        "near_resistance_zone",
        "elevated_rsi_and_volatility",
        "specific_price_triggers_defined",
        "stale_or_degraded_execution_data",
        "held_position_hold_not_add_now"
      ],
      "review_required": false
    },
    {
      "canonical_ticker": "ORCL",
      "display_name": "ORCL",
      "decision_source": "RULE+DEEP",
      "thesis_strength": 0.62,
      "timing_readiness": 0.34,
      "trigger_type": "breakout_confirmation",
      "trigger_horizon": "days_to_weeks",
      "trigger_quality": 0.66,
      "thesis_state": "constructive_but_not_confirmed",
      "semantic_summary": "ORCL has a constructive medium-term AI infrastructure, OCI, multicloud, and backlog conversion thesis, but the current setup is not ready for immediate new entry. The plan explicitly says WAIT/WATCH because price is extended near the Bollinger upper band with RSI around 70.8, elevated volatility, and material FCF/debt/financing risks. Actionability depends on either a confirmed close above 170.64/172.56 with sustained volume or a controlled pullback holding 156.84/150.54 on lighter volume.",
      "counter_evidence": [
        "Immediate entry is described as chase buying after a sharp event-driven rally.",
        "RSI 70.79 and proximity to the 170.64 Bollinger upper band indicate short-term overextension.",
        "TTM free cash flow around -$22.3B, quarterly FCF around -$11.48B, high debt, and interest expense weaken the quality of the thesis.",
        "Potential $38B data-center financing package and CAPEX burden could become negative credit or headline risks.",
        "Execution feasibility is marked blocked_stale_or_degraded_data, so current timing evidence should not be treated as clean execution support."
      ],
      "reason_codes": [
        "bullish_thesis_but_wait_entry",
        "timing_confirmation_missing",
        "overbought_near_resistance",
        "specific_breakout_trigger_defined",
        "pullback_support_trigger_defined",
        "fcf_debt_financing_risk",
        "stale_or_degraded_execution_data"
      ],
      "review_required": false
    },
    {
      "canonical_ticker": "RSP",
      "display_name": "RSP",
      "decision_source": "RULE+DEEP",
      "thesis_strength": 0.68,
      "timing_readiness": 0.38,
      "trigger_type": "breakout_confirmation",
      "trigger_horizon": "days_to_weeks",
      "trigger_quality": 0.62,
      "thesis_state": "constructive_but_not_confirmed",
      "semantic_summary": "RSP has a constructive medium-term allocation thesis, supported by price above key moving averages, improving MACD, and a market-breadth/equal-weight rotation argument. However, the current action is explicitly WAIT/HOLD because price is just below the 200.00-201.88 resistance zone and requires either a confirmed pullback hold near 197.50-198.00 or a close above 200.20 with volume and acceptance above 201.88 before adding.",
      "counter_evidence": [
        "Immediate entry is not recommended; candidate explicitly says WAIT and suggested_action_now is HOLD.",
        "Price is near the 200.00-201.88 resistance zone and close to the 52-week high, creating failed-breakout risk.",
        "Trigger conditions are conditional and not yet confirmed: support hold, breakout close, volume expansion, and relative strength improvement are still pending.",
        "Execution feasibility is marked blocked_stale_or_degraded_data, with stale_but_triggerable true.",
        "Breaks below 197.50, 196.00, or 195.00 would weaken or invalidate the tactical setup."
      ],
      "reason_codes": [
        "bullish_thesis_but_wait_action",
        "timing_requires_confirmation",
        "near_resistance_zone",
        "breakout_trigger_pending",
        "support_trigger_pending",
        "stale_or_degraded_data",
        "held_position_hold_not_add"
      ],
      "review_required": false
    },
    {
      "canonical_ticker": "TSLA",
      "display_name": "TSLA",
      "decision_source": "RULE+DEEP",
      "thesis_strength": 0.62,
      "timing_readiness": 0.38,
      "trigger_type": "breakout_confirmation",
      "trigger_horizon": "days_to_weeks",
      "trigger_quality": 0.66,
      "thesis_state": "constructive_but_not_confirmed",
      "semantic_summary": "TSLA has a constructive medium-term hold/add-if-triggered thesis, supported by a high-volume rebound, recovery near the 50-day SMA, improving momentum, and AI/autonomy catalysts. Timing is not actionable now because price remains below the 200-day SMA near 398.37 and has not confirmed follow-through above 400; new capital should wait for breakout confirmation or a controlled pullback that proves support near 390.43.",
      "counter_evidence": [
        "Current action is HOLD with entry_action WAIT, not immediate add.",
        "Price remains below the 200-day SMA near 398.37 and has not cleared the 400 follow-through zone.",
        "Setup quality is only DEVELOPING and execution feasibility is marked blocked_stale_or_degraded_data.",
        "Fundamental concerns include elevated valuation, thin margins, revenue and net income deceleration, dilution, stock-based compensation, and demand uncertainty.",
        "Invalidation levels are close: failure below the 50-day SMA near 390.43 or the 10-day EMA/VWMA zone near 368.27 would weaken the rebound."
      ],
      "reason_codes": [
        "constructive_hold_not_buy_now",
        "breakout_not_confirmed",
        "below_200_day_sma",
        "wait_for_volume_follow_through",
        "developing_setup",
        "stale_or_degraded_execution_data",
        "high_valuation_and_margin_risk",
        "clear_add_and_invalidation_levels"
      ],
      "review_required": false
    },
    {
      "canonical_ticker": "TSM",
      "display_name": "TSM",
      "decision_source": "RULE+DEEP",
      "thesis_strength": 0.76,
      "timing_readiness": 0.38,
      "trigger_type": "watch_only",
      "trigger_horizon": "days_to_weeks",
      "trigger_quality": 0.68,
      "thesis_state": "constructive_but_not_confirmed",
      "semantic_summary": "TSM has a constructive medium-term overweight thesis supported by strong Q1 growth, AI and advanced-node demand, leadership in foundry share, and price remaining above key moving averages. Timing is not yet actionable because the name is held near 375-382 resistance after a fast rebound and post-earnings selling; additions require either a controlled 362-365 support test or a confirmed close above 382.16 on above-average volume.",
      "counter_evidence": [
        "Current entry action is WAIT, not buy or add now.",
        "Price is near 379.89-382.16 resistance after a rapid rebound from 316.50 to 375.10.",
        "Strong earnings were followed by selling, raising near-term chase risk.",
        "Execution feasibility is marked blocked_stale_or_degraded_data, so fresh confirmation is needed before action.",
        "A close below 352-353 or failure of the 345-348 breakout zone would damage the technical structure."
      ],
      "reason_codes": [
        "constructive_medium_term_thesis",
        "entry_wait_state",
        "trigger_not_confirmed",
        "near_resistance_after_fast_rebound",
        "held_position_hold_not_add",
        "stale_or_degraded_execution_data",
        "defined_support_and_breakout_triggers"
      ],
      "review_required": false
    },
    {
      "canonical_ticker": "VRT",
      "display_name": "VRT",
      "decision_source": "RULE+DEEP",
      "thesis_strength": 0.72,
      "timing_readiness": 0.38,
      "trigger_type": "breakout_confirmation",
      "trigger_horizon": "days_to_weeks",
      "trigger_quality": 0.66,
      "thesis_state": "constructive_but_not_confirmed",
      "semantic_summary": "VRT thesis is constructive for a held position, supported by AI data-center infrastructure demand, strong recent fundamentals, cash flow, and an intact medium-term uptrend. Timing is not actionable now because the plan explicitly says WAIT, momentum has cooled, valuation and ATR are elevated, earnings/event risk remains, and adds require confirmation via a daily close above 312.46 on stronger volume or a reversal from the 296.64-288.22 support zone.",
      "counter_evidence": [
        "Entry action is WAIT and setup quality is DEVELOPING rather than confirmed.",
        "Immediate execution is blocked by stale or degraded data despite the thesis being triggerable.",
        "Momentum is cooling with RSI down from 70.99 to 62.35 and MACD histogram weakening.",
        "Premium valuation, elevated ATR, and earnings/event risk argue against chasing strength.",
        "Company-specific coverage is limited with only one company news item and no disclosures."
      ],
      "reason_codes": [
        "constructive_medium_term_thesis",
        "entry_wait_state",
        "breakout_trigger_required",
        "support_reversal_alternative",
        "held_position_hold_only",
        "elevated_valuation_risk",
        "momentum_cooling",
        "event_risk_pending",
        "stale_or_degraded_data",
        "limited_company_coverage"
      ],
      "review_required": false
    },
    {
      "canonical_ticker": "VXUS",
      "display_name": "VXUS",
      "decision_source": "RULE+DEEP",
      "thesis_strength": 0.67,
      "timing_readiness": 0.38,
      "trigger_type": "breakout_confirmation",
      "trigger_horizon": "days_to_weeks",
      "trigger_quality": 0.62,
      "thesis_state": "constructive_but_not_confirmed",
      "semantic_summary": "VXUS has a constructive medium-term overweight thesis supported by price above key moving averages, positive MACD, international diversification demand, weaker-dollar narrative, and dividend yield. However, the recommended action is explicitly WAIT/HOLD because the position is near the 82.90 breakout level and 84.11-84.28 resistance after a sharp rebound, with high ATR and no confirmed support or volume-backed breakout yet.",
      "counter_evidence": [
        "Entry action is WAIT and suggested action now is HOLD, so timing is not actionable immediately.",
        "Price has already rebounded sharply from 74.71 to 82.65 and is close to resistance at 82.90 and 84.11-84.28.",
        "ATR 1.3766 indicates elevated volatility, reducing risk-reward for immediate add.",
        "Execution feasibility now is blocked_stale_or_degraded_data, with stale_but_triggerable marked true.",
        "Data coverage is limited, including only one company news item, no disclosures, fallback events, and token usage unavailable."
      ],
      "reason_codes": [
        "bullish_medium_term_thesis",
        "wait_for_confirmation",
        "near_resistance_after_rebound",
        "volume_breakout_required",
        "support_retest_required",
        "elevated_volatility",
        "stale_or_degraded_data"
      ],
      "review_required": false
    }
  ]
}