Skip to content

Commit 62a1c19

Browse files
committed
docs(service-automation): name the follow-up card for the resumed leg in the changeset scope note
The scope paragraph pointed at an unnumbered follow-up because the card did not exist when it was written. It does now: #18714, the resumed-leg fail-open and the up-bubble path that strands the parent `paused`. One line, one token. No rewording, no behaviour change. Claude-Session: https://claude.ai/code/session_01QGMBhvUoyD8t5zY8xHQhnP Co-authored-by: Claude <noreply@anthropic.com>
1 parent d66cbd6 commit 62a1c19

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

.changeset/18110-subflow-map-refused-rollup.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,6 @@ A child flow that runs to completion in one go and ends on an `end` node declari
1414
-**A refusal is still not a failure.** It does not consume retry budget, is not routable by a `fault` edge, and is not counted in `nodes[].failures`.
1515
- **Region-boundary diagnostic, text only**: the message a structured region raises when a refusal tries to cross it now names whichever node carried the refusal, instead of asserting it was an `end` node — which, for a refusing `subflow`/`map` inside a region, sent the author looking for a node that was not in their region. Region **semantics** are unchanged.
1616

17-
**Scope — the RESUMED leg is not covered.** This fixes the path where the child run finishes inside the parent's own `engine.execute` call and its outcome is read from that return value. A child that durably PAUSES first — a nested `approval` / `screen` / `wait` — and only refuses when it is later resumed still reaches its parent through the resume machinery, which reads the child's outcome at different seams and does not consult `status: 'refused'` at any of them. Both of those seams pre-date this change and neither is a regression of it, but neither is closed by it either, and the resumed leg is the one a screen flow actually takes. A follow-up card covers it.
17+
**Scope — the RESUMED leg is not covered.** This fixes the path where the child run finishes inside the parent's own `engine.execute` call and its outcome is read from that return value. A child that durably PAUSES first — a nested `approval` / `screen` / `wait` — and only refuses when it is later resumed still reaches its parent through the resume machinery, which reads the child's outcome at different seams and does not consult `status: 'refused'` at any of them. Both of those seams pre-date this change and neither is a regression of it, but neither is closed by it either, and the resumed leg is the one a screen flow actually takes. A follow-up card covers it: #18714.
1818

1919
For third-party node executors this is additive: an executor that never sets `refuse` behaves exactly as before.

0 commit comments

Comments
 (0)