---
id: ATS-PFM-QRY-011
scope: CAP-PFM-QRY-011
product_area: platform
module: queries
revision: 2
status: proposed
approved_by: null
approved_at: null
source_sha:
  services-platform: ad3f6a6582843008ed0f5a17b131878d15829af1
  react-console: baf6dae382d6f41dce976c7f848667ccc37e076f
  rhythm-v2-docs: 99376625d3e7ac26936413cfc31a88fba6562464
scenarios:
  - id: ATS-PFM-QRY-011-01
    title: Audience refusal conceals report existence
    level: api
    proves:
      - BR-CAP-PFM-QRY-011-01
      - INV-DOM-PFM-QRY-003-01
    preconditions: 'Private, selected-role and organization reports exist.'
    steps: Read and list as an unrelated colleague and a report manager.
    expected: The colleague sees only allowed audiences; the manager reaches the reports and other lookups return 404.
    negative: true
    data_needs: Use the existing binding’s controlled fixture data.
    bound_to:
      - >-
        services-platform:modules/queries/tests/e2e/reports.e2e.spec.js#answers a colleague’s read of a
        private report as 404, exactly as an id nobody holds
      - >-
        services-platform:modules/queries/tests/e2e/reports.e2e.spec.js#answers 200 with the reports the
        caller may see, never a colleague’s private one
      - >-
        services-platform:modules/queries/tests/e2e/reports.e2e.spec.js#answers a manager every report, a
        colleague’s private one included
      - >-
        services-platform:modules/queries/tests/integration/services/reports/report-library.integration.spec.js#answers
        a role-shared report naming none of the colleague’s roles as not found
      - TST-PFM-QRY-233
      - TST-PFM-QRY-335
    provenance: test
    source: >-
      services-platform:modules/queries/tests/e2e/reports.e2e.spec.js#answers a colleague’s read of a private
      report as 404, exactly as an id nobody holds
    category: permission
    binding_note: >-
      The cited suites contribute separate assertions. The complete combined example is not a single
      executable journey.
  - id: ATS-PFM-QRY-011-02
    title: Read Only report access excludes write operations
    level: api
    proves:
      - BR-CAP-PFM-QRY-011-02
    preconditions: A Read Only user can see a shared report.
    steps: 'List and open it, then attempt creation, copying, replacement, removal and export.'
    expected: Reads work without editing powers and attempted writes return 403.
    negative: true
    data_needs: Use the existing binding’s controlled fixture data.
    bound_to:
      - 'services-platform:modules/queries/tests/e2e/read-tier.e2e.spec.js#lists the organization’s report'
      - >-
        services-platform:modules/queries/tests/e2e/read-tier.e2e.spec.js#opens the organization’s report,
        which it may not edit, delete or share
      - >-
        services-platform:modules/queries/tests/e2e/read-tier.e2e.spec.js#is refused creating a report, which
        includes copying one, with 403
      - >-
        services-platform:modules/queries/tests/e2e/read-tier.e2e.spec.js#is refused replacing a report with
        403
      - >-
        services-platform:modules/queries/tests/e2e/read-tier.e2e.spec.js#is refused deleting a report with
        403
      - >-
        react-console:acceptance/reporting/playwright/journeys/catalog-and-sharing/RPT-ACC-0005.spec.ts#RPT-ACC-0005
      - TST-PFM-QRY-231
      - TST-PFM-QRY-050
    provenance: test
    source: 'services-platform:modules/queries/tests/e2e/read-tier.e2e.spec.js#lists the organization’s report'
    category: permission
    binding_note: >-
      The cited suites contribute separate assertions. The complete combined example is not a single
      executable journey.
  - id: ATS-PFM-QRY-011-03
    title: Base-dataset denial removes report discovery
    level: api
    proves:
      - BR-CAP-PFM-QRY-011-03
    preconditions: A shared report depends on a base dataset denied to the reader.
    steps: List and open the report as that reader.
    expected: The entry is omitted and direct opening returns 404.
    negative: true
    data_needs: Use the existing binding’s controlled fixture data.
    bound_to:
      - >-
        services-platform:modules/queries/tests/e2e/read-tier.e2e.spec.js#is not shown the report in the
        catalog
      - 'services-platform:modules/queries/tests/e2e/read-tier.e2e.spec.js#is answered 404 for the report by id'
      - >-
        react-console:acceptance/reporting/playwright/journeys/classic-subledger/RPT-ACC-0154.spec.ts#RPT-ACC-0154
      - TST-PFM-QRY-231
      - TST-PFM-QRY-074
    provenance: test
    source: 'services-platform:modules/queries/tests/e2e/read-tier.e2e.spec.js#is not shown the report in the catalog'
    category: permission
    binding_note: >-
      The cited suites contribute separate assertions. The complete combined example is not a single
      executable journey.
  - id: ATS-PFM-QRY-011-04
    title: Source audiences constrain report sharing
    level: api
    proves:
      - BR-CAP-PFM-QRY-011-04
      - INV-DOM-PFM-QRY-003-02
    preconditions: A source question is private.
    steps: Create a wider report and widen an existing report over it.
    expected: Both attempts conflict and identify the narrower source.
    negative: true
    data_needs: Use the existing binding’s controlled fixture data.
    bound_to:
      - >-
        services-platform:modules/queries/tests/e2e/reports.e2e.spec.js#refuses a report shared wider than its
        saved query as 409 ReportSharedWiderThanQuery, naming the query
      - >-
        services-platform:modules/queries/tests/e2e/reports.e2e.spec.js#refuses widening a report beyond its
        saved query as 409 ReportSharedWiderThanQuery
      - 'react-console:acceptance/reporting/playwright/journeys/adversarial/RPT-ACC-0490.spec.ts#RPT-ACC-0490'
      - TST-PFM-QRY-233
      - TST-PFM-QRY-023
    provenance: test
    source: >-
      services-platform:modules/queries/tests/e2e/reports.e2e.spec.js#refuses a report shared wider than its
      saved query as 409 ReportSharedWiderThanQuery, naming the query
    category: interaction
    binding_note: >-
      The cited suites contribute separate assertions. The complete combined example is not a single
      executable journey.
  - id: ATS-PFM-QRY-011-05
    title: Ownership and share authority govern report changes
    level: api
    proves:
      - BR-CAP-PFM-QRY-011-05
    preconditions: A report belongs to another user and its owner lacks share permission.
    steps: Edit as the colleague and widen sharing as the owner.
    expected: Both writes return 403.
    negative: true
    data_needs: Use the existing binding’s controlled fixture data.
    bound_to:
      - >-
        services-platform:modules/queries/tests/e2e/reports.e2e.spec.js#refuses a colleague’s edit of an
        organization report as 403
      - >-
        services-platform:modules/queries/tests/e2e/reports.e2e.spec.js#refuses sharing without
        platform.reports.share as 403
      - >-
        services-platform:modules/queries/tests/unit/services/reports/report-access.spec.ts#lets the owner
        edit, delete and copy their report, but not share it without platform.reports.share
      - TST-PFM-QRY-233
      - TST-PFM-QRY-411
    provenance: test
    source: >-
      services-platform:modules/queries/tests/e2e/reports.e2e.spec.js#refuses a colleague’s edit of an
      organization report as 403
    category: permission
    binding_note: >-
      The cited suites contribute separate assertions. The complete combined example is not a single
      executable journey.
  - id: ATS-PFM-QRY-011-06
    title: Support staff receive report-management powers
    level: unit
    proves:
      - BR-CAP-PFM-QRY-011-06
    preconditions: A staff context holds a workspace grant for another owner’s private report.
    steps: Evaluate its read and maintenance powers.
    expected: The staff context can inspect and maintain the report.
    negative: false
    data_needs: Use the existing binding’s controlled fixture data.
    bound_to:
      - >-
        services-platform:modules/queries/tests/unit/services/reports/report-access.spec.ts#shows a
        colleague’s private report to staff holding no report key but the route’s
      - >-
        services-platform:modules/queries/tests/unit/services/reports/report-access.spec.ts#gives staff every
        write power over a colleague’s private report, as a manager has
      - >-
        react-console:acceptance/reporting/playwright/journeys/catalog-and-sharing/RPT-ACC-0023.spec.ts#RPT-ACC-0023
      - TST-PFM-QRY-411
      - TST-PFM-QRY-068
    provenance: test
    source: >-
      services-platform:modules/queries/tests/unit/services/reports/report-access.spec.ts#shows a colleague’s
      private report to staff holding no report key but the route’s
    category: permission
    binding_note: >-
      The cited suites contribute separate assertions. The complete combined example is not a single
      executable journey.
  - id: ATS-PFM-QRY-011-07
    title: Permitted copying creates caller-private work
    level: api
    proves:
      - BR-CAP-PFM-QRY-011-07
    preconditions: A report-use holder can see an organization report.
    steps: Create a copy using that caller.
    expected: The copy belongs to the caller and remains private.
    negative: false
    data_needs: Use the existing binding’s controlled fixture data.
    bound_to:
      - >-
        services-platform:modules/queries/tests/unit/services/reports/report-access.spec.ts#lets a colleague
        who can see a shared report copy it and nothing else
      - >-
        services-platform:modules/queries/tests/integration/services/reports/report-library.integration.spec.js#lets
        a colleague copy an organization report it can see, the copy its own and private
      - TST-PFM-QRY-411
      - TST-PFM-QRY-335
    provenance: test
    source: >-
      services-platform:modules/queries/tests/unit/services/reports/report-access.spec.ts#lets a colleague who
      can see a shared report copy it and nothing else
    category: rule
    binding_note: >-
      The cited suites contribute separate assertions. The complete combined example is not a single
      executable journey.
  - id: ATS-PFM-QRY-011-08
    title: Report creation requires a visible source
    level: api
    proves:
      - BR-CAP-PFM-QRY-011-08
    preconditions: A colleague owns a private saved question.
    steps: Create a report using that source.
    expected: The response returns 400 locating the unavailable source.
    negative: true
    data_needs: Use the existing binding’s controlled fixture data.
    bound_to:
      - >-
        services-platform:modules/queries/tests/e2e/reports.e2e.spec.js#refuses a saved query the caller may
        not see as 400 naming saved_query_id
      - TST-PFM-QRY-233
    provenance: test
    source: >-
      services-platform:modules/queries/tests/e2e/reports.e2e.spec.js#refuses a saved query the caller may not
      see as 400 naming saved_query_id
    category: validation
  - id: ATS-PFM-QRY-011-09
    title: Report storage rejects excess names and layouts
    level: api
    proves:
      - BR-CAP-PFM-QRY-011-09
      - INV-DOM-PFM-QRY-003-04
    preconditions: An owner has a report named Q3.
    steps: 'Try a duplicate name, an oversized name, an oversized layout and a case-only self-rename.'
    expected: Invalid changes fail without echoing the excess layout; the self-rename succeeds.
    negative: true
    data_needs: Use the existing binding’s controlled fixture data.
    bound_to:
      - >-
        services-platform:modules/queries/tests/integration/services/persistence/reports.integration.spec.js#refuses
        a second report of the owner whose name differs only in case, storing nothing
      - >-
        services-platform:modules/queries/tests/integration/services/persistence/reports.integration.spec.js#refuses
        a definition over 512 KiB, without echoing it
      - >-
        services-platform:modules/queries/tests/integration/services/persistence/reports.integration.spec.js#accepts
        a change of only the letter case of its own name
      - >-
        services-platform:modules/queries/tests/unit/aws/api/reports-api-mapper.spec.ts#refuses a name longer
        than 120 characters
      - TST-PFM-QRY-322
      - TST-PFM-QRY-359
    provenance: test
    source: >-
      services-platform:modules/queries/tests/integration/services/persistence/reports.integration.spec.js#refuses
      a second report of the owner whose name differs only in case, storing nothing
    category: boundary
    binding_note: >-
      The cited suites contribute separate assertions. The complete combined example is not a single
      executable journey.
  - id: ATS-PFM-QRY-011-10
    title: Report changes require current versions
    level: api
    proves:
      - BR-CAP-PFM-QRY-011-10
      - INV-DOM-PFM-QRY-003-08
    preconditions: A report is at version three.
    steps: Save and remove it with no version and with an older version.
    expected: Missing versions return 400 and stale versions return 409.
    negative: true
    data_needs: Use the existing binding’s controlled fixture data.
    bound_to:
      - >-
        services-platform:modules/queries/tests/e2e/reports.e2e.spec.js#refuses a replacement that states no
        version as 400 MissingVersion
      - >-
        services-platform:modules/queries/tests/e2e/reports.e2e.spec.js#refuses a replacement at a version no
        longer in force as 409
      - >-
        services-platform:modules/queries/tests/e2e/reports.e2e.spec.js#refuses a delete that states no
        version as 400 MissingVersion
      - >-
        react-console:acceptance/reporting/playwright/journeys/catalog-and-sharing/RPT-ACC-0010.spec.ts#RPT-ACC-0010
      - TST-PFM-QRY-233
      - TST-PFM-QRY-055
    provenance: test
    source: >-
      services-platform:modules/queries/tests/e2e/reports.e2e.spec.js#refuses a replacement that states no
      version as 400 MissingVersion
    category: concurrency
    binding_note: >-
      The cited suites contribute separate assertions. The complete combined example is not a single
      executable journey.
  - id: ATS-PFM-QRY-011-11
    title: Saving a report acknowledges current source state
    level: api
    proves:
      - BR-CAP-PFM-QRY-011-11
    preconditions: A report retains an earlier source definition.
    steps: 'Change the query, read the warning, resave the report and inspect it again.'
    expected: The change warning appears before resaving and clears afterward.
    negative: false
    data_needs: Use the existing binding’s controlled fixture data.
    bound_to:
      - >-
        services-platform:modules/queries/tests/e2e/reports.e2e.spec.js#answers saved_query_changed once the
        saved query has been edited since the report was saved
      - >-
        react-console:acceptance/reporting/playwright/journeys/saved-query-reports/RPT-ACC-0086.spec.ts#RPT-ACC-0086
      - TST-PFM-QRY-233
      - TST-PFM-QRY-127
    provenance: test
    source: >-
      services-platform:modules/queries/tests/e2e/reports.e2e.spec.js#answers saved_query_changed once the
      saved query has been edited since the report was saved
    category: interaction
    binding_note: >-
      The cited suites contribute separate assertions. The complete combined example is not a single
      executable journey.
  - id: ATS-PFM-QRY-011-12
    title: Report removal updates its dependencies
    level: api
    proves:
      - BR-CAP-PFM-QRY-011-12
      - INV-DOM-PFM-QRY-003-06
    preconditions: A scheduled report depends on one saved question.
    steps: Delete the report and subsequently remove its released source.
    expected: The schedule pauses for report deletion and the released query can be removed.
    negative: false
    data_needs: Use the existing binding’s controlled fixture data.
    bound_to:
      - 'services-platform:modules/queries/tests/e2e/query-schedules.e2e.spec.js#deletes the report'
      - >-
        services-platform:modules/queries/tests/e2e/query-schedules.e2e.spec.js#pauses the schedule
        report_deleted, its report gone
      - >-
        react-console:acceptance/reporting/playwright/journeys/catalog-and-sharing/RPT-ACC-0012.spec.ts#RPT-ACC-0012
      - >-
        react-console:acceptance/reporting/playwright/journeys/catalog-and-sharing/RPT-ACC-0024.spec.ts#RPT-ACC-0024
      - TST-PFM-QRY-230
      - TST-PFM-QRY-057
      - TST-PFM-QRY-069
    provenance: test
    source: 'services-platform:modules/queries/tests/e2e/query-schedules.e2e.spec.js#deletes the report'
    category: transition
    binding_note: >-
      The cited suites contribute separate assertions. The complete combined example is not a single
      executable journey.
  - id: ATS-PFM-QRY-011-13
    title: Catalog sharing preserves reader data authority
    level: browser
    proves:
      - AS-JNY-PFM-QRY-001-01
      - AS-JNY-PFM-QRY-001-02
      - AS-JNY-PFM-QRY-001-03
    preconditions: An author and finance colleague use the report catalog.
    steps: Execute the copy-and-sharing browser journey.
    expected: 'Copy ownership, permitted sharing, colleague execution and source-narrowing refusal are observed.'
    negative: false
    data_needs: Use the existing binding’s controlled fixture data.
    bound_to:
      - >-
        react-console:acceptance/reporting/playwright/journeys/catalog-and-sharing/RPT-ACC-0002.spec.ts#RPT-ACC-0002
      - >-
        react-console:acceptance/reporting/playwright/journeys/catalog-and-sharing/RPT-ACC-0008.spec.ts#RPT-ACC-0008
      - TST-PFM-QRY-047
      - TST-PFM-QRY-053
    provenance: test
    source: >-
      react-console:acceptance/reporting/playwright/journeys/catalog-and-sharing/RPT-ACC-0002.spec.ts#RPT-ACC-0002
    category: interaction
    binding_note: >-
      The cited suites contribute separate assertions. The complete combined example is not a single
      executable journey.
  - id: ATS-PFM-QRY-011-14
    title: A source audience cannot strand a wider report
    category: interaction
    level: api
    exercises:
      - CAP-PFM-QRY-006
      - CAP-PFM-QRY-011
    proves:
      - BR-CAP-PFM-QRY-006-08
      - BR-CAP-PFM-QRY-011-04
    preconditions: A role-shared report depends on an organization-shared query.
    steps: 'Attempt to make the query private, then narrow the report and repeat the query change.'
    expected: >-
      The first change identifies the blocking report; compatible audience changes allow the query to become
      private.
    negative: false
    data_needs: >-
      Use an isolated workspace with the described source records, access grants and a surviving control
      workspace.
    bound_to: []
    provenance: proposed
    source:
      - >-
        services-platform:modules/queries/tests/integration/services/saved-queries/saved-query-narrowing.integration.spec.js#refuses
        narrowing it to private with 409 saved_query_narrower_than_reports, naming the report
      - >-
        services-platform:modules/queries/tests/e2e/reports.e2e.spec.js#refuses a report shared wider than its
        saved query as 409 ReportSharedWiderThanQuery, naming the query
  - id: ATS-PFM-QRY-011-15
    title: A second dashboard source narrows the sharing choice
    category: interaction
    level: api
    exercises:
      - CAP-PFM-QRY-011
      - CAP-PFM-QRY-012
    proves:
      - BR-CAP-PFM-QRY-011-04
      - BR-CAP-PFM-QRY-012-04
    preconditions: An organization-shared question and a Finance-only question supply separate widgets.
    steps: 'Save a private dashboard, attempt organization sharing and then share only with Finance.'
    expected: The wider attempt identifies the Finance source; the contained audience can be saved.
    negative: false
    data_needs: >-
      Use an isolated workspace with the described source records, access grants and a surviving control
      workspace.
    bound_to: []
    provenance: proposed
    source:
      - >-
        services-platform:modules/queries/tests/e2e/reports.e2e.spec.js#refuses a report shared wider than its
        saved query as 409 ReportSharedWiderThanQuery, naming the query
      - >-
        services-platform:modules/queries/tests/e2e/reports.e2e.spec.js#refuses a dashboard shared wider than
        one of its sources as 409, naming that source
  - id: ATS-PFM-QRY-011-16
    title: Deleting a report separates pending and completed files
    category: interaction
    level: api
    exercises:
      - CAP-PFM-QRY-011
      - CAP-PFM-QRY-013
    proves:
      - BR-CAP-PFM-QRY-011-12
      - BR-CAP-PFM-QRY-013-09
    preconditions: A report has one completed file and a second queued rendering request.
    steps: 'Delete the report, follow the completed download and process the queued request.'
    expected: The completed file remains available until expiry and the queued render fails for lost access.
    negative: true
    data_needs: >-
      Use an isolated workspace with the described source records, access grants and a surviving control
      workspace.
    bound_to: []
    provenance: proposed
    source:
      - >-
        services-platform:modules/queries/tests/e2e/query-schedules.e2e.spec.js#pauses the schedule
        report_deleted, its report gone
      - 'services-platform:docs/queries/report-rendering.md#2. The export row'
  - id: ATS-PFM-QRY-011-17
    title: Deleting a report pauses its recurring deliveries
    category: interaction
    level: api
    exercises:
      - CAP-PFM-QRY-011
      - CAP-PFM-QRY-015
    proves:
      - BR-CAP-PFM-QRY-011-12
      - BR-CAP-PFM-QRY-015-13
    preconditions: A report has both enabled and manually paused schedules plus a retained completed file.
    steps: 'Delete the report, inspect both schedules and try resuming or running them.'
    expected: >-
      Both carry the report-deleted pause, retain their history and refuse new runs; the completed file
      remains.
    negative: true
    data_needs: >-
      Use an isolated workspace with the described source records, access grants and a surviving control
      workspace.
    bound_to: []
    provenance: proposed
    source:
      - >-
        services-platform:modules/queries/tests/e2e/query-schedules.e2e.spec.js#pauses the schedule
        report_deleted, its report gone
      - 'services-platform:modules/queries/tests/e2e/query-schedules.e2e.spec.js#refuses to resume it (400)'
evidence:
  - 'Pinned reference: react-console:acceptance/reporting/playwright/journeys/adversarial/RPT-ACC-0490.spec.ts'
  - >-
    Pinned reference:
    react-console:acceptance/reporting/playwright/journeys/catalog-and-sharing/RPT-ACC-0002.spec.ts
  - >-
    Pinned reference:
    react-console:acceptance/reporting/playwright/journeys/catalog-and-sharing/RPT-ACC-0005.spec.ts
  - >-
    Pinned reference:
    react-console:acceptance/reporting/playwright/journeys/catalog-and-sharing/RPT-ACC-0008.spec.ts
  - >-
    Pinned reference:
    react-console:acceptance/reporting/playwright/journeys/catalog-and-sharing/RPT-ACC-0010.spec.ts
  - >-
    Pinned reference:
    react-console:acceptance/reporting/playwright/journeys/catalog-and-sharing/RPT-ACC-0012.spec.ts
  - >-
    Pinned reference:
    react-console:acceptance/reporting/playwright/journeys/catalog-and-sharing/RPT-ACC-0023.spec.ts
  - >-
    Pinned reference:
    react-console:acceptance/reporting/playwright/journeys/catalog-and-sharing/RPT-ACC-0024.spec.ts
  - >-
    Pinned reference:
    react-console:acceptance/reporting/playwright/journeys/classic-subledger/RPT-ACC-0154.spec.ts
  - >-
    Pinned reference:
    react-console:acceptance/reporting/playwright/journeys/saved-query-reports/RPT-ACC-0086.spec.ts
  - 'Pinned reference: services-platform:modules/queries/tests/e2e/query-schedules.e2e.spec.js'
  - 'Pinned reference: services-platform:modules/queries/tests/e2e/read-tier.e2e.spec.js'
  - 'Pinned reference: services-platform:modules/queries/tests/e2e/reports.e2e.spec.js'
  - >-
    Pinned reference:
    services-platform:modules/queries/tests/integration/services/persistence/reports.integration.spec.js
  - >-
    Pinned reference:
    services-platform:modules/queries/tests/integration/services/reports/report-library.integration.spec.js
  - 'Pinned reference: services-platform:modules/queries/tests/unit/aws/api/reports-api-mapper.spec.ts'
  - 'Pinned reference: services-platform:modules/queries/tests/unit/services/reports/report-access.spec.ts'
coverage_notes:
  transition: >-
    This capability has no formal lifecycle of its own. Audience and definition changes remain rule,
    permission and concurrency proofs; related lifecycles are exercised through interaction scenarios.
coverage:
  rule: covered
  transition: not-applicable
  validation: covered
  permission: covered
  edge: 'gap: FND-PFM-QRY-061'
  failure: 'gap: FND-PFM-QRY-061'
  boundary: covered
  concurrency: covered
  invariant: 'gap: FND-PFM-QRY-061'
  interaction: covered
coverage_findings:
  - FND-PFM-QRY-061
transition_obligations: []
unproved_rules: []
---

# Maintain a shared report library: Capability Test Specification

## Coverage

| Rule | Scenario or Finding |
|---|---|
| `BR-CAP-PFM-QRY-011-01` | `ATS-PFM-QRY-011-01` |
| `BR-CAP-PFM-QRY-011-02` | `ATS-PFM-QRY-011-02` |
| `BR-CAP-PFM-QRY-011-03` | `ATS-PFM-QRY-011-03` |
| `BR-CAP-PFM-QRY-011-04` | `ATS-PFM-QRY-011-04`, `ATS-PFM-QRY-011-14`, `ATS-PFM-QRY-011-15` |
| `BR-CAP-PFM-QRY-011-05` | `ATS-PFM-QRY-011-05` |
| `BR-CAP-PFM-QRY-011-06` | `ATS-PFM-QRY-011-06` |
| `BR-CAP-PFM-QRY-011-07` | `ATS-PFM-QRY-011-07` |
| `BR-CAP-PFM-QRY-011-08` | `ATS-PFM-QRY-011-08` |
| `BR-CAP-PFM-QRY-011-09` | `ATS-PFM-QRY-011-09` |
| `BR-CAP-PFM-QRY-011-10` | `ATS-PFM-QRY-011-10` |
| `BR-CAP-PFM-QRY-011-11` | `ATS-PFM-QRY-011-11` |
| `BR-CAP-PFM-QRY-011-12` | `ATS-PFM-QRY-011-12`, `ATS-PFM-QRY-011-16`, `ATS-PFM-QRY-011-17` |

## Interactions With Related Capabilities

The combined examples change a source, its audience or its retained state before checking the dependent outcome. Unbound examples remain proposed, and the coverage finding retains design obligations that these examples do not establish.

| Related Capability | Scenario |
|---|---|
| Journey dependency | `ATS-PFM-QRY-011-04` |
| Journey dependency | `ATS-PFM-QRY-011-11` |
| Journey dependency | `ATS-PFM-QRY-011-13` |
| `CAP-PFM-QRY-006` | `ATS-PFM-QRY-011-14` |
| `CAP-PFM-QRY-012` | `ATS-PFM-QRY-011-15` |
| `CAP-PFM-QRY-013` | `ATS-PFM-QRY-011-16` |
| `CAP-PFM-QRY-015` | `ATS-PFM-QRY-011-17` |

## Evidence and Binding Limits

The source revisions pin the inspected assertions. A test binding identifies written assertions, and does not establish a successful run or approval of the expected behavior.
