[
  {
    "actions": [
      {
        "action": "navigate",
        "type": "navigate",
        "url": "{base_url}/purchase-orders"
      },
      {
        "action": "wait_for",
        "selector": "input[placeholder=\"Search PO, supplier or project...\"]",
        "timeout_ms": 30000,
        "type": "wait_for_selector"
      },
      {
        "action": "click",
        "selector": "[data-testid=\"po-filter-pending-approval\"]",
        "type": "click"
      },
      {
        "action": "wait_for",
        "selector": "tr:has-text(\"Pending Approval\")",
        "timeout_ms": 30000,
        "type": "wait_for_selector"
      },
      {
        "text": "Pending Approval",
        "type": "assert_text"
      },
      {
        "text": "Purchase Orders",
        "type": "assert_text"
      }
    ],
    "capture_each_step": true,
    "expected_result": "After creating a PO whose total exceeds the \u00a35,000 approval limit, the PO appears in the Pending Approval list (not Requested) and is approvable from the same Pending Approval surface \u2014 the Telegram Approve / Reject buttons resolve against the same status.",
    "human_journey": true,
    "name": "purchase-order-over-limit-auto-submits-for-approval",
    "path": "/purchase-orders",
    "selectors": [],
    "source": "proof_contract",
    "start_path": "/",
    "texts": [
      "Purchase Orders"
    ]
  },
  {
    "actions": [
      {
        "action": "navigate",
        "type": "navigate",
        "url": "{base_url}/"
      },
      {
        "action": "wait_for",
        "selector": "a[href=\"/purchase-orders\"]",
        "timeout_ms": 30000,
        "type": "wait_for_selector"
      },
      {
        "action": "click",
        "selector": "a[href=\"/purchase-orders\"]",
        "type": "click"
      },
      {
        "action": "wait_for",
        "selector": "input[placeholder=\"Search PO, supplier or project...\"]",
        "timeout_ms": 30000,
        "type": "wait_for_selector"
      },
      {
        "action": "click",
        "selector": "[data-testid=\"po-filter-pending-approval\"]",
        "type": "click"
      },
      {
        "action": "wait_for",
        "selector": "[data-testid=\"po-filter-pending-approval\"]",
        "timeout_ms": 10000,
        "type": "wait_for_selector"
      },
      {
        "text": "Purchase Orders",
        "type": "assert_text"
      }
    ],
    "capture_each_step": true,
    "expected_result": "The /purchase-orders page loads via sidebar nav and the Pending Approval filter tab is interactive. Backend fix: backend/services/po_approval_reminder.py now excludes Requested-status POs from the Telegram digest (filter changed from [\"Pending Approval\", \"Requested\", \"On Hold\"] to [\"Pending Approval\", \"On Hold\"]). The code diff on the deployed branch is the definitive proof; this L2 check confirms the purchase orders page is functional and the filter control is reachable.",
    "human_journey": true,
    "name": "po-telegram-digest-excludes-requested-2026-06-16",
    "path": "/purchase-orders",
    "selectors": [],
    "source": "proof_contract",
    "start_path": "/",
    "texts": [
      "Purchase Orders"
    ]
  }
]