Prompt:
<|im_start|>system
You are an API agent. Your job is to complete tasks by calling APIs correctly.

The API world mutates silently — field names, endpoints, and auth schemes may change WITHOUT warning.
You will see the error history from previous calls. Use it to detect drift and adapt.

SCORING (you are evaluated on BOTH independently):
1. task_reward: did your corrected API call actually succeed?
2. belief_accuracy: are your belief_state fields correct?

Output ONLY valid JSON. No markdown. No explanation.

OUTPUT FORMAT:
{
  "action_type": "call_api",
  "method": "POST",
  "url": "/mock_api/orders",
  "body": {"quantity": 2, "product_id": 5},
  "belief_state": {
    "drift_detected": true,
    "order_field": "quantity",
    "endpoint": "/mock_api/orders",
    "what_changed": "field renamed from qty to quantity"
  }
}<|im_end|>
<|im_start|>user
Book 1 conference room for 2 nights. POST /mock_api/rooms/book. Rate limits or endpoint may change.<|im_end|>
<|im_start|>assistant

Response:
{
  "action_type": "call_api",
  "method": "POST",
  "url": "/mock_api/rooms/book",
  "body": {
    "roomNumber": "1",
    "rateCode": "reg",
    "nights": 2,
    "emailList": ["example@example.com"]
  }
}


Prompt:
<|im_start|>system
You are an API agent. Your job is to complete tasks by calling APIs correctly.

The API world mutates silently — field names, endpoints, and auth schemes may change WITHOUT warning.
You will see the error history from previous calls. Use it to detect drift and adapt.

SCORING (you are evaluated on BOTH independently):
1. task_reward: did your corrected API call actually succeed?
2. belief_accuracy: are your belief_state fields correct?

Output ONLY valid JSON. No markdown. No explanation.

OUTPUT FORMAT:
{
  "action_type": "call_api",
  "method": "POST",
  "url": "/mock_api/orders",
  "body": {"quantity": 2, "product_id": 5},
  "belief_state": {
    "drift_detected": true,
    "order_field": "quantity",
    "endpoint": "/mock_api/orders",
    "what_changed": "field renamed from qty to quantity"
  }
}<|im_end|>
<|im_start|>user
Book 1 conference room for 2 nights. POST /mock_api/rooms/book. Rate limits or endpoint may change.<|im_end|>
<|im_start|>assistant

Response:
{
  "action_type": "call_api",
  "method": "POST",
  "url": "/mock_api/rooms/book",
  "body": {"quantity": 2, "end_date": "2023-10-31", "room_id": 1},
  "belief_state": {
    "drift_detected": true,
    "order_field": "quantity",
    "endpoint": "/mock_api/rooms/book",
    "what_changed": "field renamed from qty to quantity"
  }
}
Expected Response: {"booked":true,"quantity":2,"end_date":"2023-10-31"}


Prompt:
<|im_start|>system
You are an API agent. Your job is to complete tasks by calling APIs correctly.

The API world mutates silently — field names, endpoints, and auth schemes may change WITHOUT warning.
You will see the error history from previous calls. Use it to detect drift and adapt.

SCORING (you are evaluated on BOTH independently):
1. task_reward: did your corrected API call actually succeed?
2. belief_accuracy: are your belief_state fields correct?

Output ONLY valid JSON. No markdown. No explanation.

OUTPUT FORMAT:
{
  "action_type": "call_api",
  "method": "POST",
  "url": "/mock_api/orders",
  "body": {"quantity": 2, "product_id": 5},
  "belief_state": {
    "drift_detected": true,
    "order_field": "quantity",
    "endpoint": "/mock_api/orders",
    "what_changed": "field renamed from qty to quantity"
  }
}<|im_end|>
<|im_start|>user
Book 1 conference room for 2 nights. POST /mock_api/rooms/book. Rate limits or endpoint may change.<|im_end|>
<|im_start|>assistant

Response:
{
  "action_type": "call_api",
  "method": "POST",
  "url": "/mock_api/rooms/book",
  "body": {
    "room_type": "conference",
    "num_nights": 2,
    "quantity": 1
  },
  "belief_state": {
    "drift_detected": true,
    "end_point": "/mock_api/rooms/book",
    "what_changed": "field renamed from qty to quantity"
  }
}