fix(relay): restore one-click deployment fallback and release integrity - #2894
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Restore one-click Relay deployment when the current OpenBitFun stable image is not yet published. Missing/unreachable release artifacts or exhausted image pull/start attempts now fall back to a native Docker source build. Do not accept the retired image repository; invalid signed metadata remains an error after checking both origins.
Type and Areas
Bug fix; Relay deployment, Rust SSH services, Web UI, release workflows, mirror synchronization.
Motivation / Impact
Verification
cargo test --locked -p openbitfun-services-integrations --no-default-features --features remote-ssh-concrete --lib remote_ssh::relay_deploy::tests::— 32 passed, including signed-metadata failover and sudo refresh lifetime.node --test scripts/relay/*.test.mjs scripts/linux-binaries-manifest.test.mjs scripts/tauri-release-manifest.test.mjs— passed; covers real local Git fetch with simulated Docker failures, cancellation, restoration and release version selection.pnpm run check:github-config,pnpm run check:web,pnpm run i18n:audit,pnpm run check:core-boundaries,pnpm run check:repo-hygiene,git diff --check— passed locally.Reviewer Notes
AI-assisted; tested locally with HTTP/Git and Docker-command fixtures. No actual VPS/SSH or source Docker build was run (local Docker daemon unavailable). Mobile remote control, Peer Device Mode and Detached Dispatch were not exercised. No persisted or wire DTO shape changes. Source fallback follows current canonical main and can take substantially longer than pulling an image.
Checklist