Skip to content

JNY-PFM-TNL-001Staff establish the customer’s first workspace

Markdown

JNY-PFM-TNL-001

Staff establish the customer’s first workspace

Markdown
  • DocumentDraft
  • Product intentProposed
  • ImplementationObserved

KindJourneyProduct areaPlatformModuleWorkspace Lifecycle Across ApplicationsRevision2End-to-endRequired

Read atservices-platform ad3f6a65

The Formal Contract

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

Goal
The association gains a constructed workspace with the requested access and sender setup.
Screens
/hq/tenants/provision/hq/jobs/tenant_provisioning/{jobId}

Steps

#SurfaceActionCapabilityExpectedProvenance
1createTenantSubmit the customer’s workspace details with a first administrator and domain sender.CAP-PFM-TNL-001The response identifies a provisioning workspace and its recorded build.test
services-platform:modules/tenants/tests/e2e/tenant-provisioning.e2e.spec.js#answers the provisioning job that is making the tenant usable
2tenant_provisioning: provision:<participant>Run application construction in the planned dependency order.CAP-PFM-TNL-002Enabled participant work is invoked in sequence.test
3tenant_provisioning: provision:platform.securityEstablish the requested customer Administrator invitation.CAP-PFM-TNL-004A single recorded invitation supports safe replay.test
4tenant_provisioning: provision:communications.sender-identitySet up the association’s sending identities.CAP-PFM-TNL-004Sender setup exposes DNS requirements while construction continues.test
services-platform:modules/tenants/tests/integration/services/provisioning/tenant-email-strategy.integration.spec.js#created the identities in SES on the way, so the customer has records to publish
5tenant_provisioning: verify-readiness, activateCheck participant readiness and activate the result.CAP-PFM-TNL-002Active lifecycle, requested business mode and first opening time are retained.test
6getTenantProvisioningInspect the completed provisioning snapshot.CAP-PFM-TNL-003Named participant and closing steps show their completion.test
services-platform:modules/tenants/tests/e2e/tenant-provisioning.e2e.spec.js#shows every step completed, and names each one for the person reading it
7notifyJobRequesterRead the requester’s outcome notice.CAP-PFM-TNL-003The ready message identifies the workspace and links to progress.test
8/console/{tenantId}Enter ordinary workspace use as the association’s administrator.CAP-PFM-TNL-005The active enabled workspace passes its availability gate.test
services-platform:modules/tenants/tests/e2e/tenant-availability-gate.e2e.spec.js#is served a tenant-scoped route in an active tenant (the premise every refusal below is read against)

Alternate and Failure Paths

PathFrom stepConditionPath takenOutcomeProvenance
alternate1The original submission is repeated.Return the workspace and job already associated with it.No second workspace or build is recorded.test
services-platform:modules/tenants/tests/integration/services/provisioning/provision-tenant.integration.spec.js#answers the same tenant and the same job when the same submission is sent twice
alternate4No association sender is requested.Skip sender identity creation.Mail continues through Rhythm’s shared sender.test
services-platform:modules/tenants/tests/integration/services/provisioning/tenant-email-strategy.integration.spec.js#writes no sender identity, because the shared Rhythm sender is the answer for most tenants
failure5Readiness cannot find a required resource.Refuse opening and report the missing resource.Partial construction remains in a failed workspace for staff recovery.test

Assertions

IdStatementProvenance
01Customer availability changes from closed construction to active enabled use.test
services-platform:modules/tenants/tests/e2e/tenant-availability-gate.e2e.spec.js#is refused 403 in a tenant that is still being provisioned
02The job retains completed participant, readiness and activation steps.test
services-platform:modules/tenants/tests/e2e/tenant-provisioning.e2e.spec.js#shows one step per participant, then the readiness check and the activation
03The handled ready notice contains a progress link and is not sent again in the replay fixture.test
services-platform:modules/tenants/tests/integration/services/provisioning/provisioning-notices.integration.spec.js#links to the job’s own page in Rhythm HQ, so the requester can read the steps
04The new-customer fixture records an invitation and opens with sender verification pending.test

End-to-end policy: required: The outcome crosses lifecycle operations and warrants end-to-end verification; the current bindings establish backend fixtures, while screen and deployed-service coverage remain separate gaps.

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.