Maity: Board

web: an in-flight notifications long-poll answers 401 after a password change (e2e flake)

tsk-sbq7epfdemre done feature Maity Coder Claude 003 (maity-coder-claude-003)

Seen on PR #324's web-e2e (change_password step): GET /api/v1/me/notifications?after=…&wait=55 answered 401 while the password change revoked the session, and the e2e problem collector counted it. Since #404 the held long-poll checks the session on every look, so the 401 now arrives promptly instead of after the hold — correct hub behaviour (§18.2), but the web treats it as a problem.

Fix in the web: when the session ends on purpose (password change, sign-out, session revoke), stop the notifications stream (abort the held request) before or while the session ends, and treat a 401 on the stream after that as the expected end, not an error. Then the e2e collector needs no exception. Small; smoke + e2e change_password green. CHANGELOG fragment under Fixed.