Skip to content

Improve async loading states for list pages#440

Merged
shanselman merged 1 commit into
masterfrom
shanselman/async-loading-ux
May 18, 2026
Merged

Improve async loading states for list pages#440
shanselman merged 1 commit into
masterfrom
shanselman/async-loading-ux

Conversation

@shanselman
Copy link
Copy Markdown
Contributor

Summary

  • add a small shared AsyncListLoadingState for first-load, stale-while-refresh, loaded-empty, and refresh-failed list states
  • wire Sessions, Cron, Usage, and Bindings to show explicit loading placeholders instead of flashing empty states on slow gateway responses
  • keep safe stale content visible during refresh while disabling unsafe edits/actions, and route disconnected states to Connection settings instead of silently no-oping
  • guard Usage daily-cost updates against stale period responses and older same-period payloads

Validation

  • ./build.ps1
  • dotnet test ./tests/OpenClaw.Shared.Tests/OpenClaw.Shared.Tests.csproj (seeded fresh worktree test build)
  • dotnet test ./tests/OpenClaw.Tray.Tests/OpenClaw.Tray.Tests.csproj (seeded fresh worktree test build)
  • dotnet test ./tests/OpenClaw.Shared.Tests/OpenClaw.Shared.Tests.csproj --no-restore
  • dotnet test ./tests/OpenClaw.Tray.Tests/OpenClaw.Tray.Tests.csproj --no-restore

Add a shared list loading state helper and wire Sessions, Cron, Usage, and Bindings so initial loads show progress, refreshes keep stale data visible, unsafe edits are disabled while data is refreshing, and disconnected states route users to Connection settings.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@shanselman shanselman merged commit 1fe8e52 into master May 18, 2026
23 checks passed
@shanselman shanselman deleted the shanselman/async-loading-ux branch May 18, 2026 06:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant