Saltar al contenido principal

June 26, 2026 Release Notes

ยท 5 min de lectura
Marcus Deans
Software Engineer

Trades take the headline this release: prevailing-wage and apprenticeship compliance now organizes wage determinations by craft, so apprentice-to-journeyworker ratios pool the right workers together. Theme switching moves into the profile menu for a quicker toggle, the Atlas fleet map gains an Active/Idle/Stale status filter, and the REST API picks up new surface for jobs, users, positions, and payroll. ๐Ÿ—๏ธ

๐Ÿ—๏ธ Trades for wage determinations and apprenticeship ratiosโ€‹

DSPTCH now treats Trades โ€” craft groupings like Electrician, Ironworker, or Construction Manager โ€” as a first-class part of your prevailing-wage and apprenticeship setup. Every job and project's PWA area gains a Trades tab that lists each craft in the compliance pool, with its wage determinations shown beneath it.

The Trades tab of a project's prevailing-wage section, listing craft groupings like Architect and Construction Foreman, each with a column for its wage determinations

Why it matters: apprenticeship ratio compliance now pools workers by their trade rather than by raw labor-classification text. Two workers whose classifications read differently โ€” say "HV Electrician" and "Journeyworker Electrician" โ€” count toward the same apprentice-to-journeyworker ratio when they share a trade, so your ratios reflect how crews actually work.

Setting it up stays in the flow you already use. When you add a wage determination to a job or project, a Trade selector lets you search for an existing craft, create a new one on the spot, or leave it blank to have DSPTCH derive the craft from the labor classification. On the Trades tab itself you can add a new craft with New Trade and rename one inline.

The New Wage Determination form on a job with the Trade selector open โ€” showing options to create a new craft or pick an existing one โ€” and a tooltip noting the craft is used to pool apprentices and journeyworkers for ratio compliance

๐ŸŒ— Switch themes from the profile menuโ€‹

Switching between light and dark is now a one-click move from the menu under your profile icon in the top-right corner โ€” no need to open your Appearance settings, and no page reload. The navigation bar also picks up a refreshed dark styling to match. Your theme choice still saves to your account and follows you across the app.

The DSPTCH Jobs page rendered in dark theme, with the profile menu open in the top-right corner where the light and dark switch now lives

๐Ÿš› Filter the fleet by statusโ€‹

The live fleet layer on the Atlas map can now be filtered by vehicle status โ€” Active, Idle, or Stale โ€” using the same green, yellow, and red indicators already shown on each truck's status halo. The Status filter joins the existing make, model, year, truck-number, and driver filters in the Vehicle Filters panel, so you can narrow the map to, say, only the trucks that have gone stale.

โฑ๏ธ Tag a feature when importing timeโ€‹

Time-entry imports can now specify which feature an entry applies to, for jobs that use per-feature tracking. Add the optional feature column to your import file and the hours land against the right feature on the job; files without the column import exactly as before. The same feature selection is now enforced when entries come in through the REST API, too (see below).

๐Ÿง‘โ€๐Ÿ’ผ Department on employee profilesโ€‹

A worker's Department now appears on their profile, in the employment-details section alongside Title, Manager, and Payroll ID. If no department is set, the field shows a dash.

๐Ÿ”Œ API additionsโ€‹

  • Jobs โ€” set a job's status to a terminal state (completed, cancelled, or disputed) over the API; filter the jobs list by project (including jobs on descendant projects), with each job now carrying its project ID; and read or set a job wage determination's rate rules through a new nested endpoint.
  • Users โ€” a new update endpoint exposes preferred names and other profile fields, user responses now include each person's profile picture, and you can upload an avatar through the new public direct upload endpoint, which accepts a file and returns an ID to attach elsewhere.
  • Time entries โ€” entries created through the API now accept and enforce a feature selection where the job calls for one.
  • Positions โ€” a new read-only endpoint lists your company's position functions (the job-title taxonomy), including the global defaults.
  • Payroll โ€” a new read-only endpoint exposes the catalog of compensation elements (pay, deduction, and contribution types) with their tax treatment and import codes.

๐Ÿ› ๏ธ Fixesโ€‹

  • Prevailing-wage overtime on unassigned time now applies the right state's daily-overtime rules โ€” like California's 8-hour rule โ€” to time logged without a specific job, instead of falling back to federal rules and understating the obligation.
  • The Rippling prevailing-wage export no longer drops straight-time hours worked on a holiday that doesn't trigger premium pay; those hours report correctly again.
  • Apprenticeship ratio status recalculated for one pay period no longer overwrites the saved status on a worker's other pay periods.
  • Company settings save in place when edited, instead of erroring out.
  • PWA compliance details over the API return a clear validation error instead of a server error when a user already has a record for the company.

Trades to model your crafts the way crews actually work, a quicker theme switch, and a healthy round of new API surface. Let us know what you'd like next!

The DSPTCH Team