---
title: "school-support — Mova code model"
description: "Mova code model of models/school-support.groupant: components with their labels, obernants and the model text."
url: "https://groupants.elamur.ai/free/en/mova/models/school-support.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/models/school-support.groupant/>

# school-support

The groupant beside models/school-support.groupant 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_group
- **status:** partial source bound instance
- **bound sources:** 21
- **repository folder:** [`models/school-support.groupant`](https://github.com/ElamurAI/mova-free/tree/main/models/school-support.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 derived | [forward](#forward) |
| **ast** | not materialized |  |
| **composition** | partial source derived | [composition](#composition) |
| **cost** | partial source derived | [cost](#cost) |
| **descriptant** | partial source derived | [epoch-memory](#epoch-memory) |
| **invariant** | partial source derived | [invariant](#invariant) |
| **tests** | partial source derived | [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 |
|---|---|---|---|
| `school-support-behavior-complement` | behavior_complement | partial source derived | [behavior-complement](#behavior-complement) |
| `school-support-reverse-reconstruction` | reverse_reconstruction | partial source derived | [reverse-reconstruction](#reverse-reconstruction) |
| `school-support-option-canonicalization` | encoding_relation | partial source derived | [option-canonicalization](#option-canonicalization) |
| `school-support-tally-observation` | projection_relation | partial source derived | [tally-observation](#tally-observation) |
| `school-support-stratified-selection` | subset_relation | partial source derived | [stratified-selection](#stratified-selection) |
| `school-support-selection-state` | state_transition | partial source derived | [selection-state](#selection-state) |
| `school-support-tree-reader-boundary` | dependency_relation | partial source derived | [tree-reader-boundary](#tree-reader-boundary) |
| `school-support-rule-learning-boundary` | effect_relation | partial source derived | [rule-learning-boundary](#rule-learning-boundary) |
| `school-support-objective-filter` | constraint_relation | partial source derived | [objective-filter](#objective-filter) |
| `frame-score-serialization` | frame_observation_identity | partial source correspondence | [frame-score-serialization](#frame-score-serialization) |
| `school-support-wave12-arithmetic-common-domain` | partial_arithmetic_transport | partial source model | [school-support-wave12-arithmetic-common-domain](#school-support-wave12-arithmetic-common-domain) |
| `school-support-wave12-generated-answer-identity` | sampled_numeric_projection | partial source model | [school-support-wave12-generated-answer-identity](#school-support-wave12-generated-answer-identity) |
| `school-support-wave12-retained-weight-codec` | learned_state_codec | partial source model | [school-support-wave12-retained-weight-codec](#school-support-wave12-retained-weight-codec) |
| `school-support-wave12-assessment-fold-identity` | grouped_partition_relation | partial source model | [school-support-wave12-assessment-fold-identity](#school-support-wave12-assessment-fold-identity) |
| `school-support-wave14-tuning-identity` | neighbor_and_selector_coordinate | partial source model | [school-support-wave14-tuning-identity](#school-support-wave14-tuning-identity) |
| `school-support-wave17-question-source-coordinates` | question_generation_scope_transport | partial source model | [school-support-wave17-question-source-coordinates](#school-support-wave17-question-source-coordinates) |
| `school-support-wave18-question-generation-report-preflight` | child_report_preflight_preservation | partial source model | [school-support-wave18-question-generation-report-preflight](#school-support-wave18-question-generation-report-preflight) |

## Model text


### model

## school-support

### forward
Tagged composition of the owned child mechanisms through shared identities and explicitly named external dependencies. Ownership is not a pipeline. The catalog records actual call edges and each unexecuted boundary.

### invariant
Use one compatible input/state/version at every actual join. Preserve parsed lesson/option identities and original indices for school selection. Keep supplied tree identity, label namespaces and candidate provenance for the separate reading and rule branches. Scope each invariant to its tagged entry point.

### cost
Lesson parsing and option scanning are linear in supplied text plus allocations. Benchmark selection sorts each stratum, O(N log N) total worst case. Tree-reading includes external parsing and many clause scans; pragmatic candidate enumeration can be cubic in atom count per site and rechecks at most 60 candidates per iteration. Do not sum mutually exclusive entry points or infer school score/latency.

### composition
schoolbench selection consumes knowledge::Lesson; schooltools and knowledge independently interpret shared lesson lines. school_tree builds school::Reading using frames parsing. prules consumes pragmatic reads/gold and persisted rejected-rule state. No direct school_tree/prules edge was found, so the group is a tagged support family.

### checks
Native parent checks live in world/tests/groupant_wave9.rs: school fixtures cover canonical options and stratified selection. Other parent catalog views are source inspection only; child fixtures provide their own narrower evidence. The integrated manifest binds final child revisions.

### epoch-memory
2026-10-30: first parent model. Common lesson interpretation requires an explicit delimiter domain; recognizing a multiply marked line does not make it a valid Lesson. Selection consumes original indices and stratification, rather than assuming lesson numbers are array positions. Peer diffs preserve these tested interfaces while extracting trace scoring, refusing restore line zero, and stabilizing pragmatic sign-tail computation. These peer changes were inspected, not executed by this harness. The integrated manifest binds the final child source bytes; native parent joins and child fixtures retain separate evidence scopes.

### behavior-complement
Subject/revision: inspected child sources of this epoch. Domain, observation and operator: Universe comprises supplied lesson text, parsed Lessons, benchmark selection and inspected learning/reading boundaries. Exclude equating option recognition with lesson validity, arbitrary quick/medium non-nesting on the same parsed list and seed, and inferring rule-learning application from tree-reading output. These are conditional source-derived constraints, not a full school complement.
Type: behavior_complement. Approximation: partial source-derived relation, conditional on the stated domain and shared identities. Evidence: native checks only where explicitly named above; otherwise source inspection. Unsampled semantics remain unknown.


Wave14 extension: Within supplied finite knob domains exclude multicoordinate/nonfinite neighbors, changed candidate indices and inadmissible selection; external adoption is outside this transition universe.


Wave17 extension: Universe: supplied Para/Sent/Pick/skip, versioned schema/prompt and independent TSV observations. Exclude skipped/ineligible selections, source-coordinate substitution for local p/anchors, invented labels, V2 explicit nonanchor/context spans and punctuation-changing spans. Prompt semantic constraints not enforced by the gate remain outside this complement; no acquisition/teacher behavior is inferred.


Wave18 extension: Through its actual question-generation child, school-support now excludes a report collection observation that replaces any prior QA/reject/params artifact before malformed or overflowing supplied call-ledger preflight fails. The inherited boundary also excludes swallowing retry ELOOP or breaking retry/source-coordinate selection in the supplied child joins. This extension is limited to that reached child interface; it asserts nothing about school learning, retention, inference-core behavior, live training, late-write rollback or semantic answer accuracy.

### reverse-reconstruction
Subject/revision: inspected child sources of this epoch. Domain, observation and operator: Given selected indices and parsed option tuples, retain all original lesson strings with the same parse and same selection ranks. Whitespace, comments and alternative marked positions can collapse. Selected lesson scores cannot reconstruct omitted lessons or learned state; rule candidates depend on reads, judged gold, options and rejected-rule snapshot.
Type: reverse_reconstruction. Approximation: partial source-derived relation, conditional on the stated domain and shared identities. Evidence: native checks only where explicitly named above; otherwise source inspection. Unsampled semantics remain unknown.


Wave14 extension: Retain every finite base map, ordered candidate list and score/callback history compatible with the selected index. Without the same retained list the index does not identify a configuration, and even with it the preceding scores/history remain ambiguous.


Wave17 extension: Retain every input vector, metadata, raw sentence text, Pick/skip and response sharing selected identities, prompt/gate observations and quotas. The same retained batch plus p/anchor recovers source doc/para/sent_id; gate output alone cannot. Case/quote/whitespace normalization has many raw preimages, selection loses rejected content and quotas lose weight/cap details.


Wave18 extension: At the school-support boundary retain all child question-generation run states compatible with the observed error and unchanged report bytes, or with the selected retry row and aggregate accounting. Many ledgers, discarded texts and earlier school histories remain compatible. The preflight observation identifies neither a unique learning history nor general school state, and no inverse inference-core reconstruction is supplied.

### option-canonicalization
Subject/revision: inspected child sources of this epoch. Domain, observation and operator: schooltools::option_line splits any pipes while knowledge question parsing splits spaced pipes. Their tuple correspondence requires the tested spaced-pipe domain with exactly one marked option, >=one distractor and required lesson fields. Wrong answers retain order. Nine fixtures compare full tuples; double marking is refused by knowledge.
Type: encoding_relation. Approximation: partial source-derived relation, conditional on the stated domain and shared identities. Evidence: native checks only where explicitly named above; otherwise source inspection. Unsampled semantics remain unknown.

### tally-observation
Subject/revision: inspected child sources of this epoch. Domain, observation and operator: On the same valid lesson text, tally counts option rows and compares trimmed option character lengths after canonicalization. Tests compare n with parsed exercises+tests and strict longer/shorter predicates. Tally is a formatting-bias statistic, not an accuracy estimate or lesson validation.
Type: projection_relation. Approximation: partial source-derived relation, conditional on the stated domain and shared identities. Evidence: native checks only where explicitly named above; otherwise source inspection. Unsampled semantics remain unknown.

### stratified-selection
Subject/revision: inspected child sources of this epoch. Domain, observation and operator: schoolbench consumes knowledge::Lesson's stars, course and n; hash rank within stars strata followed by original-index sorting selects ceil(size/divisor). On a fixed list and seed quick is contained in medium in full. Eight seeds over 27 parsed fixtures check cardinality and identity; hash ranking quality is unproved.
Type: subset_relation. Approximation: partial source-derived relation, conditional on the stated domain and shared identities. Evidence: native checks only where explicitly named above; otherwise source inspection. Unsampled semantics remain unknown.

### selection-state
Subject/revision: inspected child sources of this epoch. Domain, observation and operator: Actual schoolbench caller passes selected cloned Lessons to run_course_lessons. Skipping lessons changes the retained-learning trajectory, so selection score is only a proxy for full-course score. The harness executes selection only and never schoolbench CLI, live course loading or student transitions.
Type: state_transition. Approximation: partial source-derived relation, conditional on the stated domain and shared identities. Evidence: native checks only where explicitly named above; otherwise source inspection. Unsampled semantics remain unknown.

### tree-reader-boundary
Subject/revision: inspected child sources of this epoch. Domain, observation and operator: school_tree::read_tree is a private school reader that obtains words from frames::parse_words and builds school::Reading. Its clause and numerical paths are not directly consumers of prules::learn results. Parent groups support mechanisms; it does not posit a school_tree -> prules pipeline. Source inspection only.
Type: dependency_relation. Approximation: partial source-derived relation, conditional on the stated domain and shared identities. Evidence: native checks only where explicitly named above; otherwise source inspection. Unsampled semantics remain unknown.

### rule-learning-boundary
Subject/revision: inspected child sources of this epoch. Domain, observation and operator: prules::learn consumes supplied TLine base reads/gold and options but reads prag::rules::FILE for rejected rules. load additionally acquires bench/teacher/course/parser data. Neither API is invoked here: supplied training lines alone would not eliminate all environment dependence.
Type: effect_relation. Approximation: partial source-derived relation, conditional on the stated domain and shared identities. Evidence: native checks only where explicitly named above; otherwise source inspection. Unsampled semantics remain unknown.

### objective-filter
Subject/revision: inspected child sources of this epoch. Domain, observation and operator: prules candidates first pass accumulated positive utility/min-lines/precision gates, then at most 60 are applied to current reads and rechecked for positive gain, fixed-line count, precision and sign probability. Local F1-derived utility is not a general school answer objective. Source inspection only; no learning benefit, significance validity or full-search completeness is claimed.
Type: constraint_relation. Approximation: partial source-derived relation, conditional on the stated domain and shared identities. Evidence: native checks only where explicitly named above; otherwise source inspection. Unsampled semantics remain unknown.

### wave14-extension

Wave14 registers pure tuning neighbors and selection, preserving candidate identity through the same vector. Validation callbacks used to choose parameters are tuning data rather than untouched final assessment.

Complement: Within supplied finite knob domains exclude multicoordinate/nonfinite neighbors, changed candidate indices and inadmissible selection; external adoption is outside this transition universe.

Reverse: Retain every finite base map, ordered candidate list and score/callback history compatible with the selected index. Without the same retained list the index does not identify a configuration, and even with it the preceding scores/history remain ambiguous.

Reached API costs only. Bounded native evidence is recorded in wave14-evidence.md; prior evidence retained.

### wave17-extension

The question-generation child contributes supplied selection identity, versioned schema/prompt/gate and quota/cardinality joins. Shared coordinates are the same ordered Para references, doc#para exclusions, local sentence anchors and rule value. These are distinct from lesson/benchmark IDs and do not establish question generation, persistent learning or school assessment quality. Preimages preserve omitted paragraphs and normalization ambiguity; cost is reached pure APIs.

Complement: Universe: supplied Para/Sent/Pick/skip, versioned schema/prompt and independent TSV observations. Exclude skipped/ineligible selections, source-coordinate substitution for local p/anchors, invented labels, V2 explicit nonanchor/context spans and punctuation-changing spans. Prompt semantic constraints not enforced by the gate remain outside this complement; no acquisition/teacher behavior is inferred.

Reverse: Retain every input vector, metadata, raw sentence text, Pick/skip and response sharing selected identities, prompt/gate observations and quotas. The same retained batch plus p/anchor recovers source doc/para/sent_id; gate output alone cannot. Case/quote/whitespace normalization has many raw preimages, selection loses rejected content and quotas lose weight/cap details.

Reached API costs only. Bounded native evidence is recorded in wave17-evidence.md; prior evidence retained.

### wave18-extension

School-support composes the question-generation child's supplied-input run/report relations: checked call-ledger preflight must reject malformed JSONL or token overflow before replacing the three existing report artifacts. The native child harness also checks retry selection/accounting and Unix metadata-error propagation. Only the reached child APIs and their bounded I/O costs are modeled; no inference-core model change, live school cycle, retention measurement, semantic accuracy claim or whole-system proof follows.

Complement: Through its actual question-generation child, school-support now excludes a report collection observation that replaces any prior QA/reject/params artifact before malformed or overflowing supplied call-ledger preflight fails. The inherited boundary also excludes swallowing retry ELOOP or breaking retry/source-coordinate selection in the supplied child joins. This extension is limited to that reached child interface; it asserts nothing about school learning, retention, inference-core behavior, live training, late-write rollback or semantic answer accuracy.

Reverse: At the school-support boundary retain all child question-generation run states compatible with the observed error and unchanged report bytes, or with the selected retry row and aggregate accounting. Many ledgers, discarded texts and earlier school histories remain compatible. The preflight observation identifies neither a unique learning history nor general school state, and no inverse inference-core reconstruction is supplied.

Reached API costs only. Bounded native evidence is recorded in wave18-evidence.md; prior evidence retained.

### catalog

## school-support specialized models

### frame-score-serialization

Type: frame_observation_identity.

Parsed frame attributes and condition survive diagnostic serialization and reparsing. Loaded gold, supplied predictions and selected split preserve frame and question identity through scoring and aggregation. Sampling fixtures check deterministic index selection. Duplicate IDs, malformed metadata and external reader/teacher I/O remain separate limits; this join is not a complete lesson or training run.

### school-support-wave12-arithmetic-common-domain

Type: partial_arithmetic_transport.

For a,b in 0..12, independent scalar expectations compare lesson eval and school Problem::answer for addition, multiplication, nonnegative subtraction and nonzero exact division. Rejected school operations are excluded; lesson negative subtraction is a separate case. Problem::answer fallback is not typed arithmetic success.

Wave12 source-derived view; the supplied domain and observation are above. Executed scoped integration evidence is recorded in world/tests/groupant_wave12.rs.groupant/model.md#evidence. Fixed dependencies and shared identities are premises; finite native joins do not establish full-pipeline behavior or recover unique input history.

### school-support-wave12-generated-answer-identity

Type: sampled_numeric_projection.

One addition fixture supplies 32 exercises, tests and exams each. Parsed operands remain in 2..8 and 1..4; their sum equals the answer and primers reachable accepts the same observation. Repeated exercises agree. Supplied prefix tags establish fixture selection, not general semantic assessment separation; reachability is heuristic.

Wave12 source-derived view; the supplied domain and observation are above. Executed scoped integration evidence is recorded in world/tests/groupant_wave12.rs.groupant/model.md#evidence. Fixed dependencies and shared identities are premises; finite native joins do not establish full-pipeline behavior or recover unique input history.

### school-support-wave12-retained-weight-codec

Type: learned_state_codec.

Pure student/actor TSV codecs preserve current and accumulated tables for three supplied representable states, including the zero-accumulator activation witness. Eighty-one duplicate-vote pairs in -4..4 decode to independent exact sums and roundtrip canonically. MAX plus one clips once to MAX; canonicalization loses formatting and extreme totals. No filesystem durability, fresh-process learning or prediction-quality proof follows.

Wave12 source-derived view; the supplied domain and observation are above. Executed scoped integration evidence is recorded in world/tests/groupant_wave12.rs.groupant/model.md#evidence. Fixed dependencies and shared identities are premises; finite native joins do not establish full-pipeline behavior or recover unique input history.

### school-support-wave12-assessment-fold-identity

Type: grouped_partition_relation.

For folds 1..8, repeats 0..7 and indices 0..31, public assignment matches a u128 arithmetic reference. For nine group IDs, sixteen indices share each assignment and stay in range. Zero folds reject; supported 32/64-bit extreme indices/repeats remain bounded. Changing repeats does not establish data independence, semantic holdout separation or statistical validity.

Wave12 source-derived view; the supplied domain and observation are above. Executed scoped integration evidence is recorded in world/tests/groupant_wave12.rs.groupant/model.md#evidence. Fixed dependencies and shared identities are premises; finite native joins do not establish full-pipeline behavior or recover unique input history.

### school-support-wave14-tuning-identity

Type: neighbor_and_selector_coordinate.

From domains::knobs and its finite base map, each neighboring_configs candidate retains map keys, changes exactly one value and has only finite values. select_candidate on the supplied observations returns index 0, referring to that same candidate vector; separate inadmissible observations yield None. Exclude index substitution, multiknob mutation and inadmissible selection. An index without the list cannot recover configuration, scores or callback history. Adoption callbacks are tuning validation, not untouched final assessment; no adoption executes.

Source-derived partial relation. Wave14 bounded integration evidence is recorded in wave14-evidence.md; prior evidence is retained separately.

### school-support-wave17-question-source-coordinates

Type: question_generation_scope_transport.

The question-generation child contributes supplied selection identity, versioned schema/prompt/gate and quota/cardinality joins. Shared coordinates are the same ordered Para references, doc#para exclusions, local sentence anchors and rule value. These are distinct from lesson/benchmark IDs and do not establish question generation, persistent learning or school assessment quality. Preimages preserve omitted paragraphs and normalization ambiguity; cost is reached pure APIs.

Source-derived partial relation. Wave17 bounded integration evidence is recorded in wave17-evidence.md; prior evidence is retained separately.

### school-support-wave18-question-generation-report-preflight

Type: child_report_preflight_preservation.

Actual composition path is school-support -> question-generation -> report::collect and its checked ledger preflight, observed by qagen/tests/groupant_wave18.rs. For one supplied Rule V1 paragraph, valid primary row, and three existing artifact sentinels, malformed JSONL or u64::MAX+1 input-token aggregation returns an error while qa.tsv, rejects.tsv and params.json remain unchanged. Cost is the bounded child preflight work and filesystem reads reached before failure. Reverse fiber retains all child directory states with these observed prior bytes and failure, leaving unrelated school state ambiguous. No general transaction, training/retention, inference-core or semantic-quality claim is made.

Source-derived partial relation. Wave18 bounded integration evidence is recorded in wave18-evidence.md; prior evidence is retained separately.

### wave14-evidence

#### Wave14 bounded integration evidence, 2026-10-30

464 algorithm tests (416 unit, 47 external, one doc) and 101 selected Mova checks pass twice in debug and twice in release with identical normalized named outcomes. Mova checks comprise the previous 75 and 26 reached checks: eval 4, data 6, frames_md 7, tune 4 and five new joins. These selected Mova checks do not represent the complete Mova suite.

Ten new algorithm production mutations and eight false-oracle mutations fail named assertions in owner receipts. Four Mova production mutations fail named assertions. Both root adapters compile and fail their intended named assertions: zeta_product_inverts_to_or_convolution (wrong inverse stage) and batched_items_keep_source_identity_through_classification (wrong source window). Exact source bytes are restored before positive runs. Compilation failures do not count as semantic rejection.

Strict all-target algorithms Clippy and algorithms formatting pass. Historical world/prag warnings remain. No benchmark, throughput, GPU, teacher/parser acquisition, full-school run, held-out accuracy, persistent adoption or general proof is claimed. Tiny supplied-input fitting exercises actual classifier calls. Tuning validation participates in candidate choice and is not an untouched final test.

Raw receipts: $MOVA_DATA/runs/octopus-wave14-integration-2026-10-30. native-evidence-hashes.json SHA-256 d95a91417adeb7f8e755d26f900b6508ea17759291407f33153917a42396280f; algorithm-adapter-mutant.log d2279a28cc474377b1d9321e15d4c779b0af8507f81ac39e83338bc9084a02a2; mova-adapter-mutant.log 60567fa4d984ac58834be268cdb221a37caf30bd5d07e9a3d6a2d89c16fdac87; mova-all-normalized.txt fb492ea8097fd74fe50cdceb5d61cb49efc74baa6cb152f7699e546dcbb3ac20; structural-controls/summary.json a50d4387189f34044579c0d068475201acf1f6e7ee8e3297c0db6909f3180975. The structural controls reject stale parent-source bindings and wrong child identities, restoring exact bytes. Source syntax remains partial, with opaque macros and no semantic AST.

### wave17-evidence

#### Wave17 bounded integration evidence, 2026-10-30

212 selected Mova checks pass twice in debug and twice in release, with identical normalized named outcomes: 155 prior focused checks, 33 new source-unit checks, 17 additional existing synthetic QA checks and seven new joins (three pragmatic, four question-generation). Root qagen library runs explicitly skip lemma::tests::doubt_with_en_model. The 100-algorithm library and its prior evidence are unchanged and are not remeasured in this epoch.

Seven existing sources gain models, with 21 nested fragments and 81 typed views; the two harnesses add 11 views, the new question-generation group adds six, and existing parents add five. Final inventory: 329/762 Rust sources, 433 pending (350 public,83 closed), 659 nodes,16 groups,314 fragments,3676 views,1109 type labels,319 partial syntax projections. Filename coverage in prag is complete; semantic coverage is scoped. Six qagen sources remain in the backlog.

Witnessed repairs: exact u128 Hamilton quotient/remainders remove the >2^53 weight-order error and usize sum overflow; checked prompt adjacency prevents i64 wrap/panic; QA anchors reject empty list components and paragraph labels permit at most one P/p prefix; accounting refuses nonfinite fields before opening and propagates non-NotFound I/O errors; run reports identify Codex transport. No broad option-compatibility change or transport rename was made.

Owner evidence records eight old-code failure witnesses and 14 compiled production mutants, followed by exact restoration and positive runs. Two root compiled adapter controls additionally fail named assertions: reversed Item/label identity and a wrong sentence-source mapping. Compiler errors are not counted as mutation rejection. Stale group bindings and wrong child identities are structurally rejected and restored exactly.

Independent source review found no further production counterexample within declared domains and refined costs: quota initialization/cap scanning remains at zero rounds; string comparisons/cloning and general JSON-object lookup work are explicit. The small quota oracle covers 45,056 tuples; this finite evidence is not a Lean proof or complete input verification. Native code and syntactic projections remain separate from models.

A gate worker also invoked a broader 26-test legacy run containing an optional local-model test; captured evidence does not establish whether that model branch ran or returned early. It is documented separately and excluded from the root 212-check receipt. Root checks use supplied fixtures and isolated temporary files, with no live teacher, parser model, corpus/database acquisition, GPU, whole-school or adoption workflow. No speed gain or new approximation-error budget is claimed.

Raw receipts: $MOVA_DATA/runs/octopus-wave17-integration-2026-10-30. native-evidence-hashes.json SHA-256 2aee840e096dcaf3d558e55c95b86f6a6623506aa620351c1e9d009ba29e94e5; mova-normalized.txt e7d315a6d937998d03e2cdc2555ba4fd96137ef61ef873104329ca632b697274; structural-controls/summary.json a50d4387189f34044579c0d068475201acf1f6e7ee8e3297c0db6909f3180975. Focused formatting passes. Cargo Clippy completes with warnings; this is not a warning-free strict-lint claim. Macro bodies remain opaque in partial syntax. External child dependencies are not inferred to have complete models from these joins.

### wave18-evidence

#### Wave18 question-generation evidence — 2026-10-30

Existing qagen/src/run.rs and report.rs gain file groupants and nine nested fragments. Three new supplied-input joins extend question-generation under school-support. Four qagen sources remain unregistered: fix, lemma, lib and main. Filename coverage is not full behavioral coverage.

Final root validation: 55 selected checks passed twice in debug and twice in release with identical normalized outcomes: 48 library checks, four wave17 joins and three wave18 joins. Every broad library run explicitly skips lemma::tests::doubt_with_en_model. Fixtures use synthetic raw/retry text, supplied calls and isolated temporary directories. No live teacher, parser model, database, corpus, training or school assessment ran.

Existing signatures are preserved and run::try_final_raw is added: strict metadata errors propagate through gathering and pending-work checks; final_raw remains an intentionally lossy compatibility wrapper. Token totals use checked u64 arithmetic; nonfinite floating accumulation errors; large finite values avoid decimal-scaling overflow. Retry metadata, call accounting, gathering, optional doubt computation and serialization now precede artifact writes. Malformed or overflowing ledgers leave prior qa.tsv, rejects.tsv and params.json intact. Later write failures and concurrent directory changes remain nontransactional.

Owner receipts record six old-code witnesses in both profiles and seven compiled production mutations followed by exact restoration. Root misrouted retry text to the primary filename; the named retry-path assertion failed, then restored execution passed. Independent review and a floating-point threshold probe found no further concrete defect in this scope. All-target qagen Clippy completes with dependency warnings; formatting passes. V1 fixtures test source/accounting consistency, not factual answer quality.

#### Wave18 integration scope — 2026-10-30

Base ae72362aaa65659aa444cb7d090a05636c0e0691. Inventory: 353/784 Rust files registered, 431 pending (348 public, 83 closed); 696 nodes, 16 groups, 327 fragments, 3,899 typed views, 1,196 labels and 343 partial syntax projections. Added 24 registered file entries: 20 new algorithm implementation/test files, two existing qagen sources and two new harnesses; 13 fragments and 223 views. The library export source also changes, giving 25 changed Rust files.

Declared groupants pass structural validation. Repeated syntax projections match byte-for-byte. Injected stale bindings and wrong child identities reject, then restore exactly. Root corrected two imported file-node child lists and 32 graph heading references found by integration validation. These are model-wiring repairs. Source binding and section validation do not prove semantics, expanded ASTs or a complete dependency closure.

Final receipts cover 550 algorithm checks and 55 focused qagen checks, each twice in debug and twice in release. Unrelated Mova subsystems and the whole school were not rerun. No numerical approximation tier is introduced. Complement models and compatible-antecedent models remain distinct, with explicit information loss.

Raw receipts: $MOVA_DATA/runs/octopus-wave18-integration-2026-10-30; final native logs in native-final/. Prospective models and prior dated evidence remain. Question generation belongs to school-support; no inference-core or live acquisition pipeline is introduced.


##### Receipt bindings

External run: $MOVA_DATA/runs/octopus-wave18-integration-2026-10-30. Native evidence index SHA-256: f85b3e074aa997321aff915acd6068610e33c9e50322525af7b6f529a7d7f422. Algorithm normalized outcomes: a307113f556e3e4dab5bf677df657899f439ffab39a1c8e1113ed23c97c1c733. Qagen normalized outcomes: 34efc5330be15215be0220412a9af2a517680394f975a7011f75a799a5210d21. Structural controls: a50d4387189f34044579c0d068475201acf1f6e7ee8e3297c0db6909f3180975. Benchmark summary: 8ad77b5c224d73c393111ef5f6e14de3bb1d2b8108f5f01a89f90eee8d4a3c20.
