--- A02 before edc37c9 +++ A02 after b39fd40 @@ -1,5 +1,5 @@ - ENVIRONMENT {"build": "vp run build:bundle plus own web build; archive preinstall wrapper execs actual built bin.mjs; unmodified real L/H release archives", "checkout": "", "fixture": "A02", "harness": "Linux local-SSH stub; actual generated script and built CLI; fresh synthetic HOME; no real SSH or UI", "home": "/home", "node": "v26.12.1", "platform": "Linux x86_64", "side": "before", "sourceSHA": "edc37c96c810d42761ab510c6a3e9d0a741547dc", "stateKey": "a85a9f8d45b0926f"} - ARTIFACT {"binSha256": "87522826dd14476a7032a743fbc4c0f517314640a6a77ef7102067d4d1f00ccc", "kind": "packaging wrapper; complete real built CLI, no helper shim", "version": "0.1.6", "wrapper": "#!/bin/sh\nexec /home/ubuntu/.local/share/vite-plus/js_runtime/node/26.12.1/bin/node '/apps/server/dist/bin.mjs' \"$@\"\n"} + ENVIRONMENT {"build": "vp run build:bundle plus own web build; archive preinstall wrapper execs actual built bin.mjs; unmodified real L/H release archives", "checkout": "", "fixture": "A02", "harness": "Linux local-SSH stub; actual generated script and built CLI; fresh synthetic HOME; no real SSH or UI", "home": "/home", "node": "v26.12.1", "platform": "Linux x86_64", "side": "after", "sourceSHA": "b39fd402c62559744f892a2e164212a79e0a6ede", "stateKey": "a85a9f8d45b0926f"} + ARTIFACT {"binSha256": "1770457d5680daa4f4e9761d0771bdb1107cb886c3f882022defe2a26384f13a", "kind": "packaging wrapper; complete real built CLI, no helper shim", "version": "0.1.6", "wrapper": "#!/bin/sh\nexec /home/ubuntu/.local/share/vite-plus/js_runtime/node/26.12.1/bin/node '/apps/server/dist/bin.mjs' \"$@\"\n"} COMMAND version 0.1.6 ["/home/.t3/runtime/versions/0.1.6/t3", "--version"] EXIT version 0.1.6 0 STDOUT version 0.1.6 t3 v0.1.6 @@ -33,20 +33,26 @@ LAUNCH_STDERR ssh.log SSH_STUB argv=["-o", "BatchMode=yes", "-o", "ConnectTimeout=10", "-o", "ServerAliveInterval=15", "-o", "ServerAliveCountMax=3", "--", "proof-local", "sh", "-l", "-s", "--", "a85a9f8d45b0926f"] - transmitted_script_sha256=2fba29ee131fbe72a4db9cc461fd09637a44fe16a1cf7027ac9276f02e1416d0 + transmitted_script_sha256=7cabeefe5996057559149fa71b72db3e693d3d3119f0b0b1b9557b4e204ce540 exit=0 remote.stdout {"remotePort":,"serverKind":"managed"} remote.stderr EFFECTIVE_HOME=/home - POST_CONNECT {"managed": "managed", "pid": "", "port": "", "process": {"live": true, "pid": , "state": "R"}, "runnerSha256": "e190a1a15c79e4dc1d6fdbc241d8ec44672a5597fa2ad3fc19f81336274b1ff4", "runtime": {"host": "127.0.0.1", "managedPolicy": null, "origin": "http://127.0.0.1:", "ownerId": "", "pid": , "port": , "serverVersion": "0.1.6", "startedAt": "", "version": 1}} + POST_CONNECT {"managed": "managed", "pid": "", "port": "", "process": {"live": true, "pid": , "state": "S"}, "runnerSha256": "e190a1a15c79e4dc1d6fdbc241d8ec44672a5597fa2ad3fc19f81336274b1ff4", "runtime": {"host": "127.0.0.1", "managedPolicy": null, "origin": "http://127.0.0.1:", "ownerId": "", "pid": , "port": , "serverVersion": "0.1.6", "startedAt": "", "version": 1}} RUNNER_COMPARISON {"changed": true, "previous": "MISSING", "proposed": "e190a1a15c79e4dc1d6fdbc241d8ec44672a5597fa2ad3fc19f81336274b1ff4"} ASSERT initial launch successful PASS ASSERT initial version PASS HARNESS_MUTATION Append harmless newline to remembered runner; force bytewise RUNNER_CHANGED=1 + HELPER_FIXTURE build-metadata {"contents": {"pid": , "serverVersion": "0.1.6+proof"}, "path": "/helper-build-metadata.json", "pidArgument": , "synthetic": true} + COMMAND helper build-metadata ["/home/ubuntu/.local/share/vite-plus/js_runtime/node/26.12.1/bin/node", "/apps/server/dist/bin.mjs", "__ssh-helper", "keep-server", "/helper-build-metadata.json", ""] + EXIT helper build-metadata 0 + STDOUT helper build-metadata + STDERR helper build-metadata + ASSERT helper build-metadata expected exit 0 PASS STEP 2 reconnect connecting client C {"archiveVersion": "0.1.6", "previousRunnerSha256": "ed90fdd3eb50607dc619bf4aa6ef9cbbc3c47311893b026baa75b198c7af5ad9"} - PRE_CONNECT {"managed": "managed", "pid": "", "port": "", "process": {"live": true, "pid": , "state": "R"}, "runnerSha256": "ed90fdd3eb50607dc619bf4aa6ef9cbbc3c47311893b026baa75b198c7af5ad9", "runtime": {"host": "127.0.0.1", "managedPolicy": null, "origin": "http://127.0.0.1:", "ownerId": "", "pid": , "port": , "serverVersion": "0.1.6", "startedAt": "", "version": 1}} + PRE_CONNECT {"managed": "managed", "pid": "", "port": "", "process": {"live": true, "pid": , "state": "S"}, "runnerSha256": "ed90fdd3eb50607dc619bf4aa6ef9cbbc3c47311893b026baa75b198c7af5ad9", "runtime": {"host": "127.0.0.1", "managedPolicy": null, "origin": "http://127.0.0.1:", "ownerId": "", "pid": , "port": , "serverVersion": "0.1.6", "startedAt": "", "version": 1}} COMMAND launchOrReuseRemoteServer ["/home/ubuntu/.local/share/vite-plus/js_runtime/node/26.12.1/bin/node", "/tmp/lead-29428-r1/evidence-capture/launch.mjs", "", "0.1.6"] LAUNCH_EXIT 0 LAUNCH_STDOUT STATE_KEY a85a9f8d45b0926f @@ -72,22 +78,22 @@ LAUNCH_STDERR ssh.log SSH_STUB argv=["-o", "BatchMode=yes", "-o", "ConnectTimeout=10", "-o", "ServerAliveInterval=15", "-o", "ServerAliveCountMax=3", "--", "proof-local", "sh", "-l", "-s", "--", "a85a9f8d45b0926f"] - transmitted_script_sha256=2fba29ee131fbe72a4db9cc461fd09637a44fe16a1cf7027ac9276f02e1416d0 + transmitted_script_sha256=7cabeefe5996057559149fa71b72db3e693d3d3119f0b0b1b9557b4e204ce540 exit=0 remote.stdout {"remotePort":,"serverKind":"managed"} remote.stderr EFFECTIVE_HOME=/home - POST_CONNECT {"managed": "managed", "pid": "", "port": "", "process": {"live": true, "pid": , "state": "S"}, "runnerSha256": "e190a1a15c79e4dc1d6fdbc241d8ec44672a5597fa2ad3fc19f81336274b1ff4", "runtime": {"host": "127.0.0.1", "managedPolicy": null, "origin": "http://127.0.0.1:", "ownerId": "", "pid": , "port": , "serverVersion": "0.1.6", "startedAt": "", "version": 1}} + POST_CONNECT {"managed": "managed", "pid": "", "port": "", "process": {"live": true, "pid": , "state": "S"}, "runnerSha256": "e190a1a15c79e4dc1d6fdbc241d8ec44672a5597fa2ad3fc19f81336274b1ff4", "runtime": {"host": "127.0.0.1", "managedPolicy": null, "origin": "http://127.0.0.1:", "ownerId": "", "pid": , "port": , "serverVersion": "0.1.6", "startedAt": "", "version": 1}} RUNNER_COMPARISON {"changed": true, "previous": "ed90fdd3eb50607dc619bf4aa6ef9cbbc3c47311893b026baa75b198c7af5ad9", "proposed": "e190a1a15c79e4dc1d6fdbc241d8ec44672a5597fa2ad3fc19f81336274b1ff4"} - OLD_PID_LIVENESS {"live": false, "pid": , "state": "gone"} - ASSERT old PID stopped PASS - ASSERT distinct C server managed PASS + OLD_PID_LIVENESS {"live": true, "pid": , "state": "S"} + ASSERT old PID retained and live PASS + ASSERT runtime version and startedAt retained PASS + ASSERT returns managed same actual port PASS ROW_RESULT CAPTURED - PRE_CLEANUP {"managed": "managed", "pid": "", "port": "", "process": {"live": true, "pid": , "state": "S"}, "runnerSha256": "e190a1a15c79e4dc1d6fdbc241d8ec44672a5597fa2ad3fc19f81336274b1ff4", "runtime": {"host": "127.0.0.1", "managedPolicy": null, "origin": "http://127.0.0.1:", "ownerId": "", "pid": , "port": , "serverVersion": "0.1.6", "startedAt": "", "version": 1}} - CLEANUP SIGCONT/SIGTERM - CLEANUP_FINAL {"live": false, "pid": , "state": "gone"} + PRE_CLEANUP {"managed": "managed", "pid": "", "port": "", "process": {"live": true, "pid": , "state": "S"}, "runnerSha256": "e190a1a15c79e4dc1d6fdbc241d8ec44672a5597fa2ad3fc19f81336274b1ff4", "runtime": {"host": "127.0.0.1", "managedPolicy": null, "origin": "http://127.0.0.1:", "ownerId": "", "pid": , "port": , "serverVersion": "0.1.6", "startedAt": "", "version": 1}} + CLEANUP SIGCONT/SIGTERM CLEANUP_FINAL {"live": false, "pid": , "state": "gone"} SERVER_LOG [