People return to a useful list, move through its records and pass a bounded selection to another application. The examples connect retained arrangements with navigation context and current dataset access.
Changing a list preserves retained navigation context. The combined example checks the dependent outcome after another capability changes its source or authority. The lifecycle and regression examples revisit retained state after a later change rather than repeating individual rule rows.
A contact recipe supports a sorted view with three fixture records.
Steps
Save the view, open its middle record, inspect neighbours and select all matching records.
Expected
Navigation and selection use the view’s ordered base records and return identities rather than copied values.
Data
Use an isolated workspace, named fixture records and the caller grants described by the prerequisites.
Source
services-platform:modules/explorer/tests/e2e/explorer-views-api.e2e.spec.js#refuses a definition naming a field the dataset has not got as 400,services-platform:modules/explorer/tests/e2e/explorer-navigation-api.e2e.spec.js#answers the record’s position and the total, which is what "2 of 12" is drawn from,services-platform:modules/explorer/tests/e2e/explorer-navigation-api.e2e.spec.js#answers every matching record id, in the query’s own order
02Changing a list preserves retained navigation contextinteractionproposed
A view has a live navigation session over a retained identity window.
Steps
Change the view’s criteria in another tab, edit one retained record and navigate inside the earlier session.
Expected
The earlier session retains its stored window and return arrangement; a newly started session uses the revised view.
Data
Use an isolated workspace, named fixture records and the caller grants described by the prerequisites.
Source
services-platform:modules/explorer/tests/e2e/explorer-views-api.e2e.spec.js#refuses a stale version as 409,services-platform:modules/explorer/services/navigation/navigation-sessions.ts:locateInNavigationSession,services-platform:modules/explorer/tests/e2e/explorer-navigation-api.e2e.spec.js#answers no position for a record that is not in the frozen set, rather than refusing
03Expired navigation still returns to the listlifecycleproposed
A pinned view is referenced by an expired session and its cleanup cutoff has not passed.
Steps
Read the expired session, return to the list, then start a new session after the cleanup cutoff.
Expected
Return context remains available before cleanup; sufficiently old sessions are removed without rewriting personal view preferences.
Data
Use an isolated workspace, named fixture records and the caller grants described by the prerequisites.
Source
services-platform:modules/explorer/tests/e2e/explorer-preferences-api.e2e.spec.js#answers the whole default arrangement: whose it is, which Explorer, nothing pinned and version zero,services-platform:modules/explorer/tests/integration/services/persistence/explorer-navigation-sessions.integration.spec.js#expires twelve hours after the execution’s own clock, as ISO 8601 UTC
04Sharing a view preserves owner and dataset boundariespermissionnegativeproposed
Two colleagues can use a shared contact view but only one creates a session.
Steps
Read the view as the colleague, attempt an unauthorized change, read the other person’s session and remove dataset access before selection.
Expected
Shared discovery grants neither maintenance nor session ownership; selection fails after dataset access is withdrawn.
Data
Use an isolated workspace, named fixture records and the caller grants described by the prerequisites.
Source
services-platform:modules/explorer/tests/e2e/explorer-views-api.e2e.spec.js#answers 404, not 403, for another person’s private view,services-platform:modules/explorer/tests/e2e/explorer-views-api.e2e.spec.js#refuses sharing a view without the share permission as 403,services-platform:modules/explorer/tests/e2e/explorer-navigation-api.e2e.spec.js#answers 404, not 403, to a colleague of the same tenant,services-platform:modules/explorer/tests/e2e/explorer-navigation-api.e2e.spec.js#refuses to freeze one for a caller holding the surface key and not the dataset key, as 403
05Repeating joins cannot inflate a list populationregressionproposed