Skip to content

ProcLease v0.1.7 experimental preview

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 11 Nov 16:05
· 9 commits to main since this release

ProcLease v0.1.7 is an experimental patch release fixing interrupted jobs that
remained in the default list and watch views indefinitely. Runtime
dependencies and the Rust 1.89 minimum are unchanged.

Interrupted history

If a keeper dies during cleanup, its final saved record can remain stopping.
Observation derives interrupted once the managed group is gone, but cannot
recover the exact command exit time. Previously, that unknown timestamp kept
the row visible forever.

When both keeper and managed group are verified absent, the default view now
uses the last saved lifecycle-write time for the existing 30-second recent-job
window and five-job cap. This also handles records left by older versions.
list --all, watch --all and direct logs still expose retained history.

The display anchor is neither serialized nor persisted: finished_at_ms stays
null, no lifecycle record is rewritten, and conservative history collection
continues to preserve these records. Active and unverified work remains visible.
A live, reused or zombie keeper PID, uncertain group absence, or an unusable or
future modification time also keeps the row visible. Wall-clock and file times
affect the display window; the anchor is not an exact completion time.

The suite has 15 unit and 49 lifecycle tests, including real keeper interruption,
legacy records, the recent-job cap, JSON compatibility and retention protection.
See the README
for behavior and history access.

Installation

Review this release's install.sh, then run:

sh install.sh --skills both
proclease --version

The installer verifies the native archive's SHA-256 checksum and atomically
replaces the CLI without sudo or Rust. Omit --skills both for CLI-only
installation. Existing unrelated skill directories and links are preserved.

Source installation requires Rust 1.89 or newer:

cargo install proclease --version 0.1.7 --locked

Cargo installs the CLI; the portable skill is separate. The CLI-only crate has
a docs.rs overview, README and source rather than a library API.

Compatibility and limits

The release workflow runs native checks and archive/installer smoke tests on
macOS ARM64/Intel and Ubuntu 22.04 ARM64/x64 (glibc). The macOS deployment minimum
is 15.0. Windows and Linux musl/Alpine binaries are not provided.

macOS binaries are not Developer ID signed or notarized. Both remain required
before stable promotion and deferred for this experimental prerelease.
Checksums verify bytes; they do not replace an authenticated publisher signature.

ProcLease manages only services launched through it. Descendants that create a
new process group can escape cleanup. Upgrading the CLI leaves running jobs and
watch sessions on their original executable. Restart an existing watch to use
the corrected display filter; closing watch does not stop managed jobs.
Installation itself does not restart or stop anything. Status, logs and readiness
checks never renew leases. Bulk-stop retention protection requires cooperating
clients and keepers.

Created by Jared Chu, with Codex and Claude contributions. See the README for credits.