---
title: "fish-executor-protocol — Mova code model"
description: "Mova code model of tools/fish/src/execute.rs: components with their labels, obernants and the model text."
url: "https://groupants.elamur.ai/free/en/mova/tools/fish/src/execute.rs.groupant/protocol.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/tools/fish/src/execute.rs.groupant/protocol.groupant/>

# fish-executor-protocol

The groupant beside tools/fish/src/execute.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

- **kind:** groupant_fragment
- **status:** partial source bound model
- **source:** [`tools/fish/src/execute.rs`](https://github.com/ElamurAI/mova-free/blob/main/tools/fish/src/execute.rs)
- **source SHA-256:** `20e3973c51e44a5b…`
- **covers:** response(), strict annotation draft validation and review-authority partition
- **part of:** [fish-annotation-executor](https://md.groupants.elamur.ai/free/en/mova/tools/fish/src/execute.rs.groupant/)
- **repository folder:** [`tools/fish/src/execute.rs.groupant/protocol.groupant`](https://github.com/ElamurAI/mova-free/tree/main/tools/fish/src/execute.rs.groupant/protocol.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** | partial | `../syntax.json` |
| **composition** | partial source derived | [composition](#composition) |
| **cost** | partial source derived | [cost](#cost) |
| **descriptant** | partial source derived | [descriptant](#descriptant) |
| **invariant** | partial source derived | [invariant](#invariant) |
| **tests** | finite fake cli controls | [tests](#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 | source derived finite checks | [behavior_complement](#behavior-complement) |
| `reverse_reconstruction` | reverse_reconstruction | source derived finite checks | [reverse_reconstruction](#reverse-reconstruction) |

## Model text


### model

## Reply protocol and typed authority
### forward
Domain: a bounded successful CLI stdout envelope. Parse type=result and is_error=false, then parse its result string as the strict AnnotationDraft. Reuse native source-bound validation; preserve each original producer comparison and draft-primary contextual findings. Observation: strict rejection or review-only receipt, never semantic approval.
### behavior_complement
Missing fields, extra authority fields such as gold, stale task hashes, source-character mutations, incomplete target tables and noncanonical labels have no validated successor. This is a partial exclusion relation; semantically wrong but structurally valid annotations remain possible. Evidence: fake malformed-envelope, extra-field, target, source and label controls.
### reverse_reconstruction
A validated receipt constrains task identity and admissible annotation tables. Multiple parse attachments, source-consistent token boundaries and hidden consultant computations remain compatible. Hashes constrain observations without recovering unique causes. Assumptions: trusted artifact files and collision-resistant binding.
### invariant
Required schema/taskid/tasksha/ast_conllu/pragmatics_tsv/unresolved fields remain distinct. Native structure/source checks and semantic correctness remain different statuses. Original findings and reply-only context findings are retained; training_authorized is always false.
### cost
At most 2MiB stdout is read into the result parser, followed by bounded native target/candidate checks. No model-quality, percentage-error or GPU gain is asserted.
### composition
Envelope parsing feeds the exported annotation::validate_draft. The CLI transport and filesystem reservation are external to this fragment; a correct leaf parser alone does not prove the campaign.
### descriptant
Unresolved findings are intended data rather than transport failure. Complete native tables remain mandatory; an incomplete answer is retained raw and rejected for review rather than silently completed.

### tests

Finite fake-CLI controls are shared with execute.rs tests. Source-level prefix ordering is inspected; no exhaustive crash, provider or semantic proof.
