{
  "ensure-workspace": {
    "status": "failed",
    "output": "=== Ensure workspace runtime (WSL2 Ubuntu) ===\n=== Ensure WSL2 subsystem is responsive (auto-recovers if wedged) ===\n  $ wsl --status\n    | Default Distribution: Ubuntu\n    | Default Version: 2\n  ✓ `wsl --status` ok (0s)\n  ✓ WSL2 subsystem is responsive\nChecking WSL2 prerequisites (wsl --status)...\n  ✓ WSL2 is installed and ready\n=== Ensure WSL2 subsystem is responsive (auto-recovers if wedged) ===\n  $ wsl --status\n    | Default Distribution: Ubuntu\n    | Default Version: 2\n  ✓ `wsl --status` ok (0s)\n  ✓ WSL2 subsystem is responsive\n  ✓ distro already registered + up to date\n  → booting the workspace (systemd PID 1), one blocking wait for boot to finish (~10-30s)…\n  ── systemd boot log ──\n    │ [    0.820738] JOSH-DESKTOP systemd[1]: Finished systemd-update-utmp-runlevel.service - Record Runlevel Change in UTMP.\n    │ [    0.821033] JOSH-DESKTOP systemd[1]: Startup finished in 204ms.\n    │ [    0.861014] JOSH-DESKTOP CRON[83]: pam_unix(cron:session): session closed for user adom\n    │ [    0.885835] JOSH-DESKTOP login[178]: pam_unix(login:session): session opened for user adom(uid=1001) by adom(uid=0)\n    │ [    1.137329] JOSH-DESKTOP code-server[74]: [2026-11-01T22:26:08.689Z] info  code-server 4.124.2 9fe7eb79d5ab2f2ed369d0e79cce4dbc6fe00a31\n    │ [    1.137499] JOSH-DESKTOP code-server[74]: [2026-11-01T22:26:08.694Z] info  Using user-data-dir /home/adom/.local/share/code-server\n    │ [    1.143278] JOSH-DESKTOP code-server[74]: [2026-11-01T22:26:08.700Z] info  Using config file /home/adom/.config/code-server/config.yaml\n    │ [    1.143336] JOSH-DESKTOP code-server[74]: [2026-11-01T22:26:08.700Z] info  HTTP server listening on http://127.0.0.1:7380/\n    │ [    1.143336] JOSH-DESKTOP code-server[74]: [2026-11-01T22:26:08.700Z] info    - Authentication is disabled\n    │ [    1.143336] JOSH-DESKTOP code-server[74]: [2026-11-01T22:26:08.700Z] info    - Not serving HTTPS\n    │ [    1.143336] JOSH-DESKTOP code-server[74]: [2026-11-01T22:26:08.700Z] info  Session server listening on /home/adom/.local/share/code-server/code-server-ipc.sock\n    │ [   11.070416] JOSH-DESKTOP unknown: WSL (2 - Interop) ERROR: CreateLoginSession:2758: Timed out waiting for user session for uid=1001\n    │ [   11.154655] JOSH-DESKTOP login[324]: pam_unix(login:session): session opened for user root(uid=0) by root(uid=0)\n    │ [   11.155388] JOSH-DESKTOP login[336]: ROOT LOGIN  on '/dev/pts/2'\n    │ [   21.349619] JOSH-DESKTOP unknown: WSL (2 - Interop) ERROR: CreateLoginSession:2758: Timed out waiting for user session for uid=0\n    │ [   21.400347] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   24.464858] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [   24.466205] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [   24.466329] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   25.312276] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   28.377413] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [   28.378646] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [   28.378782] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   34.232320] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   37.305760] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [   37.306809] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [   37.306932] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   43.164262] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   46.226920] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [   46.228346] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [   46.228481] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   48.322288] JOSH-DESKTOP kernel: hv_balloon: Max. dynamic memory size: 32336 MB\n    │ [   52.028256] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   53.862519] JOSH-DESKTOP CRON[506]: pam_unix(cron:session): session opened for user adom(uid=1001) by adom(uid=0)\n    │ [   53.862792] JOSH-DESKTOP CRON[507]: (adom) CMD (python3 /home/adom/.local/share/adom/codex/runtime/manage.py ensure-watch >/dev/null 2>&1 # adom/codex runtime)\n    │ [   53.884943] JOSH-DESKTOP CRON[506]: pam_unix(cron:session): session closed for user adom\n    │ [   55.088193] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [   55.089286] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [   55.089413] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   60.900370] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   63.978088] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [   63.979309] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [   63.979441] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   69.804303] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   72.869605] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [   72.870725] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [   72.870857] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   78.748308] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   81.836943] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [   81.838050] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [   81.838171] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   87.688285] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   90.778222] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [   90.779304] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [   90.779437] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   96.632284] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   99.705438] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [   99.707163] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [   99.707304] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  105.664305] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  108.748039] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [  108.749447] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [  108.749586] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  113.886374] JOSH-DESKTOP CRON[633]: pam_unix(cron:session): session opened for user adom(uid=1001) by adom(uid=0)\n    │ [  113.886655] JOSH-DESKTOP CRON[634]: (adom) CMD (python3 /home/adom/.local/share/adom/codex/runtime/manage.py ensure-watch >/dev/null 2>&1 # adom/codex runtime)\n    │ [  113.910075] JOSH-DESKTOP CRON[633]: pam_unix(cron:session): session closed for user adom\n    │ [  114.616304] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  117.682117] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [  117.683228] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [  117.683394] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  123.508251] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  126.585978] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [  126.587240] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [  126.587376] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  132.588242] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  135.672740] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [  135.673957] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [  135.674083] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  141.528349] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  144.593335] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [  144.594573] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [  144.594692] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  150.432285] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  153.511373] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [  153.512220] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [  153.512352] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  159.408348] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  162.491173] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [  162.492529] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [  162.492653] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  168.384267] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  171.450671] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [  171.451945] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [  171.452097] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  173.911772] JOSH-DESKTOP CRON[762]: pam_unix(cron:session): session opened for user adom(uid=1001) by adom(uid=0)\n    │ [  173.912129] JOSH-DESKTOP CRON[763]: (adom) CMD (python3 /home/adom/.local/share/adom/codex/runtime/manage.py ensure-watch >/dev/null 2>&1 # adom/codex runtime)\n    │ [  173.934120] JOSH-DESKTOP CRON[762]: pam_unix(cron:session): session closed for user adom\n    │ [  177.292295] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  180.356688] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [  180.357957] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [  180.358085] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  188.178032] JOSH-DESKTOP systemd[1]: Reloading requested from client PID 855 ('systemctl') (unit init.scope)...\n    │ [  188.178178] JOSH-DESKTOP systemd[1]: Reloading...\n    │ [  188.244455] JOSH-DESKTOP systemd[1]: Reloading finished in 66 ms.\n    │ [  225.908456] JOSH-DESKTOP systemd[1]: code-server.service: Deactivated successfully.\n    │ [  227.942131] JOSH-DESKTOP systemd[1]: code-server.service: Scheduled restart job, restart counter is at 1.\n    │ [  227.968173] JOSH-DESKTOP systemd[1]: Starting code-server.service - Adom code-server (Hydrogen Desktop workspace editor)...\n    │ [  227.968846] JOSH-DESKTOP systemd[1]: Started code-server.service - Adom code-server (Hydrogen Desktop workspace editor).\n    │ [  228.157764] JOSH-DESKTOP code-server[918]: [2026-11-01T22:29:55.714Z] info  code-server 4.124.2 9fe7eb79d5ab2f2ed369d0e79cce4dbc6fe00a31\n    │ [  228.157977] JOSH-DESKTOP code-server[918]: [2026-11-01T22:29:55.714Z] info  Using user-data-dir /home/adom/.local/share/code-server\n    │ [  228.164517] JOSH-DESKTOP code-server[918]: [2026-11-01T22:29:55.721Z] info  Using config file /home/adom/.config/code-server/config.yaml\n    │ [  228.164584] JOSH-DESKTOP code-server[918]: [2026-11-01T22:29:55.721Z] info  HTTP server listening on http://127.0.0.1:7380/\n    │ [  228.164584] JOSH-DESKTOP code-server[918]: [2026-11-01T22:29:55.721Z] info    - Authentication is disabled\n    │ [  228.164584] JOSH-DESKTOP code-server[918]: [2026-11-01T22:29:55.721Z] info    - Not serving HTTPS\n    │ [  228.164584] JOSH-DESKTOP code-server[918]: [2026-11-01T22:29:55.721Z] info  Session server listening on /home/adom/.local/share/code-server/code-server-ipc.sock\n    │ [  228.255636] JOSH-DESKTOP systemd[1]: Reloading requested from client PID 983 ('systemctl') (unit init.scope)...\n    │ [  228.255694] JOSH-DESKTOP systemd[1]: Reloading...\n    │ [  228.329546] JOSH-DESKTOP systemd[1]: Reloading finished in 73 ms.\n    │ [  233.935678] JOSH-DESKTOP CRON[1014]: pam_unix(cron:session): session opened for user adom(uid=1001) by adom(uid=0)\n    │ [  233.935882] JOSH-DESKTOP CRON[1015]: pam_unix(cron:session): session opened for user adom(uid=1001) by adom(uid=0)\n    │ [  233.936072] JOSH-DESKTOP CRON[1016]: (adom) CMD (bash /home/adom/.adom/hooks/adom-core-update.sh >/dev/null 2>&1)\n    │ [  233.936191] JOSH-DESKTOP CRON[1017]: (adom) CMD (python3 /home/adom/.local/share/adom/codex/runtime/manage.py ensure-watch >/dev/null 2>&1 # adom/codex runtime)\n    │ [  233.959073] JOSH-DESKTOP CRON[1014]: pam_unix(cron:session): session closed for user adom\n    │ [  233.996509] JOSH-DESKTOP CRON[1015]: pam_unix(cron:session): session closed for user adom\n    │ [  267.765389] JOSH-DESKTOP systemd[1]: code-server.service: Deactivated successfully.\n    │ [  269.942133] JOSH-DESKTOP systemd[1]: code-server.service: Scheduled restart job, restart counter is at 2.\n    │ [  269.972307] JOSH-DESKTOP systemd[1]: Starting code-server.service - Adom code-server (Hydrogen Desktop workspace editor)...\n    │ [  269.972748] JOSH-DESKTOP systemd[1]: Started code-server.service - Adom code-server (Hydrogen Desktop workspace editor).\n    │ [  270.123367] JOSH-DESKTOP systemd[1]: Reloading requested from client PID 1190 ('systemctl') (unit init.scope)...\n    │ [  270.123426] JOSH-DESKTOP systemd[1]: Reloading...\n    │ [  270.157458] JOSH-DESKTOP code-server[1150]: [2026-11-01T22:30:37.713Z] info  code-server 4.124.2 9fe7eb79d5ab2f2ed369d0e79cce4dbc6fe00a31\n    │ [  270.157650] JOSH-DESKTOP code-server[1150]: [2026-11-01T22:30:37.714Z] info  Using user-data-dir /home/adom/.local/share/code-server\n    │ [  270.164487] JOSH-DESKTOP code-server[1150]: [2026-11-01T22:30:37.721Z] info  Using config file /home/adom/.config/code-server/config.yaml\n    │ [  270.164487] JOSH-DESKTOP code-server[1150]: [2026-11-01T22:30:37.721Z] info  HTTP server listening on http://127.0.0.1:7380/\n    │ [  270.164487] JOSH-DESKTOP code-server[1150]: [2026-11-01T22:30:37.721Z] info    - Authentication is disabled\n    │ [  270.164487] JOSH-DESKTOP code-server[1150]: [2026-11-01T22:30:37.721Z] info    - Not serving HTTPS\n    │ [  270.164487] JOSH-DESKTOP code-server[1150]: [2026-11-01T22:30:37.721Z] info  Session server listening on /home/adom/.local/share/code-server/code-server-ipc.sock\n    │ [  270.178208] JOSH-DESKTOP systemd[1]: Reloading finished in 54 ms.\n    │ [  293.998333] JOSH-DESKTOP CRON[1244]: pam_unix(cron:session): session opened for user adom(uid=1001) by adom(uid=0)\n    │ [  293.998614] JOSH-DESKTOP CRON[1245]: (adom) CMD (python3 /home/adom/.local/share/adom/codex/runtime/manage.py ensure-watch >/dev/null 2>&1 # adom/codex runtime)\n    │ [  294.021786] JOSH-DESKTOP CRON[1244]: pam_unix(cron:session): session closed for user adom\n    │ [  354.023685] JOSH-DESKTOP CRON[1267]: pam_unix(cron:session): session opened for user adom(uid=1001) by adom(uid=0)\n    │ [  354.024064] JOSH-DESKTOP CRON[1268]: (adom) CMD (python3 /home/adom/.local/share/adom/codex/runtime/manage.py ensure-watch >/dev/null 2>&1 # adom/codex runtime)\n    │ [  354.045589] JOSH-DESKTOP CRON[1267]: pam_unix(cron:session): session closed for user adom\n    │ [  414.047057] JOSH-DESKTOP CRON[1291]: pam_unix(cron:session): session opened for user adom(uid=1001) by adom(uid=0)\n    │ [  414.047396] JOSH-DESKTOP CRON[1292]: (adom) CMD (python3 /home/adom/.local/share/adom/codex/runtime/manage.py ensure-watch >/dev/null 2>&1 # adom/codex runtime)\n    │ [  414.069346] JOSH-DESKTOP CRON[1291]: pam_unix(cron:session): session closed for user adom\n    │ [  474.070729] JOSH-DESKTOP CRON[1315]: pam_unix(cron:session): session opened for user adom(uid=1001) by adom(uid=0)\n    │ [  474.070992] JOSH-DESKTOP CRON[1316]: (adom) CMD (python3 /home/adom/.local/share/adom/codex/runtime/manage.py ensure-watch >/dev/null 2>&1 # adom/codex runtime)\n    │ [  474.093461] JOSH-DESKTOP CRON[1315]: pam_unix(cron:session): session closed for user adom\n  ── end boot log ──\n  ✓ workspace booted: systemd is 'running' after 0s (a degraded per-user session is normal for v9)\n  image version check: rootfs(/etc/adom-golden-version)=v31-full · HD-wrote(/etc/adom-tarball-version)=v31-full · expected=v31-full\nEnsuring adom user (uid 1001/gid 1001) + /home/adom/project...\n  ✓ adom user already present\n  ✓ /home/adom/project ready\nWriting adom-host alias (WSL2 → Windows gateway)...\n  ✓ alias ready\nStarting code-server inside the distro...\n  ✓ code-server start issued\n  ✓ api-key persistence ensured (boot-proof)\nDeep-verifying workspace (target: code-server reachable on host 127.0.0.1:7380)...\n  ✓ distro 'Adom-Workspace' is registered\n  --- verification round 1/3 ---\n  ✓ code-server binary present in distro\n  ✓ code-server process running in distro\n  ✓ code-server LISTENING on :7380 inside distro\n  … probing host 127.0.0.1:7380 (TCP)…\n    … not reachable yet (1/10), waiting…\n    … not reachable yet (3/10), waiting…\n    … not reachable yet (6/10), waiting…\n    … not reachable yet (9/10), waiting…\n  ✗ host 127.0.0.1:7380 still unreachable after round 1.\n    → REPAIR: forcing a clean code-server restart and retrying verification…\n  --- verification round 2/3 ---\n  ✓ code-server binary present in distro\n  ✓ code-server process running in distro\n  ✓ code-server LISTENING on :7380 inside distro\n  … probing host 127.0.0.1:7380 (TCP)…\n    … not reachable yet (1/10), waiting…\n    … not reachable yet (3/10), waiting…\n    … not reachable yet (6/10), waiting…\n    … not reachable yet (9/10), waiting…\n  ✗ host 127.0.0.1:7380 still unreachable after round 2.\n    → REPAIR: forcing a clean code-server restart and retrying verification…\n  --- verification round 3/3 ---\n  ✓ code-server binary present in distro\n  ✓ code-server process running in distro\n  ✓ code-server LISTENING on :7380 inside distro\n  … probing host 127.0.0.1:7380 (TCP)…\n    … not reachable yet (1/10), waiting…\n    … not reachable yet (3/10), waiting…\n    … not reachable yet (6/10), waiting…\n    … not reachable yet (9/10), waiting…\n  ✗ host 127.0.0.1:7380 still unreachable after round 3.\n\ncode-server runs inside the workspace but Windows cannot reach it: checking WSL networking and its firewall before giving up…\n  ✗ loopback probe FAILED (cause: unknown_loopback_failure)\n  · mirrored is configured; trying one WSL restart to heal the loopback…\n  $ wsl --shutdown   (no other distro is running: only ours restarts)\n  · loopback still failing after restart; continuing without elevation (the auth preflight reports the live diagnosis when it matters)\n  · the network fix is in place but not confirmed yet: waiting for WSL's network to come up (up to 90 s)…\n  ✓ starting the workspace again\n=== Ensure WSL2 subsystem is responsive (auto-recovers if wedged) ===\n  $ wsl --status\n    | Default Distribution: Ubuntu\n    | Default Version: 2\n  ✓ `wsl --status` ok (0s)\n  ✓ WSL2 subsystem is responsive\n  ✓ distro already registered + up to date\n  → booting the workspace (systemd PID 1), one blocking wait for boot to finish (~10-30s)…\n  ── systemd boot log ──\n    │ [    0.801165] JOSH-DESKTOP adom-bridge[72]: │    the relay dies, /proxy/8765/ returns HTTP 500, and EVERY connected desktop\n    │ [    0.801165] JOSH-DESKTOP adom-bridge[72]: │    falls into an endless \"Reconnecting in 30s\" loop until someone restarts it.\n    │ [    0.801165] JOSH-DESKTOP adom-bridge[72]: │\n    │ [    0.801165] JOSH-DESKTOP adom-bridge[72]: │ ✅ To make it SURVIVE the session AND self-heal, stop this and run instead:\n    │ [    0.801165] JOSH-DESKTOP adom-bridge[72]: │        adom-bridge serve --supervise\n    │ [    0.801165] JOSH-DESKTOP adom-bridge[72]: │    That detaches the relay from your session (reparented to init) and starts a\n    │ [    0.801165] JOSH-DESKTOP adom-bridge[72]: │    watchdog: it restarts the relay with backoff and TOASTS the connected\n    │ [    0.801165] JOSH-DESKTOP adom-bridge[72]: │    desktops (with the reason) whenever it has to. Stop later with:\n    │ [    0.801165] JOSH-DESKTOP adom-bridge[72]: │        adom-bridge serve --stop\n    │ [    0.801165] JOSH-DESKTOP adom-bridge[72]: │\n    │ [    0.801165] JOSH-DESKTOP adom-bridge[72]: │    (Foreground is fine for a quick local relay you'll sit and watch.)\n    │ [    0.801165] JOSH-DESKTOP adom-bridge[72]: └────────────────────────────────────────────────────────────────────────────\n    │ [    0.801165] JOSH-DESKTOP adom-bridge[72]: ┌─ SECURITY: this relay is using the DEFAULT development token ──────────────\n    │ [    0.801165] JOSH-DESKTOP adom-bridge[72]: │ The token is a well-known literal published in the adom-bridge docs, so\n    │ [    0.801165] JOSH-DESKTOP adom-bridge[72]: │ ANYONE who knows this relay's URL can join it and drive EVERY desktop\n    │ [    0.801165] JOSH-DESKTOP adom-bridge[72]: │ connected to it. If a connected desktop controls real hardware, treat\n    │ [    0.801165] JOSH-DESKTOP adom-bridge[72]: │ this as an open door.\n    │ [    0.801165] JOSH-DESKTOP adom-bridge[72]: │\n    │ [    0.801165] JOSH-DESKTOP adom-bridge[72]: │ Rotate (both sides must match):\n    │ [    0.801165] JOSH-DESKTOP adom-bridge[72]: │   1. relay:   adom-bridge serve --supervise --token <secret>\n    │ [    0.801165] JOSH-DESKTOP adom-bridge[72]: │              (or export ADOM_AUTH_TOKEN=<secret>)\n    │ [    0.801165] JOSH-DESKTOP adom-bridge[72]: │   2. desktop: set the same value as auth_token on that server entry\n    │ [    0.801165] JOSH-DESKTOP adom-bridge[72]: │              (Connections panel, or server_add with authToken)\n    │ [    0.801165] JOSH-DESKTOP adom-bridge[72]: │ Check any relay:  curl -s <relay-http>/health   -> usingDefaultToken\n    │ [    0.801583] JOSH-DESKTOP adom-bridge[72]: └────────────────────────────────────────────────────────────────────────────\n    │ [    0.802343] JOSH-DESKTOP adom-bridge[72]: Adom relay server started\n    │ [    0.802343] JOSH-DESKTOP adom-bridge[72]:   WebSocket: ws://0.0.0.0:8765\n    │ [    0.802343] JOSH-DESKTOP adom-bridge[72]:   HTTP API:  http://127.0.0.1:8766\n    │ [    0.802505] JOSH-DESKTOP systemd[1]: Started [redacted] - Getty on tty1.\n    │ [    0.803269] JOSH-DESKTOP systemd[1]: Started [redacted] - Getty on tty2.\n    │ [    0.804427] JOSH-DESKTOP CRON[81]: pam_unix(cron:session): session opened for user adom(uid=1001) by adom(uid=0)\n    │ [    0.804569] JOSH-DESKTOP CRON[83]: pam_unix(cron:session): session opened for user adom(uid=1001) by adom(uid=0)\n    │ [    0.805067] JOSH-DESKTOP CRON[143]: (adom) CMD (sleep 600; bash /home/adom/.adom/hooks/adom-core-update.sh >/dev/null 2>&1)\n    │ [    0.805204] JOSH-DESKTOP systemd[1]: Started [redacted] - Getty on tty3.\n    │ [    0.805228] JOSH-DESKTOP CRON[144]: (adom) CMD (python3 /home/adom/.local/share/adom/codex/runtime/manage.py ensure-watch >/dev/null 2>&1 # adom/codex runtime)\n    │ [    0.805954] JOSH-DESKTOP bash[73]: OK: Recovered 0 channel(s) from disk\n    │ [    0.805954] JOSH-DESKTOP bash[73]: OK: Retention active: max 200 shots/channel on disk (SHOTLOG_MAX_SHOTS), idle channels pruned after 30d (SHOTLOG_RETENTION_DAYS, 0=off)\n    │ [    0.806320] JOSH-DESKTOP bash[73]: OK: read-hook verified: auto-capture of every image any AI Reads is active.\n    │ [    0.806593] JOSH-DESKTOP bash[73]: OK: Listening on 0.0.0.0:8820\n    │ [    0.806745] JOSH-DESKTOP systemd[1]: Started [redacted] - Getty on tty4.\n    │ [    0.807788] JOSH-DESKTOP systemd[1]: e2scrub_reap.service: Deactivated successfully.\n    │ [    0.807915] JOSH-DESKTOP systemd[1]: Finished e2scrub_reap.service - Remove Stale Online ext4 Metadata Check Snapshots.\n    │ [    0.809944] JOSH-DESKTOP systemd[1]: Started [redacted] - Getty on tty5.\n    │ [    0.811430] JOSH-DESKTOP systemd[1]: Started [redacted] - Getty on tty6.\n    │ [    0.812362] JOSH-DESKTOP systemd[1]: Finished getty-static.service - getty on tty2-tty6 if dbus and logind are not available.\n    │ [    0.812864] JOSH-DESKTOP systemd[1]: Reached target getty.target - Login Prompts.\n    │ [    0.813016] JOSH-DESKTOP systemd[1]: Reached target multi-user.target - Multi-User System.\n    │ [    0.813626] JOSH-DESKTOP systemd[1]: Starting systemd-update-utmp-runlevel.service - Record Runlevel Change in UTMP...\n    │ [    0.819087] JOSH-DESKTOP systemd[1]: systemd-update-utmp-runlevel.service: Deactivated successfully.\n    │ [    0.819209] JOSH-DESKTOP systemd[1]: Finished systemd-update-utmp-runlevel.service - Record Runlevel Change in UTMP.\n    │ [    0.819559] JOSH-DESKTOP systemd[1]: Startup finished in 175ms.\n    │ [    0.863494] JOSH-DESKTOP CRON[81]: pam_unix(cron:session): session closed for user adom\n    │ [    0.913178] JOSH-DESKTOP login[178]: pam_unix(login:session): session opened for user adom(uid=1001) by adom(uid=0)\n    │ [    1.140846] JOSH-DESKTOP code-server[74]: [2026-11-01T22:36:16.779Z] info  code-server 4.124.2 9fe7eb79d5ab2f2ed369d0e79cce4dbc6fe00a31\n    │ [    1.141066] JOSH-DESKTOP code-server[74]: [2026-11-01T22:36:16.783Z] info  Using user-data-dir /home/adom/.local/share/code-server\n    │ [    1.146931] JOSH-DESKTOP code-server[74]: [2026-11-01T22:36:16.790Z] info  Using config file /home/adom/.config/code-server/config.yaml\n    │ [    1.146975] JOSH-DESKTOP code-server[74]: [2026-11-01T22:36:16.790Z] info  HTTP server listening on http://127.0.0.1:7380/\n    │ [    1.146975] JOSH-DESKTOP code-server[74]: [2026-11-01T22:36:16.790Z] info    - Authentication is disabled\n    │ [    1.146975] JOSH-DESKTOP code-server[74]: [2026-11-01T22:36:16.790Z] info    - Not serving HTTPS\n    │ [    1.146975] JOSH-DESKTOP code-server[74]: [2026-11-01T22:36:16.790Z] info  Session server listening on /home/adom/.local/share/code-server/code-server-ipc.sock\n    │ [   11.097340] JOSH-DESKTOP unknown: WSL (2 - Interop) ERROR: CreateLoginSession:2758: Timed out waiting for user session for uid=1001\n    │ [   11.147979] JOSH-DESKTOP login[324]: pam_unix(login:session): session opened for user root(uid=0) by root(uid=0)\n    │ [   11.148754] JOSH-DESKTOP login[336]: ROOT LOGIN  on '/dev/pts/2'\n    │ [   21.339035] JOSH-DESKTOP unknown: WSL (2 - Interop) ERROR: CreateLoginSession:2758: Timed out waiting for user session for uid=0\n    │ [   21.388256] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   24.468198] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [   24.469633] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [   24.469769] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   25.272310] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   28.327030] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [   28.328171] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [   28.328290] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   34.136354] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   37.213219] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [   37.214442] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [   37.214574] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   43.060223] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   45.865063] JOSH-DESKTOP CRON[509]: pam_unix(cron:session): session opened for user adom(uid=1001) by adom(uid=0)\n    │ [   45.865344] JOSH-DESKTOP CRON[510]: (adom) CMD (python3 /home/adom/.local/share/adom/codex/runtime/manage.py ensure-watch >/dev/null 2>&1 # adom/codex runtime)\n    │ [   45.888465] JOSH-DESKTOP CRON[509]: pam_unix(cron:session): session closed for user adom\n    │ [   46.142628] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [   46.143821] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [   46.143956] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   48.321030] JOSH-DESKTOP kernel: hv_balloon: Max. dynamic memory size: 32336 MB\n    │ [   51.952331] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   55.025163] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [   55.026605] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [   55.026729] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   60.832269] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   63.907006] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [   63.908175] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [   63.908295] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   69.728310] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   72.802967] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [   72.804310] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [   72.804439] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   78.660265] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   81.741882] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [   81.743011] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [   81.743130] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   87.588306] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   90.649990] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [   90.651200] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [   90.651344] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   96.476269] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [   99.552922] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [   99.554093] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [   99.554216] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  105.388261] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  105.890096] JOSH-DESKTOP CRON[638]: pam_unix(cron:session): session opened for user adom(uid=1001) by adom(uid=0)\n    │ [  105.890382] JOSH-DESKTOP CRON[639]: (adom) CMD (python3 /home/adom/.local/share/adom/codex/runtime/manage.py ensure-watch >/dev/null 2>&1 # adom/codex runtime)\n    │ [  105.914283] JOSH-DESKTOP CRON[638]: pam_unix(cron:session): session closed for user adom\n    │ [  108.452337] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [  108.453460] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [  108.453581] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  114.296371] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  117.386943] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [  117.388229] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [  117.388363] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  123.228307] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  126.304426] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [  126.305654] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [  126.305817] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  132.128311] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  135.200909] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [  135.202094] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [  135.202218] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  140.988331] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  144.058860] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [  144.060090] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [  144.060215] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  149.888360] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  152.958115] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [  152.959222] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [  152.959347] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  158.768232] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  161.835994] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [  161.837311] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [  161.837437] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  165.915685] JOSH-DESKTOP CRON[778]: pam_unix(cron:session): session opened for user adom(uid=1001) by adom(uid=0)\n    │ [  165.916033] JOSH-DESKTOP CRON[779]: (adom) CMD (python3 /home/adom/.local/share/adom/codex/runtime/manage.py ensure-watch >/dev/null 2>&1 # adom/codex runtime)\n    │ [  165.937655] JOSH-DESKTOP CRON[778]: pam_unix(cron:session): session closed for user adom\n    │ [  167.652267] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  170.722592] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [  170.723725] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [  170.723850] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  176.536251] JOSH-DESKTOP systemd[1]: Started hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n    │ [  179.600691] JOSH-DESKTOP systemd[1]: Stopping hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1...\n    │ [  179.601926] JOSH-DESKTOP systemd[1]: hd-loopback-probe.service: Deactivated successfully.\n    │ [  179.602055] JOSH-DESKTOP systemd[1]: Stopped hd-loopback-probe.service - /usr/bin/python3 -m http.server 47996 --bind 127.0.0.1.\n  ── end boot log ──\n  ✓ workspace booted: systemd is 'running' after 0s (a degraded per-user session is normal for v9)\n  image version check: rootfs(/etc/adom-golden-version)=v31-full · HD-wrote(/etc/adom-tarball-version)=v31-full · expected=v31-full\nEnsuring adom user (uid 1001/gid 1001) + /home/adom/project...\n  ✓ adom user already present\n  ✓ /home/adom/project ready\nWriting adom-host alias (WSL2 → Windows gateway)...\n  ✓ alias ready\nStarting code-server inside the distro...\n  ✓ code-server start issued\n  ✓ api-key persistence ensured (boot-proof)\nDeep-verifying workspace (target: code-server reachable on host 127.0.0.1:7380)...\n  ✓ distro 'Adom-Workspace' is registered\n  --- verification round 1/3 ---\n  ✓ code-server binary present in distro\n  ✓ code-server process running in distro\n  ✓ code-server LISTENING on :7380 inside distro\n  … probing host 127.0.0.1:7380 (TCP)…\n    … not reachable yet (1/10), waiting…\n    … not reachable yet (3/10), waiting…\n    … not reachable yet (6/10), waiting…\n    … not reachable yet (9/10), waiting…\n  ✗ host 127.0.0.1:7380 still unreachable after round 1.\n    → REPAIR: forcing a clean code-server restart and retrying verification…\n  --- verification round 2/3 ---\n  ✓ code-server binary present in distro\n  ✓ code-server process running in distro\n  ✓ code-server LISTENING on :7380 inside distro\n  … probing host 127.0.0.1:7380 (TCP)…\n    … not reachable yet (1/10), waiting…\n    … not reachable yet (3/10), waiting…\n    … not reachable yet (6/10), waiting…\n    … not reachable yet (9/10), waiting…\n  ✗ host 127.0.0.1:7380 still unreachable after round 2.\n    → REPAIR: forcing a clean code-server restart and retrying verification…\n  --- verification round 3/3 ---\n  ✓ code-server binary present in distro\n  ✓ code-server process running in distro\n  ✓ code-server LISTENING on :7380 inside distro\n  … probing host 127.0.0.1:7380 (TCP)…\n    … not reachable yet (1/10), waiting…\n    … not reachable yet (3/10), waiting…\n    … not reachable yet (6/10), waiting…\n    … not reachable yet (9/10), waiting…\n  ✗ host 127.0.0.1:7380 still unreachable after round 3.\n  · Windows could not reach the workspace; not switching to NAT networking: WSL runs 'none', not mirrored\n  ✗ network check: WSL networking mode 'none', workspace internet UNREACHABLE, network gate not confirmed\n  ✗ workspace setup attempt failed (will retry if attempts remain): code-server never became reachable on host 127.0.0.1:7380 after 3 verify/repair rounds. The VS Code pane would hang on 'Starting AI Environment', so step 1 is failing rather than advancing on a broken workspace.\n\nWindows could not reach the workspace even after the network check. network check: WSL networking mode 'none', workspace internet UNREACHABLE, network gate not confirmed. A VPN, a security tool or a firewall policy that blocks WSL is the usual cause.",
    "percent": 0.0,
    "attempts": 0,
    "max_attempts": 3
  }
}