Two files changed on Walter. No other machines required changes.
# BEFORE /home/daniel/bin/vault-snapshot.sh โ #!/bin/bash /home/daniel/bin/snapshot-all.sh โ #!/bin/bash # AFTER /home/daniel/bin/vault-snapshot.sh โ #!/usr/bin/env bash /home/daniel/bin/snapshot-all.sh โ #!/usr/bin/env bash
Verification: grep -rl '#!/bin/bash' /home/daniel/bin/ returns nothing. All scripts in Walter's ~/bin/ now use the portable shebang.
| Step | Action | Result |
|---|---|---|
| 1 | Audit bash versions fleet-wide | โ All reachable machines Bash 5.2 |
| 2 | Fix machines on Bash 3.2 | Skipped โ no machines on 3.2 |
| 3 | Fix shebangs to #!/usr/bin/env bash | โ 2 files fixed on Walter |
All robots should know: shebangs must always be #!/usr/bin/env bash, never #!/bin/bash. This is a fleet-wide standard. When any robot creates a new bash script, it must use the portable shebang. This needs to be written into each robot's system prompt or memory.
Robots that write scripts: Walter ๐ฆ, Walter Jr ๐ฆ, Matilda ๐ธ. Each should have this convention in their persistent memory. Amy ๐ฑ uses Python, not bash โ lower priority but worth noting if she ever writes shell scripts.
Six machines could not be audited (Amy, Foreman, Amy Israel, RMS, Captain Kirk, Ghost Jr). When any of these is next started, verify bash version and fix shebangs if any ~/bin/ scripts exist. This could be added as a checklist item to the fleet gold file.
Foreman (foreman.1.foo) is RUNNING but SSH key is not authorized for daniel@. This is a separate issue from bash but was discovered during the audit. Should be fixed to enable future fleet-wide operations.