Expand description
The whole-turn reducer (spec §13).
DefaultTurnReducer is the deterministic decision engine: every understood act
comes out with an explicit result (I11), executable commands are grouped into
batches, and the plan hashes to a value a replay reproduces (I20). It does no I/O,
reads no clock and consults no randomness.
| Step | What it does |
|---|---|
| limits | an understanding over the deployment’s limits is refused whole |
| understanding | an act that asks for a value or is held keeps that result |
| catalog | an unoffered operation, or arguments its schema refuses, refuses the act |
| prerequisites | an act on a record an earlier act opens waits for that act |
| targets | one target per act, through TargetResolver |
| compilation, validation, policy | per command, the domain first |
| batching | by case and atomicity scope; mutations on one case commit together |
| answers | one AnswerTask per question, an unsafe basis overridden |
| self-check | ReductionPlan::validate runs before the plan is returned |
Build one reducer per turn: the states it compiles against are the turn’s own.
Modules§
- notice
- Stable codes of the notices the default reducer emits.
- rejection
- Rejection codes the default reducer produces.
Structs§
- Default
Turn Reducer - The deterministic whole-turn reducer of §13. Build one per turn.
- Notice
Copy - Server-authored copy for everything the reducer writes itself.
- Reduced
Turn - A reduction plus the envelopes its confirmation cards will authorize (§15.3): a click resumes exactly the commands that were reviewed.
Constants§
- CONDITION_
HOLDS_ ANSWER - Answer key of the “yes, the condition holds” option on the clarification
card an
ConstraintKind::ApplyOnlyIfproduces.