{
  "id": "chess-en-passant-001",
  "profile": "knowledge-object",
  "xks_version": "1.0",
  "claim": "En passant — это особый ход пешки, при котором она берёт вражескую пешку «на проходе». Действует только в ход сразу после двойного хода противника.",
  "game": "chess",
  "domain": "game-mechanics",
  "confidence": 1,
  "provenance": {
    "claim": {
      "source": "FIDE Laws of Chess, действующий свод (в силе с 1 января 2023), Article 3.7.3.1–3.7.3.2",
      "timestamp": "2026-08-08"
    }
  },
  "decay": {
    "trigger": "Изменение правил FIDE",
    "check_after": "2027-01-01"
  },
  "layers": {
    "answer": {
      "text": "En passant — особый ход: если твой противник только что сделал двойной ход пешкой мимо твоей пешки, ты можешь взять её «на лету» — как если бы она прошла только одну клетку. Этот шанс даётся только в следующий ход.",
      "language": "ru",
      "reading_level": "beginner"
    },
    "evidence": {
      "ref": "https://handbook.fide.com/chapter/e012023",
      "section": "Article 3.7.3.1–3.7.3.2",
      "quote": "A pawn occupying a square on the same rank as and on an adjacent file to an opponent's pawn which has just advanced two squares in one move from its original square may capture this opponent's pawn as though the latter had been moved only one square. This capture is only legal on the move following this advance and is called an 'en passant' capture.",
      "type": "authoritative-rule"
    },
    "model": {
      "description": "Условия для en passant (работают симметрично для обеих сторон): (1) Ход делается пешкой на своей 5-й горизонтали относительно направления атаки — 5-й для белых, 4-й для чёрных. (2) Противник только что сделал двойной ход пешкой на соседний столбец. (3) Взятие возможно ТОЛЬКО в следующий ход — «право сгорает».",
      "formal": {
        "preconditions": [
          "attacker_pawn.rank == (attacker_pawn.color == 'white' ? 5 : 4)",
          "opponent_pawn.last_move == double_advance",
          "opponent_pawn.file == attacker_pawn.file ± 1",
          "current_turn == opponent_last_move_turn + 1"
        ],
        "result": "attacker_pawn moves diagonally, opponent_pawn removed from board"
      }
    },
    "play": {
      "type": "browser-interactive-scene",
      "config": {
        "title": "En Passant — попробуй сам",
        "mechanics": {
          "type": "chess-mini",
          "fen": "8/8/8/3pP3/8/8/8/8 w - d6 0 1",
          "success_fen": "8/8/3P4/8/8/8/8/8 b - - 0 1",
          "instruction": "Белая пешка на e5. Чёрная только что сделала двойной ход d7-d5. Возьми её en passant! Нажми на пешку e5, затем на клетку d6.",
          "solution": "e5d6",
          "highlight_squares": [
            "e5",
            "d5",
            "d6"
          ],
          "on_success": "Правильно! Пешка d5 взята. Белая пешка теперь на d6.",
          "on_fail": "Попробуй ещё раз. Можно взять пешку d5, пройдя на d6."
        }
      }
    },
    "quiz": {
      "questions": [
        {
          "id": "ep-q1",
          "text": "На каком ходу можно применить en passant?",
          "options": [
            "В любой момент игры",
            "Только сразу после двойного хода противника",
            "Только если твоя пешка стоит на своей исходной горизонтали",
            "Только если ты отстаёшь по материалу"
          ],
          "correct": 1,
          "explanation": "«Право» en passant сгорает: если не взять немедленно следующим ходом — оно исчезает. Атакующая пешка всегда стоит на горизонтали, соседней с полем, куда шагнула пешка противника при двойном ходе (5-я для белых, 4-я для чёрных) — это следствие правила, а не отдельное условие."
        },
        {
          "id": "ep-q2",
          "text": "Где оказывается твоя пешка после взятия en passant?",
          "options": [
            "На клетке, где стояла вражеская пешка",
            "На диагональной клетке позади вражеской пешки",
            "На клетке, которую вражеская пешка «пропустила» (как будто она прошла 1 клетку)",
            "Возвращается на свою исходную позицию"
          ],
          "correct": 2,
          "explanation": "Твоя пешка занимает клетку, через которую «проскочила» вражеская — как если бы та прошла только одну клетку."
        }
      ]
    },
    "machine": {
      "local_check": "node scripts/check-chess-en-passant.mjs",
      "acceptance_sql": "SELECT COUNT(*) > 0 AS passed FROM pko_runs WHERE pko_id = 'chess-en-passant-001' AND layer = 'play' AND outcome = 'success' AND run_at >= TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 30 DAY)",
      "selftest_assertion": "en-passant rule is formally defined with all 6 layers and authoritative evidence ref",
      "coverage_note": "local_check runs an independent simulation of the en passant rule against this capsule's own play scenario and formal model (scripts/check-chess-en-passant.mjs) — it does not depend on Chess Benchmark v0.1, retired 2026-08-12 for a wrong answer key (see docs/CHESS-BENCHMARK-V0.1.md). acceptance_sql is an optional external observatory log and requires pko_runs in BigQuery."
    }
  }
}
