Skip to content

FAS-PFM-QRY-01Dataset access and querying: Feature Acceptance Suite

Markdown

FAS-PFM-QRY-01

Dataset access and querying: 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-01 as a whole.

01 Discover, draft and validate a usable question behaviour proposed
Exercises
CAP-PFM-QRY-001 CAP-PFM-QRY-002 CAP-PFM-QRY-003
Relies on
ATS-PFM-QRY-001-05 ATS-PFM-QRY-002-11 ATS-PFM-QRY-003-05
Preconditions
A reader can describe Contacts and request a generated draft.
Steps
Describe Contacts, request a contact draft, review its outcome and validate the returned definition.
Expected
Any returned query uses the reader’s available vocabulary and ordinary validation; clarification produces no executable query.
Data
Use an isolated workspace, named fixture records and the caller grants described by the prerequisites.
Source
services-platform:modules/queries/tests/e2e/datasets.e2e.spec.js#tells the console nothing of how a field is stored,services-platform:modules/queries/tests/e2e/saved-queries.e2e.spec.js#answers 200 and the problems for a query it will not run, rather than a refusal,services-platform:modules/queries/tests/e2e/generate-query.e2e.spec.js#answers the query the worker stored, which is the query the execute route would accept
02 Publish a tailored subject and use it through discovery interactionnegative proposed
Exercises
CAP-PFM-QRY-001 CAP-PFM-QRY-002 CAP-PFM-QRY-005
Relies on
ATS-PFM-QRY-005-07 ATS-PFM-QRY-001-02 ATS-PFM-QRY-002-01
Preconditions
A safe custom publication is assigned to one workspace but excluded from a second.
Steps
Describe the subject and run an ordered question in both workspaces, then disable the publication.
Expected
Only the assigned workspace resolves the subject; its execution stops with the explicit disabled refusal after the lifecycle change.
Data
Use an isolated workspace, named fixture records and the caller grants described by the prerequisites.
Source
services-platform:modules/queries/tests/e2e/custom-tables.e2e.spec.js#lists the definition as a dataset of its own, authorized by the dataset the statement reads,services-platform:modules/queries/tests/e2e/datasets.e2e.spec.js#refuses a dataset the caller holds no query permission for as 403,services-platform:modules/queries/tests/integration/services/execute/run-query.integration.spec.js#answers no row, pick or joined value belonging to another tenant, though the ids are the same
03 Retire and restore registered vocabulary lifecycle proposed
Exercises
CAP-PFM-QRY-001 CAP-PFM-QRY-002 CAP-PFM-QRY-005
Relies on
ATS-PFM-QRY-001-09 ATS-PFM-QRY-001-06 ATS-PFM-QRY-005-10
Preconditions
A declaration release and a tailored publication each support a current question.
Steps
Retire and restore the registered declaration, refresh its description, then deprecate and restore the tailored publication.
Expected
Descriptions follow the accepted release; retained custom questions stay usable while deprecated and new choices return after restoration.
Data
Use an isolated workspace, named fixture records and the caller grants described by the prerequisites.
Source
services-platform:modules/queries/tests/e2e/datasets.e2e.spec.js#accepts the manifest, naming the application it registered,services-platform:modules/queries/tests/integration/services/describe/description-stamp-coverage.integration.spec.js#describes a custom field the tenant adds on the very next build,services-platform:modules/queries/tests/e2e/custom-tables.e2e.spec.js#deprecates it, which takes it out of every picker and leaves it answering
04 Separate workspace readers from HQ investigators permissionnegative proposed
Exercises
CAP-PFM-QRY-001 CAP-PFM-QRY-002 CAP-PFM-QRY-004 CAP-PFM-QRY-005
Relies on
ATS-PFM-QRY-001-04 ATS-PFM-QRY-004-01 ATS-PFM-QRY-005-01
Preconditions
A workspace reader has contact access; a staff investigator has only one system-dataset grant.
Steps
Use each catalog and attempt a system-to-workspace join and a customer custom-table authoring request.
Expected
Each caller reaches only the permitted execution scope; mixed-scope joins and customer authoring are refused.
Data
Use an isolated workspace, named fixture records and the caller grants described by the prerequisites.
Source
services-platform:modules/queries/tests/e2e/dataset-effective-permissions.e2e.spec.js#refuses a role holding the dataset key without the application's access key 403, naming the key,services-platform:modules/queries/tests/e2e/system-queries.e2e.spec.js#answers every dataset as unauthorized for a caller holding the surface key alone,services-platform:modules/queries/tests/e2e/custom-tables.e2e.spec.js#refuses a tenant’s own console user every one of them, for not being staff
05 Keep dated conditions aligned with ordinary questions regression proposed
Exercises
CAP-PFM-QRY-002 CAP-PFM-QRY-020
Relies on
ATS-PFM-QRY-002-10 ATS-PFM-QRY-020-03 ATS-PFM-QRY-020-05
Preconditions
Two contacts cross an age threshold on adjacent workspace days.
Steps
Compare system predicate results with equivalent contact questions for each day and include one missing birth date.
Expected
True identities agree for each chosen day, and the absent fact keeps the selected null interpretation.
Data
Use an isolated workspace, named fixture records and the caller grants described by the prerequisites.
Source
services-platform:modules/queries/tests/integration/services/execute/run-query.integration.spec.js#reads a day as that day in the tenant's zone, not in UTC,services-platform:modules/queries/tests/integration/services/execute/compile-predicates.integration.spec.js#answers NULL for a predicate over a fact the contact does not have, when NULL means unknown,services-platform:modules/queries/tests/integration/services/execute/compile-predicates.integration.spec.js#resolves the same shift from the as-of day, so a contact eighteen today was not the day before

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.