Skip to content

JNY-CRM-ENT-001Create a member record and inspect the saved information

Markdown

JNY-CRM-ENT-001

Create a member record and inspect the saved information

Markdown
  • DocumentApproved
  • Product intentProposed
  • ImplementationPartially observed

KindJourneyProduct areaCRMModuleEntitiesRevision1End-to-endRequiredApproved byAndrewApproved at2026-10-22

Read atreact-console da630758services-crm 7ea48a41

The Formal Contract

The narrative above explains; the sections below are authoritative — the rules, scenarios and tests this document binds.

Goal
Enter a member’s information once, then inspect the saved record and its changes across the console and API.
Screens
/console/{tenantId}/crm/contacts/new/console/{tenantId}/crm/contacts/{id}/console/{tenantId}/crm/contacts/{id}/edit

Steps

#SurfaceActionCapabilityExpectedProvenance
1/console/{tenantId}/crm/contacts/newStart New Contact and select the member type.CAP-CRM-ENT-018The active type choices are available, and selection opens the corresponding form.test
2/console/{tenantId}/crm/contacts/newEnter identity, status, dates, three e-mails, two phones, two addresses, restrictions and two custom values, then create the contact.CAP-CRM-ENT-001One contact is created and its record page opens.test
3/console/{tenantId}/crm/contacts/{id}Inspect the Contact 360 cards.CAP-CRM-ENT-003The tested name, type and contact-detail values appear; the test separately records that the communication-preferences card is hidden.test
4getContactRetrieve the saved contact through the API.CAP-CRM-ENT-005The entered values are stored once with normalized e-mails and phones, typed custom values, computed names and a server-assigned number.test
5/console/{tenantId}/crm/contacts/{id}/editChange two fields, inspect Review Changes and save.CAP-CRM-ENT-004The review identifies both edits, and one patch advances the version once.test
6listContactHistoryInspect Version History.CAP-CRM-ENT-016Create and edit each have a revision attributed to the staff member and console.test

Alternate and Failure Paths

PathFrom stepConditionPath takenOutcomeProvenance
alternate1Only one active contact type exists.That type is already selected.Staff proceed directly to its form.test
failure2The entered primary e-mail matches a blocking duplicate rule.Creation returns a possible-duplicate refusal, with no confirmation control in the tested console path.The attempted contact is not created.test
failure5Another staff member saves before this editor does.The save opens a conflict notice offering Reload.The earlier changes remain intact.test

Assertions

IdStatementProvenance
01Creation leaves one member contact that appears once in a last-name search.test
02The tested record cards match API values; communication preferences are verified through the API because their card is hidden.test
03The create request does not choose the contact number; the server assigns it.test
04History contains one revision for each committed change with staff attribution.test

End-to-end policy: required: Browser proof is required to exercise the chooser, form and record cards together; API checks verify the saved values.

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.