September 8, 2025 Release Notes
Time cards pick up two new prevailing wage additions — a CSV export of per-entry compliance data and fringe benefit totals pulled from payroll actuals — plus the map improves how you land on a feature after drilling back up to its parent site.
📋 Time Card PWA Compliance export
The Time Card PWA Compliance page (accessible from the PWA Compliance section of a time card) now has an Export CSV button. The export includes per-entry compliance data for the pay period — wage rates, fringe rates, obligation totals, and classification — making it easier to pull a record for a single worker's week for review or external filing.
The button only appears once compliance data exists for the time card.

💰 Fringe benefits in time entry details
Each time entry now shows a Fringe Benefits row (labelled "Fringe benefits from payroll actuals") alongside the existing rate, hours, and obligation breakdowns. When payroll actuals have been synced, the row surfaces employer contributions by category — Health & Insurance, Savings, Holiday & PTO, Training, Other Contributions — and a Total Employer Contributions line at the bottom.
The row only appears when actuals are present and non-zero, so entries without synced actuals stay clean.

🗺️ Map: feature highlight on site arrival
When you open a feature popup on the map and click through to view its parent site, the site popup now opens to the Features tab with the originating feature scrolled into view and briefly highlighted. Previously, the site popup opened to the Overview tab with no indication of which feature you came from — you had to find it again manually.
The highlight is a momentary visual effect; no persistent state is added to the popup.
🛠️ Fixes
- Map boundary popups no longer show an error when clicking a geographic boundary — they now load the boundary details correctly
- Map user heatmap transitions more smoothly across zoom levels, with refined intensity and radius stops at intermediate zooms
- Employee sync (Finch) no longer overwrites existing biographical fields with blank values when the sync source returns incomplete data
As always, reach out if you have any questions.
The DSPTCH Team
