Elamur Groupants⌕
☰

add-on-modules

The groupant beside tools/modules/composition.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

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

componentlabelwhere
approximantpartial source modelforward
astnot materialized
costpartial source modelcost
descriptantpresentepoch-memory
invariantpartial source modelinvariant
testsbounded native evidencechecks

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.

idtypelabelwhere
add-on-modules-behavior-complementbehavior_complementpartial source modelbehavior-complement
add-on-modules-reverse-reconstructionreverse_reconstructionpartial source modelreverse-reconstruction
add-on-modules-licence-flowconstraint_relationpartial source modellicence-flow

Model text

forward

The mova binary and world modules dispatch to mova_modules::main_args; install paths produce verified folders <root>/<name>/<version>. The dictionary store (world::dictstore, child world-dictstore of lexical-semantics) turns module: layer specs and MOVA_MODULES selections into layers through mova_modules::find and read_verified, carrying ModuleSource provenance; derived_licence/derived_header/guard_derived_write mark and fence what retained states (world::knowledge::retention) write. torrent::make publishes a verified folder.

invariant

cost

Install O(bytes) hashing and copy/download; load O(layer bytes) hashing per process; torrent O(bytes) SHA-1.

behavior-complement

The composition does not: auto-load installed modules; ship, copy or link module data into the repository; trust module content beyond hashes and declared licence; implement BitTorrent transfers; mark derived outputs other than retained states and their meaning exports (other writers must call the guard).

reverse-reconstruction

From a loaded store, every entry's module, version, licence and attribution are recoverable from its layer; from a fingerprint, the module set only by search over candidate installs; from a marked output, the module names and versions from its header line.

licence-flow

Constraint relation over (licence_class, purpose, output path): nc-research ∧ release purpose ↦ refuse load; taints(class) ∧ output inside a Git work tree or named as a built-in file ↦ refuse write; taints(class) ↦ header mark, which shippable refuses for any built-in text.

checks

cargo test --release -p mova-modules; cargo test --release -p world --lib dictstore; cargo test --release -p world --lib retention. Red controls 2026-11-04: guard disabled, NC header check removed, research-only purpose check removed ⇒ dictstore tests fail; restored ⇒ pass.

epoch-memory

2026-11-04, first epoch: the mechanism exists for a Wiktionary dictionary module built separately; the two public dictionaries were audited for CC BY-SA/NC text (none copied; a Pinocchio translation's status reported to the operator).

This page in Markdown → https://md.groupants.elamur.ai/free/en/mova/tools/modules/composition.groupant/