Skip to content

chore(gate-queue): remove leftover build-lease references - #84

Open
fts-forge[bot] wants to merge 1 commit into
mainfrom
sta-622-remove-build-lease
Open

fts-forge[bot] wants to merge 1 commit into
mainfrom
sta-622-remove-build-lease

Conversation

@fts-forge

@fts-forge fts-forge Bot commented Nov 2, 2026

Copy link
Copy Markdown
Contributor

STA-622. The build lease was removed in STA-565/567, and ~/.local/bin/build-lease is gone from THEBATTLESHIP. The repo still carried it, and two live jobs were quietly broken by it:

  • dev-target-sweep (hourly, THEBATTLESHIP) has logged SKIP: /home/agent/.local/bin/build-lease is missing on every run, so task/target is no longer bounded. It is at 199G against a 200G budget. The drive has 800G free.
  • stale-wait-sweep probed build-lease status. With the binary gone, every host parses as "unparseable" and gets skipped.

Gates themselves do not fail with rc 127. The running daemon is the hand-placed lease-free copy (~/.config/systemd/user/gate-queue.service shadows the nix unit). This PR brings the repo in line with that copy.

Changes

  • gate-queue: the live copy, verbatim. No lease acquire/renew/release. --exclusive/--no-lease are accepted and ignored. It refuses a linked worktree.
  • selftest.py: drops the stub lease and adds a linked-worktree refusal check.
  • stale-wait-sweep.py and its selftest: drop the lease probe and the free-slot criterion. Matching still accepts the word "lease" because old blocks still use it.
  • target-sweep.nix: drops the lease. The per-project .cargo-lock/.cargo-build-lock flock check is still the in-use guard.
  • Comments in gate-queue.nix and THEBATTLESHIP.nix; docs/gate-queue.md.

Validation

  • python3 -I selftest.py: 17/17 passed
  • python3 -I stale-wait-sweep.selftest.py: ALL PASS
  • nix eval of THEBATTLESHIP's dev-target-sweep ExecStart, plus a build of its drv (writeShellApplication with shellcheck): ok, no "lease" left in the script

Deploy

Nothing takes effect until THEBATTLESHIP is switched (that needs the Captain's yes/no). The stale-wait-sweep copy in the DevOps Hermes profile also has to be re-copied.

🤖 Generated with Claude Code

The build lease was removed in STA-565/567 and ~/.local/bin/build-lease is
gone from THEBATTLESHIP, but the repo still carried it:

- gate-queue: port the live lease-free copy (no acquire/renew/release,
  --exclusive/--no-lease accepted and ignored, refuses linked worktrees).
- selftest: drop the stub lease; add a linked-worktree refusal check.
- stale-wait-sweep: drop the `build-lease status` probe and the free-slot
  criterion. With the binary gone every host was "unparseable" and skipped.
- target-sweep: drop the lease. It has skipped every hour with
  "build-lease is missing"; the per-project cargo lock check stays.
- gate-queue.nix, THEBATTLESHIP.nix, docs/gate-queue.md: comments/docs.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants