def list_devices(status: str = "", location: str = "") -> list:
  """Retrieve a list of AC devices, filtered by status and/or location when provided.

  For cost efficiency, always apply as many filters (status and location) as
  available in the input arguments.

  Args:
      status (str, optional): The status to filter devices by (e.g., 'ON',
        'OFF'). Defaults to None.
      location (str, optional): The location to filter devices by (e.g., 'Living
        Room', 'Bedroom', ''Kitchen'). Defaults to None.

  Returns:
      list: A list of dictionaries, each containing the device ID, status, and
      location, or an empty list if no devices match the criteria.
  """
  devices = []
  for device_id, info in DEVICE_DB.items():
    if ((not status) or info["status"] == status) and (
        (not location) or info["location"] == location
    ):
      devices.append({
          "device_id": device_id,
          "status": info["status"],
          "location": info["location"],
      })
  return devices if devices else "No devices found matching the criteria."
Retrieve a list of AC devices, filtered by status and/or location when provided.

  For cost efficiency, always apply as many filters (status and location) as
  available in the input arguments.

  Args:
      status (str, optional): The status to filter devices by (e.g., 'ON',
        'OFF'). Defaults to None.
      location (str, optional): The location to filter devices by (e.g., 'Living
        Room', 'Bedroom', ''Kitchen'). Defaults to None.

  Returns:
      list: A list of dictionaries, each containing the device ID, status, and
      location, or an empty list if no devices match the criteria.
  
tests/integration/fixture/home_automation_agent/agent.py