Skip to content

FAS-PFM-QRY-03Working with record lists: Feature Acceptance Suite

Markdown

FAS-PFM-QRY-03

Working with record lists: Feature Acceptance Suite

Markdown
  • DocumentProposed
  • Product intentProposed

Product areaPlatformModuleQuestions, record exploration and data deliveryRevision1

Read atservices-platform ad3f6a65react-console baf6dae3rhythm-v2-docs 99376625

Scenarios

5 scenarios proving FEAT-PFM-QRY-03 as a whole.

01 A retained view drives a bounded record review behaviour proposed
Exercises
CAP-PFM-QRY-009 CAP-PFM-QRY-010
Relies on
ATS-PFM-QRY-009-03 ATS-PFM-QRY-010-03 ATS-PFM-QRY-010-09
Preconditions
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
02 Changing a list preserves retained navigation context interaction proposed
Exercises
CAP-PFM-QRY-009 CAP-PFM-QRY-010
Relies on
ATS-PFM-QRY-009-10 ATS-PFM-QRY-010-01 ATS-PFM-QRY-010-05
Preconditions
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
03 Expired navigation still returns to the list lifecycle proposed
Exercises
CAP-PFM-QRY-009 CAP-PFM-QRY-010
Relies on
ATS-PFM-QRY-009-11 ATS-PFM-QRY-010-07
Preconditions
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
04 Sharing a view preserves owner and dataset boundaries permissionnegative proposed
Exercises
CAP-PFM-QRY-009 CAP-PFM-QRY-010
Relies on
ATS-PFM-QRY-009-05 ATS-PFM-QRY-009-06 ATS-PFM-QRY-010-04 ATS-PFM-QRY-010-10
Preconditions
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
05 Repeating joins cannot inflate a list population regression proposed
Exercises
CAP-PFM-QRY-009 CAP-PFM-QRY-010
Relies on
ATS-PFM-QRY-009-02 ATS-PFM-QRY-010-08
Preconditions
A candidate recipe repeats base contacts through a collection join.
Steps
Try saving the recipe as a view and starting navigation or selection from that anchor.
Expected
The incompatible join is identified before duplicate base identities can become list positions or bulk work.
Data
Use an isolated workspace, named fixture records and the caller grants described by the prerequisites.
Source
services-platform:modules/explorer/tests/integration/services/definitions/recipe-anchors.integration.spec.js#refuses a recipe whose joins answer a base record once per child,services-platform:docs/explorer.md#4. Navigating a result set

The Markdown files under specs/ in rhythmsoftware/rhythm-v2-docs are the canonical source of truth. This reader is a generated, read-only projection of them.