Housekeeps the GitLab runner's build cache, which is not part of the relay. This repository is public and about a messenger server, so it now lives in hitthosting-infra beside the restic and nzbdav timers: paulhitt/hitthosting-infra!3.
What remains under Scripts/monitoring/ is the messenger's own: health, the two privacy checks, and the database vacuum.
The one cross-repo tie, and why it is fine
messenger-health.sh stays here and still calls /srv/prod/monitoring/prune-runner-cache.sh when /data crosses 93 percent. That is a path on the box, not in this tree, so which repository ships the script does not reach it. The call is already guarded:
so it degrades to not sweeping rather than erroring, if the script is ever absent.
Order: hitthosting-infra!3 should land first, so the script is never in neither repository. Nothing on the box changes either way; both repositories deploy to the same /srv/prod/monitoring/ path.
Housekeeps the GitLab runner's build cache, which is not part of the relay. This repository is public and about a messenger server, so it now lives in hitthosting-infra beside the restic and nzbdav timers: paulhitt/hitthosting-infra!3.
What remains under `Scripts/monitoring/` is the messenger's own: health, the two privacy checks, and the database vacuum.
### The one cross-repo tie, and why it is fine
`messenger-health.sh` stays here and still calls `/srv/prod/monitoring/prune-runner-cache.sh` when `/data` crosses 93 percent. That is a path on the box, not in this tree, so which repository ships the script does not reach it. The call is already guarded:
```sh
&& [ -x /srv/prod/monitoring/prune-runner-cache.sh ]; then
```
so it degrades to not sweeping rather than erroring, if the script is ever absent.
**Order:** hitthosting-infra!3 should land first, so the script is never in neither repository. Nothing on the box changes either way; both repositories deploy to the same `/srv/prod/monitoring/` path.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
paulhitt
(Migrated from gitlab.com)
scheduled this pull request to auto merge when all checks succeed 2026-09-12 20:19:24 +00:00
paulhitt
(Migrated from gitlab.com)
merged commit 4e88841a06 into main2026-09-12 20:41:36 +00:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Housekeeps the GitLab runner's build cache, which is not part of the relay. This repository is public and about a messenger server, so it now lives in hitthosting-infra beside the restic and nzbdav timers: paulhitt/hitthosting-infra!3.
What remains under
Scripts/monitoring/is the messenger's own: health, the two privacy checks, and the database vacuum.The one cross-repo tie, and why it is fine
messenger-health.shstays here and still calls/srv/prod/monitoring/prune-runner-cache.shwhen/datacrosses 93 percent. That is a path on the box, not in this tree, so which repository ships the script does not reach it. The call is already guarded:so it degrades to not sweeping rather than erroring, if the script is ever absent.
Order: hitthosting-infra!3 should land first, so the script is never in neither repository. Nothing on the box changes either way; both repositories deploy to the same
/srv/prod/monitoring/path.🤖 Generated with Claude Code
mentioned in commit
4e88841a06