Skip to content

Commit 432d269

Browse files
authored
interrupt - activate - set context separately (#1194)
1 parent ab5f8ee commit 432d269

File tree

5 files changed

+9
-16
lines changed

5 files changed

+9
-16
lines changed

src/strands/event_loop/event_loop.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -483,7 +483,8 @@ async def _handle_tool_execution(
483483

484484
if interrupts:
485485
# Session state stored on AfterInvocationEvent.
486-
agent._interrupt_state.activate(context={"tool_use_message": message, "tool_results": tool_results})
486+
agent._interrupt_state.context = {"tool_use_message": message, "tool_results": tool_results}
487+
agent._interrupt_state.activate()
487488

488489
agent.event_loop_metrics.end_cycle(cycle_start_time, cycle_trace)
489490
yield EventLoopStopEvent(

src/strands/interrupt.py

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -53,13 +53,8 @@ class _InterruptState:
5353
context: dict[str, Any] = field(default_factory=dict)
5454
activated: bool = False
5555

56-
def activate(self, context: dict[str, Any] | None = None) -> None:
57-
"""Activate the interrupt state.
58-
59-
Args:
60-
context: Context associated with the interrupt event.
61-
"""
62-
self.context = context or {}
56+
def activate(self) -> None:
57+
"""Activate the interrupt state."""
6358
self.activated = True
6459

6560
def deactivate(self) -> None:

tests/strands/agent/test_agent.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2001,8 +2001,9 @@ def test_agent__call__resume_interrupt(mock_model, tool_decorated, agenerator):
20012001
reason="test reason",
20022002
)
20032003

2004-
agent._interrupt_state.activate(context={"tool_use_message": tool_use_message, "tool_results": []})
2004+
agent._interrupt_state.context = {"tool_use_message": tool_use_message, "tool_results": []}
20052005
agent._interrupt_state.interrupts[interrupt.id] = interrupt
2006+
agent._interrupt_state.activate()
20062007

20072008
interrupt_response = {}
20082009

tests/strands/event_loop/test_event_loop.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -964,8 +964,9 @@ async def test_event_loop_cycle_interrupt_resume(agent, model, tool, tool_times_
964964
},
965965
]
966966

967-
agent._interrupt_state.activate(context={"tool_use_message": tool_use_message, "tool_results": tool_results})
967+
agent._interrupt_state.context = {"tool_use_message": tool_use_message, "tool_results": tool_results}
968968
agent._interrupt_state.interrupts[interrupt.id] = interrupt
969+
agent._interrupt_state.activate()
969970

970971
interrupt_response = {}
971972

tests/strands/test_interrupt.py

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -27,14 +27,9 @@ def test_interrupt_to_dict(interrupt):
2727
def test_interrupt_state_activate():
2828
interrupt_state = _InterruptState()
2929

30-
interrupt_state.activate(context={"test": "context"})
31-
30+
interrupt_state.activate()
3231
assert interrupt_state.activated
3332

34-
tru_context = interrupt_state.context
35-
exp_context = {"test": "context"}
36-
assert tru_context == exp_context
37-
3833

3934
def test_interrupt_state_deactivate():
4035
interrupt_state = _InterruptState(context={"test": "context"}, activated=True)

0 commit comments

Comments
 (0)