Skip to content

Show automatically selected relay in Settings - #153

Merged
torlando-tech merged 2 commits into
mainfrom
fix/ios-auto-selected-relay-display
Aug 7, 2026
Merged

Show automatically selected relay in Settings#153
torlando-tech merged 2 commits into
mainfrom
fix/ios-auto-selected-relay-display

Conversation

@torlando-tech

Copy link
Copy Markdown
Owner

Summary

  • display the live relay selection owned by PropagationNodeManager
  • update Settings immediately when relay auto-selection changes
  • add a regression contract preventing the UI from returning to a stale copied value

Root cause

Propagation sync could automatically select and use a relay while Settings continued rendering a snapshot copied into SettingsViewModel. That snapshot was not refreshed when relay discovery selected a node after the screen loaded.

Verification

  • regression observed failing before the production change and passing afterward
  • python3 -m pytest Tests/static -q
    • 244 passed, 1 skipped, 255 subtests passed
  • git diff --check

Native simulator verification is delegated to the repository CI lanes because the local Mac transfer gate blocked the committed bundle before Xcode execution.

Risk

Low. The change only replaces the stale Settings snapshot read with the existing observable propagation manager state. Relay selection, persistence, and sync behavior are unchanged.

@greptile-apps

greptile-apps Bot commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

The PR replaces Settings’ cached relay-name display with the live selection owned by PropagationNodeManager and adds a static regression contract preventing a return to the stale SettingsViewModel snapshot.

  • Reads the current relay name and styling from the observable propagation manager.
  • Adds a focused source-level test enforcing the live-state access path.

Confidence Score: 5/5

The PR appears safe to merge with no identified blocking or non-blocking issues.

Settings is presented only after AppServices initialization installs the observable propagation manager, and direct observation of selectedNodeName provides the intended live relay updates.

Important Files Changed

Filename Overview
Sources/ColumbaApp/Views/Settings/SettingsView.swift Replaces the stale SettingsViewModel relay snapshot with the observable live manager state; no actionable defect was identified.
Tests/static/test_auto_selected_relay_display.py Adds a focused regression contract requiring the Settings relay card to read PropagationNodeManager directly.

Reviews (1): Last reviewed commit: "fix: show live selected relay" | Re-trigger Greptile

@torlando-tech
torlando-tech merged commit 349a9cd into main Aug 7, 2026
6 of 7 checks passed
@torlando-tech
torlando-tech deleted the fix/ios-auto-selected-relay-display branch August 7, 2026 18:48
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