Skip to content

fix(Action): await navigation and handle router rejections#4586

Open
solracsf wants to merge 5 commits intomasterfrom
hardenNavigation
Open

fix(Action): await navigation and handle router rejections#4586
solracsf wants to merge 5 commits intomasterfrom
hardenNavigation

Conversation

@solracsf
Copy link
Copy Markdown
Member

@solracsf solracsf commented Apr 21, 2026

PR #4524 added fileid to the route params but left two async-contract bugs in the action itself: goToRoute wasn't awaited, and exec returned null (falsy, reported as failed to the v4 FileAction executor).

This PR awaits the navigation and returns true on success. Without this, the stale-route failure path in #4499 remains observable on the top-level team-folder click path even once the server-side router fix ships.

Adds two E2E smoke cases asserting the observable behavior of clicking a team folder from the Team folders view.

Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
@solracsf solracsf requested a review from susnux April 21, 2026 08:39
@solracsf
Copy link
Copy Markdown
Member Author

/backport to stable33

Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
Comment thread src/actions/openGroupfolderAction.ts Outdated
// real failures from the user's perspective — the target view is reached.
const name = (e as { name?: string })?.name
const message = (e as { message?: string })?.message ?? ''
if (name === 'NavigationDuplicated' || /Redirected/.test(message)) {
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Those should already be handled by file router in server (if not fixed there)

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

NavigationDuplicated is handled at the server router layer (so my original catch for it was redundant), but Redirected is not handled anywhere, it bubbles as an uncaught promise rejection from every goToRoute call in every app. Neverthless, it should be handled there too.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants