Roadmap Control
- Build the full MHAI V3 legal application; Finance is the business priority.
- Master identity rule: Contact is the authoritative master identity registry for every person and organization. Downstream Client records reference an existing Contact and must not create a duplicate identity record. Client-specific attributes belong to Client, not Contact. Matters reference Client; Finance operates on the established Client/Matter relationship.
- Finance begins only after the authoritative Contact → Client → Matter chain is verified.
- Finance UI is intentionally lean: Client Accounts and Recon.
- Client Ledger is internal posting inside Client Accounts; Bank Statement lives inside Recon.
- Every applicable data-backed module follows the global CRUD, audit, import/export and overview-table standard.
- Never ask Gemini to create, seed, fabricate or restore test/business data. User supplies CSV/manual data.
- Use Complete only after evidence and exit criteria pass. Otherwise use the appropriate active/blocked status.
- Live roadmap rule: update this page after every verified stage or material roadmap decision before issuing the next Gemini task.
Completed Phase — User Perspective
This section explains what a real MHAI V3 user can actually do because each completed phase has been delivered. It is written for future user manuals, training and product presentations; it does not replace or expand the development scope.
Phase 1 — V3 Foundation & Data Architecture
What can I do as a user? The foundation gives the application its secure, persistent and consistent way of working, even though much of the work is behind the scenes.
- Sign in securely and access only the functions permitted for my role.
- Work with records that are stored persistently in the application's backend rather than relying on browser storage as the business datastore.
- Create, view, edit, update, archive/restore or safely delete records where the relevant module permits it.
- Use consistent search, filtering, sorting, pagination and table controls across supported directories.
- Show, hide, reorder and resize relevant table columns.
- Import and export data through supported CSV/Excel workflows with validation and review.
- Have important changes recorded in an audit trail.
- Rely on the application to enforce relationships, permissions and lifecycle rules consistently.
Why it matters: every later module can use the same secure data-management foundation instead of implementing its own inconsistent rules.
Phase 2 — Contacts / Master Data
What can I do as a user? I can maintain the firm's authoritative directory of people and organizations and use those records throughout the legal application.
- Create and maintain Individual and Organization Contacts.
- Maintain identity/profile information such as names, dates, nationality, residence, National Insurance information and occupation where applicable.
- Maintain organization information such as legal/trading name, subtype, registration details, jurisdiction, VAT information, business activity and website.
- Manage multiple email addresses and phone numbers, including primary and verification information.
- Manage structured addresses and address purposes.
- Search, filter, sort and paginate the Contact Directory.
- Choose which useful Contact columns are visible and adjust their order and width.
- Create, edit, archive, restore and safely delete Contacts according to permissions and lifecycle rules.
- Import and export Contact information using CSV/XLSX workflows.
- Review audit history for important Contact changes.
- Use a Contact as the authoritative identity when onboarding that person or organization as a Client, without creating a duplicate identity record.
- Immediately see whether a Contact is already a Client and open the Client Workspace when applicable.
Why it matters: the firm has one authoritative identity record for each person or organization. That identity can be reused by downstream legal relationships without creating conflicting copies of the same person or organization.
Phase 3 — Clients
What can I do as a user? I can turn an established Contact into a managed Client relationship and work with that Client without duplicating the underlying identity.
- Onboard an existing Contact as a Client.
- Prevent duplicate Client onboarding for a Contact that is already a Client.
- View the Client Directory and search, filter, sort and paginate Clients.
- Customize the Client Directory columns, including showing, hiding, reordering and resizing legitimate Client, Contact and compliance information.
- View the Client Workspace and its Client details.
- See the authoritative Contact associated with the Client and navigate back to the Contact relationship.
- Maintain Client-specific information separately from the authoritative Contact identity.
- Manage Client status and lifecycle, including edit/update and archive/restore workflows.
- Manage the Client compliance foundation, including CDD/KYC, identity verification, risk, governance and stakeholders.
- Import and export Client data using CSV/XLSX workflows with Contact matching.
- Review the Client audit trail, including important creation, update, archive and restore actions.
- From the Contact Directory, clearly see whether a Contact is already a Client and use View Client or Onboard as Client as appropriate.
Why it matters: the Client becomes a controlled legal/business relationship built on top of the authoritative Contact. This gives Matter and Finance a reliable Client record to work from.
Global V3 Database & Data-Table Standard
- PostgreSQL/backend is the production source of truth.
- No localStorage-based production datastore.
- Foreign keys and server-side constraints enforce critical relationships.
- Posted financial records are never silently hard-deleted.
- Financial operations use atomic transactions and duplicate/concurrency protection.
- Exports respect authorization; imports preserve required relationships and identifiers.
- Backup, restore and recovery are production requirements.
Finance Screen Rule
Client Accounts = client accounts + Client Ledger/internal postings + receipts + payments + transfers + adjustments + running balance + financial controls.
Recon = bank statement + import + matching + unmatched/exceptions + three-way reconciliation + audit.
Do not create separate top-level Ledger, Balance, Cashiering, Bank Statements or Reconciliation screens.
Development Workflow
- Read the current roadmap position.
- Identify the single current READY item or verified defect.
- Provide: Where we are → Goal/brief → Recommended Gemini model → Easy-copy prompt.
- Gemini inspects existing implementation before editing and performs only the requested scope.
- Gemini never creates test/business data.
- User supplies CSV/manual data.
- Review Gemini's response and evidence.
- Verify build, persistence, relationships, RBAC, audit and manual E2E as applicable.
- Update this live roadmap before issuing the next task.