enrich-lesson-smoke-score
The groupant beside tools/enrich/examples/lesson_smoke.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
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 | approximant |
| ast | partial | ../syntax.json |
| cost | partial | invariant-and-cost |
| descriptant | present | descriptant |
| invariant | partial | invariant-and-cost |
| tests | bounded or representation | tests |
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 |
|---|---|---|---|
behavior_complement | behavior_complement | partial source derived model | behavior_complement |
reverse_reconstruction | reverse_reconstruction | partial source derived model | reverse_reconstruction |
separate_rotation | separate_rotation | partial source derived model | separate_rotation |
correctness_count | correctness_count | partial source derived model | correctness_count |
seed_exam | seed_exam | partial source derived model | seed_exam |
overflow_domain | overflow_domain | partial source derived model | overflow_domain |
Model text
descriptant
enrich-lesson-smoke-score
Epoch 2026-10-31
Prospective inspection identified this relation before additions: For tests and exams separately, shuffle options with lesson/index seed plus exam XOR, optionally rotate query one position within same list, sum correct choice and understood booleans.
The production implementation is unchanged; only selected inline tests are appended. Source-bound syntax is generated twice and compared. Native checks exercise bounded helpers; entry orchestration, teacher calls, models and corpora remain source-derived. Partial syntax is not semantic proof. Preserve failure prefixes and ambiguity when refining this model.
approximant
Forward relation
For tests and exams separately, shuffle options with lesson/index seed plus exam XOR, optionally rotate query one position within same list, sum correct choice and understood booleans.
Composition
This fragment isolates the stated helper relation; parent composition retains surrounding effects and failures.
catalog
Typed observations: enrich-lesson-smoke-score
Subject: tools/enrich/examples/lesson_smoke.rs, SHA-256 14a0b553a86f78d23e5e4d7883295357c4d49e58913f602131c3b852b0a08511. Domain: bounded source inputs, declared filesystem/environment state and normal allocations. Each view is a partial source-derived relation, not a universal proof. Observation is one helper call or the explicitly described trace. Checks are in tests.md; unexecuted effects remain gaps.
behavior_complement
Empty lists make no choose call or modulo; singleton question rotation cannot differ from original query.
Scope: the bound source interval and stated assumptions. Evidence: source inspection plus the checks explicitly named in tests.md; no finite check establishes all inputs.
reverse_reconstruction
Aggregate (right,understood) admits independent per-item boolean patterns and many student/lesson inputs; cannot identify which item failed.
Scope: the bound source interval and stated assumptions. Evidence: source inspection plus the checks explicitly named in tests.md; no finite check establishes all inputs.
separate_rotation
Rotation wraps within tests or exams, never across boundary; options remain current item's shuffled choices.
Scope: the bound source interval and stated assumptions. Evidence: source inspection plus the checks explicitly named in tests.md; no finite check establishes all inputs.
correctness_count
right increments on choice==at regardless of understood flag. Counts need not satisfy right≤understood.
Scope: the bound source interval and stated assumptions. Evidence: source inspection plus the checks explicitly named in tests.md; no finite check establishes all inputs.
seed_exam
Exam extra XOR distinguishes common small indices but does not establish unique seeds across unrestricted lesson/index domains.
Scope: the bound source interval and stated assumptions. Evidence: source inspection plus the checks explicitly named in tests.md; no finite check establishes all inputs.
overflow_domain
usize totals and counts require representable cardinalities; no saturating arithmetic or allocation guarantee supplied.
Scope: the bound source interval and stated assumptions. Evidence: source inspection plus the checks explicitly named in tests.md; no finite check establishes all inputs.
tests
Checks and limits
Source-derived representation only. No PragStudent evaluation or model loading.
Exact native outcomes and command metadata are retained in the external wave33 cycle receipt bundle. Selected names run twice in debug and release; syntax is independently regenerated twice. Compiled mutations and source restoration receipts distinguish behavior changes from assertion-only controls. These claims are finalized in evidence.md. No live teacher, real model/corpus, benchmark CLI or lesson-learning CLI is run.
invariant-and-cost
Invariant and cost
Each count≤tests.len+exams.len absent usize overflow. Rotating question does not rotate options/correct index.
O(total items × (shuffle choices + choose cost)); no execution measured.
No executable percentage surrogate is claimed: effects, categorical acceptance and report text have no justified approximate metric here. Future profiles require a useful metric, zero case, reference and evidence at caps 1/2/5/10%.
This page in Markdown → https://md.groupants.elamur.ai/free/en/mova/tools/enrich/examples/lesson_smoke.rs.groupant/score.groupant/