Last updated: 6 August 2026
Project entry point: project.html
This is the working task ledger. Every task must have one accountable owner, an explicit status, a dependency where relevant, and evidence or an acceptance result before it is marked complete.
| Workstream | Current position | Immediate outcome needed |
|---|---|---|
| Project control | In progress | Complete the discovery evidence supporting the approved scope |
| Live discovery | Partially complete | Export and reconcile records, properties, activities, and associations |
| Product specification | Not started | Freeze day-one workflows and acceptance criteria |
| Architecture and security | Not started | Approve target model, roles, integration boundaries, and recovery design |
| Build | Not started | Establish testable application foundation |
| Migration | Not started | Produce import mapping and rehearsal evidence |
| QA and cutover | Not started | Complete UAT, training, cutover, and rollback approval |
| Done | ID | Task | Priority | Owner | Depends on | Evidence / exit criteria |
|---|---|---|---|---|---|---|
| [x] | GOV-001 | Create project entry point and progress register | P0 | Project lead | None | project.html and this register exist |
| [x] | GOV-002 | Record the live HubSpot high-level audit | P0 | Discovery lead | Logged-in read-only access | live audit |
| [x] | GOV-003 | Confirm project approver, product owner, technical owner, migration owner, and UAT users | P0 | Project lead | None | Named RACI and approval record recorded below on 2026-08-06; Oliver Ormond is the project approver for scope, UAT, and production cutover. |
| [x] | GOV-004 | Confirm three-week start date, cutover date, and review cadence | P0 | Project lead | GOV-003 | Complete 2026-08-06. Start date: 6 August 2026. Planned cutover: 31 August 2026. Latest acceptable/worst-case cutover: 7 September 2026. Review cadence: 9:00am every Wednesday on Teams, attended by Danica Griggs, Kerry Hand, and Stuart Gordon. |
| [x] | GOV-005 | Create decision and blocker log | P0 | Project lead | GOV-001 | Decision log contains the initial open decisions |
| [~] | GOV-006 | Freeze first-release scope and record explicit deferrals | P0 | Product owner | DISC-001 through DISC-007 | Scope approved 2026-08-06: Microsoft Graph sending is required day one; Facebook Messenger is deferred; useful email/attachment and form-submission history is wanted, while property history is lower priority; central operational reports/views are required; use a narrow small-business permission model. DISC-004 through DISC-007 evidence remains outstanding, so the task is not yet complete. |
| Done | ID | Task | Priority | Owner | Depends on | Evidence / exit criteria |
|---|---|---|---|---|---|---|
| [x] | DISC-001 | Confirm Events and Weddings inboxes, channels, access, and operational use | P0 | Discovery lead | HubSpot access | Audit section 1 |
| [x] | DISC-002 | Confirm Events and Weddings pipeline stages and live stage settings | P0 | Discovery lead | HubSpot access | Audit section 2 |
| [x] | DISC-003 | Inspect contact lifecycle stages and lifecycle automation | P0 | Discovery lead | HubSpot access | Audit section 3 |
| [~] | DISC-004 | Catalogue global workflows, triggers, actions, delays, and notifications | P0 | Discovery lead | HubSpot access | Partial live catalogue in workflow-catalogue.html: all eight workflow pages reviewed and action-editor details captured. A likely Final Email template and sender were found, but the workflow-to-template link is absent; internal property names and final timing/recipient mapping remain outstanding. |
| [~] | DISC-005 | Catalogue forms, legacy Non-HubSpot form families, fields, and displayed submissions | P0 | Discovery lead | HubSpot access | High-level catalogue in audit; form IDs, source URLs, and field export outstanding |
| [ ] | DISC-006 | Export object counts for contacts, companies, deals, activities, attachments, and associations | P0 | Migration lead | Export authority and method | Immutable raw inventory with timestamp |
| [ ] | DISC-007 | Export all relevant properties, internal names, options, and representative values | P0 | Migration lead | DISC-006 | Draft data dictionary with unknowns flagged |
| [ ] | DISC-008 | Capture email templates, snippets, sequences, subscriptions, suppression, and sender settings | P0 | CRM workstream | HubSpot access | Template and communication catalogue |
| [ ] | DISC-009 | Observe real Weddings and Events user journeys with staff | P0 | Product owner | Users and sample records | Journey notes and acceptance scenarios |
| [ ] | DISC-010 | Identify authoritative sources for booking dates, payment status, invoices, revenue, and waiver events | P0 | Product owner | Existing reporting sources | Approved integration/source map |
| [ ] | DISC-011 | Export and preserve raw HubSpot source archive with checksums and access control | P0 | Migration lead | DISC-006, DISC-007 | Read-only archive, manifest, checksum, retention decision |
| Done | ID | Task | Priority | Owner | Depends on | Evidence / exit criteria |
|---|---|---|---|---|---|---|
| [ ] | SPEC-001 | Define target users, roles, ownership, teams, and audit permissions | P0 | Product owner / security lead | DISC-001, DISC-003 | Approved permission matrix |
| [ ] | SPEC-002 | Define target contact, organisation, deal, activity, task, message, form, and audit data model | P0 | Technical lead | DISC-006, DISC-007 | docs/data-dictionary.html and schema review |
| [ ] | SPEC-003 | Define Weddings and Events stage transitions, validation, close rules, and history | P0 | Product owner | DISC-002, DISC-009 | State-transition specification and tests |
| [ ] | SPEC-004 | Define website intake contract, deduplication, consent, attribution, routing, and failure handling | P0 | Web/integration lead | DISC-005, DISC-009 | Integration contract and sample payload fixtures |
| [ ] | SPEC-005 | Define workflow replacement behaviours and manual override rules | P0 | Product owner | DISC-004, DISC-009 | docs/workflow-catalogue.html and scenario matrix |
| [ ] | SPEC-006 | Define reports, saved views, filters, and export formats required on day one | P1 | Reporting owner | DISC-010 | Report acceptance list |
| [ ] | SPEC-007 | Define migration mapping, transforms, validation, duplicate policy, and exception handling | P0 | Migration lead | DISC-006, DISC-007 | docs/migration-mapping.csv and mapping review |
| [ ] | SPEC-008 | Define non-functional requirements for security, performance, backups, monitoring, recovery, and privacy | P0 | Technical/security lead | SPEC-001, hosting review | Approved NFR checklist |
| [ ] | SPEC-009 | Approve day-one scope and defer non-essential HubSpot features | P0 | Project approver | SPEC-001 through SPEC-008 | Signed scope freeze |
| [~] | SPEC-010 | Specify template creation, amendment, preview, testing, approval, publishing, versioning, audit, disablement, rollback, and workflow linkage | P0 | Product owner / technical lead | DISC-004, SPEC-005, ARCH-003 | Template management specification is implementation-ready and includes acceptance tests; approve the role matrix, sender boundaries, and acceptance-test agreement before marking complete |
| Done | ID | Task | Priority | Owner | Depends on | Evidence / exit criteria |
|---|---|---|---|---|---|---|
| [ ] | ARCH-001 | Confirm application, database, file storage, background jobs, and deployment architecture for apps1 | P0 | Technical lead | SPEC-002, SPEC-008 | Architecture decision record |
| [ ] | ARCH-002 | Define authentication, session security, password/MFA policy, roles, and administrative access | P0 | Security lead | SPEC-001, ARCH-001 | Security design and test cases |
| [ ] | ARCH-003 | Define Microsoft 365 mailbox integration and sender/permission boundaries | P0 | Integration lead | DISC-001, SPEC-004 | Approved integration design or deferment decision |
| [ ] | ARCH-004 | Define website form ingress, secret validation, rate limiting, replay protection, and dead-letter handling | P0 | Security/integration lead | SPEC-004 | Threat model and integration test plan |
| [ ] | ARCH-005 | Configure database backups, encrypted secrets, monitoring, logs, alerts, and restore procedure | P0 | Operations lead | ARCH-001, SPEC-008 | Backup/restore evidence and alert test |
| [ ] | ARCH-006 | Define deployment, migration, rollback, and data-retention runbooks | P0 | Operations lead | MIG-003, ARCH-005 | docs/cutover-runbook.html reviewed |
| Done | ID | Task | Priority | Owner | Depends on | Evidence / exit criteria |
|---|---|---|---|---|---|---|
| [ ] | BUILD-001 | Create application skeleton, environments, database migrations, health checks, and audit logging | P0 | Engineering lead | ARCH-001, ARCH-002 | Test deployment and health check |
| [ ] | BUILD-002 | Build staff login, roles, navigation, contact search, contact record, and deduplication controls | P0 | Engineering lead | SPEC-001, SPEC-002 | Contact acceptance tests pass |
| [ ] | BUILD-003 | Build Weddings and Events deal views, stage transitions, validation, ownership, and stage history | P0 | CRM engineering | SPEC-003 | Pipeline acceptance tests pass |
| [ ] | BUILD-004 | Build activities, tasks, notes, email links/messages, reminders, and chronological timeline | P0 | CRM engineering | SPEC-002, SPEC-005 | Activity and task scenarios pass |
| [ ] | BUILD-005 | Build website form intake, contact upsert, deal creation/routing, consent, attribution, and error handling | P0 | Web/integration lead | SPEC-004, ARCH-004 | Sample payloads create correct records |
| [ ] | BUILD-006 | Implement required follow-up workflows, notifications, delays, and manual override controls | P0 | CRM engineering | SPEC-005 | Workflow scenario matrix passes |
| [ ] | BUILD-007 | Build day-one saved views, CSV export, and agreed Weddings/Events reports | P1 | Reporting owner | SPEC-006, BUILD-003 | Report acceptance list passes |
| [ ] | BUILD-008 | Add admin tools for import runs, validation errors, reconciliation, and safe reprocessing | P0 | Migration/engineering | SPEC-007 | Import run is idempotent and auditable |
| Done | ID | Task | Priority | Owner | Depends on | Evidence / exit criteria |
|---|---|---|---|---|---|---|
| [ ] | MIG-001 | Create source-to-target mapping for contacts, deals, properties, activities, tasks, messages, forms, and associations | P0 | Migration lead | SPEC-007 | Mapping reviewed and versioned |
| [ ] | MIG-002 | Implement transforms, normalisation, deduplication, lookup resolution, and exception output | P0 | Migration engineer | MIG-001, BUILD-008 | Transform tests and exception report |
| [ ] | MIG-003 | Run a controlled dry-run import into a disposable/test environment | P0 | Migration lead | MIG-002, BUILD-001 | Import manifest and error report |
| [ ] | MIG-004 | Reconcile source and target counts, associations, stage values, owners, and representative records | P0 | Migration lead / QA | MIG-003 | Reconciliation report within approved tolerances |
| [ ] | MIG-005 | Run a second import rehearsal from a fresh raw archive and prove repeatability | P0 | Migration lead | MIG-004 | Idempotency and repeatability evidence |
| [ ] | MIG-006 | Prepare final delta export, cutover import, and rollback dataset | P0 | Migration lead | MIG-005, ARCH-006 | Signed cutover package |
| Done | ID | Task | Priority | Owner | Depends on | Evidence / exit criteria |
|---|---|---|---|---|---|---|
| [ ] | QA-001 | Write traceable acceptance tests for core records, pipelines, inboxes, forms, workflows, permissions, reports, and migration | P0 | QA lead | SPEC-001 through SPEC-006 | docs/acceptance-tests.html approved |
| [ ] | QA-002 | Run security, access-control, validation, abuse, backup, restore, and audit-log tests | P0 | QA/security lead | ARCH-002, ARCH-004, ARCH-005 | Critical/high findings closed or accepted |
| [ ] | QA-003 | Run end-to-end Weddings and Events journey tests with representative fixtures | P0 | QA lead | BUILD-002 through BUILD-007 | All critical journeys pass |
| [ ] | QA-004 | Run business UAT with named users and capture defects/decisions | P0 | Product owner | QA-003, MIG-004 | UAT sign-off or explicitly accepted exceptions |
| [ ] | QA-005 | Prepare training notes, quick reference, support contacts, and incident process | P1 | Project lead | QA-004 | Handover pack reviewed |
| [ ] | CUT-001 | Run cutover rehearsal, final backup, final export, migration, smoke tests, and rollback decision | P0 | Operations/migration lead | MIG-006, QA-004, ARCH-006 | Cutover checklist completed |
| [ ] | CUT-002 | Perform production cutover with controlled HubSpot read-only fallback window | P0 | Project approver / operations | CUT-001 | Production smoke test and approval record |
| [ ] | CUT-003 | Verify live inboxes, website forms, workflows, reports, backups, logs, and user access after cutover | P0 | QA/operations | CUT-002 | Post-cutover verification report |
| [ ] | CUT-004 | Close or extend hypercare, preserve evidence, and record deferred work | P1 | Project lead | CUT-003 | Handover accepted and register baselined |
| ID | Type | Affected tasks | Question or blocker | Owner | Due | Status |
|---|---|---|---|---|---|---|
| DEC-001 | Decision | GOV-003, GOV-004 | Who approves scope, UAT, and production cutover? | Project lead | Day 1 | Approved |
| DEC-002 | Decision | ARCH-003, SPEC-004 | Is Microsoft Graph sending required on day one, or is Outlook-linked activity acceptable? | Product owner | Day 2 | Open |
| DEC-003 | Decision | ARCH-003, BUILD-005 | Is Facebook Messenger for Events a day-one requirement? | Product owner | Day 2 | Open |
| DEC-004 | Decision | SPEC-002, SPEC-007 | How much historical activity, attachment, form, and property history must be retained? | Project approver | Day 2 | Open |
| DEC-005 | Decision | SPEC-001, ARCH-002 | What roles should replace the current all-Super-Admin access model? | Security lead | Day 2 | Open |
| BLK-001 | Dependency | DISC-006 through DISC-011 | Full HubSpot export and activity/association extraction method still needs to be confirmed. | Migration lead | Day 2 | Open |
| Evidence ID | Artifact | Status |
|---|---|---|
| E-001 | Live HubSpot usage audit | Complete high-level snapshot |
| E-002 | Current-state usage map | Baseline updated with live findings |
| E-003 | Raw HubSpot export archive and manifest | Not started |
| E-004 | Data dictionary | Not started |
| E-005 | Migration mapping | Not started |
| E-006 | Workflow catalogue | Partial live capture; Final Email candidate template found; management method specified separately |
| E-010 | Template management specification | Implementation-ready; ready for approval before build |
| E-011 | Consolidated project specification | HTML artifact created; ready for review; not a cutover approval |
| E-007 | Integration map | Not started |
| E-008 | Acceptance tests | Not started |
| E-009 | Cutover runbook | Not started |
| Responsibility | Named person(s) | Record |
|---|---|---|
| Project approver | Oliver Ormond | Approves first-release scope, UAT completion, and production cutover |
| Product owner | Oliver Ormond | Confirms business process, priorities, and acceptance |
| Technical owner | Stuart Gordon | Owns target technical design, implementation, hosting, and technical decisions |
| Migration owner | Stuart Gordon | Owns source extraction, mapping, rehearsal, reconciliation, and cutover data |
| UAT - Weddings | Emily Brady | Represents Weddings operational use and acceptance |
| UAT - Events | Danica Griggs | Represents Events operational use and acceptance |
| Other UAT reviewer | Kerry Hand | Additional cross-functional UAT review |
Approval record: On 6 August 2026, the project direction recorded the named delivery roles above and identified Oliver Ormond as the approver for scope, UAT, and production cutover.
| Area | Direction | Current treatment |
|---|---|---|
| Microsoft 365 email | Microsoft Graph sending required on day one | Proposed must-have; requires integration design and permission approval |
| Facebook Messenger | Not required on day one | Explicitly deferred |
| Historical emails and attachments | Useful and should be preserved where available through Microsoft 365 | Include where technically and legally available; confirm extraction/retention method |
| Form submissions | Useful and likely relevant | Include retained submissions subject to export and retention evidence |
| Property history | Lower priority than current values and operational history | Defer unless discovery proves it necessary |
| Reports and views | Central operations only | Include only mandatory operational reports/views; exact list remains to be confirmed |
| Permissions | Narrow, role-based small-business model | Include least-privilege roles; detailed matrix remains a specification task |
| Date | Task | Activity | Result / next action |
|---|---|---|---|
| 2026-08-07 | DISC-004 | Reopened all eight live workflow pages read-only and opened the action editor for the affected tasks and internal notifications. Captured task timing, business-day rules, notes, queues, priorities, assignees, recipients, and notification bodies. The Final Email workflow is ON but its live action graph only changes the deal stage and contains no outbound email action, despite its list description. | DISC-004 remains in progress for internal property
names, any email/template IDs or sender settings not exposed by the
editor, and recovery of the approved-but-missing Final Email action
configuration. |
| 2026-08-07 | DEC-010 / DISC-004 | Confirmed that the replacement must send an outbound email for the Final Email workflow. | Record the requirement, preserve the live stage update, and recover the missing email body, sender, recipient, template, and timing details before implementation. |
| 2026-08-07 | DISC-004 | HubSpot global search found published automated email
Final Email Follow up | Kauri Bay Boomrock, subject
Final Email Follow Up, from Danica Griggs at
events@kauribayboomrock.co.nz, with quote-expiry follow-up
content. HubSpot shows it is attached to zero simple workflows. |
Treat it as the likely missing template, pending confirmation of its mapping to the Final Email workflow and confirmation of the recipient/timing rule. |
| 2026-08-07 | SPEC-010 | Expanded the template management specification into an implementation-ready contract covering scope, permissions, lifecycle, merge fields, preview/test send, Microsoft Graph sending, data model, workflow binding, audit, security, migration, rollback, and acceptance tests. Synchronized the standalone HTML artifact. | SPEC-010 is ready for review. Obtain approval from
Oliver Ormond and confirm Microsoft Graph sender identities and
acceptance-test agreement before marking complete. |
| 2026-08-07 | Project specification | Created a consolidated HTML specification covering the whole CRM replacement project, including current HubSpot evidence, scope, workflows, integrations, target capabilities, migration, security, delivery gates, governance, and open decisions. | HTML artifact is ready for review. It does not replace the register, decision log, raw evidence, or approval gates. |
| 2026-08-06 | DISC-004 | Reviewed the eight live workflow pages identified by the high-level audit without repeating the completed inventory. Captured visible enrollment criteria, branches, delays, task creation, stage changes, and internal notifications. | DISC-004 remains in progress. Capture action-detail panels/templates and reconcile the Final Email workflow discrepancy before completion. |
| 2026-08-06 | DEC-007 | Reviewed the KBA Waiver/WAVE repository. Its documented contract
gives WAVE ownership of contacts, submissions, signed evidence, and
waiver.signed events; it exposes
crm_contact_id, a pollable events feed, and an optional CRM
webhook. |
Repository evidence supports WAVE as the waiver authority and a CRM
contact link/timeline event as the integration boundary. The connector
still needs signing, retries, idempotency, replay/dead-letter handling,
and contact conflict rules before implementation approval. Evidence:
WAVE README.html and
docs/crm-integration.html. |
| 2026-08-06 | DEC-007 | Recorded WAVE as the separate authoritative waiver system. The CRM should store a contact-level link/reference to WAVE rather than own waiver evidence or waiver events. | Proposed source map is now complete; obtain approval of the booking-date target and WAVE link treatment before closing DEC-007. |
| 2026-08-06 | DEC-007 | Recorded revenue treatment: Xero remains authoritative for legacy revenue; HubSpot is the current forward-booking source until cutover; the replacement CRM is the proposed forward-booking target. | Revenue source treatment captured; confirm waiver-event treatment before closing the source map. |
| 2026-08-06 | DEC-007 | Recorded Xero as the authoritative source for invoices. | Invoice source captured; revenue and waiver-event sources remain to be confirmed. |
| 2026-08-06 | DEC-007 | Recorded Xero as the authoritative source for payment status. | Payment-status source captured; invoice, revenue, and waiver-event sources remain to be confirmed. |
| 2026-08-06 | DEC-007 | Recorded booking dates as currently authoritative in Google Sheets, with Outlook calendar proposed as the target source for this iteration. | Source mapping remains open pending confirmation of the target and the remaining payment, invoice, revenue, and waiver-event sources. |
| 2026-08-06 | GOV-006 | Recorded Oliver Ormond’s approval of the proposed first-release scope and explicit deferrals. | Scope direction approved. GOV-006 remains in progress while DISC-004 through DISC-007 evidence is completed. |
| 2026-08-06 | GOV-006 | Closed active work for now with the captured scope direction prepared for Oliver Ormond’s review. | GOV-006 is ready for review, not complete. Resume when Oliver’s approval is recorded or when discovery evidence work is authorised to continue. |
| 2026-08-06 | GOV-006 | Captured scope direction: Graph sending yes; Messenger no; preserve useful email/attachment and form-submission history; property history lower priority; central operational reports only; narrow role-based access. | GOV-006 in progress. Obtain Oliver Ormond’s formal scope approval and complete DISC-004 through DISC-007 before marking the scope freeze complete. |
| 2026-08-06 | GOV-004 | Confirmed that the review cadence is weekly at 9:00am every Wednesday on Teams, attended by Danica Griggs, Kerry Hand, and Stuart Gordon. | GOV-004 complete. Project control now moves to GOV-006: freeze first-release scope and record explicit deferrals. |
| 2026-08-06 | GOV-004 | Recorded a 9:00am Wednesday weekly review cadence. | GOV-004 remains in progress because the register specifies a daily cadence. Confirm whether the weekly review replaces the daily requirement, and provide attendees and channel/location. |
| 2026-08-06 | GOV-004 | Recorded 31 August 2026 as the planned cutover date and 7 September 2026 as the latest acceptable/worst-case cutover date. | GOV-004 remains in progress. Supply the daily review time, attendees, and channel to complete the delivery calendar. |
| 2026-08-06 | GOV-004 | Recorded today, 6 August 2026, as Day 1 of the three-week delivery window. | GOV-004 in progress. Supply the target cutover date and daily review time, attendees, and channel to complete the approved delivery calendar. |
| 2026-08-06 | GOV-003 | Recorded the named project approver, delivery owners, and UAT users supplied for the CRM replacement. | GOV-003 complete. DEC-001 resolved. GOV-004 is now the
next incomplete P0 and requires the approved start date, cutover date,
and daily review cadence. |
| 2026-08-06 | GOV-003 | Re-read the three project control documents from the current workspace and resumed at the first incomplete P0; no HubSpot audit work was repeated. | No authoritative named owners, UAT users, or approval record has
been added. GOV-003 remains blocked by open DEC-001; do not
advance to GOV-004 until the named delivery team and approval authority
are recorded. |
| 2026-08-06 | GOV-003 | Reviewed project.html, this register, and
docs/decision-log.html; checked the repository for an
authoritative named delivery-team roster without revisiting the
completed HubSpot audit. |
Role placeholders and open DEC-001 confirmed. Obtain
the named approver, product owner, technical owner, migration owner, and
UAT users, then attach the RACI and approval record before marking
GOV-003 complete. |