Skip to content

fix staged tailscale installs#50

Merged
peters merged 5 commits intomainfrom
codex/fix-stage-transfer-reuse
Apr 9, 2026
Merged

fix staged tailscale installs#50
peters merged 5 commits intomainfrom
codex/fix-stage-transfer-reuse

Conversation

@peters
Copy link
Copy Markdown
Contributor

@peters peters commented Apr 9, 2026

What changed

  • persist bundled offline payloads into .surge-cache during surge setup --stage
  • prefer remote app-copy when offline tailscale staging should reduce the next transfer, and check for a matching pre-staged payload before downloading anything locally
  • avoid published installers for --stage so remote stage mode always runs a stage-capable surge binary
  • replace the new positional stage bool with typed install/stage options and update the affected tests

Why

The previous --stage patch added the flag but left two runtime gaps:

  • offline installers only resolved the bundled payload from the extracted installer tempdir, so setup --stage did not leave anything reusable behind once the installer process exited
  • remote stage mode could hand --stage to an older published installer whose embedded surge binary did not know that flag, and offline/tailscale staging could still miss the low-transfer activation path on the next install

Impact

  • surge setup --stage now produces a durable staged cache entry for offline installers
  • surge install --stage --node ... now stages remote tailscale installs in a way the next install can reuse with minimal transfer, especially for offline payloads and persistent-asset updates
  • stage mode no longer depends on legacy published installers accepting the new flag

Validation

  • ./scripts/sync-surge-core-vendor.sh --check
  • ./scripts/check-version-sync.sh
  • cargo fmt --all -- --check
  • RUSTFLAGS="-D warnings" cargo test --workspace
  • cargo clippy --all-targets --all-features -- -D warnings
  • cargo clippy --workspace --lib --bins --examples -- -D warnings -D clippy::unwrap_used -D clippy::expect_used
  • cargo clippy --workspace --all-targets --all-features -- -D warnings -W clippy::pedantic
  • dotnet format dotnet/Surge.slnx --verify-no-changes
  • dotnet test dotnet/Surge.slnx --configuration Release

@peters peters changed the title [codex] fix staged tailscale installs fix staged tailscale installs Apr 9, 2026
@peters peters marked this pull request as ready for review April 9, 2026 09:11
@peters peters merged commit 33d4ebe into main Apr 9, 2026
11 checks passed
@peters peters deleted the codex/fix-stage-transfer-reuse branch April 9, 2026 10:24
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