Skip to content

The option to disconnect the site is still available in the app even if the site is disconnected already (via browser) #23458

Open

Description

@alinclamba

Disconnect a site from the browser, then access the site in the iOS app and navigate to Site Settings → Security → Manage Connection and you'll see the option to disconnect the site still available, which might be confusing.

Tested on iPhone 13, iOS 17, Jetpack iOS 25.1

Activity

  1. dangermattic commented on Jul 31, 2024

    @dangermattic
    Collaborator

    Thanks for reporting! 👍

  2. added
    [Status] Needs PlanReproducible, but the cause or the fix approach is not known yet.
    on Oct 31, 2026
  3. jkmassel commented on Oct 31, 2026

    @jkmassel
    Contributor

    Simulator test plan (goal: find root cause). Sign in using docs/simulator-sign-in.md. Build from current trunk.

    Setup: A Jetpack-connected self-hosted site, visible through the test WordPress.com account, that you're allowed to disconnect. Have a way to reconnect it afterwards. Build the Jetpack scheme (bundle ID com.automattic.jetpack replaces org.wordpress in the sign-in commands). iPhone simulator.

    1. Sign in with the WordPress.com token, select the site, and open My Site › Site Settings › Security › Manage Connection (or My Site › Jetpack Settings › Manage Connection). Screenshot it.
    2. In the browser, disconnect the site in wp-admin › Jetpack › Dashboard › Connections › Disconnect.
    3. In the app, without killing it, go back and reopen Manage Connection. Then kill and relaunch, select the site, and open it again. Then pull to refresh My Site and the site list.
    4. Tap Disconnect from WordPress.com and record what happens (success, error, or nothing).

    Pass / report: Reproduced if the disconnect option still shows after the site was disconnected. Note at which step it stops showing or the site disappears. Attach screenshots. For root cause, look at JetpackConnectionViewController.swift: tableViewModel() always builds the disconnect row and doesn't check or refresh blog.jetpack connection state. Also check whether Site Settings refreshes Jetpack state on appear (BlogFeature.jetpackSettings depends on supportsRestAPI). Suggest a fix: fetch the connection status before showing the row, and handle the "already disconnected" response. Reconnect the site afterwards.

    When you're done: post the results here. If you now have reliable steps, remove [Status] Needs Repro. If you found the cause and a fix approach, remove [Status] Needs Plan and add [Status] Ready for Dev. If a "confirm" plan didn't reproduce, say so and recommend closing. Remove Simulator Testable when you're finished.


    Generated by Claude Code

  4. added
    Simulator TestableCheckable on a simulator. Steps are in the issue body or the comment headed 'Simulator test plan'.
    on Oct 31, 2026
  5. jkmassel commented on Oct 31, 2026

    @jkmassel
    Contributor

    Repro run (2026-10-31, trunk e64c851)

    Result: Blocked: needs info ⏸

    Needs: a Jetpack-connected self-hosted site, visible to the test account, that's safe to disconnect and reconnect. A mocked API could cover the app's side of this, but not how the real server behaves. That wasn't tried.


    Generated by Claude Code

  6. added
    [Status] Needs InfoBlocked on information or access that a maintainer needs to supply.
    and removed
    Simulator TestableCheckable on a simulator. Steps are in the issue body or the comment headed 'Simulator test plan'.
    on Oct 31, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions