Consult request_state only for the question a resolver is asking (#3019)
This commit is contained in:
parent
533c6a8226
commit
8f2c97b769
1 changed files with 321 additions and 89 deletions
|
|
@ -60,10 +60,11 @@ uv run python -m stories.refund_desk.client --http
|
|||
consumer can abort.
|
||||
- **Memoization scope.** Each question is asked at most once per call, and
|
||||
within a round each resolver runs at most once, keyed by function identity.
|
||||
Across 2026 rounds only *elicited* outcomes persist (in `requestState`); a
|
||||
resolver that resolves without eliciting is pure and may re-run each round.
|
||||
An eliciting resolver's body runs again too — once to ask, once more to
|
||||
consume its answer.
|
||||
Across 2026 rounds only *elicited* outcomes persist (in `requestState`); any
|
||||
resolver's body may run again on each round the call passes through. A
|
||||
recorded answer is consulted only when the resolver asks its question again:
|
||||
it satisfies the question without re-prompting the user, and it never stands
|
||||
in for a value the resolver computes itself.
|
||||
An answer is matched back to its question when the call resumes, so an
|
||||
eliciting resolver must derive its question deterministically from the
|
||||
tool's arguments and earlier answers; a per-call generated value (a
|
||||
|
|
|
|||
Loading…
Reference in a new issue