github akitaonrails/ai-jail v3.4.1

one hour ago

v3.4.1

Three fixes: the terminal gets its mouse mode back when a full-screen program
closes, NixOS builders can run the launch suites, and a flaky probe no longer
fails SSH setup.

Backward compatible: no configuration key, CLI flag, or saved policy changes.

Fixed

  • Leaving the alternate screen now clears the modes the program turned off
    (#237).
    ai-jail repaints the outer terminal on an alternate-screen
    transition, and vt100's state_formatted writes input modes as changes from
    the terminal defaults. A mode the program switched off in the same chunk as
    ?1049l therefore emitted nothing, so a picker that enabled mouse tracking
    (omp's /model: ?1000h ?1003h ?1006h ?1049h, close with ?1006l ?1003l ?1000l ?1049l) left the terminal reporting the mouse and the wheel stopped
    scrolling the scrollback. The transition now rebuilds the contents and emits
    the input-mode diff against the screen the outer terminal is showing, so
    every changed mode, including the resets, reaches it. Bracketed paste,
    application cursor, and application keypad use the same diff.

  • The launch suites run on NixOS builders (#236, #235). Three groups of
    tests assumed Ubuntu's environment: the audit suite inherited a symlinked
    HOME through XDG_CONFIG_HOME, two worktree launches hard-coded
    /usr/bin/true, and sandbox_escape needed a writable home that the Nix
    builder's /homeless-shelter is not. The flake now supplies the standard
    writable-temp-home hook to nativeCheckInputs, the audit suite sets its own
    XDG_CONFIG_HOME, and the launches resolve true through PATH. No symlink
    check or test was relaxed. Thanks @pqitr.

  • The ssh-add capability probe retries a busy executable. With the Nix
    build now reaching the launch suites, the probe intermittently failed with
    ETXTBSY: another thread's fork can hold a freshly written fixture open for
    writing at the moment the probe execs it. The probe retries briefly instead
    of failing launch setup, with a test that holds a writer open across it.

Notes

  • New coverage: the alternate-screen input-mode reset (fails on the previous
    renderer), and the busy-executable retry path.
  • CI's nix job now exercises the launch suites it previously skipped, so the
    NixOS coverage is real rather than nominal.

See the security model for the terminal-output boundary
these fixes sit behind.

Checksums (SHA256)

b4f02b2c414e5228e2ecebf2a65eb8493fb0ec678db68dfe795e0a1e6b5874dc  ai-jail-linux-x86_64.tar.gz
92ca6ac800edabe5d7bc1adda024c1b1a26299b4612c2e51da9b6e662b804ee6  ai-jail-macos-aarch64.tar.gz
d569b5a8cc113cd837fe666d5012c72aacaf6370a13cf1da3178a83dc9114791  ai-jail_3.4.1_amd64.deb

Install

brew tap akitaonrails/tap && brew install ai-jail
yay -S ai-jail-bin
cargo install --locked ai-jail
# Debian/Ubuntu: download the .deb below, then
sudo apt install ./ai-jail_*_amd64.deb

Don't miss a new ai-jail release

NewReleases is sending notifications on new releases.