cross-machine-playbook.md
Purpose: copy-pasteable commands to prove cross-machine pull works. Generated by: state/lint/cross-machine-probe.ts (re-run to refresh).
The probe writes a tracer file on the writer machine, pushes it through the gateway, and records the sha. The commands below let a second machine pull it back and verify the sha — completing the A→B handshake.
See state/wiki/cross-machine-status.md for the full test recipe and state/log/cross-machine.ndjson for the measured rows.
Latest tracer (2026-04-18T22:27:34.887Z)
- writer host:
Roberts-Mac-mini.local - writer machine_id:
53e3a32d877a - tracer path:
state/log/sync-tracer/Roberts-Mac-mini.local-2026-04-18T22-27-29-765Z.txt - expected sha256:
9cea427c5e705885f20d7a54b85522c752bd0acef3086cc47ce9dc4d54e225ae
# Run on the PEER machine (not this one). Proves pull side of cross-machine sync.
# Tracer written: 2026-04-18T22:27:34.886Z from host=Roberts-Mac-mini.local machine_id=53e3a32d877a
curl -sS -H 'Authorization: Bearer snappy_master_4835306db47344f1f86b3dbaaec59d98' \
'https://skills.snappy.ai/.well-known/skills/snappy-os/state/log/sync-tracer/Roberts-Mac-mini.local-2026-04-18T22-27-29-765Z.txt' \
| tee /tmp/snappy-os-tracer.txt
# Expected sha256 (compare with shasum -a 256 /tmp/snappy-os-tracer.txt):
# 9cea427c5e705885f20d7a54b85522c752bd0acef3086cc47ce9dc4d54e225ae
Full peer verification (optional, uses the snappy-os CLI)
# On any other machine with snappy-os installed:
cd ~/projects/snappy-os
node bin/cli.js pull --scope state --auto
shasum -a 256 state/log/sync-tracer/Roberts-Mac-mini.local-2026-04-18T22-27-29-765Z.txt
# First column must equal: 9cea427c5e705885f20d7a54b85522c752bd0acef3086cc47ce9dc4d54e225ae
Logging the outcome on the peer
# Append to state/log/cross-machine.ndjson after verifying:
printf '{"ts":"%s","from":"<peer-hostname>","via":"gateway","ok":true,"sha":"9cea427c5e705885f20d7a54b85522c752bd0acef3086cc47ce9dc4d54e225ae","tracer":"state/log/sync-tracer/Roberts-Mac-mini.local-2026-04-18T22-27-29-765Z.txt"}\n' \
"$(date -u +%FT%TZ)" >> state/log/cross-machine.ndjson
<!-- kernel-ok: playbook regenerated by cross-machine-probe.ts -->