Release 3.5 Overview
Title status intelligence, dev tooling overhaul, and production deployment infrastructure
Release 3.5 is the April 2026 engineering release: v3.5.0 tagged on 10 April 2026, followed by deployment infrastructure hardening through to 13 April. This cycle delivered title status prediction, a complete developer experience overhaul, admin and ordering fixes, local dev infrastructure (Mailhog, messenger worker), and the new release:prod:safe isolated build system with candidate environment support.
Items Included
Title Status & Milestone Intelligence
Knowing when a parcel will receive its title is one of the most valuable pieces of information FTS can provide to builders and developers. This release adds predictive intelligence that estimates title dates from Statement of Compliance data, giving clients earlier visibility into project timelines. Preserving milestone history on titled projects ensures that the platform retains the full audit trail that compliance teams rely on.
- Title Status Prediction - New API endpoint and landing page link for predicting title status from SOC dates and milestone data.
- Milestone Preservation - Titled projects without a plan number now preserve milestone data instead of clearing it.
- E2E Test Harness - Comprehensive Playwright test suite for title status and milestone flows with Auth0 session persistence.
Developer Experience
The faster the engineering team can onboard new developers and iterate on features, the faster FTS can respond to client needs and market opportunities. This release reduces developer setup from a multi-step manual process to a single command, and standardises every common workflow behind consistent tooling. The result is less time lost to environment issues and more time spent delivering value.
- Dev Tooling & Init Script -
bun run initfor automated first-time setup;bun run dev:*commands for every common task (cache, schema, composer, assets, tests, lint, shell). - Production DB Download -
bun run dev:download-dbpulls production data (excluding large tables) for local development. - Developer Guide -
docs/DEVELOPER_SETUP.mdonboarding guide for new contributors. - Dev Dashboard Tabs - Command reference and deployment guide added as dashboard tabs.
- Port Migration - All Docker ports moved to 1xxxx range to avoid conflicts.
Dev Infrastructure
Reliable email delivery and background processing are critical to the platform's day-to-day operations - order notifications, RFI updates, and compliance reminders all flow through these systems. This release adds local testing infrastructure that lets the team catch email and queue issues before they reach production, reducing the risk of missed notifications that could delay projects or frustrate clients.
- Mailhog Container - Local email capture (SMTP on 1025, UI on 18025) so no emails leave the dev environment.
- Messenger Worker Container - Auto-consuming async queue with hourly restart and crash recovery.
- Debug Test Email Endpoint -
GET /debug/test-emailfor dev-only email delivery verification. - Playwright Auto-Reauth - E2E tests automatically re-authenticate when sessions expire.
Admin & Ordering Fixes
These targeted fixes directly improve the daily workflow for FTS staff processing orders and managing project data. Correcting image handling in RFIs, fixing character encoding in sale checks, and streamlining order validation all reduce manual workarounds that slow down the team. The error email reduction alone removes noise from 35 recurring system alerts, letting staff focus on real issues rather than false alarms.
- Ordering RFI Image URLs - Fixed image URL handling in request descriptions.
- Draft Order Validation - Draft project orders excluded from admin validation and rendering.
- Sale Check HTML Entities - Fixed special character handling on paste and PDF export.
- Estate DA Service Query - Record Updated column, estimated approval display, timezone formatting.
- Vendor Field Optional - Admin project orders no longer require vendor on save.
- Error Email Reduction - Fixed
setHelp(null)TypeError andrefresh-milestones-preview405 error, eliminating 35 of 225 error emails.
Release Automation & Deployment
Platform availability directly impacts revenue - every minute of downtime is a minute clients cannot place orders or access compliance data. This release introduces zero-downtime deployments where the live site is never interrupted during a release, and adds a candidate environment so changes can be verified in a production-like setting before going live. Together, these reduce deployment risk and give the business confidence that new features reach clients safely.
- release:prod:safe - Isolated build system using bare repo and git worktrees. Live site untouched until build completes, then atomic symlink swap.
- Candidate Environment -
release:candidatecommand deploys to candidate subdomains for pre-production testing. - Port Scheme - Production (3xxxx), preprod (4xxxx), candidate (5xxxx) port allocation for releases and dossier-api processes.
- Post-Release Script - Automated service restart (PHP-FPM, messenger, releases, dossier-api, nginx) with environment detection.
How To Read This Section
Each child page covers one deliverable or a tight group of related items. The sidebar follows the groupings above.