Skip to content

JNY-CRM-ENT-003Archive a closed organization and inspect its retained history

Markdown

JNY-CRM-ENT-003

Archive a closed organization and inspect its retained history

Markdown
  • DocumentApproved
  • Product intentProposed
  • ImplementationObserved

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
Remove a closed organization from ordinary discovery while retaining its identity, affiliations and change history.
Screens
/console/{tenantId}/crm/organizations/{id}/console/{tenantId}/crm/organizations/console/{tenantId}/crm/contacts/{id}

Steps

#SurfaceActionCapabilityExpectedProvenance
1deleteOrganizationAttempt deletion of a closed organization still referenced by an ended affiliation.CAP-CRM-ENT-014Deletion is rejected because the affiliation depends on the organization.test
2/console/{tenantId}/crm/organizations/{id}Choose Archive on the organization record and confirm with the reason Closed down.CAP-CRM-ENT-013The organization is archived with the reason while retaining its status.test
3/console/{tenantId}/crm/organizationsInspect the default organization list and an organization selector.CAP-CRM-ENT-003The archived organization is excluded unless archive-inclusive discovery is requested.test
services-crm:modules/entities/tests/e2e/archive.e2e.spec.js#leaves it out of the list, and lists it for archived=only
4/console/{tenantId}/crm/organizations/{id}Open the archived organization’s Past contacts.CAP-CRM-ENT-009The former employee remains associated with the organization.test
services-crm:modules/entities/tests/e2e/archive.e2e.spec.js#keeps the former employee findable from it under Past, by the contact’s id
5/console/{tenantId}/crm/contacts/{id}Inspect the former employee’s contact record.CAP-CRM-ENT-009The ended affiliation identifies the archived organization.test
services-crm:modules/entities/tests/e2e/archive.e2e.spec.js#keeps the former employee’s affiliation naming the organization, badged archived
6/console/{tenantId}/crm/organizations/{id}Inspect the organization’s history.CAP-CRM-ENT-016A revision records the archive and its reason.test
services-crm:modules/entities/tests/e2e/organizations-history.e2e.spec.js#shows the archive and its reason in the revision before

Alternate and Failure Paths

PathFrom stepConditionPath takenOutcomeProvenance
alternate2The firm reopensThe administrator unarchives it with the reason "Reopened"It is back in lists, as it was, with the unarchive reason kepttest
failure2A standard user presses ArchiveThe action is refused for want of the archive keyThe firm stays livetest
services-crm:modules/entities/tests/e2e/archive.e2e.spec.js#refuses a caller who may update organizations but not archive them, 403
failure5Someone tries to edit the archived firmThe save is refused as archivedNothing changestest
services-crm:modules/entities/tests/e2e/archive.e2e.spec.js#refuses a save of the organization, 409 RecordArchived

Assertions

IdStatementProvenance
01The organization is excluded from the default list and included in the archived-only list.test
services-crm:modules/entities/tests/e2e/archive.e2e.spec.js#leaves it out of the list, and lists it for archived=only
02Past affiliations retain the organization identity and archive information.test
services-crm:modules/entities/tests/integration/services/persistence/organizations.archive.integration.spec.js#keeps the ended affiliation naming the organization's id, with its name and its archive instant
03Restoration retains the organization’s business values.test
services-crm:modules/entities/tests/integration/services/persistence/organizations.archive.integration.spec.js#returns the organization as it was, apart from its version and modified stamps

End-to-end policy: required: Browser proof connects the archive confirmation with list discovery and retained affiliations across record pages.

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.