Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Logout leaves databrowser blank/stale until manual reload

Đang mở
#627 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
48/100
Loại issue
Lỗi
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Ít trao đổi
Công nghệ
javascript
Lĩnh vực
authentication, frontend

Hướng nghiên cứu

Không có tệp hoặc bài kiểm thử cụ thể nào được nêu. Hãy bắt đầu bằng cách xác định các handler login, logout và sessionRestore của authSession, cùng với đường dẫn bootstrap hiện tại của databrowser hoặc đường dẫn render URL-subject trong solid-panes/mashlib; xác minh các chuyển tiếp khi hosting theo kiểu JSS và Pivot mà không yêu cầu tải lại thủ công.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

Summary

After logout, the databrowser UI can end up blank or stale and does not reliably recover until a manual browser reload. This appears to be a client lifecycle issue in the current solid-panes/mashlib integration, not a server-specific auth failure.

Expected behavior

On logout (and similarly login / sessionRestore), the client should consistently re-render from current URL state without requiring a manual reload.

Actual behavior

Header/auth state updates, but the main databrowser view is not always reinitialized/rerendered. In practice, users sometimes need F5 to get the normal outline/dashboard view back.

Environment / observed on

  • mashlib: 2.2.0
  • Server tested: JavaScriptSolidServer (JSS) with mashlib CDN mode
  • Also compared with Pivot server behavior (different hosting model, static assets), which may mask this by effectively reloading/reinitializing in its flow.

Why this seems client-side

Current flows react to auth events (header/dashboard updates), but there is no guaranteed “auth transition -> rerender current subject” path equivalent to a full databrowser bootstrap.

Symptoms suggest:

  • logout triggers partial UI updates (header/menu/dashboard close),
  • but not a deterministic re-render/init of main subject view.

Proposal

Create a single auth-transition handler in client code (solid-panes/mashlib) used for:

  • authSession.events.on('login', ...)
  • authSession.events.on('logout', ...)
  • authSession.events.on('sessionRestore', ...)

Handler should:

  1. await authn.checkUser()
  2. reset/close transient UI state (dashboard/menu if needed)
  3. re-render current URL subject (or re-run equivalent of initial databrowser render path)
  4. avoid requiring page reload

Acceptance criteria

  1. Logout does not require manual browser reload to restore a usable databrowser view.
  2. Login/sessionRestore behave consistently with logout transition handling.
  3. Works across hosting styles:
    • static databrowser asset hosting (e.g., Pivot)
    • server-generated databrowser HTML wrappers (e.g., JSS)

Notes

As a temporary server-side mitigation, forcing location.reload() on logout works, but this should not be the long-term fix. The robust fix should live in the client lifecycle so behavior is server-agnostic.

Ngôn ngữ chính
HTML
Star
106
Fork
52
Merge trung bình
6 giờ 50 phút
Pull request đã merge (30 ngày)
3

Chuẩn bị môi trường

Dự án này không cung cấp dev container, Dockerfile hay hướng dẫn đóng góp, nên bạn cần tự thiết lập môi trường: hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của SolidOS/solid-panes

Tất cả issue của SolidOS/solid-panes

Issue tương tự

Thêm issue về Security

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.