Files
EscapistsReintroduced/docs/evidence/playtest-refresh-2026-10-03-mine-safety/preparation/HANDOFF.md
T
jakub 6a667d8deb Capture current mission, AI, map and administration development
Include the current addon, terrain integrations, tools, regression tests and recorded development evidence.
2026-10-13 22:52:53 +02:00

3.1 KiB

Mine-safety candidate helpers — pending evidence

These scratch scripts target .build/playtest-source-2026-10-03-mine-safety and a new .build/playtest-2026-10-03-mine-safety. They never modify the previous mounted-pair candidate. Root alone executes approved target-writing and native commands; no background launcher is scheduled here.

  1. Freeze the current authored source, tools, tests and suite-bound documentation. Expected scope is 422 authored files and 299 registered regression programs. Create the fresh source ZIP using commands.json; never overwrite an existing unrelated archive.
  2. Obtain /tmp/erri-playtest-review-0644/preflight.json. preflight.py recomputes source, suite registration/results and normal evidence. suite_binding.py requires exact authored/test/tool inputs and the independent review's exact documentation-only mismatch list. No automatic reuse from matching counts. Suite is /tmp/erri-gameplay-root-0558; normal evidence is native-2026-10-03-engineer-movement.
  3. Root inspects host-visible processes with approved escalation before each native operation. A restricted sandbox check can miss an existing game. Preserve any existing session and stop if overlap is present. Use the canonical direct /tmp/erri-package-mine-safety-0644 and /tmp/erri-packed-chat-mine-safety-0644 paths; the packed chat prefix is required. Native remains hidden/muted and bounded, with separately installed authorized dependency closure.
  4. Run native package, preserving its actual exit/log/report. assemble.py requires cleanup/input seals, native exit 0, exact PAK payload/source/ZIP membership and unchanged-source normal evidence before creating the new candidate. It retains a strict packaging refusal even when the independently checked package bytes are usable for this diagnostic handoff.
  5. Run ordinary packed startup using the new runtime bytes, without smoke/trace/input/flight fixture flags. verify.py recomputes raw evidence and exact loaded bytes, preserves the strict failure and checks the historical installed-resource error set. Any new script failure, changed error set, cleanup ambiguity or input difference stops finalization.
  6. Independent reviewer writes final-review.json. finalize_docs.py --verified --review PATH --review-sha256 HASH previews four documents in this scratch directory. Root reviews, then alone repeats with --apply. It refuses concurrent documentation edits or a changed candidate README; no historical package is rewritten.

finalize_docs.py without verification produces only a pending scratch preview. Counts are read from actual manifests/reports after verification. Source-only or failed packaging does not advance the latest candidate pointer: retain evidence and leave current docs unchanged pending a separate reviewed source-only note.

The candidate remains unqualified. Native mine placement/arming/detonation, complete human escape, manual UI, real multiplayer/JIP/reconnect/twelve-player operation, physical logistics/interception and comparative FPS remain unverified. The intermittent zero-radius diagnostic is retained as unresolved; opt-in instrumentation is not a gameplay fix or caller proof.