You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: jetpack_vendor/automattic/jetpack-connection/CHANGELOG.md
+14Lines changed: 14 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,6 +5,19 @@ All notable changes to this project will be documented in this file.
5
5
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
6
6
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
8
+
## [8.10.2-alpha] - unreleased
9
+
10
+
This is an alpha version! The changes listed here are not final.
11
+
12
+
### Security
13
+
- Connection: Leave another user's broken-token error out of the connection error data, so the reconnect CTA is no longer offered against a token it cannot restore.
14
+
15
+
### Changed
16
+
- Connection: Warn a secondary admin that reconnecting on the connection owner's behalf transfers ownership and disconnects every other user.
17
+
18
+
### Fixed
19
+
- Connection: Stop displaying connection owner errors that refer to a previous owner.
20
+
8
21
## [8.10.1] - 2026-08-12
9
22
### Fixed
10
23
- Report connection errors that happen while signing an outgoing request, record the specific reason the token could not be loaded, and store the request body hash with them. [#51116]
@@ -1990,6 +2003,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1990
2003
1991
2004
- Separate the connection library into its own package.
// A viewer is only ever shown errors for: their own user connection, the
356
+
// site connection, or the connection owner. Another (non-owner) user's
357
+
// broken token is invisible to everyone else, not just non-actionable.
358
+
// `invalid_connection_owner` is exempt: when there's no current owner to
359
+
// compare against, it falls back to 'user' audience by ID alone.
360
+
if ( 'user' === $audience
361
+
&& (int) $user_id !== $viewer_id
362
+
&& 'invalid_connection_owner' !== $error_code ) {
363
+
continue;
364
+
}
365
+
346
366
$message = __( "Your connection with WordPress.com seems to be broken. If you're experiencing issues, please try reconnecting.", 'jetpack-connection' );
347
367
$action = null;
348
368
@@ -351,31 +371,43 @@ public function get_displayable_errors() {
/* translators: %s is the display name of the Jetpack connection owner. */
374
-
__( 'The connection owner (%s) needs to reconnect their WordPress.com account to restore the connection.', 'jetpack-connection' ),
375
-
$owner_name
376
-
)
377
-
: __( 'The connection owner needs to reconnect their WordPress.com account to restore the connection.', 'jetpack-connection' );
378
-
$action = 'none';
386
+
if ( ! $is_transferable ) {
387
+
// Ownership is locked (a consumer declared it non-transferable).
388
+
// This admin cannot resolve the error themselves, so surface an
389
+
// informational notice naming the owner and offer no reconnect CTA.
390
+
$message = $owner_name
391
+
? sprintf(
392
+
/* translators: %s is the display name of the Jetpack connection owner. */
393
+
__( 'The connection owner (%s) needs to reconnect their WordPress.com account to restore the connection.', 'jetpack-connection' ),
394
+
$owner_name
395
+
)
396
+
: __( 'The connection owner needs to reconnect their WordPress.com account to restore the connection.', 'jetpack-connection' );
397
+
$action = 'none';
398
+
} elseif ( $viewer_can_connect ) {
399
+
// Ownership is transferable, so the reconnect CTA stays available
400
+
// to this admin — but it is destructive in a way the generic copy
401
+
// doesn't convey. Manager::restore() branches on the *clicking*
402
+
// user's tokens, not on whose token the error describes.
403
+
$message = $owner_name
404
+
? sprintf(
405
+
/* translators: %s is the display name of the Jetpack connection owner. */
406
+
__( 'The connection owner (%s) needs to reconnect their WordPress.com account to restore the connection. If you reconnect instead, you will become the new connection owner and every other user will be disconnected from WordPress.com.', 'jetpack-connection' ),
407
+
$owner_name
408
+
)
409
+
: __( 'The connection owner needs to reconnect their WordPress.com account to restore the connection. If you reconnect instead, you will become the new connection owner and every other user will be disconnected from WordPress.com.', 'jetpack-connection' );
0 commit comments