ctrlrun.FrameworkInterrupt — class, defined at src/ctrlrun/adapter.py:179
interrupt() may exit non-locally: LangGraph’s raises, the graph catches it and
checkpoints, and the resumed run re-enters here and returns. The provider never catches it.
An interrupt() that raises anything else is that framework’s failure and not a decision.
Nothing is written and it propagates. There is no default, and in particular no default
granted=False: a denial is a human’s answer, and manufacturing one from a crashed
interrupt puts a refusal in the evidence log that nobody made.