OH

Prototype Demo Tour — §40.2 Demonstration Script

Guided storyboard of the specification's 12-step prototype demonstration: what to do, what the system must show and the expected result at each step — with direct links into every mockup screen involved.

§40.2 UX-01…UX-32
Tour at a glance 12 steps ≈ 45 min live run
1 Capture lead 2 Qualify + match 3 Reservation conflict 4 Viewing + offer approval 5 Deal + prerequisites 6 Generate lease 7 Blocked release 8 Override + approval 9 e-Sign + hashes 10 Invoice + receipt 11 Compliance hold 12 Executive + audit

Every step is deterministic against the seed profile: identifiers below (lead, reservation, offer, deal, contract, invoice, hold) are the exact records the fixtures produce, so a live run can be checked line-by-line against this storyboard. Exception steps 3 and 7 are intentional failures — they prove the conflict and validation controls, not defects.

Seed fixtures by domain (Table 71) Seed load verified · 16 Jul 2026 22:10
DomainRequired seed contentStateInspect in mockup
Organization1 company, 2 legal/branch scopes, departments, cost centers, signatories, authority thresholdsLoadedOrg structure
UsersExecutive, config admin/approver, sales manager, 2 agents, property admin, legal, accountant, finance manager, KYC maker/checker, MLRO, auditorLoadedIdentity & RBAC
PartiesIndividual, corporate with UBO, landlord/developer, vendor, external broker, employeeLoadedParty master
Property1 community, 1 project, 2 buildings, 6+ units with available / reserved / contracted examplesLoadedUnit inventory
CRMNew, assigned, qualified, lost and converted leads with activities and consent statesLoadedLead inbox
DealsOne lease and one sale-style prototype deal; approved and blocked variantsLoadedDeal workspace
ContractsEN and Arabic-ready lease templates, typed bindings, approved clause, golden expected documentLoadedTemplate registry
FinanceChart of accounts, fiscal period, tax examples, invoice, partial receipt, journal, bank/PDC fixturesLoadedGeneral ledger
ComplianceKYC profiles, clear screening result, potential match, risk bands, active/released holdLoadedKYC workspace
ConfigurationActive company/branch rules, one scheduled change, one rejected draft, provider mock profiles1 rejected draft (by design)Control center
IntegrationMock e-sign, screening, bank and portal adapters with success, timeout and invalid-webhook fixturesTimeout fixture armedProvider health
Step 1 · Sign in & capture the website lead Expected: LD-2026-00917 created · no duplicate

Actor — Omar Haddad (Agent A), Entra OIDC sign-in with MFA step-up, scope Dubai HQ, 17 Jul 2026 09:00.

Do — Capture the website lead for Amina Noor: mobile 05● ●●● 4102, email a.noor●●@gmail.com, source Website / campaign "Marina Summer 2026", interest 2BR lease in Prototype Residences, marketing consent ticked on the form.

System must show — Phone normalized to E.164 (+9715●●●●4102), dedupe verdict No match · best score 0.21 < 0.75, source attribution persisted, consent record CNS-2026-1188 with UTC timestamp.

Open screen → Sign-in & Session Context · Open screen → Lead Intake

Step 2 · Qualify the lead & match a unit Expected: Qualified · match shortlist ranked

Actor — Omar Haddad, in the lead workspace for LD-2026-00917.

Do — Record an outbound call activity (4 min, outcome "Interested — 2BR, budget AED 140,000/yr, move-in 01 Sep 2026"), qualify the lead, then run matching restricted to Prototype Residences.

System must show — Stage moves New → Qualified with activity on the timeline; matching returns available unit PR-A-1204 (2BR, 1,214 sq ft, AED 138,000/yr) ranked first with match rationale (budget fit 0.94, area fit 0.91).

Open screen → Lead Workspace · Open screen → Matching & Recommendations

Step 3 · Concurrent reservation — forced conflict Expected: 1 success · 1 UNIT_NOT_AVAILABLE

Actors — Two parallel sessions: Omar Haddad (Agent A) and Layla Hassan (Agent B), both targeting unit PR-A-1204 at 10:32.

Do — Submit both reservations within the same second (Agent A at 10:32:14, Agent B at 10:32:15) with a 48h hold and AED 5,000.00 reservation deposit.

System must show — Session 1 succeeds → RSV-2026-0455, unit state Available → Reserved. Session 2 receives typed error UNIT_NOT_AVAILABLE with correlation ID req_01J2QK8Z and no partial write — never a double booking.

Open screen → Reservation & Holds

Step 4 · Viewing, offer & independent approval route Expected: OFF-2026-0312 routed to approver ≠ creator

Actor — Omar Haddad; approver resolved by configuration, not chosen by the agent.

Do — Schedule a viewing of PR-A-1204 for 18 Jul 2026 11:00, mark it completed with outcome notes, then build offer OFF-2026-0312: rent AED 138,000.00/yr, 2 cheques, 5% security deposit — and submit it.

System must show — Calendar event lifecycle Scheduled → Completed; offer routed through the configured independent approval route to Rashid Al Farsi (Sales Manager) with an explicit SoD note that creator and approver differ.

Open screen → Viewings Calendar · Open screen → Offer Builder

Step 5 · Approve offer → create deal, show prerequisites Expected: DL-2026-0208 · pinned policy versions

Actor — Rashid Al Farsi approves; Omar Haddad opens the resulting deal.

Do — Approve OFF-2026-0312 and create lease deal DL-2026-0208 for Amina Noor on PR-A-1204.

System must show — Active compliance prerequisites on the deal: KYC Verified, screening Clear, risk band Low — each stamped with the exact policy/configuration versions used (Compliance policy v2.4 · config 2026-07-01.3, Real-estate rules v3.1).

Open screen → Deal Workspace

Step 6 · Generate the lease with source lineage Expected: CT-2026-0642 v1 · lineage per field

Actor — Mariam Al Suwaidi (Legal) from the deal's Contracts tab.

Do — Generate contract CT-2026-0642 from approved template "Residential Lease EN/AR v7".

System must show — Automatic population of customer (Amina Noor), Entity Company (Al Manara Properties LLC), unit PR-A-1204, term 01 Sep 2026 – 31 Aug 2027, rent AED 138,000.00 with a 2-cheque payment schedule, and the resolved signatory (Rashid Al Farsi per authority matrix). The source-lineage panel lists every populated field with its source record and version.

Open screen → Generation & Preview

Step 7 · Remove identifier → blocking validation → regenerate Expected: release blocked, then v2 regenerated

Actor — Mariam Al Suwaidi, deliberately breaking a prerequisite.

Do — Remove the required verified identifier (Emirates ID 784-19●●-●●●●●●●-●) from Amina Noor's party record, then attempt to release CT-2026-0642 v1. Afterwards restore the identifier from the authoritative source and regenerate.

System must show — Release attempt blocked with typed validation CONTRACT_PREREQ_MISSING naming the exact missing identifier — no silent fallback. After restore, regeneration produces v2; v1 remains in history, superseded.

Open screen → Approval & Release

Step 8 · Permitted field override with reason & approval Expected: override approved · party master unchanged

Actor — Omar Haddad requests; Mariam Al Suwaidi (Legal) approves.

Do — Override the permitted payment-schedule field from 2 to 4 cheques, entering reason "Negotiated 4-cheque split — tenant cash-flow request" and submitting for approval; regenerate as v3.

System must show — Override applies to the document only: the party master and deal terms are byte-for-byte unchanged, and the document diff (v2 → v3) remains permanently visible with old/new values, reason and approver identity.

Open screen → Generation & Preview (diff panel)

Step 9 · Release & e-sign with immutable hashes Expected: Signed · SHA-256 evidence sealed

Actors — Mariam Al Suwaidi releases; "Amina Noor" completes signing on the mock e-sign portal.

Do — Release approved CT-2026-0642 v3, dispatch the e-sign envelope through the mock provider, and simulate signer completion on the external portal.

System must show — Envelope lifecycle Sent → Viewed → Signed; evidence record with immutable document hash sha256:9f4c…e2a1 and evidence-bundle hash sha256:7b1d…c904, signer IP/timestamp trail, and a sealed Immutable state — any further change requires a new version.

Open screen → e-Signature Evidence · Open screen → Signing Portal

Step 10 · Invoice, partial receipt & allocation Expected: balance AED 31,100.00 · journals balanced

Actor — Daniel Chen (Accountant), Dubai HQ books, FY2026 period open.

Do — Issue invoice INV-2026-1044 to Amina Noor: first rent instalment AED 69,000.00 (exempt) + admin fee AED 2,000.00 + VAT 5% AED 100.00 = AED 71,100.00. Record partial bank receipt RCT-2026-0871 of AED 40,000.00 and allocate it to the invoice.

System must show — Remaining balance AED 31,100.00 on the invoice; automatically posted, balanced journal entries (DR Bank 40,000.00 / CR Accounts Receivable 40,000.00) with drill-down from receipt to journal lines.

Open screen → Invoice Workspace · Open screen → Receipts & Allocation

Step 11 · Compliance hold blocks closing → MLRO resolves Expected: blocked → re-evaluated, not auto-completed

Actors — Noura Saeed (KYC Checker) raises the hold; Ahmed Al Blooshi (MLRO) resolves it.

Do — Create compliance hold HLD-2026-0102 (screening potential match on payer name) against DL-2026-0208, attempt to close the deal, then resolve the hold as MLRO with disposition "False positive — different DOB and nationality".

System must show — Closing/release hard-blocked with a consequence banner while the hold is active; after MLRO resolution the deal is re-evaluated against all prerequisites and only then returns to Ready to close — resolution never auto-completes the deal.

Open screen → AML Case Management · Open screen → Deal Workspace

Step 12 · Executive & audit views — reconcile and trace Expected: totals reconcile · full correlation chain

Actors — Executive viewer for the dashboard; Grace Okafor (Auditor) for the audit trace.

Do — Open the executive dashboard and reconcile pipeline, revenue and cash tiles against the ledger totals produced by steps 1–11; then trace correlation ID req_01J2QK8Z end-to-end in the audit explorer.

System must show — Certified tiles matching GL balances to the fils (AED 40,000.00 cash received, AED 31,100.00 open AR); the complete chain API request → audit events → outbox messages → webhook delivery for the traced correlation ID, with actor, scope and policy versions on every event.

Open screen → Executive Dashboard · Open screen → Audit Explorer

Screens visited per module Unique screens
Property5
Contracts3
Core2
CRM2
Finance2
Compliance1
Portals1
Governance1
ModuleScreensSteps touching
Property & Listings52, 3, 4, 5, 11
Contracts & Documents36, 7, 8, 9
Home & Work Queue21, 12
CRM & Leads21, 2
Finance & Accounting210
Compliance & AML111
External Portals19
Governance & Security112
Run checklist before demonstrating Facilitator notes
Seed snapshot
seed-2026.07.16-r3 · reset between runs
Sessions needed
2 browsers (Agent A + Agent B) for step 3
Mock providers
e-sign, screening, bank — success profile armed; timeout profile only for the integrations demo
Roles exercised
Agent ×2, Sales Manager, Legal, Accountant, KYC Checker, MLRO, Auditor, Executive
Records produced
LD-2026-00917 · RSV-2026-0455 · OFF-2026-0312 · DL-2026-0208 · CT-2026-0642 v1–v3 · INV-2026-1044 · RCT-2026-0871 · HLD-2026-0102
Correlation ID to trace
req_01J2QK8Z

If any step diverges from its expected-result badge, stop the run, capture the correlation reference from the error & degraded state page and file it against the acceptance area below.

Prototype acceptance sign-off (§40.3 · Table 72) 7 of 9 areas signed
AreaAcceptance statementOwnerSign-off
ArchitectureModular boundaries and public contracts comply with Sections 29–30.Architecture OwnerSigned · 15 Jul 2026
DataSchema, constraints, migrations, seed and reconciliation comply with Section 31.Data OwnerSigned · 15 Jul 2026
API / eventsOpenAPI, errors, idempotency, outbox and consumers comply with Sections 32–33.Integration OwnerSigned · 16 Jul 2026
ContractsAuto-population, lineage, override, golden documents and immutability comply with Section 34.Legal/Records + Data OwnersSigned · 16 Jul 2026
UXRelease-critical screens, Arabic/RTL readiness and accessibility comply with Section 35.Product/Content/Accessibility OwnerSigned with condition — AR glossary v1.1 due 24 Jul
SecurityIdentity, authorization, audit, scans and negative tests comply with Section 36.Security OwnerSigned · 16 Jul 2026
DeliveryBootstrap, CI/CD, environments and immutable artifact comply with Section 37.Release ManagerSigned · 17 Jul 2026
OperationsTelemetry, runbooks, backup and restore proof comply with Section 38.Operations OwnerPending — restore-proof rerun 19 Jul 2026
QualityAutomated and business acceptance evidence complies with Section 39.QA + Business OwnersIn progress — UAT wave 2 closes 21 Jul 2026

Static render mockup — no live data. Source: ERP Modern Development Specification v2.0 · Covers: §40.1 (Table 71 seed profile), §40.2 (12-step demonstration script), §40.3 (Table 72 acceptance record), UX-01…UX-32.