roundtrip-main
The groupant beside tools/roundtrip/src/main.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 | model.md |
| ast | partial | syntax.json |
| composition | partial | Composition |
| cost | partial | invariant-and-cost |
| descriptant | present | descriptant |
| invariant | partial | invariant-and-cost |
| tests | bounded checks | 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 |
spec_precedence | spec_precedence | partial source derived model | spec_precedence |
worker_order | worker_order | partial source derived model | worker_order |
option_default | option_default | partial source derived model | option_default |
write_prefix | write_prefix | partial source derived model | write_prefix |
Parts
Model text
descriptant
roundtrip-main
2026-10-31 prospective epoch retained externally before edits.
Parses command and options; mixed/blocks/site-learn delegate early. volumes splits kind colon, final @ stride and then dispatches readers. run creates out directory before model load, processes sets and sequentially writes report/examples/residual/normal. run_set schedules atomic indices and merges stored results in input order.
No annotator/model loading, live corpus, full suite, teacher, GPU or persistent-learning evidence. No executable percentage surrogate: categorical codecs/effects need a useful metric before future caps 1/2/5/10%.
Exact recovery with residual is a diagnostic codec observation. It is not evidence of normal generative equivalence, semantic understanding or persistent learning. Production source is preserved; only isolated tests are appended where needed.
approximant
Forward relation
Parses command and options; mixed/blocks/site-learn delegate early. volumes splits kind colon, final @ stride and then dispatches readers. run creates out directory before model load, processes sets and sequentially writes report/examples/residual/normal. run_set schedules atomic indices and merges stored results in input order.
Domain: bounded synthetic values, valid source-specific coordinates, nonoverflowing counts, available allocation; fixed environment controls. Relations are source-derived partial models with finite checks, not universal proofs.
Composition
Source children delimit real function scopes, sharing syntax. Real pipeline joins R4 frame reconstruction to Realizer then R3 tree script and R2 token decode; report consumes aggregated tally. Independent path/CLI branches are not fictitious codec callers.
catalog
behavior_complement
Subject: roundtrip-main, source hash 00f4bbcd3c873394f1a661e52a0dc3360dc8f4f368d9f33113d3f6c6ac2e4109; transition observation.
An invalid stride prevents unknown-kind dispatch and all volume readers. Successful model load does not imply later writes all succeed; no rollback protects already written reports. No actual CLI load/run is executed here.
Domain: bounded synthetic values, valid source-specific coordinates, nonoverflowing counts, available allocation; fixed environment controls. Relations are source-derived partial models with finite checks, not universal proofs.
Evidence: external wave32 rt_core receipt includes native-commands.json, exact named outcomes twice debug/twice release, raw status/log files, compiled production controls with byte restoration and paired syntax. Only named synthetic helpers execute; model_path/export and live CLI paths have representation/source evidence.
Status: partial source-derived model.
reverse_reconstruction
Subject: roundtrip-main, source hash 00f4bbcd3c873394f1a661e52a0dc3360dc8f4f368d9f33113d3f6c6ac2e4109; transition observation.
For a report, compatible argv/model/volume histories include many tokenizations and inputs; aggregation cannot recover originals. Invalid-spec error identifies a failure partition, not unique spec. Successful argv path is not a reversible filesystem transaction.
Domain: bounded synthetic values, valid source-specific coordinates, nonoverflowing counts, available allocation; fixed environment controls. Relations are source-derived partial models with finite checks, not universal proofs.
Evidence: external wave32 rt_core receipt includes native-commands.json, exact named outcomes twice debug/twice release, raw status/log files, compiled production controls with byte restoration and paired syntax. Only named synthetic helpers execute; model_path/export and live CLI paths have representation/source evidence.
Status: partial source-derived model.
spec_precedence
Subject: roundtrip-main, source hash 00f4bbcd3c873394f1a661e52a0dc3360dc8f4f368d9f33113d3f6c6ac2e4109; transition observation.
Missing colon errors first; malformed final @ stride errors before kind selection; valid unknown kind rejects before file reads.
Domain: bounded synthetic values, valid source-specific coordinates, nonoverflowing counts, available allocation; fixed environment controls. Relations are source-derived partial models with finite checks, not universal proofs.
Evidence: external wave32 rt_core receipt includes native-commands.json, exact named outcomes twice debug/twice release, raw status/log files, compiled production controls with byte restoration and paired syntax. Only named synthetic helpers execute; model_path/export and live CLI paths have representation/source evidence.
Status: partial source-derived model.
worker_order
Subject: roundtrip-main, source hash 00f4bbcd3c873394f1a661e52a0dc3360dc8f4f368d9f33113d3f6c6ac2e4109; transition observation.
Atomic fetch assigns each volume one index; results stored by index and merged in original order. Worker scheduling can vary, while panic poisons/joins rather than returning a partial tally.
Domain: bounded synthetic values, valid source-specific coordinates, nonoverflowing counts, available allocation; fixed environment controls. Relations are source-derived partial models with finite checks, not universal proofs.
Evidence: external wave32 rt_core receipt includes native-commands.json, exact named outcomes twice debug/twice release, raw status/log files, compiled production controls with byte restoration and paired syntax. Only named synthetic helpers execute; model_path/export and live CLI paths have representation/source evidence.
Status: partial source-derived model.
option_default
Subject: roundtrip-main, source hash 00f4bbcd3c873394f1a661e52a0dc3360dc8f4f368d9f33113d3f6c6ac2e4109; transition observation.
Neither --exact nor --normal selects both. Missing option values reject during argument parse before run directory/model effects.
Domain: bounded synthetic values, valid source-specific coordinates, nonoverflowing counts, available allocation; fixed environment controls. Relations are source-derived partial models with finite checks, not universal proofs.
Evidence: external wave32 rt_core receipt includes native-commands.json, exact named outcomes twice debug/twice release, raw status/log files, compiled production controls with byte restoration and paired syntax. Only named synthetic helpers execute; model_path/export and live CLI paths have representation/source evidence.
Status: partial source-derived model.
write_prefix
Subject: roundtrip-main, source hash 00f4bbcd3c873394f1a661e52a0dc3360dc8f4f368d9f33113d3f6c6ac2e4109; transition observation.
Output directory may remain after failed model load; report write precedes examples then residual.tsv then normal.tsv, and later errors leave earlier writes.
Domain: bounded synthetic values, valid source-specific coordinates, nonoverflowing counts, available allocation; fixed environment controls. Relations are source-derived partial models with finite checks, not universal proofs.
Evidence: external wave32 rt_core receipt includes native-commands.json, exact named outcomes twice debug/twice release, raw status/log files, compiled production controls with byte restoration and paired syntax. Only named synthetic helpers execute; model_path/export and live CLI paths have representation/source evidence.
Status: partial source-derived model.
tests
Native evidence
wave32::spec_failure_order_and_classes
17 exact named checks total (16 library, one CLI helper), each twice debug and twice release, numeric exits zero and sorted outcomes identical. Native metadata and raw receipts are in the external wave32 rt_core run directory. No optional model tests execute. lib.rs has compile/representation evidence only.
Four compiled production controls alter class precedence, Block grouping, world boundary XOR and frame lemma patching. Each fails its named runtime assertion (exit101), restores exact source SHA256 and passes restored check (exit0). No assertion-only mutants, survivors or bug repairs. These controls do not establish complete coverage.
Two fresh syntax projections agree for each of nine sources. Production bytes are preserved as exact base prefixes. Format only appended test modules before final native receipts. CLI spec helper errors precede any reader; actual model-loading pipeline is excluded.
invariant-and-cost
Invariant and cost
An invalid stride prevents unknown-kind dispatch and all volume readers. Successful model load does not imply later writes all succeed; no rollback protects already written reports. No actual CLI load/run is executed here.
For a report, compatible argv/model/volume histories include many tokenizations and inputs; aggregation cannot recover originals. Invalid-spec error identifies a failure partition, not unique spec. Successful argv path is not a reversible filesystem transaction.
Spec parse O(bytes). run_set uses max(threads,1) workers and O(volume count) result slots, plus pipeline cost; tally merges sequentially by index. CLI I/O proportional to read/write bytes; allocations and thread creation can fail/panic.
Domain: bounded synthetic values, valid source-specific coordinates, nonoverflowing counts, available allocation; fixed environment controls. Relations are source-derived partial models with finite checks, not universal proofs.
This page in Markdown โ https://md.groupants.elamur.ai/free/en/mova/tools/roundtrip/src/main.rs.groupant/