Skip to content

feat: add native lazybox dashboard - #5

Merged
keys-i merged 2 commits into
forgefrom
lazybox
Aug 19, 2026
Merged

keys-i merged 2 commits into
forgefrom
lazybox

Conversation

@keys-i

@keys-i keys-i commented Aug 16, 2026

Copy link
Copy Markdown
Owner

What changed

  • add lazybox, one native dashboard and snapshot command for Docker, Apple Container, and Slurm
  • query installed backend CLIs directly without launching or embedding the researched TUIs
  • add confirmed container/job actions, bounded combined output, a 30-second deadline, control-character filtering, and terminal restoration
  • reuse the existing Crossterm terminal session and add no dependency
  • expose the third binary in native wheels, smoke tests, benchmarks, and documentation

Part of #1. Stacked on #4; review that parent first.

Verification

  • cargo test --locked lazybox — 2 unit and 1 CLI regression tests pass on final bytes
  • cargo fmt --all --check
  • cargo clippy --all-targets --locked -- -D warnings
  • locked release build and clean-install maturin wheel smoke test
  • mock Docker process + real PTY: inventory, JSON, details, stdout/stderr logs, confirmation, refresh, clean exit/restoration
  • ShellCheck 0.11, Actionlint 1.7.12, and Zizmor 1.29 pedantic
  • Scripts launcher/dashboard self-tests with the typed Lazybox manual
  • independent fallback gatekeeper: VERDICT: PASS

Measurements

Apple M3 Pro, Darwin 25.5.0 ARM64, Rust 1.97.1, Hyperfine 1.20.0; 100 runs after 20 warmups:

Command Mean ± σ Binary
lazybox --version 1.5 ± 0.1 ms 422,384 B

The macOS ARM64 wheel is 625,260 B for fetch, games, and lazybox, metadata, project/dependency licenses, and CycloneDX SBOM. Backend latency belongs to the external CLI, so no comparative speed claim is made.

Risk and rollback

  • Docker, Apple Container, or Slurm must be installed and authenticated separately
  • Apple inventory intentionally parses its current table output to avoid a JSON dependency
  • backend calls receive null stdin, capture at most 8 MiB combined, and stop after 30 seconds
  • revert 30ef80f to remove Lazybox; this branch depends on feat: rebuild games as a native arcade #4

Review

  • Public behavior, help, failure paths, and docs are updated.
  • No research clones, upstream source/assets, secrets, or generated benchmark output are included.
  • I will follow the Code of Conduct.

@keys-i
keys-i changed the base branch from packs to forge August 19, 2026 05:36
@keys-i
keys-i marked this pull request as ready for review August 19, 2026 05:39
@keys-i
keys-i merged commit 632020c into forge Aug 19, 2026
18 checks passed
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.

1 participant