{
  "metadata": {
    "batch_id": "batch_015",
    "purpose": "control_review_evidence_non_final",
    "generated_at": "2026-07-17T10:27:33Z",
    "source_batch": "hybrid/reviews/manual_replay_batch_015.json",
    "source_batch_sha16": "a9339b83d5adfe3b",
    "source_reviews": "hybrid/reviews/reviews.json",
    "source_reviews_sha16": "2a4ba0dced3f47a8",
    "item_count": 25,
    "breakdown": {
      "needs_more_context": 25
    },
    "isFinalBacktest": false,
    "journal_promotions": 0,
    "safety": "analysis_only; no trading/live order; no journal promotion; batch files untouched",
    "notes": "Control evidence file only. Use for chronological manual replay decisions; do not count as confirmed trades."
  },
  "items": [
    {
      "order": 293,
      "candidate_id": "candidate_2026-03-05T04-15-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-03-05T04:15:00Z",
      "direction": "Short",
      "input_status": "needs_manual_replay",
      "control_status": "needs_more_context",
      "classification": "requires_htf_manual_replay",
      "rationale": "Control classification: deterministic triage needs HTF context/manual TradingView replay before accept/reject; do not promote.",
      "evidence": {
        "deterministic_status": "needs_manual_replay",
        "deterministic_outcome": "mechanical_fib_entry_candidate",
        "candidate_time": "2026-03-05T04:15:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-03-05T04:40:00Z",
        "fib_touch_time": "2026-03-05T09:10:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 5.652,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 294,
      "candidate_id": "candidate_2026-03-05T07-15-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-03-05T07:15:00Z",
      "direction": "Long",
      "input_status": "needs_manual_replay",
      "control_status": "needs_more_context",
      "classification": "requires_htf_manual_replay",
      "rationale": "Control classification: deterministic triage needs HTF context/manual TradingView replay before accept/reject; do not promote.",
      "evidence": {
        "deterministic_status": "needs_manual_replay",
        "deterministic_outcome": "mechanical_fib_entry_candidate",
        "candidate_time": "2026-03-05T07:15:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-03-05T09:05:00Z",
        "fib_touch_time": "2026-03-05T09:25:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_sl_first",
        "risk_points": 9.002,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 295,
      "candidate_id": "candidate_2026-03-05T07-45-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-03-05T07:45:00Z",
      "direction": "Long",
      "input_status": "needs_manual_replay",
      "control_status": "needs_more_context",
      "classification": "requires_htf_manual_replay",
      "rationale": "Control classification: deterministic triage needs HTF context/manual TradingView replay before accept/reject; do not promote.",
      "evidence": {
        "deterministic_status": "needs_manual_replay",
        "deterministic_outcome": "mechanical_fib_entry_candidate",
        "candidate_time": "2026-03-05T07:45:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-03-05T09:05:00Z",
        "fib_touch_time": "2026-03-05T09:25:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_sl_first",
        "risk_points": 9.484,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 296,
      "candidate_id": "candidate_2026-03-05T15-00-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-03-05T15:00:00Z",
      "direction": "Short",
      "input_status": "needs_manual_replay",
      "control_status": "needs_more_context",
      "classification": "requires_htf_manual_replay",
      "rationale": "Control classification: deterministic triage needs HTF context/manual TradingView replay before accept/reject; do not promote.",
      "evidence": {
        "deterministic_status": "needs_manual_replay",
        "deterministic_outcome": "mechanical_fib_entry_candidate",
        "candidate_time": "2026-03-05T15:00:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-03-05T15:05:00Z",
        "fib_touch_time": "2026-03-05T15:15:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 26.11,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 297,
      "candidate_id": "candidate_2026-03-05T16-00-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-03-05T16:00:00Z",
      "direction": "Short",
      "input_status": "needs_manual_replay",
      "control_status": "needs_more_context",
      "classification": "requires_htf_manual_replay",
      "rationale": "Control classification: deterministic triage needs HTF context/manual TradingView replay before accept/reject; do not promote.",
      "evidence": {
        "deterministic_status": "needs_manual_replay",
        "deterministic_outcome": "mechanical_fib_entry_candidate",
        "candidate_time": "2026-03-05T16:00:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-03-05T17:50:00Z",
        "fib_touch_time": "2026-03-05T18:35:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 20.396,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 298,
      "candidate_id": "candidate_2026-03-05T18-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-03-05T18:00:00Z",
      "direction": "Long",
      "input_status": "needs_manual_replay",
      "control_status": "needs_more_context",
      "classification": "requires_htf_manual_replay",
      "rationale": "Control classification: deterministic triage needs HTF context/manual TradingView replay before accept/reject; do not promote.",
      "evidence": {
        "deterministic_status": "needs_manual_replay",
        "deterministic_outcome": "mechanical_fib_entry_candidate",
        "candidate_time": "2026-03-05T18:00:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-03-05T20:15:00Z",
        "fib_touch_time": "2026-03-05T21:10:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 19.369,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 299,
      "candidate_id": "candidate_2026-03-05T20-30-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-03-05T20:30:00Z",
      "direction": "Long",
      "input_status": "needs_manual_replay",
      "control_status": "needs_more_context",
      "classification": "requires_htf_manual_replay",
      "rationale": "Control classification: deterministic triage needs HTF context/manual TradingView replay before accept/reject; do not promote.",
      "evidence": {
        "deterministic_status": "needs_manual_replay",
        "deterministic_outcome": "mechanical_fib_entry_candidate",
        "candidate_time": "2026-03-05T20:30:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-03-05T23:15:00Z",
        "fib_touch_time": "2026-03-05T23:55:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_sl_first",
        "risk_points": 9.9,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 300,
      "candidate_id": "candidate_2026-03-05T20-45-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-03-05T20:45:00Z",
      "direction": "Long",
      "input_status": "needs_manual_replay",
      "control_status": "needs_more_context",
      "classification": "requires_htf_manual_replay",
      "rationale": "Control classification: deterministic triage needs HTF context/manual TradingView replay before accept/reject; do not promote.",
      "evidence": {
        "deterministic_status": "needs_manual_replay",
        "deterministic_outcome": "mechanical_fib_entry_candidate",
        "candidate_time": "2026-03-05T20:45:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-03-05T23:15:00Z",
        "fib_touch_time": "2026-03-05T23:55:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_sl_first",
        "risk_points": 10.474,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 301,
      "candidate_id": "candidate_2026-03-06T08-00-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-03-06T08:00:00Z",
      "direction": "Short",
      "input_status": "needs_manual_replay",
      "control_status": "needs_more_context",
      "classification": "requires_htf_manual_replay",
      "rationale": "Control classification: deterministic triage needs HTF context/manual TradingView replay before accept/reject; do not promote.",
      "evidence": {
        "deterministic_status": "needs_manual_replay",
        "deterministic_outcome": "mechanical_fib_entry_candidate",
        "candidate_time": "2026-03-06T08:00:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-03-06T08:25:00Z",
        "fib_touch_time": "2026-03-06T08:45:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 10.485,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 302,
      "candidate_id": "candidate_2026-03-06T10-45-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-03-06T10:45:00Z",
      "direction": "Short",
      "input_status": "needs_manual_replay",
      "control_status": "needs_more_context",
      "classification": "requires_htf_manual_replay",
      "rationale": "Control classification: deterministic triage needs HTF context/manual TradingView replay before accept/reject; do not promote.",
      "evidence": {
        "deterministic_status": "needs_manual_replay",
        "deterministic_outcome": "mechanical_fib_entry_candidate",
        "candidate_time": "2026-03-06T10:45:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-03-06T13:05:00Z",
        "fib_touch_time": "2026-03-06T13:20:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_sl_first",
        "risk_points": 12.166,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 303,
      "candidate_id": "candidate_2026-03-06T11-30-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-03-06T11:30:00Z",
      "direction": "Short",
      "input_status": "needs_manual_replay",
      "control_status": "needs_more_context",
      "classification": "requires_htf_manual_replay",
      "rationale": "Control classification: deterministic triage needs HTF context/manual TradingView replay before accept/reject; do not promote.",
      "evidence": {
        "deterministic_status": "needs_manual_replay",
        "deterministic_outcome": "mechanical_fib_entry_candidate",
        "candidate_time": "2026-03-06T11:30:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-03-06T13:05:00Z",
        "fib_touch_time": "2026-03-06T13:20:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_sl_first",
        "risk_points": 15.063,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 304,
      "candidate_id": "candidate_2026-03-06T12-30-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-03-06T12:30:00Z",
      "direction": "Long",
      "input_status": "needs_manual_replay",
      "control_status": "needs_more_context",
      "classification": "requires_htf_manual_replay",
      "rationale": "Control classification: deterministic triage needs HTF context/manual TradingView replay before accept/reject; do not promote.",
      "evidence": {
        "deterministic_status": "needs_manual_replay",
        "deterministic_outcome": "mechanical_fib_entry_candidate",
        "candidate_time": "2026-03-06T12:30:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-03-06T13:30:00Z",
        "fib_touch_time": "2026-03-06T13:50:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_sl_first",
        "risk_points": 18.185,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 305,
      "candidate_id": "candidate_2026-03-06T16-30-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-03-06T16:30:00Z",
      "direction": "Long",
      "input_status": "needs_manual_replay",
      "control_status": "needs_more_context",
      "classification": "requires_htf_manual_replay",
      "rationale": "Control classification: deterministic triage needs HTF context/manual TradingView replay before accept/reject; do not promote.",
      "evidence": {
        "deterministic_status": "needs_manual_replay",
        "deterministic_outcome": "mechanical_fib_entry_candidate",
        "candidate_time": "2026-03-06T16:30:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-03-06T19:15:00Z",
        "fib_touch_time": "2026-03-06T20:35:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 21.474,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 306,
      "candidate_id": "candidate_2026-03-08T22-30-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-03-08T22:30:00Z",
      "direction": "Short",
      "input_status": "needs_manual_replay",
      "control_status": "needs_more_context",
      "classification": "requires_htf_manual_replay",
      "rationale": "Control classification: deterministic triage needs HTF context/manual TradingView replay before accept/reject; do not promote.",
      "evidence": {
        "deterministic_status": "needs_manual_replay",
        "deterministic_outcome": "mechanical_fib_entry_candidate",
        "candidate_time": "2026-03-08T22:30:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-03-08T22:45:00Z",
        "fib_touch_time": "2026-03-08T23:00:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 25.357,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 307,
      "candidate_id": "candidate_2026-03-09T00-00-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-03-09T00:00:00Z",
      "direction": "Short",
      "input_status": "needs_manual_replay",
      "control_status": "needs_more_context",
      "classification": "requires_htf_manual_replay",
      "rationale": "Control classification: deterministic triage needs HTF context/manual TradingView replay before accept/reject; do not promote.",
      "evidence": {
        "deterministic_status": "needs_manual_replay",
        "deterministic_outcome": "mechanical_fib_entry_candidate",
        "candidate_time": "2026-03-09T00:00:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-03-09T00:10:00Z",
        "fib_touch_time": "2026-03-09T00:30:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 23.241,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 308,
      "candidate_id": "candidate_2026-03-09T03-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-03-09T03:00:00Z",
      "direction": "Long",
      "input_status": "needs_manual_replay",
      "control_status": "needs_more_context",
      "classification": "requires_htf_manual_replay",
      "rationale": "Control classification: deterministic triage needs HTF context/manual TradingView replay before accept/reject; do not promote.",
      "evidence": {
        "deterministic_status": "needs_manual_replay",
        "deterministic_outcome": "mechanical_fib_entry_candidate",
        "candidate_time": "2026-03-09T03:00:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-03-09T05:30:00Z",
        "fib_touch_time": "2026-03-09T07:00:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 10.705,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 309,
      "candidate_id": "candidate_2026-03-09T04-30-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-03-09T04:30:00Z",
      "direction": "Long",
      "input_status": "needs_manual_replay",
      "control_status": "needs_more_context",
      "classification": "requires_htf_manual_replay",
      "rationale": "Control classification: deterministic triage needs HTF context/manual TradingView replay before accept/reject; do not promote.",
      "evidence": {
        "deterministic_status": "needs_manual_replay",
        "deterministic_outcome": "mechanical_fib_entry_candidate",
        "candidate_time": "2026-03-09T04:30:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-03-09T05:30:00Z",
        "fib_touch_time": "2026-03-09T06:50:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 9.275,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 310,
      "candidate_id": "candidate_2026-03-09T04-45-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-03-09T04:45:00Z",
      "direction": "Long",
      "input_status": "needs_manual_replay",
      "control_status": "needs_more_context",
      "classification": "requires_htf_manual_replay",
      "rationale": "Control classification: deterministic triage needs HTF context/manual TradingView replay before accept/reject; do not promote.",
      "evidence": {
        "deterministic_status": "needs_manual_replay",
        "deterministic_outcome": "mechanical_fib_entry_candidate",
        "candidate_time": "2026-03-09T04:45:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-03-09T05:30:00Z",
        "fib_touch_time": "2026-03-09T07:00:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 10.215,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 311,
      "candidate_id": "candidate_2026-03-09T05-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-03-09T05:00:00Z",
      "direction": "Long",
      "input_status": "needs_manual_replay",
      "control_status": "needs_more_context",
      "classification": "requires_htf_manual_replay",
      "rationale": "Control classification: deterministic triage needs HTF context/manual TradingView replay before accept/reject; do not promote.",
      "evidence": {
        "deterministic_status": "needs_manual_replay",
        "deterministic_outcome": "mechanical_fib_entry_candidate",
        "candidate_time": "2026-03-09T05:00:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-03-09T05:30:00Z",
        "fib_touch_time": "2026-03-09T07:00:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 12.052,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 312,
      "candidate_id": "candidate_2026-03-09T11-00-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-03-09T11:00:00Z",
      "direction": "Short",
      "input_status": "needs_manual_replay",
      "control_status": "needs_more_context",
      "classification": "requires_htf_manual_replay",
      "rationale": "Control classification: deterministic triage needs HTF context/manual TradingView replay before accept/reject; do not promote.",
      "evidence": {
        "deterministic_status": "needs_manual_replay",
        "deterministic_outcome": "mechanical_fib_entry_candidate",
        "candidate_time": "2026-03-09T11:00:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-03-09T13:40:00Z",
        "fib_touch_time": "2026-03-09T14:00:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 10.217,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 313,
      "candidate_id": "candidate_2026-03-09T11-30-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-03-09T11:30:00Z",
      "direction": "Short",
      "input_status": "needs_manual_replay",
      "control_status": "needs_more_context",
      "classification": "requires_htf_manual_replay",
      "rationale": "Control classification: deterministic triage needs HTF context/manual TradingView replay before accept/reject; do not promote.",
      "evidence": {
        "deterministic_status": "needs_manual_replay",
        "deterministic_outcome": "mechanical_fib_entry_candidate",
        "candidate_time": "2026-03-09T11:30:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-03-09T13:40:00Z",
        "fib_touch_time": "2026-03-09T13:45:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 8.323,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 314,
      "candidate_id": "candidate_2026-03-09T12-30-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-03-09T12:30:00Z",
      "direction": "Short",
      "input_status": "needs_manual_replay",
      "control_status": "needs_more_context",
      "classification": "requires_htf_manual_replay",
      "rationale": "Control classification: deterministic triage needs HTF context/manual TradingView replay before accept/reject; do not promote.",
      "evidence": {
        "deterministic_status": "needs_manual_replay",
        "deterministic_outcome": "mechanical_fib_entry_candidate",
        "candidate_time": "2026-03-09T12:30:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-03-09T13:40:00Z",
        "fib_touch_time": "2026-03-09T14:35:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_sl_first",
        "risk_points": 16.81,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 315,
      "candidate_id": "candidate_2026-03-09T13-45-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-03-09T13:45:00Z",
      "direction": "Long",
      "input_status": "needs_manual_replay",
      "control_status": "needs_more_context",
      "classification": "requires_htf_manual_replay",
      "rationale": "Control classification: deterministic triage needs HTF context/manual TradingView replay before accept/reject; do not promote.",
      "evidence": {
        "deterministic_status": "needs_manual_replay",
        "deterministic_outcome": "mechanical_fib_entry_candidate",
        "candidate_time": "2026-03-09T13:45:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-03-09T14:40:00Z",
        "fib_touch_time": "2026-03-09T14:50:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 20.931,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 316,
      "candidate_id": "candidate_2026-03-09T19-15-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-03-09T19:15:00Z",
      "direction": "Long",
      "input_status": "needs_manual_replay",
      "control_status": "needs_more_context",
      "classification": "requires_htf_manual_replay",
      "rationale": "Control classification: deterministic triage needs HTF context/manual TradingView replay before accept/reject; do not promote.",
      "evidence": {
        "deterministic_status": "needs_manual_replay",
        "deterministic_outcome": "mechanical_fib_entry_candidate",
        "candidate_time": "2026-03-09T19:15:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-03-09T19:20:00Z",
        "fib_touch_time": "2026-03-09T19:30:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 11.279,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 317,
      "candidate_id": "candidate_2026-03-09T20-15-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-03-09T20:15:00Z",
      "direction": "Long",
      "input_status": "needs_manual_replay",
      "control_status": "needs_more_context",
      "classification": "requires_htf_manual_replay",
      "rationale": "Control classification: deterministic triage needs HTF context/manual TradingView replay before accept/reject; do not promote.",
      "evidence": {
        "deterministic_status": "needs_manual_replay",
        "deterministic_outcome": "mechanical_fib_entry_candidate",
        "candidate_time": "2026-03-09T20:15:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-03-09T22:55:00Z",
        "fib_touch_time": "2026-03-09T23:00:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 8.309,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    }
  ]
}
