Skip to content

ATS-PFM-INT-021Acceptance for reusable action and workflow recipes

Markdown

ATS-PFM-INT-021

Acceptance for reusable action and workflow recipes

Markdown
  • DocumentProposed

KindAcceptance test setProduct areaPlatformModuleIntegration access, customer extensions and shared workflow configurationRevision3

Read atservices-platform ad3f6a65macroservice-libraries 54536a44react-console baf6dae3

Coverage

  • Rule covered
  • Transition gap: FND-PFM-INT-092
  • Validation covered
  • Permission covered
  • Edge gap: FND-PFM-INT-092
  • Failure gap: FND-PFM-INT-092
  • Boundary gap: FND-PFM-INT-092
  • Concurrency covered
  • Invariant gap: FND-PFM-INT-092
  • Interaction covered

Test Scenarios

5 scenarios proving CAP-PFM-INT-021; 4 bound to an existing test.

01 Shipped recipes refuse customer changesruleapinegativetest
Proves
BR-CAP-PFM-INT-021-01
Preconditions
The shipped recipe collection is available.
Steps
List action recipes and attempt replacement and deletion of a shipped entry.
Expected
Shipped entries appear first and identified; both mutations refuse.
Data
Fixtures establishing the stated accounts, declarations and history in an isolated workspace.
Bound to
Source
services-platform:modules/workflow-actions/tests/integration/services/persistence/action-templates.integration.spec.js#refuses a replacement of one (405)
02 Recipe contents must be configurable nowvalidationapinegativetest
Proves
BR-CAP-PFM-INT-021-02
Preconditions
Registry types include retired, inactive and host-restricted actions.
Steps
Save recipes using those types, invalid settings and a workflow stage pointing to an absent stage, then a valid recipe.
Expected
Each invalid recipe reports its problem and only the valid recipe saves.
Data
Fixtures establishing the stated accounts, declarations and history in an isolated workspace.
Bound to
Source
services-platform:modules/workflow-actions/tests/integration/services/persistence/action-templates.integration.spec.js#refuses a type that is declared and switched off
03 Recipe identity and versions prevent ambiguityconcurrencyapinegativetest
Proves
BR-CAP-PFM-INT-021-03
Preconditions
A workspace already has a recipe.
Steps
Reuse its identifier, use the reserved prefix and replace using a stale version.
Expected
Every attempt is refused.
Data
Fixtures establishing the stated accounts, declarations and history in an isolated workspace.
Bound to
Source
services-platform:modules/workflow-actions/tests/integration/services/persistence/action-templates.integration.spec.js#refuses an id in Rhythm’s own prefix, which the configuration-id grammar reserves (400)
04 Configuration mutation requires the matching authoritypermissionapinegativetest
Proves
BR-CAP-PFM-INT-021-05
Preconditions
A caller has registry read alone.
Steps
Attempt creation of an action recipe.
Expected
The creation request is denied without its management permission.
Data
Fixtures establishing the stated accounts, declarations and history in an isolated workspace.
Bound to
Source
services-platform:modules/workflow-actions/tests/e2e/workflow-actions.e2e.spec.js#refuses a caller without templates-manage a write (403)
05 Copied recipes do not rewrite published actionsinteractionapiproposed
Proves
BR-CAP-PFM-INT-020-04 BR-CAP-PFM-INT-021-04
Preconditions
An automation has a published version built from a customer recipe.
Steps
Replace the recipe, inspect the published version and raise a matching event.
Expected
The published version and raised actions retain the original copied settings.
Data
Run-owned records and principals in an isolated workspace.
Source
services-platform:modules/workflow-actions/tests/integration/db/workflow-actions-tables.integration.spec.js#refuses a change to a published version’s actions,services-platform:docs/workflow-actions/README.md#Workflow actions: Platform's part of the Workflow Action Engine

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.