turnframe-understand
Turn understanding for Turnframe, as small verified model tasks.
A message is split into units, and each unit is routed to the operations it asks for.
Each of those acts is located on a record, and its arguments extracted and verified. Each
step is its own short task, run by turnframe-tasks under its own profile and the turn's
budget. Code then assembles the
answers into one Understanding, which the reducer reads. Nothing has an effect until the
whole message is understood.
Models judge language and code checks structure. A task points at the user's words by number; a text value also copies them, which may narrow the pointer and never move it. Dates and amounts come back as expressions that code evaluates. Every choice is a closed set built for the call. A verifier checks each value against what the user said, and it can only take away: a value it doubts is asked for again.
Each decision is also published as a Step, so an application can show the reading as it
happens.
Words segmentation read as small talk and coverage as an act go back to segmentation once,
told what coverage saw; a second reading of small talk runs nothing. A turn's Settings can
ask for more: a cross_check of the whole reading against the message, whose findings send one
step of one act back and whose last round holds what it still doubts. The runtime's high
effort turns it on (ADR-020).
See docs/adr/ADR-015-models-judge-language-code-checks-structure.md and
docs/adr/ADR-016-understanding-is-a-bounded-set-of-small-verified-model-tasks.md.