{
  "metadata": {
    "batch_id": "batch_021",
    "purpose": "control_review_evidence_non_final",
    "generated_at": "2026-07-17T10:27:33Z",
    "source_batch": "hybrid/reviews/manual_replay_batch_021.json",
    "source_batch_sha16": "fd35db8ae88f4b1f",
    "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": 443,
      "candidate_id": "candidate_2026-04-06T13-30-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-04-06T13: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-04-06T13:30:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-04-06T15:35:00Z",
        "fib_touch_time": "2026-04-06T15:45:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 11.904,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 444,
      "candidate_id": "candidate_2026-04-06T14-00-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-04-06T14: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-04-06T14:00:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-04-06T15:35:00Z",
        "fib_touch_time": "2026-04-06T16:10:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 16.958,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 445,
      "candidate_id": "candidate_2026-04-06T15-30-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-04-06T15: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-04-06T15:30:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-04-06T15:35:00Z",
        "fib_touch_time": "2026-04-06T15:45:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_sl_first",
        "risk_points": 8.406,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 446,
      "candidate_id": "candidate_2026-04-06T16-15-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-04-06T16: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-04-06T16:15:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-04-06T18:35:00Z",
        "fib_touch_time": "2026-04-06T22:00:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 10.109,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 447,
      "candidate_id": "candidate_2026-04-06T19-00-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-04-06T19: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-04-06T19:00:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-04-06T19:15:00Z",
        "fib_touch_time": "2026-04-06T19:30:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_sl_first",
        "risk_points": 6.035,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 448,
      "candidate_id": "candidate_2026-04-07T00-15-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-04-07T00: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-04-07T00:15:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-04-07T01:05:00Z",
        "fib_touch_time": "2026-04-07T01:15:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_sl_first",
        "risk_points": 10.105,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 449,
      "candidate_id": "candidate_2026-04-07T00-45-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-04-07T00: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-04-07T00:45:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-04-07T01:05:00Z",
        "fib_touch_time": "2026-04-07T01:15:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_sl_first",
        "risk_points": 10.331,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 450,
      "candidate_id": "candidate_2026-04-07T05-30-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-04-07T05: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-04-07T05:30:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-04-07T08:20:00Z",
        "fib_touch_time": "2026-04-07T10:40:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_sl_first",
        "risk_points": 29.81,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 451,
      "candidate_id": "candidate_2026-04-07T06-15-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-04-07T06: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-04-07T06:15:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-04-07T08:20:00Z",
        "fib_touch_time": "2026-04-07T09:40:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_sl_first",
        "risk_points": 23.401,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 452,
      "candidate_id": "candidate_2026-04-07T07-30-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-04-07T07: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-04-07T07:30:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-04-07T08:10:00Z",
        "fib_touch_time": "2026-04-07T10:45:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_sl_first",
        "risk_points": 12.632,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 453,
      "candidate_id": "candidate_2026-04-07T09-00-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-04-07T09: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-04-07T09:00:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-04-07T11:10:00Z",
        "fib_touch_time": "2026-04-07T11:40:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 28.538,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 454,
      "candidate_id": "candidate_2026-04-07T09-15-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-04-07T09: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-04-07T09:15:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-04-07T11:10:00Z",
        "fib_touch_time": "2026-04-07T11:40:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 28.989,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 455,
      "candidate_id": "candidate_2026-04-07T10-15-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-04-07T10: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-04-07T10:15:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-04-07T10:45:00Z",
        "fib_touch_time": "2026-04-07T12:05:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 13.669,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 456,
      "candidate_id": "candidate_2026-04-07T11-45-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-04-07T11: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-04-07T11:45:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-04-07T14:00:00Z",
        "fib_touch_time": "2026-04-07T14:20:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 18.258,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 457,
      "candidate_id": "candidate_2026-04-07T13-15-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-04-07T13: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-04-07T13:15:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-04-07T13:40:00Z",
        "fib_touch_time": "2026-04-07T13:50:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp2_first",
        "risk_points": 12.08,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 458,
      "candidate_id": "candidate_2026-04-07T13-30-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-04-07T13: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-04-07T13:30:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-04-07T13:40:00Z",
        "fib_touch_time": "2026-04-07T13:50:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp2_first",
        "risk_points": 12.261,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 459,
      "candidate_id": "candidate_2026-04-07T15-30-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-04-07T15: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-04-07T15:30:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-04-07T16:00:00Z",
        "fib_touch_time": "2026-04-07T16:05:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 12.399,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 460,
      "candidate_id": "candidate_2026-04-08T03-15-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-04-08T03: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-04-08T03:15:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-04-08T05:45:00Z",
        "fib_touch_time": "2026-04-08T07:00:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_sl_first",
        "risk_points": 15.422,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 461,
      "candidate_id": "candidate_2026-04-08T03-30-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-04-08T03: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-04-08T03:30:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-04-08T05:45:00Z",
        "fib_touch_time": "2026-04-08T07:00:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_sl_first",
        "risk_points": 16.034,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 462,
      "candidate_id": "candidate_2026-04-08T04-15-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-04-08T04: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-04-08T04:15:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-04-08T05:30:00Z",
        "fib_touch_time": "2026-04-08T07:35:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 14.575,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 463,
      "candidate_id": "candidate_2026-04-08T18-15-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-04-08T18: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-04-08T18:15:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-04-08T18:35:00Z",
        "fib_touch_time": "2026-04-08T19:50:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 13.739,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 464,
      "candidate_id": "candidate_2026-04-09T01-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-04-09T01: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-04-09T01:00:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-04-09T01:10:00Z",
        "fib_touch_time": "2026-04-09T01:20:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 9.75,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 465,
      "candidate_id": "candidate_2026-04-09T08-30-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-04-09T08: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-04-09T08:30:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-04-09T09:35:00Z",
        "fib_touch_time": "2026-04-09T09:45:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 5.456,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 466,
      "candidate_id": "candidate_2026-04-09T11-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-04-09T11: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-04-09T11:00:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-04-09T11:35:00Z",
        "fib_touch_time": "2026-04-09T12:10:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_sl_first",
        "risk_points": 4.646,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    },
    {
      "order": 467,
      "candidate_id": "candidate_2026-04-09T13-30-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-04-09T13: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-04-09T13:30:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-04-09T13:35:00Z",
        "fib_touch_time": "2026-04-09T13:50:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 9.324,
        "notes": "Passes mechanical sweep + structure confirmation + Fib 50/62 retrace filter. Requires TradingView Bar Replay before any journal promotion."
      },
      "journal_promotion": false
    }
  ]
}
