Dashboard › Code › Distillation
c15a8ce9-3d1b-4915-991b-1a30d92c9b55["lore_tm_v1_nLbkWEX3exNvOkBbB778Q4I2sBRwvcimN7xWHzg34Ss","lore_tm_v1_3KcNZs1VlkZ3dT3lV6C6tTXPwTHK3iBgTPm5l_QSSeA","lore_tm_v1_sSS6aav23k2xXG_Ux0wZRGUttyhvoNAPJSI1B783SCk"]
Date: Sep 17, 2026
/usr/local/bin/ts-opencode-watchdog.sh was confirmed as a 16-line /bin/sh script with SVC="svc:opencode" and TS=/usr/bin/tailscale; it parses "$TS" debug prefs using Python JSON, exits successfully when AdvertiseServices contains svc:opencode, and otherwise runs "$TS" serve advertise "$SVC" || exit 1. It has no AdvertiseRoutes or exit-node repair logic./etc/systemd/system/ts-opencode-advertise.timer was confirmed with Description=Periodically ensure Tailscale svc:opencode stays advertised, OnBootSec=30, OnUnitActiveSec=60, AccuracySec=10, and WantedBy=timers.target./usr/local/bin/ts-opencode-watchdog.sh with a #!/bin/sh and set -eu script using TS=/usr/bin/tailscale, SVC=svc:opencode, and one captured PREFS=$("$TS" debug prefs). The script independently checks AdvertiseServices for svc:opencode and runs "$TS" serve advertise "$SVC" if absent; it also checks whether {'0.0.0.0/0', '::/0'} is a subset of AdvertiseRoutes and runs "$TS" set --advertise-exit-node if either route is absent. Installation command sets mode 0755./etc/systemd/system/ts-opencode-advertise.service uses Description=Ensure required Tailscale advertisements remain enabled, After=tailscaled.service, Wants=tailscaled.service, Type=oneshot, and ExecStart=/usr/local/bin/ts-opencode-watchdog.sh; /etc/systemd/system/ts-opencode-advertise.timer uses Description=Periodically restore required Tailscale advertisements, OnBootSec=30, OnUnitActiveSec=60, AccuracySec=10, and WantedBy=timers.target.sudo systemctl daemon-reload, sudo systemctl restart ts-opencode-advertise.timer, and sudo systemctl start ts-opencode-advertise.service after writing the files, noting that no output from the final command indicates success. Execution and verification of the script, timer, routes, svc:opencode advertisement, and exit-node visibility remained pending because the assistant shell could not elevate with host sudo.