{
  "metadata": {
    "batch_id": "batch_002",
    "purpose": "control_review_evidence_non_final",
    "generated_at": "2026-07-17T10:12:43Z",
    "source_batch": "hybrid/reviews/manual_replay_batch_002.json",
    "source_batch_sha16": "3a010382a2a69692",
    "source_reviews": "hybrid/reviews/reviews.json",
    "source_reviews_sha16": "2a4ba0dced3f47a8",
    "item_count": 25,
    "breakdown": {
      "rejected": 17,
      "needs_more_context": 8
    },
    "isFinalBacktest": false,
    "journal_promotions": 0,
    "safety": "analysis_only; no trading/live order; no journal promotion; manual_replay_batch_001 untouched",
    "notes": "Control evidence file only. Use for chronological manual replay decisions; do not count as confirmed trades."
  },
  "items": [
    {
      "order": 808,
      "global_order": 808,
      "candidate_id": "candidate_2026-01-02T04-45-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-01-02T04:45:00Z",
      "direction": "Short",
      "input_status": "needs_more_context",
      "control_status": "rejected",
      "classification": "not_enough_confirmation",
      "rationale": "Control classification: insufficient M15/M5 confirmation or no M5 structure confirmation within the allowed window; not eligible for journal.",
      "evidence": {
        "deterministic_status": "needs_more_context",
        "deterministic_outcome": "no_structure_confirmation_within_3h",
        "candidate_time": "2026-01-02T04:45:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": null,
        "fib_touch_time": null,
        "invalid_before_fib_touch": null,
        "mechanical_outcome": null,
        "risk_points": null,
        "notes": "HTF context insufficient for confirmed trade; early dataset or not enough D/H4/H1 history. No M5 close beyond local structure within 3h after sweep."
      },
      "journal_promotion": false
    },
    {
      "order": 809,
      "global_order": 809,
      "candidate_id": "candidate_2026-01-02T05-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-01-02T05:00:00Z",
      "direction": "Long",
      "input_status": "needs_more_context",
      "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_more_context",
        "deterministic_outcome": "fib_entry_found_but_htf_context_insufficient",
        "candidate_time": "2026-01-02T05:00:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-01-02T05:25:00Z",
        "fib_touch_time": "2026-01-02T06:05:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 3.45,
        "notes": "HTF context insufficient for confirmed trade; early dataset or not enough D/H4/H1 history. Fib 50/62 entry condition found, but HTF narrative must be manually checked before acceptance."
      },
      "journal_promotion": false
    },
    {
      "order": 810,
      "global_order": 810,
      "candidate_id": "candidate_2026-01-02T07-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-01-02T07:00:00Z",
      "direction": "Long",
      "input_status": "needs_more_context",
      "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_more_context",
        "deterministic_outcome": "fib_entry_found_but_htf_context_insufficient",
        "candidate_time": "2026-01-02T07:00:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-01-02T07:55:00Z",
        "fib_touch_time": "2026-01-02T13:25:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_sl_first",
        "risk_points": 4.882,
        "notes": "HTF context insufficient for confirmed trade; early dataset or not enough D/H4/H1 history. Fib 50/62 entry condition found, but HTF narrative must be manually checked before acceptance."
      },
      "journal_promotion": false
    },
    {
      "order": 811,
      "global_order": 811,
      "candidate_id": "candidate_2026-01-02T09-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-01-02T09:00:00Z",
      "direction": "Long",
      "input_status": "needs_more_context",
      "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_more_context",
        "deterministic_outcome": "fib_entry_found_but_htf_context_insufficient",
        "candidate_time": "2026-01-02T09:00:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-01-02T11:20:00Z",
        "fib_touch_time": "2026-01-02T11:30:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 5.377,
        "notes": "HTF context insufficient for confirmed trade; early dataset or not enough D/H4/H1 history. Fib 50/62 entry condition found, but HTF narrative must be manually checked before acceptance."
      },
      "journal_promotion": false
    },
    {
      "order": 812,
      "global_order": 812,
      "candidate_id": "candidate_2026-01-02T09-15-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-01-02T09:15:00Z",
      "direction": "Short",
      "input_status": "needs_more_context",
      "control_status": "rejected",
      "classification": "not_enough_confirmation",
      "rationale": "Control classification: insufficient M15/M5 confirmation or no M5 structure confirmation within the allowed window; not eligible for journal.",
      "evidence": {
        "deterministic_status": "needs_more_context",
        "deterministic_outcome": "no_structure_confirmation_within_3h",
        "candidate_time": "2026-01-02T09:15:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": null,
        "fib_touch_time": null,
        "invalid_before_fib_touch": null,
        "mechanical_outcome": null,
        "risk_points": null,
        "notes": "HTF context insufficient for confirmed trade; early dataset or not enough D/H4/H1 history. No M5 close beyond local structure within 3h after sweep."
      },
      "journal_promotion": false
    },
    {
      "order": 813,
      "global_order": 813,
      "candidate_id": "candidate_2026-01-02T10-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-01-02T10:00:00Z",
      "direction": "Long",
      "input_status": "needs_more_context",
      "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_more_context",
        "deterministic_outcome": "fib_entry_found_but_htf_context_insufficient",
        "candidate_time": "2026-01-02T10:00:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-01-02T11:20:00Z",
        "fib_touch_time": "2026-01-02T11:50:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 5.995,
        "notes": "HTF context insufficient for confirmed trade; early dataset or not enough D/H4/H1 history. Fib 50/62 entry condition found, but HTF narrative must be manually checked before acceptance."
      },
      "journal_promotion": false
    },
    {
      "order": 814,
      "global_order": 814,
      "candidate_id": "candidate_2026-01-02T10-15-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-01-02T10:15:00Z",
      "direction": "Short",
      "input_status": "needs_more_context",
      "control_status": "rejected",
      "classification": "not_enough_confirmation",
      "rationale": "Control classification: insufficient M15/M5 confirmation or no M5 structure confirmation within the allowed window; not eligible for journal.",
      "evidence": {
        "deterministic_status": "needs_more_context",
        "deterministic_outcome": "no_structure_confirmation_within_3h",
        "candidate_time": "2026-01-02T10:15:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": null,
        "fib_touch_time": null,
        "invalid_before_fib_touch": null,
        "mechanical_outcome": null,
        "risk_points": null,
        "notes": "HTF context insufficient for confirmed trade; early dataset or not enough D/H4/H1 history. No M5 close beyond local structure within 3h after sweep."
      },
      "journal_promotion": false
    },
    {
      "order": 815,
      "global_order": 815,
      "candidate_id": "candidate_2026-01-02T10-30-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-01-02T10:30:00Z",
      "direction": "Long",
      "input_status": "needs_more_context",
      "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_more_context",
        "deterministic_outcome": "fib_entry_found_but_htf_context_insufficient",
        "candidate_time": "2026-01-02T10:30:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-01-02T10:50:00Z",
        "fib_touch_time": "2026-01-02T11:50:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 6.101,
        "notes": "HTF context insufficient for confirmed trade; early dataset or not enough D/H4/H1 history. Fib 50/62 entry condition found, but HTF narrative must be manually checked before acceptance."
      },
      "journal_promotion": false
    },
    {
      "order": 816,
      "global_order": 816,
      "candidate_id": "candidate_2026-01-02T16-45-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-01-02T16:45:00Z",
      "direction": "Short",
      "input_status": "needs_more_context",
      "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_more_context",
        "deterministic_outcome": "fib_entry_found_but_htf_context_insufficient",
        "candidate_time": "2026-01-02T16:45:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-01-02T18:10:00Z",
        "fib_touch_time": "2026-01-02T18:25:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 7.011,
        "notes": "HTF context insufficient for confirmed trade; early dataset or not enough D/H4/H1 history. Fib 50/62 entry condition found, but HTF narrative must be manually checked before acceptance."
      },
      "journal_promotion": false
    },
    {
      "order": 817,
      "global_order": 817,
      "candidate_id": "candidate_2026-01-02T18-15-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-01-02T18:15:00Z",
      "direction": "Long",
      "input_status": "needs_more_context",
      "control_status": "rejected",
      "classification": "not_enough_confirmation",
      "rationale": "Control classification: insufficient M15/M5 confirmation or no M5 structure confirmation within the allowed window; not eligible for journal.",
      "evidence": {
        "deterministic_status": "needs_more_context",
        "deterministic_outcome": "no_structure_confirmation_within_3h",
        "candidate_time": "2026-01-02T18:15:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": null,
        "fib_touch_time": null,
        "invalid_before_fib_touch": null,
        "mechanical_outcome": null,
        "risk_points": null,
        "notes": "HTF context insufficient for confirmed trade; early dataset or not enough D/H4/H1 history. No M5 close beyond local structure within 3h after sweep."
      },
      "journal_promotion": false
    },
    {
      "order": 818,
      "global_order": 818,
      "candidate_id": "candidate_2026-01-02T19-15-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-01-02T19:15:00Z",
      "direction": "Short",
      "input_status": "needs_more_context",
      "control_status": "rejected",
      "classification": "not_enough_confirmation",
      "rationale": "Control classification: insufficient M15/M5 confirmation or no M5 structure confirmation within the allowed window; not eligible for journal.",
      "evidence": {
        "deterministic_status": "needs_more_context",
        "deterministic_outcome": "no_structure_confirmation_within_3h",
        "candidate_time": "2026-01-02T19:15:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": null,
        "fib_touch_time": null,
        "invalid_before_fib_touch": null,
        "mechanical_outcome": null,
        "risk_points": null,
        "notes": "HTF context insufficient for confirmed trade; early dataset or not enough D/H4/H1 history. No M5 close beyond local structure within 3h after sweep."
      },
      "journal_promotion": false
    },
    {
      "order": 819,
      "global_order": 819,
      "candidate_id": "candidate_2026-01-02T21-00-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-01-02T21:00:00Z",
      "direction": "Short",
      "input_status": "needs_more_context",
      "control_status": "rejected",
      "classification": "not_enough_confirmation",
      "rationale": "Control classification: insufficient M15/M5 confirmation or no M5 structure confirmation within the allowed window; not eligible for journal.",
      "evidence": {
        "deterministic_status": "needs_more_context",
        "deterministic_outcome": "no_structure_confirmation_within_3h",
        "candidate_time": "2026-01-02T21:00:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": null,
        "fib_touch_time": null,
        "invalid_before_fib_touch": null,
        "mechanical_outcome": null,
        "risk_points": null,
        "notes": "HTF context insufficient for confirmed trade; early dataset or not enough D/H4/H1 history. No M5 close beyond local structure within 3h after sweep."
      },
      "journal_promotion": false
    },
    {
      "order": 820,
      "global_order": 820,
      "candidate_id": "candidate_2026-01-04T23-15-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-01-04T23:15:00Z",
      "direction": "Short",
      "input_status": "needs_more_context",
      "control_status": "rejected",
      "classification": "not_enough_confirmation",
      "rationale": "Control classification: insufficient M15/M5 confirmation or no M5 structure confirmation within the allowed window; not eligible for journal.",
      "evidence": {
        "deterministic_status": "needs_more_context",
        "deterministic_outcome": "no_structure_confirmation_within_3h",
        "candidate_time": "2026-01-04T23:15:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": null,
        "fib_touch_time": null,
        "invalid_before_fib_touch": null,
        "mechanical_outcome": null,
        "risk_points": null,
        "notes": "HTF context insufficient for confirmed trade; early dataset or not enough D/H4/H1 history. No M5 close beyond local structure within 3h after sweep."
      },
      "journal_promotion": false
    },
    {
      "order": 821,
      "global_order": 821,
      "candidate_id": "candidate_2026-01-05T00-30-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-01-05T00:30:00Z",
      "direction": "Short",
      "input_status": "needs_more_context",
      "control_status": "rejected",
      "classification": "not_enough_confirmation",
      "rationale": "Control classification: insufficient M15/M5 confirmation or no M5 structure confirmation within the allowed window; not eligible for journal.",
      "evidence": {
        "deterministic_status": "needs_more_context",
        "deterministic_outcome": "no_structure_confirmation_within_3h",
        "candidate_time": "2026-01-05T00:30:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": null,
        "fib_touch_time": null,
        "invalid_before_fib_touch": null,
        "mechanical_outcome": null,
        "risk_points": null,
        "notes": "HTF context insufficient for confirmed trade; early dataset or not enough D/H4/H1 history. No M5 close beyond local structure within 3h after sweep."
      },
      "journal_promotion": false
    },
    {
      "order": 822,
      "global_order": 822,
      "candidate_id": "candidate_2026-01-05T00-45-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-01-05T00:45:00Z",
      "direction": "Long",
      "input_status": "needs_more_context",
      "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_more_context",
        "deterministic_outcome": "fib_entry_found_but_htf_context_insufficient",
        "candidate_time": "2026-01-05T00:45:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-01-05T01:00:00Z",
        "fib_touch_time": "2026-01-05T01:10:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 14.276,
        "notes": "HTF context insufficient for confirmed trade; early dataset or not enough D/H4/H1 history. Fib 50/62 entry condition found, but HTF narrative must be manually checked before acceptance."
      },
      "journal_promotion": false
    },
    {
      "order": 823,
      "global_order": 823,
      "candidate_id": "candidate_2026-01-05T01-30-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-01-05T01:30:00Z",
      "direction": "Long",
      "input_status": "needs_more_context",
      "control_status": "rejected",
      "classification": "not_enough_confirmation",
      "rationale": "Control classification: insufficient M15/M5 confirmation or no M5 structure confirmation within the allowed window; not eligible for journal.",
      "evidence": {
        "deterministic_status": "needs_more_context",
        "deterministic_outcome": "no_structure_confirmation_within_3h",
        "candidate_time": "2026-01-05T01:30:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": null,
        "fib_touch_time": null,
        "invalid_before_fib_touch": null,
        "mechanical_outcome": null,
        "risk_points": null,
        "notes": "HTF context insufficient for confirmed trade; early dataset or not enough D/H4/H1 history. No M5 close beyond local structure within 3h after sweep."
      },
      "journal_promotion": false
    },
    {
      "order": 824,
      "global_order": 824,
      "candidate_id": "candidate_2026-01-05T01-45-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-01-05T01:45:00Z",
      "direction": "Short",
      "input_status": "needs_more_context",
      "control_status": "rejected",
      "classification": "not_enough_confirmation",
      "rationale": "Control classification: insufficient M15/M5 confirmation or no M5 structure confirmation within the allowed window; not eligible for journal.",
      "evidence": {
        "deterministic_status": "needs_more_context",
        "deterministic_outcome": "no_structure_confirmation_within_3h",
        "candidate_time": "2026-01-05T01:45:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": null,
        "fib_touch_time": null,
        "invalid_before_fib_touch": null,
        "mechanical_outcome": null,
        "risk_points": null,
        "notes": "HTF context insufficient for confirmed trade; early dataset or not enough D/H4/H1 history. No M5 close beyond local structure within 3h after sweep."
      },
      "journal_promotion": false
    },
    {
      "order": 825,
      "global_order": 825,
      "candidate_id": "candidate_2026-01-05T02-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-01-05T02:00:00Z",
      "direction": "Long",
      "input_status": "needs_more_context",
      "control_status": "rejected",
      "classification": "not_enough_confirmation",
      "rationale": "Control classification: insufficient M15/M5 confirmation or no M5 structure confirmation within the allowed window; not eligible for journal.",
      "evidence": {
        "deterministic_status": "needs_more_context",
        "deterministic_outcome": "no_structure_confirmation_within_3h",
        "candidate_time": "2026-01-05T02:00:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": null,
        "fib_touch_time": null,
        "invalid_before_fib_touch": null,
        "mechanical_outcome": null,
        "risk_points": null,
        "notes": "HTF context insufficient for confirmed trade; early dataset or not enough D/H4/H1 history. No M5 close beyond local structure within 3h after sweep."
      },
      "journal_promotion": false
    },
    {
      "order": 826,
      "global_order": 826,
      "candidate_id": "candidate_2026-01-05T02-30-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-01-05T02:30:00Z",
      "direction": "Short",
      "input_status": "needs_more_context",
      "control_status": "rejected",
      "classification": "not_enough_confirmation",
      "rationale": "Control classification: insufficient M15/M5 confirmation or no M5 structure confirmation within the allowed window; not eligible for journal.",
      "evidence": {
        "deterministic_status": "needs_more_context",
        "deterministic_outcome": "no_structure_confirmation_within_3h",
        "candidate_time": "2026-01-05T02:30:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": null,
        "fib_touch_time": null,
        "invalid_before_fib_touch": null,
        "mechanical_outcome": null,
        "risk_points": null,
        "notes": "HTF context insufficient for confirmed trade; early dataset or not enough D/H4/H1 history. No M5 close beyond local structure within 3h after sweep."
      },
      "journal_promotion": false
    },
    {
      "order": 827,
      "global_order": 827,
      "candidate_id": "candidate_2026-01-05T02-45-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-01-05T02:45:00Z",
      "direction": "Long",
      "input_status": "needs_more_context",
      "control_status": "rejected",
      "classification": "not_enough_confirmation",
      "rationale": "Control classification: insufficient M15/M5 confirmation or no M5 structure confirmation within the allowed window; not eligible for journal.",
      "evidence": {
        "deterministic_status": "needs_more_context",
        "deterministic_outcome": "no_structure_confirmation_within_3h",
        "candidate_time": "2026-01-05T02:45:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": null,
        "fib_touch_time": null,
        "invalid_before_fib_touch": null,
        "mechanical_outcome": null,
        "risk_points": null,
        "notes": "HTF context insufficient for confirmed trade; early dataset or not enough D/H4/H1 history. No M5 close beyond local structure within 3h after sweep."
      },
      "journal_promotion": false
    },
    {
      "order": 828,
      "global_order": 828,
      "candidate_id": "candidate_2026-01-05T02-45-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-01-05T02:45:00Z",
      "direction": "Short",
      "input_status": "needs_more_context",
      "control_status": "rejected",
      "classification": "not_enough_confirmation",
      "rationale": "Control classification: insufficient M15/M5 confirmation or no M5 structure confirmation within the allowed window; not eligible for journal.",
      "evidence": {
        "deterministic_status": "needs_more_context",
        "deterministic_outcome": "no_structure_confirmation_within_3h",
        "candidate_time": "2026-01-05T02:45:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": null,
        "fib_touch_time": null,
        "invalid_before_fib_touch": null,
        "mechanical_outcome": null,
        "risk_points": null,
        "notes": "HTF context insufficient for confirmed trade; early dataset or not enough D/H4/H1 history. No M5 close beyond local structure within 3h after sweep."
      },
      "journal_promotion": false
    },
    {
      "order": 829,
      "global_order": 829,
      "candidate_id": "candidate_2026-01-05T04-30-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-01-05T04:30:00Z",
      "direction": "Short",
      "input_status": "needs_more_context",
      "control_status": "rejected",
      "classification": "not_enough_confirmation",
      "rationale": "Control classification: insufficient M15/M5 confirmation or no M5 structure confirmation within the allowed window; not eligible for journal.",
      "evidence": {
        "deterministic_status": "needs_more_context",
        "deterministic_outcome": "no_structure_confirmation_within_3h",
        "candidate_time": "2026-01-05T04:30:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": null,
        "fib_touch_time": null,
        "invalid_before_fib_touch": null,
        "mechanical_outcome": null,
        "risk_points": null,
        "notes": "HTF context insufficient for confirmed trade; early dataset or not enough D/H4/H1 history. No M5 close beyond local structure within 3h after sweep."
      },
      "journal_promotion": false
    },
    {
      "order": 830,
      "global_order": 830,
      "candidate_id": "candidate_2026-01-05T05-30-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-01-05T05:30:00Z",
      "direction": "Short",
      "input_status": "needs_more_context",
      "control_status": "rejected",
      "classification": "not_enough_confirmation",
      "rationale": "Control classification: insufficient M15/M5 confirmation or no M5 structure confirmation within the allowed window; not eligible for journal.",
      "evidence": {
        "deterministic_status": "needs_more_context",
        "deterministic_outcome": "no_structure_confirmation_within_3h",
        "candidate_time": "2026-01-05T05:30:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": null,
        "fib_touch_time": null,
        "invalid_before_fib_touch": null,
        "mechanical_outcome": null,
        "risk_points": null,
        "notes": "HTF context insufficient for confirmed trade; early dataset or not enough D/H4/H1 history. No M5 close beyond local structure within 3h after sweep."
      },
      "journal_promotion": false
    },
    {
      "order": 831,
      "global_order": 831,
      "candidate_id": "candidate_2026-01-05T06-30-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-01-05T06:30:00Z",
      "direction": "Short",
      "input_status": "needs_more_context",
      "control_status": "rejected",
      "classification": "not_enough_confirmation",
      "rationale": "Control classification: insufficient M15/M5 confirmation or no M5 structure confirmation within the allowed window; not eligible for journal.",
      "evidence": {
        "deterministic_status": "needs_more_context",
        "deterministic_outcome": "no_structure_confirmation_within_3h",
        "candidate_time": "2026-01-05T06:30:00Z",
        "direction": "Short",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": null,
        "fib_touch_time": null,
        "invalid_before_fib_touch": null,
        "mechanical_outcome": null,
        "risk_points": null,
        "notes": "HTF context insufficient for confirmed trade; early dataset or not enough D/H4/H1 history. No M5 close beyond local structure within 3h after sweep."
      },
      "journal_promotion": false
    },
    {
      "order": 832,
      "global_order": 832,
      "candidate_id": "candidate_2026-01-05T07-30-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-01-05T07:30:00Z",
      "direction": "Long",
      "input_status": "needs_more_context",
      "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_more_context",
        "deterministic_outcome": "fib_entry_found_but_htf_context_insufficient",
        "candidate_time": "2026-01-05T07:30:00Z",
        "direction": "Long",
        "m15_sweep_reclaim": true,
        "m5_sweep_reclaim": true,
        "confirmation_time": "2026-01-05T08:15:00Z",
        "fib_touch_time": "2026-01-05T08:30:00Z",
        "invalid_before_fib_touch": false,
        "mechanical_outcome": "mechanical_tp1_first",
        "risk_points": 5.078,
        "notes": "HTF context insufficient for confirmed trade; early dataset or not enough D/H4/H1 history. Fib 50/62 entry condition found, but HTF narrative must be manually checked before acceptance."
      },
      "journal_promotion": false
    }
  ]
}
