Skip to content

Staging - #275

Merged
andrewsg3 merged 4 commits into
mainfrom
staging
Aug 13, 2026
Merged

Staging#275
andrewsg3 merged 4 commits into
mainfrom
staging

Conversation

@andrewsg3

Copy link
Copy Markdown
Collaborator

No description provided.

andrewsg3 and others added 4 commits August 13, 2026 10:20
Defines v1.0 as safe-for-closed-LAN-use rather than fully hardened,
scoping in the remaining diagnosed correctness bugs and the
severity-regardless-of-network security items, and explicitly
deferring the larger structural refactors and transport-layer
hardening to post-1.0.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
progress() previously drew a whiptail --infobox per step throughout
run_configuration()/run_clone_fix(). On terminals with smcup/rmcup
support (virtually every SSH client), each infobox flashes onto the
alternate screen and back off the instant it exits, since infoboxes
don't wait for input. Between calls -- especially during multi-minute
silent steps like npm install/apt-get install -- the primary screen
just shows whatever was there before the flow started (blank, since
configure_device() clears it beforehand), which reads as the whole TUI
having vanished for the length of the run, over SSH specifically.

It also meant apply_from_config() (the boot-time, fully headless path
via saviour-provision.service) called whiptail with no controlling
terminal at all, which fails immediately and, under run_configuration's
set -e, would abort the entire boot-time provisioning run on the very
first progress() call.

progress() now just prints plain status lines -- unconditionally safe
whether or not there's a tty, and nothing to flash since it never
touches terminal modes.

Also fixes a latent bug found while touching this: run_configuration()
never called `set +e` at the end (unlike run_clone_fix(), which
already does), so set -e -- a global shell option, not function-scoped
-- stayed enabled for the rest of the script after a successful run.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
docs: add v1.0 milestone scope to CLAUDE.md
@andrewsg3
andrewsg3 merged commit f459a5e into main Aug 13, 2026
10 checks passed
@codecov

codecov Bot commented Aug 13, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

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