What's new

Changelog

Every change that makes CrossBeam better for the cities and builders who use it, written up the night it ships.

Monday, October 5, 2026

Change permit type hidden when the router decides

On runs where the AI review names the permit from the documents, such as every Buena Park PreCheck, the Change permit type button is gone. Before, it opened an empty dropdown and restarted the run without changing the permit.

Sunday, October 4, 2026

ImprovedPre-Check

No permit-type picker when uploading a corrections letter

Applicants who upload a corrections letter no longer pick a permit type, and "Not sure" no longer defaults to an ADU. The AI review reads the letter and plans, names the permit kind, and runs and prices the corrections read as that kind.

Friday, October 2, 2026

ImprovedPre-Check

One consistent PreCheck time estimate

Every applicant screen and email now says results take 30 to 90 minutes, including the intake page, receipt, live status ticker, FAQ and receipt email. The range comes from completed reviews on real plan sets, which took about 35 to 70 minutes.

Thursday, October 1, 2026

TIFF scans accepted for review

Applicants can upload TIFF scans on every intake flow. Each multi-page TIFF is converted to a PDF page by page and reviewed like any other plan set, and the file picker and upload copy now list PDF, JPG, PNG or TIFF.

PreCheck intake skips empty files and fits phones

A 0-byte file is now left out as it is added, with a message naming it, so the rest of the plan set submits instead of failing at the upload check. On phones the form fields start on screen, and the page now passes accessibility checks for landmarks, headings and the address list.

ImprovedPre-Check

PreCheck help points to CrossBeam support

The PreCheck intake FAQ adds a question on who to contact about upload or results problems, and the page assistant now sends technical issues to CrossBeam support instead of the City.

ImprovedPre-Check

Large PreCheck uploads resume where they stopped

Large plan sets on the public PreCheck intake now upload in 6 MB resumable chunks, so going offline, a hung request or switching apps on a phone resumes from the last confirmed chunk instead of restarting the file.

ImprovedPre-Check

PreCheck uploads survive stalls and dropped connections

A stalled upload is aborted and retried with backoff once the device is back online, closing the tab mid-upload asks for confirmation, and a failed upload offers Try again, which re-sends only unfinished files to the same project instead of creating a duplicate.

PreCheck refuses addresses outside city limits

The intake now checks a geocoded address against the city's incorporated boundary before anything is created. An address in a neighboring city is refused right away, naming that city, and the applicant gets an email pointing to a regular paid pre-check instead.

Plain-language PreCheck errors and refreshed terms

Every error the PreCheck intake, retry and resubmit dialogs can return now shows written guidance instead of a raw error code, round-limit messages show the actual limit, and an applicant whose terms page went stale is prompted to read and accept the current version.

ImprovedPre-Check

Expired PreCheck sign-in links lead to a fresh link

An applicant who opens an expired or already-used emailed sign-in link now lands on their city's PreCheck intake page with the resend form open, instead of a password login they never set up. If the browser is already signed in, they go straight to their results.