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
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
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.
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.
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.
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.