← Cloud EnvironmentCONTENT HISTORY

Update to Cloud Environment

Snapshot Nov 7, 2026 · 06:11 UTC · version 0.2.0

WHAT CHANGED

Package or technical metadata updated

Package or technical metadata updated

Observed in package metadata. These changes alone do not establish a new customer-facing feature.

Save Cloud Environment and check future changes in Following.

Up to 3 plugins free · no card required.

All fields and original values.

These are saved file metadata. Open a changed file to read its text edits.

Package file

Before

Sep 30, 2026 · 23:11 UTC

c23513e361a6f9dbe1c28e5c41de635f355469b4ec1740ae1cd2de1d38a91bd3

After

Nov 7, 2026 · 06:11 UTC

43c1edfd46ed50089691d1c28f21956d9c75dddde78bfa8f7c0993cce9bf737b

Package file

Before

Sep 30, 2026 · 23:11 UTC

3985

After

Nov 7, 2026 · 06:11 UTC

7482

Package file

Before

Sep 30, 2026 · 23:11 UTC

ed06da8a5917325f2aea394884e1deb9dd085a74d6ecc4f289d2e90b2f6366d9

After

Nov 7, 2026 · 06:11 UTC

ec96d051bb55af47524272b4444c84009e8cc0f111571eeeb2b5ebf4eb38b21b

Package file

Before

Sep 30, 2026 · 23:11 UTC

6363

After

Nov 7, 2026 · 06:11 UTC

6846

Compare saved observations

Download comparison JSON

Changed files

Choose a file to see its text changes. Binary or large files show metadata only.

SKILL.md →

references/docker.md →

references/networking.md →

references/packages.md →

references/vpn.md →

references/docker.md

− removed · + added

--- before
+++ after
@@ -26,7 +26,9 @@
 Keep the existing storage driver, data directory, and socket group. For the
 provided daemon defaults, the following command refuses to start a second daemon
 and removes the stale pidfile only after confirming no `dockerd` process is
-running:
+running. It creates a fresh runtime directory so restored containerd PID and
+socket files cannot interfere with startup; Docker's persistent data stays in
+its existing location:
 
 ```sh
 (
@@ -40,10 +42,12 @@
 fi
 install -d -m 0700 /run/codex-docker
 rm -f /run/codex-docker/dockerd.pid
+docker_exec_root="$(mktemp -d /run/codex-docker/exec-XXXXXX)"
 docker_socket_gid="$(stat -c %g /var/run/docker.sock 2>/dev/null || id -g)"
 nohup /usr/local/bin/dind /usr/local/bin/dockerd \
     --host=unix:///var/run/docker.sock \
     --pidfile=/run/codex-docker/dockerd.pid \
+    --exec-root="$docker_exec_root" \
     --storage-driver="${CAAS_DIND_STORAGE_DRIVER:-vfs}" \
     --group="$docker_socket_gid" \
     >/run/codex-docker/dockerd.log 2>&1 </dev/null &
@@ -53,8 +57,9 @@
 Repeat the local-socket health check above until it succeeds before Docker work;
 inspect the daemon log if it does not become ready within 60 seconds. To restart
 an unhealthy daemon as root, inspect its log and existing arguments, stop that
-specific process, wait for it to exit, and start it with the same settings and
-proxy environment.
+specific process and wait for it to exit. Start it with a fresh runtime directory
+as above, preserving its data directory, storage driver, socket group, and proxy
+environment.
 Restarting interrupts running containers. Do not launch a competing daemon or
 change storage drivers to recover it.
 
@@ -108,12 +113,15 @@
 ## Running containers
 
 New containers receive Docker's default proxy environment. Give a process that
-needs HTTPS a read-only CA mount and its appropriate trust setting. For example:
+needs HTTPS a read-only CA mount and its appropriate trust setting. For this
+example, use Node.js 22.21 or newer; `NODE_USE_ENV_PROXY=1` makes `fetch()` use
+the inherited proxy settings:
 
 ```sh
 docker run --rm \
     --mount "type=bind,src=$CODEX_PROXY_CERT,dst=/run/proxy-ca.pem,readonly" \
     -e NODE_EXTRA_CA_CERTS=/run/proxy-ca.pem \
+    -e NODE_USE_ENV_PROXY=1 \
     node:22-bookworm-slim \
     node -e 'fetch("https://registry.npmjs.org").then(r => { if (!r.ok) process.exit(1); })'
 ```
Full technical diff · 9 changed fields

changed /files/SKILL.md/sha256

BEFORE
"c23513e361a6f9dbe1c28e5c41de635f355469b4ec1740ae1cd2de1d38a91bd3"
AFTER
"43c1edfd46ed50089691d1c28f21956d9c75dddde78bfa8f7c0993cce9bf737b"

changed /files/SKILL.md/size

BEFORE
3985
AFTER
7482

changed /files/references~1docker.md/sha256

BEFORE
"ed06da8a5917325f2aea394884e1deb9dd085a74d6ecc4f289d2e90b2f6366d9"
AFTER
"ec96d051bb55af47524272b4444c84009e8cc0f111571eeeb2b5ebf4eb38b21b"

changed /files/references~1docker.md/size

BEFORE
6363
AFTER
6846

changed /files/references~1networking.md/sha256

BEFORE
"0e897330ac66015b44f0dc16f57d48279c7782a4e79ac6309f6c3b96ce833a8f"
AFTER
"349d5b56dfff6f3973852941af2b59b2576d9461d851d167fa78da7f5a7dfd49"

changed /files/references~1networking.md/size

BEFORE
1688
AFTER
6117

added /files/references~1packages.md

BEFORE
Field was absent
AFTER
{
  "sha256": "7079ae62edd61083e1f448b845c7d6120e26e98882e918844403695f53ece6c9",
  "size": 1751
}

changed /files/references~1vpn.md/sha256

BEFORE
"e0be7532df91927959616f24304b9c3448f982dce04a3b511badfc7837e66613"
AFTER
"29e446165d393c5179bb3619f652b9b1e2e2e93723146cd51f0a2b7ad56d6bef"

changed /files/references~1vpn.md/size

BEFORE
8927
AFTER
11165
Full snapshot data
{
  "files": {
    "SKILL.md": {
      "sha256": "43c1edfd46ed50089691d1c28f21956d9c75dddde78bfa8f7c0993cce9bf737b",
      "size": 7482
    },
    "references/docker.md": {
      "sha256": "ec96d051bb55af47524272b4444c84009e8cc0f111571eeeb2b5ebf4eb38b21b",
      "size": 6846
    },
    "references/networking.md": {
      "sha256": "349d5b56dfff6f3973852941af2b59b2576d9461d851d167fa78da7f5a7dfd49",
      "size": 6117
    },
    "references/packages.md": {
      "sha256": "7079ae62edd61083e1f448b845c7d6120e26e98882e918844403695f53ece6c9",
      "size": 1751
    },
    "references/vpn.md": {
      "sha256": "29e446165d393c5179bb3619f652b9b1e2e2e93723146cd51f0a2b7ad56d6bef",
      "size": 11165
    },
    "scripts/ensure-socat.sh": {
      "sha256": "5d978e9230c4363dc84e2169e0385efaff2f1b5259da8fb15ed57924fdcd13f0",
      "size": 2962
    }
  }
}

SHA-256 of public snapshot: 57c582decb5bf8d5666540d73a9c383b344bab1f1966b457c96de7fdc068985e