[Feature]: Graphene phone backup and restore #128
Closed
opened 2026-07-29 15:07:58 +00:00 by ssmithx
·
1 comment
No Branch/Tag Specified
main
pr/feat/first-install-owner-network-20261112
pr/demo-intro-ux-polish
docs/security-audit-2.0.3-alpha
docs/fips-compute-market-proposal
feat/routstr-fips-llama
docs/ui-uat-pr-rule
fix/routstr-xcashu-change
fix/lifecycle-lock-wait
fix/btcpay-db-password
feat/podsteadr-app
feat/qortal-app
fix/quadlet-iec-memory-limits
feat/podsteadr-app-package
arm64-pi-test
feat/nostr-vpn-seller-app
work/terminal-developer-spec-20261009
feat/justworks-integration-review
conduit-market-archyapp
fix/gitea-portainer-20260930
fix/app-install-lifecycle-20260930
fix/filebrowser-purchase-filing
fix/ecash-paid-download-v2-keyset
fix/paid-content-payment-not-lost
fix/mint-error-detail-swallowed
investigate/framework-lnd-startup
fix/minibits-already-redeemed
cuprate-fixes
feature/dojobay-app
fix/bitcoin-core-tor-service-name
docs/openwrt-gateway-setup
cuprate-cpu-fix
fix/cuprate-explicit-logging-levels
companion/session-2026-08-31
companion/0.5.28-deploy-handoff
companion/0.5.28-ship
companion/0.5.28
app-bumps-mirror-pending
cuprate-archyapp
docs/todo-list
companion/0.5.27-version-meta
companion/0.5.27-ship
companion/0.5.27-clipboard-qr-restart
ux-at-last
fix/mesh-send-content-inline-federation-fallback
cashu-error-messages
gsd/phase-13-aiui-functional-conversational-node-control-and-content-surf
rotate-release-root
chore/aiui-monorepo-migration
wip/phase-13-p13-02
wip/phase-13-p13-01
fix/bitcoin-conf-conflict-crash-loop
demo-build
archy-hwconfig
openwrt-enhancements
a3-10-endpoint-fallback
public-prelaunch
release/1.7.115-prep
fix/web-listener-ipv6
fips-companion-5g-hardening
fix/connection-accept-deadlock
fix/demo-images-path-filter
fix/companion-autologin-replay-intro
networking-profits-dashboard
identities-mobile-polish
companion-qr-scan-fix
companion-qr-pairing
intro-reliability-video-perf
login-bg-continuity
audio-bottom-bar
demo-intro-every-visit
intro-entrance-fixes
cloud-feedback-demo-content
cloud-tabs-search
ark-wallet-ui-demo
demo-nginx-app-assets
demo-ui-fixes
ark-wallet-barkd
v2.1.21
v2.1.2-beta
v1.9.1-alpha
v1.9.0-alpha
Labels
Clear labels
companion-agent
queued
roadmap
waiting-external
Companion-app agent's handover list (node-side parts tracked separately)
Triaged, next in this session's queue after current release work
Feature/effort item, deliberately unscheduled — needs scoping + a slot, not a fix today
Waiting on a person outside this session (tester, operator)
No labels
companion-agent
Milestone
No items
No Milestone
Projects
Clear projects
No projects
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: lfg2025/archy#128
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Problem
Losing your phone and restoring it.
Wiping your phone to cross a border
Proposed Solution
Maybe part of the companion app or passport prime combo
Alternatives Considered
No response
Area
Other
Companion side shipped (branch
companion/0.5.28, APK 0.5.28/vc48 — in on-device testing, ships with the release).Phone side of "losing your phone / wiping it to cross a border":
.jsonthe user saves wherever they choose (GrapheneOS: no cloud, and none here either).core/archipelago/src/backup/identity.rs— node-shaped envelopes (did/pubkey/kid fields) decrypt there and back.Code:
Android/rust/archy-fips-core/src/backup.rs(+NativeCoreJNI),data/BackupManager.kt,ui/components/BackupSection.kt. Tests: hostcargo test(round-trip, wrong passphrase, tampered blob, node-shape envelope, salt/nonce freshness). Doc:docs/companion-backup-restore.md.Node-side storage/quota/scheduling deliberately out of scope per the 2026-08-30 triage — the envelope is a drop-in for the node's existing backup RPCs when that lands.