---
title: "world-reader-arbitration — Mova code model"
description: "Mova code model of world/src/reader.rs: components with their labels, obernants and the model text."
url: "https://groupants.elamur.ai/free/en/mova/world/src/reader.rs.groupant/arbitration.groupant/"
---
Elamur: [Mova](https://md.mova.elamur.ai/free/en/) · [Dictionary](https://md.dictionary.elamur.ai/free/en/) · [Research](https://md.research.elamur.ai/free/en/) · **Groupants**

This page as HTML: <https://groupants.elamur.ai/free/en/mova/world/src/reader.rs.groupant/arbitration.groupant/>

# world-reader-arbitration

The groupant beside world/src/reader.rs in the Mova repository: what the code computes, what it never does, how to go back from its outputs, its invariants, cost and checks.

## Facts

- **kind:** groupant_fragment
- **status:** partial source bound model
- **source:** [`world/src/reader.rs`](https://github.com/ElamurAI/mova-free/blob/main/world/src/reader.rs)
- **source SHA-256:** `383aeebdc514654b…`
- **covers:** reader::arbitration; see model.md for exact behavioral scope and external dependencies (bytes 14431–17815)
- **part of:** [world-reader](https://md.groupants.elamur.ai/free/en/mova/world/src/reader.rs.groupant/)
- **repository folder:** [`world/src/reader.rs.groupant/arbitration.groupant`](https://github.com/ElamurAI/mova-free/tree/main/world/src/reader.rs.groupant/arbitration.groupant)
- **repository commit:** `855da7bd4a7b`

> **Implementation material.** A Mova code model describes this code at one source revision: partial models, finite checks and their stated scope. It is not a reviewed general exposition, and its labels are shown as written, never raised.

## Components

| component | label | where |
|---|---|---|
| **approximant** | partial source model | [forward](#forward) |
| **ast** | partial | `../syntax.json` |
| **composition** | partial source model | [composition](#composition) |
| **cost** | partial source model | [cost](#cost) |
| **descriptant** | partial source model | [epoch-memory](#epoch-memory) |
| **invariant** | partial source model | [invariant](#invariant) |
| **tests** | partial source model | [checks](#checks) |

## Obernants

The typed relations around the forward model: the behaviour complement (what the code never does), the reverse reconstruction (every input compatible with an output) and specialised views.

| id | type | label | where |
|---|---|---|---|
| `world-reader-arbitration-behavior-complement` | behavior_complement | partial source model | [behavior-complement](#behavior-complement) |
| `world-reader-arbitration-reverse-reconstruction` | reverse_reconstruction | partial source model | [reverse-reconstruction](#reverse-reconstruction) |
| `world-reader-arbitration-boundary` | constraint_relation | partial source model | [boundary](#boundary) |

## Model text


### forward
Scope: anchor_tree and read. Parse frame, calculate baseline, route candidate, then resolve anchor using checked one-based subtraction. Missing candidate and score<6 choose baseline. For confident candidates: high effective coverage and available span choose span unless describe/number has slot; otherwise slot, available span, baseline. Effective coverage is raised for happen clauses and adjective feeling spans.

### invariant
Zero/out-of-range anchors are absent; positive valid anchors select exactly the corresponding tree. An absent anchor does not erase an existing slot. Source label and sentence metadata follow the chosen branch, not a truth certificate.

### cost
Anchor lookup is O(1); external parsing, baseline, state routing and span extraction dominate. Strings are cloned for the selected answer and diagnostic fields.

### behavior-complement
A zero anchor cannot access the first tree; low confidence cannot return a state slot. If a candidate is confident but lacks both slot and span, state origin is impossible. Full language complement remains unknown.

### reverse-reconstruction
A sentence fallback hides whether state was absent, low confidence, or lacked an answer field unless reason/conf/fact are retained. A span may be chosen through either the high-coverage branch or no-slot fallback. Keep all branches compatible with the full observation.

### boundary
Correct index extraction does not ensure own and fw match; deliberate shuffle controls rely on this separation. Anchor arithmetic repair eliminates the observed debug zero-underflow only, not all sentence arithmetic elsewhere.

### composition
This is the QA join boundary among qframe, index, own text, span and baseline. It preserves parser acquisition. Candidate and lexical child models are necessary but insufficient to prove this complete interaction.

### checks
anchor_zero_and_range_are_absent covers zero, endpoints, overlength and u16::MAX with supplied trees. It failed on the original subtract-before-filter expression. Full read invokes the parser and is not exercised by these helper tests.

### epoch-memory
2026-10-30: predicted zero absence, observed debug panic, repaired with checked_sub. No positive-anchor semantics change intended; repeated bounded tests recorded separately. Partial syntax only.
