# Current state — exact position As of capture (2026-10-14 ~23:45 EDT, HEAD `e5e369a` pushed). ## Multi-step plan position The initiative's plan (from the journal + BENCH-MATRIX) is: **boot check → fix blockers → build bench world → confirm uncapped frametimes → run B0→B14 → write winners into build.py → ship → report to owner.** | Step | Status | | --- | --- | | 1. Boot check, client | ✅ **essentially PASS** (2026-10-14/15 session; HANDOFF.md). 22 benign ERRORs. | | 1b. Boot check, dedicated server | ✅ **PASS** — booted from repo at 21:01, `Done (3.004s)`, no missing deps / mixin failures / `ftbteams` / fishermans-haven / YACL errors (see `notes-serverlog-triage.md`). | | 2. Fix boot blockers | ✅ CAC spawn-key NPE fixed by owner (`8e8483d`). The 20:34 crash report is this bug — **do not** confuse it with the WATUT crash. | | 3. WATUT intermittent world-load crash | ❌ **OPEN — first task.** Details below. | | 4. Confirm uncapped frametimes | ❌ Not verified after `vblank_mode=0` fix. | | 5. Bench world complete | ⚠️ **PARTIAL** — S1–S3 built & verified; **S4 airships not built**; S5 tour only partially exercised; S2 `/fill` motors may need manual re-placement (BENCH-MATRIX §2). | | 6. Run matrix B0→B14 | ❌ **Zero blocks run.** | | 7. Winners → `build.py` → ship → commit | ❌ Not started. | | 8. Report to owner (B7 shader data, B12b trial verdicts, B14) | ❌ Not started. | ## Open defect: WATUT world-load crash (blocking bench runs) - Symptom: intermittent crash on world load — `corosus.watut.ShaderInstanceBlur.` → `FileNotFoundException: minecraft:shaders/core/particle.json`, during "Rendering overlay". - First world load works, a later load crashed (2026-10-14/15 session). - **The 20:34 crash report in `crash-reports/` is NOT this** — it is the already-fixed CAC spawn-key NPE. No crash report exists for the WATUT crash yet. - Owner constraint: **remove no mods** → find a WATUT config/patch/reliable-retry, or reproduce and characterize it first. - It must be resolved (or made reliably recoverable) before trusting long bench runs. ## Live processes / environment left by the interrupted session - **The dedicated server is still running**: java PID 1699563 in tmux session `onion-mc`, started 21:01:35 from the repo root (port 25565, RCON :25575). Idle boot-check run; zero players joined. **Never kill it; never touch `world/`.** - An RCON client from 127.0.0.1 connects/disconnects **every 30 s** (through #353 by 23:57). The poller process was not identified (candidates: a keepalive loop or `tools/rcon.py` under some wrapper). Investigate before assuming it's yours to kill. - Uncommitted working-tree changes are **benign mod re-saves**, expected on boot: - `config/alexsmobs-common.toml`: 13-line tuned partial expanded to 913 full lines (all tuned values retained — e.g. `gazelleSpawnWeight = 20`). - `config/akashictome-common.toml`: re-serialized; curated whitelist **intact**, comments stripped, arrays collapsed. - Rule (`05-decisions-and-rules.md`): `git checkout -- config/` before staging; do not commit these. - `config/*.toml.bak` files + `config/spark/tmp-client/*.jfr.tmp` (spark's live background-profiler buffer, still growing while the server runs) = runtime junk. - `context.md` in the repo root was scout scratch from this capture session — safe to delete (content folded into this directory). ## Measurements so far (all of it) Exactly **one** harness run, **not decision-grade** (vsync-locked): ``` ~/onion-bench/harness-results.csv: C1,s1,n=1889, p50=16.7ms p95=17.0ms p99=17.2ms peak=17.6ms avg_fps=59.8 1%low=57.5 ``` Supporting MangoHud CSVs in `~/onion-bench/mangologs/`: `java_2026-10-14_22-13-53.csv` (2353 rows), `java_2026-10-14_22-14-54.csv` (3762), `java_2026-10-14_22-21-46.csv` (178, truncated), plus two `glxgears` sanity runs. The vsync fix (`fps_limit=0`, vblank off in `~/.local/bin/mangohud-local`) has been applied but **not re-verified** — first task after WATUT: one C1/S1 run must show well above 60 fps. ## Bench instance state (ready to use) `~/onion-bench/prism/instances/OnionBench/.minecraft`: provisioned, mods installed, `saves/onionbench` present (26 MB, from 21:54 worldgen), `config/defaultoptions/` seeded, `options.txt` carries the bench pins (`maxFps:260`, `enableVsync:false`, `renderDistance:8`, `simulationDistance:8`), `BENCH_VARIANT.txt` = `C1` (last applied). PreLaunchCommand empty by design. MaxMemAlloc 8192. Launched offline as user `Tester` via `~/onion-bench/launch-bench.sh` (DISPLAY=:1). ## Known open questions 1. WATUT crash root cause + fix path (top priority). 2. Identity of the 30 s RCON poller. 3. Whether uncommitted config re-saves should simply be checked out (recommended) — and whether AkashicTome stripping comments matters for future edits (edit the shipped source-of-truth, then expect the mod to re-serialize locally). 4. S2 Create floor: `/fill`-placed kinetic network may need motors re-placed by hand (checklist in BENCH-MATRIX §2 step 2) — verify during S4 build. 5. B5 (SSRD/Sable airship decay) is scoped to fleet P0/P1 — needs a documented proxy adaptation or a "deferred, fleet-only" note in results.