# Jev live agent recording

This opt-in rehearsal runs real OpenRouter Jev decisions beside the authoritative
server, then executes admitted skills through an ordinary player connection.
It does not run model weights inside the game server or block simulation ticks.

## Run

Use the native binaries and character cache described in
[TREE_SKILL_RECORDING.md](TREE_SKILL_RECORDING.md). Provide
`OPENROUTER_API_KEY` to the recorder process, or use `--key-stdin`. The recorder
removes the environment credential before spawning host/client processes. No
credential is written to package files, recordings or receipts.

```powershell
node scripts/authoring/record-jev-agent.mjs --bins target/tree-growth-recording-binaries --character-cache target/structural-collapse-evidence/host/authoring/characters/meshy-hero --out target/new-jev-recording --seconds 120 --fps 6 --ffmpeg <ffmpeg.exe>
```

The final real-time edit is `whitepaper/jev-agent-realtime.mp4`. To encode an
already verified recording without another model call, run
`node scripts/authoring/make-jev-reel.mjs <verified-run> <ffmpeg.exe>` with no
existing output video. This encoder adds measured timing labels; it does not
change the underlying native frames or accelerate playback.

Each run permits at most three paid requests, using the pinned Jev model and
TypeSafe provider through OpenRouter. Inference failure, low confidence, stale
state or an unexpected decision fails the rehearsal. There is no scripted
provider fallback or automatic paid retry. Inspect `jev-proof.json` before
rerunning: a failed recording can still contain committed world actions.

## Visible sequence

1. Publish a tree-growth skill and a separate bounded advance skill using
   AuthoringRuntime admission, generation CAS and tick activation.
2. Ask Jev to wait. Verify it selects `wait` without activating a skill.
3. Ask Jev to advance briefly. Its selected skill drives its own actor for
   40 committed movement ticks, then submits a zero movement input. Server
   physics determines movement; no transform is assigned by the recorder.
4. Ask Jev to plant. Its selected skill creates one tree, then authoritative
   progress continuously grows its trunk, branches and canopy.
5. Record two native camera views and match exact-revision presentation cues.

The intent sequence and available action descriptions are operator-authored.
Jev actually selects each action from `advance`, `plant`, `wait` and `plan`.
This is bounded intent-driven control, not autonomous goal discovery, model
vision, navigation or frame-rate combat. Tree growth is presentation-only.

## Evidence

`jev-proof.json` records the three real model results, distributions, confidence,
token usage/cost, measured provider round-trip latency, and decision-to-terminal-
receipt time. Provider time includes network/transport overhead; it is not a
measurement of inference-only compute. A committed skill receipt proves the
action started, not that its movement/growth duration has elapsed.

Public actor/witness position traces establish movement replication. Native
frame reports establish that the actor and intermediate tree growth were
submitted for presentation; logs establish both cameras' matching skill cues.
One small recording is not a latency SLA or a production-scale benchmark.
For timing assessment use the real-time edit and receipt, not a sped-up edit.
