Skip to content

Master update - #3577

Open
GuillaumeDSM wants to merge 56 commits into
masterfrom
dev
Open

Master update#3577
GuillaumeDSM wants to merge 56 commits into
masterfrom
dev

Conversation

@GuillaumeDSM

Copy link
Copy Markdown
Member

No description provided.

Herklos and others added 30 commits July 20, 2026 20:57
…proxy

Sync request signatures bind to the Host header; a proxy like tailscale
serve rewrites it before it reaches uvicorn, so every sync pull/push
failed with "bad request signature" while unsigned /api/v1 routes kept
working. Add HostNormalizeMiddleware to force the reconstructed host to
match what the client signed, and persist that external host as a
config.json-backed node-api service setting (env var NODE_EXTERNAL_HOST
takes precedence), editable from a new Sync host card on /app/settings.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
…mponents

Merges node type and sync host into a single "Node configuration" card,
reworks the Support card into a "Help" card with Guides/Support/Developer
sections, relocates the stop-node and log-out actions into a shared
CardCornerButton, and switches wallet/encryption-key layouts to a denser
grid. Splits the 1350+ line settings.tsx into per-card components under
components/Settings/ to keep files small and focused.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
WalletAlreadyExistsError subclasses WalletError, so the create-wallet
route returned 422 and the web UI showed a generic "Validation Error"
that hid the real cause. Catch it first and return 409 Conflict (as
setup/init already does), and have the Add wallet dialog map 409 to a
clear "This wallet is already imported." message instead of the raw
SDK status text.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
GuillaumeDSM and others added 21 commits July 23, 2026 13:19
…e pairing QR

The "Pair mobile device" QR (settings and setup wizard) embedded
window.location.origin, ignoring the node-external-host setting added for
reverse-proxy deployments (e.g. tailscale serve). A device pairing over a
proxy got an unreachable/wrong URL baked into its QR.

- PairDeviceDialog.tsx, setup/mobile-app.tsx: fetch node config and prefer
  external_host over window.location.origin when set.
- setup/mobile-app.tsx: added the missing empty-credential guard
  (PairDeviceDialog already had it) so an inactive wallet session doesn't
  silently render a QR with an empty passphrase.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@GuillaumeDSM GuillaumeDSM self-assigned this Jul 28, 2026
@GuillaumeDSM
GuillaumeDSM requested a review from Herklos as a code owner July 28, 2026 14:25
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.

2 participants