Day
0
ammonia_spike
ProteinLoop · verified circular food production
Aquaponics already links fish and plants. ProteinLoop makes its animal-protein outcome measurable and recoverable, then extends the loop to freshwater prawns, duckweed feed, and eggs.
Protein at risk
Ammonia is 4.6 mg/L and breathing oxygen is 4.4 mg/L. The connected food loop is under immediate stress.
Fish + prawns
14.5 kg live biomassPlants clean the water
5.0 kg growingDuckweed becomes feed
3.0 kg reserveChickens + eggs
6 hens · 0.0 eggs trackedCaptured AMD experiment
The verifier admitted 3 and rejected 4 before tank mutation.
Selected safe recovery
Increase aeration to address low dissolved oxygen.
Ammonia moved toward the safe range.
Breathing oxygen 4.8 → 5.6742 mg/LUsable underwater oxygen recovered.
Verified reward 313.3456+71.092 versus the naive routine.
20-emergency verifier-feedback audit
Five-emergency product audit
feed 2.0 kg · aeration 30.0 h · water 60.0% · duckweed 12.0 kg
feed_kg 2.000 exceeds safe daily limit 0.819; aeration_hours cannot exceed 24; water_exchange_fraction cannot exceed 0.30; duckweed_harvest_kg exceeds available biomass after reserve (11.500 kg)
feed 0.0 kg · aeration 8.0 h · water 25.0% · duckweed 0.0 kg
feed 0.0 kg · aeration 1.0 h · water 10.0% · duckweed 0.0 kg
feed 1.5 kg · aeration 4.0 h · water 20.0% · duckweed 0.5 kg
feed_kg 1.500 exceeds safe daily limit 0.819
feed 0.0 kg · aeration 1.0 h · water 10.0% · duckweed 0.0 kg
feed 1.5 kg · aeration 4.0 h · water 20.0% · duckweed 1.0 kg
feed_kg 1.500 exceeds safe daily limit 0.819
feed 1.5 kg · aeration 4.0 h · water 20.0% · duckweed 0.0 kg
feed_kg 1.500 exceeds safe daily limit 0.819
Off-grid continuity
Monitoring, AI guidance, safety checks, and producer decisions can stay at the farm so food operations do not stop with an internet outage. Measured solar autonomy is the next deployment proof.
PT-to-FT traffic stays local without Wi-Fi, a SIM, or cloud access.
Physical radio provenA separate edge computer keeps inference and deterministic safety on site.
Local AI provenThe target power system removes grid dependence after an energy audit.
Deployment designChemistry probes are the next field integration.
Physical board proven; sensor packet firmware comes next.
Bidirectional PT and FT sequence #100 is captured.
The FT radio hands local packets to edge compute.
Gemma runs on the edge computer, not on either radio board; local rules verify.
Approve, reduce, or reject risky action without a cloud dependency.
Choose what food outcome matters now. Protein-loop specialists compare the living system, ecosystem rules block unsafe actions, and irreversible changes still require producer approval.
Choose a recovery goal to start live Gemma planning.
Waiting for a structured recommendation.
Waiting for a structured recommendation.
Waiting for a structured recommendation.
Waiting for a structured recommendation.
No model call is running yet.
AI activity is visible as structured events and tool outcomes, not private chain-of-thought. Producer stays in control.
What should the system protect?
Selected goal
Recover water quality
Reduce ammonia and restore dissolved oxygen while protecting fish and prawn survival.
Read the live loop
Compare specialist advice
Verify ecosystem safety
Execute only if safe
Day
0
ammonia_spike
Waste in water
4.6 mg/L
Ammonia · safe below 1.5
Breathing oxygen
4.4 mg/L
Dissolved oxygen · comfortable above 5.0
Reward
pending
mount
Latest read-only exchange from the two connected nRF9151 boards.
DECT NR+ is a private, non-cellular 5G field link. The PT tank node can reach the FT gateway locally; this hop does not need Wi-Fi, a SIM, or cloud access. A separate edge computer runs self-hosted Gemma and the deterministic verifier.
Sequence #100
FT / PT bidirectional
Nordic hello_dect proves the physical radio link. Replaying it creates a simulated sensor alert in the deterministic water-quality scenario; it is not chemical sensor telemetry.
Fish
12.0 kg
Prawn
2.5 kg
Plants
5.0 kg
Duckweed
3.0 kg
Eggs
0.0 count
pH
7.2
Fish tank agent
ammonia control
Stop feeding, maximize aeration, exchange water through verifier
Freshwater prawn agent
benthic survival
Protect oxygen and shelter capacity before allocating feed
Hydroponia agent
plant uptake
Plants can absorb current nitrate load
Duckweed/chickens agent
egg support
Harvest lightly for 6 hens
Supervisor agent
risk arbitration
Prioritize tank recovery over biomass growth
migration_count=0
Nodes
Edge tank A
sensor/actuator
Edge tank B
backup controller
Cloud loop
supervisor
Agent placement
Fish tank agent
m0edge-tank-a
fish-tank:state:v1
Hydroponia agent
m0edge-tank-a
hydroponia:state:v1
Freshwater prawn agent
m0edge-tank-b
freshwater-prawn:state:v1
Duckweed/chickens agent
m0edge-tank-b
duckweed-chickens:state:v1
Supervisor agent
m0cloud-loop
supervisor:state:v1
Mesh events
Risky water and harvest actions wait for producer decision.
Near-term risk
critical
Pause feeding, maximize aeration, and request verified water exchange.
first critical day=1
Max ammonia
4.6 mg/L
Min oxygen
4.363 mg/L
Horizon
5 days
Proposals mutate state only after simulator verifier acceptance.
Sagents 0.9.0 / LangChain 0.9.2 / until_tool_success
RLVR trace artifact
3
/app/priv/traces/harness.jsonl
Model endpoint
not checkedgoogle/gemma-4-E2B-it
http://gemma:8001/v1
Endpoint configured; check not run
Reward delta
463.2444
Recovered
2/3
Collapse avoidance
100%
Policy comparison
naive -> safety
Policy search improvement
2.7556
Best policy
growth_biased
Search method
deterministic_candidate_search
| Scenario | Baseline | Candidate | Delta |
|---|---|---|---|
| routine_growth | reward=232.4793 | reward=230.5333 stable | -1.946 |
| early_ammonia_spike | reward=-475.1554 collapsed | reward=228.8492 stable | 704.0046 |
| mid_cycle_ammonia_spike | reward=-452.3319 collapsed | reward=235.3426 stable | 687.6745 |
| Iteration | Policy | Reward | Best so far |
|---|---|---|---|
| 1 | seed_low_input | 230.1266 | 230.1266 |
| 2 | more_air_less_feed | 230.5286 | 230.5286 |
| 3 | balanced_recovery | 231.7065 | 231.7065 |
| 4 | growth_biased | 232.8822 | 232.8822 |
| 5 | aggressive_exchange | 231.5208 | 232.8822 |
feed=0.08kg aeration=18.0h water=15.0%
reward=180.0683
feed=0.0kg aeration=24.0h water=30.0%
reward=135.2741
feed=4.0kg aeration=2.0h water=0.0%
feed_kg 4.000 exceeds safe daily limit 0.508; feed must stay at or below 0.10 kg/day during critical ammonia