mova-serve-server
The groupant beside tools/mova-serve/src/server.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 | symbolic source derived | Cost |
| Descriptant | present | Descriptant |
| Invariant | partial | Invariant |
| Tests | executed 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.
| relation | type | label | where |
|---|---|---|---|
| Behavior complement | behavior complement | partial source derived model | Behavior complement |
| Reverse reconstruction | reverse reconstruction | partial source derived model | Reverse reconstruction |
| Model presence | model presence | partial source derived model | Model presence |
Model text
Descriptant
The service: routes (pages, short links, CoNLL-U, API, MCP, health, terms, account flow), the worker pool behind a bounded queue, the cache, the quotas, the burst limits, identity by key or session, the request log, and the HTTP glue.
Approximant
respond(req) = route(req) โ who(req); parse_for = chars โค max โง quota.check โง bucket.take โ answer (cache | pool) โ quota.charge.
Invariant
A full queue answers 503 at once; a timeout 504; every parse request is logged with its text and no address; quota headers on every parse answer; the analysis bytes are the same for the same text.
Cost
A cache hit โ0.01โ0.06 ms through the route (2026-11-06); a miss the engine's cost.
Behavior complement
No TLS (the proxy's), no request timeouts on slow uploads beyond the body bound.
Reverse reconstruction
The log recovers each request's text, endpoint, status, latency and cache outcome.
Model presence
Accounts only with sign-in settings; short links only with a state directory.
Tests
server::tests: the API schema and the cache's second answer, size limits and word quotas, the daily refusal
message, the burst limit, the busy queue with a one-worker control, MCP key and origin checks with a tool call
charged to the account, pages, links, terms and the log, the account flow's CSRF, terms and origin checks.
Provenance
This page in Markdown โ https://md.groupants.elamur.ai/free/en/mova/tools/mova-serve/src/server.rs.groupant/