Original Penguin Command scheduled-input gameplay, 2026-10-24
Normal Game opens and advances to Wave #2 with a changing score. One pre-scheduled ordinary-input execution passed beyond the previously accepted menu. The batch-45,000 capture visibly reads Score: 160 / Wave Scoring; batch 60,000 reads Score: 240 / Starting Wave #2 / Defend Cities!. The batch-85,000 frame is the Hiscores screen; subsequent frames return to the main menu. This verifies bounded original gameplay progression, not a complete game, sustained play or a particular projectile's response to a key.
Evidence is adjacent in penguin-command-scheduled-input-gameplay-20261024/.
Worker session 01a16bc8-e2ab-7941-98ac-8e205008daa9 owns the single task,
on task/penguin-command-scheduled-input-gameplay-oct24. Its explicit sparse
checkout started at main e29c89251e917bb15d549c9eb921d32e6f7aa4c1, confirmed
with strict SSH ls-remote. This task does not integrate to main. Root tracked
files, index, refs and all standing donors remain read-only.
Observed sequence and limits
The prior inspected menu places Normal Game around desktop (420,360).
All actions were supplied through this exact runner's supported --input=
before launch; none depended on a later live click. scheduled-inputs.json
and run/command.json retain the complete schedule and actual argv.
| Batch | Actual action / reviewed result |
|---|---|
| 32,000 | menu.png: original title and Normal Game menu |
| 33,000 / 34,000 / 34,500 | Move to (420,360), left button down, left button up |
| 45,000 | after-selection.png: Score 160, Wave Scoring, two city images |
| 50,000 / 51,000 / 55,000 | Aim (260,220), A down/up, delivered to focused SDL window |
| 60,000 | aim-fire-left.png: Score 240, Starting Wave #2, red aiming cross at (260,220) |
| 70,000 / 71,000 / 75,000 | Aim (440,180), S down/up, delivered |
| 85,000 | aim-fire-centre.png: authentic Hiscores screen |
| 100,000 / 101,000 / 105,000 | Aim (550,250), D down/up, delivered |
| 120,000 | aim-fire-right.png: main menu with red aiming cross at (550,250) |
| 140,000 / 141,000 / 143,000 | Aim (330,160), left button down/up, delivered |
| 160,000 / 190,000 / exit | Identical final menu with cross at (330,160) |
The bundled original README documents mouse aiming and A/S/D for the three
cannons. run/output.log records each down/up and the actual Win32 input
messages entering hwnd 0x10001, including keyboard focus. The selection
transition, score and wave are directly visible. The score increase spans a
wave-scoring transition and must not be attributed specifically to the A
press. No capture isolates the state at the S press; D and the final click
arrived after the reviewed Hiscores frame. No isolated
fired projectile, enemy destruction or causal firing success is claimed.
The thin green line in the wave-scoring image is not used as projectile proof.
Seven scheduled captures and the exit capture succeeded. The 640x480 host canvas clips the right and bottom of the window at (20,20), as in the prior menu run; this is not full-client-area coverage. Guest clock values are in the log (6,400,000 ms at the menu, 12,000,000 ms at Wave #2); batch-clock progress is not real play time. There is no long-session or audio claim.
The sole guest execution naturally reached 200,000 batches in 7.136 s,
730,061 API calls, exit 0, without an observed trap or unimplemented API.
The supervisor completed in 7.330 s, TERM=false, KILL=false,
remainingGroup=false. Its actual API command is cmd_92guomz6atbd.
No second run, build, installation, patched guest, fake input state or
alternative module was used. input-events.json is empty because it records
only live controls; the scheduled commands are proved by argv and output.
Exact inputs and fresh gates
This qualifies historical source b41a7c5f4b752d1f0bdab1141a11d4fed4dc6f9a,
not current main. The complete module is 1,879,746 bytes, SHA-256
8fac39936b6df2418ad86cab118cef19a65a727f649fbc14c412b37818904686.
The runner is 685,960 bytes, SHA-256
4d7b9587676db38fcf3314807acb2b2a42b5f09d2c98fcf3dccb8a6cde9e1809.
The original EXE is 107,008 bytes, SHA-256
14d6e430c26c44c94ef5c176eca2f66edd82dd66fd155d29a5596e3d6e170fc1.
MSVCRT SHA-256 is
887eb5ce93edb7192ca3e9220f07f9ca0f94db02af5862ebcbdfcb852db99fd1.
manifest.json binds all 287 files / 15,719,953 bytes, including seven
authentic DLLs, all 83 graphics, the region helper, fonts and 23 pngjs 7.0.0
files. Local hashes passed before transfer; the complete destination rehash
passed before guest launch. Streaming wrote one final remote tree, with no
archive or intermediate payload tree. All 431 serialized requests were
at most 35,976 bytes, below the 36,000-byte limit; segment data was at
most 18,000 bytes. Metadata and helper requests used the same bound.
The fresh ordinary-UID1000 probe ran from the actual runner directory:
PNG encode/decode returned [1,2,3,255], production rasterCanvas and renderer
resolved, and all subset-font mounts were readable. Region stamp
9a3bc9149d58209c includes DIRECT_WINDOW. A separate sequential native
WebAssembly linkage probe instantiated all 291 imports with a fixed shared
512 MiB arena. It invokes no guest export; its throwing host placeholders
are only an ABI test, never the gameplay host. That process ended before
the real runner and its authentic host/DLL initialization began. The actual
runner initialized all seven DLL providers successfully. No threads, skia
or headlessGL route was selected.
Recovery, resources and lifecycle
admit.py, stage.py, prepare-run.py, preflight.py, supervise.py and
collect.py preserve the executed recovery/transfer/supervision recipes.
Do not replay them over retained output paths. A future authorized recovery
must choose fresh task/output paths and its assigned box, repeat admission,
then run admission, stage, prepare-run, the supervisor once, and collection
in order. Historical Git reads use GIT_NO_LAZY_FETCH=1 git show from
/home/user/wine-assembly-shadow-man-span-static-canonical-oct23 at the exact
revision above. Local absolute file donors are individually named and hashed
in the manifest. The original retained release is at
/home/user/wine-assembly-penguin-command-retained-closure-oct23/docs/re-notes/penguin-command-retained-closure-20261023/original/penguin-command-1.6.11;
codec is under
/home/user/wine-assembly/scratch/usage-watch/shadow-man-codec-recovery-oct22/node_modules/pngjs.
Ignored module/original bytes are recovered from these immutable inputs,
not from Git evidence files. The accepted ABI contract is retained verbatim.
Initial admission was 59,760,145 bytes; before guest launch it explicitly
retained 5,327,752 bytes of prior local failed/menu task history, totaling
65,087,897 / 67,108,864 bytes. No previous result or charge was reset.
Final accounting retains current checkout/Git, both hosts' outputs, launcher
events, the actual worker session, positive SQLite growth, future transport
and evidence allowances, and the 8 MiB reserve inside the allocation.
Installed tools and immutable input donors are separately identified.
resource-final.json records measured charges and the remaining projection;
both hosts preserve the 2,982,150,144-byte post-projection free-space floor,
and all task files are below 25,165,824 bytes. Internal text capture is
conservatively charged at 400,000 / 1,048,576 bytes; raster artifacts and
their session growth are separately charged in full.
Fresh native MemAvailable was 7,198,261,248 bytes before the dependency probe;
the supervisor rechecked >=2,684,354,560 immediately before gameplay. The
actual guest uses fixed 512 MiB shared memory and oldspace512, CPU/wall90 s,
guest60 s, max200000 batches, quiet API/block flags and the unchanged
524,288-byte output guard. remote-final.json records no remaining exact
runner process and 20,429,551 owned remote bytes. The supervisor reaps its
group; only retained staging/evidence remains.
Box bx_ts27jq5e is left RUNNING, API state idle, health ok, expiry
2026-10-24T03:18:12.037Z. The coordinator owns shutdown at 03:08 UTC.
watchdog-observed.json records actual live watchdog PID3197673, its source
hash and deadline. That deadline has not arrived; a shutdown receipt is not
claimed. No stop, delete, resume, expiry extension or other box allocation
occurred. The prior denied bx_9nngcsvf resume was never retried.
The board watcher is stopped at handback. There is no Penguin corpus card;
this evidence remains with the investigation note. No public hosting,
Claude, workers, unrelated edits or main integration were performed.