Skip to content

Implementation/agile 417 display a loading state when the backlog frame is filtered refreshed - #25133

Open
dombesz wants to merge 3 commits into
devfrom
implementation/agile-417-display-a-loading-state-when-the-backlog-frame-is-filtered-refreshed
Open

dombesz wants to merge 3 commits into
devfrom
implementation/agile-417-display-a-loading-state-when-the-backlog-frame-is-filtered-refreshed

Conversation

@dombesz

@dombesz dombesz commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

Ticket

https://community.openproject.org/wp/AGILE-417

What are you trying to accomplish?

Display a loading screen when the backlog is being updated, either via filters, or other actions such as drag and drop.

What approach did you choose and why?

Display the loading spinner and make backlogs opaque while loading. Hook the loading state to the #backlogs_container turbo frame [busy] state.

Provide a turbo fix for back button navigation from a filter form submission. It erroneously keeps the frame's [busy] state stored. Normal Turbo.visit request are not affected by this, only form submissions. The reason is, turbo creates and stores a snapshot cache of the page navigated from, and in case a form has initiated the navigation, the snapshot is taken only after the frame is marked in progress.
In case of a Turbo.visit, the following happens: Snapshot taken -> Busy state set -> Request initiated.
In case of a form submission: Form submitted -> Busy state set -> When response arrives a dry Turbo.visit is initiated which takes the snapshot described above. When Turbo.visit takes the snapshot, the page is already in [busy] state.

Merge checklist

  • Added/updated tests
  • Added/updated documentation in Lookbook (patterns, previews, etc)
  • Tested major browsers (Chrome, Firefox, Edge, ...)

@dombesz
dombesz force-pushed the implementation/agile-417-display-a-loading-state-when-the-backlog-frame-is-filtered-refreshed branch 2 times, most recently from dbca3ad to c7d436f Compare September 4, 2026 12:26
Base automatically changed from feature/agile-219-1st-iteration-of-filters-within-the-backlog to dev September 4, 2026 12:50
@github-actions

github-actions Bot commented Sep 4, 2026

Copy link
Copy Markdown

Warning

Flaky specs

  • rspec ./modules/team_planner/spec/features/team_planner_overview_spec.rb[1:4:4:1]
🤖 Ask Copilot to investigate

Copy the prompt below into a new comment on this PR to delegate the investigation to GitHub Copilot. It will look into the flakiness and open a separate pull request with you as reviewer.

@copilot The following spec(s) are flaky in CI (first seen on PR #25133, linked for reference only):

- `rspec ./modules/team_planner/spec/features/team_planner_overview_spec.rb[1:4:4:1]`

Treat this as a standalone task, unrelated to PR #25133. Create a new branch from origin/dev and open a new pull request targeting dev — do not stack it on PR #25133 or reuse that branch.

Follow the playbook in docs/development/testing/handling-flaky-tests/README.md to find the root cause and fix the underlying race — do not skip, delete, or weaken the spec to make it pass; disabling is a last resort per the playbook, and only with a bug ticket. Verify the fix by running the spec(s) repeatedly (e.g. `script/bulk_run_rspec --run-count 10`).

If you cannot reproduce the flake or are not confident in a fix after reasonable investigation, do not fabricate a change or skip the spec to force CI green. Instead, leave the pull request in draft and document what you tried, the suspected cause, and any leads in its description, then assign @dombesz to take over.

Once the fix is verified, title the PR after the spec(s) it fixes, and use the PR description to explain the root cause, how the change resolves it, and the before/after results. Label the PR `flaky-spec`, assign @dombesz, and request a review from @dombesz.
On every commit, set @dombesz as the sole co-author with a `Co-authored-by:` trailer (use their GitHub no-reply email so it links to their account), so it is traceable who dispatched the fix.

@dombesz
dombesz force-pushed the implementation/agile-417-display-a-loading-state-when-the-backlog-frame-is-filtered-refreshed branch from c7d436f to 627b1c0 Compare September 4, 2026 13:44
@dombesz
dombesz force-pushed the implementation/agile-417-display-a-loading-state-when-the-backlog-frame-is-filtered-refreshed branch from 627b1c0 to deda065 Compare October 23, 2026 17:09
@myabc
myabc self-requested a review October 23, 2026 20:43
@dombesz
dombesz force-pushed the implementation/agile-417-display-a-loading-state-when-the-backlog-frame-is-filtered-refreshed branch from deda065 to ed53720 Compare October 26, 2026 12:07

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant