[PER-10680] Migrate from navigateLean to getWithChildren for refresh current folder - #1169
Open
aasandei-vsp wants to merge 9 commits into
Conversation
aasandei-vsp
marked this pull request as draft
September 10, 2026 11:46
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## PER-10678-replace-navigate-lean-filesystem #1169 +/- ##
==============================================================================
+ Coverage 53.41% 53.85% +0.43%
==============================================================================
Files 363 364 +1
Lines 12747 12765 +18
Branches 2319 2327 +8
==============================================================================
+ Hits 6809 6874 +65
+ Misses 5701 5650 -51
- Partials 237 241 +4 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
aasandei-vsp
marked this pull request as ready for review
September 10, 2026 12:33
aasandei-vsp
force-pushed
the
PER-10678-replace-navigate-lean-filesystem
branch
from
September 17, 2026 15:06
7b92066 to
76092ef
Compare
aasandei-vsp
force-pushed
the
PER-10680-migrate-navigate-lean-refresh-current-folder
branch
from
September 17, 2026 15:25
553df48 to
5e1322c
Compare
In the new converter from stela records/folders, when the items were coming as children of a folder, they would be separated into folders and records for mapping, so the sort order the backend sent was lost. We do not do any kind of sorting on the FE, so this actually fixes the scrambled sort issue we were having before. Issue: PER-10678
The folder resolver's catch block would expect a FolderResponse type of error, which we are trying to move away from. So instead of converting the stela error to a FolderResponse, we will just make the expected error type more generic. Issue: PER-10678
The fileSystem service, that is used by the folder resolver has quite a wide reach, so this will instantly replace a lot of the navigateLean calls from route level. Issue: PER-10678
Folder resolve is already using getWithChildren and it serves the same data the lean folder resolve did, so keeping it became redundant. Issue: PER-10678
Stela sends the real sharers hierarchy of folders, so when we build the breadcrumbs, the root will be set as Private instead of Shares. In order to bypass that, we'll check if the route we are is shared and show the correct route. Issue: PER-10678
In the publish dialog, the title was decided by a property from the folder or record, so if that property would ever be undefined, the dialog would crash. Moved the property check in the component instead of the view and also check if the item includes a type, which is a stela property. Issue: PER-10678
aasandei-vsp
force-pushed
the
PER-10678-replace-navigate-lean-filesystem
branch
from
September 18, 2026 09:31
76092ef to
9c94752
Compare
The data service is the core of refetch for all actions that happen on records and folders.(copy, delete, upload, create) While changing the endpoint, the way sorting happens also changes, so we had to create a small sort helper that will preserve the sorting for newly created folder, so there is no scrambling effect anymore when we delete a record/folder.(PER-10682) PER-10680
If a folder creation would fail, the catch block would expect the error message in the old format, but stela is sending a more raw HTTP error message style, so we will make the error type more generic and extract the error message from it. Issue: PER-10680
All the usages of the navigateLean in the codebase have been sequencially removed, so there is no more need to keep this method. Issue: PER-10680
aasandei-vsp
force-pushed
the
PER-10680-migrate-navigate-lean-refresh-current-folder
branch
from
September 18, 2026 09:37
5e1322c to
57f1dd3
Compare
aasandei-vsp
force-pushed
the
PER-10678-replace-navigate-lean-filesystem
branch
from
September 21, 2026 08:11
9c94752 to
e5436f2
Compare
cecilia-donnelly
removed their request for review
September 22, 2026 18:37
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Manual test cases — current folder refresh moved from navigateLean to getWithChildren, sort preview in the browser
Setup: Sign in as the owner of an archive with a folder that mixes records and
sub-folders. You also need a second account with a folder
shared to it as Viewer.
Sort preview ⭐
(run in both the multi-column list header and the single-column
Sorted by …menuon a narrow window — same code path, two entry points)
Scenario — name
Scenario — date
Scenario — type
rows are A–Z by name.
Scenario — save and reload
Scenario — viewer can preview but not save
Refresh after a change ⭐
(this is critical change of this PR — every path that calls the refresh)
Scenario — new folder
Folder <name> has been created. The new row appears in itssorted position.
Scenario — upload
Scenario — delete
Scenario — move and copy --------CHECK ON DEV
moved successfully; the row leaves the list afterthe short delay.
copied successfully.A change while a preview is active ⭐
Aachen.Aachenappears at the bottom. The headerstill shows the descending indicator and Save is still offered.
Zzz.jpg.Error handling
Scenario — create fails or the refresh after it fails
the name
Offline test.not
Offline testwas created before the connection dropped.Regression — untouched paths
Cheap sanity checks; these code paths were traced as unchanged by this PR.