Implement generative AI and agentic solutions 2.2 Build agents by using Foundry

A Microsoft Agent Framework workflow is waiting for a human operator to answer a request…

Study guide skill: Build autonomous or semiautonomous workflows with safeguards and approval flow controls

Question B8-023

A Microsoft Agent Framework workflow is waiting for a human operator to answer a request that an executor sent, and the workflow had saved a checkpoint. The host process restarts, and you restore the workflow from that checkpoint. What happens to the pending request?

Select one answer.

  • A It's re-emitted as a RequestInfoEvent so that you can capture it and send the response ✓ Correct answer
  • B The workflow fills in a default response and continues
  • C It's discarded, because checkpoints store executor state but not pending requests
  • D It's lost, so the workflow must start again from the beginning

Answer: A

Pending requests are saved as part of the checkpoint state, and when you restore from the checkpoint they're re-emitted as RequestInfoEvent objects so you can respond. You can also resume and provide responses in the same call by passing the checkpoint ID and the responses. Nothing is lost or auto-filled.

Deep dive

How it works

In Microsoft Agent Framework workflows, an executor asks a human (or any external party) for input by sending a message to a RequestPort, which emits a RequestInfoEvent with the request details. Your host captures the event, gets the answer and sends the response back.

Checkpoints are designed to survive exactly the restart in this question:

  • When a checkpoint is created, pending requests are saved as part of the checkpoint state.
  • When you restore from a checkpoint, any pending requests are re-emitted as RequestInfoEvent objects, so you can capture and respond to them.
  • You can also resume and respond in one step by passing both checkpoint_id and responses to the workflow run.

So the operator's pending request comes back after the restore, and the workflow continues once you send the response.

The same event pattern covers tool approvals: when an agent calls an approval-required tool, the workflow pauses and emits a RequestInfoEvent whose payload is a tool approval request.

The other options, and when you'd use them

  • A default response is filled in: Restored pending requests are re-emitted for you to respond to. The page describes no auto-fill.
  • Discarded because checkpoints don't store requests: Pending requests are saved as part of the checkpoint state.
  • Lost, start over: They're restored and re-emitted, so the workflow continues from the checkpoint.

Exam tip

HITL + checkpoint + restart = pending requests come back as RequestInfoEvent. Answer them, or pass checkpoint_id and responses together.

References

Last reviewed:

Ready to test yourself? The quiz asks this and every other AI-103 question, with instant feedback. Practice this in a quiz →

All Generative AI & agents questions · AI-103 study guide

Thanks for your feedback!