First to Site
Release 3.10

Release 3.10 Overview

Google API token self-healing, SPEAR Milestone Whitespace Report, autocomplete search sanitisation, Reference Documents UI restack, async failed-queue hardening, and ordering-portal v3 contacts wiring

Release 3.10 is the 27 April 2026 cut. It bundles Git tags v3.12.0 through v3.13.6 and is the first portal release after the date-driven cut rule was clarified: the work below all shipped on a single calendar day after Release 3.9 closed, so it lands as one new minor.

The cycle delivers the Google API token self-healing chain that closes the long-running Trello 1759 incident loop, the new SPEAR Milestone Whitespace Report on the reporting tool, search-side address sanitisation, the Reference Documents UI restack on the project detail page, async messenger failed-queue hardening, and the ordering portal's manage-contacts migration to the v3 contacts endpoint.

What's in this release

AreaGit tagsDetail
Google Token Self-Healing3.12.0, 3.13.0Proactive 30-min refresh cron + kernel.exception auto-recovery + 6h-deduped ops alert. Closes Trello 1759.
Deploy persists DA tokens3.12.0release-prod-safe.ts auto-syncs token_da.json + credentials_da.json across releases.
SPEAR Milestone Whitespace Report3.13.1, 3.13.2New reporting-tool report that shows working-day spans across SPEAR milestones. Trello 1708.
Address search sanitisation3.13.3Autocomplete query strips the canonical-format (streetNo) bracket and trailing 4-digit postcode before hitting the suggest backend.
Reference Documents UI3.13.4, 3.13.5Filename-led rows with italic type, restacked expanded panel, single-column header dropped.
Async failed-queue hardening3.13.6Null-safety + post-deploy-verify additions on RFI / address-discovery paths.
Ordering contacts via v33.13.3 (companion)Manage Project Contacts on the ordering portal now goes through the v3 contacts API endpoint.

Versioning model note

Release 3.10 is the first cut after the portal's release numbering was decoupled from Git-tag numbering. The eight Git tags above (v3.12.0 ... v3.13.6) are all rolled into this single narrative release. Future Git tags between this cut and the next will continue to accumulate freely. Whenever the next portal release is cut on a different calendar day, those tags fold in there.

See release-data.ts header comment for the full cut rule.

Changelog Reference

See the full commit lists in CHANGELOG.md for each tag in this release window.