| @@ -270,8 +270,20 @@ | ||
| 270 | 270 | 'args' => 0, |
| 271 | 271 | 'reason' => 'Append after lifecycle; REST priority 999 reports the final response status, gated by consent (#1811).', |
| 272 | 272 | 'phase' => 'post-latch', |
| 273 | 273 | ), |
| 274 | + array( | |
| 275 | + 'hook' => null, | |
| 276 | + 'callback' => static function (): void { | |
| 277 | + add_action( 'wp_logout', array( Services\Auth::class, 'revoke_web_session_on_logout' ), 10, 1 ); | |
| 278 | + add_action( 'password_reset', array( Services\Auth::class, 'revoke_sessions_on_password_reset' ), 10, 1 ); | |
| 279 | + add_action( 'profile_update', array( Services\Auth::class, 'revoke_sessions_on_password_change' ), 10, 2 ); | |
| 280 | + }, | |
| 281 | + 'priority' => 10, | |
| 282 | + 'args' => 0, | |
| 283 | + 'reason' => 'Default 10; logout ends this browser\'s web POS session, a password reset or change ends every POS session. Auth is built only when one fires.', | |
| 284 | + 'phase' => 'post-latch', | |
| 285 | + ), | |
| 274 | 286 | ); |
| 275 | 287 | |
| 276 | 288 | return array_values( |
| 277 | 289 | array_filter( |